Satura rādītājs:
- Piegādes
- 1. darbība: iestatiet Rasbian
- 2. darbība: koda satveršana un tā iestatīšana
- 3. darbība: Arduino komunikācija
- 4. solis: Pieslēdziet vadu
- 5. darbība: koda palaišana
- 6. darbība: (pēc izvēles) korpuss
Video: Pārslēgšanās, automātiskā izeja ar reāllaika strāvas mērīšanu: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:53
Man ļoti patīk automatizācija, spēja kontrolēt, kad kaut kam ir jānotiek. Tieši tas lika man nākt klajā ar šo ideju: pašdarināta, automātiska kontaktligzda. To var izmantot, lai plānotu, kad ir jāieslēdz gaismas, kad jāuzlādē tālruņi vai kad ekrāns ir jāieslēdz. Papildus tam jums ir iespēja redzēt, cik daudz strāvas plūst caur kontaktligzdu.
Šim projektam nepieciešamās sastāvdaļas ir:
Piegādes
Pirms mēs sāksim šīs lietas, jums noteikti būs jāizveido tāda Switch-IT kaste kā manējā. Šīs piegādes maksās aptuveni 50 līdz 100 eiro atkarībā no jūsu reģiona un pašreizējām cenām.
Aparatūra
Elektronika
- Aveņu pi 4
- 16 GB (vai vairāk) Micro SD karte
- Arduino Uno
- 5V-3.3V līmeņa pārslēdzējs
- 5V releja modulis
- ACS712 20A - pašreizējais modulis
- 1838 IR-uztvērēja 37,9 kHz modulis
- IR tālvadības pults (es izmantoju Elegoo)
- parastais katods RGB
- 3 * 330Ω rezistori
- Uzspied pogu
- RFID-RC522
- LCD 1602A-1
- Niko sienas kontaktligzda
- 10K Ω potmetrs
- Barošana no 230 līdz 5V - 7A
Kabeļi
- USB-B līdz USB-A kabelis
- USB-C barošanas kabelis
- Ethernet kabelis
Dažādi
- Džemperu stieples vīriešiem un sievietēm
- Džemperu stieples vīriešiem un vīriešiem
- Lodēšanas alva
- Saraušanās caurule
Korpusa specifiskās detaļas (pēc izvēles)
- 50 * rieksti un treknrakstā
- metāla korpuss 40x40x5 cm ar vāku
- divpusēja lente
- 6 * 1 cm augsti starplikas
- led-turētājs
- Velcro lente
- kabeļu vadotnes
Programmatūra
- balenaEtcher:
- PuTTy
- rasbiete
- Visual Studio kods
- Arduino IDE
1. darbība: iestatiet Rasbian
Pirmkārt, mēs ieslēdzam rasbiešu valodu SD kartē. Mēs to darīsim, izmantojot balenaEtcher.
- Atveriet balenaEtcher
- Izvēlieties rasiešu attēlu
- Izvēlieties savu SD karti
- Nospiediet Flash un pagaidiet dažas minūtes, līdz tas mirgo
APIPA pievienošana sāknēšanas direktorijā: RPI programmēšanai un konfigurēšanai izmantosim APIPA adresi. Lai to izdarītu:
- Piekļūst SD kartes sāknēšanas direktorijai
- Atveriet "cmdline.txt"
- Dokumenta beigās pievienojiet "169.254.10.1" un saglabājiet to
- Pievienojiet sāknēšanas direktorijai failu ar nosaukumu "ssh" (NEDODIET ŠIEM FILMAM PAPLAŠINĀJUMU)
- Kad esat to izdarījis, varat izņemt SD karti no datora.
Piekļūst RPI, izmantojot PuTTy
Tagad mēs varam pievienot SD karti mūsu RPI, savienot RPI ar datoru, izmantojot Ethernet kabeli.
Lai izveidotu savienojumu ar RPI, mēs izmantosim PuTTy ar mūsu APIPA adresi.
- Atveriet PuTTy
- Ievadiet mūsu APIPA adresi kā resursdatora nosaukumu (169.254.10.1)
- Pārliecinieties, vai ports ir 22 un ir atlasīts SSH
- Tagad jūs varat atvērt savienojumu
- Noklusējuma lietotājvārds ir: pi
- Ar noklusējuma paroli: aveņu
raspi-config iestatījumi
Atveriet raspi-config, izmantojot:
sudo raspi-config
- Mainiet lietotāja paroli
- Lokalizācijas opcijās izvēlieties savu laika joslu
- Iestatiet WiFi, izmantojot tīkla opcijas, pēc tam Wi-Fi opciju, kurā jāievada SSID un parole.
Instalējiet Python 3
Šajā projektā mēs izmantojam Python, tāpēc, izmantojot šādas komandas, mēs noklusējuma iestatīsim Python2 instalāciju Python3
update-alternatives --install/usr/bin/python python /usr/bin/python2.7 1
update-alternatives-instalēt/usr/bin/python python/usr/bin/python3 2
Python paketes
Mums būs vajadzīgas dažas paketes, lai viss darbotos pareizi, galvenokārt kolbu paketes un viena, lai izveidotu savienojumu ar mūsu datu bāzi. Mēs varam instalēt šīs paketes, izmantojot šādas komandas:
pip instalēt kolbu
pip instalēt Flask_cors pip instalēt Flask_socketio pip instalēt Python-mysql-connecton
Datu bāze
Tālāk mēs instalēsim savu datu bāzes pārvaldības sistēmu (MariaDB), to darot, izmantojot:
sudo apt instalēt mariadb-server
Lai turpinātu, ierakstiet “Y” un ievadiet. Pēc dažām sekundēm instalēšanas process ir pabeigts, un MariaDB ir gandrīz gatavs lietošanai.
Lai iestatītu datu bāzei paroli, izmantojiet komandu:
sudo mysql_secure_installation
Pēc tam nospiediet taustiņu Enter, jo pašreizējā parole ir tukša. Pēc tam nospiediet "Y", lai iestatītu paroli, tagad jūs varat aizpildīt jebkuru paroli, kuru vēlaties, neaizmirstiet to atcerēties, jo mums tas ir nepieciešams, lai izveidotu pareizu savienojumu starp aizmuguri un priekšpusi.
Tagad 3 reizes nospiediet “Y”, lai: noņemtu anonīmus lietotājus, attālināti neatļautu root pieteikšanos un noņemtu testa datu bāzi. Visbeidzot, vēlreiz nospiediet “Y”, lai atkārtoti ielādētu privilēģijas.
Tagad MariaDB un visas nepieciešamās paketes ir veiksmīgi instalētas.
2. darbība: koda satveršana un tā iestatīšana
Tagad, kad mums ir instalētas visas paketes, mēs varam iegūt kodu.
Kods ir pieejams vietnē Github, lai jūs varētu to klonēt, izmantojot:
git klons
Šī ir priekšējā daļa
git klons
Šī ir aizmugure
Pati datu bāzes instalēšana
Lai instalētu datu bāzi, dodieties uz.sql failu, kas atrodas aizmugures mapē, izmantojot šādas komandas (noteikti iestatiet to uz savu ceļu.
mysql
izveidot datu bāzi switchit quit mysql -u root -p switchit <Your_Path_to_Backend_Repo/switchit.sql
Apache instalēšana
Tagad, kad mums ir viss kods un datu bāzes iestatījumi, mēs varam instalēt Apache un palaist tajā savu aizmuguri. Mēs to darīsim, izmantojot:
apt -get install apache2 -y
Pēc tam aizstājiet failus failā/var/ww/html ar failiem, kas atrodas frontend mapes mapē.
Ja viss noritēja labi, jums vajadzētu būt iespējai izveidot savienojumu ar savu vietni, izmantojot pārlūkprogrammas APIPA adresi: 169.254.10.1.
3. darbība: Arduino komunikācija
Lai lasītu mūsu pašreizējo sensoru un RFID sensoru, mēs izmantojam arduino, lai to izdarītu, izmantojiet tālāk norādīto arduino kodu. Augšupielādējiet to, izmantojot USB-A uz USB-B kabeli un arduino IDE programmatūru. Kad augšupielādēts, arduino daļa ir pabeigta.
Tagad mums ir jāatrod sērijas ierīces nosaukums uz PI. Lai to izdarītu, pārliecinieties, vai failā /boot/config.txt "enable_uart = 1" ir iestatīts pareizi. Pārliecinieties arī, ka no faila cmdline.txt tiek noņemts "console = serial0, 115200".
Pēc tam pārbaudiet portus, izmantojot
ls -l /dev
Tad vienam no sērijas nosaukumiem jābūt Arduino. Ievadiet šo nosaukumu lietotnes app.py funkcijā arduinocom
ser = sērija. Sērija ('/dev/ttyS0', 9600)
Dariet to tikai tad, ja seriālā komunikācija nedarbojas.
4. solis: Pieslēdziet vadu
Visu pieslēgšana ir diezgan vienkārša, lai gan jums jāpatur prātā šādas lietas:
- Esiet piesardzīgs ar sienas kontaktligzdu, 230 volti var būt nāvējoši.
- Saziņai starp RPI un Arduino noteikti izmantojiet līmeņa pārveidotāju.
- Pirms RGB lodēšanas pārliecinieties, ka izmantojat sarkano un zaļo tapu. Pārbaudi to iepriekš!
- PIRMS ķēdes barošanas pārbaudiet, vai nekas nav īsslēgts.
5. darbība: koda palaišana
Tagad viss ir pareizi savienots, mēs varam palaist savu programmu.
Lai tas palaistu automātiski startēšanas laikā, izveidojiet failu, izmantojot:
sudo nano myscript.service
Pēc tam ielīmējiet (noteikti izmantojiet savu direktoriju app.py:
[Vienība] Apraksts = Switchit After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // mainīt uz app.py direktoriju // StandardOutput = mantot StandardError = pārmantot Restartēt = vienmēr User = pi [Instalēt] WantedBy = multi-user.target
Pēc tam nospiediet "ctrl + X" un nokopējiet to uz/etc/systemd/system.
Pēc tam izpildiet šādu komandu, lai tā darbotos automātiski:
sudo systemctl iespējot myscript.service
Plašāku informāciju par to varat atrast RaspBerry Pi vietnē.
Atsāknēšana un darīts
Tagad restartējiet PI, izmantojot:
sudo reboot -h tagad
Tādā veidā jūs izveidojat Switch-it!
Paldies, ka sekojat līdzi, cerams, ka tas bija noderīgi. Ja jums ir kādi padomi vai atsauksmes, nevilcinieties atstāt komentāru.
6. darbība: (pēc izvēles) korpuss
Mājokli var uzbūvēt pēc saviem ieskatiem. Es izmantoju metāla korpusu ar izmēru 40x40x5 cm. Tā kā es izmantoju metālu, man bija jāizurbj caurumi un jāizmanto starplikas, lai visu noņemtu no zemes plāksnes. Es izvēlējos izmantot centrālo punktu, kur ir pieejami 5V, 3.3V un gnd. Katrs elektriskais savienojums ir pielodēts ar saraušanās caurules gabalu virs tā. Lai vadītu kabeli, es izmantoju spilventiņus ar nesošajām siksnām.
Ieteicams:
Ar Bluetooth vadāma RC automašīna ar ātruma kontroli un attāluma mērīšanu: 8 soļi
Bluetooth vadāma RC automašīna ar ātruma kontroli un attāluma mērīšanu: Bērnībā mani vienmēr fascinēja RC automašīnas. Mūsdienās jūs varat atrast daudz pamācību, kā ar Arduino palīdzību izgatavot lētas Bluetooth vadāmas RC automašīnas. Sāksim soli tālāk un izmantosim savas praktiskās zināšanas par kinemātiku, lai aprēķinātu
Greentent - pasaulē pirmā mini pārnēsājamā zaļā māja ar Arduino temperatūras un mitruma mērīšanu: 3 soļi
Greentents - pasaulē pirmā pārnēsājamā zaļā māja ar Arduino temperatūru un mitrumu un mitrums. Tātad, ir vēls vakars, un es vēlos doties uz veikalu, lai saņemtu šos su
DIY barošanas avots, izmantojot LM317 - Lm 317 Mainīga sprieguma izeja: 12 soļi
DIY barošanas avots, izmantojot LM317 | Lm 317 mainīga sprieguma izeja: Šodien mēs iemācīsimies izveidot nelielu barošanas bloku jūsu mazajiem projektiem. LM317 būs laba izvēle zema strāvas padevei. Lm317 nodrošina mainīgu izejas spriegumu, kas ir atkarīgs no pretestības vērtības wi
12 V izeja no jebkuras ātrās uzlādes saderīgas Powerbank: 6 soļi
12V izeja no jebkuras ātrās uzlādes saderīgas Powerbank: ātrās uzlādes jaudas banku pielietojums ir paredzēts ne tikai tālruņu uzlādēšanai, bet arī kalpo kā rezerves barošanas avots 12 V ierīcēm, piemēram, mājās esošiem modemiem. Sīkāku informāciju var atrast šajā emuārā: http: //blog.deconinck.info/post/2017/08/09/Turnin
WiFi releja izeja-DIY: 5 soļi
WiFi Relay Outlet-DIY: Mūsdienās populārākie IoT eksperimentētāju komplekti tiek piegādāti kā moduļi, kas vienkārši tiek savienoti kopā, nevis atsevišķas sastāvdaļas. Elektronikas iesācēji, praktizējoši inženieri un pieredzējušas rokas noteikti atklās, ka šie lētie moduļi interesē