Sisällysluettelo:
- Vaihe 1: Materiaali ja työkalut
- Vaihe 2: Valmista ATTINY85
- Vaihe 3: Kokoa piiri
- Vaihe 4: Testaus
- Vaihe 5: Seuraavat vaiheet
Video: IOT123 - I2C MQ2 BRICK: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
IOT123 BRICKS ovat DIY -modulaarisia yksiköitä, jotka voidaan murskata muiden IOT123 -tiilien kanssa lisätäkseen toiminnallisuutta solmuun tai puettavaan. Ne perustuvat tuuman neliön muotoisiin kaksipuolisiin protoboardeihin, joissa on toisiinsa yhdistetyt reiät.
Useiden näiden TILIKOIDEN odotetaan olevan sivuston useissa solmuissa (pää MCU: t - ESP8266 tai ATTINY84). MCU ei tarvitse ennakkotietoa antureiden tarkoituksesta tai ohjelmistotarpeista. Se etsii I2C -solmuja ja pyytää sitten ominaisuustodistusta (anturitiedot) jokaiselta orjalta. Nämä BRICK -virtalähteet tarjoavat 5,0 V: n, 3,3 V: n ja toisen AUX -linjan, joka on muokattavissa.
Tämä I2C MQ2 BRICK tyhjentää 3 ominaisuutta:
Nestekaasu (miljoonasosaa), CO (PPM), SAVU (PPM)
Tämä anturi tarjosi mielenkiintoisen skenaarion: Se tarvitsee vähintään 2 minuuttia (enintään 5 minuuttia) lämmetäkseen, sitten sen on kalibroitava 20 sekuntia ennen käyttöä. Koska isäntä MCU on vain asettamassa nime/arvo -pareja (ja jatkosanomaa), olemme ottaneet käyttöön "PREPARE" -ominaisuuden. Koska sen jatkosanoma on "1" (lisää tulossa), isäntä MCU jatkaa polttamista BRICK, kunnes se on valmis. On myös suositeltavaa "polttaa" MQ2 ennen käyttöä, eli jättää liitettynä 5 V: n piiriin 24 tunniksi.
Keyes -tyyppiset anturikivet otetaan ensin, koska ne sisältävät vitamiineja (lisäkomponentteja tarvitaan) ja ovat suhteellisen kevyitä (ostin 37 hintaan 10AUD). Muut levyt/piirit esitetään I2C BRICKSissä.
ATTINY85: n vieressä olevat läpireiät on jätetty käyttämättä, jotta pogo-nastainen ohjelmoija voidaan ottaa käyttöön, kun DIP8 on juotettu piirilevyyn.
Jatkuvasti kerrotaan myös BRICKSien pakkaamista pieniin sylintereihin, jotka kytketään D1M WIFI BLOCK -keskittimeen ja pumpataan arvot MQTT -palvelimelle.
Vaihe 1: Materiaali ja työkalut
Aineiston ja hankintojen luettelo on täynnä.
- MQ2 -anturitiili (1)
- ATTINY85 20PU (1)
- 1 "kaksipuolinen protoboard (1)
- Uros Otsikko 90º (3P, 3P)
- Urosotsikko (2P, 2P)
- Jumper Shunt (1)
- Liitäntäjohto (~ 7)
- Juotos ja rauta (1)
Vaihe 2: Valmista ATTINY85
Hallituksen johtajan AttinyCore tarvitaan. Polta käynnistyslatain "EEPROM Retained", "8mHZ Internal" (kaikki kokoonpanot on esitetty yllä).
Käytä mukana toimitettua lähdettä; kääntää ja ohjelmoida ATtiny85: een.
GIST on täällä:
gist.github.com/IOT-123/4c501046d365d01a60…
Saat lisätietoja näistä ohjeista:
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…
Paras testata leipälevyn kautta ennen kuin jatkat.
Jos sinulla on olemassa ASISIMILAATTI -ANTURIT, varmista, että SENSOR/MCU -isäntäyhdistelmän orjaosoite on erilainen, eli kaikilla lämpötila -antureilla voi olla sama osoite, kunhan sinulla on vain yksi lämpötila -anturi MCU: ssa/solmussa.
Vaihe 3: Kokoa piiri
- Aseta etuosaan osat ATTINY85 (1), 3P 90deg urospäät (2) (3), 2P urospäät (4) (5) ja juota pois takaa.
- Jäljitä takana oleva oranssi lanka ORANGE1: stä ORANGE2: een ja juota.
- Jäljitä takana oleva sininen johto BLUE1 - BLUE2 ja juotos.
- Jäljitä takana oleva vihreä johto GREEN1: stä GREEN2: een ja juota.
- Jäljellä on jäljellä paljas lanka HOPEA1 - HOPEA2 ja juote.
- Jäljellä on jäljellä paljaat johdot SILVER3: sta SILVER4: ään ja juotos.
- Jäljitä takana musta johto BLACK1: stä BLACK2: een ja juotos.
- Jäljitä takana musta johto BLACK3: sta BLACK4: ään ja juotos.
- Jäljitä takana oleva punainen johto RED1 - RED2 ja juotos.
- Jäljitä takana oleva punainen johto RED3 - RED4 ja juotos.
- Jäljitä takana oleva keltainen lanka KELTAISESTA 1 KELTAISEKSI2 ja juota.
Anturi voidaan nyt liittää suoraan nastojensa kautta piirilevyyn tai johtojen kautta nastasopimuksessa esitettyihin kohtiin.
Vaihe 4: Testaus
Useiden näiden TILIKOIDEN odotetaan olevan useissa solmuissa (MCU: t - ESP8266 tai ATTINY84) ympäristössä. Tämä on yksikkötesti: tarkistaa UNO -pyynnöt/vastaukset, kunnes kaikki tiedot on poistettu, ja jättää sitten huomiotta I2C -orjan.
- Lataa UNO -koodi UNO -testisarjoihisi. Varmista, että ADDRESS_SLAVE vastaa BRICKin I2C -osoitetta.
- Kytke UNO: n 5,0 V BRICKin VCC: hen.
- Varmista, että kyseisen tapin hyppyjohdin on päällä.
- Yhdistä GND UNO: lla GND on BRICK.
- Liitä A5 UNO: ssa SCL on BRICK.
- Liitä UNO: n A4 -levy BRICKin SDA -liittimeen.
- Liitä 4K7-vetovastus SDA: sta VCC: hen.
- Liitä 4K7-vetovastus SCL: stä VCC: hen.
- Yhdistä UNO -laite Dev -tietokoneeseen USB: n avulla.
- Avaa Arduino -konsoli. Valitse 9600 baudia (käynnistä UNO uudelleen ja avaa konsoli tarvittaessa uudelleen).
- Ominaisuuksien nimet ja arvot tulee tulostaa konsoliin kerran, kun sana uni toistetaan.
Jos näet "asetukset", 3 roskariviä toistetaan, saatat saada SDA- ja SCL -linjat takaisin eteen.
I2C Master kirjaus I2C slave -laitteesta plotteri-/metatietotuella
#sisältää |
#defineADDRESS_SLAVE10 |
bool _outputPlotterOnly = epätosi; |
bool _conffiedMetadata = epätosi; |
int _packetSegment = 0; |
bool _i2cNodeProcessed = epätosi; |
char _property [2] [24] = {"nimi", "arvo"}; |
voidsetup () { |
Wire.begin (); // liittyä i2c -väylään (osoite valinnainen isännälle) |
Sarja.alku (9600); // aloita sarja tulostusta varten |
viive (1000); |
jos (! _outputPlotterOnly) { |
Serial.println ("setup"); |
Sarja.println (); |
} |
} |
voidloop () { |
if (_i2cNodeProcessed) { |
if (! _conffiedMetadata) {// ilmoita orjalle, että se voi aloittaa anturitietojen lähettämisen |
viive (1); |
Wire.beginTransmission (ADDRESS_SLAVE); |
Wire.write (1); |
Wire.endTransmission (); |
viive (100); |
_conffiedMetadata = true; |
} |
_i2cNodeProcessed = epätosi; |
jos (! _outputPlotterOnly) { |
Sarja.println (); |
} |
palata; |
} |
Wire.requestFrom (ADDRESS_SLAVE, 16); |
_packetSegment ++; |
hiilipaketti [16]; |
intindex = 0; |
bool isContinueSegment = false; // jatkaSegmentti (kolmas) 1 = enemmän, 0 = viimeinen |
kun taas (Wire.available ()) {// orja voi lähettää vähemmän kuin pyydetty |
char c = Wire.read (); |
paketti [hakemisto] = int (c)> -1? c: ''; // korvaa virheelliset merkit välilyönneillä |
jos (_packetSegment == 3) { |
_packetSegment = 0; |
isContinueSegment = true; |
//Sarja.println ("------------- "); |
//Sarja.println(int(c)); |
//Sarja.println ("------------- "); |
jos (int (c) == 48 || int (c) == 86) {// 0 viimeisessä ominaisuudessa |
_i2cNodeProcessed = true; |
// lähetä arvot MQTT: lle |
tauko; |
} |
} |
indeksi ++; |
} |
if (! isContinueSegment) { |
jos (! _outputPlotterOnly) { |
Serial.println (paketti); |
} |
strcpy (_property [_packetSegment - 1], paketti); // aseta paikallinen muuttuja nimellä/arvolla |
}muu{ |
if (_outputPlotterOnly && _conffiedMetadata) { |
if (_i2cNodeProcessed) { |
Serial.println (_ominaisuus [1]); |
}muu{ |
Serial.print (_ominaisuus [1]); |
Serial.print (""); |
} |
} |
} |
} |
katso rawuno_i2c_generic_sensor_test_w_plotter_v2.ino, jonka isännöi GitHub ❤
Vaihe 5: Seuraavat vaiheet
Piirin perusasettelu ja ohjelmiston I2C-kerros liittyvät moniin eri antureihin. Tärkeintä päästä alkuun on isäntä ja orja välinen pakettisopimus.
Olen suunnitellut/aloittanut (3D -tulostettu) pakatun anturiverkoston, joka käyttää tätä kehystä ja joka linkittää siihen osien julkaisemisen yhteydessä.
Tätä lohkoa käyttää MQ2 ASSIMILATE SENSOR.
Suositeltava:
Valitse Brick Switch for Makey Makey: 4 Steps (kuvilla)
Napsauta Makey Makeyn tiilikytkintä: Tämän 3D -painetun kytkimen avulla käyttäjä voi muuttaa Makey Makeyn "sormiliukumiseksi". " klikkaa " pelaamisessa tai selata esityksiä oikealla/vasemmalla nuolella. Oikean ja vasemman liitännän lisäys
Arduino Brick Color Sorter Project: 5 vaihetta
Arduino Brick Color Sorter Project: Tässä Arduino -opetusohjelmassa opimme tunnistamaan lelutiilini värit Arduinon ja TCS3200 -värianturin avulla. Voit lukea alla olevasta kirjallisesta opetusohjelmasta lisätietoja.Materiaalit: Arduino Leonardo x 1TCS3200 x 1 Paljon pahvia180 Servo
IOT123 - ASIMIMILAATTORI: MQ2: 4 vaihetta
IOT123 - ASISIMILAATTINEN ANTURI: MQ2: ASSIMILAATTI -ANTURIT ovat ympäristöantureita, joihin on lisätty laitteiston ja ohjelmiston abstraktiokerros, mikä mahdollistaa täysin uusien tyyppien lisäämisen ASSIMILATE SENSOR HUB -laitteeseen ja lukemien pumppaamisen MQTT -palvelimelle ilman lisäkoodia
IOT123 - 3.3V POWER BRICK: 4 vaihetta
IOT123 - 3.3V POWER BRICK: IOT123 BRICKS ovat DIY -modulaarisia yksiköitä, jotka voidaan murskata muiden IOT123 -tiilien kanssa lisätäkseen toiminnallisuutta solmuun tai käytettäväksi. Ne perustuvat tuuman neliöön, kaksipuolisiin protobooleihin, jotka on liitetty toisiinsa reikien läpi. Vaikka ohjeet ovat
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: 4 vaihetta
IOT123 - 5PIN ATTINY85 NRF24L01 TIIVISTE: PÄIVITYS: Tämä asetus on pitkälti akateeminen tai ohjelmiston/virtalähteen testauksen perusta. Vaikka PB5 on poistettu käytöstä RESET -tilassa, se ei lue arvoja tarkasti käyttämällä analogReadia: anturin lukemien pääasiallinen käyttötapa. Tutkitaan ATTINY84 -asetuksia