This instructable will show you how to make a simple controller that can be used to control any robots or devices that have 3 or less 3V DC motors.
We built it as a controller for our Lego ROV project and have used it to great success in a number of workshops.
Step 1: Bill of Materials
We designed a small simple PCB for this controller - you could either use this, or some other semi-permanent breadboard and wire things yourself.
The designs and schematic for the controller PCB are Open Source and available to download from our GitHub page - the files include those needed for you to modify the PCB in Eagle CAD, and a zip file of the Gerber files needed to send to a PCB manufacturer if you want to have your own made.
Alternatively you can get the PCB (and/or other parts) directly from us using the top link below.
For this build you will need
1 x Controller PCB ( available from us )
2 x AA Battery holders ( RapidOnline )
3 x DPDT (on) - off - (on) toggle switch ( RapidOnline )
2 x M3 nuts - hardware store
2 x 8mm M3 bolts - hardware store
Step 2: Compress the Switch Pins
Compress the connectors on the bottom of the switches slightly so that they will fit more easily into the PCB.
Step 3: Solder the Switches to the PCB
Push the switch connectors into the holes on the PCB and turn the PCB over for soldering.
It is easier to solder if you use plasticine or similar modelling clay to hold the board upright - the negative terminals on the connectors (the ones without a line going to them) will be harder to solder as they are connected to the ground plane, so be careful with those and try not to apply too much heat that could damage the PCB.
Once you have all the switches soldered, turn the board over and check they are secure.
Step 4: Attach the Tether Pins
If your pin headers are longer than 6 pins then cut off 6 pins with a pair of scissors or snips.
We are using 90 degree bent pins for this tutorial as they are easier to attach the motor cables to, but you can use straight ones if you have them handy.
Place the shorter side of the pins through the holes from the bottom of the PCB so that the longer part is below the PCB. You can use the modelling clay again to hold the PCB and then solder the six pins in place.
Step 5: Attach the Battery Holders
Place the battery holders connectors through the holes on the PCB. We will need to secure the holders before soldering, so place the 8mm M3 bolt through the hole in each corner and through the hole in the battery holder.
You may need to screw the bolt through to get it through the battery holder hole. Once through attach the nut on the other side and tighten so the battery holder is held firm.
Step 6: Solder the Battery Holders and Trim Ends
Solder the battery connectors to the PCB and when complete, snip off any excess length from the connector.
Again, the negative connector will be harder to solder so be patient with it and try not to apply the soldering iron for too long on the PCB as it may damage the PCB or battery holder.
Step 7: Your Controller Is Complete
Congratulations you have completed the controller. If you haven't already built your ROV then head over to part one and start on that.
Once you have everything built the cables from the ROV should fit nicely on to the header pins on the controller - place the left motor to the left most pins, the right to the right two pins and the vertical motor to the middle ones.
You may need to rotate the connections to ensure that the motors move in the correct directions, but if you wired them with the white wire to the right hand side of the pin and to the positive terminal on the motor then for the left and right motors the white wire should go to the right hand side on the controller.
For the vertical motor it depends whether you want to push up on the switch to descend or pull down, so you'll need to test the correct orientation for that connector.
You will notice that the PCB has two larger holes near the top - this is so that you can connect a lanyard to the controller so that it is less likely to be dropped in the water when controlling your ROV.