Satura rādītājs:
- 1. darbība. Nepieciešama aparatūra
- 2. darbība. Aparatūras savienošana
- 3. darbība. Saziņa, izmantojot I2C protokolu
- 4. solis: moduļa programmēšana
- 5. darbība: faila izveide un koda palaišana
- 6. darbība: lietojumprogrammas
- 7. solis: resursi
Video: Mājas automatizācija ar Raspberry Pi, izmantojot releja dēli: 7 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Lielākā daļa cilvēku vēlas lielu komfortu, bet par saprātīgām cenām. Mēs jūtamies slinki, lai apgaismotu mājas katru vakaru, kad saule noriet, un nākamajā rītā, atkal izslēdzot gaismas vai ieslēdzot/izslēdzot gaisa kondicionētāju/ventilatoru/sildītāju, kā arī laika apstākļus vai istabas temperatūru.
Šeit ir pieejams lēts risinājums, lai izvairītos no šī papildu darba, izslēdzot ierīces. Tas ir automatizēt jūsu mājas salīdzinoši ļoti mazākās izmaksās, izmantojot vienkāršus plug and play produktus. Tas darbojas kā tad, kad temperatūra paaugstinās vai pazeminās, attiecīgi ieslēdz gaisa kondicionētāju vai sildītāju. Turklāt, ja nepieciešams, tas palīdzēs ieslēgt vai apgaismot jūsu māju, manuāli tos neieslēdzot. Un daudzas citas ierīces var kontrolēt. Automatizējiet pasauli. Ļaujiet mums sākt jūsu māju.
1. darbība. Nepieciešama aparatūra
Mēs izmantosim:
Raspberry Pi
Raspberry Pi ir vientuļš uz Linux balstīts dators. Šis mazais dators ir jaudīgs, reģistrējot jaudu, ko izmanto kā elektronikas vingrinājumu daļu, un tādas datora darbības kā izklājlapas, tekstapstrāde, sērfošana tīmeklī, e -pasts un spēles
I2C vairogs vai I2C galvene
INPI2 (I2C adapteris) nodrošina Raspberry Pi 2/3 an I²C portu lietošanai ar vairākām I2C ierīcēm
I2C releja kontrolieris MCP23008
Microchip MCP23008 ir integrēts portu paplašinātājs, kas caur I²C kopni kontrolē astoņus relejus. Izmantojot integrēto I²C paplašināšanas portu, varat pievienot vairāk releju, digitālo I/O, analogo un digitālo pārveidotāju, sensorus un citas ierīces
MCP9808 temperatūras sensors
MCP9808 ir augstas precizitātes temperatūras sensors, kas nodrošina kalibrētus, linearizētus sensoru signālus digitālā, I²C formātā
TCS34903 spilgtuma sensors
TCS34903 ir krāsu sensoru ģimenes produkts, kas nodrošina gaismas un krāsu RGB komponenta vērtību
I2C savienojuma kabelis
I2C savienojošais kabelis ir 4 vadu kabelis, kas paredzēts I2C komunikācijai starp divām caur to savienotām I2C ierīcēm
Micro USB adapteris
Lai ieslēgtu Raspberry Pi, mums ir nepieciešams Micro USB kabelis
12 V strāvas adapteris releja plāksnei
MCP23008 releja kontrolieris darbojas ar 12 V ārēju barošanu, un to var piegādāt, izmantojot 12 V strāvas adapteri
Jūs varat iegādāties produktu, noklikšķinot uz tiem. Turklāt jūs varat atrast vairāk lielisku materiālu vietnē Dcube Store.
2. darbība. Aparatūras savienošana
Nepieciešamie savienojumi (skatiet attēlus) ir šādi:
- Tas darbosies, izmantojot I2C. Paņemiet Raspberry pi I2C vairogu un viegli pievienojiet to Raspberry Pi GPIO tapām.
- Savienojiet I2C kabeļa vienu galu ar TCS34903 ieeju un otru galu pie I2C vairoga.
- Savienojiet MCP9808 sensora katlu ar TCS34903 izeju, izmantojot I2C kabeli.
- Savienojiet MCP23008 katlu ar MCP9808 sensora izeju, izmantojot I2C kabeli.
- Pievienojiet arī Ethernet kabeli Raspberry Pi. Tam var izmantot arī Wi-Fi maršrutētāju.
- Pēc tam barojiet Raspberry Pi, izmantojot Micro USB adapteri un MCP23008 releja plati, izmantojot 12 V adapteri.
- Visbeidzot, savienojiet gaismu ar pirmo releju un ventilatoru vai sildītāju ar otro releju. Jūs varat paplašināt moduli vai pievienot relejiem vairāk ierīču.
3. darbība. Saziņa, izmantojot I2C protokolu
Lai iespējotu Raspberry Pi I2C, rīkojieties šādi:
- Terminālī ierakstiet šādu komandu, lai atvērtu konfigurācijas iestatījumus: sudo raspi-config
- Šeit atlasiet “Papildu opcijas”.
- Atlasiet “I2C” un noklikšķiniet uz “Jā”.
- Restartējiet sistēmu, lai to iestatītu atbilstoši izmaiņām, kas veiktas, izmantojot komandu reboot.
4. solis: moduļa programmēšana
Atalgojums par Raspberry Pi izmantošanu ir tas, ka tas nodrošina elastību izvēlēties programmēšanas valodu, kurā vēlaties programmēt, lai saskarne ar uztveres ierīci būtu savienota ar Raspberry Pi. Izmantojot šo Raspberry Pi priekšrocību, mēs šeit demonstrējam tās programmēšanu Java.
Lai iestatītu Java vidi, instalējiet “pi4j libraby” vietnē https://pi4j.com/1.2/index.html Pi4j ir Java ievades/izvades bibliotēka Raspberry Pi. Vienkārša un vēlamākā metode “pi4j” instalēšanai bibliotēka”ir izpildīt zemāk minēto komandu tieši savā Raspberry Pi:
čokurošanās -s get.pi4j.com | sudo bash
VAI
čokurošanās -s get.pi4j.com
importēt com.pi4j.io.i2c. I2CBus; importēt com.pi4j.io.i2c. I2CDevice; importēt com.pi4j.io.i2c. I2CFactory; importēt java.io. IOException; klase MCP23008 {public static void main (String args ) met Izņēmums {int statuss, vērtība, vērtība1 = 0x00; // Izveidot I2C kopni I2CBus kopne = I2CFactory.getInstance (I2CBus. BUS_1); // Iegūt I2C ierīci, MCP23008 I2C adrese ir 0x20 (32) I2CDevice device = bus.getDevice (0x20); // Iegūt I2C ierīci, MCP9808 I2C adrese ir 0x18 (24) I2CDevice MCP9808 = bus.getDevice (0x18); // Iegūt I2C ierīci, TCS34903 I2C adrese ir 0x39 (55) I2CDevice TCS34903 = bus.getDevice (0x39); // Iestatīt gaidīšanas laika reģistru = 0xff (255), gaidīšanas laiks = 2,78 ms TCS34903.write (0x83, (baits) 0xFF); // Iespējot piekļuvi IS kanālam TCS34903.write (0xC0, (baits) 0x80); // Iestatīt Atime reģistru uz 0x00 (0), maksimālais skaits = 65535 TCS34903.write (0x81, (baits) 0x00); // Ieslēgšana, ieslēgts ADC, gaidīšana iespējota TCS34903.write (0x80, (baits) 0x0B); Vītne.miega (250); // Lasīt 8 baitus datu ar skaidru/ir datu LSB pirmais baits dati1 = jauns baits [8]; // Lasīt temperatūras datu baitu dati = jauns baits [2]; statuss = ierīce.lasīt (0x09); // Visas tapas konfigurētas kā OUTPUT device.write (0x00, (baits) 0x00); Vītne.miega (500); while (true) {MCP9808.read (0x05, data, 0, 2); // Pārvērst datus int temp = ((dati [0] & 0x1F) * 256 + (dati [1] & 0xFF)); ja (temp> 4096) {temp -= 8192; } dubultā cTemp = temp * 0,0625; System.out.printf (“Temperatūra pēc Celsija ir: %.2f C %n”, cTemp); TCS34903.lasīt (0x94, dati1, 0, 8); dubults ir = ((dati1 [1] & 0xFF) * 256) + (dati1 [0] un 0xFF) * 1,00; divreiz sarkans = ((dati1 [3] un 0xFF) * 256) + (dati1 [2] un 0xFF) * 1,00; divreiz zaļš = ((dati1 [5] un 0xFF) * 256) + (dati1 [4] un 0xFF) * 1,00; dubultzils = ((dati1 [7] & 0xFF) * 256) + (dati1 [6] un 0xFF) * 1,00; // Aprēķināt apgaismojuma dubulto apgaismojumu = (-0,32466) * (sarkans) + (1,57837) * (zaļš) + (-0,73191) * (zils); System.out.printf (“Apgaismojums ir: %.2f lux %n“, apgaismojums); ja (apgaismojums 30) {vērtība = vērtība1 | (0x01); } cits {vērtība = vērtība1 & (0x02); } device.write (0x09, (baitu) vērtība); Vītne.miega (300); }}}
5. darbība: faila izveide un koda palaišana
- Lai izveidotu jaunu failu, kurā kodu var ierakstīt/kopēt, tiks izmantota šāda komanda: sudo nano FILE_NAME.javaEg. sudo nano MCP23008.java
- Pēc faila izveides mēs varam ievadīt kodu šeit.
- Kopējiet iepriekšējā solī norādīto kodu un ielīmējiet to šeit esošajā logā.
- Lai izietu, nospiediet Ctrl+X un pēc tam "y".
- Pēc tam apkopojiet kodu, izmantojot šādu komandu: pi4j FILE_NAME.javaEg. pi4j MCP23008.java
- Ja nav kļūdu, palaidiet programmu, izmantojot zemāk minēto komandu: pi4j FILE_NAMEEg. pi4j MCP23008.java
6. darbība: lietojumprogrammas
Šī sistēma ļauj kontrolēt ierīces, neizejot pie sienas slēdžiem. Tam ir plašas iespējas, jo ierīču ieslēgšanas vai izslēgšanas laiks tiek automātiski ieplānots. Šim modulim ir nedaudz lietojumu, sākot no mājām līdz rūpniecībai, slimnīcām, dzelzceļa stacijām un daudzām citām vietām, to pieejamā un vienkāršā veidā var automatizēt, izmantojot plug-and-play komponentus.
7. solis: resursi
Lai iegūtu papildinformāciju par TSL34903, MCP9808 MCP23008 releja kontrolieri, skatiet zemāk esošās saites:
- TSL34903 datu lapa
- MCP9808 datu lapa
- MCP23008 datu lapa
Ieteicams:
Alexa viedās mājas sistēma, izmantojot NodeMCU releja moduli: 10 soļi
Alexa viedās mājas sistēma, izmantojot NodeMCU releja moduli: Šajā IoT projektā esmu izveidojis Alexa viedās mājas automatizācijas sistēmu, izmantojot NodeMCU ESP8266 & Releju modulis. Jūs varat viegli kontrolēt gaismu, ventilatoru un citu sadzīves tehniku, izmantojot balss komandu. Lai savienotu viedo skaļruni Echo Dot ar
Mājas automatizācija ar infrasarkano un Bluetooth vadāmo releja moduli: 10 soļi
Mājas automatizācija ar infrasarkano un Bluetooth vadāmo releja moduli: Šajā mājas automatizācijas projektā esmu parādījis, kā mēs varam kontrolēt gaismu, ventilatoru un citas sadzīves tehnikas no mūsu viedtālruņa lietotnes un IR tālvadības pults, izmantojot Arduino vadības releja moduļa ķēdi. Šis Arduino kontrolētais viedais relejs ķēdei ir divi režīmi, Inf
MĀJAS AUTOMATIZĀCIJA, PAMATOJOTIES uz LOKĀLO MQTT SERVERI, LIETOT APAŅU PI UN NODEMKU DĒLI: 6 soļi
MĀJAS AUTOMATIZĀCIJA, PAMATOJOTIES UZ LOKĀLO MQTT SERVERI, LIETOT RASPBERRY PI UN NODEMCU BOARD: Līdz šim esmu izveidojis vairākus mācību video par ierīču vadīšanu internetā. Un tāpēc es vienmēr izvēlējos Adafruit MQTT serveri, jo tas bija viegli lietojams un arī lietotājam draudzīgs. Bet visas šīs lietas bija balstītas uz internetu. Tas nozīmē, ka mēs
Mājas automatizācija: automātiskais slēdžu panelis ar dimmeru vadību, izmantojot Bluetooth, izmantojot Tiva TM4C123G: 7 soļi
Mājas automatizācija: automātiska slēdžu sistēma ar regulēšanas funkciju, izmantojot Bluetooth, izmantojot Tiva TM4C123G: Mūsdienās mūsu televizoriem un citām elektroniskajām sistēmām ir tālvadības pults, kas ir padarījušas mūsu dzīvi patiešām vieglu. Vai esat kādreiz domājuši par mājas automatizāciju, kas ļautu kontrolēt lampu gaismas, ventilatorus un citu elektrību
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