Projects
From Rod Gutierrez
Contents |
Packbot Operator Control Unit iPhone App
Teleoperation of a mobile robot generally requires at least a laptop running some sort of operator control unit (OCU) software, and a joystick. Lugging this equipment around in the field can become tiring quickly. With that in mind, and looking for a good first iPhone project to get my feet wet, I decided to create an OCU for the iRobot Packbot.
Currently the interface is very simple, there is a directional pad for controlling the translational and rotational velocities of the robot, two buttons for adjusting the flipper position, and a view of the robot’s video feed. With the foundation in place I want to go back and create a Cocoa Framework so that I can use this code for other iPhone and Desktop projects. Once I have a clean framework I’m going to improve the interface, switching to a full landscape view of the video feed, and using the accelerometers to achieve robot control rather than using a directional pad.
To see it in action check out this video.
Camradery
This is a little project that my friend Jeff Craighead and I thought of one day in the lab when we had a lot more time pressing things to think about and work on. Basically we figured why not search Google with some specially crafted query strings to find a few different brands of webcams and then georeference the cameras using their IP and place them on the map using Google Maps. I whipped most of it together later that night using some PHP, the Google Maps API, and Sitening's EvilAPI (a replacement for Google's depreciated SOAP Search API). Google's new AJAX Search API appears to have the ability to return search results as well, but since I'm new to AJAX I'm not sure that it will do exactly what I need (run in a cron job and let me save the results to an XML file). Now that the basic shell is there, I’ll hopefully come up with some interesting ways to improve it. I call it “Camradery.”
- My lab just transitioned to a new shiny XServe and Camradery didn’t make its way over. Putting it up on my own server space is on the TODO list.
Service Based Architecture for Cartography (SBAC)
Maintaining a consistent representation of the world is crucial to outdoor mobile robot missions, especially when more than one robot is involved. A lot of good work has been done discussing interesting algorithms for building accurate maps efficiently, but nobody ever talks about the actual cartographic architecture responsible for creating, storing, and maintaining the map information as well as providing the methods to access this data. Nor do they discuss the mechanisms used for sharing maps amongst robot teams, or their map representation. I think such details deserve attention. This work is an attempt to address the current void in mobile robot mapping research by proposing a distributed cartographer service architecture.
Generic Architecture for Emotion-Based Control of a Mobile using Fuzzy Logic
This project is still in the research phase, but the following Douglas Adams quote sums up what I’d like to do reasonably well:
“Vast wodges of complex computer codes governing robot behavior in all possible contingencies could be replaced very simply. All that robots needed was the capacity to be either bored or happy, and a few conditions that needed to be satisfied in order to bring those states about. They would then work the rest out for themselves.”
--Douglas Adams, Mostly Harmless
