Satura rādītājs:

Temperatūras, mitruma monitors - Arduino Mega + Ethernet W5100: 5 soļi
Temperatūras, mitruma monitors - Arduino Mega + Ethernet W5100: 5 soļi

Video: Temperatūras, mitruma monitors - Arduino Mega + Ethernet W5100: 5 soļi

Video: Temperatūras, mitruma monitors - Arduino Mega + Ethernet W5100: 5 soļi
Video: Multiple Max6675 Arduino, Industrial Temperature Monitor using K type thermocouple & Oled display 2024, Novembris
Anonim
Temperatūras, mitruma monitors - Arduino Mega + Ethernet W5100
Temperatūras, mitruma monitors - Arduino Mega + Ethernet W5100

1. modulis - FLAT - aparatūra:

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet vairogs
  • 8x DS18B20 temperatūras sensors OneWire kopnē - sadalīts 4 OneWire kopnēs (2, 4, 1, 1)
  • 2x digitālais temperatūras un mitruma sensors DHT22 (AM2302)
  • 1x temperatūras un mitruma sensors SENSIRION SHT21 (Si7021)
  • 1x BOSCH BME280 temperatūras un mitruma (un gaisa spiediena) sensors
  • Nosūta datus no visiem sensoriem uzreiz vairāku minūšu laikā (var mainīt)

2. modulis - BOILER - aparatūra:

  • Arduino Mega 2560
  • Wiznet W5100 Ethernet vairogs
  • 16x DS18B20 temperatūras sensors OneWire kopnē - sadalīts 7 OneWire kopnēs (2, 2, 2, 2, 2, 2, 4)
  • 8x digitālā ieeja
  • 8x digitālā izeja - solenoīdam / relejam
  • Nosūta datus no visiem sensoriem uzreiz vairāku minūšu laikā (var mainīt)
  • Tas nolasa atsevišķu izeju stāvokļus no tīmekļa saskarnes, piemēro tos Nosūta digitālās ievades stāvokļus

1. darbība. Ievads

Ievads
Ievads
Ievads
Ievads
Ievads
Ievads

Šodien es detalizēti iepazīstināšu ar pēdējo realizēto projektu, kas ir diezgan sarežģīts funkcionalitātes, izmantoto sensoru skaita, Arduino dēļu, izmantoto datu kopņu ziņā. Projekts sastāv no diviem moduļiem. Fiziski katrs modulis sastāv no atsevišķa Arduino Mega 2560, Ethernet vairoga W5100 (saderīgs ar R3) un tā izmantotajiem sensoriem.

Katrs modulis sazinās ar tīmekļa saskarni internetā, izmantojot HTTP POST pieprasījumus, ar kuriem tīmekļa serveris pārdod datus vai pieprasa dažus datus, piemēram, izmantojot POST pieprasījumu (tikai 2. modulis). Tīmekļa saskarne ir pabeigta ar pieteikšanās sistēmu, savukārt visa ģimene var reģistrēties sistēmā, katrs ar savu vārdu un paroli. Tāpēc tā ir daudzlietotāju lietojumprogramma, kurā katram ģimenes loceklim ir pārskats par abiem moduļiem un viņš var veikt dažādas darbības - noteikt atsauces temperatūru, kontrolēt termometru utt. Tīmekļa saskarne ir ieprogrammēta PHP, dati tiek glabāti MySQL datu bāzē. Katram no moduļiem datu bāzē ir atsevišķa tabula datiem. Apsveriet atsevišķus moduļus sīkāk.

2. solis: 1. modulis - FLAT

1. modulis - FLAT
1. modulis - FLAT
1. modulis - FLAT
1. modulis - FLAT

Viss 1-FLAT modulis kalpo tikai kā temperatūras monitors atsevišķās telpās, tam nav citas funkcijas. DHT22 sensori tika izmantoti lielos attālumos, izmantojot piemērotu 10kohm pullup rezistoru, lai reģistrētu mitrumu vannas istabās. Tā kā BME280 un SHT21 sazinās, izmantojot I2C autobusu, un tas ir ievērojami ierobežots autobusa vadītāja garuma ziņā, sensori tiek izmantoti netālu no Arduino telpās.

DS18B20 temperatūras sensori ir sadalīti 4 kopnēs, jo tiek izmantoti divi ārējie sensori, kas atvieglo to pievienošanu atsevišķām Arduino kontaktligzdām, un, ja sensors nokrīt, to ir vieglāk nomainīt, jo tas neparalizē funkcionalitāti no sistēmas.

Piemēram, attiecībā uz vienu no šīm OneWire kopnēm, kurā ir indeksēti 4 sensori. Indekss ir saistīts ar termometru fizisko adresi, tādēļ, ja tiek mainīts viens no sensoriem, jaunais sensors var parādīties indeksā 0 - sākotnējais vai pat 2, 3 vai pēdējais. Tādējādi, samazinot sensoru skaitu autobusos, mēs varam izvairīties no šādas komplikācijas, kas var rasties, nomainot sensoru.

3. solis: 2. modulis - BOILER

2. modulis - BOILER
2. modulis - BOILER
2. modulis - BOILER
2. modulis - BOILER
2. modulis - BOILER
2. modulis - BOILER

Papildus monitora funkcijai 2. modulim - BOILER ir arī svarīgāka loma, proti, solenoīdu vai releju vadība radiatoru vārstu vadībai. Modulis darbojas neatkarīgi no mājas apkures. Modulis nepārslēdz apkuri vai katlu. Modulis rūpējas tikai par radiatora vārsta atvēršanu, aizvēršanu, ja telpas temperatūra ir zemāka / augstāka par iestatīto - t.s. atsauces temperatūra. Katrai telpai, kurā tiek kontrolēts radiatora vārsts, var piešķirt īpašu termometru no 2. moduļa. Papildus tam - automātiskais režīms, ir arī manuālais režīms, kurā vārstu var atvērt / aizvērt manuāli no tīmekļa saskarnes uz nenoteiktu laiku - grūti. Digitālās ieejas var izmantot, lai pārbaudītu, vai elektromagnēts / relejs / vārsts ir atvērts / aizvērts pēc pieprasījuma ar Arduina - iespēja salīdzināt, vai izeja ir vienāda ar ieeju.

4. darbība: ko piedāvā tīmekļa saskarne?

Kādas tīmekļa saskarnes iespējas?
Kādas tīmekļa saskarnes iespējas?
Kādas tīmekļa saskarnes iespējas?
Kādas tīmekļa saskarnes iespējas?

Abiem moduļiem ir arī līniju diagrammas grafisks attēlojums atsevišķu mainīgo - temperatūras, mitruma 24 stundās, 7 dienās - izstrādei. Tīmekļa saskarne piedāvā arī maksimālo / minimālo, vidējo vērtību 24 stundu laikā, 7 dienas katram termometram / higrometram. Pirmajā modulī sākotnēji tika ņemts vērā SHT21 sensoru pāris, taču, tā kā tiem nav iespējas mainīt I2C adresi, vienas kopnes sakariem būtu jāizmanto multipleksors no diviem sensoriem ar vienu un to pašu I2C adresi. Ja sensoru dati ir kļūdaini, sensora nosaukums tiek saglabāts žurnālā, ko sistēmas administrators var atvērt jebkurā laikā, lai, piemēram, apkalpotu OneWire kopni un nomainītu bojāto sensoru.

Watchdog ir ieviests Arduino programmās, kuras kļūdainas inicializācijas, "iesaldēšanas" gadījumā cita kļūda droši restartējas un programmas sākumā izslēdz visas izejas, līdz tiek izveidots savienojums ar tīmekļa saskarni, kur tas ir pilnībā sinhronizēts iznākuma nosacījumus, kurus tā vēlāk piemēro.

Vairāk projektu varat atrast vietnē: https://arduino.php5.sk?lang=en Ziedojiet, lai iegūtu vairāk piemēru:

Ieteicams: