Dan untuk ini kita perlukan:
-Arduino Uno
-2 gear
Ultrasonik Rangefinder HS-SR04
manik
orgglass
-dap-jumper wires
Pemandu enjin L298D
bateri terbenam
Bateri 6-12 V
roda
Dan sebagainya, untuk permulaan, anda perlu menyolder wayar ke sensor ultrasonik:
Kemudian anda perlu menyolder wayar (dengan output "ibu" sebelum dipotong) ke kotak gear. Daripada roda, saya mengambil penutup dari 5 liter liter dan terpaku kulit pada mereka untuk cengkaman yang lebih baik.
Sekarang anda perlu memotong bingkai dari plexiglass atau papan lapis, menyesuaikannya agar sesuai dengan keperluan anda, saya secara peribadi membuat ini:
Kemudian kita perlu berpegang pada bingkai kita: bateri (saya menggunakan bateri 4 1.5 V yang dipateri secara siri), pemandu motor, mahkota, kotak gear, sensor ultrasonik, seperti yang ditunjukkan dalam gambar:
Sebelum melekat arduino uno anda perlu memuat naik lakaran berikut kepadanya:
#define Trig 8
#define echo 9
const int in1 = 2; // IN4 pin 2
const int in2 = 4; // IN3 pin 4
int int in3 = 5; // IN2 pin 5
const int in4 = 7; // IN1 pin 7
int ENB1 = 3;
int ENA2 = 6;
batal persediaan ()
{
pinMode (Trig, OUTPUT); // keluar
pinMode (Echo, INPUT); // input
pinMode (in1, OUTPUT); / keluar ke L298n
pinMode (in2, OUTPUT); / keluar ke L298n
pinMode (in3, OUTPUT); / keluar ke L298n
pinMode (in4, OUTPUT); / keluar ke L298n
pinMode (ENB1, OUTPUT);
pinMode (ENA2, OUTPUT);
}
unsigned int impulseTime = 0;
unsigned int distance_sm = 0;
kekosongan gelung ()
{
digitalWrite (Trig, HIGH);
delayMicroseconds (10); // 10 10 mikrodetik
digitalWrite (Trig, LOW);
impulseTime = pulseIn (Echo, HIGH); // mengukur panjang nadi
distance_sm = impulseTime / 58; / Tukar kepada sentimeter
jika (distance_sm> 20) // jika jarak lebih daripada 20 sentimeter
{
digitalWrite (in1, HIGH);
kelewatan (300);
digitalWrite (in1, LOW);
digitalWrite (in2, LOW);
digitalWrite (in3, HIGH);
kelewatan (300);
digitalWrite (in3, LOW);
digitalWrite (in4, LOW);
analogWrite (ENB1,250);
analogWrite (ENA2,250);
}
lain
{
digitalWrite (in1, LOW);
digitalWrite (in2, LOW);
digitalWrite (in3, LOW);
digitalWrite (in4, LOW);
kelewatan (500);
digitalWrite (in1, LOW);
digitalWrite (in2, HIGH);
digitalWrite (in3, LOW);
digitalWrite (in4, HIGH);
analogWrite (ENB1,250);
analogWrite (ENA2,250);
kelewatan (200);
digitalWrite (in1, LOW);
digitalWrite (in2, HIGH);
digitalWrite (in3, HIGH);
digitalWrite (in4, LOW);
analogWrite (ENB1,250);
analogWrite (ENA2,250);
kelewatan (100);
}
kelewatan (50);
}
Selepas memuat lakaran, anda boleh melekat arduino dan mahkota:
Sekarang anda perlu menyambung semua komponen mengikut skema berikut:
Pertama sekali, kami menyambung sensor ultrasonik:
Enjin:
Pemakanan:
Kami menyambung pemandu enjin ke arduino:
Pada akhir robot kami, gam manik:
Nah, itu semua milik kita robot itu sudah siap, ia tetap hanya untuk menyambungkan kuasa yang selebihnya dengan betul, jadi kami memberi makan arduino dengan "mahkota" dengan menyambung + ke UIN, dan ke GND, jika sambungan ke arduino betul, LED merah harus menyala:
Kini kita menyambung - "penumpuk" kami kepada GND, LED merah juga harus menyala pada pemandu:
jika enjin mula berputar berlawanan arah lawan, maka semuanya disambungkan dengan betul dan apabila menawarkan halangan, mereka akan mula berputar dengan cara yang berbeza:
Ia hanya untuk mengujinya dalam "medan"
Uji dan bina video:
Terima kasih semua untuk perhatian anda!