תוכן עניינים:
- שלב 1: חיווט
- שלב 2: דוגמת קוד פשוטה:
- שלב 3: קוד בדיקת ממסר ארבעה
- שלב 4: הפרויקט שלי
- שלב 5: התקשר ממסר עם פקודה אחת
וִידֵאוֹ: ממסר I2C פגש את Arduino IDE: 5 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:11
אני מזמין לוח ממסר נחמד אבל לא הייתה הוראה של ArduinoIDE, רק Raspberry Pi e.o. אני מגלה כיצד להשתמש בו עם Arduino ורוצה לשתף אותו כדי שתוכל לחסוך את הזמן הזה.
דוגמה מקורית של RaspberryPi:
wiki.52pi.com/index.php/DockerPi_4_Channel_Relay_SKU:_EP-0099
דבר נחמד הוא שאתה יכול לערום עד 4 לוחות. כך שתוכל להשתמש במקסימום. 4 x 4 = 16 ממסר באוטובוס I2C אחד.
יש גם כמה חסרונות:
- מסופים קטנים, לא מתאימים לחוט 1 מ"מ
- לא ניתן לשנות את החיווט של המחברים התחתונים כאשר הם מוערמים יחד
אבל עדיין לוח נוח.
שלב 1: חיווט
בתמונות ניתן לראות את החיווט.
52Pi צריך שניהם 5V (עבור ממסר) ו- 3.3V (שבב I2C).
אז צריך 5 חוטים:
- GND ל- GND
- 5 V עד 5 V
- 3.3 V עד 3.3 V
- SLA ל- SLA
- SCL ל- SCL
אם אתה משתמש ב- UNO Arduino או 5 V אחר, היזהר מהמקסימום 3, 6 V מבקר I2C! השתמש בנגדים או אחרת כדי להוריד את ה -5 V מתוך מספר ה- Arduino PIN!
שלב 2: דוגמת קוד פשוטה:
/* Arduino IDE (ESP) דוגמה עבור לוח relaisboard I2C.
* מאת Laurens Korste www.boktorrobotica.nl * לשימוש חופשי. */ #include // עבור התקנת חלל תקשורת I2C () {// כלל זה אינו עבור UNO או לוחות עם סיכות I2C ייעודיות Wire.begin (D1, D2); // הצטרף לאוטובוס i2c עם SDA = D1 ו- SCL = D2 עבור NodeMCU} לולאת חלל () {Wire.beginTransmission (0x10);/ * התחל לשדר לכתובת I2C 10 (לשנות גם ל- 11, 12 או 13) */ Wire.write (0x01); / * relais בחירה 1 (מתוך 4) על לוח 10 (גם 0x02, 0x03, 0x04) */ Wire.write (0xFF); /* הגדר Relais 1 על לוח 10 ל- ON. כל המספרים> 0 יעשו זאת */ Wire.endTransmission (); / * הפסק לשדר */ עיכוב (3000); שידור Wire.beginTransmission (0x10); / * */ Wire.write (0x01); Wire.write (0x00); / * הגדר Relais 1 על לוח 10 ל- OFF */ Wire.endTransmission (); / * הפסק לשדר */ עיכוב (3000); }
שלב 3: קוד בדיקת ממסר ארבעה
/* סקיצה מאת לורנס קורסטה עבור Arduino (ESP / NodeMCU)
* אבל לוחות אחרים יעשו גם * www.boktorrobotica.nl * במפתח זה כל 4 הממסרים יופעלו ויושבתו */ #include // עבור התקנת חלל תקשורת I2C () {Serial.begin (115200); // התחל סדרתי לניפוי באגים (9600 עבור UNO) Wire.begin (D1, D2); // הצטרף לאוטובוס i2c עם SDA = D1 ו- SCL = D2 של NodeMCU אין צורך ב- UNO} לולאת חלל () {for (int i = 1; i <= 4; i ++) {Wire.beginTransmission (0x10); // התחל עם כתובת המכשיר Wire.write (i); // בחרו את relais Wire.write (0xFF); // שלח את קוד ה- "on" FF (כל ספירה מ- 01 ל- FF תעשה) Wire.endTransmission (); // הפסיקו לשדר את Serial.write (i); Serial.println ("aan"); עיכוב (1000); שידור Wire.beginTransmission (0x10); // התחל עם כתובת המכשיר Wire.write (i); Wire.write (0x00); // שלח את הקוד "כבוי" Wire.endTransmission (); // הפסק לשדר את Serial.write (i); Serial.println ("אאוט"); עיכוב (1000); }}
שלב 4: הפרויקט שלי
כתבתי קוד להפעלת 3 התריסים שלי. ניתן לעשות זאת באמצעות מתגים אך גם באמצעות אפליקציית BLYNK, ראה תמונה.
- לחיצה קצרה אחת תתחיל להזיז תריס אחד (או תעצור אותו כאשר הוא זז).
- לחיצה ארוכה אחת וכל שלושת התריסים נפתחים (או נסגרים או עוצרים).
- לחץ כפול: התריסים עוברים למצב "חורים".
כפי שניתן לראות בתמונה, שילבתי גם חיישן טמפרטורה ואור.
עכשיו הכל על בסיס PCB טוב ובקפידה בקופסה.
שלב 5: התקשר ממסר עם פקודה אחת
זה שימושי אם אתה צריך רק פקודה אחת כדי להפעיל או לבטל ממסר. להלן פונקציה שיכולה לעשות זאת (עם lowbyte ו- highbyte).
/ * סקיצה מאת לורנס קורסטה עבור Arduino (ESP/NodeMCU) עם לוח ממסר I2C * אבל לוחות אחרים יעשו גם * href = https://www.boktorrobotica.nl; www.boktorrobotica.nl * https://wiki.52pi.com/index.php/DockerPi_4_Channel_Relay_SKU: _EP-0099; www.boktorrobotica.nl * בסקיצה זו הממסר יופעל בשיחה אחת; * // #include // לתקשורת I2C // הצהרת ממסרים. 4 PCB לכל PCB 4 ממסרים אפשריים. בסקיצה זו מוזגים רק שני PCB // PCB וממסרים כך שניתן לקרוא להם עם פקודה אחת const byte PutOn = 0xFF; // פקודה להפעלת const byte PutOff = 0x00; // comand כדי לכבות const const Relay1bord1 = 0x1001; // אתה יכול לסמן את השמות על ידי דוגמה Relay1 const word Relay2bord1 = 0x1002; // אתה יכול לסמן את השמות על ידי דוגמה Relay2 const word Relay3bord1 = 0x1003; Relay4bord1 = 0x1004; // אתה יכול לסמן את השמות על ידי דוגמה Relay4 const word Relay1bord2 = 0x1101; // אתה יכול לסמן את השמות על ידי דוגמא Relay5 const w ord Relay2bord2 = 0x1102; // אתה יכול להזכיר את השמות לדוגמא Relay6 const word Relay3bord2 = 0x1103; // אתה יכול להזכיר את השמות לדוגמא Relay7 const word Relay4bord2 = 0x1104; // אתה יכול להזכיר את השמות על ידי דוגמה Relay8 const word Relay1bord3 = 0x1201; // אתה יכול להזכיר את השמות לדוגמא Relay9 const word Relay2bord4 = 0x1302; // אתה יכול להזכיר את השמות על ידי דוגמה להגדרת החלל של Relay14 () {Serial.begin (115200); // התחל סדרתי לניפוי באגים (9600 עבור UNO) Wire.begin (D1, D2); // הצטרף לאוטובוס i2c עם SDA = D1 ו- SCL = D2 של NodeMCU אין צורך ב- UNO} לולאת חלל () {// כדי להעביר את ממסר 4 למכשיר PCB 2 ב- RelayActie (Relay4bord2, PutOn); עיכוב (1000); // כדי לכבות את ממסר 4 במכשיר PCB 2 RelayActie (Relay4bord2, PutOff); עיכוב (1000); } void RelayActie (מילה Relay, בייט OnOrOff) {Wire.beginTransmission (highByte (Relay)); Wire.write (lowByte (ממסר)); Wire.write (OnOrOff); Wire.endTransmission (); }
מוּמלָץ:
מתג ממסר ממסר RFID Arduino Uno, עם תצוגת I2C: 4 שלבים
מתג ממסר ממסר RFID Arduino Uno, עם תצוגת I2C: שלום, זהו הפרויקט הראשון שלי, שמי אוסקר ואני בן 13. פרויקט זה עובד עם צג I2C, לא רגיל
יישום MCP-23008 באמצעות ממשק ממסר (I2C) :: 6 שלבים
יישום MCP-23008 באמצעות ממשק ממסר (I2C) :: HelloGood Greetings .. !! I (Somanshu Choudhary) בשם מיזמי הטכנולוגיה של Dcube שהולכים לשלוט בממסרים באמצעות פרוטוקול I2C באמצעות Arduino nano ו- MCP23008
בקר ממסר ממסר Alexa Raspberry Pi: 6 שלבים
בקר ממסר ממסר Alexa Raspberry Pi: יצרתי את המדריך הזה כדי לחלוק את החוויות שלי עם שילוב מכשירי IOT עם Alexa של אמזון. פרויקט זה מאפשר לשלוט בלוח ממסר המחובר לפאי פטל מבקר smarthome. הוא נבדק עם אלקסה אך נראה גם
ממסר NodeMCU 8CH Sonoff ממסר: 11 שלבים
Tasmotized NodeMCU 8CH ממסר Sonoff: זהו קושחה של NodeMCU Tasmota-Sonoff מבזק 8CH ממסר בקרת ממסר Sonoff-Tasmota היא קושחה חלופית למכשירים מבוססי ESP8266 כמו NodeMCU המאפשרים שליטה על WiFi של מערכות בית חכם (ioT). הרעיון שלי היה לקיים ממסר 8CH
IOT123 - לבני ממסר I2C 2CH: 5 שלבים (עם תמונות)
IOT123 - I2C 2CH RELIC BRICK: ה- IOT123 BRICKS הן יחידות מודולאריות של DIY שניתן לערבב אותן עם IOT123 בריקים אחרים, כדי להוסיף פונקציונליות לצומת או לביש. הם מבוססים על לוחות פרוט-מרובע, דו-צדדיים עם חורים המחוברים זה לזה. מספר בריקים אלה