| ||||||||||||||||||||
Radio ControlWhen I built Moana, it started out as an autonomous robot which I retro-fitted for radio control. This time, I want to get Radio Control in first, and then I will add robotic functions later. This is especially true when I start using cameras for localization which will done in a Raspberry Pi. I wrote a radio control library for Moana which I will repurpose for Kupe. Standard RC transmits over various RF channels and these get converted into PWM signals that are used to drive servos. We can feed these PWM signals into the arduino and take appropriate action. As with most servos, the PWM ranges from about 1ms to 2ms and these will be used to control throttle and steering. There are extra channels which are connected to switches on the transmitter and these can be used to control sensors or program operation if suitably intercepted. On Moana, I had a Stop-dead switch as well as ones for turning the camera on and off. I will wire these in now and decide what I will use them for later as the project progresses. I'll use 4 channels initially. Note that some switches are 3-way so you can get 0, mid, 1 rather than just a binary on/off. Radio Control ComponentsRadio Control ReceiverI am using the Spektrum AR8020T reciever. This is an 8 channel receiver so I can add more functionality if I need to. It also has a telemetry feature which means I can pass data back to the RC Transmitter. It is used in the RC world for returning battery status etc so it may not be that useful, especially as I intend to have remote telemetry with an Xbee.
Each channel (1-8) has a PWM, +5v and Gnd pin for connection to servos. All the +5vs are commoned and all the Gnds are commoned. There is also a Bind/power port (far left) which can be used to apply power. For Kupe, I will use the power port and just the PWM pins of the appropriate channels.
Radio Control TransmitterThe appropriate channels are mapped to the Transmiiter controls as shown.
When the Aux channels are mapped to particular functions, I'll come back and alter these images. Wiring the RC Receiver to the ArduinoThe outputs from the RC receiver need to feed into appropriate PWM inputs on the arduino. I created a secondary wiring loom on the opposite side of the robot to the one carrying power. The Receiver will (initially at least), be located at the back of the robot using a simple mounting plate attached to the extrusion. Power will come directly from the +5V/Gnd taps on the power distribution board. Loom WiringI originally was going to use a Cat5 cable within the loom as it kept all the RC wires contained. However Cat5/6 uses solid copper conductors and I feel I need flexible multi-strand conductors due to the vibration that will occurr driving the robot. I had difficulty finding such a cable in NZ, so I ended up using separate wires but kept them contained with occasional heat shrink sheaths. This kept everything neat and allowed the mini-loom to be pushed into the main loom carrier. Here you can see connections at either end. I'm experimenting with different wire labeling systems and although they take a long time to label up, I believe the effort will repay itself in the long term. I'm trying to prevent a rats nests evolving from the outset!
November 2025 | ||||||||||||||||||||
| ||||||||||||||||||||