Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-23 14:44
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 KY019 BRICK on ensimmäinen TOIMIJOISTA, ja sillä on yksi luku/kirjoitus -ominaisuus:
Vaihda (tosi/epätosi)
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: Materiaalit ja työkalut
Aineiston ja hankintojen luettelo on täynnä.
- KY-019 Rele (1)
- ATTINY85 20PU (1)
- 1 "kaksipuolinen protoboard (1)
- Uros Otsikko 90º (3P, 3P)
- Liitäntäjohto (~ 7)
- Juotos ja rauta (1)
Vaihe 2: Valmista ATTINY85
HUOMAUTUS: Jos aiot käyttää Crouton -integraatiota, käytä tästä saatavaa kirjastoa ja käytä asennettua esimerkkiä "attiny_ky019".
Hallituksen johtajan AttinyCore tarvitaan. Polta käynnistyslatain "EEPROM Retained", "8mHZ Internal" (kaikki kokoonpanot on esitetty yllä).
Koodivarasto löytyy täältä.
ZIP -kirjasto löytyy täältä.
Ohjeet ZIP -kirjaston tuomiseen täältä.
Kun kirjasto on asennettu, voit avata esimerkin "attiny_ky019".
Jos haluat ladata laiteohjelmiston ATTINY85 -laitteeseen, 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ä orjaosoite on eri SENSOR/MCU -isäntäyhdistelmässä eli kaikilla välittäjillä voi olla sama osoite, kunhan sinulla on vain yksi välittäjä MCU: ssa/solmussa.
Vaihe 3: Kokoa piiri
- Aseta etuosaan osat ATTINY85 (1), 3P 90deg urospäät (2) (3) ja juota pois takaa.
- Jäljitä takana oleva keltainen lanka KELTAISESTA 1 KELTAISEKSI2 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ä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.
Rele voidaan nyt liittää suoraan nastojensa kautta piirilevyyn tai johtojen kautta tappisopimuksessa 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: lähettää I2C -komentoja UNO: sta ATTINYlle, joka avaa tai sulkee releen.
Olemme aiemmin rakentaneet I2C SHIELD: n Arduinolle.
Jos haluat leikata sen sen sijaan:
- Kytke UNO: n 5,0 V BRICKin VCC: hen.
- 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.
Testin suorittaminen
- Yhdistä UNO -laite Dev -tietokoneeseen USB: n avulla.
- Lähetä koodi UNO: hon.
- Avaa Arduino -konsoli. Valitse 9600 baudia (käynnistä UNO uudelleen ja avaa konsoli tarvittaessa uudelleen).
- Orjan osoite tulostetaan konsolille.
- Kun kirjoitat lähetysruutuun 2 1 (eli 12 2 1), rele kytkeytyy päälle.
- Kun kirjoitat lähetysruutuun 2 0 (eli 12 2 0), rele sammuu.
I2C BRICK adhoc -komennot orjille UNO -isännältä
| #sisältää |
| const tavu _num_chars = 32; |
| char _saapuneet_merkit [_numero_sarjat]; // matriisi vastaanotetun datan tallentamiseksi |
| boolean _has_new_data = epätosi; |
| voidsetup () { |
| Sarja.alku (9600); |
| Sarja.println (); |
| Serial.println ("ASSIMILATE IOT ACTOR/SENSOR EEPROM EDITOR"); |
| Serial.println ("varmista, että uusi rivi on valittu konsoli -ikkunasta"); |
| Sarja.println (); |
| Serial.println ("OSOITE 1 VAHVISTA METATIETOSUOJA N/A (M2M: lle)"); |
| Serial.println ("OSOITE 2 ACTOR COMMAND"); |
| Sarja.println (); |
| Serial.println ("OSOITTEET BUSSISSA:"); |
| scan_i2c_addresses (); |
| Sarja.println (); |
| Serial.println (""); |
| } |
| voidscan_i2c_addresses () { |
| int laitteen_luku = 0; |
| (tavuosoite = 8; osoite <127; osoite ++) |
| { |
| Wire.beginTransmission (osoite); |
| const tavuvirhe = Wire.endTransmission (); |
| jos (virhe == 0) |
| { |
| Serial.println (osoite); |
| } |
| } |
| } |
| voidloop () { |
| recv_with_end_marker (); |
| send_to_i2c (); |
| } |
| voidrecv_with_end_marker () { |
| staattinen tavu ndx = 0; |
| char end_marker = '\ n'; |
| char rc; |
| while (Serial.available ()> 0 && _has_new_data == false) { |
| rc = Serial.read (); |
| jos (rc! = end_marker) { |
| _vastaanotetut_merkit [ndx] = rc; |
| ndx ++; |
| jos (ndx> = _numerot) { |
| ndx = _luku_merkkiä - 1; |
| } |
| } |
| muu { |
| _received_chars [ndx] = '\ 0'; // lopettaa merkkijono |
| ndx = 0; |
| _has_new_data = tosi; |
| } |
| } |
| } |
| voidsend_to_i2c () { |
| char param_buf [16]; |
| const Jono vastaanotettu_merkkijono = Merkkijono (_vastaanotetut_merkit); |
| jos (_ has_new_data == true) { |
| int idx1 = vastaanotettu_merkkijono.indexOf (''); |
| Merkkijonon osoite = vastaanotettu_merkkijono.substring (0, idx1); |
| int address_int = address.toInt (); |
| jos (address_int <8 || address_int> 127) { |
| Serial.println ("VÄÄRÄ OSOITTEEN TULO:"); |
| Serial.println (osoite); |
| palata; |
| } |
| int idx2 = vastaanotettu_merkkijono.indexOf ('', idx1+1); |
| Merkkijonokoodi; |
| jos (idx2 == -1) { |
| koodi = vastaanotettu_merkkijono.substring (idx1+1); |
| }muu{ |
| koodi = vastaanotettu_merkkijono.substring (idx1+1, idx2+1); |
| } |
| int code_int = code.toInt (); |
| jos (code_int <0 || code_int> 5) { |
| Serial.println ("INVALID CODE INPUT:"); |
| Serial.println (koodi); |
| palata; |
| } |
| bool has_parameter = idx2> -1; |
| Jono -parametri; |
| if (has_parameter) { |
| parametri = vastaanotettu_merkkijono.substring (idx2 + 1, idx2 + 17); // enintään 16 merkkiä |
| jos (parametri.pituus () <1) { |
| Serial.println ("PARTAMETER MIN. LENGTH 1"); |
| _has_new_data = epätosi; |
| palata; |
| } |
| }muu{ |
| jos (code_int> 1) { |
| Serial.println ("PARAMETRI VAATII!"); |
| _has_new_data = epätosi; |
| palata; |
| } |
| } |
| Sarja.println (); |
| Serial.print ("input orig ="); |
| Sarja.println (vastaanotettu_merkkijono); |
| Serial.print ("address ="); |
| Serial.println (osoite); |
| Serial.print ("code ="); |
| Serial.println (koodi); |
| Serial.print ("parametri ="); |
| Serial.println (parametri); |
| // LÄHETÄ I2C |
| Wire.beginTransmission (osoite_int); |
| Wire.write (code_int); |
| if (has_parameter) { |
| parametri.trim (); |
| strcpy (param_buf, parametri.c_str ()); |
| Wire.write (param_buf); |
| } |
| Wire.endTransmission (); |
| Sarja.println (); |
| Serial.println ("LÄHETETTY I2C!"); |
| Sarja.println (); |
| Serial.println (""); |
| _has_new_data = epätosi; |
| } |
| } |
katso rawuno_i2c_command_input.ino, jota isännöi GitHub ❤ kanssa
Vaihe 5: Seuraavat vaiheet
Seuraavassa ASSIMILATE ACTOR: KY019: ssä, joka käyttää tätä tiiliä, on Croutonin automaattinen määritys metatietojen kautta, jotka on jo asennettu ATTINY85: een. Croutonille lähetetty JSON -paketti lähetetään ICOS10: n uusimman laiteohjelmiston kautta. Voit tehdä Proof-of-concept -konseptin tavallisella ESP8266-laitteella, jos rakenne on toistaiseksi liikaa.
Testauksessa käytetyssä UNO -luonnoksessa on toiminto, joka tallentaa uuden orjaosoitteen EEPROM -laitteeseen ATTINY85 -laitteessa, jos kohde -I2C -väylässäsi on ristiriita.
Muutamia kaavioita on lisätty, mutta on olemassa erilaisia tapoja kytkeä alavirtapiiri riippuen siitä, mitä haluat saavuttaa, joten jätän sen sinulle:)
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 - ASSIMILAATTINÄITÄJÄ: KY019: 4 vaihetta
IOT123 - ASSIMILAATTINEN TOIMITTAJA: KY019: Siinä on 5 V: n TIL -ohjaussignaali, joka voi ohjata DC / AC -signaalia.Tämä rakenne perustuu I2C KY019 BRICK -rakenteeseen. Jos tarvitset 2 kanavaa, suosittelen vaihtamaan tämän näyttelijän 2CH RELAY BRICK. ASIMILAATTORIT/ANTURIT ovat ympäristön toimijoita/senso
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
