Mündəricat:

Arduino istifadə edərək ağıllı bir robot necə hazırlanır: 4 addım
Arduino istifadə edərək ağıllı bir robot necə hazırlanır: 4 addım

Video: Arduino istifadə edərək ağıllı bir robot necə hazırlanır: 4 addım

Video: Arduino istifadə edərək ağıllı bir robot necə hazırlanır: 4 addım
Video: Yasomi Galaxy 2 Ev Təhlükəsizliyi Wifi 360 Derece Full Hd 1080p Kamera Baxışının Quraşdırılması 2024, Noyabr
Anonim
Image
Image

Salam,

Mən arduino istehsalçısıyam və bu dərsdə sizə arduino istifadə edərək ağıllı robotun necə hazırlanacağını göstərəcəyəm.

Dərsliyimi bəyənmisinizsə, arduino istehsalçısı adlı youtube kanalımı dəstəkləməyi düşünün

Təchizat

Ehtiyac duyacağınız şeylər:

1) arduino uno

2) ultrasəs sensoru

3) Bo motor

4) təkərlər

5) dondurma çubuqları

6) 9v batareya

Addım 1: BAĞLANTILAR

YERDƏ BÜTÜN BİLEŞENLERİ YAPIŞTIRIN
YERDƏ BÜTÜN BİLEŞENLERİ YAPIŞTIRIN

Bundan sonra, bütün təchizatları indi yuxarıda göstərilən sxemə uyğun olaraq bağlamağa başlamalısınız

Addım 2: BÜTÜN TƏMİRLƏRİ YERİNƏ yapışdırın

TAMAM,

İndi yuxarıdakı şəkildə göstərildiyi kimi hər şeyi yerinə bağlayın

Addım 3: PROGRAMLAMA

İndi,

Aşağıdakı kodla lövhəni proqramlaşdırmağa başlayın

// ARDUINO OBSTACLE AVOIDING CAR //// Kodu yükləməzdən əvvəl lazımi kitabxananı quraşdırmalısınız // // AFMotor Library https://learn.adafruit.com/adafruit-motor-shield/library-install // // NewPing Kitabxanası https://github.com/livetronic/Arduino-NewPing// // Servo Kitabxanası https://github.com/arduino-libraries/Servo.git // // Kitabxanaları quraşdırmaq üçün eskizə keçin >> Daxil edin Kitabxana >>. ZIP Fayl əlavə et >> Yuxarıdakı bağlantılardan Yüklənmiş ZIP fayllarını seçin //

#daxil edin

#daxil edin

#daxil edin

#təyin TRIG_PIN A0

#təyin ECHO_PIN A1 #MAX_DISTANCE 200

#define MAX_SPEED 150 // DC mühərriklərinin sürətini təyin edir

#MAX_SPEED_OFFSET təyin edin 20

NewPing sonar (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);

AF_DCMotor motor1 (1, MOTOR12_1KHZ);

// AF_DCMotor motor2 (2, MOTOR12_1KHZ); // AF_DCMotor motor3 (3, MOTOR34_1KHZ); AF_DCMotor motor4 (4, MOTOR34_1KHZ); Servo xidməti;

boolean goForward = false;

int məsafəsi = 100; int speedSet = 0;

boş quraşdırma () {

myservo.attach (10);

myservo.write (115); gecikmə (1000); məsafə = readPing (); gecikmə (100); məsafə = readPing (); gecikmə (100); məsafə = readPing (); gecikmə (100); məsafə = readPing (); gecikmə (100); }

boşluq döngəsi () {

int məsafəsiR = 0; int məsafəsiL = 0; gecikmə (40); if (məsafə <= 15) {moveStop (); gecikmə (100); moveBackward (); gecikmə (300); moveStop (); gecikmə (200); məsafəR = baxmaqRight (); gecikmə (300); məsafəL = baxmaqLeft (); gecikmə (300);

əgər (məsafəR> = məsafəL)

{ sağa dönün(); moveStop (); } başqa {turnLeft (); moveStop (); }} başqa {moveForward (); } məsafə = readPing (); }

int lookRight ()

{myservo.write (50); gecikmə (650); int məsafəsi = readPing (); gecikmə (100); myservo.write (115); dönüş məsafəsi; }

int lookLeft ()

{myservo.write (170); gecikmə (650); int məsafəsi = readPing (); gecikmə (100); myservo.write (115); dönüş məsafəsi; gecikmə (100); }

int readPing () {

gecikmə (70); int cm = sonar.ping_cm (); əgər (cm == 0) {sm = 250; } sm qaytar; }

void moveStop () {

motor1.run (Çıxar); //motor2.run(LEŞDİR); //motor3.run(LEŞDİR); motor4.run (buraxın); } void moveForward () {

əgər (! İrəli gedir)

{goForward = doğru; motor1. qaçış (İLƏ); //motor2.run(İLDƏN); //motor3.run(İLDƏ); motor4.run (İLƏ); üçün (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) // batareyaları çox tez yükləməmək üçün sürəti yavaş -yavaş artırın {motor1.setSpeed (speedSet); //motor2.setSpeed(speedSet); //motor3.setSpeed(speedSet); motor4.setSpeed (speedSet); gecikmə (5); }}}

void moveBackward () {

goForward = yanlış; motor1.run (arxaya); //motor2.run(Arxa); //motor3.run(Arxa); motor4.run (arxaya); üçün (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) // batareyaları çox tez yükləməmək üçün sürəti yavaş -yavaş artırın {motor1.setSpeed (speedSet); //motor2.setSpeed(speedSet); //motor3.setSpeed(speedSet); motor4.setSpeed (speedSet); gecikmə (5); }}

void turnRight () {

motor1.run (arxaya); //motor2.run(Arxa); //motor3.run(İLDƏ); motor4.run (İLƏ); gecikmə (350); motor1. qaçış (İLƏ); //motor2.run(İLƏ) //motor3.run(İLƏ) motor4.run (İLƏ); } boş dönməLeft () {motor1.run (İLƏ); //motor2.run(İLDƏN); //motor3.run(Arxa); motor4.run (arxaya); gecikmə (350); motor1. qaçış (İLƏ); //motor2.run(İLDƏN); //motor3.run(İLƏ) motor4.run (İLƏ); }

Tövsiyə: