ฉันได้รับมอบหมายโครงการให้เรียกใช้เครื่องจำหน่ายขนมขบเคี้ยวที่ใช้โปรโตคอล MDB สำหรับการชำระเงินและฉันเสร็จสิ้นโครงการโดยใช้ Pi Zero (สีส้ม)
ฉันลองไลบรารีอนุกรมฮาร์ดแวร์และซอฟต์แวร์อนุกรม 9 บิตแล้วและมีปัญหาเกี่ยวกับจังหวะใน Pi Zero การสื่อสารต่อเนื่องแบบ 9 บิตของ MDB กลายเป็นความเจ็บปวด โปรโตคอล MDB กล่าวว่าอุปกรณ์ต่อพ่วงควรมีความอดทน% 5 สำหรับการกำหนดเวลาการสื่อสารแบบอนุกรม แต่ผู้ค้าอุปกรณ์ต่อพ่วงที่แตกต่างกันมีความคลาดเคลื่อนต่างกันไม่สอดคล้องกับโปรโตคอล MDB เมื่อคุณคิดว่าคุณประสบความสำเร็จในการสื่อสารแบบอนุกรม แต่ลองใช้อุปกรณ์ต่อพ่วงชำระเงินของผู้ผลิตรายอื่นมันก็ไม่ทำงาน ดังนั้นอย่าพึ่งพาแผ่นข้อมูลโปรโตคอล MDB ฉันป่วยและเบื่อที่จะใช้ตัวควบคุม MDB สำหรับผู้ขายรถเข็น นอกจากนี้อุปกรณ์ต่อพ่วงบางตัวยังสามารถระบายกระแสแอมโมเนียที่มากเกินไปจากพิน uart ในระหว่างกระบวนการบู๊ตภายในและอาจทำให้ชั้นการสื่อสารแบบอนุกรมเสียหายได้ ดังนั้นคุณควรใช้สิ่งที่เป็นนามธรรม Optocouplers นั้นใช้ได้ แต่ฉันก็ยังไม่ต้องการ ' ไม่แนะนำให้จัดการการสื่อสารแบบอนุกรม MDB โดยใช้ Pi Zero วิธีที่ดีกว่าคือการใช้วิธีเลเยอร์กลางโดยใช้ AVR
แทนที่จะใช้ Uart บน Pi Zero สำหรับการสื่อสาร MDB ฉันใช้ Atmega328 AVR สำหรับการจัดการ MDB การสำรวจ ฯลฯ Atmega328 ควบคุมอุปกรณ์ต่อพ่วง MDB โดยใช้ไลบรารี Serial Software และส่งข้อมูลมนุษย์ที่อ่านได้ไปยัง Pi Zero บนฮาร์ดแวร์อนุกรม ชุดรูปแบบอิเล็กทรอนิกส์แหล่งที่มาและรูปภาพ Pi Zero Armbian รหัส Python สำหรับการใช้งานหยอดเหรียญมีให้ที่นี่:
http://eliverse.com/content/vendiverse/
คุณสามารถตรวจสอบหน้า wiki เพื่อดูรายละเอียดเพิ่มเติมเกี่ยวกับการควบคุมมอเตอร์เซ็นเซอร์การนำส่งผลิตภัณฑ์ตัวระบายความร้อนและการแสดงผล LCD ได้ มันเป็นโครงการควบคุมเครื่องจำหน่ายสินค้าอัตโนมัติที่สมบูรณ์และมีการใช้งานโดยผู้ผลิตเครื่องจำหน่ายสองเครื่อง