MPU-6050 Roll, Pitch 테스트 안녕하세요 오랜만에 드론에 대해 포스팅을 적어보네요 ㅎㅎ 지금가지 다른 공부를 좀 하다가 드론 해커톤 참여를 신청할려고 생각을 해보니까 하기 위해서는 드론에 대한 전반적인 지식과 구동원리를 빨리 파악해야겠다는 생각때문에 다시 드론에 대해 공부를 시작하게 되었습니다!!! 혹시 다들 GeekMomProjects라는 홈페이지를 아시나요?? 여기서 어떤 아주머니께서 제공을 하신 프로세싱 프로그램과 아두이노 스케치 소스를 가지고 간단하게 테스트를 해보겠습니다. Geek Mom Projects 홈페이지 바로가기 홈페이지에 들어가시면 위와 같은 파일들을 다운받아주세요ㅎㅎ 그리고 프로세싱 프로그램과 아두이노 cc기반의 프로그램도 설치가 되어있어야 해요! 일단 아두이노 IDE..
오랜만에 게시글을 올리게 되네요 ㅎㅎ드론에 대해 공부해서 정리하는겸 포스팅을 하고 있습니다. 그래서 오랜만에 오게 되었어요 이번 포스팅에서는 이전 시간에 알아본 MPU-6050 센서에 대해서 알아본것을 토대로 자이로 가속도 값을 해석하는것을 목표로 두겠습니다. [드론]MPU-6050 가속도 자이로 센서 제가 이전 포스팅에서 "왜 소스코드에서 int16_t 타입으로 변수를 선언 했었는지 언급을 했었습니다. 이렇게요 추가적으로 이어서 설명을 드리자면 16bit 변수를 통해서 표현할 수 있는 숫자의 범위는 -32768 ~ 32767 사이의 정수 값 입니다. 본격적으로 가속도 센서 값을 해석하는 방법에 대해서 알아보도록 하겠습니다. 가속도 센서 값 해석하기 선언한 변수를 보시게 되면 AcX, AcY, AcZ가 ..
MPU6050 드론에는 위와 같은 가속도 자이로 센서가 필요합니다. 제가 사용하는 드론에서는 GY-521 MPU6050 모듈이 장착되어 있습니다. 이 센서를 이용하는 목적을 한번 알아보도록 하겠습니다. 센서 이용 목적드론의 기울어진 정도회전한 정도 MPU6050에 포함되어 있는 센서 가속도 3축자이로 3축온도센서총 7가지 센서[*3축 : x축, y축, z축] 저는 위 센서 중 온도센서는 사용을 안합니다. 왜냐하면 가속도, 자이로 값은 온도에도 영향을 받기 때문에 온도센서도 포함이 되어있는 것 입니다. 그렇지만 상온에서는 가속도 자이로 센서가 온도에 크게 영향을 받지 않기 때문에 사용을 안할 것 입니다. 만약 영하권으로 내려가는 지역에서는 사용해야겠지요? MPU6050의 특징 하나의 칩 안에 MEMS 가속..
목표 이번 포스팅에서는 프로세싱을 이용해서 GUI 환경에서 AP 모드인 ESP8266을 컴퓨터에서 와이파이 모듈로 접속을 해서 프로세싱으로 스크롤바를 움직이면 그 움직인 값에 따라서 드론의 croess 모터들이 회전하도록 하는 포스팅을 해보도록 하겠습니다.이전 아두이노 IDE에서 작성을 해야하는 소스코드는 밑에 링크로 들어가시면 됩니다. *드론 모터속도 조절하기 아두이노 IDE편* GUI 환경 작업을 하기위한 'controlP5' 라이브러리 설치 controlP5는 사용자 정의 인터페이스를 구성하기 위한 GUI 라이브러리라고 합니다. 소스코드 import controlP5.*; import processing.net.*; //network communication ControlP5 cp5; //contr..
이번 포스팅에서는 프로세싱으로 GUI를 구성해서 ESP8266과 연결된 아두이노를 이용하여 마우스 휠을 움직이면 움직인 만큼 모터의 속도를 조절하게 하는 프로젝트를 작성해보겠습니다. 여기서 파일명은 throttle라고 설정을 해주세요 그 이유는!! 이러한 의미때문입니다. throttle가 모터 등의 추력을 조절하기 위한 조종장치를 의미한다고 하네요 해야할 순서는 '아두이노 IDE 프로그램 작성하기 -> 프로세싱 스케치 프로그램 작성하기 -> AP 모드의 ESP8266과 연결하기 -> 최종 테스트 1. 아두이노 IDE 프로그램 작성하기 여기서는 사용자(클라이언트)로부터 모터의 속도를 입력을 받아서 모터의 속도를 직접적으로 조절을 해주기 위한 목적이 있습니다.[ESP8266 WiFi 모듈과 연결해서 속도를 ..
일반적으로 고가의 드론용 모터에는 BLDC 모터(브러시가 없는 모터)가 이용이 됩니다. BLDC 모터는 DC 모터의 일종입니다. BLDC 모터의 소개BLDC 모터는 회전축에 연결되어 코일 내의 전원의 방향을 바꾸는 역할을 하는 브러시가 없습니다.대신 모터의 내부 주변에 코일이 원통에 고정이 되어있어서 동작을 하게 되면 몸통이 돌아가므로 DC모터와는 다르게 BLDC 모터의 몸통을 잡고있으면 모터가 타버려서 망가집니다. 또한 BLDC 모터는 따로 컨트롤러를 이용해서 구성해야지만 구동이 되는 단점이 있지만 단점이 있으면 장점이 있는 법! 수명이 매우 길고 마찰이 적어 고속동작이 됩니다. 따라서 이러한 모터는 마찰이 적어야되는 우주 항공 분야, 의료 분야, 반도체, 측정기, 로봇 등 정밀제어가 필요한 분야에서 ..
시간함수 -millis()함수 1. 드론에서 사용하는 목적자이로센서 값을 이용하여 드론이 회전한 각도 계산PID 출력 값을 얻어낼때 미분과 적분을 사용하는데 이때 millis()함수를 이용하여 단위(dt)값을 얻어냄 2. millis()와 delay()의 차이점 millis()함수 : 시간과 관련된 여러개의 작업들을 동시에 수행하고자 할 때, 꼭 필요한 함수 -> 아주 중요한 지연함수 delay()함수 : 여러개의 작업들을 동시에 수행하고자 할 때 사용하기에는 적합하지 않다. 즉, delay() 함수를 이용해서 millis()함수와 다른점을 예시로 들어보면, A라는 LED와 B라는 LED가 있다고 가정하자, A라는 LED는 1023밀리초 간격으로 ON/OFF를 하고 B라는 LED는 509밀리초 간격으로 ..
제가 이전 포스팅에서 이렇게 Transparent에 대해서 설명을 하였습니다. Transparent Bridge 펌웨어는PC 또는 스마트폰에 있는 Telnet 클라이언트를 아두이노에 있는 시리얼 포트로 투명하게 연결해 주는 역할을 합니다. 마치 시리얼 모니터 창을 통해 입력한 사용자 데이터가 그대로 아두이노로 전달되는 것처럼 Telnet 프로그램을 통해 입력한 사용자 데이터가 그대로 아두이노로 전달됩니다. 따라서 TCP Transparent Server 프로그램이 Transparent Bridge 펌웨어 입니다.이 펌웨어는 이미지 형태로 제공이 된다고 하네요 다운로드 링크 : https://github.com/beckdac/ESP8266-transparent-bridge 그리고 ESP8266 모듈용 플래..