เรื่องราว
Bracc.ino เป็นแขนกลข้อต่อแบบเรียบง่าย ประกอบด้วย Servo 6 ตัว ควบคุมผ่าน Bluetooth ด้วย Joypad ที่ใช้ Arduino โปรเจกต์นี้เริ่มต้นจากงานโรงเรียน โดยมีวัตถุประสงค์เพื่อจำลองหุ่นยนต์อุตสาหกรรม หลังจากการลองผิดลองถูกหลายครั้ง เราก็หาวิธีที่ถูกต้องเพื่อดำเนินการต่อและทำให้หุ่นยนต์เคลื่อนที่ได้
ในการสร้างต้นแบบสุดท้าย เราใช้วิธีการผลิตที่แตกต่างกัน เช่น การใช้เครื่อง Laser-cutter สำหรับโครงสร้าง และเครื่อง 3D Printer สำหรับ Pins, Gripper และฐาน
การเคลื่อนที่ของแขนกลควบคุมโดยบอร์ด Arduino เราสามารถส่งข้อมูลเกี่ยวกับการเคลื่อนไหวที่ต้องการทำได้ โดยใช้การสื่อสาร Bluetooth ระหว่างบอร์ดทั้งสอง เราตัดสินใจใช้ Sensor HC-05 สำหรับการนี้



การสื่อสาร BLUETOOTH
การสื่อสาร Bluetooth ประกอบด้วยการส่งและรับข้อมูลผ่านคลื่นวิทยุ ซึ่งมีประโยชน์สำหรับการส่งข้อมูลโดยไม่จำเป็นต้องใช้สายไฟ ดังนั้น เราจึงตัดสินใจหาวิธีสร้าง Joypad สำหรับแขนกลหุ่นยนต์ของเรา และเราพบว่าเป็นไปได้โดยใช้ Arduino การใช้ Bluetooth Module HC-05 เราสามารถรับข้อมูลจากอุปกรณ์ได้ แต่ด้วยการ Programming Sensor เรายังสามารถส่งข้อมูลไปยัง HC-05 อีกตัวได้ด้วย ดังนั้นเราจึงหาวิธี Programming และเปลี่ยน Configuration ของ Module Module ที่ส่งข้อมูลไปยังอีกตัวเรียกว่า MASTER ส่วนตัวรับเรียกว่า SLAVE ดังนั้น Configuration ทั้งสองจึงแตกต่างกันเล็กน้อย แต่มีจุดร่วมกัน โดยพื้นฐานแล้วประเด็นหลักคือ:
- เชื่อมต่อ Arduino ทั้งสองเข้ากับ HC-05 Sensor จ่ายไฟ 5V ให้กับ EN pin (หรือ key) จากนั้น Upload Sketch เปล่าและเปิดการสื่อสาร Serial เพื่อให้กระบวนการง่ายขึ้น เราสามารถเชื่อมต่อบอร์ดทั้งสองพร้อมกันได้โดยใช้หน้าต่าง Arduino IDE สองหน้าต่างที่แตกต่างกัน
- ตอนนี้ การเขียนบางคำบน Serial Monitor เราสามารถเปลี่ยน Configuration ของ Bluetooth ได้


Configuration SLAVE: ลำดับ Serial Monitor
- เขียน"AT" จนกระทั่งได้รับการตอบกลับว่า "OK"
- AT+UART=38400. เป็นการตั้งค่า Baud Rate ซึ่งสำหรับ Bluetooth คือ 38400 Baud
- AT+ROLE=0. ตั้งค่า HC-05 เป็น Slave Mode
- AT+CMODE=0. ใช้สำหรับเชื่อมต่อกับอุปกรณ์ที่จับคู่แล้วเท่านั้น
- AT+PSWD=1234. ตั้งค่า Password สิ่งสำคัญคือต้องใช้ Password เดียวกันสำหรับ MASTER Sensor ด้วย
Configuration MASTER: ลำดับ Serial Monitor
- เขียน "AT" จนกระทั่งได้รับการตอบกลับว่า "OK"
- AT+UART=38400. เป็นการตั้งค่า Baud Rate ซึ่งสำหรับ Bluetooth คือ 38400 Baud
- AT+ROLE=1. ตั้งค่า HC-05 เป็น MASTER Mode
- AT+RMAAD. ล้างอุปกรณ์ที่จับคู่ไว้ก่อนหน้านี้
- AT+RESET. Reset Module
- AT+CMODE=0.
- AT+INQM=0, 5, 9.
- AT+INIT.
- AT+INQ. สามคำสั่งสุดท้ายช่วยเราค้นหา SLAVE Module คำสั่งสุดท้ายจะคืนค่า Address ของอุปกรณ์ที่อยู่ใกล้ Module
- ตอนนี้เราต้องคัดลอก Address ที่ถูกต้อง ถ้าเรามีมากกว่าหนึ่ง เราสามารถควบคุมอุปกรณ์ที่ถูกต้องโดยวาง Address หลัง "AT+RNAME=<address>" สิ่งสำคัญคือต้องใช้เครื่องหมายจุลภาค (commas) แทนเครื่องหมายทวิภาค (colons)
- เมื่อพบอุปกรณ์ที่ถูกต้อง ให้เขียน "AT+PAIR=<address>, 9"
- AT+BIND=<address>.
- AT+CMODE=1.
- AT+LINK=<address>
- หากเราได้รับการตอบกลับว่า "OK" แสดงว่าเราได้จับคู่ Bluetooth Module ทั้งสองสำเร็จแล้ว
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับขั้นตอนการจับคู่ โปรดเยี่ยมชม Link:
คำอธิบายโครงสร้าง
โรงเรียนเปิดโอกาสให้เราได้เรียนรู้วิธีการใช้เทคโนโลยี Laser-cut และ 3D Printing อย่างมาก ดังนั้น เราจึงสามารถสร้างโครงสร้างแขนกลได้ โดยเริ่มจากการวาดใน Software 3D เช่น "SolidWorks" จากนั้น เราเลือกที่จะผลิตชิ้นส่วนโครงสร้างโดยใช้เครื่อง Laser-cut และใช้ 3D Printer สำหรับ Gripper และฐาน เพื่อเหตุผลด้านความสวยงาม Joypad ก็ถูกสร้างด้วย 3D Printer เช่นกัน
ไฟล์ 3D สามารถหาได้ง่ายบนแพลตฟอร์ม GrabCAD ที่ Link:
https://grabcad.com/library/bracc-ino-1


JOYPAD

SERVO
ข้อต่อของแขนกลถูกเคลื่อนที่โดยใช้ Servomotor ใช้งานง่ายด้วย Library <VarSpeedServo.h> ของ Arduino และเราสามารถควบคุมมุมของ Motor ได้ง่ายมาก แต่สำหรับการยกโครงสร้าง เราต้องใช้ Servo ที่แตกต่างกัน โดยมี Stall Torque ที่สูงขึ้น Servo MG996R ช่วยให้เราสามารถยกแขนกลทั้งหมดได้ นอกจากนี้ Servo เหล่านี้ยังเป็นประเภท Digital ซึ่งหมายความว่ามีความแม่นยำมากกว่า Servo ทั่วไป เรายังต้องใช้ Library <VarSpeedServo.h> แทน Library <Servo.h> แบบปกติ Library ตัวแรกมีฟังก์ชันมากกว่าและช่วยให้เราจำลองการเคลื่อนไหวที่ลื่นไหลยิ่งขึ้น นอกจากนี้ยังมีฟังก์ชันสำหรับควบคุมความเร็วของ Servo และสำหรับการเคลื่อนที่แบบ Asynchronous
Library นี้สามารถหาได้จาก Link ต่อไปนี้:
https://github.com/netlabtoolkit/VarSpeedServo


GRIPPER
ตอนนี้เครื่องมือของแขนกลหุ่นยนต์คือ Gripper ที่ใช้งานง่าย ซึ่งสามารถหยิบจับวัตถุขนาดเล็กและเคลื่อนย้ายได้ ได้รับการออกแบบโดยเราและผลิตด้วย 3D Printer Servo Motor SG90 หมุน Gear ซึ่งจะเคลื่อนที่อีกตัวและเปิดหรือปิดกรงเล็บ


ฐาน BEARING
ส่วนประกอบที่มีประโยชน์อีกอย่างคือ Base Bearing มีลักษณะคล้ายกับ Axial Ball Bearing แต่ผลิตด้วย 3D Printer ทั้งหมด มีวงแหวนทรงกลมสองวงพร้อมลูกกลิ้งด้านใน ซึ่งมีรูปร่างพิเศษที่ช่วยให้เลื่อนได้โดยไม่มีปัญหา หน้าที่หลักคือช่วยในการหมุนของฐาน โดยหลีกเลี่ยงการเคลื่อนที่อย่างช้าๆ บนแผ่นไม้

ข้อมูล Frontmatter ดั้งเดิม
title: "Bracc.ino - Robotic Arm" description: "Robotic arm controlled by bluetooth controller." author: "BassoAndrea02" category: "Motors & Robotics" tags: - "vallauri" - "bluetooth" - "robotics" - "remote control" - "robots" views: 16987 likes: 22 price: 2450 difficulty: "Intermediate" components: - "1x I2C 16x2 Arduino LCD Display Module" - "1x 4xAA battery holder" - "1x SG90 Micro-servo motor" - "2x Arduino UNO" - "2x Joystick, 10 kohm" - "1x Hot glue gun (generic)" - "2x Resistor 1k ohm" - "4x AA Batteries" - "5x MG996R Digital Servo" - "1x 3D Printer (generic)" - "1x Tactile Switch, Top Actuated" - "2x Breadboard (generic)" - "2x HC-05 Bluetooth Module" - "2x Resistor 10k ohm" - "1x Jumper wires (generic)" - "2x Resistor 220 ohm" - "2x RESISTOR 2K Ohm" - "1x Laser cutter (generic)" - "2x 9V battery (generic)" tools: [] apps: - "1x Arduino IDE" downloadableFiles: - "https://projects.arduinocontent.cc/a586241b-ca49-4af3-9553-21a754653d94.ino" - "https://projects.arduinocontent.cc/041af459-378c-4c39-83f0-7e4de641f561.ino" - "https://projects.arduinocontent.cc/041af459-378c-4c39-83f0-7e4de641f561.ino" - "https://projects.arduinocontent.cc/a586241b-ca49-4af3-9553-21a754653d94.ino" documentationLinks: [] passwordHash: "f39002dfd53cb669c8b2b80084985e22bee728371d433ceee55ee8bb3ad82f25" encryptedPayload: "U2FsdGVkX19Mxn+7xxjBoUapgqH1S/6TX52ujpN/0GJb5hqbfaOYdAm1lUZfe51nfOejGqdN5rGnoGwLlVn583qMGFCDY3A8res/v9EJ9wI=" seoDescription: "Build a DIY Robotic arm controlled via Bluetooth controller with Arduino in this Bracc.ino project guide." videoLinks: - "https://www.youtube.com/embed/wF5TVQgeEVo" heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/braccino-robotic-arm-b882bb_cover.jpg" lang: "th"