Orodha ya maudhui:
- Hatua ya 1: Vifaa na Zana
- Hatua ya 2: Andaa ATTINY85
- Hatua ya 3: Kusanya Mzunguko
- Hatua ya 4: Upimaji
- Hatua ya 5: Hatua Zifuatazo
Video: IOT123 - I2C 2CH RELAY BRICK: Hatua 5 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:53
VITAMBI vya IOT123 ni vitengo vya moduli vya DIY ambavyo vinaweza kusisitizwa na VITENGE vingine vya IOT123, ili kuongeza utendaji kwa nodi au ya kuvaa. Zinategemea mraba wa inchi, protoboards zenye pande mbili na zilizounganishwa kupitia mashimo.
Idadi ya BRICK hizi zinatarajiwa kuwa kwenye nodi nyingi (Master MCUs - ESP8266 au ATTINY84) kwenye wavuti. MCU haiitaji maarifa ya awali ya madhumuni ya sensorer au mahitaji ya programu. Inatafuta nodi za I2C kisha inaomba dampo la mali (data ya sensorer) kutoka kwa kila mtumwa. Hizi BRICK zinasambaza 5.0V, 3.3V na laini nyingine ya AUX ambayo inaweza kugeuzwa kukufaa.
Hii I2C 2CH RELAY BRICK inaongeza utendaji wa I2C KY019 BRICK, na ina mali mbili za kusoma / kuandika:
2CH RELAYS [0] (kweli / uongo)
2CH RELAYS [1] (kweli / uongo)
Shimo za kupitisha karibu na ATTINY85 zimeachwa bila kutumiwa, kuwezesha programu ya pogo pogo wakati DIP8 inauzwa kwa PCB. Utaftaji zaidi, ufungaji wa MATofali katika mitungi midogo ambayo huziba kwenye kitovu cha D1M WIFI BLOCK, ikisukuma maadili kwa seva ya MQTT, inaendelezwa.
Hatua ya 1: Vifaa na Zana
Kuna orodha kamili ya Muswada wa Nyenzo na Utaftaji.
- Uwasilishaji wa Channel 2 (1)
- ATTINY85 20PU (1)
- 1 "Uboreshaji wa pande mbili (1)
- Kichwa cha kiume 90º (3P, 3P)
- Kichwa cha Kiume (2P, 2P)
- Jumper Shunt (1)
- Hookup waya (~ 7)
- Solder na Chuma (1)
Hatua ya 2: Andaa ATTINY85
KUMBUKA: Ikiwa unakusudia kuwa na ujumuishaji wa Crouton, tafadhali tumia maktaba kutoka hapa, na utumie mfano uliowekwa "attiny_2ch_relay".
AttinyCore kutoka kwa Meneja wa Bodi inahitajika. Choma bootloader "EEPROM Imebakizwa", "8mHZ ya Ndani" (usanidi wote umeonyeshwa hapo juu).
Hifadhi ya nambari inaweza kupatikana hapa.
ZIP ya maktaba inaweza kupatikana hapa.
Maagizo ya "Kuingiza Maktaba ya ZIP" hapa.
Mara tu maktaba imewekwa unaweza kufungua mfano "attiny_2ch_relay".
Ili kupakia firmware kwa ATTINY85, unaweza kupata maelezo zaidi katika mafundisho haya:
www.instructables.com/id/How-to-Program-A…
www.instructables.com/id/Programming-the-…
www.instructables.com/id/Programming-the-…
www.instructables.com/id/Programming-the-…
Bora kwa kujaribu kupitia ubao wa mkate kabla ya kuendelea.
Ikiwa una SENSORS zilizopo za ASSIMILATE, hakikisha anwani ya mtumwa ni tofauti kwenye mchanganyiko wa Jeshi la SENSOR / MCU yaani watendaji wote wa Relay wanaweza kuwa na anwani sawa ikiwa una mwigizaji mmoja tu wa Relay kwenye MCU / node.
Hatua ya 3: Kusanya Mzunguko
- Mbele, ingiza vifaa vya ATTINY85 (1), 3P 90deg vichwa vya kiume (2) (3), 3P vichwa vya kiume (4) (5) na kutengenezea nyuma.
- Kwenye nyuma, fuatilia waya wa manjano kutoka YELLOW1 hadi YELLOW2 na solder.
- Kwenye nyuma, fuata waya wa machungwa kutoka ORANGE1 hadi ORANGE2 na solder.
- Kwa nyuma, fuatilia waya wa bluu kutoka BLUE1 hadi BLUE2 na solder.
- Kwenye nyuma, fuatilia waya wa kijani kutoka GREEN1 hadi GREEN2 na solder.
- Kwenye nyuma, fuatilia waya mweusi kutoka BLACK1 hadi BLACK2 na solder.
- Kwenye nyuma, fuatilia waya mweusi kutoka BLACK3 hadi BLACK4 na solder.
- Kwa nyuma, fuatilia waya nyekundu kutoka RED1 hadi RED2 na solder.
- Kwenye nyuma, fuatilia waya wazi kutoka RED3 hadi RED4 na solder.
- Kwenye nyuma, fuatilia waya wazi kutoka SILVER1 hadi SILVER2 na solder.
- Ongeza jumper kwenye laini ya 5V au 3V3.
Relay sasa inaweza kushikamana moja kwa moja kupitia pini zake kwa PCB au kupitia waya, kwa alama zilizoonyeshwa kwenye mkataba wa pini.
Hatua ya 4: Upimaji
Idadi ya Matofali haya yanatarajiwa kuwa kwenye nodi nyingi (MCUs - ESP8266 au ATTINY84) katika mazingira. Huu ni mtihani wa kitengo: hutuma maagizo ya I2C kutoka UNO kwenda kwa ATTINY ambayo inafungua au kufunga relays.
Hapo awali tulijenga I2C SHIELD kwa Arduino.
Ikiwa unataka kuiweka kwenye mkate badala yake:
- Unganisha 5.0V kwenye UNO kwa VCC kwenye BRICK.
- Unganisha GND kwenye UNO na GND kwenye BRICK.
- Unganisha A5 kwenye UNO na SCL kwenye BRICK.
- Unganisha A4 kwenye UNO na SDA kwenye BRICK.
- Unganisha kontena la kuvuta la 4K7 kutoka SDA hadi VCC.
- Unganisha kontena la kuvuta la 4K7 kutoka SCL hadi VCC.
Kuendesha mtihani
- Unganisha UNO yako kwenye PC yako ya Dev na USB.
- Pakia nambari hiyo kwa UNO.
- Fungua Kiweko cha Arduino.
- Chagua baud 9600 (anzisha tena UNO na ufungue tena kiweko ikibidi).
- Anwani ya mtumwa itachapishwa kwenye kiweko.
-
Wakati, ingiza kwenye sanduku la kutuma 2 0: 1 (kwa hivyo 15 2 0: 1), na relay ya CH1 inawasha.
- Wakati, ingiza kwenye sanduku la kutuma 2 0: 0 (kwa hivyo 15 2 0: 0), na relay ya CH1 imezimwa.
- Wakati, ingiza kwenye sanduku la kutuma 2 1: 1 (kwa hivyo 15 2 1: 1), na relay ya CH2 inawasha.
- Wakati, ingiza kwenye sanduku la kutuma 2 1: 0 (kwa hivyo 15 2 0: 0), na relay ya CH2 imezimwa.
Amri za I2C BRICK adhoc kwa watumwa kutoka kwa bwana wa UNO
# pamoja |
const byte _num_chars = 32; |
char _pokea_chars [_num_chars]; // safu ya kuhifadhi data iliyopokea |
boolean _has_new_data = uongo; |
voidetup () { |
Serial. Kuanza (9600); |
Serial.println (); |
Serial.println ("ASSIMILATE IOT ACTOR / SENSOR EEPROM Mhariri"); |
Serial.println ("hakikisha laini mpya iliyochaguliwa kwenye kidirisha cha dashibodi"); |
Serial.println (); |
Serial.println ("ANUANI 1 Thibitisha RISITI YA METADATA N / A (KWA M2M)"); |
Serial.println ("ANWANI 2 MWANDISHI KAAMU"); |
Serial.println (); |
Serial.println ("ANWANI KWA BASI:"); |
scan_i2c_adresses (); |
Serial.println (); |
Serial.println (""); |
} |
anwani za voidscan_i2c_) () { |
kifaa_ hesabu = 0; |
kwa (anwani ya byte = 8; anwani <127; anwani ++) |
{ |
Uwasilishaji wa waya (anwani); |
kosa la const byte = Wire.endTransmission (); |
ikiwa (kosa == 0) |
{ |
Serial.println (anwani); |
} |
} |
} |
voidloop () { |
recv_with_end_marker (); |
tuma_kwa_i2c (); |
} |
voidrecv_with_end_marker () { |
tuli byte ndx = 0; |
char end_marker = '\ n'; |
char rc; |
wakati (Serial.available ()> 0 && _has_new_data == uongo) { |
rc = mfululizo.read (); |
ikiwa (rc! = end_marker) { |
_pokea_chars [ndx] = rc; |
ndx ++; |
ikiwa (ndx> = _num_chars) { |
ndx = _num_chars - 1; |
} |
} |
mwingine { |
_pokea_chars [ndx] = '\ 0'; // kumaliza kamba |
ndx = 0; |
_has_new_data = kweli; |
} |
} |
} |
voidsend_to_i2c () { |
char param_buf [16]; |
Kamba ya kupokewa_kambo = Kamba (_pokea_chari); |
ikiwa (_has_new_data == kweli) { |
int idx1 = kupokea_string.indexOf (''); |
Anwani ya kamba = kupokea_string.substring (0, idx1); |
anwani_int = anwani.toInt (); |
ikiwa (anwani_int <8 || anwani_int> 127) { |
Serial.println ("INPUT INBALID ADDRESS INPUT:"); |
Serial.println (anwani); |
kurudi; |
} |
int idx2 = kupokea_string.indexOf (", idx1 + 1); |
Nambari ya kamba; |
ikiwa (idx2 == -1) { |
nambari = kupokea_kamba.substring (idx1 + 1); |
} mwingine { |
nambari = kupokea_kamba.substring (idx1 + 1, idx2 + 1); |
} |
code_int = kificho.toInt (); |
ikiwa (code_int <0 || code_int> 5) { |
Serial.println ("INPUT CODE INVALID:"); |
Serial.println (nambari); |
kurudi; |
} |
bool has_parameter = idx2> -1; |
Kigezo cha kamba; |
ikiwa (ina_paramu) { |
parameter = kupokea_string.substring (idx2 + 1, idx2 + 17); // 16 chars max |
ikiwa (parameter.length () <1) { |
Serial.println ("PARTAMETER MIN. UREFU WA 1"); |
_has_new_data = uongo; |
kurudi; |
} |
} mwingine { |
ikiwa (code_int> 1) { |
Serial.println ("PARAMETER INAHitajika!"); |
_has_new_data = uongo; |
kurudi; |
} |
} |
Serial.println (); |
Serial.print ("pembejeo asili ="); |
Serial.println (kupokea_string); |
Serial.print ("anwani ="); |
Serial.println (anwani); |
Serial.print ("nambari ="); |
Serial.println (nambari); |
Serial.print ("parameter ="); |
Serial.println (parameter); |
// TUMA VIA I2C |
Uwasilishaji wa waya (anwani_int); |
Andika waya (code_int); |
ikiwa (ina_paramu) { |
parameter.trim (); |
strcpy (param_buf, parameter.c_str ()); |
Andika waya (param_buf); |
} |
Uwasilishaji wa waya (); |
Serial.println (); |
Serial.println ("KUTUMIWA VIA I2C!"); |
Serial.println (); |
Serial.println (""); |
_has_new_data = uongo; |
} |
} |
tazama rawuno_i2c_command_input.ino mwenyeji na ❤ na GitHub
Hatua ya 5: Hatua Zifuatazo
Ufuatiliaji ASSIMILATE ACTOR: 2CH RELAY ambayo hutumia tofali hii ina usanidi wa moja kwa moja wa Crouton kupitia metadata iliyowekwa tayari katika ATTINY85 hapa. Pakiti ya JSON iliyotumwa kwa Crouton inatumwa kupitia firmware ya hivi karibuni ya ICOS10. Unaweza kufanya Dhibitisho la dhana kwenye ESP8266 ya kawaida, ikiwa ujenzi ni mwingi sana kwa sasa.
Mchoro wa UNO uliotumiwa katika Upimaji una jukumu la kuokoa anwani mpya ya mtumwa kwa EEPROM kwenye ATTINY85, ikiwa una mgongano kwenye basi lako la I2C. Hesabu chache zimeongezwa, lakini kuna njia anuwai za kusambaza waya wa mto kulingana na kile unataka kufikia, kwa hivyo nitakuachia hiyo:)
Ilipendekeza:
Sonoff Basic Wifi Extender - MQTT Relay Relay Relay - 5v DC Low Voltage: 6 Hatua
Sonoff Basic Wifi Extender - MQTT Dry Relay Relay - 5v DC Low Voltage: Ok nilikuwa na vifaa vya msingi vya kizazi cha kwanza cha Sonoff na sitaki kuzitumia na 220v kwani hazikuwa salama bado katika toleo hilo. Walikuwa wamelala karibu kwa muda wakisubiri kufanya kitu nao. Kwa hivyo nilijikwaa kwenye kijeshi cha martin-ger
Jinsi ya Kudhibiti Bulbu kwa Kutumia Arduino UNO na Kituo kimoja cha Modeli ya Relay State Relay: 3 Hatua
Jinsi ya Kudhibiti Bulbu kwa Kutumia Arduino UNO na Moduli Moja ya Relay State Relay Module: Maelezo: Inalinganishwa na relay ya jadi ya mitambo, Solid State Relay (SSR) ina faida nyingi: ina maisha marefu, na kuwasha zaidi / mbali na hakuna kelele. Mbali na hilo, pia ina upinzani bora kwa vibration na mitambo
Asilimia Relay Relay ya Kulinda Transformer ya Awamu tatu: Hatua 7
Asilimia ya Kupitishwa kwa Asilimia ya Kulinda Transformer ya Awamu Tatu: Katika Agizo hili, nitakuonyesha jinsi ya kutengeneza Relay ya Tofauti ya Asilimia kwa kutumia Arduino, ambayo ni bodi ya kawaida ya microcontroller. Power transformer ni vifaa muhimu zaidi vya kuhamisha nguvu katika mfumo wa umeme. Gharama ya kutengeneza da
IOT123 - LIR2032 BATTERY BRICK: 4 Hatua
IOT123 - LIR2032 BATTERY BRICK: Matofali ya IOT123 ni vitengo vya moduli vya DIY ambavyo vinaweza kusisitizwa na VITUO vingine vya IOT123, kuongeza utendaji kwa nodi au ya kuvaa. Zinategemea mraba wa inchi, protoboards zenye pande mbili na zilizounganishwa kupitia mashimo. Ingawa mafunzo
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: 4 Hatua
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: UPDATE: Usanidi huu ni wa kitaaluma au msingi wa kupima programu / usambazaji wa umeme. Hata wakati PB5 imezimwa kama RESET, haisomi maadili kwa usahihi kwa kutumia AnalogRead: kesi kuu ya matumizi ya usomaji wa sensorer. Tutaangalia usanidi wa ATTINY84