![ถังขยะอัจฉริยะจาก Magicbit: 5 ขั้นตอน ถังขยะอัจฉริยะจาก Magicbit: 5 ขั้นตอน](https://i.howwhatproduce.com/images/002/image-3099-3-j.webp)
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
![Image Image](https://i.howwhatproduce.com/images/002/image-3099-5-j.webp)
![](https://i.ytimg.com/vi/wXGIW_LNFWA/hqdefault.jpg)
ในบทช่วยสอนนี้ เราจะเรียนรู้เกี่ยวกับวิธีสร้างถังขยะอัจฉริยะโดยใช้ Magicbit dev บอร์ดกับ Arduino IDE มาเริ่มกันเลย
เสบียง
- Magicbit
- สาย USB-A เป็น Micro-USB
- อัลตราโซนิกเซนเซอร์ - HC-SR04 (ทั่วไป)
- SG90 ไมโครเซอร์โวมอเตอร์
ขั้นตอนที่ 1: เรื่องราว
![การตั้งค่าฮาร์ดแวร์ การตั้งค่าฮาร์ดแวร์](https://i.howwhatproduce.com/images/002/image-3099-6-j.webp)
ก่อนย้ายเข้าโครงการ เรามาดูกันดีกว่าว่าถังขยะอัจฉริยะคืออะไร บ้านทุกหลังมีถังขยะอย่างน้อยหนึ่งถัง ในหลาย ๆ ครั้งที่คุณปกปิดมัน เพราะนั่นจะทำให้กลิ่นในบ้านของคุณ ดังนั้นเมื่อจะทิ้งขยะลงถังขยะก็ต้องเปิดออก แต่ถ้าเดินไปใกล้ถังขยะเพื่อใส่ขยะและเปิดฝาถังขยะโดยอัตโนมัติแล้วหน้าตาจะออกมาเป็นอย่างไร บ้าาาา…. นั่นคือถังขยะอัจฉริยะ
ขั้นตอนที่ 2: ทฤษฎีและระเบียบวิธี
ทฤษฎีนี้ง่ายมาก เมื่อคุณเดินไปใกล้ถังขยะ มันจะตรวจจับคุณ หากระยะห่างระหว่างคุณกับถังขยะน้อยกว่าระยะที่กำหนด ฝาปิดถังขยะจะเปิดขึ้นโดยอัตโนมัติ เพื่อให้วัตถุทั้งสองนี้สมบูรณ์ เราใช้เซ็นเซอร์อัลตราโซนิก HC-SRO4 และเซอร์โวมอเตอร์ขนาดเล็ก คุณสามารถรับเซอร์โวมอเตอร์ดิจิตอลชนิดใดก็ได้
ขั้นตอนที่ 3: การตั้งค่าฮาร์ดแวร์
![การตั้งค่าฮาร์ดแวร์ การตั้งค่าฮาร์ดแวร์](https://i.howwhatproduce.com/images/002/image-3099-7-j.webp)
![การตั้งค่าฮาร์ดแวร์ การตั้งค่าฮาร์ดแวร์](https://i.howwhatproduce.com/images/002/image-3099-8-j.webp)
สำหรับโครงการนี้ เราใช้ส่วนประกอบฮาร์ดแวร์สามส่วนเป็นหลัก ได้แก่ Magicbit, เซอร์โวมอเตอร์และเซ็นเซอร์อัลตราโซนิก การเชื่อมต่อระหว่างส่วนเหล่านี้ทั้งหมดแสดงในรูปด้านบน
เซ็นเซอร์อัลตราโซนิกใช้ 3.3 v สำหรับเปิดเครื่อง ดังนั้นเราจึงใช้พอร์ตด้านล่างขวาของบอร์ด Magicbit เพื่อเชื่อมต่อเซ็นเซอร์อัลตราโซนิกกับ Magicbit แต่เซอร์โวมอเตอร์ใช้ 5V เพื่อการทำงานที่เหมาะสม ดังนั้นเราจึงใช้พอร์ตล่างซ้ายเพื่อเชื่อมต่อเซอร์โวมอเตอร์กับ Magicbit ในกรณีนี้ เราใช้โมดูลตัวเชื่อมต่อเซอร์โวเมจิกบิต แต่ถ้าคุณไม่มีโมดูลนั้น คุณสามารถใช้สายจัมเปอร์สามเส้นเพื่อเชื่อมต่อ 5V ถึง 5V, Gnd ถึง Gnd และพินสัญญาณเป็น 26 พินบน magicbit
ทีนี้มาดูด้านกลไกของโครงการกัน ในการเปิดฝาครอบเราใช้กลไกคันโยกที่ง่ายมาก เราเชื่อมต่อคลิปหนีบมือเซอร์โวด้านหนึ่งกับเซอร์โว จากนั้นเราเชื่อมต่อรูมุมในคลิปและฝาปิดถังขยะโดยใช้ลวดโลหะที่แข็งแรง ลวดโลหะสามารถหมุนได้ตามคลิปเซอร์โวและฝาปิดถังขยะ ด้วยการศึกษาภาพและวิดีโอระดับบน คุณสามารถสร้างสิ่งนั้นได้ง่ายมาก
ขั้นตอนที่ 4: การติดตั้งซอฟต์แวร์
![การติดตั้งซอฟต์แวร์ การติดตั้งซอฟต์แวร์](https://i.howwhatproduce.com/images/002/image-3099-9-j.webp)
ส่วนซอฟต์แวร์ก็ง่ายมากเช่นกัน มาดูโค้ด Arduino IDE กันและวิธีทำงานของโค้ดนั้น
สำหรับการขับเซอร์โวเราใช้ไลบรารีเซอร์โว ESP32 ไลบรารีนี้เกือบจะรวมอยู่ในตัวจัดการบอร์ดบิตวิเศษใน Arduino IDE เพื่อจัดการกับเซ็นเซอร์อัลตราโซนิกเราใช้ไลบรารี newPing สามารถดาวน์โหลดได้จากลิงค์ต่อไปนี้
bitbucket.org/teckel12/arduino-new-ping/d…
ดาวน์โหลดไฟล์ zip และไปที่เครื่องมือ > รวมไลบรารี > เพิ่มไลบรารี Zip ใน Arduino ตอนนี้เลือกไฟล์ zip ที่คุณดาวน์โหลดของไลบรารีพินใหม่ ในรหัสเราประกาศไลบรารีเซอร์โวและอัลตราโซนิกเซนเซอร์ก่อน ในฟังก์ชันวนรอบ เราจะตรวจสอบระยะห่างจากถังขยะไปยังวัตถุด้านหน้าที่ใกล้ที่สุดเสมอ ถ้าขูดมากกว่า 200 ระยะทางที่ส่งออกของไลบรารีจะเป็น 0 เมื่อระยะทางต่ำกว่า 60 ซม. ให้ดำเนินการวนรอบเพื่อเปิดฝาครอบโดยหมุนเซอร์โว หากระยะห่างมากกว่า 60 ซม. ฝาครอบจะวางลง โดยใช้ตัวแปรบูลีน เราจะตรวจสอบสถานะของหน้าปกเสมอ หากฝาครอบปิดลงก็จะเปิดเท่านั้น ในทางกลับกันอีกด้วย ตอนนี้เลือกพอร์ต COM ที่ถูกต้องและบอร์ดเป็น magcibit จากนั้นอัปโหลดรหัส ตอนนี้ถังขยะอัจฉริยะของคุณพร้อมใช้งานแล้ว
ขั้นตอนที่ 5: รหัส Arduino
#รวม
#define TRIGGER_PIN 21 #define ECHO_PIN 22 #define MAX_DISTANCE 200 โซนาร์ Ping ใหม่ (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); #include // รวมระยะทาง int ของไลบรารีเซอร์โว เรดาร์เซอร์โวเซอร์โว; การตั้งค่าเป็นโมฆะ () { Serial.begin (115200); RadarServo.attach (26); // กำหนดว่าขาใดเป็นความล่าช้าของเซอร์โวมอเตอร์ที่แนบมา (3000); } void loop() {// หมุนเซอร์โวมอเตอร์จาก 15 ถึง 165 องศาสำหรับ (int i=0;i<=180;i++){ RadarServo.write(i); ล่าช้า (50); distance = sonar.ping_cm();// เรียกใช้ฟังก์ชันสำหรับคำนวณระยะทางที่วัดโดยเซ็นเซอร์อัลตราโซนิกสำหรับแต่ละองศาสำหรับ (int j=0;j0){ break; } Serial.print(i); // ส่งค่าดีกรีปัจจุบันไปที่ Serial Port Serial.print(", "); // ส่งอักขระเพิ่มเติมถัดจากค่าก่อนหน้าที่จำเป็นในการประมวลผล IDE สำหรับการจัดทำดัชนี Serial.print(j); // ส่งค่าดีกรีปัจจุบันไปที่ Serial Port Serial.print("*"); Serial.print(1); // ส่งค่าระยะทางไปยัง Serial Port Serial.print("/"); // ส่งอักขระเพิ่มเติมถัดจากค่าก่อนหน้าที่จำเป็นในการประมวลผล IDE สำหรับการจัดทำดัชนี Serial.print(ระยะทาง); // ส่งค่าระยะทางไปยัง Serial Port Serial.print("."); // ส่งอักขระเพิ่มเติมถัดจากค่าก่อนหน้าที่จำเป็นในการประมวลผล IDE สำหรับการจัดทำดัชนี } } // ทำซ้ำบรรทัดก่อนหน้าจาก 165 ถึง 15 องศาสำหรับ (int i=180;i>=0;i--){ RadarServo.write(i); ล่าช้า (50); ระยะทาง = sonar.ping_cm(); สำหรับ(int j=75;j>=0;j-=25){ if(i==180 && (j==75 ||j==50 ||j==25)){ ดำเนินการต่อ; } Serial.print(i); // ส่งค่าดีกรีปัจจุบันไปที่ Serial Port Serial.print(", "); // ส่งอักขระเพิ่มเติมถัดจากค่าก่อนหน้าที่จำเป็นในการประมวลผล IDE สำหรับการจัดทำดัชนี Serial.print(j); // ส่งค่าดีกรีปัจจุบันไปที่ Serial Port Serial.print("*"); Serial.print(-1); // ส่งค่าระยะทางไปยัง Serial Port Serial.print("/"); // ส่งอักขระเพิ่มเติมถัดจากค่าก่อนหน้าที่จำเป็นในการประมวลผล IDE สำหรับการจัดทำดัชนี Serial.print(ระยะทาง); // ส่งค่าระยะทางไปยัง Serial Port Serial.print("."); // ส่งอักขระเพิ่มเติมถัดจากค่าก่อนหน้าที่จำเป็นในการประมวลผล IDE สำหรับการจัดทำดัชนี } } }
แนะนำ:
เชื่อมต่อ Magicbit ของคุณกับ Thingsboard: 3 ขั้นตอน
![เชื่อมต่อ Magicbit ของคุณกับ Thingsboard: 3 ขั้นตอน เชื่อมต่อ Magicbit ของคุณกับ Thingsboard: 3 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-1359-j.webp)
เชื่อมต่อ Magicbit ของคุณกับ Thingsboard: ในโครงการนี้ เราจะส่งข้อมูลจากเซ็นเซอร์ที่เชื่อมต่อกับ magicbit ซึ่งเราสามารถแสดงเป็นภาพบนกระดาน
ระบบเรดาร์อย่างง่ายจาก Magicbit: 6 ขั้นตอน
![ระบบเรดาร์อย่างง่ายจาก Magicbit: 6 ขั้นตอน ระบบเรดาร์อย่างง่ายจาก Magicbit: 6 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-1425-j.webp)
ระบบเรดาร์อย่างง่ายจาก Magicbit: บทช่วยสอนนี้แสดงวิธีสร้างระบบเรดาร์อย่างง่ายโดยใช้เซ็นเซอร์ HC-SR04 และบอร์ด Microbit dev พร้อมการประมวลผลและ Arduino IDE
หุ่นยนต์ปรับสมดุลตนเองจาก Magicbit: 6 ขั้นตอน
![หุ่นยนต์ปรับสมดุลตนเองจาก Magicbit: 6 ขั้นตอน หุ่นยนต์ปรับสมดุลตนเองจาก Magicbit: 6 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-88-16-j.webp)
หุ่นยนต์ปรับสมดุลตนเองจาก Magicbit: บทช่วยสอนนี้แสดงวิธีสร้างหุ่นยนต์ทรงตัวโดยใช้บอร์ด Magicbit dev เราใช้ magicbit เป็นบอร์ดพัฒนาในโปรเจ็กต์นี้ ซึ่งใช้ ESP32 ดังนั้นสามารถใช้บอร์ดพัฒนา ESP32 ในโครงการนี้ได้
การแสดงข้อมูลจาก Magicbit ใน AWS: 5 ขั้นตอน
![การแสดงข้อมูลจาก Magicbit ใน AWS: 5 ขั้นตอน การแสดงข้อมูลจาก Magicbit ใน AWS: 5 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-333-32-j.webp)
การแสดงข้อมูลจาก Magicbit ใน AWS: ข้อมูลที่รวบรวมจากเซ็นเซอร์ที่เชื่อมต่อกับ Magicbit จะถูกเผยแพร่ไปยังแกน AWS IOT ผ่าน MQTT เพื่อให้แสดงผลแบบกราฟิกแบบเรียลไทม์ เราใช้ magicbit เป็นบอร์ดพัฒนาในโปรเจ็กต์นี้ ซึ่งใช้ ESP32 ดังนั้น ESP32 d
ใช้ปุ่มกดบน Magicbit ของคุณ [Magicblocks]: 5 ขั้นตอน
![ใช้ปุ่มกดบน Magicbit ของคุณ [Magicblocks]: 5 ขั้นตอน ใช้ปุ่มกดบน Magicbit ของคุณ [Magicblocks]: 5 ขั้นตอน](https://i.howwhatproduce.com/images/002/image-3504-j.webp)
ใช้ Push Buttons บน Magicbit ของคุณ [Magicblocks]: บทช่วยสอนนี้จะสอนให้คุณใช้ Push Buttons บน Magicbit ของคุณโดยใช้ Magicblocks เราใช้ magicbit เป็นบอร์ดพัฒนาในโปรเจ็กต์นี้ ซึ่งใช้ ESP32 ดังนั้นสามารถใช้บอร์ดพัฒนา ESP32 ในโครงการนี้ได้