2018년 7월 29일 일요일

FrSky R9M 모듈 및 나노 리시버


TBS 크로스파이어를 대체할 수 있는 FrSky R9M 모듈과 리시버입니다. R9M은 예전부터 나와있던 모듈인데 전용 리시버가 작은 사이즈가 없어서 미니쿼드에는 잘 쓰지 않았었습니다. 그런데 최근에 새끼손가락 한마디 정도 크기의 전용 리시버가 출시되면서 슬슬 크로스파이어 대체용으로 많은 사람들이 찾기 시작한 것 같습니다.


팀블랙쉽의 크로스파이어와 같은 900mhz 주파수 대역을 사용하고 크로스파이어와 마찬가지로 long range용입니다.

크로스파이어 마이크로 모듈과 리시버를 셋트로 사면 이십만원 정도인데 프리스카이의 r9m은 리시버까지 십만원 남짓이면 살 수가 있으니 가격 경쟁력이 뛰어납니다.

성능은 크로스파이어만큼 보여준다는 후기가 많고요. 특별히 문제가 있다거나 하는 리뷰는 아직 못봤습니다. 같이 날리시는 분이 장착해서 날리는 걸 봤는데 안정적인 성능에 이백미터 이상을 날아가도 rssi는 줄곧 90이상을 찍어주더군요.

게다가 TBS 크로스파이어 마이크로 모듈은 출력이 100mW가 한계인데 (물론 풀 모델은 외장 배터리 연결시 2000mW가 가능하며 가격은 더 비쌉니다), r9m은 외장 배터리 연결 단자가 있고 1000mW까지 출력을 높일 수 있습니다.

가격이나 성능 면을 따져봤을 때 r9m이 확실한 비교우위에 있는 것 같습니다. 다음에 만드는 드론에 장착해서 안정적인 성능을 보여주는 지 직접 확인해 봐야겠습니다.

2018년 7월 26일 목요일

재미삼아 만들어 본 저가형 레이싱 드론

오래전 사 두었던 저가형 부품들을 모아서 하나 만들어 보았습니다.

Motor는 Racerstar BR2205
ESC도 Racerstar 20A all in one
Flight controller는 NAZE32 (베타플라이트 3.3이후부터는 이제 펌웨어도 나오지 않습니다만, 3.2.X 까지는 지원됩니다.)
프레임은 상표나 이름도 잘 모르겠고 (하도 오래전에 사둔거라) 가격은 30$ 내외였던 것 같습니다.
RC receiver는 FrSky D8R II plus
FPV camera는 Runcam sparrow입니다.
VTX는 FX799T이고요.


몇 시간 만에 뚝딱 만들고 베타플라이트도 설정했습니다.

예전에 처음 만들 때는 몇날 며칠을 걸려서 만들었었는데, 이제는 익숙하게 만들어집니다.


신정교 아래로 나와서 테스트 비행 전에 찰칵 찍어보았습니다.

가볍게 날려본 비행 영상입니다. HD cam을 달기엔 공간도 안나오고 모터 힘도 약해서 그냥 고글 영상으로 찍어봤습니다.


FX799T는 microphone이 내장되어 있어 소리까지 녹음이 되었습니다.

예전에는 이정도 스펙만 되어도 만족스럽게 잘 날리고 놀았는데, 요새 고성능의 부품으로 만들어 날리다 보니 눈높이가 높아졌나봅니다.

약간 힘이 딸리고 움직임이 굼뜬 것 같습니다. 무리한 기술 구사 안하고 관광하듯 날리다 착륙시켰습니다. 추락해서 부숴져도 별로 아깝지 않은 녀석이라 나중에 새 기술 연습할 때 들고 나가서 날리려고 합니다.

2018년 7월 24일 화요일

완전 초보도 따라하는 하이엔드 레이싱 드론 제작 매뉴얼


약 석달 간에 걸쳐 레이싱 드론을 새로 하나 만들면서 작성한 매뉴얼입니다. 틈틈히 시간을 내어 작성하고 또 저의 게으름 때문에 예상보다 오래 걸렸습니다. 각각의 포스팅을 찾아 보기 힘들 것 같아 이 포스팅에서 목차를 정리해 둡니다.

누구나 쉽게 따라서 레이싱 드론을 만들어 볼 수 있도록 정리했습니다만 아무래도 막히는 부분이 있을 것입니다. 그럴 때는 관련 내용을 구글링 하고 유튜브를 찾아보면서 해결하는 것이 제일 좋겠습니다.






















완전 초보도 따라하는 하이엔드 레이싱 드론 만들기 #21 - Failsafe test

모든 것이 완료되었습니다.
비행을 즐기러 나가기 전에 꼭 해주어야 할 일이 있습니다.
바로 failsafe test입니다.

노콘이 났을 때 드론이 날아가버리지 않고 그대로 떨어지도록 했는데, 그것이 정상적으로 동작하는지 확인하는 과정입니다.

1) 드론에 배터리를 연결합니다. (프로펠러는 장착하지 않습니다.)
2) 조종기를 켭니다.
3) Arming switch를 올려서 모터가 돌아가는 것을 확인합니다.
4) 조종기의 전원 버튼을 내려버립니다. (가상의 노콘 상황을 만드는 것이죠.)
5) 알림음을 내면서 모터가 멈춰버리면

정상적으로 failsafe가 작동한 것입니다.
레이싱 드론이 완성되었습니다!!

21개의 posting을 통해서 드론 제작부터 베타플라이트 및 조종기 설정까지 완벽하게 다루었습니다. 일부분은 일부러 설명을 생략한 부분이 있는데 당장 몰라도 상관없는 부분과 비행을 좀 하면서 감을 익히고 어느 정도 익숙해졌을 때 알아야 할 것들입니다.

2015년쯤에 처음으로 레이싱 드론을 제작하게 되었는데, 인터넷 상에 충분한 정보가 없어서 구글링과 유투브를 뒤져가며 어렵사리 만들었던 기억이 새삼 떠오르네요. 여러 번의 시행착오와 실패를 겪으면서 알게된 것들과 노하우 등을 블로그에 정리해 놓았습니다.

새로 시작하는 분들이 충분히 따라서 만들 수 있도록 쓰긴 했지만, 개구리 올챙이적 시절 생각 못한다고 아무래도 초보자들이 보기에는 어려운 부분도 있으리라 예상합니다. 그러나 끝까지 따라서 한 번 해보시면 누구라도 혼자서 드론을 만들어 날릴 수 있다고 믿어 의심치 않습니다. 모쪼록 좋은 길잡이가 되어 레이싱 드론을 시작하는 모든 분들에게 도움이 되었으면 합니다.

완전 초보도 따라하는 하이엔드 레이싱 드론 만들기 #20 - 베타플라이트(Betaflight) 완전정복 / LED strip 설정

이제 거의 마지막입니다. LED strip을 설정해 보도록 하겠습니다.

베타플라이트에서는 총 32개의 LED를 부착하고 색깔을 따로 설정해 줄 수 있습니다. 배터리가 위험 수준으로 떨어졌을 때 깜빡거리게도 할 수 있습니다. 제일 간단한 셋팅으로 LED strip을 설정하겠습니다.


Wire ordering mode 버튼을 누릅니다. 아래와 같이 초록색 바탕의 모눈종이가 됩니다.


장착했던 LED의 경우 숫자가 1~8까지 매겨져 있습니다.


저 순서를 그대로 모눈 칸에 순서대로 찍어줍니다. 0 부터 시작해서 7번까지 사진에 보이는 것과 유사하게 위치로 찍어주었습니다.


Wiring order mode를 다시 한번 누르고 8개의 LED가 모두 선택되도록 아래와 같이 drag해서 포함시켜줍니다.


Function에서 arm state를 선택합니다. LED로 현재 arm 상태인지 아닌지를 표시해주려고합니다.


Special color에서 disarm을 클릭하고 팔레트에서 하늘색을 선택해줍니다. 마음에 드는 아무 색이나 하셔도 됩니다. 그리고 arm 상태는 빨간색으로 해 줍니다.


Save 버튼을 누르면 끝입니다.

배터리를 연결하고 조종기를 켜서 한 번 확인해 보겠습니다. Arming이 되어 있지 않은 상태에서는 아래처럼 하늘색으로 빛납니다.


그리고 arming 스위치를 올리면 motor가 돌기 시작하고 LED는 빨간색으로 바뀝니다.


이렇게 LED 설정도 끝났습니다.


완전 초보도 따라하는 하이엔드 레이싱 드론 만들기 #19 - 베타플라이트(Betaflight) 완전정복 / OSD 설정


OSD 설정 tab 차례입니다. 왼쪽 메뉴에서 OSD에 표시하고 싶은 항목을 활성화 하면 오른쪽 사진에 항목이 나타나는데요. 그것을 마우스로 끌어서 원하는 위치에 끌어 놓으면 됩니다.

RSSI는 no control 방지를 위해서 신호가 약해지지는 않는지 확인해야 하니 반드시 넣어주는 것이 좋겠고,

Battery의 cell당 voltage도 필수입니다.

나머지는 취향에 맞게 토핑을 얹어주시면 되겠습니다.

여기서도 save 버튼 꼭 눌러주시고요.

Battery를 연결하고 고글 화면에서 설정한 값들이 정상적으로 보이고 있는지 확인해 보도록 하겠습니다.


정상적으로 잘 보이네요.

완전 초보도 따라하는 하이엔드 레이싱 드론 만들기 #18 - 베타플라이트(Betaflight) 완전정복 / Motor tab

Motor tab 설정입니다. 여긴 설정이라고 할 것은 없고 확인을 위한 tab입니다.

앞서있는 adjustments와 servos는 쓸 필요가 없어 건너 뜁니다.

가속센서 값이 줄줄줄 흘러가고 있습니다.


I understand the risk. 이것을 활성화 시켜줍니다. 반드시 프로펠러를 제거합니다. 모터를 돌려볼 것이기 때문에 프로펠러가 끼워져 있으면 위험합니다.

절대로! 프로펠러 제거합니다.


그리고 배터리를 연결합니다.

Master 조금 위로 올려봅니다. 네 개의 모터가 제대로 돌아가면 OK입니다.


Master를 내리고 1, 2, 3, 4 하나씩 따로 돌려봅니다. 1번을 돌렸을 때 1번이 돌고 또 아래 그림처럼 화살표 방향으로 도는지를 확인합니다.


차례대로 1, 2, 3, 4를 확인합니다. 모터 순서는 일치했는데, 2, 3번이 거꾸로 돌고 있습니다.

베타플라이트를 닫습니다.

구글 크롬으로 가서 웹스토어에서 BLHELI configurator를 다운받아 설치합니다.


실행해봅니다. BLHELI configurator는 esc의 펌웨어를 업데이트하거나 모터의 회전 방향을 바꾸거나 할 수 있습니다.

배터리를 연결해둔 채로,
베타플라이트 컨피규레이터는 닫고,
USB를 연결한 채로

BLHELI configurator 크롬 앱을 열고 connect 버튼을 누릅니다.


Read setup을 누릅니다.


Esc 2번과 3번을 normal에서 reversed로 바꿔줍니다.


Write setup을 누릅니다. 2번과 3번 모터의 회전 방향을 바꾸어주었습니다.

다시 베타플라이트의 motor 탭으로 가서 모터가 모두 방향에 맞게 도는지 확인합니다.

완전 초보도 따라하는 하이엔드 레이싱 드론 만들기 #17 - 베타플라이트(Betaflight) 완전정복 / Modes tab 설정

베타플라이트 modes tab 부분을 설정하겠습니다. 비행모드, 아밍, 비퍼 이 세가지를 설정할 것입니다.

모드탭으로 일단 들어가면 아래와 같습니다.


ARM에서 add range를 누르고,


 AUX1을 할당해주고 bar를 그대로 끌어서 맨 오른쪽에 가져갑니다. Bar 아래에 보이는 노란색 눈금이 현재 switch의 위치를 나타냅니다. 노란색 눈금이 bar 아래에 놓이게 되면 ARM이 활성화됩니다. 즉, 시동이 걸린단 얘기지요.


Arm switch를 내리면 아래와 같이 노란색 bar 영역을 벗어나게 되어 disarm 상태가 됩니다.


angle과 horizon을 모두 add range를 눌러줍니다.


Angle mode의 bar만 맨 오른쪽으로 끌어다 놓고 channel은 aux 2


Aux 2 switch는 삼단 스위치였던 거 기억하시나요? 맨 아래에 위치할 때는 angle과 horizon이 모두 활성화되지 않습니다. 베타플라이트에서는 default가 acro 모드이기 때문에 플라이트 모드 스위치를 맨 하단에 위치시키면 자연스럽게 acro 모드가 됩니다. 중단에 놓게 되면 horizon mode 상단에 놓게되면 angle mode가 됩니다.


Beeper 설정을 해보겠습니다. Beeper에 add range를 하시고, aux 3을 넣어준 다음에,


Bar는 맨 오른쪽으로 끌어다 놓습니다.


이로써 mode 설정이 완료되었습니다.


오른쪽 맨 아래에 save 버튼을 잊지않고 눌러줍니다.

2018년 7월 23일 월요일

완전 초보도 따라하는 하이엔드 레이싱 드론 만들기 #16 - 베타플라이트(Betaflight) 완전정복 / Receiver tab 설정 2/2

베타플라이트 receiver tab 설정 두 번째 시간입니다. 이번 포스팅에서는 arming, flight mode, buzzer switch가 동작하도록 할 것입니다.

USB를 FC에 연결하고 베타플라이트를 열어 receiver tab으로 갑니다

조종기의 전원을 켭니다.

Model selection 화면에서 해당 모델을 선택하고,


Menu button을 한 번 누른 뒤에, page 버튼을 눌러서 mixer 화면으로 갑니다. 아래 사진에서 볼 수 있듯이 channel 1,2,3,4 순서대로 aileron, elevation, throttle, rudder가 배정되어 있고 이것은 roll, pitch, engine, yaw랑 각각 같은 뜻입니다. 저는 8개의 채널을 사용하기로 했기 때문에 이제 남은 채널은 4개가 되고 이 네 개의 채널에 조종기의 switch를 할당해서 사용할 수 있습니다.

그러나 4개 다 쓸 필요도 없습니다. 저는 주로 3개의 스위치만 쓰는데요. 드론에 시동을 걸기위한 arming switch, 비행 모드를 바꿔주는 flight mode switch, 그리고 부저를 울려주는 buzzer switch 이렇게 3개를 할당하려고 합니다. 조종기에 여러 개의 스위치나 슬라이드가 달려 있을텐데요. 각각의 스위치에 이런 기능들이 이미 할당되어 있는 것이 아닙니다. 이어지는 설명처럼 직접 할당해서 사용합니다. 


빈 channel인 ch5로 커서를 옮기고 enter를 누릅니다.


Mix name엔 arm으로 적어줍니다. 원하시는 이름으로 적어주셔도 됩니다. 


이제 source로 내려가셔서 enter를 누르면 현재 S1 switch로 되어 있는 것이 깜빡깜빡 거립니다. 사진에는 깜빡거리는게 나타나지 않습니다.


이때 arming에 사용할 switch를 한번 움직여 봅니다. 저는 조종기의 왼쪽 어깨에 있는 스위치 중에서 아래쪽에 있는 SF switch를 arming switch로 사용하기 때문에 SF switch를 움직였습니다.


그리고 exit 버튼을 눌러 빠져나오면 arming switch SF가 channel 5에 할당되었습니다.

이제 베타플라이트 창을 볼까요? aux1 channel의 바의 크기가 줄어들었습니다. 여기서 약간 알쏭달쏭할 수 있는데요. Channel 넘버랑 aux 넘버가 아래와 같이 매칭되기 때문에 channel 5는 aux 5가 아니라 aux 1이 됩니다.

roll, pitch, yaw, throttle, aux1, aux2, ...
ch1,   ch2,   ch3,   ch4,   ch5,   ch6, ...

어쨌든 SF 스위치를 딸깍 딸깍 움직여봅니다. 그러면 aux 1에서 bar가 늘었다 줄었다 할 것입니다. 정상적으로 할당이 된 것이죠.

SF 스위치를 내렸을 때,


SF 스위치를 올렸을 때,


비행 모드를 바꿔주는 스위치를 할당해 보겠습니다. 빈 슬롯인 channel 6로 가서,


Flight mode를 줄여 FMD라 이름을 붙이고,


SG 버튼에 할당합니다. 꼭 SG 스위치가 아니어도 상관없습니다만 3단 스위치에 할당을 하셔야 합니다. 왜냐하면 비행 모드가 angle, horizon, acro 이렇게 3개의 비행 모드가 있기 때문입니다.


Channel 7으로 가서,


Buzzer switch를 할당합니다. 저는 buzzer switch는 SH 스위치에 할당을 했는데요. 이 스위치는 딸각하고 올렸다가 손을 떼면 다시 제자리로 오는 복원력이 있는 스위치입니다. Buzzer를 쓰게 되는 경우는 풀섶이나 나무에 걸린 드론의 위치를 확인할 때 부저를 울리게 하는 용도로 쓰는데 두어번 울리는 걸 듣고 다시 좀 가까이 걸어가서 다시 부저를 울려보고 하기 때문에 계속 켜두어 시끄럽게 울리게 하진 않습니다. 따라서 SH 스위치를 씁니다.


Channel 3개에 switch들 할당이 완료되었습니다.


Aux 2 의 삼단 스위치 한번 아래와 같이 테스트 해주시고요.

하단


중단


상단


Buzzer switch도 aux 3에서 잘 작동하는지 확인들어갑니다.

하단


상단


스위치에서 손을 떼면 다시 아래와 같이 됩니다.


Receiver tab 설정이 모두 끝났습니다.

이제 거의 다 되었습니다. 몇 가지 과정만 거치면 새로 만든 이 녀석을 가지고 비행을 할 수 있는 날이 머지 않았습니다.