Content uploaded by Houxiang Zhang
Author content
All content in this area was uploaded by Houxiang Zhang on May 13, 2014
Content may be subject to copyright.
1. Introduction
Robotics is one of the best ways to connect students with
motivation to learn technology. The project deals with a kind of
edutainment robotics system whose objective is to offer a
chance to students of different levels to acquire knowledge
about robotics. At the same time, this learning process will
involve the students, as they can design and build their own
mobile robot. Our efforts will concentrate on developing our
own cheap educational robotic system in order to meet the
requirements of flexibility, functionality, extensibility, easy
handling, and low cost.
In our implementation, the “Mobile Robot” system for the
course consists of the mechanical parts, the hardware and the
software. The mechanical parts are based on the LEGO bricks
and our own designed input and output bricks as the platform of
the project. New designed hardware includes 4 driving DC
motors and 9 sensor channels. Students can program using a
graphical interface, simple C and Java language according to
their knowledge. This new system is more flexible and suitable
for students to understand all aspects of robotics technology.
This project is based on the cooperation between TAMS group
of the Department of Informatics in University of Hamburg
(UHH) and ARMS group at Robotics Institute in Beihang
University (BUAA). The course will be used at the computer
science department of University of Hamburg and at the
Mechanical and Electrical Engineering department of Beihang
University in parallel. It is also suitable for professional schools
or for further education. Based on their own ideas students can
build different mobile robotic prototypes. Using the software
environments, they can program the robots and carry out
simulations offline. Then they can download soft codes to the
controller and test on-site. During this process, they have to
deal with the sensor information and realize the various
movement functions by controlling the motors. They will learn
the sensorial technology and motor-control methods. At the
same time, students can overview the process using a
web-camera and can interrupt in case of malfunctions. The
most important aspect is that students will get a thorough
knowledge of the principles of mobile robotics.
2. Overview of the system
The whole system consists of three parts: the mechanical, the
hardware and the software parts. The mechanical parts are the
physical background of the project. The hardware including the
driving motors and sensors is the bridge between the
mechanical parts and the software.
Figure 1: Block diagram of our new tutoring system for the
practical course
Scenario design
The scenario of this project is built in wood, as shown in Fig. 2.
The dimension is 122cm wide and 183cm long. It contains 4-6
“L” Walls, whose positions are unfixed. The floor of the
platform is in white, and the normal walls and “L” walls are in
Black. The obstacles can be rebuilt using “L” walls due to the
standard shape. For example, a “T” obstacle can be built by two
“L” s.
Figure 2: Scenario design for the practical course
Mechanical part
The best choice for the mechanical part is using normal LEGO
bricks which can meet all requirements of functionality,
extensibility and easy handling. Various types of block and
gears can be added and connected together to turn out into a
unique robot. On the other hand, almost all of the students have
some experiences on Lego bricks when they are young.
The series of LEGO Bricks 9649 is used in the project. The
motor output and sensor input of LEGO Mindstorms are not
only limited and simple but also expensive so that we have to
find other cheap alternative. We should add other kinds of
bricks for sensors and DC motors to the system ourselves.
Based on the cooperation with the group of ARMS at Beihang
University (BUAA), we have redesigned two new kinds of
DC-Motor Bricks and five kinds of Sensor Bricks since there is
no input and output brick at all in 9649. All of the new sensor
bricks and DC motor bricks have been double-checked and fit
original LEGO bricks well. Fig. 3 shows the mechanical
system which can be used to achieve different kinds of mobile
robots.
Figure 3: Draft of the mechanical system
Control h ardwa re
The hardware, as shown in Fig.4, includes the controller, sensor
inputs and DC motor outputs. As mentioned above, the original
RCX Controller of the LEGO system is not efficient enough for
our project since only three sensor inputs and two DC motor
outputs are included. Here the focus is on the controller. We do
not insist on using the original controller from LEGO, while
design a new control system which will be in charge of
collecting the sensor information, actuating all DC motors, and
sending all working information back to GUI using wireless
communication. The students can program soft codes on their
own laptop at home; then send them to the client terminal to
simulate. They can download all soft codes to the mobile robot
using RS232 interface.
Figure 4: Control system
Software requirements
First of all the software must provide a flexible, robust and
stable programming interface to the robot hardware. Secondly
the system should be easy to use by students. The senior middle
school students can program using iconic interface environment
like RCX programming. Meanwhile, the special graphic
programming environment of the Mindstorms system is not
convenient for university students who prefer to program in
normal C language. Among many program languages, C is
chosen for this project because it has general characteristic of a
lower-level language. The third point is security. Students are
allowed to use features of the hardware. It should make no
difference for the students whether working directly in the
laboratory with the robot or programming it from their homes.
Nobody, except the designer of the robot, is permitted to
program the sensor or the PID-motor controller of a robot. This
requires the hardware to be hidden from the user by means of a
hardware abstraction layer (HAL). Moreover the system should
not be bound to any specific operating system.
3. Implementation
Tasks description
Using the LEGO bricks, some suitable sensors and simple DC
motors, the students can realize several task functions step by
step, from the easy ones to the much more complicated ones.
Following a line: The mobile robot should follow this black
line and move forward from one end to the other end.
Looking for an object: The second task is to hunt for a special
object in the scenario. There is a burning candle on the floor
whose position is uncertain. The mobile robot should find it
automatically, move forward and stop in front of it.
Following a moving object: Task three consists of following a
moving object, for example a human hand, inside the scenario.
The robot will only move forward if it detects something in
front. It will follow till the object disappears.
Mapping the scenario and path planning: The scenario
contains obstacles and looks like a maze. The mobile robot
should map the work space and draw a sketch map. Then the
robot will find the shortest path to return to the starting point.
Cooperation between two mobile robots: This task is the
combination of all the functions above. That means it is a maze
with obstacles, but the positions of the obstacles are different
from those in task 4. A group consists of two mobile robots,
robot A and robot B which own different working abilities due
to the different sensors and output functions.
Furthermore, special competition can be developed, such as a 2
to 2 battle or Robocup. Other possibilities are still open.
4. An example—following a line
-Building a robot
Figure 5: Building a robot
-Programming
Figure 6: The iconic programming environment
--Testing and improving
Figure 7: Testing
Open topics
In future, the tele-access capability will be met. The Bluetooth
will be used as a wireless communication device according to
the velocity and the data transfers. The CCD image input will
be added to the system. But it will not be used for image
processing but overview; the onboard controller only sends the
images to a GUI at first step. In order to meet these new
requirements, another higher level controller will be needed,
which will manage the USB camera, the wireless interface
between the onboard hardware, and the information exchange
between the two layers of controllers on the robot.
Building and Understanding Robotics-a Practical Course for
Different Levels Education
Dr. Houxiang Zhang
Email: hzhan
g
@informatik.uni-hambur
g
.de
Technical Aspects of Multimodal System
Dept. Informatics, Faculty of Mathematics, Informatics and Natural Sciences
http://tams-www.informatik.uni-hamburg.de