App note: RC Model Aircraft Motor Control

in app notes by DP | 8 comments

Modern RC model aircraft designs incorporate some hefty standards regarding motor speed control:

  • The motor should not be started until the speed is at its lowest setting
  • Motors with gearboxes should have acceleration limits
  • If the control signal is lost the motor should shut off
  • Motor shut off in case of low battery, to save power for reaming systems

This reference design from Microchip features two versions of a DC motor controller. Version one has all the features from the list above, while version two adds programmable throttle response and a motor brake.

Schematics and firmware are provided for the PIC12C508A, and PIC16F628 microcontrollers.

This entry was posted in app notes and tagged , , .

Comments

  1. Coda says:

    It’s a bit late for this… Electric R/C models invariably use 3 phase brushless motors now, with electronic speed controllers.

    • Petezel says:

      You’re totally right with respect to models being 3 phase sensorless BLDC motor powered now. An appnote or examples for this type of controller would be infinitely more useful, if anyone happens to know of some, such as AVR444.

      • pben says:

        So model are using brushless DC motors how do they do sense the speed for feedback? Or are they running open loop and just assuming that the motor is at speed. I would guess that they are running open loop to save the weight and because speed regulation is not that important for this application.

  2. David says:

    Back-EMF on the “idle” leg of the motor is used to sense rotation of the magnets, both for correct rotation direction at startup and to ensure commutation sync.
    RC motors generally aren’t sync’ed to a speed, but to a power “setting”, which changes the pulse width applied during each commutation. The exception is helis, which use a governor mode to maintain a fixed headspeed despite wildly varying rotor loading caused by changes is blade pitch.

  3. Petezel says:

    Speed regulation /is/ important, especially for applications like helicopters and multi-rotor craft.
    From what I can tell, they use the back emf generated by the turning rotor on the unpowered winding end to work out commutation time and therefore position. They start off in open loop because there is no BEMF produced when the rotor is static or at low speed (signal:noise ratio) but once a lock on the rotor is made they can run closed loop. See http://www.mikrokopter.de/ucwiki/en/BrushlessCtrl#Recognition_of_the_rotor_position and http://open-bldc.org/wiki/Open-BLDC

  4. Steve says:

    I’m glad it saves power for reaming systems, but what exactly is getting reamed?

  5. Jim Evans says:

    What code is required (Microchip PIC16F877A if possible) to control the motor controller of an RC. Is this general knowledge?

    Thanks

    Jim Evans

Leave a Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Notify me of followup comments via e-mail. You can also subscribe without commenting.