Next step is to wire the power connections: the battery and the motors. The chassis has six motors, however, we only have two VNH5019 motor drivers. This gives us three motors per driver. We now have two options how to connect three motors: in series, or in parallel.
So, we’re going with a parallel connection. One thing to keep in mind is that when connected load in parallel, the overall resistance will drop. In our case, because the motors we’re connecting are more or less the same, the resistance of the three connected motors is actually just one-third of the resistance of one motor. This could cause a problem with some motor drivers, which have a minimum required load to operate. Fortunately, VNH5019 doesn’t have a minimum required load, so we’re good to go.
Here’s a diagram of the power connections. It’s fairly simple. There’s a switch on the +12V line, so that we can turn the robot off. The battery is connected to the drivers and to the LoRenz shield, which has screw terminal that connects directly to Arduino VIN and GND pins.
In my opinion, the most difficult part of this step is where to place the wires on the chassis. You need to place them in spots where they won’t interfere with any moving parts. Also, they should be somewhat covered since we don’t want them to get caught on stuff once the robot is out exploring the world.
Once you have all the motors soldered, it’s time to put them back in the motor blocks. Then secure the wires to the chassis and connect them to the regulators.
At this point, it’s time for a final wiring test. Using a multimeter, carefully measure all connections and make sure every single wire goes to the place where it is supposed be. Words can’t stress enough how important this step is, because all it takes is a single misplaced cable shorting a single pin to the power supply and your Arduino will go up in smoke. And it might take some other parts along for the ride. Remember, we’re dealing with a lead acid battery, and those were designed to – you know – start cars! That means that when shorted they output massive amounts of current. You can search the YouTube for “lead acid battery short circuit”.
With all the electronics and the battery in place, the robot has reached its final weight. Mainly because of the huge battery, the robot now weighs astounding 13 kilos – almost 29 pounds! I’m actually a little bit surprised the suspension is still working under that kind of load. But since it is, we can finally take the robot outdoors and see the result of our hard work.
To test how the motors behave in a natural environment, I wrote a simple app that allows me to directly set the speed and direction of all the motors! The app is running on a PC and sending commands through a Serial port to Arduino. This Arduino then sends the commands wirelessly through LoRenz shield to the robot. Controlling the robot this way proved quite challenging, to put it very mildly. Above, you can see a video of me trying to drive the rover, failing, mostly. Huge thanks to my friend Jan Karásek for helping me out with the photos and the video.
The next objective is to program the robot so that we can collect some data from all the sensors. Right now, the program running on the robot can only control the motors. I will have to write much better control app. Since keyboard controls make it a bit too hard to control the robot, especially on a rough terrain, I will probably have to use some other input device. It could be either an external gaming-console-style controller for the PC, or maybe even an Android phone. All of that and much more will be covered in the next part, so stay tuned!