System Compleat.

'Hobbies'에 해당되는 글 24건

  1. ffmpeg를 자막 입히기, 자막 위치 조정
  2. Drones. (1)
  3. FPV for soaring!
  4. Gliding, and FPV systems.
  5. Personal FPV RC project for 2013 (3)

ffmpeg를 자막 입히기, 자막 위치 조정

Hobbies


(younjin.jeong@gmail.com, 정윤진) 


간혹 이런 저런 목적으로 유튜브에 비디오를 자막과 함께 올리는데, 유튜브의 경우 특정 자막이 포함된 링크를 생성하는 것이 불가능하여 아예 자막을 영상에 구워서 업로드 하는 방법을  사용하고 있다. 관련해서 매우 많은 다양한 도구가 있지만, 편의상 사용하는 방법은 아래와 같다. 


  1. ClipGrab 과 같은 도구를 사용해서 원하는 영상을 다운로드 받는다. (저작권 문제는 논외) 
  2. Youtube 에서 제공하는 "Creator Studio" 를 사용하여 원본 영상을 올린다.  
  3. Creator Studio 에 보면, "새로운 자막을 생성" 옵션에서 자막을 신규로 만들어 넣을 수 있도록 기능을 제공하는데, 이걸 사용해서 자막을 제작 한다. 
  4. 자막을 만들고 나면, "Action" 버튼에서 만들어진 자막을 srt 외 몇가지 포멧으로 다운로드 받을 수 있다. 
  5. srt 로 다운 받는다. 
  6. ffmpeg 로 ass 포멧으로 변환한다. 
  7. .ass 자막 파일을 열어 자막의 위치를 원하는대로 수정한다. 
  8. ffmpeg 로 자막을 비디오에 입힌다. 


Youtube Creator Studio 


.srt 자막을 .ass 로 변환하는 커맨드는 다음과 같다. 

ffmpeg -i input.srt output.ass


output.ass 파일을 열면 아래와 같은 포멧이 나타난다. 

[Script Info]

; Script generated by FFmpeg/Lavc57.24.102

ScriptType: v4.00+

PlayResX: 384

PlayResY: 288


[V4+ Styles]

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding

Style: Default,Arial,16,&Hffffff,&Hffffff,&H0,&H0,0,0,0,0,100,100,0,0,1,1,0,2,10,10,10,0


[Events]

Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text

Dialogue: 0,0:00:00.00,0:00:01.04,Default,,0,0,0,,피보탈 | 마이크로 서비스

Dialogue: 0,0:00:01.22,0:00:05.60,Default,,0,0,230,,마이크로 서비스는 거대한 서비스가 각각 독립적인 코드로 구성된 작은 서비스들로 이루어진 것을 말합니다.

Dialogue: 0,0:00:05.66,0:00:08.68,Default,,0,0,270,,개발자들은 마이크로 서비스를 새로운 앱을 개발할때 적용하거나

Dialogue: 0,0:00:08.88,0:00:12.88,Default,,0,0,270,,기존의 소프트웨어를 다수의 파트로 나누어 구성하기도 합니다.

Dialogue: 0,0:00:12.96,0:00:17.26,Default,,0,0,250,,마이크로 서비스 아키텍처는 소프트웨어의 빠른 릴리즈를 도울 뿐만 아니라

Dialogue: 0,0:00:17.38,0:00:20.94,Default,,0,0,250,,팀을 작은 규모로 유지하여 더 나은 업무 프로세스를 만들 수도 있습니다.

Dialogue: 0,0:00:21.06,0:00:24.84,Default,,0,0,250,,이런 마이크로 서비스 접근은 팀이 변화의 요구에 부응하며

Dialogue: 0,0:00:24.84,0:00:26.84,Default,,0,0,250,,새로운 기능을 고객에게 전달할 수 있도록 합니다.

Dialogue: 0,0:00:27.06,0:00:30.84,Default,,0,0,250,,마이크로 서비스 아키텍처는 작은 규모의 소프트웨어를 독립적으로 운용 함으로서

Dialogue: 0,0:00:30.90,0:00:35.36,Default,,0,0,250,,개발과 혁신의 속도를 높여주는 핵심 엔진입니다.

Dialogue: 0,0:00:35.56,0:00:37.56,Default,,0,0,0,,피보탈 | 세상이 소프트웨어를 만드는 방법을 혁신 합니다.


여기서 Events 부분의 Format 을 살펴보면, MarginL, R, V 의 값이 있다. 상단과 하단의 조정은 V 값을 변경해서 적용한다. 변경 적용이 완료 되면 파일을 저장하고 ffmpeg 를 사용해서 비디오에 자막을 입힌다. 이때, ffmpeg 에는 자막 관련 라이브러리를 사용해서 컴파일이 되어 있어야 한다. 

커맨드는 아래와 같다. 

ffmpeg -i INPUT_VIDEO.mp4 -vf subtitles=INPUT_SUBTITLES.ass OUTPUT_VIDEO_NAME.mp4



그러면 아래와 같은 화면이 출력되며 신나게 인코딩을 수행한다. 

ffmpeg version 3.0 Copyright (c) 2000-2016 the FFmpeg developers
  built with Apple LLVM version 7.3.0 (clang-703.0.29)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.0 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-libass --enable-vda
  libavutil      55. 17.103 / 55. 17.103
  libavcodec     57. 24.102 / 57. 24.102
  libavformat    57. 25.100 / 57. 25.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 31.100 /  6. 31.100
  libavresample   3.  0.  0 /  3.  0.  0
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'What are Microservices.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    creation_time   : 2017-05-08 22:20:16
    encoder         : Lavf54.6.100
  Duration: 00:00:38.10, start: 0.000000, bitrate: 2137 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 2029 kb/s, 24 fps, 24 tbr, 90k tbn, 48 tbc (default)
    Metadata:
      creation_time   : 2017-05-08 22:20:16
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
    Metadata:
      creation_time   : 2017-05-08 22:20:16
      handler_name    : SoundHandler
File 'What-are-Micro-Services-KR-sub.mp4' already exists. Overwrite ? [y/N] y
[Parsed_subtitles_0 @ 0x7fb1dc500a60] Shaper: FriBidi 0.19.7 (SIMPLE) HarfBuzz-ng 1.2.4 (COMPLEX)
[Parsed_subtitles_0 @ 0x7fb1dc500a60] Using font provider coretext
[libx264 @ 0x7fb1dc80de00] using SAR=1/1


완료되면 비디오를 열어 확인한다. 

AEGISSUB 와 같은 좋은 도구가 많지만 웬지 커맨드 라인이 더 익숙해. 


(younjin.jeong@gmail.com, 정윤진) 






저작자 표시 비영리
신고

Drones.

Hobbies


(younjin.jeong@gmail.com, 정윤진) 





Drone 이라 하면 요새 뉴스에서 하도 나와서 허접한 비행체라 생각하는 사람들이 많을 듯 하다. 어떤 군사적인 목적을 가지고 만들어진 무인 비행체, 즉 UAV (Unmanned Aerial Vehicle)의 개념으로서 나쁜 인식만이 점차 늘어가고 있는 것 같아 안타까운 마음도 조금 있다. 언제나 기술이란 양날의 검과 같아서 이로운 점과 해악이 되는 점이 공존하는 거니까. 생각해 보면 무선 기술 역시 이미 군사용과 민간용으로 널리 사용되고 있지만, 그 나쁜 사용의 예에 대해서는 모두가 인지하지는 못한다. 이를테면, 무선 카메라 영상 송출과 같은 소형 시스템들. 



http://en.wikipedia.org/wiki/General_Atomics_MQ-9_Reaper


(군사용으로 사용되는 MQ-9 Reaper 의 내부 모습. 제어를 위한 위성 통신을 위한 모듈과 비행 데이터 센서, 컴퓨터 등이 보인다.)



소형 비행체가 내는 소리가 벌이 날아다니는 소리와 비슷한 소리가 난다고 해서 붙여진 이름이 바로 드론, drone. 


최근 3년 전 즈음부터 무선 조종을 좋아했던 연유로 인해, 또 직업이 컴퓨팅이고 게다가 어린시절 좋아했던 비행기 조종이 겹치니 세상에 이렇게 삽질이 즐거운 기술 + 취미가 없었더랬다. 비글을 붙이고, 아두이노를 붙이고, 센서를 사다가 붙이고 하면서 실시간으로 데이터가 전송되고 눈에 고글쓰고 조종사의 기분을 느낀다는것은 참 새로운 경험이었더랬다. 



http://img375.imageshack.us/img375/8956/img0509b.jpg



하지만. 


모든 취미는 취미로 끝나면 안된다는 생각을 하고 있는 내가, 이걸 어떻게 하면 보다 더 이롭게 사용할 수 있을까 하는 생각을 했다. 모든 군사용 장비, 비행기를 제외하고라도 이러한 장비들은 고도의 장애 방지 시스템과 격오지에서도 활동 할 수 있는 것을 전제로 하기 때문에 매우 고가의 시스템들이 요구된다. 


따라서 민간용으로 이 사용을 기대해 본다면, 사실 indivisual 하게 연구 목적용과 같은 것 아니면 별 의미가 없는. 따라서 이를 현재의 항공 시스템처럼 체계화 하면 어떨까 하는 생각을 하게 되었는데, 그 중 하나가 바로 물류 시스템이다. 10-20Kg 내외의 물류를 산간 격오지 또는 재난이 발생한 지역등에 의료 물자 수송 또는 택배 시스템으로의 도입을 생각 해 볼 수 있다. 또는 도로 교통 정보의 수집, 열화상 카메라 장착을 통한 산악 지형에서의 조난자 수색, 무선 통신이 힘든 지형에서의 임시 중계기의 역할 등 다양한 임무의 수행이 가능해 진다. 



http://www.rtfdrones.co.uk/product/thermal-core-flir-tau-2-336-9hz/



일반적으로 배터리 및 기타 부대 장비를 장착하고 날개의 길이가 2m 정도 되는 2Kg 의 비행체는 1.5Kg 정도의 payload 를 견딜 수 있고, 여기에 최근 소형화된 컴퓨터와 각종 센서 및 프로그램 화 된 경로를 넣어준다. 여기까지는 일반 FPV/UAV의 컨셉과 동일하지만, 더 중요한건 지상 관제소. 현대의 공항 시스템과 같은 모델이 UAV 크기에 맞게 축소 된 형태로 지상의 곳곳에 위치하고, 현재 상공에 떠 있는 모든 드론들의 위치가 추적이 가능해야 한다. 현대의 민간 항공 시스템에 적용되는 규정에서 사람이 없고 비행물체가 저렴하다는 전제 하에 관련 법규의 마련도 필요 할 듯. 



최근의 모든 기술은 서로 융합되고 있다. 항공 기술은 그 자체로 다양한 기술의 집합체이고, 뭔가 비행을 통해 이루려는 소기의 목적이 각종 데이터와 연관이 될 필요성이 있으며 이는 실시간에 가까운 제어, 사진 및 획득된 영상의 분석 그리고 비행 그 자체의 안전을 위한 기술이 서로 합체되어야 한다. 



http://www.ll.mit.edu/mission/aviation/faawxsystems/itws.html



뭔가 몸이 고장난 상태에서 정신없이 썼지만, 어쨌는 핵심은 

"다수의 드론을 효과적으로 특수 목적에 맞게 운용하려면 체계화된 시스템이 필요하다" 


실제 현실 세계에서 적용 되려면 참 먼 미래의 이야기겠지만, 일단 지상 관제 시스템의 제작에 재미를 붙여 볼 예정. 

생각만 해도 신이 난다. 

팀 짜보고 싶다. 


아래의 영상은 TED에서 발표된 드론의 이로운 활용. 










글은 나중에 일단 다시 손보는 걸로. ㅋ 


(younjin.jeong@gmail.com, 정윤진) 



저작자 표시 비영리
신고

FPV for soaring!

Hobbies


(younjin.jeong@gmail.com, 정윤진) 


최근에 미쳐서 사는게 두가지 정도 있는데, 그중 가장 큰 하나가 바로 이 비행 분야이다. RC 는 그 자체만으로도 상당히 즐겁지만, 여기에 컴퓨터로 제어하는 비행 시스템을 추가하게 된다면 더 재미지지 않겠는가의 하나와, 카메라를 달아 날리게 되면 직접 비행을 하는 것 같은 시뮬레이션 보다 백배는 즐거운 경험이 생기게 된다. 

Image from "Gliding sports page on Facebook"


사실은 직접 비행하는것이 가장 즐겁고 좋은 경험이겠지만, 어쩌겠는가. 한국에는 시설도 비행기도 없는 것을. 


언제가 될 지 모르는 이번 휴가에 거하게 작업을 진행 할 계획이다. 원래 DG-1000 이라는 2.6m 나 되는 Wingspan 을 가진 글라이더가 있기는 하지만, 이게 모터가 없다 보니 토잉을 해 줄 뭔가가 없다면 혼자서 나는 것은 산꼭대기 이외에는 불가능. 


그래서 비행기를 이렇게 저렇게 다시 알아보는 와중에, 아래와 같은 녀석이 수배 되었다. 




모델명은 DG-808s 로, 등짝에서 프로펠러가 등장하여 필요 할 때에 동력을 사용 할 수 있다. 

작아 보이는 글라이더지만, 실제로 Wing span 은 기존의 DG-1000 보다 약 1.7배나 더 큰 4M. 





4m 짜리 글라이더는 날개를 분리해도 한쪽이 2m. 하지만 비행기가 큰 만큼 배터리를 추가로 넣기가 용이 할 테고 추가적인 FPV 용 카메라 시스템이나 GPS 와 같은 센서들을 추가 하더라도 부담이 덜 하지 않을까. 물론 비행 장소까지 들고 가는건 엄청난 일이 될 것 같은 느낌... 



내 키보다 조금 작은 동체길이와 내 키보다 훨씬 큰 날개 두짝... 특수 가방이라도 제작해야 하지 않을까 하는... 


비행체는 이보다 더 다양한 옵션이 찾아보면 볼 수록 나오는데, 크기로 인해 배송등에 제약이 발생 할 수 있으므로 주의. 


a. 2.6m wing span에 모터: http://www.scaleflying.com/DG-1000-Scale-Glider-With-Propeller-Plastic_p_2445.html 

b. 5.3m DG-1000, 모터 포함인지는 모름 : http://www.icare-rc.com/dg1000_5_3m.htm   

c. 4m DG-808s : http://rcmodelaircraft.com.au/products/dg808s-rc-glider-4m-wing-span-fiberglass-balsa-electric-glider.html



비행체에 대한 계획은 이 정도로 하고, 이후는 여기에 탑재 될 전자 시스템 구성. 





이 복잡 다단해 보이는 일련의 장치들은 대략 다음과 같은 일을 하게 될 것이다. 


- 배터리는 당삼 빠떼루 전원 공급 

- Camera - OSD - Video TX 는 실시간 영상에 고도/속도/GPS/방위 정보를 덧입힌 비디오를 지상으로 전송한다. 

- UBEC 와 Regulator 는 안정된 전원을 각 기관에 공급 

- Radio receiver 는 조종신호 수신기로서 지상으로 부터 조종과 관련된 신호를 수신. 일반적인 RC 라면 여기에 바로 서보를 물리겠지만, 여기서는 메인 통제 보드로 수신된 신호를 넘긴다. 

- 배터리는 메인, 예비의 2개로 스위칭을 통해 전환 가능하도록 구성 

- Beagle 보드와 Arduino 가 하는 일이 많다. 위에 나열된 각종 센서를 바탕으로 현재의 위치와 자세 등에 대한 정보를 획득하여 적절한 알고리즘을 통해 자세를 보다 안정적으로 제어하고, 글라이더 본연의 임무인 바람을 더 잘타도록 하거나, 착륙시에 더 안정적인 자세 보정을 지원하는 등의 기능을 하도록 하는것이 가능하다. 물론 지금은 재미로... 지만. 

- 3G module 은 바로 전화기에 사용되는 그 3G module 이 맞다. 거의 1초에 한번씩 수집되는 로그를 DynamoDB 나 SQS 로 전송~ 




Image from "Gliding sports page on Facebook"




단거리 비행이라면 관계 없지만, 언제나 비행 및 비디오 신호의 전송거리는 멀면 멀 수록 안전하다. 그렇다면 멀면 멀 수록은 어떻게 구현하면 될까. 일단 나만의 답은 지향성 안테나를 사용 하는 것으로. 그럼 지향성 안테나라는 것은 무엇이냐. 각 주파수 대역별로 별도의 신호 송수신이 가능한 안테나들이 아래와 같이 이미 시중에 나와 있다. 





그러니까, 이런 방향성 안테나를 각각 비디오 시그널 주파수, 조종 시그널 주파수, 텔레메트리 수신용 주파수의 세가지를 결합하여 비행기가 현재 위치하고 있는 방향과 높이로 바라보게끔 하면 되는것이다. 마치 해바라기 처럼. 


자 그럼 문제는 이제 비행기가 하늘에 압정으로 박아 놓은 것 처럼 가만히 있을리가 없다는 것인데, 이 문제를 해결 하기 위해서는 안테나가 비행체가 움직이는 방향에 따라서 같이 움직여 주어야 한다는 것이다. 보통 이런걸 Tracking antenna 라고 하는데, 이를 위한 구성은 대략 아래와 같다. 가장 기본적인 알고리즘은 비행기에 달려있는 GPS를 통해 파악된 위치를 텔레메트리 시스템을 통해 지상으로 전달하고, 지상의 안테나 시스템에 달려있는 GPS 와 상대 거리와 고도를 계산하여 안테나가 올바른 방향을 향하도록 Stepping motor 를 조절하는 것이다. 


무슨말인지 잘 모르겠다면, 아래의 영상을 참조 하면 될 듯. 




이것은 가난한 버전. 




이것은 고가의 군사/산업용 버전. 



그러니까 대충 이런 것들이 조합되면 어떤 그림인가 하면, 이런 낚시와 같은 외로운 취미가 되거나 친구들이 있다면 함께 즐길 수 있는 좋은 취미가 된다는 것이다. 





아무튼 그럼 이런 지상 시스템은 어떤 구조가 될 것인가. 





보통의 경우에는 대부분 서보를 안테나 기동에 사용하는데, 나의 경우에는 스테핑 모터를 사용하여 보다 정교한 조정이 가능하게 하는 것이 목표. 가난하게 만들었지만 상용같은 느낌이 나도록. 히힛



이런 저런 경험을 통해, 이런 취미는 하루 아침에 완성되는 것이 아니라는 것을 잘 안다. 일단 학습해야 할 내용이 많고, 또 코딩해야 할 내용이 많다는 것. 중요한 것은 이런 취미를 가지고 주중에는 알고리즘에 대한 행복한 고민을, 주말에는 청명한 하늘이 있는 너른 장소에서 도심에 지친 마음을 쉴 수 있다는 것. 



정말 이 문구 사랑한다. 


If flying were the language of men, soaring would be its poetry.



글라이딩, Soaring. 조만간 FPV 로 즐겨 볼 수 있기를! 




Image from "Gliding sports page on Facebook"



(younjin.jeong@gmail.com, 정윤진)


저작자 표시 비영리
신고

Gliding, and FPV systems.

Hobbies


(younjin.jeong@gmail.com, 정윤진) 


하늘을 날고 싶다는 생각은 어린시절 탑건이라던가, 아이언 이글 같은 말도 안되는 비행기 영화를 보았던 어린이라면 누구나 한번쯤 꿈꾸는 로망같은 일이다. 하여 공군 사관학교를 꿈꾸며 살았었건만, 이놈의 키보드를 잡는 바람에 땅에서 좌우로 퍼지는 삶을 사는 중. 


현실이 그렇다고 해도 뭐 굳이 꼭 F-15 를 조종한다거나 아니면 Commercial airline 에서 기장이 아니라고 해서 비행을 할 수 없는 것은 아니다. 조종교육을 받아 특정 비행시간을 이수하면 맑은날에만 Solo 비행이 가능한 Private license 를 획득 할 수 있다. 비행기라는 것의 특성상 당연히 각종 계기들을 읽을 수 있어야 하며, 항법 및 통신을 위한 주파수 조정과 관련된 작동법을 알아야만 한다. 이런 계기들만을 기반으로 한 비행이 가능하다는 면장이 별도로 있으며, 흐린날 비행을 위해서는 이 면장이 반드시 필요하다. 


상업을 목적으로 한다면 여기에서 더 나아가 각종 규정과 비행기종 별 비행시간을 충족해야 한다. 이러한 사항들에 대해서는 약간의 검색만으로 어떻게 하는지에 대해 알아 볼 수있다. http://blog.daum.net/noran1234/6051212  



이러한 엔진 출력을 기반으로 한 일반 단발기의 비행목적이 아니라면, 그리고 취미로서의 비행 자체에 관심이 높다면 난 다음의 두가지 방법이 가장 매력적이지 않을까 한다. 하나는 직접 체험이며, 다른 하나는 간접 체험. 


직접 체험은 바로 글라이더를 조종 해 보는 것이다. 먼저, 백문이 불여일견. 










글라이더는 보통 토잉이라 하여 경비행기 뒤에서 줄을 연결해 적정고도로 상승후 동력 없이 자유 비행을 한다. 따라서 글라이더 조종을 위한 라이센스나 관련 법규는 국가마다 다른데, 우리는 아쉽게도 국내에 이런 시설이나 설비가 없어 글라이딩을 하려면 해외로 나가야 한다. 


글라이더와 관련된 라이센스에 대해서는 검색 및 다음의 링크를 참조. : http://en.wikipedia.org/wiki/Glider_pilot_license  


DG-1000 이라는 모델의 글라이더의 cockpit 






이런 비행을 즐기려면 아마도 호주나 미국 하와이, 캐나다나 유럽을 가야 한다. 보통 비행 클럽으로 활성화 되어있는 경우가 많은 듯. 글라이딩 역시 일종의 팀스포츠로 취급하는 경우가 많은데, 미국같은 나라에서는 solo 자격을 획득하면 혼자 산넘고 물건너 다니는 경우도 많은 듯 하다. 



이런 비행을 매달 즐기는 것은 일반 직장생활 하면서는 거의 불가능에 가까울 것이고, 보다 자주 비행을 즐길 수 있는 방법의 두번째는 바로 RC 글라이더를 사서 FPV 로 개조 하는 것. 






FPV 시스템을 만드는 것은 다음번에 보다 더 자세히 소개하는 것으로. 


여름 휴가는 어차피 제때에 가지도 못할 듯 하고 날씨도 구려서 별로이니까 늦여름이나 가을 사이에 가까운 글라이더 비행장을 수소문 해서 꼭 배워보리라. 


(younjin.jeong@gmail.com, 정윤진) 



저작자 표시 비영리
신고

Personal FPV RC project for 2013

Hobbies


(younjin.jeong@gmail.com, 정윤진) 


** 덧:  요새 블로가 미쳐가지고 font-size 가 자기 마음대로.  3개월 안에 블로그를 옮길 듯.. 


복잡했던 2013년의 1월을 보냈다. 아마 살면서 가장 큰 결정을 내렸던 한달이 아니었나 싶다. 덕분에 10Kg 감량은 덤. 


산다는게 자빠져 있는다고 누가 손 내밀어 일으켜 주는 것도 아니고, 어떻게든 스스로 일어나서 살아야 하지 않겠나 싶은 생각이 들었다. 갑자기 하늘에서 선녀가 내려와 여친이 되어 줄리도 만무하고, 좋아하는거 안하면서 사는것도 괴로울 뿐이다. 그래서, 1년짜리 취미 프로젝트를 하나 기획 해 보았다. 물론, 제목과 같이 RC 와 관련된. 


지난번에는 저렴한 RC 헬기를 즐기는 방법을 써 보았는데, 결국 배송이 되고 보니 몇가지가 맞지 않는 문제가 생겼다. 주문했던 모터에 포함된 스크류 드라이버가 헬기 키트에서 제공하는 것과 사이즈가 맞지 않는다던가 하는 뭐 그런 자잘한 것들. 헬기야 이제 부품들이 있으니 언제 만들어도 만드는 것이지만, 원래 부터 나는 비행기를 하고 싶었고 또 해 왔기 때문에 오늘은 아래의 주제에 대해 정리를 한번 해 보고자 한다. 



"FPV RC for Long Range flight" 



이게 뭥미? 하는 분들을 위해 간략하게 정리 해 보면, 

- 비행기에 카메라를 달아서 실시간으로 영상을 전송 받아 직접 보면서 조종하는 취미 - 

란 것이다. 




Long range 라면 얼마겠는가 하는 질문이 생길 수 있는데, 우리나라가 뭐 미국처럼 광활한 땅덩어리를 가진 것도 아니고, 50마일 씩이나 날릴 수 는 없지 않겠나 싶다. 강원도나 경기도 북부에서 RC 날리다가 배터리 떨어져서 엄한데 떨어지면 그것도 잡혀갈 일. 

일반적인 RC 조종기로 조종이 불가능한 2Km 이상, 5Km 이하 정도면 배터리를 동력원으로 하는 비행기로서는 충분하지 않을까 싶다. 개인적인 생각으로는 날개길이 2.6미터의 글라이더를 이용 할 생각인데, 이는 일단 고도 확보만 되면 모터를 계속 돌리지 않아도 충분히 먼 거리를, 오래 즐겁게 날릴 수 있지 않을까 하는 생각에서다. 


사실 이런 비행 시스템을 만드는데는 이미 대부분 완제품으로 구성된 시스템들을 구매하는 방법 하나와, Arduino 와 같은 보드 기반으로 만드는 방법 두가지가 모두 존재한다. Arduino 를 사용하는 방법은 지난번에 소개한 구글 프로젝트 사이트에 잘 나와 있으므로 참조하도록 하고, 오늘은 상용 제품 기반으로 한 1년 동안 천천히 하나씩 추가하는 방향으로 진행 해 볼까 한다. 


자 그럼, 시작. 



1. 필요 부품 목록 


- 조종기 

- 비행체 

- 장거리 비디오 시스템

- 장거리 조종 시스템

- 텔레메트리 시스템 ( 고도, 속도, GPS 위치 ) 

- 비행 안정 장치 

- 비행 상태 확인 시현 장치 

- 비디오 영상 시현 고글 

- Head tracking 

- 추가 비디오 녹화 장치 ( GoPro HD3 등 ) 



2. 요구 사항 

- 재미져야 함. 

- 비행의 모든 정보를 초단위로 기록, 실시간으로 지상에 전송 가능해야 함. 

- 지정된 방위와 GPS 상 위치에 자동으로 착륙이 가능해야 함. 

- 이륙/착륙/선회/상승/하강등의 모든 동작에서 +-2G 이내로 자연스럽게 동작해야 함. 

- 바람의 영향을 가급적 빠른 시간 내에 보정 할 수 있어야 함. 

- 조종기 대신 조이스틱의 사용이 가능해야 함. 

- 5Km 정도의 비행이 가능해야 함. 

- 차량으로 부터 전원을 공급 받거나, 차량 안에서 조종이 가능 해야 함. 

- 지정된 GPS 상의 좌표와, 순차적으로 지정된 Waypoint 및 EOT 에 도착 가능해야 함. 

- 추가 카메라 시스템의 설치를 위해 3Kg 정도의 추가 하중을 견딜 수 있어야 함. 

- 비디오/조종 신호가 미약하거나 문제가 있는 경우 자동 RTB 가능 해야 함. 

- 귀환을 위한 최소 배터리량의 지정이 가능해야 하고, 이 잔량에 도달 시 자동 복귀가 가능해야 함. ( Bingo fuel ) 



3. 기간 

처음 1년 

- 비행체 구성 

- 지상 시스템 구성 


그 다음 1년 

- 조종기 없이 조이스틱으로 비행 가능 하도록 조종 시스템을 대체 ( 쿠거 사용 예정 )

- 비행체 추적, 보다 무거운 하중의 안테나를 사용 할 수 있도록 스테핑 모터 기반의 시스템으로 교체 

- 자동 착륙 시스템 

- 자동 이륙 시스템 

- 비행 안정 시스템 보강 

- 비행 계획 실시간 변경/전달  



4. 리스트 


a. 비행체   

이건 크게 두가지로 생각하고 있는데, 하나는 모터를 가진 글라이더, 다른 하나는 FPV 용으로 많이 사용되는 Skywalker 라는 제품이다. 물론 처음 하시는 분들이라면 Easystar II 또는 Easy glider, Twinstar 같은 Multiplex 제품을 추천. 


Image from: http://www.hobbyking.com

Image from: http://www.hobbyking.com

처음에는 기성 제품을 사용하고, 경험이 쌓이면 향후 Giant Scale 로 이동을 목표. 아래는 106" 30-50 급 Giant 비행기 


Images from: http://www.nitroplanes.com/90a272r-gas-skychamp-red.html



비행기는 이정도로 정리. 그나마 헬리콥터나 멀티콥터에 비해 저렴해서 다행. 




b. 조종기 


이것 저것 하려면, 사실 HiTec 보다는 Futaba 의 조종기가 더 나은듯. 별도의 송/수신 시스템이 필요하지 않고 기본 2.4GHz 의 방식만 사용하는 경우라면, 헤드 트래킹 시스템과 같은 추가 시스템을 붙이는 것이 Futaba 가 훨씬 유리하다. HiTec 의 경우에는 수많은 검색 이후에도 제품간의 결합이 괜찮은지에 대해 확신을 얻기가 힘듦. 단, 조종기만의 성능이면 HiTec 도 괜찮은 듯. 


필자는 현재 Aurora 9 을 사용 중. 


9 채널이고, 각종 복잡한 설정을 지원한다. 헬리 콥터 할 때는 잘 모르겠지만, 비행기 날릴때는 모델 지정과 트림 설정이 가장 많이 사용 되는 듯. 추가로 설정해서 사용하는 기능이라면 에일러론 + 러더 믹스 정도? 


원래는 NiMh 배터리가 들어있지만, 친구의 도움으로 LiPo로 교체하여 사용중. 향후에는 조이스틱이든 Futaba 로든 어쨋든 변경이 되지 않을까 생각함... 




c. 장거리 비디오 시스템 


현재 5.8GHz 제품을 두개 정도 가지고 있기 때문에, 여기서 추가로 1.2GHz 와 같은 제품군을 보는 것 보다는 지향성 안테나를 추가하는 것이 맞다고 본다. 현재 가지고 있는 FatShark 에 5.8GHz 용의 추가 안테나를 지향성으로 붙이면 될 것 같은데, 아마도 Eagletree 라는 회사의 제품을 통해 쉽게 가능 할 것 같다. 


http://www.hobbywireless.com 이라는 사이트에서는 이 Eagletree 제품들을 묶어서 판매하고 있는데, 다른 사이트에 재고가 없는 경우 등에 한번 방문 해 보면 좋을 것 같다. 


아무튼 이 제품은 비행기에 다는 제품과 조종하는 사람이 있는 위치에 설치 될 Ground station 이라는 자사 제품간 통신을 통해 지향성 안테나가 동작 하도록 해 준다는 장점이 있다. 아래는 해당 제품을 다 엮었을 때의 동영상. 




위의 동영상은 비행기가 현재 날고 있는 위치를 안테나가 바라보게 함으로서 보다 좋은 송/수신율과 신호를 잃어버리지 않을 확률을 높여준다. 


아무튼 FPV 맛은 실시간으로 수신되는 영상을 보고 직접 조종하는건데, 영상에 문제가 생기면 사실 모든 것을 잃어 버릴 가능성이 높기 때문에 가급적이면 적절한 시스템으로 준비 해 주는 것이 좋겠다. 그게 싫거나 여기에 쓸 자금이 충분하지 않다면, 멀리 날리지 않으면 된다. 


필자의 경우 간단한 안테나 업그레이드 만으로 약 800 미터까지는 날릴 수 있었는데, 바로 내부에 Clover leaf 라고 불리는 구조의 안테나가 바로 그것이다. 수신되는 비디오의 화질이 좋지 않거나 하는 경우 옵션으로 고려해 볼만 하다. 



5.8GHz antenna 




Image from: http://www.rcgroups.com/forums/showthread.php?t=1388264&page=170


위의 안테나를 사용하는 경우, 보다 좋은 화질과 송수신율을 기대 할 수 있다. 



d. 장거리 조종 시스템


조종 시스템의 경우 역시 추가적인 안테나의 설치로 가능 하겠지만, 이 부분은 UHF 로 해결 보기로 했다. 물론 무선 통신사 자격증을 준비 해야 사용이 가능하다. 


문제는 Aurora 9 과 맞는 UHF 시스템을 찾는 것이었는데, 불꽃 검색질 결과 생산자가 직접 테스트까지 완료 해 준 제품은 Dragonlink 였다. 다른 제품들은 사실 잘 모르겠고, 만약 사용중인 조종기가 Futaba 라면 대부분의 벤더가 지원 하므로 입맛에 맞게 골라서 사용하면 되지 싶다. 


hobbywireless.com 에서는 이 시스템을 원큐에 팔고 있다. 고마운 일이야. 

내용물 구성은, 조종기에 어부바 시키는 포대기 브라캣과 송신기, 송신기용 안테나, 그리고 수신기와 수신기용 안테나이다. 어부바가 완성되면 대략 아래의 그림과 같다. 사실 HiTec Aurora 9 과 어부바 된 이미지를 찾고 싶었지만, 못구했다. 양덕들은 잘 안쓰는 듯. 




배터리는 조종기의 배터리를 사용 할 수도 있고, 별도의 배터리를 사용 할 수도 있는 듯.

아무튼 조종 시스템은 이런 방법으로 장거리 화를 추구 할 생각. 



e. 텔레메트리 


아직 확인 된 건 아닌데, Dragonlink 와 Eagletree 가 별로 궁합이 안좋다는 말이 있다. 곰곰히 생각 해 보면, 직접 연결 되어야 하는 부분은 Dragonlink 의 수신기와 Eagletree 의 장치인데, 이거 뭐 포럼을 좀 다녀 보니까 해결 방법이 있는 것도 같고 없는 것도 같고. 


아무튼 텔레메트리는 별도로 구현 할 생각은 별로 없다. 해당 제품은 이런 모습. 



Image from :  http://hobbywireless.com/index.php?main_page=product_info&cPath=19_37&products_id=244 


여기 보면 OSD 라는 제품이 계속 언급되는 것을 볼 수 있는데, 바로 화면에 비행 정보를 표시 해 주는 장치다. 이를테면, 고도, 속도, 방위, 그리고 배터리의 잔량등이 기본적으로 표시 되며, 추가 하는 센서의 종류에 따라 데이터가 보다 정밀 해 지거나 표시되는 데이터가 더 많아진다. 비행 시뮬레이션등을 해 본 경험이 있다면 HUD 에 표시되었던 그 모습과 매우 유사함을 알 수 있을 것. 




Eagletree 의 제품을 사용하고 싶은 이유는 뭐 별달리 없고, 화면 구성이 깔끔하고 아두이노 다음으로 각종 센서의 연결이 가능하다는 점 정도? 그리고 중요한 기능이 있는데, 바로 스위치의 조작에 따라 바로 RTB 를 세팅이 가능하다. 


이를테면 비디오의 시그널을 잃어버리게 되면 스위치를 돌려 원래 있던 위치로 자연스럽게 귀환 하도록 하고, 근처에 오면 육안으로 보면서 조종하여 비행체를 잃게 하지 않는 기능이다. 



f. 비디오 고글 


비디오 고글은, 사실 LCD로 대체해도 된다. 하지만 두가지 이유에서 고글을 사용하는 것을 추천하는데, 첫번째는 야외에서는 LCD 나 비디오가 잘 보이지 않는다. 상하 구분도 잘 안되고, 어디가 어딘지도 잘 안보이기 때문에 박스 등을 잘 재단해서 그늘을 만들어 주어야 한다. 고글은 그냥 바로 머리에 쓰고 눈으로 영상을 보여주는 것이기 때문에, 이런 문제가 없다. 두번째로는, 바로 HT 라 불리는 Head track 시스템 때문이다. 


HT 시스템은 고글에 내장 되어 있거나, 고글의 상단에 자이로를 부착하고 여기에서 나온 신호를 카메라를 업고 있는 서보 모터에 전송하여 머리가 움직이는 방향으로 비행기에서 카메라를 움직여 주는 기능이다. 쉽게 말하면, 고글을 통해 눈으로 보고 있는데 이게 한 방향에 고정 되어있는 것이 아니라, 머리가 움직이는 방향으로 시야가 함께 움직여 준단 말이다. 


애석하게도 Aurora 9 과 호환되는 HT 시스템은 없어 보인다. 일반적으로 이는, hobbyking.com 의 x-1000 과 같은 저렴한 외부 제품으로 가능한데, 이것을 조종기에 연결하여 2개의 서보 채널을 확보해야 한다. 하지만 HiTec 제품과 호환되는 HT 시스템은 못찾았다. 


하지만 만약 Dragonlink 를 사용하게 되면, 조종기에 연결 할 필요가 없고 이 시스템과 HT 를 연결하면 되기 때문에 별 문제가 없다. Dragonlink 에서 그 사용성이 검증된 HT 시스템은 FatShark 의 M.I.G. 란다. 



FatShark goggle system





위의 장비들을 합체하면 아래의 영상과 같이 동작한다고 이해 하면 된다. 





g. 기타 비행 안정 장치 등. 


시중에는 비행기용과 헬리콥터, 그리고 멀티콥터용이 많이 나와 있다. 기본적으로 3축 자이로를 바탕으로 서보를 조종하도록 되어있는 것이 일반적이며, 그 가격에 따라 Waypoint 기능이 있는 것도 있고, 단순히 비행체의 평형성만 유지 해 주는 것도 있다. 



Eagletree Guardian stabilizer


기본적으로 이회사 저회사 제품을 짬뽕해서 쓰다가 보면 전자 부품을 태워 먹는 경우가 왕왕 생긴다. 그런 실수를 막기 위해, 가급적이면 하나의 벤더로 통합 하는것이 좋은듯. 


이 외에도 Eagletree 에서는 자사의 제품에 연결이 가능한 각종 센서를 팔고 있기 때문에, 가능한 많이 붙일 생각이다. 



Eagletree airspeed sensor




5. 마치며 


이 취미는 끝이 없다. 돈은 아마도 손가락이 없어질 때 까지 들어갈 것이며, 배움도 그만큼 지속 되어야 한다. 이를테면 비행기는 종합 기술이다. 비행기만 잘 만들어서 눈앞에 두고 RC 처럼 날리며 즐기는 방법도 있는 것이고, 스티로폼 기반의 조금 허접한 비행기에 카메라네 뭐네 줄줄이 달아서 비행 시뮬레이션 처럼 놀 수 있는 방법도 있다. 


올인원 제품 같은건 사실 잘 없으므로, 조금만 부주의 하여 제품 연결을 잘못하면 5만원 10만원씩 하는 제품들에서 연기가 모락모락 피어나는 모습을 보게 될 것이다. 


날리는 것만 재미가 아니라, 배우고 또 만들고 연습하고 개발하면서 논에도 박고 산에도 박아가는 것이 전부 재미가 아닐까 한다. 물론, 아예 잃어 버리면 본전 생각이 나기도 하긴 하지만. 



아무튼, 이 재미진 취미와 함께 2013년 한해도 잘 보냈으면 하는 바램이다. 

아래는 멋진 팀 FPV 비행 








(younjin.jeong@gmail.com, 정윤진) 


















저작자 표시 비영리
신고

티스토리 툴바