สารบัญ:
- ขั้นตอนที่ 1: สิ่งที่จำเป็น
- ขั้นตอนที่ 2: อาคารทาวเวอร์
- ขั้นตอนที่ 3: แผนภาพการเดินสายไฟ
- ขั้นตอนที่ 4: หลักการทำงาน
- ขั้นตอนที่ 5: เครื่องเล่น MP3
- ขั้นตอนที่ 6: การอัปโหลดโปรแกรมไปยัง Arduino
- ขั้นตอนที่ 7: ควบคุม
- ขั้นตอนที่ 8: การส่งข้อความโดยใช้ URL
- ขั้นตอนที่ 9: URL ใดก็ได้เพื่อส่งข้อความ
- ขั้นตอนที่ 10: บูรณาการกับ IFTTT 1/7
- ขั้นตอนที่ 11: การผสานรวมกับ IFTTT 2/7
- ขั้นตอนที่ 12: การผสานรวมกับ IFTTT 3/7
- ขั้นตอนที่ 13: การผสานรวมกับ IFTTT 4/7
- ขั้นตอนที่ 14: การผสานรวมกับ IFTTT 5/7
- ขั้นตอนที่ 15: การผสานรวมกับ IFTTT 6/7
- ขั้นตอนที่ 16: การผสานรวมกับ IFTTT 7/7
- ขั้นตอนที่ 17: สรุป
วีดีโอ: ตัวแจ้งเตือน: 17 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
อุปกรณ์สามารถเชื่อมต่อกับระบบ IFTTT และตอบสนองเมื่อมีจดหมายใหม่ปรากฏขึ้น ที่ app.remoteme.org เราจะสร้างลิงก์หลังจากเรียกไบต์ที่จะส่งไปยัง Arduino และ Arduino จะแสดงเอฟเฟกต์แสงและเล่น mp3 จาก SDcard
ขั้นตอนที่ 1: สิ่งที่จำเป็น
- NodeMCU, WemOS หรืออะไรทำนองนั้น
- วงแหวน LED สองวงพร้อมไดโอด WS2812B (ฉันใช้วงแหวนไฟ LED ลำดับที่ 16)
- DFRobotDFPlayerMini – นี่คือเครื่องเล่น MP3 เล่น mp3 จาก SDcard และสื่อสารกับ Arduino โดย RX/TX
- วิทยากร
- SDcard
- ตัวแปลงลอจิก - ฉันเคยใช้อันนี้ เครื่องเล่น mp3 ใช้ 5V และ Arduino 3.3 นั่นเป็นเหตุผลที่เราต้องการตัวแปลงนี้
- ความรู้และทักษะในการทำ PCB แบบง่ายๆ ด้วยตัวเราเอง
หอคอย:
- กระดาษแข็ง – ความหนาต่างกันสองแบบ
- กระดาษลอกลาย
- อลูมิเนียมฟอยล์
ขั้นตอนที่ 2: อาคารทาวเวอร์
เหนือแผนผังของหอคอยในมุมมองด้านข้าง (การผจญภัยของฉันกับการวาดภาพทางเทคนิคสิ้นสุดในโรงเรียนประถมศึกษา) ขนาดทั้งหมดเป็นมิลลิเมตร
หลักการทำงาน
- วงแหวนของไฟ LED ส่องบน
- กระดาษลอกลาย
- กรวยที่ตัดแล้วทำจากกระดาษแข็งและหุ้มด้วยฟอยล์อลูมิเนียมจึงสะท้อนแสงจากวงแหวน LED ในรูปที่ 3 ' = ตาข่ายตัด
- หลอดกล่อง – ยึดเสาในแนวตั้ง ภายในหลอดมีสายเคเบิลสำหรับไฟ LED
- ส่วนสูงขึ้นอยู่กับคุณ ฉันมี 85mm
- ขาตั้งภายในชิ้นส่วนอิเล็กทรอนิกส์ทั้งหมด
องค์ประกอบแนวนอนทั้งหมดควรทำจากกระดาษแข็งหนา
ขั้นตอนที่ 3: แผนภาพการเดินสายไฟ
เครื่องเล่น mp3 มาพร้อมกับแรงดันไฟฟ้า 5V และสื่อสารกับ Arduino ผ่าน TX / RX ซึ่งจำเป็นต้องใช้ตัวแปลงลอจิกเนื่องจาก Arduino ทำงานด้วยแรงดันไฟฟ้า 3.3V การควบคุมวงแหวนยังเชื่อมต่อกับ Arduino (D5, D6) ผ่านตัวแปลงลอจิก
ที่ repository คุณจะพบไฟล์ eagle พร้อมแผน PCB
ฉันแนะนำว่าอย่าบัดกรี Arduino และเครื่องเล่น mp3 อย่างถาวรเพื่อใช้หมุดทองตัวเมียเท่านั้น
ขั้นตอนที่ 4: หลักการทำงาน
Arduino ของเราเชื่อมต่อกับระบบ app.remoteme.org โดยใช้ WebSockets (มีไลบรารีที่พร้อมใช้งาน) ผ่านข้อความ 5 ไบต์ของการเชื่อมต่อนี้:
- ไบต์แรกของเอฟเฟกต์แสงสำหรับวงแหวน LED ด้านบน
- เอฟเฟกต์แสงไบต์ที่สองสำหรับวงแหวน LED ด้านล่าง
- จำนวนไฟล์ mp3 ที่จะเล่น
- จำนวนวินาทีว่าจะเล่นเอฟเฟกต์แสงและ mp3 นานแค่ไหน
- ควรเล่น mp3 ครั้งเดียวหรือวนซ้ำ
รหัสแหล่งที่มา
คุณสามารถหารหัสที่มาทั้งหมดได้ที่นี่
ในไฟล์ SingleRing.cpp และ SingleRing.h มีคลาสสำหรับควบคุมเอฟเฟกต์ของวงแหวน LED ฉันแนะนำให้คุณเริ่มต้นด้วยการดูฟังก์ชัน setMode(int m):
โมฆะ SingleRing:: setMode (int m) { สวิตช์ (m) { กรณี 0: setConfiguration (0, 0, 50, 0, 5, 1); แตก;//ปิด =0 กรณีที่ 1:setConfiguration(6, 0, 50, 0, 0, 20); แตก;//เคสสีเขียวมาตรฐานแข็ง 2:setConfiguration(6, 0, 0, 50, 0, 20); แตก;//เคสสีน้ำเงินมาตรฐาน 3:setConfiguration(6, 50, 0, 0, 0, 20); แตก;//กรณีสีแดงมาตรฐานที่เป็นของแข็ง 4:setConfiguration(6, 50, 10, 0, 0, 20); แตก;//เคสสีส้มมาตรฐานแบบแข็ง 5:setConfiguration(1, 0, 100, 0, 5, 2); แตก;//ตำรวจตามเข็มนาฬิกาสีเขียวกรณี 6:setConfiguration(1, 0, 100, 0, 5, -2); เบรกแตก; // ตำรวจพลิกเคสสีเขียว 7:setConfiguration(1, 0, 0, 100, 5, 2); แตก;//ตำรวจตามเข็มนาฬิกาสีน้ำเงินกรณี 8:setConfiguration(1, 0, 0, 100, 5, -2); แตก; // ตำรวจพลิกคดีสีน้ำเงิน 9:setConfiguration(1, 100, 0, 0, 5, 2); แตก;//ตำรวจ คดีสีแดง 10:setConfiguration(1, 100, 0, 0, 5, -2); เบรคแตก;// ตำรวจพลิกคดีสีแดง 11:setConfiguration(1, 100, 20, 0, 5, 2); แตก;//ตำรวจ คดีสีส้มมาตรฐาน 12:setConfiguration(1, 100, 20, 0, 5, -2); เบรกแตก; // ตำรวจพลิกคดีสีส้ม 13:setConfiguration(2, 0, 0, 50, 8, 10); แตก; // ข้ามเคสสีน้ำเงินมาตรฐาน 14:setConfiguration(2, 0, 0, 50, 8, -10); แตก; // ข้ามกลับกรณีสีน้ำเงิน 15:setConfiguration(5, 0, 50, 0, 0, 20); แตก; // กะพริบเคสสีเขียวมาตรฐาน 16:setConfiguration(5, 0, 50, 0, 0, -20); แตก;// กะพริบ odwyrtka เคสสีเขียว 17:setConfiguration(5, 0, 0, 50, 0, 20); แตก; // กะพริบกรณีสีน้ำเงินมาตรฐาน 18:setConfiguration(5, 0, 0, 50, 0, -20); แตก; // กะพริบเปลี่ยนกรณีสีน้ำเงิน 19:setConfiguration(5, 50, 0, 0, 0, 20); แตก; // กะพริบกรณีสีแดงมาตรฐาน 20:setConfiguration(5, 50, 0, 0, 0, -20); แตก; // กะพริบเปลี่ยนกรณีสีแดง 21:setConfiguration(5, 50, 10, 0, 0, 20); แตก; // กะพริบกรณีสีส้มมาตรฐาน 22:setConfiguration(5, 50, 10, 0, 0, -20); แตก; // กะพริบเปลี่ยนค่าเริ่มต้นสีส้ม: setConfiguration(0, 0, 50, 0, 5, 1); แตก;//ปิด =0 } }
ขึ้นอยู่กับพารามิเตอร์ที่กำหนด วงแหวนจะแสดงเอฟเฟกต์ คุณสามารถเพิ่มเอฟเฟกต์ของคุณเองได้โดยการเรียกใช้ฟังก์ชัน setConfiguration ด้วยพารามิเตอร์ใหม่ (การเปลี่ยนสี ความเร็วในการแสดงผล) โดยการเพิ่มโหมดใหม่หรือเพิ่มเอฟเฟกต์ใหม่ทั้งหมด – หรือแจ้งให้เราทราบในความคิดเห็นหากฉันชอบ ฉันจะเพิ่มเอฟเฟกต์ใหม่
arduino.ino:
#include "Arduino.h"#include "SoftwareSerial.h" #include "DFRobotDFPlayerMini.h"
#รวม
#รวม #รวม #รวม "SingleRing.h"
#รวม
#รวม #รวม
#รวม
#define WIFI_NAME ""
#define WIFI_PASSWORD "" #define DEVICE_ID 205 #define DEVICE_NAME "ไซเรน" #define TOKEN ""
#define DIODES_COUNT 16
SingleRing ด้านบน = SingleRing (DIODES_COUNT, D5);
SingleRing ด้านล่าง = SingleRing (DIODES_COUNT, D6);
ซอฟต์แวร์ซีเรียล mySoftwareSerial (D4, D3); // RX, TX
DFRobotDFPlayerMini myDFPlayer; RemoteMe& remoteMe = RemoteMe::getInstance(TOKEN, DEVICE_ID);
ESP8266 WiFi มัลติ WiFi มัลติ;
การตั้งค่าเป็นโมฆะ () { mySoftwareSerial.begin (9600); Serial.begin(115200);
if (!myDFPlayer.begin (mySoftwareSerial)) {// ใช้ softwareSerial เพื่อสื่อสารกับ mp3
Serial.println(F("ไม่สามารถเริ่มต้นได้:")); Serial.println(F("1.โปรดตรวจสอบการเชื่อมต่ออีกครั้ง!")); Serial.println(F("2.กรุณาใส่การ์ด SD!")); ในขณะที่ (จริง); } Serial.println(F("DFPlayer Mini ออนไลน์"));
myDFPlayer.setTimeOut(500); //ตั้งค่าการหมดเวลาของการสื่อสารแบบอนุกรม 500ms
myDFPlayer.volume(30);
myDFPlayer. EQ(DFPLAYER_EQ_NORMAL);
myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD); WiFiMulti.addAP(WIFI_NAME, WIFI_PASSWORD); ในขณะที่ (WiFiMulti.run () != WL_CONNECTED) { ล่าช้า (100); }
remoteMe.setUserMessageListener (onUserMessage);
remoteMe.setupTwoWayการสื่อสาร();
remoteMe.sendRegisterDeviceMessage(DEVICE_NAME);
top.setup();
bottom.setup(); top.clear(); bottom.clear(); }
ปิดบูลีน = จริง;
turnOffMillis แบบยาวที่ไม่ได้ลงนาม = 0;
โมฆะ onUserMessage (uint16_t senderDeviceId, uint16_t dataSize, uint8_t *data) {
uint16_t pos = 0; uint8_t bottomMode = RemoteMeMessagesUtils::getUint8 (ข้อมูล ตำแหน่ง); uint8_t topMode = RemoteMeMessagesUtils::getUint8(ข้อมูล, ตำแหน่ง); uint8_t trackNumber = RemoteMeMessagesUtils::getUint8(ข้อมูล, ตำแหน่ง); เวลา uint8_t = RemoteMeMessagesUtils::getUint8 (ข้อมูล pos); โหมด uint8_t = RemoteMeMessagesUtils::getUint8(data, pos);
bottom.setMode (โหมดด้านล่าง);
top.setMode(topMode); ถ้า (โหมด == 1) { myDFPlayer.loop (trackNumber); } อื่น ๆ { myDFPlayer.play (trackNumber); } ปิด = เท็จ; turnOffMillis = มิลลิวินาที () + 1,000 * ครั้ง; }
วงเป็นโมฆะ ()
{ remoteMe.loop(); top.loop(); bottom.loop(); ถ้า (turnOffMillis
}
คำอธิบาย:
#define WIFI_NAME ""#define WIFI_PASSWORD "" #define DEVICE_ID 205 #define DEVICE_NAME "notificator" #define TOKEN ""
เราจำเป็นต้องให้ข้อมูลข้างต้น คำแนะนำโดยละเอียดที่นี่ที่ลิงก์ ฉันได้แสดงวิธีลงทะเบียนใน remoteme.org และสร้างโทเค็นแล้ว
โมฆะ onUserMessage (uint16_t senderDeviceId, uint16_t dataSize, uint8_t *data) { uint16_t pos = 0; uint8_t bottomMode = RemoteMeMessagesUtils::getUint8(ข้อมูล, ตำแหน่ง); uint8_t topMode = RemoteMeMessagesUtils::getUint8(ข้อมูล, ตำแหน่ง); uint8_t trackNumber = RemoteMeMessagesUtils::getUint8(ข้อมูล, ตำแหน่ง); เวลา uint8_t = RemoteMeMessagesUtils::getUint8 (ข้อมูล pos); โหมด uint8_t = RemoteMeMessagesUtils::getUint8 (ข้อมูล pos);
bottom.setMode (โหมดด้านล่าง);
top.setMode(topMode); ถ้า (โหมด == 1) { myDFPlayer.loop (trackNumber); } อื่น ๆ { myDFPlayer.play (trackNumber); } ปิด = เท็จ; turnOffMillis = มิลลิวินาที () + 1,000 * ครั้ง; }
ฟังก์ชันนี้จะถูกเรียกเมื่อมีข้อความมาถึง Arduino และแสดงการแจ้งเตือน รหัสมีความชัดเจนมากจนอธิบายตัวเองได้ ฉันอ้างอิงรายละเอียดของชั้นเรียนไปยังเอกสารประกอบ ที่นี่ และ ที่นี่
วงเป็นโมฆะ () { remoteMe.loop (); top.loop(); bottom.loop(); ถ้า (turnOffMillis<millis()){
ถ้า (!ปิด) {
top.clear();
bottom.clear(); myDFPlayer.stop(); ปิด = จริง; } }
ในลูป เราเรียกใช้ฟังก์ชันลูปของออบเจ็กต์ และหากเวลาแสดงการแจ้งเตือนผ่านไป เราจะปิดไดโอดและเสียง
ขั้นตอนที่ 5: เครื่องเล่น MP3
มันสื่อสารกับ Arduino ผ่าน TX / RX – รายละเอียดของตัวผู้เล่นเองที่นี่ และไลบรารี่ที่นี่
เราอัปโหลดไฟล์ mp3 ไปยังการ์ด SD ไฟล์ในการ์ดจะเรียงตามตัวอักษรแล้วโทร:
myDFPlayer.play(5);
เราเล่นไฟล์ที่ห้าจากการ์ด SD จากไดเรกทอรีราก นั่นเป็นเหตุผลที่ดีที่จะให้ไฟล์บนการ์ด SD คำนำหน้า 01, 02 ฯลฯ ในกรณีของฉันดูเหมือนว่าที่หน้าจอการพิมพ์ด้านบน
เพื่อสร้างคำสั่งเสียง คุณสามารถใช้เพจนี้
ขั้นตอนที่ 6: การอัปโหลดโปรแกรมไปยัง Arduino
ก่อนอัปโหลดภาพร่างไปยัง Arduino คุณต้องดาวน์โหลดไลบรารีที่จำเป็นที่นี่ คุณจะพบคำแนะนำโดยละเอียด
นอกจากนี้ เราต้องติดตั้งไลบรารี่DFRobotDFPlayerMiniและAdafruit_NeoPixel
ขั้นตอนที่ 7: ควบคุม
เราส่งไปยัง Arduino ห้าไบต์
- ไบต์แรกของเอฟเฟกต์แสงสำหรับวงแหวน LED ด้านบน
- เอฟเฟกต์แสงไบต์ที่สองสำหรับวงแหวน LED ด้านล่าง
- จำนวนไฟล์ mp3 ที่จะเล่น
- จำนวนวินาทีว่าจะเล่นเอฟเฟกต์แสงและ mp3 นานแค่ไหน
- ว่าควรเล่น mp3 ครั้งเดียวหรือวนซ้ำ (1 ถ้าควรเล่นแบบวนซ้ำ)
โดยการส่งไบต์
07 0F 01 05 01
แหวนบนจะแสดงไฟตำรวจ (โหมด 6) ด้านล่างหนึ่งกะพริบเป็นสีเขียว (โหมด 15) (ตรวจสอบฟังก์ชั่น setMode ที่ singleRing.cpp และแสดงความคิดเห็นข้างๆ) ไฟล์แรกจาก SDcard จะเล่นเป็นเวลา 5 วินาที และไฟล์จะถูกเล่นแบบวนซ้ำ (ตรวจสอบฟังก์ชั่นบนUserMessage ที่ arduino.ino)
มาส่งไบต์เหล่านี้กัน ดูที่หน้าจอด้านบน แล้วคลิกไอคอนตามลำดับที่เขียนโดย 1, 2, 3 หน้าต่างจะปรากฏขึ้น
จากนั้นดูที่หน้าจอที่สอง - และเติมหน้าต่างเหมือนหน้าจอที่สอง
หน้าต่างที่ปรากฏขึ้นใช้สำหรับส่งข้อความไปยังอุปกรณ์ ในฟิลด์ 1 เลือกอุปกรณ์ผู้ส่ง – เนื่องจากเรามีอุปกรณ์เพียงเครื่องเดียว เราจึงเลือก (นี่เป็นฟิลด์บังคับและไม่สำคัญว่าจะเป็นอุปกรณ์เดียวกันกับที่เราส่งข้อความไป) ในฟิลด์ 2 เราให้ไบต์แก่ send (สีแดง ค่าที่เราป้อนใน 2 จะแสดงเป็นสตริง) จากนั้นคลิกปุ่มส่ง
หลังจากส่งข้อความแล้ว ตัวแจ้งของเราควรตอบสนองด้วยการแสดงเอฟเฟกต์แสงที่เหมาะสมและเล่น mp3 ที่เลือก ฉันแนะนำให้คุณลองใช้เอฟเฟกต์ต่างๆ โดยให้สองไบต์แรกของตัวเลขระหว่าง 0 ถึง 22 (ดูคำอธิบายในฟังก์ชัน setMode)
ขั้นตอนที่ 8: การส่งข้อความโดยใช้ URL
หากเราต้องการแสดงการแจ้งเตือนจากแอปพลิเคชันภายนอก เช่น กับ IFTTT เราจำเป็นต้องมี URL ที่จะทำสิ่งเดียวกันกับที่เราทำในหน้าต่างในขั้นตอนก่อนหน้านี้ remoteme.org ให้ REST API ไปที่มันโดยคลิกที่แท็บกร่างทางด้านซ้าย (อันสุดท้าย) หน้าจะปรากฏขึ้น ในหน้านี้ เราสามารถลองใช้ URL ของเราได้
ที่หน้าจอแรก คุณมีฟังก์ชัน คุณต้องขยายแล้วกรอกข้อมูลเหมือนที่หน้าจอที่สอง
กรอกข้อมูลตามภาพด้านบน หลังจากคลิกดำเนินการเราจะส่งข้อความ
070F010501
ผู้รับคืออุปกรณ์ที่มี 205 id อุปกรณ์เดียวกันคือผู้ส่ง MessageId ที่มีการตั้งค่า “No_RENEVAL” ไม่เกี่ยวข้อง จากนั้นคลิก Execute. Notificator จะตอบสนองในลักษณะเดียวกับเมื่อส่งข้อความจากแอปพลิเคชัน หลังจากเรียก REST ด้านล่างเป็น URL ที่เรียก - ดูที่หน้าจอที่สาม และคัดลอกและวาง URL ของเบราว์เซอร์ถูกทำเครื่องหมายด้วยเส้นขอบสีเขียว ที่หน้าจอที่สี่เบราว์เซอร์ Chrome ของฉันหลังจากวาง URL แล้ว
ในกรณีของฉัน URL คือ:
app.remoteme.org/api/*/rest/v1/message/sendUserMessageHexString/205/1/NO_RENEWAL/1/070F010501/
ขั้นตอนที่ 9: URL ใดก็ได้เพื่อส่งข้อความ
ในขั้นตอนก่อนหน้า คุณมี URL ที่ส่งข้อมูลไปยังอุปกรณ์ของคุณ น่าเสียดายที่หลังจากออกจากระบบ app.remoteme.org มันหยุดทำงาน เนื่องจากเราไม่ได้ให้โทเค็นการตรวจสอบสิทธิ์ และเราไม่ได้เข้าสู่ระบบอีกต่อไป มารับโทเค็นของเรา (หรือสร้างใหม่) และวางลงใน URL แทนการติดดาว
ดูที่หน้าจอและแทนที่ * ใน URL ด้วยโทเค็นของคุณ
ในกรณีของฉันโทเค็นคือ:
~267_ZxoWtJ)0ph&2c
ดังนั้น URL สุดท้ายของฉันจึงดูเหมือน:
app.remoteme.org/api/~267_ZxoWtJ)0ph&2c/rest/v1/message/sendUserMessageHexString/205/1/NO_RENEWAL/1/070F010501/
ตอนนี้เรียกได้แม้ไม่ได้ล็อกอิน และเมื่อเรียกแล้วข้อความจะถูกส่งไปยังเครื่องของเรา 205
ขั้นตอนที่ 10: บูรณาการกับ IFTTT 1/7
URL ที่สร้างในขั้นตอนข้างต้นเหมาะสำหรับการเรียกใช้งานโดยแอปพลิเคชันภายนอก วิธีใช้งานฉันจะแสดงใน IFTTT ฉันจะกำหนดค่าเพื่อให้ตัวแจ้งเตือนเปิดขึ้นเมื่อมีอีเมลมาถึงที่อยู่อีเมล (บัญชี Gmail)
เข้าสู่ระบบ IFTTT จากนั้นไปที่แท็บ My Applets แล้วเลือก "New Applet" - หน้าจอแรก
ขั้นตอนที่ 11: การผสานรวมกับ IFTTT 2/7
คลิกถัดไป “+นี่”
ขั้นตอนที่ 12: การผสานรวมกับ IFTTT 3/7
จากนั้นในฟิลด์ "บริการค้นหา" เขียน "Gmail"
จากนั้น "อีเมลใหม่ในกล่องจดหมาย" (อาจจำเป็นต้องมีการกำหนดค่าบางอย่าง)
ขั้นตอนที่ 13: การผสานรวมกับ IFTTT 4/7
ตอนนี้เราคลิกที่ "+ นั่น"
ขั้นตอนที่ 14: การผสานรวมกับ IFTTT 5/7
หา “Webhooks” แล้วคลิก
ขั้นตอนที่ 15: การผสานรวมกับ IFTTT 6/7
จากนั้น "ทำการร้องขอเว็บ"
ขั้นตอนที่ 16: การผสานรวมกับ IFTTT 7/7
เรากรอก URL ของ url ของเราด้วยโทเค็น ประเภทเนื้อหาไปยังแอปพลิเคชัน / json แล้วคลิก "สร้างการดำเนินการ" และเสร็จสิ้น ตอนนี้เรามีแอปเพล็ตของเรา:
ขั้นตอนที่ 17: สรุป
ในบทช่วยสอนนี้ ฉันแสดงวิธีส่งข้อความ Arduino จากระบบภายนอกไปยัง Arduino เรายังรวมระบบอื่น ๆ ไว้ด้วย IFTTT ในลักษณะเดียวกัน ไม่จำเป็นต้องเป็น "ตัวแจ้งเตือน" ที่ฉันต้องการแสดงในตัวอย่างนี้ถึงวิธีการส่งข้อความจากระบบภายนอกไปยัง Arduino ของเรา
sourcecodesFanPage ที่ Facebook
ไชโย Maciek
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง