
สารบัญ:
- ขั้นตอนที่ 1: เชื่อมต่อ ESP8266 กับ Ar Drone 2.0 Access Point
- ขั้นตอนที่ 2: การสื่อสารกับ AR โดรนทำงานโดยใช้คำสั่ง AT
- ขั้นตอนที่ 3: การเชื่อมต่อจอแสดงผล Nokia 5110 กับบอร์ด ESP8266
- ขั้นตอนที่ 4: รับข้อมูลการนำทางและแสดงบนจอแสดงผล Nokia5110
- ขั้นตอนที่ 5: การส่งคำสั่งบินขึ้นและลงจอด
- ขั้นตอนที่ 6: เชื่อมต่อ MPU6050 เพื่อควบคุม Ardrone 2.0
- ขั้นตอนที่ 7: การควบคุม Quadcopter โดยใช้ MPU6050
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12



ขนาด ราคา และความพร้อมใช้งานของ Wi-Fi ช่วยให้คุณสร้างหน่วยควบคุมงบประมาณสำหรับ Quadrocopter ArDrone 2.0 บนโมดูล ESP8266 (ราคาใน AliExpress, Gearbest) สำหรับการควบคุม เราจะใช้โมดูล Gy-521 บนชิป MPU6050 (ไจโรสโคป มาตรความเร่ง)
นกแก้ว AR โดรนเป็นเฮลิคอปเตอร์สี่ใบพัดที่ควบคุมด้วยวิทยุ นั่นคือเฮลิคอปเตอร์ที่มีโรเตอร์หลักสี่ตัววางอยู่บนคานทแยงมุมระยะไกล เออาร์. Drone ทำงานบนระบบปฏิบัติการ Linux และสมาร์ทโฟนหรือแท็บเล็ตหน้าจอสัมผัส Android หรือ iOS เกือบทั้งหมดสามารถทำหน้าที่เป็นรีโมทคอนโทรลสำหรับ quadcopter ระยะห่างของการควบคุม Wi-Fi ที่เสถียรคือ 25 ถึง 100 เมตร และขึ้นอยู่กับห้องและสภาพอากาศ หากเที่ยวบินเกิดขึ้นบนถนน
ขั้นตอนที่ 1: เชื่อมต่อ ESP8266 กับ Ar Drone 2.0 Access Point
เมื่อเปิดใช้งาน AR Drone สร้างจุดเชื่อมต่อ SSIS "ardrone_XX_XX" เชื่อมต่อโดยไม่ต้องใช้รหัสผ่าน
มาลองเชื่อมต่อกับจุดเข้าใช้งาน Ar. Dron โดยใช้คำสั่ง AT เชื่อมต่อการ์ด ESP8266 กับพอร์ต com ของคอมพิวเตอร์ผ่านแหล่งจ่ายไฟอะแดปเตอร์ UART USB 3.3 V.
เปิด Arduino IDE มอนิเตอร์พอร์ตอนุกรมและส่งคำสั่ง AT ไปยังบอร์ด ESP (ต้องเปิดใช้งาน quadcopter)
ขั้นตอนที่ 2: การสื่อสารกับ AR โดรนทำงานโดยใช้คำสั่ง AT
คำสั่งจะถูกส่งไปยัง AR โดรนเป็นแพ็กเก็ต UDP หรือ TCP;
แพ็กเก็ต UDP เดียวต้องมีคำสั่งที่สมบูรณ์อย่างน้อยหนึ่งคำสั่งขึ้นไป หากแพ็คเกจมีมากกว่าหนึ่งคำสั่ง อักขระ 0x0A จะถูกใช้เพื่อแยกคำสั่ง
สตริงถูกเข้ารหัสเป็นอักขระ ASCII 8 บิต
ความยาวคำสั่งสูงสุดคือ 1024 อักขระ
มีความล่าช้า 30 MS ระหว่างคำสั่ง
คำสั่งประกอบด้วย
AT * [ชื่อคำสั่ง] = [หมายเลขลำดับคำสั่งเป็นสตริง] [, อาร์กิวเมนต์ 1, อาร์กิวเมนต์ 2 …]
รายการคำสั่ง AT หลักสำหรับการควบคุม AR โดรน:
AT * REF-ใช้สำหรับเครื่องขึ้น ลงจอด รีเซ็ต และหยุดฉุกเฉิน
AT*PCMD-คำสั่งนี้ใช้เพื่อควบคุม AR การเคลื่อนไหวของโดรน
AT*FTRIM - บนระนาบแนวนอน;
AT*CONFIG-การกำหนดค่า AR พารามิเตอร์โดรน
AT*LED ตั้งค่าแอนิเมชั่น LED บน AR เสียงหึ่งๆ;
AT*ANIM ติดตั้งแอนิเมชั่นการบินบน AR โดรน
AT * คำสั่งรีเซ็ต COMWDG-watchdog- เราจะส่งไปยัง quadcopter อย่างต่อเนื่อง
พอร์ตต่อไปนี้ใช้สำหรับการสื่อสาร:
พอร์ต 5556-UDP ส่งคำสั่งไปยัง AR เสียงหึ่งๆ;
พอร์ต 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 ส่วนหัว: 20-23
ตัวเลือก navdata มีฟิลด์ต่อไปนี้:
แบตเตอรี่ = 24; ประจุแบตเตอรี่เป็นเปอร์เซ็นต์
สนาม = 28; มุมเอียงตามแนวแกนตามยาว
ม้วน = 32; มุมเอียงที่สัมพันธ์กับแกนตามขวาง
YAW = 36; มุมการหมุนสัมพันธ์กับแกนตั้ง
ระดับความสูง = 40; ความสูง;
VX = 44; ความเร็วแกน x;
VY = 48; ความเร็วแกน y;
VZ = 52; ความเร็วบนแกน z
ขั้นตอนที่ 3: การเชื่อมต่อจอแสดงผล Nokia 5110 กับบอร์ด ESP8266

เชื่อมต่อจอแสดงผล Nokia 5110 กับโมดูล ESP8266 และส่งข้อมูลการนำทางบางส่วนไปยังจอแสดงผลและไปยังจอภาพพอร์ตอนุกรม
ขั้นตอนที่ 4: รับข้อมูลการนำทางและแสดงบนจอแสดงผล Nokia5110

ดาวน์โหลด (sketch ardrone_esp8266_01. ino) และสังเกตเอาต์พุตของข้อมูลการนำทางไปยังพอร์ตอนุกรมและหน้าจอแสดงผล
ขั้นตอนที่ 5: การส่งคำสั่งบินขึ้นและลงจอด
ตอนนี้เราจะเพิ่มการขึ้นและลงของ quadcopter ในโครงการของเราด้วยคำสั่งจากรีโมทคอนโทรล ต้องส่งคำสั่ง
AT*REF=[หมายเลขลำดับ], 290718208
สำหรับการลงจอด
AT*REF=[หมายเลขลำดับ], 290717696
ก่อนเครื่องขึ้น คุณต้องส่งคำสั่งสำหรับการปรับเทียบแนวนอน มิฉะนั้น Ar Drone จะไม่สามารถรักษาเสถียรภาพระหว่างการบินได้
AT * F TRIM=[หมายเลขลำดับ]
อัปโหลดภาพร่าง ardrone_esp8266_02.ino () ไปยังบอร์ด ESP8266 เปิดเครื่อง Ar Drone 2.0 quadcopter และตรวจสอบการทำงานของปุ่ม เมื่อคุณคลิก-บินขึ้น ในครั้งต่อไปที่คุณคลิก – ลงจอด ฯลฯ
ขั้นตอนที่ 6: เชื่อมต่อ MPU6050 เพื่อควบคุม Ardrone 2.0


เซ็นเซอร์สำหรับกำหนดตำแหน่งในอวกาศใช้สำหรับควบคุมควอดคอปเตอร์ ชิป MPU6050 มีทั้งมาตรความเร่งและไจโรสโคปบนบอร์ด รวมถึงเซ็นเซอร์อุณหภูมิ MPU6050 เป็นองค์ประกอบหลักของโมดูล Gy-531 (รูปที่ 15.44) นอกจากชิปนี้แล้ว บอร์ดโมดูลยังมีการรวม MPU6050 ที่จำเป็น รวมถึงตัวต้านทานแบบดึงขึ้นของอินเทอร์เฟซ I2C เช่นเดียวกับตัวปรับแรงดันไฟฟ้า 3.3 โวลต์ที่มีแรงดันไฟฟ้าตกเล็กน้อย (เมื่อจ่ายไฟที่ 3.3 โวลต์ เอาต์พุตของ โคลงจะเป็น 3 โวลต์พอดี) พร้อมตัวเก็บประจุกรอง
การเชื่อมต่อกับไมโครคอนโทรลเลอร์โดยใช้โปรโตคอล I2C
ขั้นตอนที่ 7: การควบคุม Quadcopter โดยใช้ MPU6050

การใช้มาตรความเร่งและไจโรสโคปช่วยให้คุณกำหนดความเบี่ยงเบนบนแกน x และ y ได้ และการเบี่ยงเบน "เปลี่ยน" เป็นคำสั่งสำหรับการเคลื่อนควอดคอปเตอร์ไปตามแกนที่เกี่ยวข้อง การแปลค่าที่อ่านได้จากเซ็นเซอร์เป็นมุมโก่งตัว
คำสั่งส่งให้ Ar Drone เพื่อควบคุมการบิน
AT*REF=[Sequence number], [Flag bit-field], [Roll], [Pitch], [Gaz], [Yaw]
ค่า Roll and Pitch ในช่วง -1 ถึง 1 นำมาจากตาราง const int float ดัชนีจะสอดคล้องกับมุมเบี่ยงเบนที่คำนวณจากข้อมูลเซ็นเซอร์ mu6050
อัปโหลดภาพสเก็ตช์ ardrone_esp8266_03.ino ไปยังบอร์ด ESP8266 เปิดเครื่อง ar Drone 2.0 quadrocopter และตรวจสอบการทำงานของรีโมท
แนะนำ:
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)

การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
รถควบคุมด้วยท่าทาง MPU6050 และ NRF24L01: 4 ขั้นตอน

Gesture Control Car MPU6050 และ NRF24L01: หุ่นยนต์ควบคุมท่าทางสัมผัสเป็นโปรเจ็กต์ทั่วไปที่ได้รับความนิยมจากมือสมัครเล่น แนวคิดเบื้องหลังนั้นเรียบง่าย: การวางแนวฝ่ามือจะควบคุมการเคลื่อนไหวของรถหุ่นยนต์ MPU6050 เพื่อรับรู้ทิศทางของข้อมือและส่งไปยัง
การควบคุมเซอร์โวโดยใช้ MPU6050 ระหว่าง Arduino และ ESP8266 ด้วย HC-12: 6 ขั้นตอน

การควบคุมเซอร์โวโดยใช้ MPU6050 ระหว่าง Arduino และ ESP8266 ด้วย HC-12: ในโครงการนี้ เรากำลังควบคุมตำแหน่งของเซอร์โวมอเตอร์โดยใช้ mpu6050 และ HC-12 สำหรับการสื่อสารระหว่าง Arduino UNO และ ESP8266 NodeMCU
Gimbal แกนหมุนและขว้างสำหรับ GoPro โดยใช้ Arduino - Servo และ MPU6050 Gyro: 4 ขั้นตอน

Roll and Pitch Axis Gimbal สำหรับ GoPro โดยใช้ Arduino - Servo และ MPU6050 Gyro: คำแนะนำนี้ถูกสร้างขึ้นเพื่อตอบสนองความต้องการโครงการของ Makecourse ที่มหาวิทยาลัย South Florida (www.makecourse.com) เป้าหมายของโครงการนี้คือการสร้าง a Gimbal 3 แกนสำหรับ GoPro โดยใช้ Arduino nano + 3 เซอร์โวมอเตอร์ +
รถควบคุมท่าทางสัมผัสโดยใช้ Mpu6050 และ Arduino: 7 ขั้นตอน (พร้อมรูปภาพ)

รถควบคุมท่าทางสัมผัสโดยใช้ Mpu6050 และ Arduino: นี่คือรถควบคุมท่าทางควบคุมด้วยมือ ซึ่งสร้างโดยใช้ mpu6050 และ Arduino ฉันใช้โมดูล RF สำหรับการเชื่อมต่อไร้สาย