※ 본 강의는 22년9월부터 전면 무료화 되었습니다.
무료 컴파일러인 STM32CubeIDE를 이용한 STM32F4 고성능 자작 드론의 FCC 비행제어 시스템을 처음부터 끝까지 모두 직접 개발하는 유일한 강좌입니다.
ArduPilot이나 Pixhawk등 드론 오픈소스를 사용하지 않고 센서 인터페이스부터 PID 제어까지 모두 직접 구현하기 때문에 드론 제어시스템 및 임베디드 시스템의 모든 개발 과정들을 경험하고 학습할 수 있습니다.
비전공자, 초보자도 쉽게 따라할 수 있도록 수업에서 모든 소스코드와 하드웨어 조립 방법에 대해 천천히 설명드립니다.
천천히 따라만 하시면 내가 직접 개발한 자신만의 드론으로 상용제품보다 안정적인 비행을 경험하실 수 있습니다.
본 강좌는 STM32F4 Micro Controller를 이용한 자작드론 개발하기 강좌로서, 드론의 비행제어시스템(Flight Control System) 개발을 위한 센서 인터페이스부터 PID 제어까지 전 과정을 다룹니다.
다른 드론 개발 강좌와 다르게 STM32F4를 이용하여 센서 인터페이스부터 시작해서 PID 제어까지 모든 소스코드를 직접 하나씩 다 작성하는 강의입니다. 오픈소스를 사용하지 않고 모든 기능들을 직접 하나씩 구현하기 때문에 드론을 개발하는 과정과 임베디드 펌웨어 개발 과정을 쉽게 이해하실 수 있습니다.
게다가 본 강의에서 개발한 드론은 pixhawk, ardupilot같은 상용품에 비해 성능이 전혀 뒤떨어지지 않기 때문에 단순 교육용 드론을 넘어 연구용, 산업용으로도 응용 가능합니다. 또한 본 강좌에서 사용하는 MH-FC V2.2는 드론 뿐 아니라 움직이는 모든 무인이동체에 적용 가능하니 무인 자동차같은 시스템에도 응용될 수 있겠죠!
CH8. 무선 데이터 송수신 (기체 상태 정보 송신 및 제어 파라미터 수신, 강의용 GCS 사용법)
CH9. 안전기능 (Fail-safe 등 안전을 위한 기능)
파트3 에서는 비행 제어(PID Control)
CH10. PID 제어 준비
CH11. 롤, 피치 제어 (더블 PID)
CH12. 헤딩 제어 (싱글 PID)
의 순서로 진행됩니다.
본 강의에서는 STM32F405RGT Cortex M4 마이크로 컨트롤러를 메인 프로세서로 사용하고, 자세제어를 위한 BNO080 9축 센서, ICM-20602 6축 센서와 고도제어를 위한 LPS22HH 기압센서를 사용합니다. 또한 실외 자동 비행을 위한 UBLOX M8N GPS 데이터 수신까지 다룹니다. (단, 고도제어와 GPS 제어는 본 강의에서는 다루지 않음)
본 강좌의 목적은 고성능 드론을 개발하는 것이지만, 그 개발하는 과정에 대해 더 심도있게 다룹니다.
드론 비행을 위한 가장 기초단계인 센서 데이터 인터페이스 부터 자세제어를 위한 PID Control 까지 다룹니다.
임베디드 어플리케이션을 개발하기 위한 과정들을 집중적으로 설명드리고, 그것들이 합쳐져 드론비행제어 시스템이 완성됩니다.
유익한 동영상 강의 되도록 항상 노력하겠습니다.
- M-HIVE ChrisP
이런 분들께 추천드려요
학습 대상은 누구일까요?
고성능 드론의 기초부터 비행제어까지 하나씩 직접 개발하고 싶으신 분
STM32를 이용하여 심도있는 응용프로그램을 개발해보고 싶으신 분
전자, 통신, 제어, 기계, 항공 등 전공 학생
드론 관련 종사자
임베디드 시스템 개발 프로세스를 경험해보고 싶으신 분
아두이노나 8bit MCU에서 32bit MCU로 넘어가려고 하시는 분
PID제어의 기초개념 학습과 동작을 직접 구현하려고 하시는 분
고수준 임베디드 프로젝트를 실습해보고 싶으신 분
드론 관련 연구기관 및 교육기관
무인이동체에 관련된 프로젝트를 진행하는 분
선수 지식, 필요할까요?
본 강좌에서 사용하는 MH-FC V2.2 Flight Controller 필수!! (없으면 진행 불가능!! M-HIVE 스마트스토어에서 구매 가능)
드론 구성품 (BLDC 모터, ESC, 프로펠러, 프레임, 배터리 등. M-HIVE 네이버 카페에서 목록 확인 필수)
I have always been interested in embedded product development. I was limited by following a few C language books and YouTube examples, so I took the Inflearn drone development course.
I was able to learn the know-how of embedded product development by following each step from turning on the LED to PID control. I learned the coding method to receive and process various sensor data, communicate with wireless transceivers, and adjust the drone's attitude within a limited time. I successfully flew the drone after following the detailed explanation and coding.
You can learn the coding know-how necessary for embedded development, such as defining communication protocol structures, type conversion, using timers, and calling functions in while loops. I strongly recommend this course to those who know a little bit about C but are stuck in the same situation with examples of turning the LED on and off every time.
Thank you for your hard work in creating the course. Thank you~
Hello, thank you so much for the 5-star rating!
The contents covered in this lecture, such as communicating with external devices, how to interface with sensors, and how to perform desired actions at specific intervals, are very important and frequently used functions, but I think they are not covered well in other lectures.
No matter what product you develop, you must know the contents above, so I tried to cover those contents in more depth in this lecture, so I hope it was conveyed well.
Then, I hope you always fly safely, and I hope you fly after practicing enough!
Thank you.
Hello. I am a college student currently taking the course. The lecture content that can be difficult is explained well, and if there is a difficult part, feedback is given through the Q&A board or cafe. This part really relieves the frustration that can be had in online lectures, so I can listen to it as if I am listening to the lecture in person, which is really great. I am new to stm32, but I feel like I have learned a lot by watching the lecture, following the progress, and practicing. Please continue to give good lectures, and if there is a lecture that interests me, I will look for it again!!!!!
Thank you so much for the 5-star review.
If you have any questions while you are going forward, please feel free to ask and I will reply as soon as I check!
Then, I hope you have a safe and enjoyable drone development~
The biggest problem with online classes is that there are no replies or they are late, but this online class is the best because the replies are quick and 100% accurate.
Thank you so much for your 5-star rating!
I am well aware of the limitations of online lectures, so I will try my best to resolve any issues students may have as quickly as possible.
Of course, it may not be as good as offline lectures, but I will try my best to respond to any issues you may have in the future as quickly as possible.
Then, I hope you have a safe and enjoyable drone development~
Thank you :)
I'm sure you've prepared a lot, but from the perspective of checking, it all came out in an instant.
I'm glad you explained it in an easy-to-understand way, and please hurry up and give me the next lecture~~~~~~~~~~
I'll wait.
Thank you for the 5-star rating. ㅎㅎ
I will prepare the remaining lectures so that they are easy to understand and follow.
I apologize for the delays due to various circumstances. ㅠㅠ
I will proceed as quickly as possible!
Thank you~
Thank you for the 5-star rating~
You will feel more and more fun as you implement them one by one ㅎㅎ
I will try my best to make the lecture informative and fun until the end.
Thank you!!