Sisukord:
- Samm: materjalid ja tööriistad
- Samm: valmistage ette ATTINY85
- Samm: pange vooluring kokku
- 4. samm: testimine
- Samm: järgmised sammud
Video: IOT123 - I2C KY019 BRICK: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
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 KY019 BRICK on esimene NÄITLEJATEST ja sellel on üks lugemis-/kirjutamisomadus:
Lüliti (tõene/vale)
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: materjalid ja tööriistad
Materjalide ja allikate nimekiri on täielik.
- KY-019 relee (1)
- ATTINY85 20PU (1)
- 1 "kahepoolne protoboard (1)
- Isane päis 90º (3P, 3P)
- Ühendusjuhe (~ 7)
- Jootmine ja triikraud (1)
Samm: valmistage ette ATTINY85
MÄRKUS. Kui kavatsete Croutoni integreerida, kasutage siit raamatukogu ja kasutage näidet "attiny_ky019".
Vajalik on juhatuse liige AttinyCore. Põletage alglaadur "EEPROM Retained", "8mHZ Internal" (kõik konfiguratsioonid on näidatud ülal).
Koodide hoidla leiate siit.
Raamatukogu ZIP -i leiate siit.
Siit leiate juhised "ZIP -kogu importimiseks".
Kui kogu on installitud, saate avada näite "attiny_ky019".
Püsivara ATTINY85 -sse üleslaadimiseks leiate lisateavet järgmistest 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 hostikombinatsiooni alam -aadress on erinev, st kõigil Relay -näitlejatel võib olla sama aadress, kui teil on MCU/sõlmes ainult üks Relay -näitleja.
Samm: pange vooluring kokku
- Esipaneelil sisestage komponendid ATTINY85 (1), 3P 90 kraadi isased päised (2) (3) ja jootke tagaküljel ära.
- Tagaküljel jälgige kollast traati YELLOW1 kuni YELLOW2 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 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.
Relee saab nüüd ühendada otse oma tihvtide kaudu trükkplaadiga või juhtmete kaudu tihvtide lepingus näidatud punktidega.
4. samm: testimine
Arvatakse, et paljud neist tellistest asuvad keskkonnas mitmes sõlmes (MCU -d - ESP8266 või ATTINY84). See on üksuse test: saadab IO käsud UNO -lt ATTINY -le, mis avab või sulgeb relee.
Oleme varem Arduino jaoks ehitanud I2C SHIELDi.
Kui soovite selle asemel leiba panna, toimige järgmiselt
- Ühendage UNO 5,0 V BRICKi VCC -ga.
- Ü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.
Testi läbiviimine
- Ühendage UNO oma USB -seadmega arvutiga.
- Laadige kood UNO -sse.
- Avage Arduino konsool. Valige 9600 baud (taaskäivitage UNO ja vajadusel avage konsool uuesti).
- Alam aadress trükitakse konsoolile.
- Kui sisestate saatekasti 2 1 (seega 12 2 1) ja relee lülitub sisse.
- Kui sisestate saatekasti 2 0 (seega 12 2 0) ja relee lülitub välja.
I2C BRICK adhoc käsud orjade jaoks UNO isandalt
#kaasake |
const bait _num_chars = 32; |
süsi _saanud_süklid [_arv_süsi]; // massiiv vastuvõetud andmete salvestamiseks |
boolean _has_new_data = vale; |
voidsetup () { |
Seriaalne algus (9600); |
Serial.println (); |
Serial. |
Serial.println ("veenduge, et konsooliaknas oleks valitud uus rida"); |
Serial.println (); |
Serial.println ("AADRESS 1 KINNITA METADATAHETUSE N/A (M2M jaoks)"); |
Serial.println ("AADRESS 2 ACTOR COMMAND"); |
Serial.println (); |
Serial.println ("AADRESSID BUSSIL:"); |
scan_i2c_addresses (); |
Serial.println (); |
Serial.println (""); |
} |
voidscan_i2c_addresses () { |
int seadme_arv = 0; |
jaoks (bait -aadress = 8; aadress <127; aadress ++) |
{ |
Wire.beginTransmission (aadress); |
const baidi viga = Wire.endTransmission (); |
kui (viga == 0) |
{ |
Serial.println (aadress); |
} |
} |
} |
voidloop () { |
recv_with_end_marker (); |
send_to_i2c (); |
} |
voidrecv_with_end_marker () { |
staatiline bait ndx = 0; |
char end_marker = '\ n'; |
char rc; |
samas (Serial.available ()> 0 && _has_new_data == false) { |
rc = Serial.read (); |
if (rc! = end_marker) { |
_laekunud_karbid [ndx] = rc; |
ndx ++; |
kui (ndx> = _numbrite arv) { |
ndx = _arvude_arv - 1; |
} |
} |
muu { |
_received_chars [ndx] = '\ 0'; // lõpetada string |
ndx = 0; |
_has_new_data = tõsi; |
} |
} |
} |
voidsend_to_i2c () { |
char param_buf [16]; |
const String vastuvõetud_string = String (_saadatud_märgid); |
if (_ has_new_data == true) { |
int idx1 = vastuvõetud_string.indexOf (''); |
Stringi aadress = vastuvõetud_string.alamstring (0, idx1); |
int address_int = aadress.toInt (); |
kui (aadress_int <8 || aadress_int> 127) { |
Serial.println ("INVALID ADDRESS INPUT:"); |
Serial.println (aadress); |
tagasipöördumine; |
} |
int idx2 = saanud_string.indexOf ('', idx1+1); |
String kood; |
kui (idx2 == -1) { |
kood = vastuvõetud_string.alamstring (idx1+1); |
} muud { |
kood = vastuvõetud_string.alamstring (idx1+1, idx2+1); |
} |
int kood_int = kood.toInt (); |
kui (kood_int <0 || kood_int> 5) { |
Serial.println ("VÄÄRATUD KOODISISEND:"); |
Serial.println (kood); |
tagasipöördumine; |
} |
bool has_parameter = idx2> -1; |
String parameeter; |
if (has_parameter) { |
parameeter = vastuvõetud_string.alamstring (idx2 + 1, idx2 + 17); // max 16 märki |
kui (parameeter.pikkus () <1) { |
Serial.println ("PARTAMETER MIN. LENGTH 1"); |
_has_new_data = vale; |
tagasipöördumine; |
} |
} muud { |
kui (kood_int> 1) { |
Serial.println ("PARAMETER ON VAJALIK!"); |
_has_new_data = vale; |
tagasipöördumine; |
} |
} |
Serial.println (); |
Serial.print ("sisend orig ="); |
Seeria.println (saadud_string); |
Serial.print ("aadress ="); |
Serial.println (aadress); |
Serial.print ("kood ="); |
Serial.println (kood); |
Serial.print ("parameeter ="); |
Serial.println (parameeter); |
// SAADA I2C kaudu |
Wire.beginTransmission (aadress_int); |
Wire.write (kood_int); |
if (has_parameter) { |
parameeter.trim (); |
strcpy (param_buf, parameeter.c_str ()); |
Wire.write (param_buf); |
} |
Wire.endTransmission (); |
Serial.println (); |
Serial.println ("SAATIS I2C VIA!"); |
Serial.println (); |
Serial.println (""); |
_has_new_data = vale; |
} |
} |
vaata rawuno_i2c_command_input.ino, mille hostiks on GitHub ❤
Samm: järgmised sammud
Järelkontroll ASSIMILATE ACTOR: KY019, mis kasutab seda tellist, on Croutoni jaoks automaatselt konfigureeritud siinse ATTINY85-sse juba installitud metaandmete kaudu. Croutonile saadetud JSON -pakett saadetakse ICOS10 uusima püsivara kaudu. Saate teha tõestuskontseptsiooni tavalise ESP8266-ga, kui ehitamine on praegu liiga palju.
Testimisel kasutatud UNO visandil on funktsioon uue alam -aadressi salvestamiseks ATTINY85 EEPROM -i, kui teie sihtmärgi I2C siinil on kokkupõrge.
Lisatud on mõned skeemid, kuid olenevalt sellest, mida soovite saavutada, on allavoolu ahela juhtimiseks erinevaid viise, nii et jätan selle teile:)
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 - ASISIMILAATNÄITLEJA: KY019: 4 sammu
IOT123 - ASISIMILEERITUD NÄITLEJA: KY019: See on 5V TIL -juhtsignaaliga, mis suudab juhtida alalis- / vahelduvvoolu signaali. See ehitus põhineb I2C KY019 BRICK -l. Kui vajate kahte kanalit, soovitan selle näitleja 2CH RELAY BRICK vastu vahetada. ASISIMILEERITUD NÄITLEJAD/ANDURID on keskkonnategelased
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