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

Temերմաստիճանի, խոնավության մոնիտոր - Arduino Mega + Ethernet W5100: 5 քայլ
Temերմաստիճանի, խոնավության մոնիտոր - Arduino Mega + Ethernet W5100: 5 քայլ

Video: Temերմաստիճանի, խոնավության մոնիտոր - Arduino Mega + Ethernet W5100: 5 քայլ

Video: Temերմաստիճանի, խոնավության մոնիտոր - Arduino Mega + Ethernet W5100: 5 քայլ
Video: Temperature and humidity reading using Delta HMI Rs485 Modbus communication system. 2024, Նոյեմբեր
Anonim
Temերմաստիճանի, խոնավության մոնիտոր - Arduino Mega + Ethernet W5100
Temերմաստիճանի, խոնավության մոնիտոր - Arduino Mega + Ethernet W5100

Մոդուլ 1 - FLAT - սարքավորում

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet վահան
  • 8x DS18B20 ջերմաստիճանի տվիչ OneWire ավտոբուսի վրա - բաժանված է 4 OneWire ավտոբուսի (2, 4, 1, 1)
  • 2x թվային ջերմաստիճանի և խոնավության տվիչ DHT22 (AM2302)
  • 1x ջերմաստիճանի և խոնավության տվիչ SENSIRION SHT21 (Si7021)
  • 1x BOSCH BME280 ջերմաստիճանի և խոնավության (և օդի ճնշման) տվիչ
  • Բոլոր սենսորների տվյալները միանգամից մի քանի րոպեում ուղարկում է (կարող է փոփոխվել)

Մոդուլ 2 - ԿԱՌԱՎՈՐ - սարքավորում

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet վահան
  • 16x DS18B20 ջերմաստիճանի տվիչ OneWire ավտոբուսի վրա ՝ բաժանված 7 OneWire ավտոբուսի (2, 2, 2, 2, 2, 2, 4)
  • 8 անգամ թվային մուտքագրում
  • 8x թվային ելք - էլեկտրամագնիսական / ռելեի համար
  • Բոլոր սենսորների տվյալները միանգամից մի քանի րոպեի ընթացքում ուղարկում է (կարող է փոփոխվել)
  • Այն կարդում է վեբ ինտերֆեյսի առանձին ելքերի վիճակները, կիրառում դրանք Ուղարկում է թվային մուտքային վիճակներ

Քայլ 1: Ներածություն

Ներածություն
Ներածություն
Ներածություն
Ներածություն
Ներածություն
Ներածություն

Այսօր մանրամասն կներկայացնեմ վերջին իրականացված նախագիծը, որը բավականին բարդ է ֆունկցիոնալության, օգտագործված սենսորների քանակի, Arduino տախտակների, օգտագործված տվյալների ավտոբուսների առումով: Նախագիծը բաղկացած է երկու մոդուլից: Ֆիզիկապես յուրաքանչյուր մոդուլ բաղկացած է առանձին Arduino Mega 2560, Ethernet վահան W5100 (համատեղելի R3) և օգտագործվող տվիչներից:

Յուրաքանչյուր մոդուլ հաղորդակցվում է ինտերնետի վեբ ինտերֆեյսի հետ HTTP POST հարցումների միջոցով, որոնցով վեբ սերվերը վաճառում է տվյալներ կամ պահանջում է որոշակի տվյալներ, օրինակ ՝ POST հարցման միջոցով (միայն մոդուլ 2): Վեբ ինտերֆեյսը լրացվում է մուտքի համակարգով, մինչդեռ ամբողջ ընտանիքը կարող է գրանցվել համակարգում ՝ յուրաքանչյուրն իր անունով և գաղտնաբառով: Հետևաբար, դա բազմօգտագործող ծրագիր է, որտեղ ընտանիքի յուրաքանչյուր անդամ ունի երկու մոդուլների ակնարկ և կարող է կատարել տարբեր գործողություններ `հղման ջերմաստիճանի սահմանում, հսկիչ ջերմաչափ և այլն: Վեբ ինտերֆեյսը ծրագրավորված է PHP- ով, տվյալները պահվում են MySQL տվյալների բազայում: Մոդուլներից յուրաքանչյուրը տվյալների բազայում ունի առանձին աղյուսակ տվյալների համար: Առավել մանրամասն քննարկեք առանձին մոդուլները:

Քայլ 2. Մոդուլ 1 - FLAT

Մոդուլ 1 - FLAT
Մոդուլ 1 - FLAT
Մոդուլ 1 - FLAT
Մոդուլ 1 - FLAT

Ամբողջ մոդուլը 1- FLAT- ը ծառայում է միայն որպես ջերմաստիճանի մոնիտոր առանձին սենյակներում, այն այլ դեր չունի: DHT22 սենսորները օգտագործվել են մեծ հեռավորության վրա `օգտագործելով 10kohm- ի համապատասխան ձգիչ դիմադրություն` լոգասենյակներում խոնավությունը գրանցելու համար: Քանի որ BME280- ը և SHT21- ը շփվում են I2C ավտոբուսով, և դա զգալիորեն սահմանափակ է ավտոբուսի վարորդի երկարությամբ, սենսորները օգտագործվում են Arduino- ի մոտ `սենյակներում:

DS18B20 ջերմաստիճանի տվիչները բաժանված են 4 ավտոբուսի, քանի որ օգտագործվում են երկու արտաքին տվիչներ, ինչը հեշտացնում է դրանք Arduino- ի առանձին վարդակներին միացնելը, իսկ սենսորի անկման դեպքում ավելի հեշտ է փոխարինել, քանի որ չի պարալիզացնում գործառույթը: համակարգի.

Օրինակ, այս OneWire ավտոբուսներից մեկի դեպքում, որի վրա ինդեքսավորվում է 4 տվիչ: Theուցանիշը կապված է ջերմաչափերի ֆիզիկական հասցեի հետ, այնպես որ, եթե սենսորներից մեկը փոխվի, նոր սենսորը կարող է հայտնվել ինդեքսի 0 -ում `սկզբնական, կամ նույնիսկ 2, 3 կամ վերջին: Այսպիսով, կրճատելով ավտոբուսների սենսորների թիվը, մենք կարող ենք խուսափել այնպիսի բարդությունից, որը կարող է առաջանալ սենսորի փոխարինման ժամանակ:

Քայլ 3. Մոդուլ 2 - OԱՌԱՅՈԹՅՈՆ

Մոդուլ 2 - OԱՌԱՅՈԹՅՈՆ
Մոդուլ 2 - OԱՌԱՅՈԹՅՈՆ
Մոդուլ 2 - OԱՌԱՅՈԹՅՈՆ
Մոդուլ 2 - OԱՌԱՅՈԹՅՈՆ
Մոդուլ 2 - OԱՌԱՅՈԹՅՈՆ
Մոդուլ 2 - OԱՌԱՅՈԹՅՈՆ

Բացի մոնիտորի գործառույթից, 2 - BOILER մոդուլը նաև ունի ավելի կարևոր դեր, այն է ՝ մարտկոցների կամ ռելեների վերահսկումը ռադիատորի փականների կառավարման համար: Մոդուլը գործում է անկախ կենցաղային ջեռուցումից: Մոդուլը չի միացնում ջեռուցումը կամ կաթսան: Մոդուլը հոգ է տանում միայն բացման, ռադիատորի փականի փակման մասին, եթե սենյակի ջերմաստիճանը սահմանվածից ցածր / բարձր է `այսպես կոչված: հղումային ջերմաստիճան: Յուրաքանչյուր սենյակ, որտեղ վերահսկվում է ռադիատորի փականը, կարող է հատկացվել 2 -րդ մոդուլից հատուկ ջերմաչափ: Բացի դրանից `ավտոմատ ռեժիմից, կա նաև մեխանիկական ռեժիմ, որտեղ փականը կարող է ձեռքով բացվել / փակվել վեբ ինտերֆեյսից անորոշ ժամանակով` դժվար: Թվային մուտքերը կարող են օգտագործվել `հաստատելու համար, որ էլեկտրամագնիսական / ռելե / փականը բացվել / փակվել է Arduina- ի պահանջով` համեմատելու ունակությունը, արդյոք ելքը հավասար է մուտքին:

Քայլ 4: Ի՞նչ վեբ ինտերֆեյս է առաջարկում:

Ի՞նչ վեբ ինտերֆեյս է առաջարկում
Ի՞նչ վեբ ինտերֆեյս է առաջարկում
Ի՞նչ վեբ ինտերֆեյս է առաջարկում
Ի՞նչ վեբ ինտերֆեյս է առաջարկում

Երկու մոդուլների համար կա նաև առանձին փոփոխականների զարգացման գծային գծապատկերների գրաֆիկական ներկայացում `ջերմաստիճան, խոնավություն 24 ժամվա ընթացքում, 7 օր: Վեբ ինտերֆեյսը նաև առաջարկում է առավելագույն / նվազագույն, միջին արժեքի դիտում 24 ժամում, 7 օր յուրաքանչյուր ջերմաչափի / խոնավաչափի համար: Մոդուլ 1 -ում ի սկզբանե դիտարկվում էր մի զույգ SHT21 տվիչ, բայց քանի որ նրանք հնարավորություն չունեն փոխելու I2C հասցեն, անհրաժեշտ կլինի մի ավտոբուսային հաղորդակցության համար օգտագործել մուլտիպլեքսեր նույն I2C հասցեով երկու սենսորից: Սենսորային տվյալների սխալ լինելու դեպքում սենսորի անունը պահվում է տեղեկամատյանում, որը համակարգի ադմինիստրատորը կարող է բացել ցանկացած պահի ՝ OneWire ավտոբուսը սպասարկելու և, օրինակ, թերի սենսորը փոխարինելու համար:

Watchdog- ն իրականացվել է Arduino ծրագրերում, որոնք սխալ սկզբնավորման, «սառեցման» դեպքում մեկ այլ սխալ ապահով վերագործարկվում է և ծրագրի սկզբում անջատում է բոլոր ելքերը մինչև վեբ ինտերֆեյսի հետ կապի հաստատումը, որտեղ այն լիովին համաժամեցված է արդյունքների պայմանները, որոնք այն հետագայում կիրառում է:

Լրացուցիչ նախագծեր կարող եք գտնել ՝ https://arduino.php5.sk?lang=en Նվիրաբերեք ավելի շատ օրինակների համար ՝

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