Terus Tutup kepada Saya (Projek Robot digilent): 6 Langkah

Terus Tutup kepada Saya (Projek Robot digilent): 6 Langkah

Isi kandungan:

Anonim

Ini adalah projek robot pertama yang kami ingin tunjukkan. Rancangan kami ialah membina robot yang boleh bergerak dalam lingkungan tertentu. Tujuannya adalah untuk menjadikan hidup senior lebih mudah. Robot perlu membawa perkara-perkara kecil, penting kepada titik tertentu.

Ia adalah versi pertama projek.

Bekalan:

Langkah 1: Bahan

Kami menggunakannya

-a CipKit Max32

- a roomba irobot

- sebuah kompas digital Pmod HMC5883L

- MRF24WG0MA PmodWifi

- 4 keping Pencari Range Ultrasonik PmodMAXSONAR LV-EZ1

- 4 buah saluran mosfet n

- 8 keping 200 Ohm perintang

- papan roti

- Sesetengah wayar untuk menyambung bahan

dan akhirnya semua perkara ini terletak dalam kotak plastik di bahagian atas robot

Langkah 2: Teori Asas

Pemetaan

Robot mengendalikan persekitaran dalam sistem koordinat Descartes. Di mana robot terletak, titik ini adalah (0,0) point.We membayangkan mesh grid untuk sistem koordinat dan robot harus berada di tengah-tengah grid. Satu grid adalah 35 cm, iaitu diameter robot. Kami memanggil grid sebagai nod. Robot peta node jirannya dan menentukan apakah ia bebas atau tidak. Jika ia bebas, rekod robot itu dan memilih nod bebas dari persekitarannya untuk bergerak ke sana. Aktiviti ini berterusan sehingga tidak ada nod yang membolehkan. Akhirnya persekitaran dipetakan. Kami membina pangkalan data dari nod. Satu nod mengandungi sepasang (x, y) dan nod tetangga yang ada. Menurut pangkalan data, kita boleh mencari di antara mana-mana dua titik laluan terpendek dengan algoritma carian heuristik (lebar pertama) dan salah satu daripada mereka akan menjadi kedudukan robot.

Langkah 3: Modul ChipKit

CipKit adalah modul utama kerana ia mengendalikan pergerakan robot dan memproses data dari sensor. Ia membina dan mengekalkan pangkalan data. Kami memerlukan lebih banyak memori untuk membina pangkalan data dari nod, daripada yang sebenarnya kita ada. Kerana ia pertama kali kita overdefined ukuran tumpukan.

#define CHANGE_HEAP_SIZE (size) __asm__ volatile (" t.globl _min_heap_size n t.equ _min_heap_size," #size " n")

CHANGE_HEAP_SIZE (0x5000); extern __attribute __ ((seksyen ("linker_defined"))) char _heap; extern __attribute __ ((seksyen ("linker_defined"))) char _min_heap_size;

Langkah 4: Sensor

Julat ukur satu sensor adalah 15.24 cm - 6.45 m. Kami menggunakan 4 sensor dan jika kami membuat mereka bekerja secara serentak, mereka akan mengelirukan satu sama lain. Itulah sebabnya kita menggunakan litar mosfet N chanel.

Proses dari datareading:

- pertama sekali tiada sensor mendapat kuasa kerana semua mosfet aktif tinggi.

- salah satu MOSFET set rendah supaya sensor mendapat kuasa

- ping dia sensor RX

- baca data

- MOSFET ditetapkan tinggi

Langkah 5: Roomba Robot

Ini adalah bahagian paling mudah projek. Komunikasi antara robot dan chipKit adalah komunikasi bersiri. Ini menggunakan pin RX dan TX. Terdapat bateri di dalam robot. CipKit mendapat kuasa dari bateri. Dalam gambar, garis yang diketengahkan menunjukkan pin berguna. Komunikasi antara robot dan chipKit tidak segerak. Robot boleh dikawal dengan kod operasi. Sebagai contoh jika 137 opcode akan ditulis dengan parameter yang betul robot akan bergerak. Perpustakaan Roomba mengandungi kod opsyen ini.

Langkah 6: Sambungan Modul

Bateri robot disambungkan ke output 5V chipKit. Salah satu tanah robot disambungkan bersama. Kedua-dua pin komunikasi bersambung disambungkan ke chipKit: RX robot (pin 1) disambungkan ke chipKit's TX1 (pin 18), dan TX robot (pin 2) ke chipKit's RX1 (pint 19).

4 Tanah MaxSONAR disambungkan ke tempat yang sama. Pins RX disambungkan ke 82, 79, 76, 73 pin. Pin PWM disambungkan ke 81, 78, 75, 72 pin. 4 mosfet membuktikan kuasa kepada anak-anak. Membanteras MOSFET kita boleh menghidupkan dan mematikan sonar.

PIN pintu MOSFET disambungkan ke pin 11, 8, 5, 2 dengan 200 Ohms 4 resistor. Sumber mosfets disambungkan ke pin 5 V sonar dan saliran mosfets menyambung ke bateri 5 V.

Kompas mempunyai pin SCL dan SDA, yang menyambung ke pin yang sama dengan SCL dan SDA yang sama.