The computer program is built using ROS, the Robot Operating System by Willow Garage.
It receives the sensor data and directs the robot. Both of these Arduino's communicate wirelessly to a computer over a single Xbee. One board reads the sharp ir rangers and controls the servos while the other board does closed loop motor control for the two faulhaber gear motors that are mounted vertically in the center of the robot. The robot itself uses 2 Arduino Decimillia boards for low level control. To localize itself on its prior map, it uses SURF features of the occupancy grid and a grid based Markov localization technique. For mapping, it uses a probabilistic model beam model of the IR ranger to compose the measurements on an occupancy grid. It can then save the map, be moved around the the environment, and find itself on the previously made map. This allows IRMa to create a very cheap, noisy view of obstacles around the robot.įor my project, I wrote a program to have it autonomously map its environment. The ir-rangers rotate and scan the environment around the robot.
It has a sharp ir-ranger mounted on r/c servos at each of its four corners.
It was custom designed in Solidworks, CNC milled, and programmed on campus at Rutgers University. IRMa, the IR mapping robot, is a small robot, approximately 6" x 6" x 5", that I built for my Principles of Artificial Intelligence course.