תוכן עניינים:
וִידֵאוֹ: IOT123 - I2C BRICK MASTER JIG: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:16
בעת פיתוח חיישני ASSIMILATE ו- ACTORS, אני שומר UNO שימושי לשליחת פקודות adhoc I2C לאב טיפוס המפותח. אחד היתרונות של ה- I2C BRICKS הוא הסיכות הסטנדרטיות. במקום להשתמש בחוטי קרש לחם בכל פעם (ראו הפריטים), משתמשים במגן לו-טק חסון.
שלב 1: חומרים וכלים
- 4 ס"מ x 6 ס"מ PCB חד -מינית (1)
- חיבור חיבור (~ 6)
- נגדים 4K7 (2) 6
- כותרת זכר (12P, 8P)
- כותרת נקבה (9P, או 3P, 3P)
- הלחמה וברזל (1)
שלב 2: הרכבה
אם אתה משתמש בכותרות נקביות 3 off 3P במקום כותרת נקבה 1 P 9P, החיישן ASSIMILATE/ACTORS יתאים ל- JIG מבלי לפרק אותן.
בעזרת החיווט, יש להסיר עד 10 מ מ בקצוות ולהדביק את הקצוות ממש.
- בתחתית הלוח הכנס את הכותרת הזכרית (1) (2) והלחם מעל.
- בחלק העליון של הלוח, הכנס את הכותרת הנשית (3) והלחם בתחתית.
- בחלקו העליון, חור דרך חור אדום לתוך RED1 ו- RED2.
- בחלק התחתון חוט חור דרך RED1 ל- RED3.
- בחלק התחתון חוט חור דרך RED2 ל- RED5 והלחמה.
- בחלקו העליון חוט חור מ- RED3 ל- RED4 והלחמה.
- בחלקו העליון חור חוט אדום לתוך RED6 ו- RED7.
- בחלק התחתון חוט דרך חור מ- RED6 ל- RED8.
- בחלק התחתון חוט חור דרך RED7 ל- RED10 והלחמה.
- בחלקו העליון חוט חור דרך RED8 ל- RED9 והלחמה.
- בחלקו העליון חור חוט שחור לתוך BLACK1 ו- BLACK2.
- בחלק התחתון חוט חור מ- BLACK1 ל- BLACK3.
- בחלק התחתון חוט דרך חור מ BLACK2 ל BLACK5, והלחמה.
- בחלק העליון, חוט דרך חור מ- BLACK3 ל- BLACK4, והלחמה.
- בחלק העליון, חור דרך חור כחול לתוך BLUE1 ו- BLUE2.
- בחלק התחתון חוט חור מ- BLUE1 ל- BLUE3.
- בחלק התחתון חוט חור דרך מ- BLUE2 ל- BLUE5 והלחמה.
- בחלק העליון, חוט דרך חור מ- BLUE3 ל- BLUE4, והלחמה.
- בחלק העליון, חור דרך חור ירוק לתוך GREEN1 ו- GREEN2.
- בחלק התחתון חוט חור מ- GREEN1 ל- GREEN3.
- בחלק התחתון חוט דרך חור מ- GREEN2 ל- GREEN5 והלחמה.
- בחלקו העליון חוט חור מ- GREEN3 ל- GREEN4 והלחמה.
- בחלקו העליון, דרך חור נגד 4K7 לתוך SILVER3 ו- SILVER4.
- בחלק התחתון חוט חור מ- SILVER3 ל- GREEN5 והלחמה.
- בחלק התחתון חוט דרך חור מ- SILVER4 ל- RED10, והלחמה.
- בחלקו העליון, דרך חור נגד 4K7 לתוך SILVER1 ו- SILVER2.
- בחלק התחתון חוט דרך חור מ- SILVER1 ל- BLUE5 והלחמה.
- בחלק התחתון חוט דרך חור מ- SILVER2 ל- RED10, והלחמה.
שלב 3: קוד ל- UNO
המערכון כאן הוא בסיסי. הוא מאפשר לך להשתמש בקלט המסוף, כדי לגרום ל- UNO לשלוח הודעות I2C ל- I2C ATTINY85 BRICK.
כל ההוראות מודפסות למסך, עם האפשרויות הנתמכות.
פקודות adhoc I2C BRICK עבור עבדים מ- UNO master
#לִכלוֹל |
const byte _num_chars = 32; |
char _received_chars [_num_chars]; // מערך לאחסון הנתונים שהתקבלו |
בוליאני _has_new_data = false; |
הגדרת voids () { |
Serial.begin (9600); |
Serial.println (); |
Serial.println ("ASSIMILATE IOT ACTOR/SENSOR EEPROM Editor"); |
Serial.println ("להבטיח שורה חדשה שנבחרה בחלון המסוף"); |
Serial.println (); |
Serial.println ("ADRESS 1 CONFIRM METADATA RECEIPT N/A (FOR M2M)"); |
Serial.println ("פקודת שחקן ADDRESS 2"); |
Serial.println (); |
Serial.println ("כתובות באוטובוס:"); |
scan_i2c_addresses (); |
Serial.println (); |
Serial.println (""); |
} |
voidscan_i2c_addresses () { |
int device_count = 0; |
for (כתובת בתים = 8; כתובת <127; כתובת ++) |
{ |
Wire.beginTransmission (כתובת); |
שגיאת const byte = Wire.endTransmission (); |
אם (שגיאה == 0) |
{ |
Serial.println (כתובת); |
} |
} |
} |
voidloop () { |
recv_with_end_marker (); |
send_to_i2c (); |
} |
voidrecv_with_end_marker () { |
בתים סטטיים ndx = 0; |
char end_marker = '\ n'; |
char rc; |
בעוד (Serial.available ()> 0 && _has_new_data == false) { |
rc = Serial.read (); |
אם (rc! = end_marker) { |
_received_chars [ndx] = rc; |
ndx ++; |
אם (ndx> = _num_chars) { |
ndx = _num_chars - 1; |
} |
} |
אחר { |
_received_chars [ndx] = '\ 0'; // לסיים את המחרוזת |
ndx = 0; |
_has_new_data = נכון; |
} |
} |
} |
voidsend_to_i2c () { |
char param_buf [16]; |
const String received_string = מחרוזת (_received_chars); |
אם (_has_new_data == true) { |
int idx1 = received_string.indexOf (''); |
כתובת מחרוזת = received_string.substring (0, idx1); |
int address_int = address.toInt (); |
if (address_int <8 || address_int> 127) { |
Serial.println ("קלט כתובת לא חוקי:"); |
Serial.println (כתובת); |
לַחֲזוֹר; |
} |
int idx2 = received_string.indexOf ('', idx1+1); |
קוד מחרוזת; |
אם (idx2 == -1) { |
code = received_string.substring (idx1+1); |
}אַחֵר{ |
code = received_string.substring (idx1+1, idx2+1); |
} |
int code_int = code.toInt (); |
if (code_int <0 || code_int> 5) { |
Serial.println ("קלט קוד לא חוקי:"); |
Serial.println (קוד); |
לַחֲזוֹר; |
} |
bool has_parameter = idx2> -1; |
פרמטר מחרוזת; |
if (has_parameter) { |
parameter = received_string.substring (idx2 + 1, idx2 + 17); // 16 תווים לכל היותר |
if (parameter.length () <1) { |
Serial.println ("PARTAMETER MIN. LENGTH 1"); |
_has_new_data = false; |
לַחֲזוֹר; |
} |
}אַחֵר{ |
אם (code_int> 1) { |
Serial.println ("נדרש פרמטר!"); |
_has_new_data = false; |
לַחֲזוֹר; |
} |
} |
Serial.println (); |
Serial.print ("input orig ="); |
Serial.println (קיבל_מחרוזת); |
Serial.print ("כתובת ="); |
Serial.println (כתובת); |
Serial.print ("code ="); |
Serial.println (קוד); |
Serial.print ("parameter ="); |
Serial.println (פרמטר); |
// שלח VIA 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 ("נשלח באמצעות I2C!"); |
Serial.println (); |
Serial.println (""); |
_has_new_data = false; |
} |
} |
הצג rawuno_i2c_command_input.ino המתארח אצל ❤ על ידי GitHub
שלב 4: השלבים הבאים
מהמבנים שהוצגו, ישנם מספיק חלקים נעים בכדי שתוכל לבנות רשת ASSIMILATE IOT משלך.
כל אחת מהפונקציות האישיות של הצמתים (חיישנים ושחקנים) ניתנת לשליטה באופן מבוזר, לא תלוי במאסטר ה- MCU כדי לקבל ידע כלשהו על התכונות הנתמכות.
כל אפליקציה שמתחברת לברוקר MQTT יכולה לשלוט/להתבונן בכל תכונה של צומת IOT. זה M2M, יישומי אינטרנט, IFTTT וכן הלאה. ממשקים הרבה יותר פשוטים (או עשירים יותר אם תרצו) לעולם ה- IOT שלכם.
מוּמלָץ:
Gardenduino Aka Master Garden: 4 שלבים
Gardenduino Aka Master Garden: ובכן זה לא מרגיש משעמם לנקות את הדשא שלנו, להשקות את הצמחים & מה לא! ובכן בדיוק גינון הוא לא כוס התה שלי. אז החלטתי לעשות מערכת אוטומטית שתטפל בגינה שלי! בואו נתחיל
עיצוב SPI Master ב- VHDL: 6 שלבים
עיצוב SPI Master ב- VHDL: במדריך זה אנו הולכים לעצב מאסטר SPI Bus מאפס ב- VHDL
ESP32 Modbus Master TCP: 7 שלבים
ESP32 Modbus Master TCP: בשיעור זה, תתכנת את מעבד ESP32 כ- Modbus TCP Master. נשתמש בשני התקנים המכילים מעבד זה: Moduino ESP32 ו- Pycom. שני המכשירים פועלים בסביבת MicroPytthon. עבד המודבוס שלנו יהיה מחשב PC עם M
500 LED-Pixel RGB-Brick: 9 שלבים (עם תמונות)
500 LED-Pixel RGB-Brick: לפני זמן מה אני בונה מנורת LED בגודל 10x10 עם כמה מנורות WS2812 האלה, אבל גם אם אפשר לשחק את המשחק של בית הספר הישן עם סמארטפון מחובר אליו, אני רוצה משהו יותר מיוחד. אז החלטתי לשים לזה עוד כמה נוריות, ערה
IOT123 - הרכבת סדרת JIG סדרת תוכנת ATTINY85 SOFTW85: 4 שלבים
IOT123 - הרכבה של סדרת JIG של תוכנת ATTINY85 SOFTWARE: השתמשתי ב- ATTINY85 למעשי חיישנים בעלי הספק נמוך. במקור חשבתי שאין דרך לאתר באגים בשבבים אלה באמצעות קונסולה והשתמשתי בכמה " בחוץ " שיטות להציץ מה קורה בזמן ריצה. ואז נתקלתי ב- SoftwareSeria