Sisukord:
- Samm: materjal ja tööriistad
- Samm: valmistage ette ATTINY85
- Samm: pange vooluring kokku
- 4. samm: testimine
- Samm: järgmised sammud
Video: IOT123 - I2C MQ2 BRICK: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
IOT123 BRICKS on isetehtud moodulüksused, mida saab teiste IOT123 BRICKS -ga kokku segada, et lisada sõlmele või kantavale funktsionaalsust. Nende aluseks on tolli ruudukujulised kahepoolsed protoplaadid, mis on omavahel ühendatud aukudega.
Arvatakse, et paljud neist tellistest asuvad saidil mitmes sõlmes (peamised MCU -d - ESP8266 või ATTINY84). MCU ei vaja eelteadmisi andurite otstarbest ega tarkvara vajadustest. See otsib I2C sõlme ja taotleb seejärel igalt orjalt atribuudi väljavõtet (anduri andmed). Need tellised tarnivad 5,0 V, 3,3 V ja teist AUX -liini, mida saab kohandada.
See I2C MQ2 BRICK tühjendab 3 atribuuti:
LPG (miljondikosa), CO (PPM), SMOKE (PPM)
See andur pakkus huvitavat stsenaariumi: see vajab soojenemiseks vähemalt 2 minutit (kuni 5 minutit), seejärel peab see enne kasutamist 20 sekundit kalibreerima. Kuna hosti MCU on sisestatud ainult nime/väärtuse paaride (ja jätkuvate teadete) hankimisse, oleme kasutusele võtnud atribuudi "PREPARE". Kuna selle jätkuv sõnum on „1” (veel tulemas), jätkab host MCU BRICKi küsitlemist, kuni see on valmis. Samuti on soovitatav MQ2 enne kasutamist sisse põletada, st jätta see 5-tunnise vooluahelaga 24 tunniks ühendatuks.
Keyesi tüüpi anduritellised abstraheeritakse kõigepealt, kuna need sisaldavad vitamiine (vajalikud lisakomponendid) ja on suhteliselt vahvad (ostsin 37 10AUD eest). I2C BRICKS tutvustatakse ka teisi tahvleid/vooluahelaid.
ATTINY85-ga külgnevad augud on jäetud kasutamata, et võimaldada pogo-tihvtidega programmeerimist, kui DIP8 on trükkplaadile joodetud.
Edasine väljatöötamine, BRICKIDE pakkimine väikestesse silindritesse, mis ühendatakse D1M WIFI BLOCK jaoturiga, pumpades väärtused MQTT serverisse.
Samm: materjal ja tööriistad
Materjalide ja allikate nimekiri on täielik.
- MQ2 anduri tellis (1)
- ATTINY85 20PU (1)
- 1 "kahepoolne protoboard (1)
- Isane päis 90º (3P, 3P)
- Isane päis (2P, 2P)
- Jumper Shunt (1)
- Ühendusjuhe (~ 7)
- Jootmine ja triikraud (1)
Samm: valmistage ette ATTINY85
Vajalik on juhatuse liige AttinyCore. Põletage alglaadur "EEPROM Retained", "8mHZ Internal" (kõik konfiguratsioonid on näidatud ülal).
Kasutage kaasasolevat allikat; kompileerida ja programmeerida ATtiny85 -le.
GIST on siin:
gist.github.com/IOT-123/4c501046d365d01a60…
Lisateavet leiate nendest juhenditest:
www.instructables.com/id/Programming-the-A…
www.instructables.com/id/How-to-Program-AT…
www.instructables.com/id/How-to-program-th…
www.instructables.com/id/Programming-the-A…
www.instructables.com/id/Programming-an-At…
Enne jätkamist on parem testida leivalaua kaudu.
Kui teil on olemasolevad ASSIMILATE SENSORid, siis veenduge, et SENSOR/MCU Host kombinatsioonis on alam -aadress erinev, st kõigil temperatuurianduritel võib olla sama aadress, kui teil on MCU/sõlmes ainult üks temperatuuriandur.
Samm: pange vooluring kokku
- Esipaneelil sisestage komponendid ATTINY85 (1), 3P 90 kraadi isased päised (2) (3), 2P isased päised (4) (5) ja jootke tagaküljel ära.
- Tagaküljel jälgige oranži juhet ORANGE1 kuni ORANGE2 ja jootke.
- Tagaküljel jälgige sinist juhet BLUE1 kuni BLUE2 ja jootke.
- Tagaküljel jälgige rohelist traati GREEN1 kuni GREEN2 ja jootke.
- Tagaküljel jälgige paljast traati SILVER1 kuni SILVER2 ja jootet.
- Tagaküljel jälgige paljast traati SILVER3 -st SILVER4 -ni ja jootet.
- Tagaküljel jälgige musta juhet BLACK1 kuni BLACK2 ja jootet.
- Tagaküljel jälgige musta juhet BLACK3 kuni BLACK4 ja jootet.
- Tagaküljel jälgige punast traati RED1 kuni RED2 ja jootke.
- Tagaküljel jälgige punast traati RED3 -lt RED4 -le ja jootke.
- Tagaküljel jälgige kollast traati YELLOW1 kuni YELLOW2 ja jootke.
Anduri saab nüüd ühendada otse oma tihvtide kaudu trükkplaadiga või juhtmete kaudu tihvtide lepingus näidatud kohtadesse.
4. samm: testimine
Arvatakse, et paljud neist tellistest asuvad keskkonnas mitmes sõlmes (MCU -d - ESP8266 või ATTINY84). See on üksuse test: kontrollib UNO taotlusi/vastuseid, kuni kõik andmed on kaadrisse kantud, seejärel jätab I2C orja tähelepanuta.
- Laadige UNO kood üles oma UNO testrakmetesse. Veenduge, et ADDRESS_SLAVE vastab BRICKi I2C aadressile.
- Ühendage UNO 5,0 V BRICKi VCC -ga.
- Veenduge, et selle tihvti hüppaja on sisse lülitatud.
- Ühendage UNO GND ja BRICK GND.
- Ühendage A5 UNO -l BRICK -i SCL -iga.
- Ühendage A4 UNO -l ja BRICK SDA.
- Ühendage tõmbetakistus 4K7 SDA-st VCC-ga.
- Ühendage tõmbetakistus 4K7 SCL-st VCC-ga.
- Ühendage UNO oma USB -seadmega arvutiga.
- Avage Arduino konsool. Valige 9600 baud (taaskäivitage UNO ja vajadusel avage konsool uuesti).
- Atribuutide nimed ja väärtused tuleks trükkida konsoolile üks kord, seejärel korratakse sõna uni.
Kui näete seadistust, siis korratakse 3 prügirida, võib SDA- ja SCL -jooned olla ees.
I2C Master logimine I2C orjast koos plotteri/metaandmete toega
#kaasake |
#defineADDRESS_SLAVE10 |
bool _outputPlotterOnly = vale; |
bool _confirmMetadata = vale; |
int _packetSegment = 0; |
bool _i2cNodeProcessed = vale; |
char _property [2] [24] = {"nimi", "väärtus"}; |
voidsetup () { |
Wire.begin (); // liitu i2c bussiga (aadress on valikuline kaptenile) |
Seriaalne algus (9600); // käivitage väljundi jada |
viivitus (1000); |
if (! _outputPlotterOnly) { |
Serial.println ("seadistamine"); |
Serial.println (); |
} |
} |
voidloop () { |
if (_i2cNodeProcessed) { |
if (! _confirmMetadata) {// andke orjale teada, et hakata anduri andmeid saatma |
viivitus (1); |
Wire.beginTransmission (ADDRESS_SLAVE); |
Wire.write (1); |
Wire.endTransmission (); |
viivitus (100); |
_confirmMetadata = tõsi; |
} |
_i2cNodeProcessed = vale; |
if (! _outputPlotterOnly) { |
Serial.println (); |
} |
tagasipöördumine; |
} |
Wire.requestFrom (ADDRESS_SLAVE, 16); |
_packetSegment ++; |
söepakett [16]; |
intindex = 0; |
bool onContinueSegment = false; // jatkuSegment (3.) 1 = rohkem, 0 = viimane |
samas (Wire.available ()) {// ori võib saata vähem kui soovitud |
char c = Wire.read (); |
pakett [indeks] = int (c)> -1? c: ''; // asendage kehtetud märgid tühikutega |
kui (_packetSegment == 3) { |
_packetSegment = 0; |
isContinueSegment = true; |
//Seriaalne.println ("------------- "); |
//Serial.println(int(c)); |
//Seriaalne.println ("------------- "); |
kui (int (c) == 48 || int (c) == 86) {// 0 viimasel omadusel |
_i2cNodeProcessed = tõsi; |
// väärtuste saatmine MQTT -le |
murda; |
} |
} |
indeks ++; |
} |
if (! isContinueSegment) { |
if (! _outputPlotterOnly) { |
Serial.println (pakett); |
} |
strcpy (_property [_packetSegment - 1], pakett); // määrake kohalik muutuja nime/väärtusega |
} muud { |
if (_outputPlotterOnly && _confirmMetadata) { |
if (_i2cNodeProcessed) { |
Serial.println (_omadus [1]); |
} muud { |
Serial.print (_omadus [1]); |
Serial.print (""); |
} |
} |
} |
} |
vaata rawuno_i2c_generic_sensor_test_w_plotter_v2.ino, mille hostiks on GitHub ❤
Samm: järgmised sammud
Vooluahela ja tarkvara I2C kihi põhipaigutus on seotud paljude erinevate anduritega. Peamine asi, millest alustada, on paketileping kapteni ja alluva vahel.
Olen kavandanud/käivitanud (3D -trükitud) pakitud andurite võrgu, mis kasutavad seda raamistikku ja viivad selle osade avaldamisel linki.
Seda plokki kasutab MQ2 ASSIMILATE SENSOR.
Soovitan:
Makey Makey jaoks klõpsake Brick Switch: 4 sammu (piltidega)
Makey Makey jaoks klõpsake Brick Switch: See 3D -prinditud lüliti võimaldab kasutajal muuta Makey Makey " sõrmeslaidiks " " klõps " mängudes või esitluste sirvimiseks paremale/vasakule nooled. Parema ja vasaku klemmikinnituse lisamine
IOT123 - D1M BLOCK - 2xAMUX kokkupanek: 7 sammu (piltidega)
IOT123 - D1M BLOCK - 2xAMUX kokkupanek: D1M BLOCKS lisab populaarsetele Wemos D1 Mini SOC/kilpidele/kloonidele puutetundlikke ümbriseid, silte, polaarsusjuhiseid ja läbimurdeid. Üks ESP8266 kiibi probleemidest on see, et sellel on saadaval ainult üks analoog -IO -pin. See juhend näitab, kuidas 2xA kokku panna
IOT123 - ASISIMILEERITUD ANDUR: MQ2: 4 sammu
IOT123 - ASSIMILAATSENSOR: MQ2: ASSIMILATE SENSORS on keskkonnaandurid, millele on lisatud riist- ja tarkvara abstraktsioonikiht, mis võimaldab ASSIMILATE SENSOR HUB -ile lisada täiesti uusi tüüpe ja näidud pumbata MQTT -serverisse ilma lisakoodita
IOT123 - 3.3V POWER BRICK: 4 sammu
IOT123 - 3.3V POWER BRICK: IOT123 BRICKS on isetehtud modulaarsed seadmed, mida saab teiste IOT123 BRICKS -ga kokku segada, et lisada sõlmele või kantavale funktsionaalsust. Need põhinevad tolli ruudul, kahepoolsed protoboards, mis on omavahel ühendatud aukudega. Kuigi juhend
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: 4 sammu
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: UPDATE: See seadistus on suures osas akadeemiline või tarkvara/toiteallika testimise alus. Isegi kui PB5 on nullimisel keelatud, ei loe see väärtusi täpselt, kasutades analogRead: andurite näitude peamine kasutusviis. Uurib ATTINY84 seadistust