Orodha ya maudhui:

Uendeshaji wa Nyumba na Raspberry Pi Kutumia Bodi ya Kupeleka: Hatua 7
Uendeshaji wa Nyumba na Raspberry Pi Kutumia Bodi ya Kupeleka: Hatua 7

Video: Uendeshaji wa Nyumba na Raspberry Pi Kutumia Bodi ya Kupeleka: Hatua 7

Video: Uendeshaji wa Nyumba na Raspberry Pi Kutumia Bodi ya Kupeleka: Hatua 7
Video: Cheki jama alivyo paa na ndege ya kichawi utashangaa 2024, Novemba
Anonim
Uendeshaji wa Nyumba na Raspberry Pi Kutumia Bodi ya Kupeleka
Uendeshaji wa Nyumba na Raspberry Pi Kutumia Bodi ya Kupeleka

Idadi kubwa ya watu wanataka faraja kubwa lakini kwa bei nzuri. Tunahisi uvivu kuwasha nyumba kila jioni wakati jua linashuka na asubuhi inayofuata, kuzima taa tena Au kuzima kiyoyozi / Shabiki / Hita kama vile hali ya hewa au joto la kawaida.

Suluhisho la bei rahisi kuzuia kazi hii ya ziada ya kuzima vifaa wakati inahitajika iko hapa. Ni kugeuza nyumba zako kwa gharama ndogo kulinganisha kutumia bidhaa rahisi za kuziba na kucheza. Inafanya kazi kama wakati joto linapanda au kushuka, inawasha kiyoyozi au hita, mtawaliwa. Pia, inapohitajika, itasaidia kuwasha au taa za nyumba yako bila kuwasha kwa mikono. Na vifaa vingi zaidi vinaweza kudhibitiwa. Wacha tuanze nyumba yako.

Hatua ya 1: Vifaa vya vifaa vinahitajika

Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika

Tutatumia:

Pi ya Raspberry

Raspberry Pi ni bodi ya faragha inayotegemea PC ya Linux. PC hii ndogo inachukua ngumi katika kusajili nguvu, inayotumiwa kama kipande cha mazoezi ya elektroniki, na shughuli za PC kama lahajedwali, usindikaji wa maneno, kutumia mtandao, na barua pepe, na michezo

Ngao ya I2C au Kichwa cha I2C

INPI2 (I2C adapta) hutoa Raspberry Pi 2/3 bandari ya I²C kwa matumizi na vifaa vingi vya I2C

Mdhibiti wa Relay ya I2C MCP23008

MCP23008 kutoka Microchip ni upanuaji wa bandari iliyojumuishwa ambayo inadhibiti urejeshwaji nane kupitia basi ya I²C. Unaweza kuongeza upeanaji zaidi, I / O ya dijiti, analog kwa waongofu wa dijiti, sensorer, na vifaa vingine ukitumia bandari ya upanuzi ya I²C

Sensorer ya Joto la MCP9808

MCP9808 ni sensorer ya hali ya joto ya usahihi wa hali ya juu ambayo hutoa ishara zilizosawazishwa, zenye usawa katika muundo wa dijiti, I²C

Sensor ya mwangaza wa TCS34903

TCS34903 ni bidhaa ya sensorer ya rangi ambayo hutoa thamani ya sehemu ya RGB ya mwanga na rangi

Cable ya kuunganisha I2C

Cable ya kuunganisha I2C ni kebo yenye waya 4 ambayo inamaanisha mawasiliano ya I2C kati ya vifaa viwili vya I2C vilivyounganishwa kupitia hiyo

Adapter ndogo ya USB

Ili kuwezesha Raspberry Pi, tunahitaji kebo ndogo ya USB

Adapta ya umeme ya 12V kwa bodi ya Relay

Mdhibiti wa Relay wa MCP23008 hufanya kazi kwa nguvu ya nje ya 12V na hii inaweza kutolewa kwa kutumia Adapter ya Nguvu ya 12V

Unaweza kununua bidhaa kwa kubonyeza yao. Pia, unaweza kupata nyenzo nzuri zaidi kwenye Duka la Dcube.

Hatua ya 2: Kuunganishwa kwa vifaa

Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa

Uunganisho unaohitajika (rejelea picha) ni kama ifuatavyo:

  1. Hii itafanya kazi juu ya I2C. Chukua ngao ya I2C kwa pi ya Raspberry na uiunganishe kwa upole kwenye pini za GPIO za Raspberry Pi.
  2. Unganisha mwisho mmoja wa kebo ya I2C kwenye bandari ya TCS34903 na mwisho mwingine kwa ngao ya I2C.
  3. Unganisha sufuria ya sensa ya MCP9808 kwenye TCS34903 nje ukitumia kebo ya I2C.
  4. Unganisha sufuria ya MCP23008 kwenye sensorer ya MCP9808 kwa kutumia kebo ya I2C.
  5. Unganisha pia kebo ya Ethernet kwa Raspberry Pi. Wi-Fi router pia inaweza kutumika kwa hiyo hiyo.
  6. Kisha, weka Raspberry Pi kwa kutumia adapta ya Micro USB na bodi ya Relay ya MCP23008 ukitumia adapta ya 12V.
  7. Mwishowe, unganisha taa na relay ya kwanza na shabiki au heater na relay ya pili. Unaweza kupanua moduli au unaweza kuunganisha vifaa zaidi na relays.

Hatua ya 3: Kuwasiliana Kutumia Itifaki ya I2C

Ili kufanya Raspberry Pi I2C kuwezeshwa, endelea kama ilivyoelezwa hapo chini:

  1. Katika terminal, andika amri ifuatayo ili kufungua mipangilio ya usanidi: sudo raspi-config
  2. Chagua "Chaguzi za Juu" hapa.
  3. Chagua "I2C" na Bonyeza "Ndio".
  4. Anzisha upya mfumo ili kuiweka kulingana na mabadiliko yaliyofanywa kwa kutumia reboot ya amri.

Hatua ya 4: Kupanga Moduli

Tuzo ya kutumia Raspberry Pi ni kwamba, inakupa kubadilika kuchagua lugha ya programu ambayo unataka kupanga kusanidi kifaa cha kuhisi na Raspberry Pi. Kuunganisha faida hii ya Raspberry Pi, tunaonyesha hapa programu yake katika Java.

Kuanzisha mazingira ya Java, Sakinisha "pi4j libraby" kutoka https://pi4j.com/1.2/index.html Pi4j ni Maktaba ya Kuingiza / Pato ya Java ya Raspberry Pi. Njia rahisi na inayopendelewa zaidi ya kusanikisha "pi4j" maktaba”ni kutekeleza amri iliyotajwa moja kwa moja kwenye Raspberry Pi yako:

curl -s kupata.pi4j.com | Sudo bash

AU

curl -s kupata.pi4j.com

kuagiza com.pi4j.io.i2c. I2CBus; kuagiza com.pi4j.io.i2c. I2CDevice; kuagiza com.pi4j.io.i2c. I2CFactory; kuagiza java.io. IOException; darasa MCP23008 {public static void main (String args ) hutupa Isipokuwa {int status, value, value1 = 0x00; // Tengeneza basi ya I2C I2CBus bus = I2CFactory.getInstance (I2CBus. BUS_1); // Pata kifaa cha I2C, anwani ya MCP23008 I2C ni 0x20 (32) I2CDevice kifaa = bus.getDevice (0x20); // Pata kifaa cha I2C, anwani ya MCP9808 I2C ni 0x18 (24) I2CDevice MCP9808 = bus.getDevice (0x18); // Pata kifaa cha I2C, anwani ya TCS34903 I2C ni 0x39 (55) I2CDevice TCS34903 = bus.getDevice (0x39); // Weka rejista ya Wakati wa Kusubiri = 0xff (255), wakati wa kusubiri = 2.78 ms TCS34903. Andika (0x83, (byte) 0xFF); // Wezesha Ufikiaji wa kituo cha IR TCS34903. Andika (0xC0, (byte) 0x80); // Weka Sajili ya Wakati hadi 0x00 (0), hesabu kubwa = 65535 TCS34903. Andika (0x81, (byte) 0x00); // Power ON, ADC imewezeshwa, Subira imewezeshwa TCS34903. Andika (0x80, (byte) 0x0B); Kulala (250); // Soma Baiti 8 za Takwimu zilizo na data wazi / ir ya LSB Byte ya kwanza data1 = Byte mpya [8]; // Soma baiti ya Takwimu ya Joto data = byte mpya [2]; hadhi = kifaa.soma (0x09); // Imeweka pini zote kama kifaa cha OUTPUT. Andika (0x00, (byte) 0x00); Kulala (500); wakati (kweli) {MCP9808.read (0x05, data, 0, 2); // Badilisha data int temp = ((data [0] & 0x1F) * 256 + (data [1] & 0xFF)); ikiwa (temp> 4096) {temp - = 8192; } mara mbili cTemp = temp * 0.0625; System.out.printf ("Joto katika celsius ni:%.2f C% n", cTemp); TCS34903. soma (0x94, data1, 0, 8); mara mbili ir = ((data1 [1] & 0xFF) * 256) + (data1 [0] & 0xFF) * 1.00; nyekundu mbili = ((data1 [3] & 0xFF) * 256) + (data1 [2] & 0xFF) * 1.00; kijani mara mbili = ((data1 [5] & 0xFF) * 256) + (data1 [4] & 0xFF) * 1.00; bluu mara mbili = ((data1 [7] & 0xFF) * 256) + (data1 [6] & 0xFF) * 1.00; // Hesabu mwangaza mara mbili mwangaza = (-0.32466) * (nyekundu) + (1.57837) * (kijani) + (-0.73191) * (bluu); System.out.printf ("Mwangaza ni:%.2f lux% n", mwangaza); ikiwa (mwangaza 30) {value = value1 | (0x01); } mwingine {value = value1 & (0x02); andika kifaa (0x09, (byte) thamani); Kulala (300); }}}

Hatua ya 5: Kuunda Faili na Kuendesha Nambari

  1. Ili kuunda faili mpya ambapo nambari inaweza kuandikwa / kunakiliwa, amri ifuatayo itatumika: sudo nano FILE_NAME.javaEg. Sudo nano MCP23008. java
  2. Baada ya kuunda faili, tunaweza kuingiza nambari hapa.
  3. Nakili nambari iliyotolewa katika hatua iliyopita na ibandike kwenye dirisha hapa.
  4. Bonyeza Ctrl + X kisha "y" ili kutoka.
  5. Kisha unganisha nambari kwa kutumia amri ifuatayo: pi4j FILE_NAME.javaEg. pi4j MCP23008. java
  6. Ikiwa hakuna makosa, endesha programu kwa kutumia amri iliyotajwa hapo chini: pi4j FILE_NAMEEg. pi4j MCP23008. java

Hatua ya 6: Maombi

Mfumo huu hukuruhusu kudhibiti vifaa bila kwenda kwenye swichi za ukuta. Hii ina uwezo mkubwa kwani nyakati za kuwasha au kuzima vifaa zimepangwa kiotomatiki. Kuna matumizi machache ya moduli hii kutoka nyumba hadi viwanda, hospitali, vituo vya reli na maeneo mengi zaidi yanaweza kuendeshwa kwa njia rahisi na rahisi na vifaa vyake vya kuziba na kucheza.

Hatua ya 7: Rasilimali

Kwa habari zaidi juu ya TSL34903, MCP9808 MCP23008 Mdhibiti wa Relay, angalia viungo hapa chini:

  • Jedwali la TSL34903
  • Jedwali la MCP9808
  • Jedwali la MCP23008

Ilipendekeza: