Radio Control/etc2015. 4. 30. 18:38


사람마다 멀티콥터(Multicopter)를 즐기는 방법은 크게 2가지가 있습니다.


● 레저활동으로 다이나믹한 조종비행과 고공촬영을 즐기는 매니아 층

● 멀티콥터를 직접 제작부터 비행까지 취미생활을 영위하는 매니아 층


자신이 단순히 레저활동으로 비행을 즐기고 촬영을 감상하는 매니아 층이라면 Flight Controller(FC)를 포함한 상업용 완전한 기체(RTF)를 구입하여 바로 비행에 나서는 것이 시간을 단축시키는 길입니다. 그러나 Flight Controller의 구성(GPS 등) 및 펌웨어(Firmware) 등을 수정하며 조립과정에서부터 비행까지 직접 관여하며, 프론티어 정신에 비중을 두는 매니아 층이라면 완전한 기체(RTF)보다는 반조립 기체(ARF)에 자신이 직접 제작한 Flight Controller 등을 탑재하길 원할 것입니다.


만일 후자의 경우라면 전자와 다르게 고려해야 될 것이 많이 있습니다. 대부분의 상업용 기체는 Rock solid한 반면에 자작용 기체는 유연하지만 안정성이 떨어질 수 밖에 없다는 것입니다. 'Rock soild'라 함은 제조사에서 무수한 시행착오로 고도로 최적화되어 있어 안정한 비행이 가능하다는 것이고, 후자는 하드웨어적 유연성으로 인해 혹은 여러 부품과의 호환성으로 인해 안정성은 결국 유저 자신의 몫이라는 것입니다.


하지만 후자의 경우 여러 장점도 있습니다. 상업용 기체는 안정성을 담보로 로열티에 대한 댓가를 치루어야 합니다. 즉 비싸다는 것입니다. 그러나 후자는 기체만을 구입하고 Flight Controller 등은 Open source 이기에 저렴하다보니 조립하는 것이 [반드시 그렇지는 않지만] 싸질 수 있다는 것입니다. 자신의 드론(Drone) 제작에 앞서 드론을 정복하기 위해서는 많은 관련지식과 시행착오를 겪어야 하며 때론 추가의 비용과 많은 시간이 걸릴 수도 있다는 것을 기억해야 합니다.


멀티콥터를 제작하려면 우선 Flight Controller를 선택해야 합니다. Open source로는 크게 Multiwill와 APM 시리즈가 있는데 두터운 사용자 층을 고려한다면 Multiwill가 추천되는 추세입니다. 이는 Community가 보다 활성화되어 있어 조립과정 중에 혹은 기체 셋팅 중에 발생할 수 있는 문제를 쉽게 해결할 수 있다는 것입니다. 기타 Open source를 골라야 한다면 원론적으로 메인 칩셋부터 확인해야 할 것입니다. 왜냐면 단적으로 STM시리즈의 마이크로컨트롤러(Microcontroller)에 익숙하지 않다면 수정은 고사하고 코드를 읽기조차 힘들기 때문입니다.


Multiwill은 Community에서 지속적으로 업데이트되고 있으며 포럼에서 많은 도움을 받을 수 있으며 코드의 수정과 업로드하는 과정을 간단화시킨 근래의 아두이노(Arduino) 환경에서 쉽게 개발할 수 있기 때문입니다. 게다가 메인 칩셋은 Atmel사의 칩으로 C언어로 최적화가 잘되는 마이크로컨트롤러로 알려지며 폭넓게 사용되고 사용자 층이 넓기 때문입니다.


어떤 매니아는 ESC조차도 자작을 시도하는데 이 경우를 제외하면 기체는 Brushless 모터를 포함한 프롭과 ESC, 프레임을 모두 갖춘 보급형 퀴드콥터 기체가 입문자로서 적당할 것입니다. F450 ARF 기체는 중국 DJI사(http://www.dji.com) 제작한 쿼드콥터 기체로 그래도 저렴한 편이며, 최근에 많이 보급되어 프레임이 견적으로 이어지면 쉽게 교환할 수 있는 장점이 있습니다.


Phantom 3


또한 F550 ARF는 헥사콥터(엄밀하게 6개의 Arm을 가짐) 기체용이며 DJI사는 자사의 Naza 시리즈 Flight Controller를 탑재하여 Phantom 시리즈로 조립, 발매하고 있습니다. F450 ARF 기체는 Flight Controller와 송/수신기, 밧데리 등은 제외하고 있으며 스펙은 다음과 같습니다.

    • Frame Weight(기체 무게) : 282g

    • Diagonal Wheelbase(대각선 기체 길이) : 450mm

    • Takeoff Weight(이륙 중량) : 800g ~ 1200g

    • Propeller : 10 x 4.5inch

    • Battery : LiPo(3S 1500mAh ~ 2600mAh)

    • Motor : 2212 ~ 2216(stator size)

    • ESC : 15A ~ 25A



F450 ARF 기체의 외형


F450 ARF 기체의 구성




'Radio Control > etc' 카테고리의 다른 글

Power Distribution Board란?  (0) 2017.03.08
Posted by Nature & Life
Radio Control/ESC2014. 6. 19. 11:52



다음은 Simon Kirby(http://0x.ca/)의 오픈 RapidESC 펌웨어 개발 사이트입니다.


https://github.com/sim-/tgy


This tree contains Atmel AVR assembly code for ATmega-based 3-phase sensor-less motor electronic speed control (ESC) boards, originally for Turnigy and similar models. This work is based on Bernhard Konze's "tp-18a" software, which was a port from his earlier personal work to the TowerPro 18A and original (not current!) Turnigy Plush boards. Please see tgy.asm for Bernhard's license.

이 목록은 ATmega 기반의 3상 브러쉬리스 모터 전자 속도 제어기(ESC) 보드를 위한 Atmel AVR 어셈블리 코드를 포함합니다. 원래는 Turnigy와 유사한 모델을 위한 것이었습니다. 이 프로젝트는 Bernhard Konze의 'tp-18a' 소프트웨어에 기반을 둡니다. 이것은 TowerPro 18A과 원래의 Turnigy Plush 보드의 그의 앞선 개인적인 프로젝트를 포트(port)한 것이었습니다. Bernhard의 라이센스에 대해서 tgy.asm을 보시기 바랍니다.


Patches and comments are always welcome! Let me know how it goes!

패치와 주석은 항상 환영합니다. 알려주세요!


Features

    • 16MHz operation on most boards

    • 16-bit output PWM with full clock rate resolution (~18kHz PWM with a POWER_RANGE of 800 steps)

    • 24-bit timing and PWM pulse tracking at full clock rate resolution

    • ICP-based pulse time recording (on supported hardware) for zero PWM input control jitter

    • Immediate PWM input to PWM output for best possible multicopter response (but NOT where soft start or really any significant current limiting is needed!)

    • Accepts any PWM update rate (minimum ~5microseconds PWM low time)

    • Optimized interrupt code (very low minimum PWM and reduced full throttle bump)

    • Configurable board pin assignments by include file

    • Smooth starting in most cases

    • Forward and reverse commutation supported, including RC-car style reverse-neutral-forward PWM ranges, with optional braking


Hardware

See http://wiki.openpilot.org/display/Doc/RapidESC+Database and/or https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE for a more complete list. Some board pictures here: http://0x.ca/sim/esc/

http://wiki.openpilot.org/display/Doc/RapidESC+Database 그리고/또는 좀더 완전한 목록을 위해서 https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE을 보시기 바랍니다. 일부 보드의 그림은 여기에 있습니다: http://0x.ca/sim/esc/


Tested boards by target:

    • afro2:

        • AfroESC 2 (prototype)

    • afro_hv:

        • AfroESC HV (high voltage, with all-N FETs and drivers)

    • afro_nfet:

        • AfroESC with all-N FETs (revision 3)

    • birdie70a:

        • Hobby King Birdie 70A (BIRD-60A)

        • Hobby King Red Brick 200A (RB200A, black board)

    • bs:

        • Hobby King 6A (HK_261000001)

        • Hobby King 10A (HK_261000002)

        • Hobby King 40A (F-40A)

        • Hobby King 60A (F-60A)

    • bs_nfet:

        • Hobby King 20A (F-20A)

        • Hobby King 30A (F-30A)

    • bs40a:

        • Hobby King BlueSeries 40A (and some Mystery 40A boards)

    • dlu40a:

        • Pulso Advance Plus DLU40A with opto-isolated inverted PWM input

        • Hobby King Multistar 45A

    • dlux:

        • Turnigy dlux 20A SBEC

    • hk200a:

        • Hobby King SS Series 190-200A (HK-SS200ALV)

        • RCTimer 50A TQFP version

    • kda:

        • Keda 12A rev B with inverted PWM input (30A should also work)

        • Dynam 18A, 25A with Blue Heat Shrink

        • Hobby King Multistar series (30A and under)

    • maytech30a:

        • Maytech 30A and 20A, complementary PWM

    • maytech40a:

        • Maytech 40A, complementary PWM

    • maytech60a:

        • Maytech 60A, complementary PWM

    • mkblctrl1:

        • MikroKopter BL-Ctrl v1.x (flashable by ISP only)

    • rb50a.hex

        • Hobby King Red Brick 50A (RB50-ESC)

    • rb70a.hex

        • Hobby King Red Brick 70A (RB70A)

        • Hobby King Red Brick 200A (RB200A-BTO, black board)

    • rct50a:

        • RCTimer 50A older MLF version

    • tbs:

        • Team BlackSheep TBS 30A ESC (ICP input version)

    • tp:

        • Original TowerPro 17A, 25A

        • Hobby King SS models without "-HW" in part number

    • tp_8khz:

        • tp at 8kHz PWM (workaround for DYS/HK-SS clones with PWM noise problems)

    • tp_i2c:

        • tp modified for I2C input (old ADC4 routed to ADC1)

    • tp_nfet:

        • Newer TowerPro 25A with inverted low side (BL8003 drivers)

    • tp70a:

        • TowerPro 70A with BL8003 FET drivers (inverted low side)

        • tgy (these boards typically have no external resonator):

        • Original TowerPro 18A

        • Original Turnigy Basic and Turnigy Plush 10A, 18A, and 25A (Hobbywing OEM)

        • RCTimer 10A, 18A, 20A, 30A, 40A (18A, 20A, 30A are same board with more or less FETs)

        • Hobby King SS models with "-HW" in part number

    • tgy6a:

        • Original Turnigy Plush 6A


Turnigy Plush 18A


Notes

    • If it breaks, you get to keep both pieces! (만일 부러지면, 두 조각을 그대로 유지하면 됩니다!)

    • Use at your own risk, and always test first without propellers! (손상을 감안해야 하며 항상 프롭 없이 테스트를 먼저 해야 합니다!)

    • New Turnigy Plush, Basic, Sentry and Pentium boards (Hobbywing OEM) have all switched to SiLabs C8051F334, d'oh! (새로운 Turnigy Plush, Basic, Sentry 그리고 Pentium 보드들(Hobbywing OEM)은 모두 SiLabs사의 C8051F334으로 전환한 상태입니다.)

    • If your ESC has 6 pads and an AVR, it's probably compatible; the pads are MOSI, MISO, SCLK, GND, VCC, and RESET. If it has 4 pads, it is probably a newer SiLabs-based one, for which this code will not work. (Except HK_261000001 which has 4 pads but has an AVR.) (여러분의 ESC가 6개의 패드와 AVR을 사용한다면 아마도 호환가능할 것입니다; 패드는 MOSI, MISO, SCLK, GND, VCC, 그리고 RESET입니다. 만일 4개의 패드를 가지고 있다면, 아마도 이것은 이 코드에서 동작하지 않는 새로운 SiLabs 칩을 사용하는 보드일 것입니다.(HK_261000001는 예외로 4개의 패드를 갖지만 AVR을 사용합니다))

    • I build and maintain this in Linux with AVRA (1.3.0 or newer). Patches welcome for AVR Studio APS files, etc. (저는 AVRA (1.3.0 or newer)로 Linux 상에서 컴파일하였습니다. AVR Studio *.aps 파일의 패치 또한 환영합니다.)

    • The TowerPro/Turnigy Plush type boards typically do not come with external oscillators, which means their frequency drifts a bit with temperature and between boards. Multicopters and RC-car/boat controllers (with a neutral deadband) would probably be better on a board with an external oscillator. The Mystery/BlueSeries boards typically have them, as well as most higher current boards. (TowerPro/Turnigy Plush 타입의 보드는 전형적으로 외장 오실레이터를 갖지 않는데 이것은 ESC의 주파수가 온도와 보드 사이에서 약간 변동될 수 있음을 의미합니다. (데드밴드를 가진) 멀티콥터와 RC자동차/보트 콘트롤러는 아마도 외장 오실레이터를 가진 보드에서 더 좋을 수 있습니다. Mystery/BlueSeries 보드는 전형적으로 외장 오실레이터를 가집니다. 게다가 가장 높은 전류를 갖는 보드입니다.)

    • This doesn't yet check temperature or battery voltage. This is not desired on multi-rotor platforms; however, people still want to use this on planes, cars, boats, etc., so I suppose I'll add it. (이것은 아직 온도와 밧데리 전압을 체크하지 않습니다. 이것은 멀터로터 플랫폼에서 요구되는 것이 아닙니다; 그러나 사람들이 비행기나 자동차, 보트 등에 이를 사용하기를 원한다면 저는 이 기능을 추가할 수 있습니다)






'Radio Control > ESC' 카테고리의 다른 글

PX4ESC의 스펙  (0) 2015.12.08
ESC32의 스펙  (0) 2015.12.04
RapidESC FAQ's  (0) 2014.06.11
RapidESC Flashing  (0) 2014.06.03
RapidESC란?  (0) 2014.05.26
Posted by Nature & Life
Radio Control/ESC2014. 6. 11. 17:11



다음은 RapidESC의 FAQ입니다.


Do I need to program the flashed ESCs?

이미 프로그램된 ESC를 프로그램해야 하는지요?


On a normal ESC it's advised to program them as below for a multirotor:

정상적인 ESC 경우에, 멀티로터(multirotor)에 대해서 아래와 같은 항목을 프로그램하는 것이 권고됩니다.


  • Battery Type: Lipo /NiXX

  • Brake: On / Off

  • Voltage Protection: Low / Mid / High

  • Protection mode: Reduce power / Cut off power

  • Timing: Auto / High / Low

  • Startup: Fast / Normal / Soft

  • PWM Frequency: 8k / 16k

  • Helicopter mode: Off / 5sec / 15sec (Start up delay)


Once your ESCs are flashed, this is not longer necessary. The necessary settings are all embedded in the flashed software.

일단 여러분의 ESC가 프로그램되면, 이것은 더이상 필요하지 않습니다. 필요한 설정은 프로그램된 소프트웨어에 모두 포함됩니다.


The throttle range however is still programmed like most standard ESCs. Start the ESC with full throttle, wait for the beeps and lower the throttle to 0.

스로틀 범위는 그러나 가장 표준 ESC와 같이 여전히 프로그램됩니다. 최대 스로틀에서 ESC를 시작하고 비프음을 기다리세요 그리고 스로틀이 '0'이 될때까지 낮추어 보세요.










'Radio Control > ESC' 카테고리의 다른 글

ESC32의 스펙  (0) 2015.12.04
RapidESC, 오픈 소스 펌웨어 개발 사이트  (0) 2014.06.19
RapidESC Flashing  (0) 2014.06.03
RapidESC란?  (0) 2014.05.26
Wii-ESC에 대한 FAQ  (0) 2014.04.07
Posted by Nature & Life
Radio Control/ESC2014. 5. 26. 19:11


RapidESC는 Multicopter를 즐기는 DIY 매니아층에서 잘 알려진 이름으로 상업적인 ESC를 말하는 것은 아니며, 기존의 상업적인 ESC들의 최적화된 하드웨어에 Multicopter에서 사용할 목적으로 여러가지 성능이 향상된 펌웨어를 다시 탑재한 ESC를 말합니다.

다음은 RapidESC의 사이트에서 말하는 RapidESC는 무엇인지를 번역하여 올리니 참고하시기 바랍니다.

http://wiki.openpilot.org/display/Doc/RapidESCs


The RapidESC initiative was started to give an honest source of information regarding pre-made and re-flashed ESCs that are modified for extremely high performance on MultiCopters.

RapidESC에 대한 동기는 Multicopter 상에서 매우 향상된 성능을 갖도록 개선하여 미리 만들어지고(pre-made) 다시 프로그램하기(re-flashed) 위해 필요한 정보를 제공하기 위해서 시작되었습니다.


The OpenPilot Team and developers such as Simon Kirby have been working hard to create Open Source firmware that offers the Rapid ESC response performance which greatly enhances multirotor performance.

Simon Kirby와 같은 OpenPilot 팀과 개발자들은 Multirotor의 성능을 크게 향상시키는 빠른 ESC 응답 성능을 갖는 오픈 소스 펌웨어를 만들기 위해서 열심히 연구해왔습니다.


What is RapidESC?

RapidESC는 무엇인지요?


So, what exactly is RapidESC and why do I need it?

그럼 RapidESC는 정확히 무엇이며 왜 필요한지요?


Standard ESCs are actually not designed for multirotor applications. They are programmed to increase and decrease the throttle command towards the motor in a gentle way. The reason for this is quite obvious. Imagine a motor accelerating and decelerating so abruptly in a helicopter or car... it would damage the gears and reductions in no time. In a multirotor application, we really want just the opposite. The goal is to change the motor speed, and thus the thrust, as fast as possible to achieve a perfectly stable platform.

표준 ESC는 사실 Multirotor에 적용할 목적으로 설계되지 않았습니다. 이것들은 스로틀 명령을 모터로 온화한 방법으로 올리거나 내립니다. 이러한 이유는 매우 분명합니다. 헬리콥터나 자동차에서 매우 갑자기 모터를 가속하거나 감속하는 것을 상상해보세요... 이것은 즉시 감속 기어를 손상시킬 수 있습니다. Multirotor 분야에서 우리는 사실 그 반대 특성을 원합니다. 목표는 모터의 속도를 변화시키는 것이고 그러므로 완벽하게 안정된 자세를 성취하기 위해서 가능한한 빨리 추진력을 얻는 것입니다.


While the current ESCs used in most multrotor applications work considerably well, there is a lot of room for improvement. Using the same ESC, but loading it with dedicated optimized software, will increase the handling and stability of your multirotor greatly.

대부분의 Multirotor 분야에 사용되어지는 현재의 ESC는 상당히 잘 동작하는 반면에 많은 개선의 여지가 있다는 것입니다. 동일한 ESC를 사용해서 이러한 최적화된 펌웨어를 탑재하는 것은 여러분의 Multirotor의 안정성과 조종성을 크게 증가시킬 것입니다.


We call this RapidESC: converting your regular lazy ESC into a high speed capable speed controller at no extra cost, ready for multirotor applications.

우리는 이것은 RapidESC라고 부릅니다: 여러분의 일반적인 느린 ESC를 Multirotor에 사용하기 위해서 높은 속도가 가능한 ESC로 바꾸는 것은 어떤 추가적인 비용도 들지 않습니다.


In the below movie you can clearly see the advantage of a RapidESC vs an ESC with stock firmware.

아래 동영상에서 여러분은 분명하게 상업적인 ESC와 RapidESC의 장점을 볼 수 있을 것입니다.


http://www.youtube.com/watch?v=FLKIOPbXVnM








'Radio Control > ESC' 카테고리의 다른 글

RapidESC FAQ's  (0) 2014.06.11
RapidESC Flashing  (0) 2014.06.03
Wii-ESC에 대한 FAQ  (0) 2014.04.07
Wii-ESC 프로젝트의 소개입니다  (0) 2014.04.04
Wii-ESC란?  (0) 2014.03.13
Posted by Nature & Life
Radio Control/ESC2014. 4. 4. 08:49

 

 

 

About

 

This firmware designed as a replacement for many commercially available ESC designs based on the AVR MCU. It implements scalar sensor less method to drive Brushless Motor by detecting BEMF zero-crossing instants. The goal of this project is to create firmware most suitable to use in multi-rotors, using cheap and commercially available hardware.

 

이 펌웨어는 AVR 마이크로콘트롤러(MCU)에 기반을 둔 많은 상업용 ESC의 대체용으로 설계되었습니다. 이것은 BEMF zero-cross 순간을 감지하여 Brushless 모터를 구동하는 Sensorless 방법을 구현하였습니다. 이 프로젝트의 목표는 저렴하고 상업적으로 가능한 멀티로터(Multi-rotor) 기체를 사용하는 데에 가장 적당한 펨웨어를 개발하는 것입니다.

 

Features:

 

  • Fastest possible power response.

  • Up to 4000 steps of resolution.

  • Low noise with comparatively high efficiency (Sigma-delta modulator, instead of fixed frequency PWM)

  • Linear power response. (completely no "bump" at 100%)

  • Jitter-free input PWM measurement without harware assisted input capture.

  • Accepts any PWM update rate

  • Sync recovery.

  • Safe stall detection.

  • Complimentary PWM support (AKA: active freewheeling, active rectification)

  • Fixed throttle end-points. No need to calibrate. (since version 2.0.9 it is also possible to calibrate end-points using stick programming procedure)

  • Automatic oscillator calibration.
    Enhanced PPM filter, preventing accidental motor startup (when FC is rebooted, for example)

  • Configurable. The configuration parameters are stored in EEPROM. The Wii-ESC flash tool has visual parameters editor. No more stick programming.

  • Modularity. The high-level implementation is separated from actual hardware with HAL layer.

  • Portability. The firmware is written in C++, which means it can be easilly ported to different platform.

 

Supported Hardware:

 

For complete mapping between targets and real hardware, it is possible to use RapidESC Database. Currently tested targets:

 

펌웨어와 실제 하드웨어 사이에 완전한 매핑을 위하여 RapidESC 데이타베이스를 사용하는 것이 가능합니다. 현재 검증된 펨웨어는 다음과 같습니다.

 

  • bs.hex

  • bs_nfet.hex

  • bs40a.hex

  • kda.hex

  • qynx.hex

  • rb50a.hex

  • rct30nfs.hex

  • rct45nfs.hex

  • tgy.hex

  • tp.hex

  • tp_nfet.hex

 

다음은 아래의 상업용 HobbyKing BlueSeries 40A(HK40A-bs) ESC에서 APC prop.을 장착하고 원래 출고당시 제품과 SimonK와 Wii-ESC 펌웨어를 탑재하였을 때의 추력 등의 특성을 서로 비교한 데이터입니다.

 

 

 

 

 

 

 

 

마지막으로 상업용 ESC에 재프로그램(reflashing)하는 절차입니다.

 

 

 

 


 

'Radio Control > ESC' 카테고리의 다른 글

RapidESC FAQ's  (0) 2014.06.11
RapidESC Flashing  (0) 2014.06.03
RapidESC란?  (0) 2014.05.26
Wii-ESC에 대한 FAQ  (0) 2014.04.07
Wii-ESC란?  (0) 2014.03.13
Posted by Nature & Life
Radio Control/ESC2014. 3. 13. 19:46

 

 

ESC는 Electronic Speed Controller의 약자로 우리말로 '전자변속기'라고 부릅니다. ESC는 밧데리로부터 전기를 전기모터에 공급하는 장치로 멀티콥터(Multicopter)를 비롯한 각종 RC 기체에 회전 동력을 필요로 하는 곳에 사용하여 로터(rotor)를 회전시켜 양력을 얻거나, 멀티콥터의 짐벌(gimbal)에 응용하여 기계적 장치를 움직이게 합니다.

 

과거의 엔진기체에는 전기모터가 필요없지만 근래에는 밧데리 용량과 방전 특성이 크게 개선되어 전기모터를 동력원으로 하는 기체가 대중화되었습니다. 기존의 DC 모터를 사용하는 경우, 기계적 브러쉬(brush)로 회전자에 전기를 급전하기에 기계적 접점이 불가피하여 모터가 회전시 스파크나 소음이 발생하는 등 효율이 좋지 않고 모터의 수명 또한 단축되었습니다.

 

최근에는 이러한 기계적 접점을 없앤 브러쉬리스(brushless; BLDC) 모터가 등장하여 소음도 현저히 줄어들고, 반영구적이며, 효율이 개선되어 RC 기체의 정숙비행과 체공시간의 증대로 전동기체가 범람하게 되었습니다. 기존의 DC 모터를 구동하기 위해서는 스로틀(throttle)의 위치에 따라 트랜지스터(transistor)와 같은 액티브 스위치(active switch)를 PWM 형태로 개폐하므로 장치가 간단하지만 브러쉬리스 모터를 사용하는 경우 장치가 매우 복잡해지고 단가가 상승하게 됩니다.

 

 

BLDC 모터를 구동하는 ESC는 8-bit PIC나 AVR 시리즈 등의 마이컴(Micom)으로 정교하게 제어하는 방법을 채택하고, 상용 ESC의 제조사는 하드웨어를 제작하고 여기에 펌웨어(Firmware)를 적절히 튜닝하여 시판하게 됩니다. 최근에는 멀티콥터가 대중화되면서 이에 걸맞는 성능을 갖춘 예를 들어, 빠른 응답 특성을 가진 ESC를 필요로 하게 되었습니다.

 

 

이러한 요구는 전 세계적으로 ESC를 자작(DIY)하려는 매니아나 동호회를 등장시켰습니다. 대다수는 ESC는 동일 클럭에서 속도가 빠르고 내부에 A/D 컨버터나 비교기 등의 고기능을 지원하는 AVR를 사용하는데, 대부분 어셈블러(Assembler) 수준에서 펌웨어를 개발하기 때문에 일반인이 접근하기에는 쉽지 않다는 것입니다.

 

Wii-ESC는 멀티위(MultiWii) 등의 멀티콥터에 최적화된 ESC 펌웨어를 만들기 위한 오프 소스(open source) 펌웨어 개발 프로젝트로 전 세계적으로 여러 사람이 참여하고 있으며, 어셈블러가 아닌 C 언어 기반이므로 일반 매니아층도 펌웨어의 이해와 수정이 가능하여 자기만의 멀티콥터에 최적화된 펌웨어를 구현할 수 있다는 장점이 있습니다.

 

다음은 Wii-ESC 프로젝트의 링크이며 소개를 간단히 번역한 것입니다.

(번역이 원문과 상이하거나 매끄럽지 못한 부분은 댓글로 남겨 주시면 감사하겠습니다)

 

http://code.google.com/p/wii-esc/

 

 

About

This firmware designed as a replacement for many commercially available ESC designs based on the AVR MCU. It implements scalar sensor less method to drive Brushless Motor by detecting BEMF zero-crossing instants. The goal of this project is to create firmware most suitable to use in multi-rotors, using cheap and commercially available hardware.

이 펌웨어는 AVR MCU에 기반을 둔 많은 상용 ESC를 위한 대체용으로 개발되었습니다. 이것은 역기전력(BEMF)이 '0' 레벨을 지나가는 순간(ZC point)를 감지함으로서 BLDC 모터를 구동하는 sensorless method를 구현하였습니다. 이 프로젝트의 목표는 저렴한 상용 하드웨어를 사용하여 멀티콥터에 가장 적합한 펌웨어를 만드는 것입니다.

 

* Sensorless method

BLDC 모터는 센서(sensor)의 유무에 따라 크게 두 가지 구분하는데, CD-ROM 모터로 대표되는 센서를 가진 BLDC 모터는 제어기가 간편해질 수는 있으나 모터에 센서가 장착되어 단가가 올라가고, 혹한 환경에서 센서의 정밀도가 떨어지며, 모터 외부로 추가적인 배선이 요구되는 등 고장이 쉽다는 것입니다. 하지만 센서 없는 BLDC 모터는 이를 구동하는 제어기가 복잡해지는 단점은 있지만, MCU의 지속적인 성능 개선으로 얼마든지 이를 극복할 수 있으므로 근래에 보다 선호하게 되었다는 것입니다.

 

Features:

  • Fastest possible power response.

  • Up to 4000 steps of resolution.

  • Low noise with comparatively high efficiency. (Sigma-delta modulator, instead of fixed frequency PWM)

  • Linear power response. (completely no "bump" at 100%)

  • Jitter-free input PWM measurement without harware assisted input capture.

  • Accepts any PWM update rate.

  • Sync recovery.

  • Safe stall detection.

  • Complimentary PWM support. (AKA: active freewheeling, active rectification)

  • Fixed throttle end-points. No need to calibrate. (since version 2.0.9 it is also possible to calibrate end-points using stick programming procedure)

  • Automatic oscillator calibration.

  • Enhanced PPM filter, preventing accidental motor startup. (when FC is rebooted, for example)

  • Configurable. The configuration parameters are stored in EEPROM. The Wii-ESC flash tool has visual parameters editor. No more stick programming.

  • Modularity. The high-level implementation is separated from actual hardware with HAL layer.

  • Portability. The firmware is written in C++, which means it can be easilly ported to different platform.

 

 

 

'Radio Control > ESC' 카테고리의 다른 글

RapidESC FAQ's  (0) 2014.06.11
RapidESC Flashing  (0) 2014.06.03
RapidESC란?  (0) 2014.05.26
Wii-ESC에 대한 FAQ  (0) 2014.04.07
Wii-ESC 프로젝트의 소개입니다  (0) 2014.04.04
Posted by Nature & Life

 

Multiwii(멀티위) 보드는 멀티콥터(Multicopter)를 제어하는 비행제어보드(Flight Control Board, FCB) 중의 하나이며, 이 제어보드를 구동하기 위한 아두이노(Arduino) IDE에 기반을 둔 공개 소스 소프트웨어(Open source software)를 Multii라고 합니다. 최근에 Multiwii는 Autopilot-Mega(APM)와 나란히 전 세계적인 대중화를 이끄는데 특히 Multii는 가격 경쟁력 면에서 우수한 비행 제어보드로 알려집니다.

 

Multiwii에 대한 자세한 정보는 다음의 링크를 참고하시기 바랍니다.

http://www.multiwii.com/

 

또한 Multiwii 비행 제어보드를 구동하기 위한 [공개] 소프트웨어 혹은 펌웨어와 GUI 설정 프로그램은 다음 링크에서 다운로드 받을 수 있습니다.

http://code.google.com/p/multiwii/

 

근래에 사용되어지는 Multiwii 비행 제어보드는 CRIUS MWC Standard Edition(SE) Flight Controller v2.5로 특징은 다음과 같습니다. 여기서 MWC 'Multiwii copter'를 의미합니다.

 

CRIUS Multiwii Standard Edition(SE) v2.5

 

 

Features:

  • 6 PWM input channels for standard receiver or PPM SUM receiver

  • Up to 8-axis motor output [Up to Hexacopter]

  • Supported 2-axis gimbal and auto trigger controll

  • FTDI/UART port for upload firmware, debug, Bluetooth module or LCD display

  • I2C port for extend sensor, I2C LCD/OLED display or I2C-GPS NAV board for GPS and Sonar

  • Ultra low noise 3.3V LDO voltage regulator

  • ATMega 328P Microcontroller

  • MPU6050C 6 axis gyro/accel with Motion Processing Unit(3축 자이로 + 3축 가속도 센서)

  • HMC5883L 3-axis digital magnetometer(3축 지자계/나침판 센서)

  • BMP085 digital pressure sensor(기압/압력/고도 센서)

  • PCA9306DP1 logic level converter

 

 

Multiwii 소프트웨어 즉, 펌웨어(firmware)는 아두이노 AVR 개발보드인 Pro Mini, Pro Micro 또는 Mega를 이용하여 업로드할 수 있으며, 3축 자이로 + 3축 가속도 센서는 기체의 자기 안정화를 위해서 필요하고, 기압(압력, 고도) 센서는 게체의 고도를 고정할 때에 요구되며, 3축 지자계(나침판) 센서는 기체의 진행방향을 고정(locked heading or heading hold)시키기 위해서 필요합니다.

 

 

 

Posted by Nature & Life


 

APM 2.6 Set (external compass)
 
The APM 2.6 is a complete open source autopilot system and the bestselling technology that won the prestigious 2012 Outback Challenge UAV competition. It allows the user to turn any fixed, rotary wing or multirotor vehicle (even cars and boats) into a fully autonomous vehicle; capable of performing programmed GPS missions with waypoints. Available with top or side connectors.

APM 2.6는 완전한 오픈 소스 자동조정장치 시스템이며 권위있는 2012 Outback Challenge UAV 대회에서 수상한 가장 많이 팔린 기술입니다. 이것은 사용자가 어떤 고정된, 회전하는 날개 혹은 멀티로터(multirotor) 운송수단(심지어 자동차 그리고 보트)을 완전히 자율적인 운송수단으로 가능하게 합니다; 경유지를 정해 프로그램된 GPS 미션을 수행하는 것이 가능합니다. 위 혹은 옆 커넥터와 함께 가능합니다. 

 

This revision of the board has no onboard compass, which is designed for vehicles (especially multicopters and rovers) where the compass should be placed as far from power and motor sources as possible to avoid magnetic interference. (On fixed wing aircraft it's often easier to mount APM far enough away from the motors and ESCs to avoid magnetic interference, so this is not as critical, but APM 2.6 gives more flexibility in that positioning and is a good choice for them, too). This is designed to be used with the 3DR uBlox GPS with Compass (see option below), so that the GPS/Compass unit can be mounted further from noise sources than APM itself.

보드의 이번 수정판은 온보드 compass를 실장하지 않습니다. 이것은 자기장 간섭을 가능한 피하기 위해서 파워나 모터로부터 멀리 떨어져 위치해야만 하는 compass를 가진 운송수단(특히 멀티콥터 그리고 로버)을 위하여 설계되었습니다. (고정 날개 비행체에서는 자기장 간섭을 피하기 위해 모터나 전자변속기(ESC)로부터 충분히 떨어져 APM를 탑재하는 것이 종종 쉽습니다 그래서 이것은 중요하지 않지만 APM 2.6은 어디에 탑재하느냐에 좀더 유연성을 주고 그것들을 위해서 역시 좋은 선택이 됩니다). 이것은 compass(see option below)를 가진 3DR uBlox GPS을 사용하도록 설계되어졌습니다. 그 결과, GPS/Compass는 APM 자체보다 잡음 소스로부터 좀더 멀리 탑재하는 것이 가능합니다.

 

 

APM 2.6 requires a GPS unit with an onboard compass for full autonomy.

APM 2.6은 완전한 자율조정을 위해서 온보드 compass를 가진 GPS를 필요합니다.

If you are using APM 2.6 with a GPS module that does not have a compass sensor, you must use a stand-alone external compass.

만일 여러분이 compass 센서를 가지지 않는 GPS 모듈과 APM 2.6을 사용한다면 여러분은 독립적인 외장 compass를 사용해야만 합니다. 

 

Features:
- Arduino Compatible!

- Can be ordered with top entry pins for attaching connectors vertically, or as side entry pins to slide your connectors in to either end horizontally.

- Includes 3-axis gyro, accelerometer and magnetometer, along with a high-performance barometer.

  (3축 자이로를 탑재한 가속도계와 지자기계, 고성능의 고도계)

- Onboard 4 MegaByte Dataflash chip for automatic datalogging.

  (자동적인 데이터 기록을 위한 4Mbyte 크기의 플레쉬 메모리 탑재)

- Optional off-board GPS, uBlox LEA-6H module with Compass.

  (지자기 센서를 포함하여 외장 GPS 모듈인 uBlox LEA-6H의 선택 가능)

- One of the first open source autopilot systems to use Invensense's 6 DoF Accelerometer/Gyro MPU-6000.

  (3축 자이로 가속도 센서로 MPU-6000)

- Barometric pressure sensor upgraded to MS5611-01BA03, from Measurement Specialties.

  (공기압을 측정하여 고도를 감지할 수 있는 고도 센서로서 MS5611-01BA03으로 개선됨)

- Atmel's ATMEGA2560 and ATMEGA32U-2 chips for processing and usb functions respectively.

  (USB 통신을 위해서 ATMEGA32U-2 칩을 내장)


APM(AutoPilot Mega) History

APM v2.5 - on board compass.

APM v2.5.2 ~ v2.8 - APM v2.5와 하드웨어와 소프트웨어는 동일하지만, PCB상에서 외란에 대한 간섭을 최소화하기 위해서 외장 지자기 센서를 사용할지 말지에 대한 점퍼스위치를 갖추고 있습니다. 기존에는 내장 Mediatek GPS를 사용하지만 APM v2.6에서는 외장 Ublox GPS/Compass 모듈의 사용이 가능합니다.




Posted by Nature & Life
Radio Control/Concept2013. 5. 30. 19:57

 

지구 반대편에서 무선으로 드론(Drone, 비행로봇)을 조종해 영상을 실시간으로 전송하는 시대가 도래하였습니다.

 

무선제어장치는 서울에 드론은 대전에 있지만 세계 최초로 4세대 LTE망을 이용해 152Km 떨어진 서울과 대전을 하나로 연결하여 드론을 조종하는데에 성공하였다는 것입니다. 이론적으로 조종하는 사람의 시야에서만 영상을 실시간으로 전송받을 수 있다면 어디서든지 드론을 제어할 수가 있는데 이러한 양방향 통신이 휴대전화나 노트북처럼 LTE가 연결된 곳이면 어디든지 가능하다는 것입니다.

 

 

장소와 관계없이 좁은 공간에서도 드론의 이륙 및 착륙이 가능해져 미국과 마찬가지로 그동안 사람에 의존했던 군 감시정찰이나, 재난, 재해 감시, 교통 통제, 항만 감시 그리고 도시계획 등의 공중촬영 등에 폭넓게 활용될 전망이라고 알려집니다.

 

사실 기존의 RC와 멀티콥터(Multicopter) 등의 드론은 차이가 있습니다. 과거의 RC는 비행에 꼭 필요한 변속기(ESC)와 엔진(모터), 자이로(Gyro), TX, RX 등의 구성으로 헬기의 단순 정지비행(Hovering)을 익히는 데에도 고도의 집중력과 키감이 요구되는 매우 다이나믹 스포츠이었습니다.

 

하지만 근래의 드론은 다수의 로터를 장착하여 기동성 대신 안정성을 극대화하였고 여기에 고성의 마이컴을 탑재하고 GPS 수신기와 각종 첨단 센서 등을 장착함으로서 지상의 컴퓨터를 통한 자동 원격 비행이 가능해져서 과거와 같은 경험을 통한 특유의 키감이나 숙련된 비행 조종 기술이 따로 필요없게 되어 대중화를 앞당기는데 일조를 하였습니다.

 

스마트폰으로 화상전화를 통한 생각의 교환 뿐만아니라 드론을 이용해 물건도 주고 받을 날이 머지않아 다가올것으로 기대해 봅니다.

 

Posted by Nature & Life

 

아래의 사이트는 ArduCopter의 비행제어보드(Flight Controller board)의 펌웨어에 대한 자료와 최신 코드를 받을 수 있는 곳입니다.

 

ArduCopter는 Full-Featured Multicopter UAV로서 비행제어보드의 모든 펨웨어는 오픈소스(Open Source)입니다.

 

http://code.google.com/p/arducopter/

 

 

 

'Radio Control > Flight Controller' 카테고리의 다른 글

3DR社의 Pixhawk  (0) 2013.10.23
APM 2.5의 수정판인 APM 2.6이 출시되었네요  (0) 2013.07.31
다양한 Flight Controller 비교  (0) 2013.05.06
APM2.5를 이용한 멀티콥터의 구성  (1) 2013.01.30
ArduCopter란?  (0) 2013.01.09
Posted by Nature & Life