A real-time kernel and interrupt-driven embedded-C program for remotely accessing and controlling the state, orientation and operation of a model helicopter using
- PWM motor control
- ADC sensor inputs
- quadrature decoding for rotor position tracking
- round-robin task management scheduling
- state machine logic
- multi-channel PID for stability control
- UART communication
- OLED display for real-time data
- timer-based operations
- de-bouncing for reliable input data
- infrared distance sensor for obstacle detection
A model helicopter can be controlled to perform varying operations and aerial manoeuvres, such as
- ignition, idling, vertical lift-off, hovering, landing and powering down
- ascending and descending to any altitude within a specified ground-ceiling range
- yaw rotating 360° to any referenced point in either clockwise or counter-clockwise direction
- Tiva C Series TM4C123G LaunchPad 32-bit microcontroller with an ARM Cortex-M4 CPU
- Orbit BoosterPack
- Numerous excluded files for installing to a launchpad, such as OrbitOLED for the display.
- helicopter, etc.
Compile using Code Composer Studio (CSS) IDE with Tivaware.