Many moons ago, in the shadowy darkness of the 1990s, a young Lewin visited his elder cousin. An adept AMOS programmer, he had managed to get his Amiga 500 to control an RC car, with little more than a large pile of relays and guile. Everything worked well, but there was just one problem — once the car left the room, there was no way to see what was going on.
Why don’t you put a camera on it? Then you can drive it anywhere!
—Lewin
This would go on to inspire the TKIRV project approximately 20 years later. The goal of the project is to build a rover outfitted with a camera, which is controllable over cellular data networks from anywhere on Earth. For its upcoming major expedition, the vehicle is to receive solar panels to enable it to remain operable in distant lands for extended periods without having to return to base to recharge.
The project continues to inch towards this goal, but as the rover nears completion, the temptation to take it out for a spin grew ever greater. What initially began as an exciting jaunt actually netted plenty of useful knowledge for the rover’s further development.
Preliminary Work
Early testing way back in 2016 had already taught us a lot about how the rover performed in the wild. We learned that our MJPEG webcam had poor resolution and used excessive bandwidth for the given video quality. This led us to upgrade the platform to a Raspberry Pi camera, capable of up to 1080p video using the H264 codec. This also came with IR LEDs to enable night driving. It also became apparent that our on/off motor control made it difficult to drive through tight spaces. With an upgrade to a PWM brushed motor controllers, movement can be throttled down to a crawl. A last-minute hack session resulted in adding a crude servo to pan the camera left and right. This greatly helped to navigate the rover through and around obstacles.
The Goal… Not Quite Mars, But Nearly as Fun
Why let space agencies have all the fun, we can drive a robotic platform right here on earth that feels every bit as hard as navigating another planet. The planned mission was a trip from home to the local football oval with the primary goal being to locate and identify the football goals using the onboard camera, with the secondary goal being a successful return to base. As this mission was undertaken in suburbia, there was a moderate likelihood of encounters with pedestrians, so we sent out a runner in order to reduce the likelihood of losing the vehicle in the event of a mishap, but with strict instructions not to interfere in any other case.
On a cool, dry night in August, we gathered just before the stroke of twelve and prepared the machine. Batteries were fully charged, and voice comms set up between the runner and base. TKIRV was energised and we set out into the night.
Shakedown Missions Easily Find Your Weakness:
I can’t stress enough how helpful it is to test your builds in real conditions long before you think the project is finished. Real-world conditions always challenge your notion of how things should have gone, and adjusting course along the way is far better than heading back to the drawing board with a design.
Right away it was clear the steering had a significant pull to the right. Thanks to the design of the RC chassis, mechanical adjustments are highly difficult, but this one was easy to correct by resetting the neutral position of the steering in the code.
Navigation turned out to be a major headache, based around finding our way to the target purely from our knowledge of the area and what we could see through a dimly-lit video feed. Landmarks were tough to identify as our LEDs only threw light a short distance. Reflective streetsigns were the easiest thing to make out but in retrospect, a larger IR light source would have given far better results. Our camera is also quite low to the ground, making it difficult to see things further away. It’s also clear we need to implement GPS for future missions in unfamiliar territory, as it’s not really possible to read streetsigns from a platform sitting so low to the ground.
One interesting observation from our tests is that streetlights appeared as bright points of light at the top of our camera feed. When far enough in the distance, we could use them as navigational beacons, akin to sailors navigating by the stars. Nevermind if all around you is darkness – simply keep the streetlight steady in your field of view, and you’ll be driving straight and true! Having this tool to hand helped offset the lack of a heading indicator or compass.
This rover is plagued by a major vibration problem with the video. This was particularly pronounced at night, with our vision becoming a blurry mess when bouncing along the footpath. However, drone video is a thing, and investing in an expensive but effective 3-axis gimbal is a solution we’ll test on future versions.
Cameras Have Adjustments for a Reason
Once we made it to the football oval, it was still difficult to spot the goals from the perimeter fence due to our limited view. Some tinkering with the camera settings at this point greatly improved things. Increasing the brightness allowed us much better vision of where we were. Better control of these adjustments should be added to future revisions of the control setup.
We also need to add battery conditions to the data stream. Without a readout of the battery’s level of charge, we had no idea how much power we had left in the tank. Cruising across the grass at high speed was power-hungry work, and we began to experience dropouts in our telemetry link.
This led to us considering further improvements to the power system. By using a separate power source for the control hardware and the drive motors, excessive current draw from the motor would no longer be able to sever our command and control link as the batteries ran down. In spite of our valiant efforts to press on, we could no longer fight the inevitable death of our batteries. After the fourth low-voltage reboot, I elected to end the mission, reportedly somewhere around the 50 meter line.
A Valuable Learning Experience
Overall, while we were unsuccessful in reaching our primary goal, the lessons learned were invaluable for the future of the project. We now have a laundry list of upgrades in addition to the development of the solar power system.
We’re champing at the bit to get the vehicle ready for its next adventure and can’t wait to once again settle into the command chair. Expect to hear more tales in the future from the exciting adventures of TKIRV!
I distinctly remember having this same exact idea in 1997, although my idea was to use a REALLY long cable instead of anything wireless. Of course, I couldn’t afford anything back then, so I only had to wait 22 years to see my dream realized. Thanks.
1994, and I was trying to hack dialup modems into cordless phones so I could have a wireless rover to drive around the school hallways at night and freak out the janitorial staff. In retrospect there were so many things I didn’t understand about modems, but I wonder if I could make it work with what I know now!
Hey Lewin, is there a potential for a “Second-chance projects decades later” series here? ;)
But, with what the janitorial staff knows now a days, a bomb squad would probably be summoned!
B^)
Ha! Build it, and hit the tips line :)
tips@hackaday.com
Would a camera that has a smoothing/no shake process be available?
or some type of mount somewhat gimbaled, or actively counteract vibration?
I was thinking strobe the illumination only when the gyro says the camera is in its desired orientation. Let it wobble, who cares? Just control the light so it only “samples” the terrain when it’s passing through the level mark of each wobble.
Is that how “steady cams” work?
Steady cams don’t work that way. You can’t really mess too much with your sampling like that with video, as you need to be capturing a certain amount of frames per second at a regular pace.
From the article:
“This rover is plagued by a major vibration problem with the video. This was particularly pronounced at night, with our vision becoming a blurry mess when bouncing along the footpath. However, drone video is a thing, and investing in an expensive but effective 3-axis gimbal is a solution we’ll test on future versions.”
It’s something I’m very eager to explore, as it would improve driveability immensely. Saving for parts as we speak!
Better yet. Have a deployable drone that follows for a 3rd person effect. Plus then you almost have a fleet of bots. :)
I did try a gimbal but it too didn’t help much. In the end, more illumination meant I could up the cameras frame rate, and the video improved immensely. :)
Good read
Thanks! I always have fun on these missions.
I built this exact thing a couple of years ago at a hackathon: http://devpost.com/software/4g-earth-rover
I’ve had a similar idea bouncing around in my brain for many years but never got around to it. But my plan was to turn it loose in some interesting place, like maybe a large national park or some remote place where you could drive it for miles over weeks or months.
Same! I’ve done a few long range missions with solar power which have been very difficult but also very rewarding.