Arduino radio servo turret

Help me by sharing this post


A few weeks ago I've made this radio controller based on Arduino and the NRF24 radio module. Now we can see how to use it. We start with something easy. Servos are controlled with PWM signal. What we do is receive the radio signal, crewte PWM signals and control the servo turret. We also heat some nichrome wire and fire up some firework rockets. The design is 3D printed and uses some FUTABA servo motors. So, let's see.

PART 1 - Schematic

Below you have the schematic for this project with all the connections and components. It is very simple. The arduino will get the radio data from the NRF24 module using SPI communication. Then it will create the PWM signals for two FUTABA servo motors. At the same time, some digital pins are connected to some MOSFETs and these will heat up some nichrome wires that will fire the fireworks. At the same tiem we have a buck converter and a battery to lower the voltage to 5V. To enable voltage to the nichrome wire I use a relay for safety so the rockets won't fire themselves by mistake.

Arduino SPWM SINE inverter

PART 2 - 3D parts

The turret is made out of 5 parts. First we have the main bottom plate that could support a FUTABA motor. Over that we put the rotating plate and over this there is the second servo motor support. This will have an arm and the arm will support the rockets.

3D printed turret with servo

Print the parts without supports, using 2 perimeters, 20% infill or more and PLA material. I have a printer with a 0.4mm nozzle and I've used a layer height of 0.3mm. Once we have the 3D parts we can mount this. I've made if for my 3D printed tank but you could fit it over any other RC car.

PART 3 - Build the turret

First step is to add the first servo to the main plate. After we screw that in place we add a star shaped support on to the shaft. Then we add 4 bearings to the rotating plate with some small screws. These will help the rotating plate to have more support. Next we add 4 M3 screws to the rotating palte for later. Next we join these two parts together and we have the main base.

Arduino servo 3D printed turret servo

Now we add the second servo support to those 4 screws. Tight the nuts and now we can add the second servo motor in place. On top of this motor we add the turret arm and fix that in palce with an L shaped support on the shaft of the motor. Now the arm will move at the same time with the arm. Final step is to add some nuts to the rocket support and screw taht on top of the turret arm.

3D printed turret servo

Now we haev the turret so we can mount the schematic. Connect the servos to the Arduino and to the 5V buck converter. Don't use the 5V regulator of the Arduino for this, that doesn't have too much power. Also I connect a MOSFET to the digital pin and to a nichrome wire that will fire the rocket. I connect the radio receiver and also power on the radio controller from the past tutorial. I upload the code and test the movement.

radio NRF24 Arduino tank turret

PART 4 - Code

The code is quite simple. make the radio connection and depending on the teceived data move the servos to left or right, up or down. Then, if the AUX 1 is enabeled we activate the relay. If the AUX 2 is enabeled we activate the nichrome wire and fire the rocket. Taht's it. Remember to install the NRF24 radio library as well.

#include <nRF24L01.h>   //Download:
#include <RF24.h>
#include <Servo.h>      //To create PWM signals we need this lybrary

const uint64_t pipeIn = 0xE8E8F0F0E1LL; //Remember that this code is the same as in the transmitter
RF24 radio(9, 10); 

This example is for just one rocket. But just add more MOSFETs and nichrome wires and in the code connect the pins to other MOSFETs and enable those as well. So taht's it. That's how this works. Quite simple.

radio NRF24 Arduino tank turret


Help me by sharing this post


Radio servo turret
page 1/1

PCBWAY PCB service

PCBWAY PCB service