Isi kandungan:

Papan Tulis Bilik Darjah Arduino Follower Wallrides: 8 Steps (with Pictures)
Papan Tulis Bilik Darjah Arduino Follower Wallrides: 8 Steps (with Pictures)

Video: Papan Tulis Bilik Darjah Arduino Follower Wallrides: 8 Steps (with Pictures)

Video: Papan Tulis Bilik Darjah Arduino Follower Wallrides: 8 Steps (with Pictures)
Video: Controlling 32 Servo Using PCA9685 and Arduino: V3 2024, November
Anonim
Image
Image

Mengikuti garis di tanah terlalu membosankan!

Kami telah berusaha untuk melihat sudut yang berbeza pada pengikut baris dan membawa mereka ke pesawat lain - ke papan putih sekolah.

Lihatlah apa yang datang!

Langkah 1: Apa Yang Anda Perlu?

Bagaimana Berkumpul? Pasang Casis
Bagaimana Berkumpul? Pasang Casis

Untuk satu robot perlumbaan:

Mekanik:

1 x 2WD casis Robot miniQ; Ia adalah platform pelbagai fungsi untuk membuat robot roda dua yang mudah

Motor gear mikro 2 x 6V dengan nisbah pengurangan 1: 150; Motor gear yang disertakan dengan platform robot miniQ mempunyai nisbah gear 1:50 dan terlalu pantas. Mereka harus diganti dengan motor yang lebih kuat misalnya dengan nisbah gear 1: 150 atau lebih tinggi. Semakin tinggi nisbah gear, semakin perlahan robot menunggang di papan putih tetapi semakin kecil kemungkinan roda tergelincir

4 x magnet Neodymium; Anda memerlukan magnet ketebalan 3mm dengan diameter 12mm (bagi mereka yang mempunyai bentuk bulat) atau dengan sisi 12mm (bagi mereka yang mempunyai bentuk segi empat sama). Magnet juga harus mempunyai lubang untuk skru mesin dengan kepala counterersunk biasanya untuk yang M3. Kadang kala pengeluar menentukan kekuatan gandingan magnet. Beratnya antara 2kg hingga 2.4kg

Elektronik:

1 x Arduino UNO; Komputer on-board. Platform prototaip yang paling popular

1 x modul Octoliner; Mata dan lampu depan bot lumba anda. Octoliner adalah sensor talian sejuk yang terdiri daripada 8 sensor inframerah berasingan yang dikawal melalui antara muka I2C

1 x Perisai motor; Hampir semua modul sesuai dengan anda. Saya menggunakan analog ini berdasarkan cip L298p

1 x 2-sel 7.4V LiPo bateri; Ia dapat memberi arus besar bahawa motor perlu mengatasi daya tarikan magnet. Bateri 2 sel mempunyai voltan dalam lingkungan 7.4V hingga 8.4V. Cukup untuk motor 6V dan pengatur voltan terbina dalam Arduino Board. Mana-mana kapasiti boleh dipilih. Bateri yang lebih besar, semakin lama robot memandu tetapi perhatikan bahawa bateri yang terlalu besar boleh menjadi berat. Kapasiti dalam julat 800mAh hingga 1300mAh adalah optimum

Pelbagai:

4 x wayar Lelaki-Perempuan;

4 x M3 spacer atau lelaki-Perempuan dengan jarak 10mm;

3 x M3 spacer atau lelaki-Perempuan dengan panjang 25mm atau lebih;

4 x skru kepala rata kaunter M3x8;

Skru Nilon 1 x M3;

1 x M3 Nilon hex Nilon;

Sebarang skru M3 dan kacang hex

Untuk kelas:

Papan putih magnetik tergantung di dinding;

Penanda papan magnet hitam tebal;

Pengecas bateri LiPo khas atau pengecas berganda jika anda ingin membuat banyak robot dan mengecasnya secara berasingan

Langkah 2: Bagaimana Berkumpul? Pasang Casis

Pada mulanya, anda perlu memasang platform casis miniQ yang menggantikan motor dari kit dengan yang lebih berkuasa dengan nisbah gear 1: 150. Jangan lupa untuk memateri wayar ke kenalan motor!

Langkah 3: Bagaimana Berkumpul? Pasang Magnet

Bagaimana Berkumpul? Pasang Magnet
Bagaimana Berkumpul? Pasang Magnet

Pasang magnet pada platform miniQ. Gunakan skru M3x10 standoffs, M3x8 atau M3x6 rata dan mur M3. Lubang pemasangan yang diperlukan ditunjukkan dalam gambar.

Itu penting!

Panjang penyangga mestilah tepat 10 mm. Setelah memasang magnet, uji platform di papan putih. Keempat-empat magnet harus bersebelahan dengan papan magnet dan tayar getah pada roda platform miniQ harus dimuat terlebih dahulu dan memberikan sedikit geseran dengan permukaan papan.

Gerakkan robot secara manual di seluruh papan. Semasa perjalanan, magnet tidak boleh keluar dari papan. Sekiranya ada magnet yang keluar bermakna tayar getah pada roda dimuat secara maksimum. Dalam kes ini, tingkatkan jarak 10mm dari semua kebuntuan sebanyak 1 atau 2 mm dengan menambahkan sepasang mesin basuh M3 dan cuba lagi.

Langkah 4: Bagaimana Berkumpul? Tambah Elektronik

Bagaimana Berkumpul? Tambah Elektronik
Bagaimana Berkumpul? Tambah Elektronik

Pasang Arduino UNO Board di platform menggunakan penyekat M3x25, skru M3 dan mur M3. Jangan gunakan penutup pendek, tinggalkan sedikit ruang di bawah papan Arduino untuk wayar dan bateri.

Pasang perisai Motor di Arduino UNO Board.

Pasang modul Octoliner. Tekan ke platform menggunakan skru dan mur N3 nilon.

Itu penting!

Jangan gunakan pengikat logam untuk memasang Octoliner. Beberapa lubang pelekap pada papan pemecah disolder dan digunakan sebagai pin IO. Untuk mengelakkan litar pintas, gunakan pengikat plastik, misalnya, nilon.

Langkah 5: Bagaimana Berkumpul? Pendawaian

Bagaimana Berkumpul? Pendawaian
Bagaimana Berkumpul? Pendawaian

Pautkan semua komponen elektronik seperti yang ditunjukkan dalam rajah. Modul Octoliner dihubungkan melalui 4 wayar (GND, 5V, SDA, SCL) ke Arduino UNO. Sambungkan motor ke pelindung Motor. Bateri LiPo dihubungkan ke pad sentuhan bekalan kuasa luaran pada perisai Motor serta ke pin VIN pada papan Arduino. Daripada menggunakan pin VIN, anda boleh menggunakan palam kuasa 5.5 mm x 2.1 mm di papan.

Itu penting!

Semasa menggunakan pelindung Motor, wayar tidak diperlukan. Dua saluran motor dikawal oleh 4 pin. 2 pin PWM bertanggungjawab untuk kelajuan putaran sementara 2 pin DIR untuk arah putaran. Biasanya, mereka sudah dihubungkan dengan pin Papan Arduino tertentu dan nombor indeksnya mungkin berbeza bergantung pada pengeluar perisai. Sebagai contoh, untuk pelindung Motor saya, nombor adalah D4 D5 (DIR dan PWM untuk saluran pertama) dan D7 D6 (DIR dan PWM untuk saluran kedua). Untuk perisai Motor Arduino yang asal, nombor pin sesuai dengan D12 D3 (DIR dan PWM untuk saluran pertama) dan D13 D11 (DIR dan PWM untuk saluran kedua).

Itu penting!

Bateri Hobi LiPo tidak mempunyai Papan perlindungan polariti terbalik! Kekurangan kenalan positif dan negatif secara tidak sengaja akan mengakibatkan kerosakan bateri kekal atau kebakaran.

Langkah 6: Bagaimana Mengaturcara? XOD

Untuk membuat program untuk robot perlumbaan seperti itu lebih mudah daripada menyusunnya.

Dalam semua projek saya, saya menggunakan persekitaran pengaturcaraan visual XOD yang membolehkan saya membuat program Arduino secara grafik tanpa menulis kod. Persekitaran ini sangat sesuai untuk prototaip peranti pantas atau algoritma pembelajaran pembelajaran. Ikuti laman web dokumentasi XOD untuk membaca lebih lanjut.

Untuk memprogramkan robot ini, anda hanya perlu menambahkan satu perpustakaan amperka / octoliner ke ruang kerja XOD anda. Ia diperlukan untuk bekerja dengan sensor saluran lapan saluran.

Langkah 7: Bagaimana Mengaturcara? Tampalan

Bagaimana Program? Tampalan
Bagaimana Program? Tampalan

Program ini berdasarkan prinsip operasi pengawal PID. Sekiranya anda ingin mengetahui apakah pengawal PID dan bagaimana ia berfungsi, anda boleh membaca artikel lain mengenai topik ini.

Lihatlah tampalan dengan program robot. Mari lihat node apa yang terdapat di dalamnya dan bagaimana semuanya berfungsi.

garis octoliner

Ini adalah simpul permulaan cepat dari perpustakaan amperka / octoliner XOD yang mewakili modul Octoliner yang mengesan garis. Ia mengeluarkan "nilai penjejakan garis" yang terletak dalam julat -1 hingga 1. Nilai 0 menunjukkan bahawa garis berada pada kedudukan tengah relatif terhadap sensor inframerah pada papan Octoliner (antara CH3 dan CH4). Nilai -1 sepadan dengan kedudukan kiri ekstrim (CH0) sementara nilai 1 ke kanan ekstrim (CH1). Pada but boot memulakan sensor optocoupler dan menetapkan parameter kecerahan dan kepekaan lalai mereka. Input untuk node ini adalah alamat I2C peranti (ADDR untuk papan Octoliner itu 0x1A) dan kadar kemas kini nilai penjejakan garis (UPD), saya menetapkannya berterusan.

Nilai penjejakan garis dimasukkan terus ke simpul pengawal pid.

pengawal pid

Node ini melaksanakan kerja pengawal PID di XOD. Nilai sasaran (TARG) untuknya adalah 0. Ini adalah keadaan ketika garis berada tepat di tengah-tengah robot. Sekiranya nilai penjejakan garis adalah 0, pengawal PID ditetapkan semula melalui pin RST. Sekiranya nilai penjejakan garis berbeza dari 0, pengawal PID mengubahnya menggunakan pekali Kp, Ki, Kd menjadi nilai kelajuan motor. Nilai pekali dipilih secara eksperimen dan sama dengan 1, 0.2 dan 0.5. Kadar kemas kini (UPD) pengawal PID ditetapkan kepada berterusan.

Nilai yang diproses PID-pengawal dikurangkan dari 1 dan ditambahkan ke 1. Ia dilakukan untuk menyegerakkan motor, untuk menjadikannya berputar ke arah yang berlawanan ketika garis hilang. Nilai 1 dalam nod ini mewakili kelajuan maksimum motor. Anda boleh mengurangkan kelajuan dengan memasukkan nilai yang lebih rendah.

h-jambatan-dc-motor

Beberapa nod ini bertanggungjawab untuk mengawal motor robot kiri dan kanan. Di sini tetapkan nilai pin PWM dan DIR di mana perisai Motor anda beroperasi.

Nyalakan patch dan cuba bot lumba anda. Sekiranya anda betul-betul mengikuti arahan pemasangan, anda tidak perlu menukar tampalan atau menyesuaikan pengawal PID. Tetapan yang ditentukan cukup optimum.

Program selesai boleh didapati di perpustakaan gabbapeople / whiteboard-race

Langkah 8: Pameran dan Petua

Disyorkan: