Мазмұны:

Arduino көмегімен қимылмен басқарылатын робот: 7 қадам
Arduino көмегімен қимылмен басқарылатын робот: 7 қадам

Бейне: Arduino көмегімен қимылмен басқарылатын робот: 7 қадам

Бейне: Arduino көмегімен қимылмен басқарылатын робот: 7 қадам
Бейне: Arduino көмегімен потенциометр көмегімен серво моторды басқарыңыз 2024, Қараша
Anonim
Arduino көмегімен қимылмен басқарылатын робот
Arduino көмегімен қимылмен басқарылатын робот

Роботтар құрылыс, әскери, өндірістік, монтаждау сияқты көптеген салаларда қолданылады. Роботтар автономды немесе жартылай автономды болуы мүмкін. Автономды роботтар адамның араласуын қажет етпейді және жағдайға сәйкес өз бетінше әрекет ете алады. Жартылай автономды роботтар адамдар берген нұсқауларға сәйкес жұмыс істейді. Бұл жартылай автономды құрылғыларды қашықтан басқару, телефон, қимыл және т.б. арқылы басқаруға болады. Біз бұрын веб-серверден басқаруға болатын бірнеше IoT негізіндегі роботтарды құрастырдық.

Бүгінгі мақалада біз Arduino, MPU6050 акселерометр, nRF24L01 трансивер жұбы және L293D қозғалтқыш драйвер модулін пайдаланып, қимылмен басқарылатын робот құрамыз. Біз бұл роботты екі бөлікке бөлеміз. Бірі - таратқыш, екіншісі - қабылдағыш. Таратқыштар бөлімі Arduino Uno, MPU6050 акселерометр мен гироскоптан және nRF24L01ден тұрады, ал алушы бөлімі Arduino Uno, nRF24L01, екі тұрақты ток қозғалтқышы мен L293D қозғалтқышынан тұрады. Таратқыш роботтың қимылына сәйкес қозғалатын роботты басқару үшін қашықтан әрекет етеді.

1 -қадам: Қажетті компоненттер

Қажетті компоненттер
Қажетті компоненттер
Қажетті компоненттер
Қажетті компоненттер
  • Arduino Uno (2)
  • NRF24L01 (2)
  • MPU6050DC қозғалтқышы (2)
  • L293D мотор драйвер модулі
  • Қамыр

MPU6050 акселерометрі мен гироскопы MPU6050 сенсорлық модулі-бұл толық 6 білікті (3 осьті акселерометр және 3 осьті гироскоп) микроэлектро-механикалық жүйе. MPU6050 сенсорлық модулінде чипте температура сенсоры бар. Микроконтроллерлермен және 3 осьті магнитометр, қысым сенсоры сияқты басқа сенсорлық құрылғылармен байланысу үшін I2C шинасы мен қосалқы I2C шинасының интерфейсі бар. MPU6050 сенсор модулі үдеуді, жылдамдықты, бағдарды, орын ауыстыруды және басқа да қозғалысты өлшеу үшін қолданылады. -байланысты параметрлер. Бұл сенсорлық модульде күрделі есептеулерді орындай алатын кіріктірілген цифрлық қозғалыс процессоры бар.

NRF24L01 трансивер модулі

nRF24L01 - бүкіл әлем бойынша 2,4 - 2,5 ГГц ISM диапазонына арналған бір чипті радио қабылдағыш. Трансивер толық интеграцияланған жиілік синтезаторынан, күшейткіштен, кристалды осциллятордан, демодулятордан, модулятордан және Enhanced ShockBurs протоколының қозғалтқышынан тұрады. Шығу қуаты, жиілік арналары және хаттаманы орнату SPI интерфейсі арқылы оңай бағдарламаланатын болады. Бұл трансивер модулінің жұмыс кернеуінің диапазоны 1,9 В -тан 3,6 В -қа дейін. Оның кіріктірілген қуатты төмендету және күту режимдері бар, бұл оны қуатты үнемдеуге және оңай іске асыруға мүмкіндік береді.

2 -қадам: Arduino көмегімен қолмен басқарылатын роботпен жұмыс

Arduino көмегімен қолмен басқарылатын роботпен жұмыс
Arduino көмегімен қолмен басқарылатын роботпен жұмыс
Arduino көмегімен қолмен басқарылатын роботпен жұмыс
Arduino көмегімен қолмен басқарылатын роботпен жұмыс

Бұл Arduino қимылды басқару машинасының жұмысын түсіну үшін, бұл жобаны екіге бөлейік. Бірінші бөлік - MPU6050 акселерометр датчигі сигналдарды қабылдағышқа (роботқа) Arduino және nRF таратқышы арқылы үздіксіз жіберетін таратқыш бөлігі (қашықтан басқару құралы).

Екінші бөлім - бұл nRF қабылдағышы жіберілген деректерді қабылдап, оларды Arduino -ға жіберетін Receiver бөлігі (Robot car), ол оларды әрі қарай өңдейді және сәйкесінше роботты қозғайды.

MPU6050 акселерометр датчигі X Y Z координаттарын оқиды және координаттарды Arduino -ға жібереді. Бұл жоба үшін бізге тек X және Y координаттары қажет. Содан кейін Arduino координаттардың мәндерін тексереді және деректерді nRF таратқышына жібереді. Берілген мәліметтерді nRF қабылдағышы қабылдайды. Қабылдағыш деректерді қабылдаушы тараптың Arduino -ға жібереді. Arduino мәліметтерді Motor Driver IC -ге береді, ал мотор драйвері қозғалтқыштарды қажетті бағытқа бұрады.

3 -қадам: схема

Схема диаграммасы
Схема диаграммасы
Схема диаграммасы
Схема диаграммасы

Бұл қолмен қимылмен басқарылатын робот Arduino аппараттық құралын қолданып екі бөлімге бөлінген

  1. Таратқыш
  2. Қабылдағыш

4 -қадам: Arduino Gesture басқарылатын автомобильге арналған таратқыш схемасы

Arduino Gesture басқарылатын автомобильге арналған таратқыш схемасы
Arduino Gesture басқарылатын автомобильге арналған таратқыш схемасы
Arduino Gesture басқарылатын автомобильге арналған таратқыш схемасы
Arduino Gesture басқарылатын автомобильге арналған таратқыш схемасы
Arduino Gesture басқарылатын автомобильге арналған таратқыш схемасы
Arduino Gesture басқарылатын автомобильге арналған таратқыш схемасы

Бұл жобаның таратқыш бөлімі MPU6050 акселерометр мен гироскоптан, nRF24L01Transceiver мен Arduino Uno -дан тұрады. Arduino MPU6050 -ден деректерді үздіксіз алады және бұл деректерді nRF таратқышына жібереді. РФ таратқышы деректерді қоршаған ортаға жібереді.

5 -қадам: Arduino Gesture басқарылатын автомобильге арналған қабылдағыш тізбегі

Arduino Gesture басқарылатын автомобильге арналған қабылдағыш тізбегі
Arduino Gesture басқарылатын автомобильге арналған қабылдағыш тізбегі
Arduino Gesture басқарылатын автомобильге арналған қабылдағыш тізбегі
Arduino Gesture басқарылатын автомобильге арналған қабылдағыш тізбегі
Arduino Gesture басқарылатын автомобильге арналған қабылдағыш тізбегі
Arduino Gesture басқарылатын автомобильге арналған қабылдағыш тізбегі

Бұл қимылмен басқарылатын роботтың қабылдағыш бөлігі Arduino Uno, nRF24L01 қабылдағыш, 2 тұрақты ток қозғалтқышы мен қозғалтқыш драйверінің модулінен тұрады. NRF24L01 қабылдағышы ақпаратты таратқыштан алады және оны Arduino -ға жібереді. Содан кейін алынған сигналдарға сәйкес Arduino тұрақты ток қозғалтқыштарын қозғайды.

6 -қадам: Бағдарламаны түсіндіру

Arduino қолданатын қимылмен басқарылатын робот үшін толық код мына жерде. Төменде біз бағдарламаны жол бойынша түсіндіреміз.

Таратқыштың бүйірлік бағдарламасы

Бұл бағдарламада Arduino MPU6050 деректерін оқиды және оны nRF 24L01 таратқышына жібереді.

1. Бағдарламаны қажетті кітапхана файлдарын қосу арқылы бастаңыз. Сіз кітапхана файлдарын берілген сілтемелерден жүктей аласыз.

SPI.h

nRF24L01.h

Wire.h

MPU6050.h

2. Содан кейін MPU6050 гироскопы мен акселерометр деректері үшін айнымалыларды анықтаңыз. Мұнда тек акселерометрдің деректері қолданылады.

3. CNR және CSN түйіспелері мен nRF таратқыштарының радио құбырларының адрестерін анықтаңыз.

4. void setup () функциясының ішінде сериялық мониторды бастаңыз. Сонымен қатар сымды және радио байланысын баптаңыз. radio.setDataRate деректерді беру жылдамдығын орнату үшін қолданылады.

5. MPU6050 сенсорының деректерін оқыңыз. Мұнда біз тек X және Y бағыттағы акселерометр деректерін қолданамыз.

6. Соңында, сенсордың мәліметтерін radio.write функциясын қолданып жіберіңіз.

Қабылдағыштар бағдарламасы

1. Әдеттегідей, бағдарламаны қажетті кітапхана файлдарын қосу арқылы бастаңыз.

2. CNR және CSN түйіспелері мен nRF таратқыштары үшін радио құбырларының адрестерін анықтаңыз.

3. Тұрақты ток қозғалтқышының сол және оң жақ түйреуіштерін анықтаңыз.

4. Енді радионың бар немесе жоқ екенін тексеріңіз. Егер солай болса, онда деректерді оқыңыз.

5. Енді алынған мәліметтерді салыстырып, қозғалтқыштарды шарттарға сәйкес жүргізіңіз.

7 -қадам: Arduino көмегімен қолмен басқарылатын роботты тексеру

Жабдық дайын болғаннан кейін Arduinos таратқыш пен қабылдағышты ноутбукке қосып, кодты жүктеңіз. Содан кейін автомобиль роботын басқару үшін MPU6050 акселерометрін жылжытыңыз.

Қимылмен басқарылатын роботтың толық жұмысын бейнеден табуға болады.

Ұсынылған: