บอร์ดขับมอเตอร์กระแสสูง EVO24V50.5 (ตอนที่ 2) : เชื่อมต่อบอร์ด Nanobit และ Project:BIT (micro:bit) ผ่านช่อง SERVO

[ อ่านตอนที่ 1 ]

ในโหมดนี้สามารถใช้บอร์ดไมโครคอนโทรลเลอร์ใด ๆ ก็ได้ในการเชื่อมต่อ โดยอาศับการปรับค่าความกว้างพัลส์ในการควบคุม สำหรับบอร์ดควบคุมที่เขียนโปรแกรมด้วย Arduino ก็จะมีคำสั่งสำหรับสั่งงานเซอร์โวมอเตอร์อยู่แล้ว หรือจะเป็นบอร์ด micro:bit บอร์ด Nanobit ก็ทำได้เช่นเดียวกัน

ข้อดีของบอร์ด EVO24V50.5 คือมีการแยกสัญญาณควบคุมออกจากกันอย่างเด็ดขาดด้วย Opto Isolator ดังนั้นการจ่ายไฟแนะนำให้ใช้แหล่งจ่ายไฟของส่วนบอร์ดไมโครคอนโทรลเลอร์กับบอร์ดขับมอเตอร์ EVO24V50.5 แยกออกจากกัน

การเชื่อมต่อบอร์ด Project:bit (micro:bit) กับ EVO24V50.5

 

ปกติแล้วการเชื่อมต่อเซอร์โวมอเตอร์เข้ากับ Project:BIT จะต้องต่อที่ขั้ว SERVO ด้านบนของบอร์ดแต่กรณีที่ต่อกับบอร์ด EVO24V50.5 ต่อที่ตำแหน่งไหนก็ได้เนื่องจาก ไม่จำเป็นต้องใช้ไฟเลี้ยงจากบอร์ด ใช้เฉพาะสัญญาณควบคุมกับกราวด์เท่านั้น สำหรับเรื่องแบตเตอรี่ สามารถใช้แรงดันได้ตั้งแต่ 9-42V ดังนั้นการเลือกใช้แบตเตอรี่ต้องดูมอเตอร์ที่เลือกใช้ว่ารองรับแรงดันเท่าใด

การเชื่อมต่อบอร์ด Nanobit และ AX-Nanobit กับ EVO24V50.5

บอร์ด AX-Nanobit ออกแบบช่องต่อเซอร์โวไว้ 4 ช่อง สามารถเลือกใช้ช่องใดๆ ก็ได้ ในที่นี้เลือกใช้ช่องหมายเลข 8 ขณะเสียบสายให้ดูทิศทางให้ถูกต้อง โดยอาจสังเกตว่าสีดำคือไฟลบหรือกราวด์ ไฟเลี้ยงที่เลี้ยงบอร์ด AX-Nanobit จะต้องใช้แยกกับไฟเลี้ยงที่เลี้ยงบอร์ด EVO24V50.5

 

การกำหนดตำแหน่งจั๊มเปอร์

ตำแหน่งจั๊มเปอร์สำหรับโหมดเซอร์โวต้องกำหนดไว้ที่ 2-3

ค่าตัวเลขที่ใช้ควบคุมตำแหน่งมอเตอร์

ปกติ micro:bit จะควบคุมเซอร์โว โดยการส่งตำแหน่งองศาออกไปค่าตั้งแต่ 0 ถึง 180 แต่สำหรับบอร์ด EVO24V50.5 มีช่วงที่แคบลงเหลือเพียง 30 – 145 (ได้จากการทดลอง อาจมากหรือน้อยกว่านี้)

 

ชุดคำสั่งควบคุมเซอร์โวมอเตอร์ ของ Microsoft MakeCode

คำสั่งที่ใช้คือคำสั่ง servo อยู่ในหัวข้อ Pins (Advanced) โดยคำสั่งนี้จะระบุขาของเซอร์โวมอเตอร์ และตำแหน่งองศาที่ต้องการให้เซอร์โวเคลื่อนที่

 

การเขียนโปรแกรมควบคุมด้วย Microsoft MakeCode สำหรับ micro:bit และ Nanobit

 

กดปุ่ม A B สั่งงานมอเตอร์

เริ่มพื้นๆ กันก่อน คือใช้สวิตช์ในการควบคุมทิศทางของมอเตอร์ ถ้ากดปุ่ม A ให้หมุนตามเข็ม ถ้ากดปุ่ม B ให้หมุนทวนเข็ม ด้วยความเร็วสูงสุด พร้อมแสดงลูกศรชี้ ถ้ากดสองปุ่มพร้อมกันให้หยุด พร้อมแสดงรูปสี่เหลี่ยม

ค่อยๆ เพิ่มความเร็วของมอเตอร์

ปรับแก้จากโปรแกรมก่อนหน้า โดยให้วนลูปส่งค่าความเร็วจากจุดหยุดนิ่งที่ 90 องศา ค่อยๆ เพิ่มความเร็วไปยังความเร็วสูงสุด โดยใช้คำสั่ง for เข้ามาช่วย

 

ใช้ Project:BIT ขับเคลื่อนมอเตอร์ 2 ชุด

ใช้ AX-Nanobit ขับเคลื่อนมอเตอร์ 2 ชุด

 

กรณีที่ต้องการสร้างเป็นหุ่นยนต์ (ขนาดใหญ่) สามารถต่อร่วมกัน 2 บอร์ดแล้วใช้แบตเตอรี่ร่วมกันได้ โดยเขียนโปรแกรมควบคุมพื้นฐานได้ดังนี้

https://makecode.microbit.org/_PtREaHd8PgRh

กรณีนี้สร้างเป็นฟังก์ชั่นขึ้นมาแล้วเรียกใช้งานฟังก์ชั่น โดยสังเกตว่าการเดินหน้าและถอยหลัง มอเตอร์ที่ติดตั้งกับหุ่นยนต์ซ้ายและขวาจะวางตำแหน่งตรงกันข้าม การเคลื่อนที่ก็จะสลับทิศทางกันด้วย

Facebook Comments