2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-23 15:06
Pri vývoji ASSIMILÁTNYCH SNÍMAČOV a AKTOROV mám UNO poruke na odosielanie príkazov adhoc I2C vyvíjaným prototypom. Jednou z výhod I2C BRICKS sú štandardizované vývody. Namiesto toho, aby ste vždy používali drôtené dosky (pozri Fritzings), používa sa robustný lo-tech štít.
Krok 1: Materiály a nástroje
- 4 cm x 6 cm Uninersal PCB (1)
- Pripojovací drôt (~ 6)
- Rezistory 4K7 (2) 6
- Mužská hlavička (12P, 8P)
- Zásuvka (9P alebo 3P, 3P)
- Spájka a železo (1)
Krok 2: Zostavenie
Ak použijete 2 vypnuté 3P ženské hlavičky namiesto 1 vypínacích 9P ženských hlavičiek, ASSIMILÁTNY SENZOR/AKTORY sa zmestia na JIG bez ich demontáže.
S káblom odizolujte až 10 mm na koncoch a pocínujte jeho konce.
- V spodnej časti dosky plošných spojov zasuňte zástrčku (1) (2) a spájku zhora.
- V hornej časti dosky plošných spojov zasuňte zásuvku (3) a spájku dole.
- Na vrchu prevlečte červený vodič do RED1 a RED2.
- V spodnej časti prevlečte drôt z RED1 do RED3.
- V spodnej časti prevlečte drôt z RED2 do RED5 a spájkujte.
- Navrchu prevlečte drôt z RED3 do RED4 a spájkujte.
- Na vrchu prevlečte červený vodič do RED6 a RED7.
- V spodnej časti prevlečený drôt z RED6 do RED8.
- V spodnej časti prevlečte drôt z RED7 do RED10 a spájkujte.
- Na vrchu prevlečte drôt z RED8 do RED9 a spájkujte.
- Na vrchu prevlečte čierny vodič do BLACK1 a BLACK2.
- V spodnej časti prevlečte drôt z BLACK1 do BLACK3.
- V spodnej časti prevlečte drôt z BLACK2 do BLACK5 a spájkujte.
- Na vrchu prevlečte drôt z BLACK3 do BLACK4 a spájkujte.
- Na vrchu prevlečte modrý vodič do BLUE1 a BLUE2.
- V spodnej časti prevlečte drôt z BLUE1 do BLUE3.
- V spodnej časti prevlečte drôt z BLUE2 do BLUE5 a spájkujte.
- Na vrchu prevlečte drôt z BLUE3 do BLUE4 a spájkujte.
- Na vrchu prevlečte zelený vodič do ZELENE1 a ZELENE2.
- V spodnej časti prevlečte drôt zo ZELENE1 do ZELENE3.
- V spodnej časti prevlečte drôt zo ZELENÉ2 do ZELENÉ5 a spájkujte.
- Na vrchu prevlečte drôt zo ZELENÉ3 na ZELENÝ4 a spájkujte.
- Na vrchu skrz-dierovaný rezistor 4K7 do SILVER3 a SILVER4.
- V spodnej časti prevlečte drôt zo SILVER3 do GREEN5 a spájkujte.
- V spodnej časti prevlečte drôt zo SILVER4 do RED10 a spájkujte.
- Na vrchu skrz-dierovaný rezistor 4K7 do SILVER1 a SILVER2.
- V spodnej časti prevlečte drôt zo SILVER1 do BLUE5 a spájkujte.
- V spodnej časti prevlečte drôt zo SILVER2 do RED10 a spájkujte.
Krok 3: Kód pre UNO
Tu je náčrt primitívny. Umožňuje vám to pomocou vstupu z konzoly, pomocou ktorého môže UNO odosielať správy I2C na Iricko ATTINY85 BRICK.
Všetky pokyny sa vytlačia na obrazovku s podporovanými možnosťami.
I2C BRICK adhoc príkazy pre otrokov z UNO master
| #zahrnúť |
| const byte _num_chars = 32; |
| char _received_chars [_num_chars]; // pole na uloženie prijatých údajov |
| boolean _has_new_data = false; |
| voidsetup () { |
| Serial.begin (9600); |
| Serial.println (); |
| Serial.println ("ASSIMILUJTE IOT ACTOR/SENSOR EEPROM EDITOR"); |
| Serial.println („zabezpečiť, aby bol v okne konzoly vybraný nový riadok“); |
| Serial.println (); |
| Serial.println ("ADRESA 1 POTVRDIŤ PRÍJEM METADATA N/A (PRE M2M)"); |
| Serial.println ("ADDRESS 2 ACTOR COMMAND"); |
| Serial.println (); |
| Serial.println ("ADRESY NA AUTOBUSE:"); |
| scan_i2c_addresses (); |
| Serial.println (); |
| Serial.println (""); |
| } |
| voidscan_i2c_addresses () { |
| int počet_zariadení = 0; |
| pre (adresa bytu = 8; adresa <127; adresa ++) |
| { |
| Wire.beginTransmission (adresa); |
| chyba bajtu const = Wire.endTransmission (); |
| ak (chyba == 0) |
| { |
| Serial.println (adresa); |
| } |
| } |
| } |
| voidloop () { |
| recv_with_end_marker (); |
| send_to_i2c (); |
| } |
| voidrecv_with_end_marker () { |
| statický bajt ndx = 0; |
| char end_marker = '\ n'; |
| char rc; |
| while (Serial.available ()> 0 && _has_new_data == false) { |
| rc = Serial.read (); |
| if (rc! = end_marker) { |
| _received_chars [ndx] = rc; |
| ndx ++; |
| if (ndx> = _num_chars) { |
| ndx = _num_chars - 1; |
| } |
| } |
| inak { |
| _received_chars [ndx] = '\ 0'; // ukončenie reťazca |
| ndx = 0; |
| _has_new_data = true; |
| } |
| } |
| } |
| voidsend_to_i2c () { |
| char param_buf [16]; |
| const String receive_string = String (_received_chars); |
| ak (_has_new_data == true) { |
| int idx1 = prijatý_string.indexOf (''); |
| Adresa reťazca = prijatý_string.substring (0, idx1); |
| int adresa_int = adresa.toInt (); |
| if (address_int <8 || address_int> 127) { |
| Serial.println ("NEPLATNÝ VSTUP ADRESY:"); |
| Serial.println (adresa); |
| návrat; |
| } |
| int idx2 = prijatý_string.indexOf ('', idx1+1); |
| Reťazcový kód; |
| if (idx2 == -1) { |
| kód = prijatý_string.substring (idx1+1); |
| } else { |
| kód = prijatý_string.substring (idx1+1, idx2+1); |
| } |
| int code_int = code.toInt (); |
| if (code_int <0 || code_int> 5) { |
| Serial.println ("VSTUP NEPLATNÉHO KÓDU:"); |
| Serial.println (kód); |
| návrat; |
| } |
| bool has_parameter = idx2> -1; |
| Reťazcový parameter; |
| if (has_parameter) { |
| parameter = prijatý_string.substring (idx2 + 1, idx2 + 17); // max. 16 znakov |
| if (parameter.length () <1) { |
| Serial.println ("MINIMÁLNY PARTAMETER. DĹŽKA 1"); |
| _has_new_data = false; |
| návrat; |
| } |
| } else { |
| if (code_int> 1) { |
| Serial.println ("POTREBNÝ PARAMETER!"); |
| _has_new_data = false; |
| návrat; |
| } |
| } |
| Serial.println (); |
| Serial.print ("vstup orig ="); |
| Serial.println (receive_string); |
| Serial.print ("adresa ="); |
| Serial.println (adresa); |
| Serial.print ("code ="); |
| Serial.println (kód); |
| Serial.print ("parameter ="); |
| Serial.println (parameter); |
| // ODOSLAJTE PRES I2C |
| Wire.beginTransmission (address_int); |
| Wire.write (code_int); |
| if (has_parameter) { |
| parameter.trim (); |
| strcpy (param_buf, parameter.c_str ()); |
| Wire.write (param_buf); |
| } |
| Wire.endTransmission (); |
| Serial.println (); |
| Serial.println („ODOSLANÉ PROSTREDNÍCTVOM I2C!“); |
| Serial.println (); |
| Serial.println (""); |
| _has_new_data = false; |
| } |
| } |
zobraziť rawuno_i2c_command_input.ino hostiteľom ❤ od GitHub
Krok 4: Ďalšie kroky
Z predstavených zostáv je k dispozícii dostatok pohyblivých častí na to, aby ste si mohli vytvoriť vlastnú ASSIMILÁTNU SIEŤ IOT.
Každá z jednotlivých funkcií uzlov (senzorov a aktérov) je ovládateľná decentralizovaným spôsobom, pričom nezávisí od toho, či má majster MCU znalosti o podporovaných funkciách.
Akákoľvek aplikácia pripájajúca sa k brokerovi MQTT môže ovládať/sledovať všetky funkcie uzla IOT. To je M2M, webové aplikácie, IFTTT a tak ďalej. Oveľa jednoduchšie (alebo bohatšie, ak chcete) rozhrania s vašim svetom IOT.
Odporúča:
DRON MASTER: 6 krokov
DRONE MASTER: Toto je tinkercad 3D návrh AI robota. Koordinácia a ovládanie všetkých dronov v programe alebo veľkých funkciách alebo dokonca vo futbalových zápasoch je dosť náročné. Na to potrebujeme viac trénovaných operátorov dronov. Tento AI robot je však futuristický a bude
Jednoduchý sprievodca pre Master AutoCAD MEP (potrubie): 27 krokov (s obrázkami)
Jednoduchý sprievodca k majstrovskému programu AutoCAD MEP (potrubie): AutoCAD MEP sa môže zdať nie je veľmi odlišný od programu AutoCAD, ale pokiaľ ide o kreslenie mechanických, elektrických & Inštalatérske služby (MEP) vám môžu určite pomôcť ušetriť veľa času a úsilia - za predpokladu, že ste dobre vybavení základmi.
Návrh SPI Master vo VHDL: 6 krokov
Dizajn SPI Master vo VHDL: V tomto návode sa chystáme navrhnúť SPI Bus Master od začiatku vo VHDL
IOT123 - LIR2032 BITTERY BRICK: 4 kroky
IOT123 - LIR2032 BATTERY BRICK: IOT123 BRICKS sú DIY modulárne jednotky, ktoré je možné kombinovať s inými IOT123 BRICKS, aby pridali funkčnosť uzlu alebo boli nositeľné. Vychádzajú z palcových štvorcových, obojstranných protoboardov, ktoré sú navzájom prepojené priechodnými otvormi. Napriek tomu, že inštrukcie
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: 4 kroky
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: AKTUALIZÁCIA: Toto nastavenie je do značnej miery akademické alebo je základom testovania softvéru/napájania. Aj keď je PB5 deaktivovaný ako RESET, nečíta hodnoty presne pomocou analogRead: hlavného prípadu čítania senzorov. Pozrie sa na nastavenie ATTINY84
