본문 바로가기

아두이노 드론13

드론 DIY | 아두이노 제어 코드 공유 안녕하세요. 15년부터 16년초까지 진행했던 아두이노 프로젝트 코드를 공유합니다. 코드는 아래 첨부에서 다운로드 받으실 수 있습니다. 대학생 때 진행했던 프로젝트로, 3~4년 가까이 지난 시점이라 코드 한줄한줄 의미가 다 생각나지는 않습니다만, 크게는 아래와 같이 진행한 점 참고부탁드립니다. 1. 이중 PID제어로직을 통한 아두이노 자세 제어 - 현재는 PID 라이브러리도 별도로 나와있는 것으로 알고 있으며, 첨부된 코드와 같이 일일이 나열하실 필요는 없을 것 같습니다. 2. 자세제어값은 800~2200사이. - 제 기억에 800~2200사이로 스로틀량을 제어했습니다. 수치가 클수록 더 큰 전압을 모터에 인가합니다. 3. 기본적인 설정값들이 있는데, 이부분은 제 블로그나 yngneers.tistory.c.. 2019. 12. 2.
드론 DIY | 누구나 쉽게 만들 수 있는 드론 제작기 2부 드론 DIY, 코딩부터 조종까지 만드는 과정을 포스팅하려고 한 지 어느새 몇년이 흘렀다. 그 동안 취직을 포함해 이런저런 일들로 바빠서 포스팅을 못해왔는데, 다시 제대로 시작해보려고 한다.드론 DIY. 누구나 쉽게 만드는 드론 제작기 이 포스팅의 목적은, 미취학 아동부터 성인에 이르기까지 누구나 쉽게 만들 수 있는 드론 제작을 널리 알리기 위함이다. 4차 산업혁명에 대한 국민적 관심이 뜨거운 가운데, 그 일부를 이루는 드론 정도는 제작해볼 수 있지 않을까? 단지 조립에서 끝나는 것이 아니라, 세부적인 코딩부터 오픈소스를 활용하여 알고리즘을 구상하고, 실전에 적용하여 조종 모듈까지 만드는 게 최종 목표다. 조종기는 핸드폰 앱으로 하거나, 기타 통신 방식을 사용해 구현할 생각.1부에 대한 포스팅은 지금까지 .. 2017. 5. 4.
드론 DIY | 소형 드론 모터 구동하기 ​소형 드론 모터 구동하기 (DC모터) 보통 드론은 bldc모터를 사용한다. 내가 작년에 만들었던 450급 드론 역시 bldc 모터를 사용했는데, 이번에 구매한 소형 드론의 경우 bldc가 아닌 dc모터를 사용한다. 보통 bldc모터는 수명이 길고 열 발생이 dc모터에 비해 낮다는 얘기가 있는데, 소형드론의 경우 아무래도 크기가 작은 만큼 굳이 그럴 필요가 없었나보다. 아무튼, 내가 구매한 모터는 온라인 드론 쇼핑몰에서 구매한 작은 모터이고, 3.7V가 정격전압인 듯 하다. 세트로 묶여있는 배터리까진 구매했는데.. 문제는 모터드라이브였다. 충분한 전력량을(어쩌면 소형이라 아두이노에서도 충분했을수도 있지만) 뽑아내기 위해서는 모터드라이브가 필요한데, 문제는 저전압에서 작동할 수 있는 모터드라이브가.. 있었.. 2017. 2. 4.
드론 DIY | 소형 드론 부품 택배 도착 이틀 전 구매한 드론 부품들이 도착했다.총 비용은 3만원 아래로 들었던 듯... (배송비 포함) 암튼 개봉 후기를 보자. 두 업체에서 주문했다. 하나는 모터 드라이버, 하나는 드론 부품인데.. 난 당연히 상자에 드론 부품이 들어있을 줄 알았다.왜냐면 살 때까지만해도 10cm는 된다고 생각했기 때문에.. 그런데 예상을 뒤엎고, 저 큰 상자에선 겨우 손톱만한 모터 드라이버 2개가 나오고, 비닐에서 저 많은 부품들이 나오더라.사실 보고 약간 충격. 정말 저렇게 작을줄이야!!!!! 내 생각은, 아두이노 나노에 연결하고, 아두이노 나노에는 9V 배터리로 장착시키려 했는데.. 상황이 이렇다보니 9V배터리를 들만한 양력이 발생하지 않을 것 같다란 생각이 들었다. 예전에 생각했던 paper drone, 즉 종이로 만든.. 2016. 12. 23.
드론 DIY | 아두이노 PID 제어 코드 (코드 첨부) 지난 포스팅에서 PID의 원리가 뭔지, 대체 왜 필요한지에 대해 구구절절 설명했다.따라서 이번 포스팅에서는 사실 가장 중요한? 아두이노 코드에 대해 쓰려고 한다. 서술하기에 앞서, 아두이노라는 녀석이 어떻게 동작하는지 알 필요가 있다. 이미 C언어를 어느정도 아는 사람이라면 척보면 다 알지만, 코딩을 처음 해보는 사람들에게는 매우 생소할 것이므로! 처음 C를 배우는 사람도 할 수 있게끔 설명하고자 한다. 1. 아두이노 코딩을 위해 반드시 알아야할 팩트들 아두이노 IDE를 먼저 받아야하는데, 그건 지난 포스팅에 있으므로!오늘은 바로 코딩을 보도록 하겠다. 아두이노 IDE를 실행시키면 다음과 같은 문구들이 뜬다. void setup() { // put your setup code here, to run on.. 2016. 2. 12.
드론 DIY | 드론 PID 제어 이론 2 지난 포스팅을 요약하자면, 1. 드론 자세제어에는 PID가 필요하다.2. PID란, 비례 적분 미분의 약어이다.3. PID의 원리를 진자운동에 비유했는데, 이를테면 드론을 10도 기울여라~~ 란 명령을 주면, 드론은 사실은 11도까지 기울었다가, 다시 출력 조절하여 9도를 왔다가~ 다시 출력조절되서 10.5도갔따가~ 이러다가 10도에 딱 오게 된다는 것. 쉽게 얘기해서 위와 같은거고, 이제는 조목조목 따져보자. PID 이해를 위해 가장 중요한 것은, 바로 오차의 개념이다. 오차란? 말 그대로 오차다. 위에서 예를 들었듯이 만약 드론이 지금 수평상태로 있는데 내가 10도 기울이란 명령을 줬다고 하자. 그렇다면 지금 오차는 바로 10도가 되는 것이다. 시간이 흘러 드론이 11도까지 왔다면 오차는 -1도가 되.. 2016. 2. 11.