All robots are shown in reverse chronological order of their date of creation.
To familiarize myself with Willow Garage's Robot Operating System (ROS), I have put my Hokuyo URG-04LX UG01 laser range finder on my Roomba 530 and hooked them up to a netbook running ROS on GNU/Linux. For controlling the robot, I have also connected a joystick to the netbook. On the left, in addition to the robot, you can also see a part of a map which was made by logging data and then playing it through the ROS mapping module GMapping. It was a lot of fun... If you were wondering what is holding the laser, then yes, it is cardboard and a rubber band.:-) From the bottom, the laser is sitting on 2 layers of non-slip sheet to reduce vibrations. I have bought parts to make a proper frame holding the laser, the netbook and a Kinnect sensor, thus it is possible that one day the robot will look better. |
Mappino is one of my latest robots. I have created it because I wanted to know how simple a robot can be while still able to to basic localization and mapping. Mappino is open source, however for those who want one, but don't want to build one, I have created the company ABC Robotics, s.r.o. bringing Mappino to the market. More about Mappino can be found here. |
I have made MiniBot in 2010. Traction is provided by two small modified RC servo motors. It has got Sharp IR sensor for sensing obstacles. For interaction, it is equipped with a LEDs and a piezo speaker. Power is provided by 4 AAA batteries. |
In 2009 I went to a fancy dress Christmas party in where the theme was biology, chemistry and
physics. Instead of dressing up, I have decided to bring an old idea of me into life and go as
a cyborg. In 1996/1997 I was ill in bed with high fever and found it hard to reach things
from a table at the side of my bed. It came to me that a forearm mounted robot arm similar to
the Australian artist Stellarc's, but extending like inspector Gadget's would help me a lot.
I built the arm during five nights (finished it 30min before the party) and it worked like a charm until it was time to go home. At that point some hot melt glued pars broke off.:-) The initial idea was to make the arm semi autonomous by having a change in the abdominal muscle tone trigger an extending and grasping behavior. However I ran out of time, therefore went for a remote control solution. The arm was powered by a 7.2V battery pack used for remote controlled cars. The hand opening/closing and extending was actuated by RC servo motors. The motors were controlled by an ATMEL AVR chip which read the remote control consisting of 4 push buttons. The arm was comfortable to wear and fun to use. I could easily manipulate 0.5kg water / beer bottles, pick up glasses, mugs... |
The String Racer is not really a robot. It was the entry of Mark Pupilli, me
and James Ch. into an autonomous vehicle contest. The goal of the contest
was to build a vehicle using a given motor and a given battery,
which can complete a 40m straight run in the least amount of time.
When the contest was announced, the path length was 60m. I thought
we can't make an unguided vehicle which can go straight for 60m,
thus I wanted to have the vehicle laser guided. However time got tight
and couldn't get suitable lenses. At this point Mark suggested to
have the robot reel itself in into the finish line. After a discussion
with the referees, we went for it. Mark built the mechanical parts and
I the control electronics. We had current monitoring, bump detection,
over-current cut-out and ram-up function. I also made a full dynamics
model including motor to make sure we can build it efficiently. Before
building the vehicle we knew, it will be able to do the 40m in under
2s while achieving at the end the speed of about 120km/h.
James Ch. joined the team towards the end and machined out to Mark's
specification the very important spindle with a changing profile
for reeling in the fishing line. James helped a lot during the contest as
well and gave suggestions on how to avoid burning the transistor for
PWM the power to the motor.
The vehicle won the competition by completing the 40m in 1.9s. The launch was quite amazing to watch as upon the push of a button, the vehicle seemed to disappear. Of course the crowd was surprised. The vehicle which came second after us needed more that 4 seconds to complete the 40m. |
I have designed these three boards using the GPL-ed gEDA tools gschem and PCB. On the left a USB to serial TTL converter is visible followed by a two axis motion control board and a 6 axis IMU. |
Following my earlier attempts for generation linear motion (see the bottom
of this page for the pendulum moving linear axis, or the laser calibration
tool at the PhD page) this is my latest linear motion tool.
I have build it from PVC pipes bought at B & Q, a stepper motor from a floppy drive, an Ardunino, some custom build electronics, two pulleys, a piece of string, a spring, a few bearings and a microswitch. A small platform rolls on a pair of pipes while it is pulled back and forth by the stepper motor using the string. It has 120cm of travel at a 0.6mm resolution. If a longer travel is needed, one can easily replace the pipes with longer ones. Motion commands are sent to the Arduino from a PC. In robotics, our job is often easier if we gain a good understanding of the sensors we use. I have build this tool to ease the calibration of sensors. One can use it to test sonars, IR range sensors, laser scanners, or by putting a camera on it, one can check how accurately can one track, build maps or do localization. I think every serious roboticist should have one of these.:-) |
I have built Rodney (Rod - he is built from metal rods:-)) in 2006
with the manual help of a good friend, for its sheer fun and to
evaluate a few visual mapping/localization ideas. The final goal for
the robot is to have it as an automatic cameraman. The robot
could enable someone to make one's own documentary movie
without needing a second person to help to handle the camera.
In cameraman mode, of course the webcam would be replaced
by a video camera. The robot would always keep a constant
distance to the user while the user would control the robot
(come closer, go further) with hand gestures.
I have come up with the idea when wanting to make a video
to document a house. I found it very unpractical that I had
to ask a friend to film me.
The inspiration for the shape of Rodney came from Evolution Robotics's ER1. Rodney has 2 motors from old cordless drills. I could not remove one of the motors' chuck, therefore I had to leave the chucks on both motors. The robot is very stable and does not shake when moving which is important for acquiring sharp images from a moving robot's camera. The motors used to be controlled by an ATMEL AVR 90L8353, but in 2010 I have replaced the electronics with a recently designed motion control board which provides current, back EMF and encoder feedback. Using back EMF, Rodney has speed feedback control without encoders. Power is provided by a 7.2V battery pack. Rodney carries an open laptop in a nearly upright configuration and a camera. Rodney is still a work in progress, but it has recently demonstrated a promising path following behavior based on color segmentation. |
Mobot III was specifically designed in 2001 for the second mobile robot contest. Unfortunately I did not finish it in time, but I had great fun building it. Some of its structural parts were build by a good friend. Many of its electrical parts were sponsored by MicroStep-MIS. The wheel was machined in the University's workshop. Mobot III's small baseline, large wheels and powerful hacked servo motors ensured a high degree of agility. It is equipped with bumpers, line sensors and wheel encoders. Its control board dominated by a Motorola 68HC908 was my first SMT board - etched at home but soldered at work in a reflow oven. The robot was properly designed in a 3D CAD, thus parts fit well together. The 4 AA batteries for powering the motors are situated at the bottom of the robot and are easy to change. The control circuit is run off a 9V battery regulated down to 5V. To program the robot, I have made a programmer. It was much simpler than that of Mobot I, worked reliably, and for the first time it let me do in-circuit debugging. A second friend of me made a IR obstacle sensing skirt for the robot (no in the image) which fitted in the empty space in the front between the base and the electronics board. A third friend wrote a fuzzy logic simulator for the sensors and the robot as we wanted to run the robot was aimed for the maze contest as well and the line following contest. |
Mobot II - "The Brain", beside enabling me to study odometry
calibration, won in 2000 the first mobile robot contest organized in Slovakia.
Mobot II was controlled by a Phillips 552. The controller
board was etched at home using a photo approach. The board hosted
plenty of ROM and static RAM which was backed up by a lithium
battery. A programmable array logic chip (PALCE 16V8) enabled
flexibility in the use of the memories. Programs could be run from
both RAM and ROM and programming was possible just by upload
to RAM. Floppy drive stepper motors donated by friends were used
in a differential drive configuration. Mobot II was equipped with a line
sensor, IR obstacle sensor and a front bumper which also triggered for
sideways contact when turning. Energy was provided by 6AA batteries.
Mobot II was a big step-up from Mobot I. As it was build for serious use, the cabling was reliable, it had heaps of RAM, and programming was quick and easy through the serial port. Program execution would start from ROM, and after downloading new code to RAM, execution would switch to RAM. I got help from Uni, as Riso Balogh (who took the photo on the left) let me to a programmer for the ROM, a UV eraser and an oscilloscope in one of the labs. The university also paid for the processor, the RAM and the ROM chip. When I left Slovakia I have donated Mobot II to the university. Mobot II was exhibited during on the 10th anniversary contest of ISTROBOT. |
This is how it all started. My first real mobile robot Mobot I - "Pinky"
(as in the TV cartoon series "Pinky and the Brain"). I have
built it in the summer of 1999 when I finally acquired the knowledge
needed to build working mobile robots. Mobot I was constructed from
Merkur (a Meccano equivalent kit) structural parts, an ATMEL 89C2051
micro-controller and two floppy drive stepper motors. I have salvaged
other parts from the large floppy drives as switches for bumpers and
connectors for the motors. The floppy drives were kindly donated to
me by friends. The robot's motors are powered by 6 AA batteries, while
the processor runs of a 9V battery regulated down to 5V. The batteries
fit in the empty space in the "belly" of the robot on the photo. The user
interface consists of a switch, an LED and a piezo buzzer.
The sensor included two bumper switches in the front, one in the back
and two photoresistors.
One can see on the PCB that my board making skills were still very
rudimentary. I made the double sided board by drillig the
component holes in the raw PCB and hand drawing the tracks with
fingernail lacquer as it resists the acid when etching the board.
I wanted the robot to be able to something close to useful, thus before building the robot I have decided that it should follow lines and go around obstacles. I have read about the line following contests in the US, and it seemed doable with the skills I had. However, I also wanted it to be able to handle situations when something blocks the path as well. To get Mobot I working I also built and programmed a programmer for the 2051. Buying one was out of question as at the time they were expensive and I was earning only a $1.5USD worth of Slovak Crowns per hour at my part-time job beside studying at the uni. Thus I have built a programmer shown on the left (top and bottom sides - shown here as it looks funny:-)) with buffered lines connected to a PC's parallel port and wrote the programming software in C. The hardware only worked every second or third try, which is not surprising given the dodgy soldering job I have done. To my defense I was just learning to solder. At the end I have given up on the programmer and did the final coding touches on the robot the uni. I was lucky as Riso Balogh kindly allowed me to use a programmer in one of the uni labs. BTW Riso took the photo of Mobot I on the left as I didn't have a digital camera back then. Cheers for it. Even though Mobot I does not look sturdy, it survived a 1m fall (or jump:-)) from a kitchen table onto a hardwood floor. When Mobot I was finished, I have shown it to the head of the Department of Automation and Control of the Faculty of Electrical Engineering and Information Technology of the Slovak University of Technology, where I was studying at that time. I haven't seen any other mobile robot at the uni. Mobot I inspired the department to come up with the idea of a mobile robot contest which still runs after 10 years under the name of ISTROBOT, organized by Riso Balogh. Well, Mobot I came second in the first contest held in 2000, right after Mobot II. Even though Mobot I came second, it made it to the cover of the popular science magazine Quark. You can read about the year 2000 contest in the report. |
My first robot project was getting a remote controlled car controlled through a PC's parallel port. I have used 2 small, 5V relays to switch the forward/backward switches of the car's remote control and replaced the steering potentiometer with an analog multiplexer connected to resistors. It worked, but modifying something existing wasn't good enough.
My next project was a pendulum actuated by a linear axis. I have bought a fairly big stepper motor for 50 Slovak Crowns from a friend and mounted it on a bridge like structure built from Merkur (a Meccano like construction set). The motor moved a carriage on the bridge using a string. A weight was suspended from the carriage. The motor was controlled from a PC through its parallel port. The driving electronics was one of my first PCBs. I have used FET transistors salvaged from a broken hard drive to switch power to the motor's phases. My intentions with the contraption was to control the motion of the suspended mass by minimizing overshoot. At the end I didn't get as far as to eliminate oscillations when driving to the target position as I have started to work on Mobot I.
Copyright (c) 2011 Albert Diosi
Last changed: 14/12/2011