Talaan ng mga Nilalaman:
- Hakbang 1: Kinakailangan ang Hardware
- Hakbang 2: Hardware Hookup
- Hakbang 3: Pakikipag-usap Gamit ang I2C Protocol
- Hakbang 4: Programming ang Modyul
- Hakbang 5: Lumilikha ng File at Pagpapatakbo ng Code
- Hakbang 6: Mga Aplikasyon
- Hakbang 7: Mga Mapagkukunan
Video: Pag-aautomat ng Home Sa Raspberry Pi Gamit ang Relay Board: 7 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:11
Ang isang pangunahing bilang ng mga tao ay nais ng mahusay na ginhawa ngunit sa mga makatuwirang presyo. Nakakaramdam kami ng tamad na sindihan ang mga bahay tuwing gabi kapag ang araw ay lumubog at sa susunod na umaga, pinapatay muli ang mga ilaw O upang i-on / i-on ang Air Conditioner / Fan / Heater tulad ng panahon o temperatura ng kuwarto.
Ang isang murang solusyon upang maiwasan ang labis na gawaing ito ng pagpatay ng mga kagamitan kapag kinakailangan ay narito. Ito ay upang i-automate ang iyong mga bahay sa medyo mas kaunting mga gastos gamit ang simpleng mga plug at play na produkto. Gumagana ito tulad ng kapag ang temperatura ay tumataas o bumaba, pinapagana nito ang Air conditioner o heater, ayon sa pagkakabanggit. Gayundin, kung kinakailangan, makakatulong itong mag-on o ang mga ilaw ng iyong tahanan nang hindi manu-manong binubuksan ang mga ito. At marami pang mga kagamitan sa bahay ang maaaring kontrolin. I-automate ang mundo. Simulan na namin ang iyong tahanan.
Hakbang 1: Kinakailangan ang Hardware
Gumagamit kami ng:
Raspberry Pi
Ang Raspberry Pi ay isang solitary board Linux based PC. Ang maliit na PC na ito ay naglalagay ng isang suntok sa pagrehistro ng lakas, ginamit bilang isang piraso ng mga ehersisyo sa electronics, at mga pagpapatakbo ng PC tulad ng mga spreadsheet, pagproseso ng salita, web surfing, at email, at mga laro
I2C Shield o I2C Header
Ang INPI2 (I2C adapter) ay nagbibigay ng Raspberry Pi 2/3 isang I²C port para magamit sa maraming mga I2C device
I2C Relay controller MCP23008
Ang MCP23008 mula sa Microchip ay isang Integrated port expander na kumokontrol sa walong relay sa pamamagitan ng I²C bus. Maaari kang magdagdag ng higit pang mga relay, digital I / O, analog sa mga digital converter, sensor, at iba pang mga aparato gamit ang pinagsamang port ng pagpapalawak ng I²C
MCP9808 Temperatura Sensor
Ang MCP9808 ay isang sensor ng temperatura ng mataas na katumpakan na nagbibigay ng naka-calibrate, naka-linya na signal ng sensor sa digital, format na I²C
Sensor ng ilaw ng TCS34903
Ang TCS34903 ay isang produkto ng kulay ng pamilya ng sensor na nagbibigay ng halaga ng bahagi ng RGB ng ilaw at kulay
I2C sa pagkonekta ng cable
Ang I2C na nagkokonekta na cable ay isang 4-wired cable na kung saan ay sinadya para sa komunikasyon ng I2C sa pagitan ng dalawang mga aparato ng I2C na konektado sa pamamagitan nito
Micro USB adapter
Upang mapalakas ang Raspberry Pi, kailangan namin ng isang Micro USB cable
12V power adapter para sa Relay board
Ang MCP23008 Relay controller ay gumagana sa 12V panlabas na lakas at maaari itong maibigay gamit ang isang 12V Power Adapter
Maaari kang bumili ng produkto sa pamamagitan ng pag-click sa kanila. Gayundin, maaari kang makahanap ng mas mahusay na materyal sa Dcube Store.
Hakbang 2: Hardware Hookup
Ang mga kinakailangang koneksyon (sumangguni sa mga larawan) ay ang mga sumusunod:
- Gagana ito sa paglipas ng I2C. Kumuha ng isang kalasag I2C para sa Raspberry pi at dahan-dahang ikonekta ito sa mga GPIO pin ng Raspberry Pi.
- Ikonekta ang isang dulo ng I2C cable sa in-port ng TCS34903 at ang kabilang dulo sa kalasag I2C.
- Ikonekta ang in-pot ng sensor ng MCP9808 sa labas ng TCS34903 gamit ang I2C cable.
- Ikonekta ang in-pot ng MCP23008 sa sensor ng MCP9808 gamit ang I2C cable.
- Ikonekta din ang Ethernet cable sa Raspberry Pi. Maaari ring magamit ang Wi-Fi router para sa pareho.
- Pagkatapos, paganahin ang Raspberry Pi gamit ang isang Micro USB adapter at MCP23008 Relay board gamit ang 12V adapter.
- Panghuli, ikonekta ang ilaw sa unang relay at isang fan o heater na may pangalawang relay. Maaari mong palawakin ang module o maaaring ikonekta ang maraming mga aparato sa mga relay.
Hakbang 3: Pakikipag-usap Gamit ang I2C Protocol
Upang paganahin ang Raspberry Pi I2C, magpatuloy tulad ng nabanggit sa ibaba:
- Sa terminal, i-type ang sumusunod na utos upang buksan ang mga setting ng pagsasaayos: sudo raspi-config
- Piliin ang "Mga Advanced na Pagpipilian" dito.
- Piliin ang "I2C" at I-click ang "Oo".
- I-reboot ang system upang i-set up ito alinsunod sa mga pagbabagong ginawa gamit ang pag-reboot ng utos.
Hakbang 4: Programming ang Modyul
Ang gantimpala ng paggamit ng Raspberry Pi ay, nagbibigay sa iyo ng kakayahang umangkop upang pumili ng isang wika ng programa kung saan nais mong i-program upang ma-interface ang sensing device sa Raspberry Pi. Ginagamit ang kalamangan na ito ng Raspberry Pi, ipinapakita namin dito ang programa nito sa Java.
Upang mai-set up ang kapaligiran sa Java, I-install ang "pi4j libraby" mula sa https://pi4j.com/1.2/index.html Pi4j ay isang Java Input / Output Library para sa Raspberry Pi. Isang madali at pinakahalagang pamamaraan upang mai-install ang "pi4j library "ay upang isagawa ang undermentioned na utos nang direkta sa iyong Raspberry Pi:
curl -s get.pi4j.com | sudo bash
O kaya
curl -s get.pi4j.com
import com.pi4j.io.i2c. I2CBus; import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; i-import ang java.io. IOException; class MCP23008 {public static void main (String args ) throws Exception {int status, value, value1 = 0x00; // Lumikha ng I2C bus I2CBus bus = I2CFactory.getInstance (I2CBus. BUS_1); // Get I2C device, MCP23008 I2C address is 0x20 (32) I2CDevice device = bus.getDevice (0x20); // Get I2C device, MCP9808 I2C address is 0x18 (24) I2CDevice MCP9808 = bus.getDevice (0x18); // Get I2C device, TCS34903 I2C address is 0x39 (55) I2CDevice TCS34903 = bus.getDevice (0x39); // Set Wait Time register = 0xff (255), wait time = 2.78 ms TCS34903.write (0x83, (byte) 0xFF); // Paganahin ang Pag-access sa IR channel TCS34903.write (0xC0, (byte) 0x80); // Set Atime register to 0x00 (0), maximum count = 65535 TCS34903.write (0x81, (byte) 0x00); // Power ON, pinagana ang ADC, pinagana ang maghintay TCS34903.write (0x80, (byte) 0x0B); Thread.tulog (250); // Basahin ang 8 Bytes ng Data na may malinaw / ir data LSB unang byte data1 = bagong byte [8]; // Basahin ang Data ng Temperatura byte data = bagong byte [2]; katayuan = aparato.read (0x09); // Na-configure ang lahat ng mga pin bilang OUTPUT aparato. Magsulat (0x00, (byte) 0x00); Thread.tulog (500); habang (totoo) {MCP9808.read (0x05, data, 0, 2); // convert data int temp = ((data [0] & 0x1F) * 256 + (data [1] & 0xFF)); kung (temp> 4096) {temp - = 8192; } doble cTemp = temp * 0.0625; System.out.printf ("Ang temperatura sa celsius ay:%.2f C% n", cTemp); TCS34903.read (0x94, data1, 0, 8); doble ir = ((data1 [1] & 0xFF) * 256) + (data1 [0] & 0xFF) * 1.00; dobleng pula = ((data1 [3] & 0xFF) * 256) + (data1 [2] & 0xFF) * 1.00; dobleng berde = ((data1 [5] & 0xFF) * 256) + (data1 [4] & 0xFF) * 1.00; dobleng asul = ((data1 [7] & 0xFF) * 256) + (data1 [6] & 0xFF) * 1.00; // Calculate illuminance double illuminance = (-0.32466) * (red) + (1.57837) * (green) + (-0.73191) * (blue); System.out.printf ("Ang pag-iilaw ay:%.2f lux% n", pag-iilaw); kung (illuminance 30) {halaga = halaga1 | (0x01); } iba pa {halaga = value1 & (0x02); } aparato.write (0x09, (byte) na halaga); Thread.tulog (300); }}}
Hakbang 5: Lumilikha ng File at Pagpapatakbo ng Code
- Upang lumikha ng isang bagong file kung saan maaaring maisulat / makopya ang code, gagamitin ang sumusunod na utos: sudo nano FILE_NAME.javaEg. sudo nano MCP23008.java
- Matapos likhain ang file, maaari naming mai-input ang code dito.
- Kopyahin ang code na ibinigay sa nakaraang hakbang at i-paste ito sa window dito.
- Pindutin ang Ctrl + X pagkatapos ay ang "y" upang lumabas.
- Pagkatapos ay ipunin ang code gamit ang sumusunod na utos: pi4j FILE_NAME.javaEg. pi4j MCP23008.java
- Kung walang mga error, patakbuhin ang programa gamit ang undermentioned na utos: pi4j FILE_NAMEEg. pi4j MCP23008.java
Hakbang 6: Mga Aplikasyon
Pinapayagan ka ng system na ito na makontrol ang mga aparato nang hindi napupunta sa mga switch sa dingding. Ito ay may malawak na kakayahan bilang mga oras ng pag-on o pag-off ng mga aparato ay awtomatikong naka-iskedyul. Mayroong isang maliit na mga aplikasyon ng modyul na ito mula sa mga bahay patungo sa mga industriya, ospital, istasyon ng riles at marami pang mga lugar na maaaring awtomatiko sa isang abot-kayang at madaling paraan sa pamamagitan ng mga bahagi ng plug-and-play.
Hakbang 7: Mga Mapagkukunan
Para sa karagdagang impormasyon tungkol sa TSL34903, MCP9808 MCP23008 Relay Controller, suriin ang mga nasa ibaba na mga link:
- TSL34903 Datasheet
- MCP9808 Datasheet
- MCP23008 Datasheet
Inirerekumendang:
IR Home Automation Gamit ang Relay: 6 Mga Hakbang (na may Mga Larawan)
IR Home Automation Gamit ang Relay: Infared Remote Home Automation System (Babala: Gawin ang proyekto sa iyong sariling peligro! Ang proyektong ito ay nagsasangkot ng Mataas na Boltahe)
Orientasyong Pag-program sa Bagay: Paglikha ng Mga Bagay ng Pag-aaral / Pamamaraan sa Pagtuturo / Pamamaraan Gamit ang Shape Puncher: 5 Hakbang
Pag-ooriya sa Pag-program ng Bagay: Paglikha ng Mga Bagay ng Pag-aaral / Pamamaraan sa Pagtuturo / Pamamaraan Gamit ang Shape Puncher: Pamamaraan sa pag-aaral / pagtuturo para sa mga mag-aaral na bago sa object-oriented na programa. Ito ay isang paraan upang pahintulutan silang makita at makita ang proseso ng paglikha ng mga bagay mula sa mga klase. Bahagi 1. EkTools 2-pulgada malaking suntok; ang mga solidong hugis ay pinakamahusay.2. Piraso ng papel o c
Paano Makokontrol ang isang Device Gamit ang Raspberry Pi at isang Relay - ANG BASICS: 6 Hakbang
Paano Makontrol ang isang Device Gamit ang Raspberry Pi at isang Relay - ANG BASICS: Ito ay isang pangunahing at tuwid na pasulong na tutorial sa kung paano makontrol ang isang aparato gamit ang Raspberry Pi at isang Relay, kapaki-pakinabang para sa paggawa ng Mga Proyekto ng IoT Ang tutorial na ito ay para sa mga nagsisimula, magiliw ito sa sundin kahit na mayroon kang zero na kaalaman sa paggamit ng Raspberry
Paano Makikita ang Mga Sakit sa Halaman Gamit ang Pag-aaral ng Makina: 6 Mga Hakbang
Paano Makita ang Mga Sakit sa Halaman Gamit ang Pag-aaral ng Makina: Ang proseso ng pagtuklas at pagkilala sa mga halaman na may sakit ay palaging isang manu-manong at nakakapagod na proseso na nangangailangan ng mga tao na biswal na siyasatin ang katawan ng halaman na maaaring madalas na humantong sa isang maling pagsusuri. Hinulaan din na bilang pandaigdigan
Kontrolin ang Arduino Gamit ang Smartphone Sa pamamagitan ng USB Gamit ang Blynk App: 7 Mga Hakbang (na may Mga Larawan)
Kontrolin ang Arduino Gamit ang Smartphone Sa Pamamagitan ng USB Sa Blynk App: Sa tutorial na ito, matututunan namin kung paano gamitin ang Blynk app at Arduino upang makontrol ang lampara, ang kumbinasyon ay sa pamamagitan ng USB serial port. Ang layunin ng pagtuturo na ito ay upang ipakita ang pinakasimpleng solusyon sa malayo-pagkontrol ng iyong Arduino o c