
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:01



Mecanum Robot - Projek yang ingin saya bina sejak saya melihatnya di blog mekatronik ganjaran Dejan: howtomechatronics.com
Dejan benar-benar membuat pekerjaan yang baik merangkumi semua aspek dari perkakasan, percetakan 3D, elektronik, kod dan aplikasi Android (pencipta Aplikasi MIT)
Ini adalah projek baik pulih yang menyegarkan semua kemahiran pembuat.
Saya mempunyai sedikit perubahan yang perlu dilakukan pada projek-projek tersebut
Saya tidak mahu menggunakan PCB khas yang dia gunakan, tetapi perisai GRBL lama yang saya ada di rumah.
Saya mahu menggunakan BlueTooth
Jadi:
Bekalan
Arduino Uno + GRBL Shield
Motor stepper
Modul HC-06 BlueTooth
Bateri Lipo 12V
Langkah 1: Perkakasan


Mencetak roda dan memasangnya seperti di sini:
Menyambungkan 4 motor Stepper ke casis (dalam kes saya laci yang tidak digunakan ke atas)
Menghala kabel ke bahagian atas robot.
Langkah 2: Elektronik



Saya menggunakan modul HC-06 BT saya, Bahagian yang paling sukar adalah menetapkan pelindung GRBL untuk berfungsi dengan 4 motor Stepper kerana tidak ada panduan yang baik untuk itu, Ada keperluan untuk meletakkan Pelompat seperti yang dapat dilihat pada gambar yang dilampirkan, untuk membuat "Alat" keluaran perisai untuk juga mengendalikan motor stepper. juga perlu meletakkan Jumper "Enable"
pendawaian 4 stepper dan itu sahaja.
Saya juga membekalkan kuasa dari bateri 12V - dua stes - satu untuk Arduino dan satu untuk GRBl Shield
Langkah 3: Kod Arduino
/ * === Arduino Mecanum Wheels Robot === Kawalan telefon pintar melalui Bluetooth oleh Dejan, www. HowToMechatronics.com Perpustakaan: RF24, www. HowToMechatronics.com AccelStepper oleh Mike McCauley: www. HowToMechatronics.com
* / / * 2019-11-12 Gilad Meller (https://www.keerbot.com - ubah kod untuk berfungsi dengan pelindung motor GRBL arduino Motor stepper di pelindung dipetakan sebagai (langkah / arah): 2/5 3 / 6 4/7 12/13 menggunakan pemacu A4988 12V
Kod Dejan menggunakan SoftwareSerial dan saya akan menggunakan pin RX, TX standard (0, 1) dari Arduino Uno Catatan: Pastikan untuk memasang pin RX TX semasa menaikkan lakaran ke arduino atau muat naik akan gagal.
* / #sertakan
// Tentukan motor stepper dan pin yang akan digunakan AccelStepper LeftBackWheel (1, 2, 5); // (Jenis: pemandu, LANGKAH, DIR) - Stepper1 AccelStepper LeftFrontWheel (1, 3, 6); // Stepper2 AccelStepper RightBackWheel (1, 4, 7); // Stepper3 AccelStepper RightFrontWheel (1, 12, 13); // Stepper4
int masukByte = 0, c; // untuk data siri masuk int wheelSpeed = 100;
batal persediaan () {Serial.begin (9600); // membuka port bersiri, menetapkan kadar data hingga 9600 bps // Tetapkan nilai awal untuk stepper LeftFrontWheel.setMaxSpeed (600); LeftBackWheel.setMaxSpeed (600); RightFrontWheel.setMaxSpeed (600); RightBackWheel.setMaxSpeed (600);
}
gelung void () {if (Serial.available ()> 0) {// baca byte masuk: incomingByte = Serial.read ();
c = masukBait; suis (c) {kes 71: Serial.println ("Saya menerima Putar ke kanan W"); rotateRight (); rehat; kes 65: Serial.println ("Saya menerima Putar kiri Q"); pusing kiri(); rehat; kes 1: Serial.println ("Saya menerima BK / LFT"); moveRightBackward (); rehat; kes 2: Serial.println ("Saya menerima BK"); bergerak ke belakang(); rehat; kes 3: Serial.println ("Saya menerima BK / RT"); moveRightBackward (); rehat; kes 4: Serial.println ("Saya menerima KIRI"); moveSidewaysLeft ();
rehat; kes 5: Serial.println ("Saya menerima STOP"); stopMoving (); rehat; kes 6: Serial.println ("Saya menerima RT"); moveSidewaysRight (); rehat; kes 7: Serial.println ("Saya menerima FWD / LFT"); bergerakLeftForward (); rehat; kes 8: Serial.println ("Saya menerima FWD"); moveForward (); rehat; kes 9: Serial.println ("Saya menerima FWD / RT"); moveRightForward (); rehat; lalai: Serial.print ("Bukan arahan"); Serial.println (masukByte, DEC); rehat; } } //bergerak ke belakang(); bergerakRobot ();
}
kekosongan bergerakRobot () {LeftBackWheel.runSpeed (); LeftFrontWheel.runSpeed (); RightFrontWheel.runSpeed (); RightBackWheel.runSpeed (); }
batal moveForward () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (wheelSpeed); } batal bergerakBackward () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (-wheelSpeed); } kekosongan bergerakSidewaysRight () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (wheelSpeed); } batal moveSidewaysLeft () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (-wheelSpeed); } void rotateLeft () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (wheelSpeed); } void rotateRight () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (-wheelSpeed); } kekosongan bergerakRightForward () {LeftFrontWheel.setSpeed (wheelSpeed); LeftBackWheel.setSpeed (0); RightFrontWheel.setSpeed (0); RightBackWheel.setSpeed (wheelSpeed); } kekosongan bergerakRightBackward () {LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed (-wheelSpeed); RightFrontWheel.setSpeed (-wheelSpeed); RightBackWheel.setSpeed (0); } batal moveLeftForward () {LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed (wheelSpeed); RightFrontWheel.setSpeed (wheelSpeed); RightBackWheel.setSpeed (0); } kekosongan bergerakLeftBackward () {LeftFrontWheel.setSpeed (-wheelSpeed); LeftBackWheel.setSpeed (0); RightFrontWheel.setSpeed (0); RightBackWheel.setSpeed (-wheelSpeed); } batal stopMoving () {LeftFrontWheel.setSpeed (0); LeftBackWheel.setSpeed (0); RightFrontWheel.setSpeed (0); RightBackWheel.setSpeed (0); }
Langkah 4: Appinventor
Aplikasi penemu baru dengan fungsi yang berbeza dan lebih sederhana (Tanpa Rakaman)
Sila hantarkan msg dan saya hantarkan kepada anda - muat naik gagal.
Jaga diri.
Disyorkan:
CNC Servo Stepper (GRBL Capable): 4 Langkah

CNC Servo Stepper (GRBL Capable): Projek ini adalah pengawal motor yang agak mudah yang membolehkan penggunaan motor DC berkuasa tinggi dengan GRBL untuk mengendalikan skru plumbum mesin CNC. Lihat video di atas untuk demonstrasi alat kawalan ini pada mesin CNC buatan rumah saya
Stepper Motor terkawal Motor Stepper - Motor Stepper Sebagai Pengekod Rotary: 11 Langkah (dengan Gambar)

Stepper Motor terkawal Motor Stepper | Stepper Motor Sebagai Rotary Encoder: Adakah beberapa motor stepper berbaring dan mahu melakukan sesuatu? Dalam Instructable ini, mari gunakan motor stepper sebagai rotary encoder untuk mengawal kedudukan motor stepper lain menggunakan mikrokontroler Arduino. Jadi tanpa basa-basi lagi, mari kita
Lengan Robot DIY 6 Paksi (dengan Stepper Motors): 9 Langkah (dengan Gambar)

DIY Robot Arm 6 Axis (dengan Stepper Motors): Setelah lebih dari satu tahun kajian, prototaip dan pelbagai kegagalan saya berjaya membina robot besi / aluminium dengan 6 darjah kebebasan yang dikendalikan oleh motor stepper. Bahagian yang paling sukar adalah reka bentuk kerana Saya ingin mencapai 3 objektif asas
Robot Rover FPV terkawal Wi-fi (dengan Arduino, ESP8266 dan Stepper Motors): 11 Langkah (dengan Gambar)

Wi-fi terkawal FPV Rover Robot (dengan Arduino, ESP8266 dan Stepper Motors): Instruksional ini menunjukkan cara merancang rover robot roda dua yang dikendalikan dari jarak jauh melalui rangkaian wi-fi, menggunakan Arduino Uno yang disambungkan ke modul Wi-fi ESP8266 dan dua motor stepper. Robot boleh dikendalikan dari kening internet biasa
Robot Roda Mecanum - Dikawal Bluetooth: 5 Langkah (dengan Gambar)

Mecanum Wheel Robot - Bluetooth Dikendalikan: Oleh kerana saya ingat saya selalu ingin membina robot roda mecanum. Platform robot roda mecanum yang terdapat di pasaran agak mahal untuk saya, jadi saya memutuskan untuk membina robot saya dari awal. Tidak seperti robot roda roda meacanum lain