Satura rādītājs:
- 1. darbība. Kas jums būs nepieciešams
- 2. darbība: iestatiet kontaktligzdas
- 3. darbība: izveidojiet PubNub kontu
- 4. solis: sagatavojiet Raspberry Pi
- 5. darbība: shēmas izveide
- 6. darbība: iegūstiet savus RF kodus
- 7. darbība: programmas palaišana
- 8. darbība: Darbojas startēšanas laikā
- 9. solis: papildu slēdžu pievienošana
- 10. solis: turpiniet
- 11. darbība. Kredīti
Video: Lēta un efektīva mājas automatizācija ar Raspberry Pi: 11 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Es vienmēr esmu vēlējies spuldzes vadīt bezvadu režīmā, taču komerciālās iespējas parasti ir dārgas. Philips Hue gaismas maksā aptuveni 70 USD, un ar WiFi savienotās gaismas ir arī dārgas. Šī apmācība jums pateiks, kā kontrolēt līdz piecām gaismām/lampām/Ziemassvētku gaismas pavedieniem par aptuveni 50 USD, un to var paplašināt, iekļaujot arī vairāk gaismas.
1. darbība. Kas jums būs nepieciešams
Materiāli:
Raspberry Pi Zero W (bezvadu izdevums)
Micro SD karte (vismaz 4 GB)
Mini HDMI uz HDMI kabelis/pārveidotājs (starp mini un mikro ir atšķirība, pārliecinieties, ka esat izvēlējies pareizo!)
Mikro USB uz USB kabeli/pārveidotāju
USB tastatūra
Piezīme. Es saņēmu Raspberry Pi Zero W sākuma komplektu no Amazon, kas bija komplektā ar Raspberry Pi Zero W, SD karti, futrāli, barošanas kabeli, HDMI pārveidotāju un USB pārveidotāju. Tikai par 30 ASV dolāriem tā ir diezgan laba iespēja (saite)
Jūs varat izmantot citu Raspberry Pi modeli, taču Raspberry Pi jābūt kaut kādam interneta savienojumam, un Pi Zero W ir lētākais risinājums.
Attālās kontaktligzdas - es tās izmantoju
RF raidītājs un uztvērējs (piezīme: raidītāja/uztvērēja frekvencei jāatbilst attālināto kontaktligzdu frekvencei) - es izmantoju šos
Antenas vads (es izmantoju 22 gabarīta cieta serdes vara stiepli, cits vads var darboties)
Maizes dēlis, džemperu vadi, 40 kontaktu galvene no vīrieša līdz vīrietim
Programmatūra:
Raspberry Pi OS (lejupielādēt Raspbian Desktop)
Etcher diska attēlveidotājs (Pi OS ierakstīšanai SD kartē)
Rīki:
Lodāmurs
Dators Pi OS un Etcher lejupielādei
2. darbība: iestatiet kontaktligzdas
Sāciet, pievienojot kontaktligzdas kontaktligzdai. Izpildiet pievienotos norādījumus, lai tos uzstādītu, un pievienojiet gaismas/ierīces. Pārliecinieties, vai tālvadības pults ir pareizi savienota pārī un kontrolē kontaktligzdas.
3. darbība: izveidojiet PubNub kontu
PubNub ir bezmaksas interneta serveris, kas ļauj sazināties starp ierīcēm jebkurā vietā pasaulē. Python skripts saņem ziņojumus no tīmekļa lapas un izmanto ziņojumā esošo informāciju, lai ieslēgtu vai izslēgtu apgaismojumu. Šeit varat reģistrēties bezmaksas kontam. Kad esat reģistrējies, piesakieties savā kontā. Tiks atvērta lietotņu pārvaldības lapa. Noklikšķiniet uz "Izveidot jaunu lietotni". Piešķiriet lietotnei nosaukumu, pēc tam atlasiet to no lietotņu saraksta (ja šī ir jūsu pirmā lietotne, tā būs vienīgā). Tādējādi jūs nonāksit lietotņu atslēgu lapā. Noklikšķiniet uz "Demo Keyset", un jums vajadzētu redzēt trīs dažādus taustiņus. Turpiniet šo lapu, šīs atslēgas jums būs vajadzīgas vēlāk. Tagad, kad jums ir PubNub konts, varat iestatīt savu aveņu pi.
4. solis: sagatavojiet Raspberry Pi
Lejupielādējiet datorā Etcher un Raspberry Pi OS (saites detaļu sarakstā)
Instalējiet Etcher savā datorā un izpakojiet (ja nepieciešams) Raspberry Pi OS. Ievietojiet Micro SD karti datorā un atveriet Etcher. Noklikšķiniet uz "Atlasīt attēlu" un dodieties uz neizsaiņoto Raspberry Pi OS failu. Atlasiet to, pēc tam noklikšķiniet uz “Atlasīt disku” un sarakstā atlasiet savu micro SD karti. Noklikšķiniet uz "Flash" un gaidiet, līdz Etcher tiks pabeigts. Kad Etcher ir pabeidzis, izņemiet SD karti no datora (Etcher to automātiski izstumj) un ievietojiet to savā Raspberry Pi. Šajā brīdī Raspberry Pi būs jāpievieno monitoram, izmantojot HDMI pārveidotāju. Pievienojiet tastatūru (un peli, ja jums ir vairāku USB centrmezgls) un pievienojiet strāvas kabeli. Ir divi mikro USB porti. Viens ir paredzēts strāvas padevei, otrs ir faktiskais USB ports. Tuvākais Pi beigām ir jauda, bet tuvāk vidum ir USB. Jūsu aveņu pi tagad sāks ielādēt. Pirmās sāknēšanas laikā tas var restartēties vairākas reizes, bet tas ir normāli. Kad jūsu aveņu pi ir startēts, pievienojiet to savam WiFi. Pēc savienojuma ar WiFi jūs varat izmantot SSH serveri, taču man šķiet, ka pagaidām ir vieglāk izmantot GUI. Atveriet termināļa logu un ievadiet šīs komandas:
sudo pip3 instalēt 'pubnub == 3.9.0'
cd git klons git: //git.drogon.net/wiringPi git klons
sudo git klons
sudo chown root.root/var/www/rfoutlet /odesend sudo chmod 4755/var/www/rfoutlet /odesend
cd elektroinstalācijaPi
./būvēt
Tagad atveriet failu pārlūkprogrammu Raspberry Pi, un jums vajadzētu redzēt mapi pi-home-automatization. Veiciet dubultklikšķi uz tā, un jums vajadzētu redzēt failu ar nosaukumu RFControl.py. Kopējiet to (pretēji noklikšķiniet un izvēlieties "Kopēt"), pēc tam atgriezieties mapē pi un ielīmējiet to tur.
Izslēdziet savu aveņu pi (vai nu no izvēlnes, vai palaižot sudo poweroff no komandrindas), un atvienojiet to, kad zaļā gaisma pārstāj mirgot.
5. darbība: shēmas izveide
Tagad ir pienācis laiks izveidot ķēdi. Es izmantoju maizes dēli, bet jūs varat to darīt, kā vēlaties.
Pirmkārt, mums ir jāizveido RF raidītāja antena. Šī pamācību apmācība stāsta par to, kā izveidot RF raidītāja antenu. Izpildiet norādījumus, pēc tam pielodējiet to pie raidītāja antenas tapas (manā izmantotajā tas tika apzīmēts ar ANT) ar īsāko pusi, kas ir vistuvāk raidītājam
Pievienojiet vadu raidītājam
Raidītājs izmanto šādas tapas:
DATI: GPIO 17, fiziskā tapa 11
VCC: Raspberry Pi 5v, fiziskā tapa 2
GND: Raspberry Pi GND, fiziskā tapa 6
Pievienojiet uztvērēju vadam
Uztvērējs izmanto šādas tapas:
GND: Raspberry Pi GND, fiziskā tapa 9
VCC: Raspberry Pi 5v, fiziskā tapa 4
DATI: GPIO 27, fiziskā tapa 13 (manā uztvērējā ir divas datu tapas, un es izmantoju to, kas ir vistuvāk VCC)
6. darbība: iegūstiet savus RF kodus
Kad ķēde ir pievienota Raspberry Pi, pārbaudiet to divreiz, lai pārliecinātos, ka viss ir savās vietās, un pēc tam atkal ieslēdziet to. Kad tas ir ieslēgts, atveriet termināli un ierakstiet
sudo/var/www/rfoutlet/RFSniffer
Pēc tam atveriet RFControl programmu. Termināla loga un programmas loga novietošana blakus var būt noderīga nākamajā darbībā.
Jums būs nepieciešama tālvadības pults, kas tagad bija iekļauta kontaktligzdas komplektā. Turiet to tuvu uztvērējam un nospiediet katru pogu. Nospiežot pogu, ekrānā redzēsit divus ciparus. Viens no tiem būs sešu vai septiņu ciparu kods, bet otrs - 3 ciparu kods. Programmā jums būs jārediģē kodu vārdnīca. Ievadiet 7 ciparu kodu atbilstošajā slēdža vietā programmā un katrai ieslēgšanas/izslēgšanas pogai ievietojiet 3 ciparu kodu (tas ir garums) atbilstošajā slēdža len programmā.
Piemēram, ja ieslēgšanas 1. kodam ir kods 1234567, izslēgšanas kods 7654321 un garums 890, kods izskatīsies šādi:
kodi = {
'switch1': {'on': 1234567, #Tas ir 1. slēdzis ieslēgts 'izslēgts': 7654321, #tas ir 1. slēdzis izslēgts 'len': 890, #tas ir 1. slēdža koda garums}, 'switch2': {… },…}
Atkārtojiet to katrai pogai. Kamēr rediģējat šo failu, nomainiet virknes ar tekstu “YOUR-SUB-KEY” uz savu PubNub abonēšanas atslēgu un “YOUR-PUB-KEY” uz publicēšanas atslēgu.
Kad katra poga ir ierakstīta, varat turpināt nākamo sadaļu.
7. darbība: programmas palaišana
Tagad, kad jums ir visi jūsu kodi, dodieties uz šo GitHub lapu (datorā, nevis aveņu pi) un noklikšķiniet uz zaļās pogas ar uzrakstu "Klonēt vai lejupielādēt", pēc tam noklikšķiniet uz "Lejupielādēt ZIP". Kad šis fails ir lejupielādēts, izpakojiet to un atveriet mapi. Atveriet failu ar nosaukumu main.js. Jums programmā būs jāievada abonēšanas un publicēšanas atslēgas, aizstājot “YOUR-PUB-KEY” ar publicēšanas atslēgu un “YOUR-SUB-KEY” ar abonēšanas atslēgu.
Pēc tam atgriezieties savā Raspberry Pi un ievadiet
python3 RFControl.py
Kad tiek izdrukāts uzraksts “Gatavs”, atgriezieties datorā un tīmekļa pārlūkprogrammā atveriet failu index.html, veicot pretēju klikšķi, atlasiet “Atvērt ar” un atlasiet vēlamo pārlūkprogrammu. Jums vajadzētu redzēt 2 kolonnas ar 5 pogām ar slēdžu nosaukumiem starp tām. Nospiediet jebkuru no pogām. Ja tas pareizi kontrolē kontaktligzdu, lieliski! Ja nē, izmēģiniet dažas lietas:
- Pārliecinieties, vai Raspberry Pi saņem ziņas. Tam vajadzētu drukāt uz ekrāna ikreiz, kad tiek saņemts ziņojums no tīmekļa lapas. Ja nē, pārliecinieties, vai abonēšanas/publicēšanas atslēgas ir pareizas.
- Ja Raspberry Pi saņem ziņojumus, pārliecinieties, vai jūsu RF kodi ir pareizi. Pārliecinieties, vai jūsu kontaktligzdas ir savienotas pārī ar tālvadības pulti, tālvadības pults var tās vadīt un vai programmā ievadītie kodi ir pareizi.
- Ja RF kodi ir pareizi, pārliecinieties, vai Raspberry Pi atrodas kontaktligzdu diapazonā. Ja tie sāk darboties pēc tam, kad tie ir pārvietoti tuvāk, jums, iespējams, būs jāpārveido antena.
- Ja tie joprojām nedarbojas, lūdzu, pastāstiet man savu problēmu komentāros, un es centīšos palīdzēt.
8. darbība: Darbojas startēšanas laikā
Lai startēšanas laikā palaistu savu python programmu, ievadiet to savā aveņu pi terminālī:
crontab -e
Pēc tam dodieties uz faila apakšdaļu un ievadiet šo:
@pārstartējiet python3 /home/pi/RFControl.py &
Tādējādi jūsu Python skripts katru reizi tiks palaists startēšanas laikā. Tagad pārstartējiet Raspberry Pi.
9. solis: papildu slēdžu pievienošana
Ja vēlaties pievienot vairāk tirdzniecības vietu, izpildiet šos norādījumus:
Raspberry Pi atveriet RFControl.py un slēdžu vārdnīcai pievienojiet jaunu slēdzi.
Piemērs:
slēdži = {
… Citi slēdži… 'NAME-OF-SWITCH': {'ieslēgts': xxxxxxx, 'izslēgts': gggyyyy, 'len': zzz,},}
Pēc tam pievienojiet jaunu pogu savā tīmekļa lietotnē, rediģējot slēdžu mainīgo savā datorā main.js.
Piemērs:
var slēdži = [… Vecie slēdži… ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];
Aizstājiet NAME-TO-DISPLAY ar nosaukumu, kuru vēlaties, lai tas tiktu parādīts tīmekļa vietnē, un NAME-OF-SWITCH abos failos ar visu, kas jums patīk. Tam tomēr jābūt unikālam no citiem!
10. solis: turpiniet
PubNub tiek atbalstīts daudzās dažādās platformās, kas nozīmē, ka varat sūtīt ziņojumus no gandrīz jebkuras ierīces! Es izmantoju Raspberry Pi AIY Voice komplektu un PubNub, lai ar balsi nosūtītu komandas, taču tas varētu būt vēlāk Instructable tēma. Paldies, ka izlasījāt manu pamācību, es ceru, ka tā bija noderīga!
11. darbība. Kredīti
Paldies Timam Lelandam par apmācību par RF raidītāja iestatīšanu: apmācība
Paldies diy_bloke par apmācību par antenas izveidi: apmācība
Paldies arī visiem citiem, kuri tiešsaistē ievietoja pamācības, kuras es apskatīju, lai saņemtu palīdzību!
Ieteicams:
Efektīva Java izstrāde Raspberry Pi: 11 soļi (ar attēliem)
Efektīva Java izstrāde Raspberry Pi: Šī pamācība apraksta ļoti efektīvu pieeju Java programmu izstrādei Raspberry Pi. Esmu izmantojis šo pieeju, lai attīstītu Java iespējas, sākot no zema līmeņa ierīču atbalsta līdz daudzpavedienu un tīkla programmām. Aptuveni
Efektīva un lēta: displejs ar STM32L4: 13 soļi
Efektīvs un lēts: displejs ar STM32L4: Šodien mēs runāsim par trim tēmām, kuras es absolūti dievinu: LCD displejs, kas tērē maz enerģijas, STM32 ar Core Arduino un Arduino Mega Pro Mini. Šis ir nekļūdīgs lietu interneta trio. Tad es jūs iepazīstināšu ar HT162
Mājas automatizācija, izmantojot Android un Arduino: atveriet vārtus, atgriežoties mājās: 5 soļi
Mājas automatizācija, izmantojot Android un Arduino: atveriet vārtus, kad atgriezīsities mājās: Šī pamācība ir paredzēta mājas automatizācijas sistēmas iestatīšanai, lai to kontrolētu, izmantojot viedtālruni, izmantojot interneta savienojumu, lai tai varētu piekļūt no jebkuras vietas, kur tas nepieciešams. Turklāt tā veiks noteiktas darbības ikreiz, kad tiks izpildīts kāds kritērijs
Vienkārša mājas automatizācija, izmantojot Raspberry Pi3 un Android lietas: 5 soļi (ar attēliem)
Vienkārša mājas automatizācija, izmantojot Raspberry Pi3 un Android lietas: Ideja ir izveidot “ gudru HOME ” kurā var kontrolēt sadzīves ierīces, izmantojot Android Things un Raspberry Pi. Projekts sastāv no tādas mājsaimniecības ierīces vadības kā gaisma, ventilators, motors utt. Nepieciešamie materiāli: Raspberry Pi 3HDMI Ca
Lēta, vienkārša, ar internetu vadāma mājas automatizācijas sistēma: 5 soļi (ar attēliem)
Lēta, vienkārša, ar internetu vadāma mājas automatizācijas sistēma: ja jums ir mājdzīvnieki/bērni un jums ir nepieciešams tos pabarot vai sist ar internetu, šī sistēma jums var noderēt. Tas ir ļoti vienkāršs un lēts veids, kā mājās vadīt motorus, gaismas diodes utt. No jebkura datora, kas savienots ar tīmekli. Viss, kas nepieciešams, ir Webc