
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12



Mecanum Robot - โครงการที่ฉันอยากจะสร้างตั้งแต่ฉันเห็นมันในบล็อก gread mechatronics ของ Dejan: howtomechatronics.com
Dejan ทำได้ดีจริงๆ ครอบคลุมทุกด้านตั้งแต่ฮาร์ดแวร์ การพิมพ์ 3 มิติ อุปกรณ์อิเล็กทรอนิกส์ โค้ด และแอป Android (ผู้ประดิษฐ์แอปของ MIT)
นี่เป็นโครงการยกเครื่องที่ยอดเยี่ยมที่จะรีเฟรชทักษะทั้งหมดของผู้ทำ
ฉันมีการเปลี่ยนแปลงเล็กน้อยที่ต้องทำกับโครงการ
ฉันไม่ต้องการใช้ PCB แบบกำหนดเองที่เขาใช้ แต่มีโล่ GRBL แบบเก่าที่ฉันมีที่บ้าน
ฉันต้องการใช้ BlueTooth
ดังนั้น:
เสบียง
Arduino Uno + GRBL Shield
สเต็ปเปอร์มอเตอร์
HC-06 โมดูลบลูทูธ
แบตเตอรี่ Lipo 12V
ขั้นตอนที่ 1: ฮาร์ดแวร์


พิมพ์ล้อและประกอบเข้าด้วยกันดังนี้:
เชื่อมต่อสเต็ปเปอร์มอเตอร์ 4 ตัวเข้ากับแชสซี (ในกรณีของฉันลิ้นชักที่ไม่ได้ใช้คว่ำลง)
เดินสายเคเบิลไปที่ด้านบนของหุ่นยนต์
ขั้นตอนที่ 2: อุปกรณ์อิเล็กทรอนิกส์



ฉันใช้โมดูล HC-06 BT ของฉัน
ส่วนที่ยากที่สุดคือการตั้งค่าชิลด์ GRBL ให้ทำงานกับสเต็ปเปอร์มอเตอร์ 4 ตัว เนื่องจากไม่มีแนวทางที่ดี
จำเป็นต้องใส่จัมเปอร์ดังที่เห็นในภาพที่แนบมา เพื่อให้เอาต์พุต "เครื่องมือ" ของชิลด์ควบคุมสเต็ปเปอร์มอเตอร์ได้ด้วย ต้องใส่ "Enable" Jumper ด้วย
เดินสายสเต็ปเปอร์ 4 ตัว เท่านี้ก็เรียบร้อย
ฉันยังจ่ายไฟจากแบตเตอรี่ 12V - สองสเต็ป - หนึ่งอันสำหรับ Arduino และอีกอันสำหรับ GRBl Shield
ขั้นตอนที่ 3: รหัส Arduino
/* === Arduino Mecanum Wheels Robot === การควบคุมสมาร์ทโฟนผ่าน Bluetooth โดย Dejan, www. HowToMechatronics.com ห้องสมุด: RF24, www. HowToMechatronics.com AccelStepper โดย Mike McCauley: www. HowToMechatronics.com
*/ /* 2019-11-12 Gilad Meller (https://www.keerbot.com - แก้ไขโค้ดเพื่อทำงานกับ GRBL arduino motor shield มอเตอร์สเต็ปในชิลด์ถูกแมปเป็น (ขั้นตอน/ทิศทาง): 2/5 3 /6 4/7 12/13 ใช้ไดรเวอร์ A4988 12V
รหัสของ Dejan ใช้ SoftwareSerial และของฉันจะใช้ RX, TX pins (0, 1) มาตรฐานของ Arduino Uno หมายเหตุ: ตรวจสอบให้แน่ใจว่าได้ถอดหมุด RX TX ออกเมื่อทำการอัพร่างไปยัง Arduino ไม่เช่นนั้นการอัปโหลดจะล้มเหลว
*/ #รวม
// กำหนดสเต็ปเปอร์มอเตอร์และพินที่จะใช้ AccelStepper LeftBackWheel(1, 2, 5); // (ประเภท:ไดรเวอร์, STEP, DIR) - Stepper1 AccelStepper LeftFrontWheel(1, 3, 6); // Stepper2 AccelStepper RightBackWheel (1, 4, 7); // Stepper3 AccelStepper RightFrontWheel (1, 12, 13); // Stepper4
int ขาเข้าไบต์ = 0, c; // สำหรับข้อมูลอนุกรมขาเข้า int wheelSpeed = 100;
การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); // เปิดพอร์ตอนุกรมกำหนดอัตราข้อมูลเป็น 9600 bps // ตั้งค่าเริ่มต้นเริ่มต้นสำหรับ steppers LeftFrontWheel.setMaxSpeed (600); LeftBackWheel.setMaxSpeed(600); ล้อหน้าขวา.setMaxSpeed(600); RightBackWheel.setMaxSpeed(600);
}
วงเป็นโมฆะ () { ถ้า (Serial.available () > 0) { // อ่านไบต์ที่เข้ามา: incomingByte = Serial.read ();
c = ไบต์ขาเข้า; สวิตช์ (c) { กรณีที่ 71: Serial.println ("ฉันได้รับ Rotate right W"); หมุนขวา (); หยุดพัก; กรณีที่ 65: Serial.println("ฉันได้รับ Rotate left Q"); หมุนซ้าย(); หยุดพัก; กรณีที่ 1: Serial.println("ฉันได้รับ BK/LFT "); moveRightBackward(); หยุดพัก; กรณีที่ 2: Serial.println("ฉันได้รับ BK "); ย้ายย้อนกลับ(); หยุดพัก; กรณีที่ 3: Serial.println("ฉันได้รับ BK/RT "); moveRightBackward(); หยุดพัก; กรณีที่ 4: Serial.println("ฉันได้รับ LEFT "); ย้ายข้างซ้าย();
หยุดพัก; กรณีที่ 5: Serial.println("ฉันได้รับ STOP "); หยุดการเคลื่อนไหว (); หยุดพัก; กรณีที่ 6: Serial.println("ฉันได้รับ RT "); ย้ายข้างขวา (); หยุดพัก; กรณีที่ 7: Serial.println("ฉันได้รับ FWD/LFT "); ย้ายซ้ายไปข้างหน้า (); หยุดพัก; กรณีที่ 8: Serial.println("ฉันได้รับ FWD "); ก้าวไปข้างหน้า(); หยุดพัก; กรณีที่ 9: Serial.println("ฉันได้รับ FWD/RT "); moveRightForward(); หยุดพัก; ค่าเริ่มต้น: Serial.print("ไม่ใช่คำสั่ง"); Serial.println (ไบต์ขาเข้า, ธ.ค.); หยุดพัก; } } //moveBackward(); moveRobot();
}
โมฆะ moveRobot () { LeftBackWheel.runSpeed (); LeftFrontWheel.runSpeed(); RightFrontWheel.runSpeed(); RightBackWheel.runSpeed(); }
โมฆะ moveForward () { LeftFrontWheel.setSpeed (ความเร็วล้อ); LeftBackWheel.setSpeed(ความเร็วล้อ); RightFrontWheel.setSpeed(ความเร็วล้อ); RightBackWheel.setSpeed(ความเร็วล้อ); } โมฆะ moveBackward () { LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed(-ความเร็วล้อ); RightFrontWheel.setSpeed(-ความเร็วล้อ); RightBackWheel.setSpeed(-ความเร็วล้อ); } โมฆะ moveSidewaysRight () { LeftFrontWheel.setSpeed (ความเร็วล้อ); LeftBackWheel.setSpeed(-ความเร็วล้อ); RightFrontWheel.setSpeed(-ความเร็วล้อ); RightBackWheel.setSpeed(ความเร็วล้อ); } โมฆะ moveSidewaysLeft () { LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed(ความเร็วล้อ); RightFrontWheel.setSpeed(ความเร็วล้อ); RightBackWheel.setSpeed(-ความเร็วล้อ); } เป็นโมฆะ turnsLeft () { LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed(-ความเร็วล้อ); RightFrontWheel.setSpeed(ความเร็วล้อ); RightBackWheel.setSpeed(ความเร็วล้อ); } โมฆะการหมุนขวา () { LeftFrontWheel.setSpeed (ความเร็วล้อ); LeftBackWheel.setSpeed(ความเร็วล้อ); RightFrontWheel.setSpeed(-ความเร็วล้อ); RightBackWheel.setSpeed(-ความเร็วล้อ); } โมฆะ moveRightForward () { LeftFrontWheel.setSpeed (ความเร็วล้อ); LeftBackWheel.setSpeed(0); ล้อหน้าขวา.setSpeed(0); RightBackWheel.setSpeed(ความเร็วล้อ); } โมฆะ moveRightBackward () { LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed(-ความเร็วล้อ); RightFrontWheel.setSpeed(-ความเร็วล้อ); RightBackWheel.setSpeed(0); } โมฆะ moveLeftForward () { LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed(ความเร็วล้อ); RightFrontWheel.setSpeed(ความเร็วล้อ); RightBackWheel.setSpeed(0); } เป็นโมฆะ moveLeftBackward () { LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed(0); ล้อหน้าขวา.setSpeed(0); RightBackWheel.setSpeed(-ความเร็วล้อ); } โมฆะ stopMoving () { LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed(0); ล้อหน้าขวา.setSpeed(0); RightBackWheel.setSpeed(0); }
ขั้นตอนที่ 4: Appinventor
แอพ appinventor ใหม่พร้อมฟังก์ชันการทำงานที่แตกต่างและเรียบง่ายกว่า (ไม่มีการบันทึก)
กรุณาส่งข้อความและฉันส่งถึงคุณ - การอัปโหลดล้มเหลว
ดูแล.
แนะนำ:
PWM พร้อม ESP32 - Dimming LED พร้อม PWM บน ESP 32 พร้อม Arduino IDE: 6 ขั้นตอน

PWM พร้อม ESP32 | Dimming LED พร้อม PWM บน ESP 32 พร้อม Arduino IDE: ในคำแนะนำนี้เราจะดูวิธีสร้างสัญญาณ PWM ด้วย ESP32 โดยใช้ Arduino IDE & โดยทั่วไปแล้ว PWM จะใช้เพื่อสร้างเอาต์พุตแอนะล็อกจาก MCU ใดๆ และเอาต์พุตแอนะล็อกนั้นอาจเป็นอะไรก็ได้ระหว่าง 0V ถึง 3.3V (ในกรณีของ esp32) & จาก
หุ่นยนต์ทรงตัว / หุ่นยนต์ 3 ล้อ / หุ่นยนต์ STEM: 8 ขั้นตอน

หุ่นยนต์ทรงตัว / หุ่นยนต์ 3 ล้อ / หุ่นยนต์ STEM: เราได้สร้างหุ่นยนต์ทรงตัวแบบผสมผสานและ 3 ล้อสำหรับใช้ในการศึกษาในโรงเรียนและโปรแกรมการศึกษาหลังเลิกเรียน หุ่นยนต์นี้ใช้ Arduino Uno, ชิลด์แบบกำหนดเอง (รายละเอียดการก่อสร้างทั้งหมดที่มีให้), ชุดแบตเตอรี่ Li Ion (ข้อจำกัดทั้งหมด
หุ่นยนต์ FPV Rover ที่ควบคุมด้วย Wi-Fi (พร้อม Arduino, ESP8266 และ Stepper Motors): 11 ขั้นตอน (พร้อมรูปภาพ)

หุ่นยนต์ FPV Rover ที่ควบคุมด้วย Wi-Fi (พร้อม Arduino, ESP8266 และ Stepper Motors): คำแนะนำนี้แสดงวิธีออกแบบหุ่นยนต์โรเวอร์สองล้อที่ควบคุมจากระยะไกลผ่านเครือข่าย wi-fi โดยใช้ Arduino Uno ที่เชื่อมต่อกับโมดูล Wi-Fi ของ ESP8266 และสเต็ปเปอร์มอเตอร์สองตัว หุ่นยนต์สามารถควบคุมได้จากการท่องอินเทอร์เน็ตทั่วไป
หุ่นยนต์ Mecanum Wheel - ควบคุมด้วย Bluetooth: 5 ขั้นตอน (พร้อมรูปภาพ)

หุ่นยนต์ Mecanum Wheel - ควบคุมด้วยบลูทูธ: ตั้งแต่จำความได้ ฉันก็อยากจะสร้างหุ่นยนต์ล้อ Mecanum มาโดยตลอด แพลตฟอร์มหุ่นยนต์ล้อ mecanum ที่มีจำหน่ายในท้องตลาดมีราคาแพงเกินไปสำหรับฉัน ดังนั้นฉันจึงตัดสินใจสร้างหุ่นยนต์ของฉันตั้งแต่เริ่มต้น ไม่มีหุ่นยนต์ตัวอื่นที่มีล้อ mecanum
กลไก กริปเปอร์ หุ่นยนต์ Omni Wheel (แนวคิด): 7 ขั้นตอน

กลไก กริปเปอร์ หุ่นยนต์ Omni Wheel (แนวคิด): นี่คือมือจับหุ่นยนต์ Omni Wheel และมีวัตถุประสงค์เพื่อปรับปรุงกลไกกริปเปอร์ของหุ่นยนต์ผ่านการใช้ล้อ (ซึ่งตรงกับธีมของการประกวดครั้งนี้) และเป็นข้อพิสูจน์แนวคิดผ่านโมเดล Solidworks แต่ฉันไม่มีทรัพยากรและ