[C++] ตัวอย่างแนวทางเขียนโปรแกรมควบคุมโดรน

ชอบศึกษาโดรนแต่ยังไม่มีเวลามากพอที่จะสร้างตัวเครื่องขึ้นมาเองจึงเลือก  DJI TELLO ราคาไม่แพงมากและมีสิ่งที่ต้องการครบถ้วน

ตัวโดรน DJI TELLO คิดง่ายๆ จะคล้าย server ที่มี wifi ขนาดเล็กบินได้ คือ เป็นทั้งตัวจ่าย Wifi และ เป็นทั้งตัว Server 


การรับส่งข้อมูลจะใช้ UDP โดยที่ความผิดพลาดข้อมูลรับ/ส่ง สูงมากแต่รวดเร็ว ไม่ติดก็ส่งใหม่ไปได้เรื่อยๆ กลายเป็นข้อดีที่ลด Latency 
ที่จะเกิดในการรับส่งได้


โค้ดจะสร้างมาเพื่อนตัวอย่างแนวทางต่อยอดเท่านั้น! จึงอาจต้องมีความรู้ในระดับนึงก่อนศึกษา



โดยจำเป็นอย่างยิ่งที่ต้องศึกษา ควร new project ขึ้นมาใหม่ และ Setup a development environment ด้วยตัวเอง
แล้วเรียนรู้ ตามลำดับ

1. C++ 14 Standard
2. ImGui ตัวอย่างจะใช้ opengl3 ศึกษาได้จาก example
https://github.com/ocornut/imgui/tree/master/examples/example_glfw_opengl3

3. BoostAsio  ตัวอย่างจะใช้ 
https://github.com/boostorg/asio/tree/develop/example/cpp14/echo
https://github.com/boostorg/asio/blob/develop/example/cpp14/echo/blocking_udp_echo_client.cpp
https://github.com/boostorg/asio/blob/develop/example/cpp14/echo/blocking_udp_echo_server.cpp

4. อื่นๆ เช่น Opengl, spdlog, glad, glfw

ที่ยังไม่ได้ใส่เพราะขี้เกียจและไม่มีเวลา
5. SDL ควบคุมจอย
https://www.libsdl.org/
6. OpenCV Streaming ลูกเล่นต่างๆ เช่น ให้บินตามวัตถุ ทำตัวเล็งเป้า ต่างๆ
https://opencv.org/

ดาวน์โหลด Tello SDK ได้จาก ryzerobotic โดยตรง
https://dl-cdn.ryzerobotics.com/downloads/tello/20180910/Tello SDK Documentation EN_1.3.pdf

Source Code ตัวอย่าง
https://github.com/subnote48/tellorock
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่