Բովանդակություն:

Տնային ավտոմատացում Raspberry Pi- ի միջոցով `օգտագործելով ռելեային տախտակ. 7 քայլ
Տնային ավտոմատացում Raspberry Pi- ի միջոցով `օգտագործելով ռելեային տախտակ. 7 քայլ

Video: Տնային ավտոմատացում Raspberry Pi- ի միջոցով `օգտագործելով ռելեային տախտակ. 7 քայլ

Video: Տնային ավտոմատացում Raspberry Pi- ի միջոցով `օգտագործելով ռելեային տախտակ. 7 քայլ
Video: Ինչպես կառուցել Raspberry Pi Pico PLC || OpenPLC խմբագիր 2024, Հուլիսի
Anonim
Տնային ավտոմատացում Raspberry Pi- ի միջոցով `օգտագործելով ռելեային տախտակ
Տնային ավտոմատացում Raspberry Pi- ի միջոցով `օգտագործելով ռելեային տախտակ

Մարդկանց մեծամասնությունը ցանկանում է ունենալ մեծ հարմարավետություն, բայց ողջամիտ գներով: Մենք ծուլություն ենք զգում ամեն երեկո, երբ արևը մայր է մտնում և հաջորդ առավոտ լուսավորվում են տները ՝ կրկին անջատելով լույսերը կամ միացնելու/անջատելու օդորակիչը/օդափոխիչը/տաքացուցիչները, ինչպես եղանակը կամ սենյակի ջերմաստիճանը:

Էժան լուծում `անհրաժեշտության դեպքում կենցաղային տեխնիկայի անջատման այս լրացուցիչ աշխատանքից խուսափելու համար: Դա այն է, որ ձեր տները համեմատաբար շատ ավելի քիչ ծախսերով ավտոմատացնեք `օգտագործելով պարզ վարդակից և խաղային արտադրանք: Այն աշխատում է այնպես, երբ ջերմաստիճանը բարձրանում կամ իջնում է, համապատասխանաբար միացնում է Օդորակիչը կամ ջեռուցիչը: Բացի այդ, անհրաժեշտության դեպքում, դա կօգնի միացնել կամ լուսավորել ձեր տան լույսերը ՝ առանց ձեռքով դրանք միացնելու: Եվ շատ այլ սարքեր կարող են վերահսկվել: Ավտոմատացրեք աշխարհը: Եկեք սկսենք ձեր տունը:

Քայլ 1: Պահանջվում է սարքավորում

Պահանջվում է սարքավորում
Պահանջվում է սարքավորում
Պահանջվում է սարքավորում
Պահանջվում է սարքավորում
Պահանջվում է սարքավորում
Պահանջվում է սարքավորում

Մենք կօգտագործենք.

Ազնվամորի Պի

Raspberry Pi- ն Linux- ի վրա հիմնված միայնակ համակարգիչ է: Այս փոքրիկ ԱՀ -ն մեծ ուժ է գրանցում ուժի գրանցման համար, որն օգտագործվում է որպես էլեկտրոնիկայի վարժությունների մի մաս և համակարգչային գործողություններ, ինչպիսիք են աղյուսակները, բառերի մշակումը, վեբ սերֆինգը և էլ. Փոստը և խաղերը:

I2C վահան կամ I2C վերնագիր

INPI2- ը (I2C ադապտեր) ապահովում է Raspberry Pi 2/3 և I²C պորտը I2C բազմաթիվ սարքերով օգտագործելու համար:

I2C ռելեի վերահսկիչ MCP23008

Microchip- ից MCP23008- ը ինտեգրված նավահանգստի ընդլայնիչ է, որը վերահսկում է ութ ռելեներ I²C ավտոբուսի միջոցով: Դուք կարող եք ավելացնել ավելի շատ ռելեներ, թվային մուտք/ելք, անալոգային թվային կերպափոխիչներին, տվիչներին և այլ սարքերի ՝ օգտագործելով ինտեգրված I²C ընդլայնման պորտը:

MCP9808 peratերմաստիճանի տվիչ

MCP9808- ը բարձր ճշգրտության ջերմաստիճանի տվիչ է, որն ապահովում է տրամաչափված, գծային սենսորային ազդանշաններ թվային, I²C ձևաչափով:

TCS34903 լուսավորության ցուցիչ

TCS34903- ը գունային սենսորների ընտանեկան արտադրանք է, որն ապահովում է լույսի և գույնի RGB բաղադրիչի արժեքը:

I2C միացնող մալուխ

I2C միացնող մալուխը 4 լարային մալուխ է, որը նախատեսված է դրա միջոցով միացված երկու I2C սարքերի միջև I2C հաղորդակցության համար:

Միկրո USB ադապտեր

Raspberry Pi- ն սնուցելու համար մեզ անհրաժեշտ է Micro USB մալուխ:

12V հոսանքի ադապտեր ռելեի տախտակի համար:

MCP23008 Ռելե վերահսկիչն աշխատում է 12 Վ արտաքին էներգիայի վրա, և այն կարող է մատակարարվել ՝ օգտագործելով 12 Վ հոսանքի ադապտեր:

Դուք կարող եք գնել ապրանքը `կտտացնելով դրանց վրա: Բացի այդ, դուք կարող եք ավելի մեծ նյութ գտնել Dcube Store- ում:

Քայլ 2: Սարքավորման միացում

Սարքավորումների միացում
Սարքավորումների միացում
Սարքավորումների միացում
Սարքավորումների միացում
Սարքավորումների միացում
Սարքավորումների միացում
Սարքավորումների միացում
Սարքավորումների միացում

Պահանջվող կապերը (տե՛ս նկարները) հետևյալն են.

  1. Սա կաշխատի I2C- ի դեպքում: Վերցրեք I2C վահան Raspberry pi- ի համար և նրբորեն միացրեք այն Raspberry Pi- ի GPIO կապումներին:
  2. I2C մալուխի մի ծայրը միացրեք TCS34903- ի ներդիրին, իսկ մյուս ծայրը `I2C վահանին:
  3. Միացրեք MCP9808 տվիչի կաթսան TCS34903- ի ելքին I2C մալուխի միջոցով:
  4. Միացրեք MCP23008- ի կաթսան MCP9808 սենսորին `I2C մալուխի միջոցով:
  5. Նաև Ethernet մալուխը միացրեք Raspberry Pi- ին: Wi-Fi երթուղիչը նույնպես կարող է օգտագործվել դրա համար:
  6. Այնուհետև, միացրեք Raspberry Pi- ն ՝ օգտագործելով Micro USB ադապտեր և MCP23008 փոխանցման տախտակ ՝ օգտագործելով 12V ադապտեր:
  7. Ի վերջո, լույսը միացրեք առաջին ռելեով, իսկ օդափոխիչը կամ ջեռուցիչը `երկրորդ: Դուք կարող եք ընդլայնել մոդուլը կամ կարող եք ավելի շատ սարքեր միացնել ռելեներ:

Քայլ 3. Հաղորդակցություն I2C արձանագրության միջոցով

Raspberry Pi I2C- ը միացված դարձնելու համար շարունակեք այնպես, ինչպես նշված է ստորև.

  1. Տերմինալում մուտքագրեք հետևյալ հրամանը `կազմաձևման կարգավորումները բացելու համար. Sudo raspi-config
  2. Այստեղ ընտրեք «Ընդլայնված ընտրանքներ»:
  3. Ընտրեք «I2C» և կտտացրեք «Այո»:
  4. Վերագործարկեք համակարգը ՝ այն կարգաբերելու համար ՝ հրամանի վերագործարկման միջոցով կատարված փոփոխությունների համաձայն:

Քայլ 4: Մոդուլի ծրագրավորում

Raspberry Pi- ի օգտագործման պարգևն այն է, որ ձեզ տալիս է ճկունություն այն ծրագրավորման լեզուն ընտրելու համար, որով ցանկանում եք ծրագրավորել ՝ զգայարանների ինտերֆեյսը Raspberry Pi- ի հետ: Օգտվելով Raspberry Pi- ի այս առավելությունից ՝ մենք այստեղ ցույց ենք տալիս դրա ծրագրավորումը Java- ում:

Java միջավայրը կարգավորելու համար տեղադրեք «pi4j libraby» - ն ՝ https://pi4j.com/1.2/index.html Pi4j- ն Raspberry Pi- ի համար Java մուտքագրման/ելքի գրադարան է: «pi4j» - ի տեղադրման ամենահեշտ և նախընտրելի մեթոդը: գրադարան »նշանակում է ՝ կատարել ստորև նշված հրամանը անմիջապես ձեր Raspberry Pi- ում.

curl -s get.pi4j.com | sudo bash

ԿԱՄ

curl -s get.pi4j.com

ներմուծել com.pi4j.io.i2c. I2CBus; ներմուծել com.pi4j.io.i2c. I2CD սարք; ներմուծել com.pi4j.io.i2c. I2CFactory; ներմուծում java.io. IOException; class MCP23008 {public static void main (String args ) նետում է Exception (int status, value, value1 = 0x00; // Ստեղծել I2C ավտոբուս I2CBus ավտոբուս = I2CFactory.getInstance (I2CBus. BUS_1); // Ստացեք I2C սարք, MCP23008 I2C հասցեն ՝ 0x20 (32) I2CD սարքի սարք = bus.getDevice (0x20); // Ստացեք I2C սարք, MCP9808 I2C հասցեն ՝ 0x18 (24) I2CDevice MCP9808 = bus.getDevice (0x18); // Ստացեք I2C սարք, TCS34903 I2C հասցեն ՝ 0x39 (55) I2CDevice TCS34903 = bus.getDevice (0x39); // Սահմանել սպասման ժամանակի գրանցամատյան = 0xff (255), սպասման ժամանակ = 2.78 ms TCS34903. գրել (0x83, (բայթ) 0xFF); // Միացնել IR TCS34903.w ալիքի մուտքը (0xC0, (բայթ) 0x80); // Atime գրանցամատյանը սահմանել 0x00 (0), առավելագույն հաշվարկ = 65535 TCS34903. գրել (0x81, (բայթ) 0x00); // Միացում, ADC միացված, Սպասել միացված TCS34903.write (0x80, (բայթ) 0x0B); Thread.sleep (250); // Կարդացեք տվյալների 8 բայթ հստակ/ir տվյալներով LSB առաջին բայթ data1 = նոր բայթ [8]; // Կարդալ ջերմաստիճանի տվյալների բայթ տվյալներ = նոր բայթ [2]; կարգավիճակ = device.read (0x09); // Կարգավորել բոլոր կապում որպես OUTPUT device.write (0x00, (բայթ) 0x00); Thread.sleep (500); while (true) {MCP9808.read (0x05, data, 0, 2); // Փոխարկել տվյալները int temp = ((տվյալները [0] & 0x1F) * 256 + (տվյալները [1] & 0xFF)); if (temp> 4096) {temp -= 8192; } կրկնակի cTemp = temp * 0.0625; System.out.printf («elsելսիուսի ջերմաստիճանը ՝ %.2f C %n», cTemp); TCS34903. կարդալ (0x94, տվյալներ 1, 0, 8); կրկնակի ir = ((data1 [1] & 0xFF) * 256) + (data1 [0] & 0xFF) * 1.00; կրկնակի կարմիր = ((data1 [3] & 0xFF) * 256) + (data1 [2] & 0xFF) * 1.00; կրկնակի կանաչ = ((data1 [5] & 0xFF) * 256) + (data1 [4] & 0xFF) * 1.00; կրկնակի կապույտ = ((data1 [7] & 0xFF) * 256) + (data1 [6] & 0xFF) * 1.00; // Հաշվարկեք լուսավորության կրկնակի լուսավորություն = (-0.32466) * (կարմիր) + (1.57837) * (կանաչ) + (-0.73191) * (կապույտ); System.out.printf («Լուսավորությունն է ՝ %.2f lux %n“, լուսավորություն); if (լուսավորություն 30) {value = value1 | (0x01); } else {value = value1 & (0x02); } device.write (0x09, (բայթ) արժեք); Thread.sleep (300); }}}

Քայլ 5: Ստեղծեք ֆայլ և գործարկեք ծածկագիրը

  1. Նոր ֆայլ ստեղծելու համար, որտեղ կոդը կարելի է գրել/պատճենել, կօգտագործվի հետևյալ հրամանը ՝ sudo nano FILE_NAME.javaEg: sudo nano MCP23008.java
  2. Ֆայլը ստեղծելուց հետո մենք այստեղ կարող ենք մուտքագրել ծածկագիրը:
  3. Պատճենեք նախորդ քայլին տրված կոդը և տեղադրեք այստեղ պատուհանում:
  4. Սեղմեք Ctrl+X, այնուհետև «y» ՝ դուրս գալու համար:
  5. Այնուհետև կազմեք կոդը ՝ օգտագործելով հետևյալ հրամանը ՝ pi4j FILE_NAME.javaEg: pi4j MCP23008.java
  6. Եթե սխալներ չկան, գործարկեք ծրագիրը ՝ օգտագործելով ստորև նշված հրամանը ՝ pi4j FILE_NAMEEg: pi4j MCP23008.java

Քայլ 6: Applicրագրեր

Այս համակարգը թույլ է տալիս վերահսկել սարքերը ՝ առանց պատի անջատիչների մոտենալու: Սա լայն հնարավորություններ ունի, քանի որ սարքերը միացնելու կամ անջատելու ժամանակներն ինքնաբերաբար պլանավորված են: Այս մոդուլի մի քանի ծրագիր կա `տներից մինչև արդյունաբերություն, հիվանդանոցներ, երկաթուղային կայարաններ և շատ այլ վայրեր, որոնք կարող են ավտոմատացվել մատչելի և հեշտ եղանակով` իր plug-and-play բաղադրիչներով:

Քայլ 7: Ռեսուրսներ

TSL34903, MCP9808 MCP23008 ռելեի վերահսկիչի մասին լրացուցիչ տեղեկությունների համար ստուգեք ստորև բերված հղումները.

  • TSL34903 Տվյալների թերթ
  • MCP9808 Տվյալների թերթ
  • MCP23008 Տվյալների թերթ

Խորհուրդ ենք տալիս: