Мазмуну:

MPU6050 жана ESP8266 модулу боюнча ArDrone 2.0 Quadcopter Control Unit: 7 Steps
MPU6050 жана ESP8266 модулу боюнча ArDrone 2.0 Quadcopter Control Unit: 7 Steps

Video: MPU6050 жана ESP8266 модулу боюнча ArDrone 2.0 Quadcopter Control Unit: 7 Steps

Video: MPU6050 жана ESP8266 модулу боюнча ArDrone 2.0 Quadcopter Control Unit: 7 Steps
Video: Measure Tilt Angle using SCA60C angle sensor - Robojax 2024, Июль
Anonim
Image
Image
ESP8266ны Ar Drone 2.0 кирүү чекитине туташтыруу
ESP8266ны Ar Drone 2.0 кирүү чекитине туташтыруу

Wi-Fiдын өлчөмү, баасы жана жеткиликтүүлүгү ESP8266 модулунда ArDrone 2.0 квадрокоптеринин бюджетин башкаруу блогун түзүүгө мүмкүндүк берет (AliExpress, Gearbest боюнча баалар). Башкаруу үчүн биз MPU6050 чипиндеги Gy-521 модулун колдонобуз (гироскоп, акселерометр).

Parrot AR. Дрон-бул радио менен башкарылуучу квадрокоптер, башкача айтканда, алыскы диагоналдуу нурларга коюлган төрт негизги ротору бар вертолет. AR. Дрон өзү Linux операциялык системасында иштейт жана дээрлик бардык Android же iOS сенсордук смартфондору же планшеттери квадрокоптер үчүн алыстан башкаруучу катары иштей алат. Wi-Fi аркылуу туруктуу көзөмөлдүн аралыгы 25тен 100 метрге чейин жана эгер көчөдө учуу болсо, бөлмөнүн жана аба ырайынын шарттарына жараша болот.

1 -кадам: ESP8266ны Ar Drone 2.0 кирүү чекитине туташтыруу

Иштетилгенде, AR. Drone "ardrone_XX_XX" SSIS кирүү чекитин түзөт. Сырсөзсүз туташуу.

AT командаларын колдонуу менен Ar. Dron кирүү чекитине туташып көрөлү ESP8266 картасын UART USB адаптеринин 3.3 В.

Arduino IDE, сериялык порт мониторун ачыңыз жана AT буйруктарын ESP тактасына жөнөтүңүз (квадрокоптер иштетилиши керек)

2 -кадам: AR менен байланыш. Дрон AT буйруктарынын жардамы менен аткарылат

Буйруктар ARге жөнөтүлөт. Drone UDP же TCP пакеттери катары;

Бир UDP пакети жок дегенде бир толук буйрукту же андан көп камтышы керек; Эгерде пакетте бир нече буйрук болсо, 0x0A белгиси командаларды ажыратуу үчүн колдонулат.

Саптар 8-бит ASCII символу катары коддолгон;

Максималдуу буйрук узундугу 1024 белгиден турат;

Буйруктардын ортосунда 30 MS кечигүү бар.

Команда турат

AT * [буйруктун аты] = [сап катары буйруктун катар номери] [, аргумент 1, аргумент 2…]

ARди башкаруу үчүн негизги AT командаларынын тизмеси. Дрон:

AT * REF-учуу, конуу, баштапкы абалга келтирүү жана авариялык токтотуу үчүн колдонулат;

AT*PCMD-бул буйрук ARди башкаруу үчүн колдонулат. Дрон кыймылы;

AT*FTRIM - горизонталдык тегиздикте;

AT*конфигурациялоо AR. Дрондун параметрлери;

AT*LEDдеги AR анимациялары. Дрон;

AT*ANIMде ARде учуу анимациясын орнотуу. Дрон.

AT * COMWDG-watchdog баштапкы абалга келтирүү буйругу-биз аны квадрокоптерге дайыма жөнөтөбүз.

Байланыш үчүн төмөнкү порттор колдонулат:

Порт 5556-UDP-ARге буйруктарды жөнөтүү. Дрон;

Port 5554-UDP-ARден маалымат пакеттерин алуу. Дрон;

Порт 5555-Жооп берүү AR'ден видео пакеттерди агылтуу. Дрон;

Порт 5559-TCP, адатта конфигурация үчүн, жоготууга мүмкүн болбогон маанилүү маалыматтар үчүн.

Кардар UDP портунан акыркы буйрукту жөнөткөндөн кийин 2 секунданын ичинде ажыратылат !!! - ошондуктан, керек болсо, дайыма буйруктарды жөнөтүп турушуңуз керек- AT*COMWDG.

ARDroneдон (5554-UDP порту) навигациялык маалыматтарды алууну карап көрүңүз. Демо режиминде багыттоо маалымат пакети 500 байтка созулат. Эгер бир нерсе туура эмес болуп калса, дрон 32 жана 24 байттык пакетти жөнөтө алат. Эгерде пакеттин узундугу 24 байт болсо, бул 5554 порт BOOTSTRAP режиминде экенин билдирет жана демо режимине которулуу үчүн портко кайра туташууңуз керек ARDrone навигациялык маалыматтарды кардарга эки формада өткөрүп бере алат:

кыскартылган (же демо), өлчөмү 500 байт. толук

Демо маалымат алуу үчүн, адегенде төрт байтты 0x01, 0x00, 0x00, 0x00 5554 портуна жөнөтүңүз, андан кийин 5556 портуна буйрук жөнөтүңүз.

AT*CONFIG = "+(seq ++)+", / "general: navdata_demo \", / "TRUE \" бул жерде seq - буйруктун ырааттуу номери.

Навигациялык маалымат пакетинин структурасы. Топтомдун башында 4 баалуулуктар бар:

32-бит пакеттин башы: вертолеттун статусу 32 бит;

кардар 32 вертолетко жиберген акыркы команданын ырааттуулук номери;

көрүү желеги 32 бит. Кийинки-navdata опциясы Header: 20-23.

Navdata опциясы төмөнкү талааларга ээ:

БАТАРЕЯ = 24; батарейканын кубаттуулугу пайыз менен;

Чайыр = 28; узунунан огу боюнча жантаюу бурчу;

РОЛЛ = 32; кайчылаш огуна карата жантаюу бурчу;

YAW = 36; вертикалдуу огуна карата айлануу бурчу;

ALTITUDE = 40; бийиктик;

VX = 44; х огунун ылдамдыгы;

VY = 48; y огунун ылдамдыгы;

VZ = 52; z огунда ылдамдык.

3 -кадам: Nokia 5110 дисплейин ESP8266 тактасына туташтыруу

Nokia 5110 дисплейин ESP8266 тактасына туташтыруу
Nokia 5110 дисплейин ESP8266 тактасына туташтыруу

Nokia 5110 дисплейин ESP8266 модулуна туташтырыңыз жана ага жана сериялык порт мониторуна бир нече навигациялык маалыматтарды чыгарыңыз.

4 -кадам: Навигациялык маалыматтарды алуу жана аны Nokia5110 дисплейинде көрсөтүү

Навигация маалыматын алуу жана аны Nokia5110 дисплейинде көрсөтүү
Навигация маалыматын алуу жана аны Nokia5110 дисплейинде көрсөтүү

Жүктөө (эскиз ardrone_esp8266_01. Ino), жана сериялык портко жана дисплей экранына багыттоо маалыматтарынын чыгышын байкаңыз.

5 -кадам: Учуу жана конуу буйруктарын жөнөтүү

Эми биз долбоорго алыстан башкаруу пультунун буйругу менен квадрокоптердин учуп -конуусун кошобуз. Учуп кетүү үчүн буйрук жөнөтүү керек

AT*REF = [Тизилүү номери], 290718208

Учуу үчүн

AT*REF = [Тизилүү номери], 290717696

Учуп кетерден мурун горизонталдык калибрлөө боюнча буйрук жөнөтүшүңүз керек, антпесе Ar Drone учуу учурунда турукташа албайт.

AT * F TRIM = [Тизилүү номери]

Эскиз ardrone_esp8266_02.ino () ESP8266 тактасына жүктөп, Ar Drone 2.0 квадрокоптерин күйгүзүп, баскычтын ишин текшериңиз. Сиз чыкылдатуу менен учуп чыкканыңызда, кийинки жолу басканда-конуу ж.б.

6 -кадам: Ardrone 2.0ди көзөмөлдөө үчүн MPU6050 туташуу

MPU6050'ди Ardrone 2.0ди көзөмөлдөө үчүн туташтыруу
MPU6050'ди Ardrone 2.0ди көзөмөлдөө үчүн туташтыруу
MPU6050'ди Ardrone 2.0ди көзөмөлдөө үчүн туташтыруу
MPU6050'ди Ardrone 2.0ди көзөмөлдөө үчүн туташтыруу

Квадрокоптерлерди башкаруу үчүн космостогу абалын аныктоочу сенсорлор колдонулат. MPU6050 чипи акселерометрди жана бортто гироскопту, ошондой эле температура сенсорун камтыйт. MPU6050-Gy-531 модулунун негизги элементи (15.44-сүрөт). Бул чиптен тышкары, модуль тактасында керектүү MPU6050 байланышы бар, анын ичинде I2C интерфейсинин тартма каршылыгы, ошондой эле кичине чыңалуусу бар 3,3 вольттуу стабилизатор (3,3 вольтто иштегенде, стабилизатор 3 вольт болот) чыпкасы конденсаторлор менен.

I2C протоколун колдонуу менен микроконтроллерге туташуу.

7 -кадам: Quadcopterди MPU6050 колдонуу менен башкаруу

MPU6050 аркылуу Quadcopterди башкаруу
MPU6050 аркылуу Quadcopterди башкаруу

Акселерометрди жана гироскопту колдонуу х жана у огунун четтөөсүн аныктоого мүмкүндүк берет жана четтөө квадрокоптерду тиешелүү октор боюнча жылдыруу боюнча буйруктарга "айланат". Сенсордон алынган көрсөткүчтөрдү бурулуш бурчуна которуу.

учууну башкаруу үчүн Ar Droneго жөнөтүү буйругу

AT*REF = [Тизмектин номери], [Flag bit-field], [Roll], [Pitch], [Gaz], [Yaw]

-1ден 1ге чейинки диапазондогу Roll жана Pitch баалуулуктары const int float столунан алынат, индекс mu6050 сенсорунун маалыматтары боюнча эсептелген четтөө бурчуна туура келет.

Эскиз ardrone_esp8266_03.ino аны ESP8266 тактасына жүктөп, ar Drone 2.0 квадрокоптерин күйгүзүп, алыстан башкаруунун ишин текшериңиз.

Сунушталууда: