New Approach for Robotics Education

Transcription

New Approach for Robotics Education
> REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
1
New Approach for Robotics Education RoboSapien Hacking
Pedro Dinis Gaspar, António Espírito Santo, Humberto Santos, and Bruno Ribeiro
Abstract— The robotics education integrates several
knowledge’s acquired during the undergraduate course, namely
mechanical and electronics concepts. Moreover, the practical
experience of these concepts is very important as part of
engineering education, but it is resource intensive. It is presented
a nouvelle approach for the robotics education based in the
RoboSapien hacking. It has proven to be a valuable teaching tool
for this purpose, allowing the reinforcement of several key
concepts concerning the integration of topics related to
kinematics, dynamics, control systems, embedded systems, data
acquisition and microprocessors programming. Furthermore,
this approach for the robotics education proved to be very
motivating and stimulating for the students.
Index Terms—Robotics, Education, RoboSapien, Concepts.
I. INTRODUCTION
R
obotics is being increasing used a vehicle for motivating
students to learn embedded systems, artificial
intelligence, computer science, and even general science
and engineering [1]. Typically, the robotics courses involve in
the laboratorial classes the construction and programming of
simple robots, usually are comprised by a microcontroller, end
course switches and infrared emissor-receiver for control, DC
or step motors, mounted in all type of the bodies. This is one
of the main objectives of the Automation and Robotics classes
of the Electromechanical Engineering Department of
University of Beira Interior, Portugal. The Automation and
Robotics classes are included in the last year of the undergraduate of Electromechanical Engineering course. These
classes intend to integrate the most part of the knowledge
acquired during the course, both in mechanical and electronics
concepts, based on the development of projects that contain
both the hardware and software development for some
Manuscript received October 9, 2001. This work was supported in part by
Texas Instruments and University of Beira Interior.
Pedro Dinis Gaspar is with the Electromechanical Engineering Department
of University of Beira Interior, Calçada Fonte do Lameiro, 6201-001 Covilhã,
Portugal (phone: 351-275329; fax: 303-555-5555; e-mail: [email protected]).
António Espírito Santo is with the Electromechanical Engineering
Department of University of Beira Interior, Calçada Fonte do Lameiro, 6201001 Covilhã, Portugal (e-mail: [email protected]).
Humberto Santos is with the Electromechanical Engineering Department of
University of Beira Interior, Calçada Fonte do Lameiro, 6201-001 Covilhã,
Portugal (e-mail: [email protected]).
Bruno Riberiro is with the Electromechanical Engineering Department of
University of Beira Interior, Calçada Fonte do Lameiro, 6201-001 Covilhã,
Portugal (phone: 351-275329; fax: 303-555-5555; e-mail: [email protected]).
specific application, and at the same time present to the
students the fundamental topics of robotics. Since these
classes only extend during a semester, is quite difficult to
accomplish those objectives. Last academic year (2005-2006),
these classes were reformulated to increase the knowledge
transmitted to the students and let them develop more
integrating projects. This nouvelle approach had followed
several indications provided by [1-11] which were devoted to
improve pedagogically the robotics education profile,
In the Electromechanical Engineering course, the student start
very early to possess knowledge’s concerning embedded
systems based on the microcontroller MSP430 produced by
Texas Instruments. At the laboratorial classes of
Instrumentation and Measurements, they start to use this
microcontroller to apply the theorical knowledge’s in
conditioning systems and data acquisition. The use of this
microcontroller is mostly related to its low cost, to the
available number of hardware starter kits and software
integrated development environment (IDE) either free or with
a reduced cost, the amount of peripherals integrated in the μC,
the low power features, the high pin out counting, the C and
C++ easy programming, and the very important to education,
the rapid learning curve that allows the students to start very
initial stage to create their own applications. Nevertheless, this
required the presentation of an introduction to μC MSP430,
where are described various embedded systems, the
architecture characteristics, the memory hierarchy, internal
modules, I/O ports, peripherals and the programming
language of the μC (although it can be programmed either in
Assembly or C, each one with several advantages and
disadvantages, the programming lectures tend to by in C
language since it is easier for the student to rapidly learn it.
When the students arrive to the last year, and particularly to
the Automation and Robotics lectures, they already have the
basis of control systems, sensors/instrumentation, data
acquisition and microprocessor programming, nevertheless the
projects developments are normally difficult by hardware
concerns, since the hardware project, construction and
assembly takes a lot of time.
During the Advanced Technical Conference - ATC 2005,
promoted by Texas Instruments (TI), along the discussions
about teaching Robotics, born a collaboration between DEMUBI and TI, which consisted in the substitution of
RoboSapien (RS) control and regulation electronics by the TI
MSP430 to replicate the RS operation, evidencing the
capabilities of this microcontroller and as a way to motivate
the students and to develop a technology demo vehicle. Using
the RS in the Automation and Robotics laboratorial lectures,
> REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
all the precedent objectives defined for this lecture could be
accomplished as well it turn to be a incredible approach to
kept the students attention for the knowledge of robotics.
Another benefit of the approach was the development of the
teamwork between the students in multidisciplinary topics in
order to successfully integrate different areas of knowledge, in
contrast to traditional technical education strategies that’s
tended to promote individualism and competence among
students. This helped also the engineering students to develop
the needed communication and working skills for teamwork.
Additionally, the robotics field is still emerging, providing the
development and use of new technology, theories and
concepts. Due to its flexibility, robotics education provides an
ideal setting for testing new educational approaches.
II. PROCEDURES
A. Overview
The course goals based on this new approach were
differentiated by working teams, each involved in separated
tasks to pursuit the same objective based in a reverse
engineering procedures:
B. RoboSapien characteristics
Investigate the RS characteristics. In parallel with the
theorical lectures, were was exposed the robotics
fundamentals concerning robots as general application in
manufacturing, coordinates systems, actuators, robot
nomenclature devices as manipulators and end effects, robot
uses, programming and classifications, tactile/vision sensing,
among other issues. Concerning this task, first of all the
students had to research about RS characteristics and identify
the most important ones.
The RoboSapien (Fig. 1) is a humanoid robot designed by
Mark W. Tilden [23], marketed byWowWee for the toy
market. It measures approximately 34 cm in height and its
weight is about 2,1 kg, including four mono (D) type batteries
located in its feet.
Fig. 1. RoboSapien.
2
This biomorphic robot was designed to be easily modified
or hacked, being the electronics inside the RS easily accessed
and clearly labelled. So, a growing community of hackers has
devoted themselves to modify and add new functionalities to
the robot.
The RS is pre-programmed with moves controlled by an
infrared remote control, being capable of walking motion,
grasp objects with either of its hands and throw them with
mild force. It also has a small loudspeaker unit, which can
broadcast several different vocalizations. The RS’s remote
control unit has 21 different buttons. With the help of two
shift buttons, 67 different robot-executable commands are
accessible. Being equipped with a basic level of
programmability, the users can string together movement
commands to form macros or mini-programs (instructions
sets), broadcasting them to the RS by infrared.
Researching into internet, it can be easily found several sites
devoted to the explanation of RS modifications, like a live
wireless video camera, a led belt that displays text, headlights,
speech synthesis, a “flamethrower" (a small torch), volume
control, radio frequency control, among others. The majority
of these added functions can be founded in the internet by a
simple search. However, none of the active modes integrated
in the original RS concerned the substitution of the original
microcontroller. All of them concerned the integration of
hardware new functionalities as hand-beams, hand-led’s,
heartbeat, voice off, tunnel-beam and blue eyes [12], wireless
camera, wireless radio, frequency audio and pc control [1314], color and motion tracking CMUCam [15], including an
additional microcontroller (PicMicro controllers and Palm
Pilot controllers) [16], and replacement of the head by a PDA
to allow the perception of its environment using a camera
[17]. This last example of RS modification had the objective
of develop two teams of three RSs to play the 1st soccer match
of humanoid robots worldwide at the Robocup German Open
2005 tournament.
C. Analysis of the robot kinematics and dynamics
Analysis of the robot kinematics and dynamics (evaluation
of the robot movements and it’s characteristics). The
evaluation of the RS dynamics proved that due to its low
centre of mass, the RS is very stable. It is driven by seven DC
motors, possessing one motor per leg that moves two joints in
the hip and the knee keeping the foot orthogonal to the trunk.
A trunk motor tilts the upper body laterally. These three
motors locomotion the RS since it swings its upper body
laterally to achieve a periodic displacement of the centre of
mass projection from one foot to the other. The RS can walks
backwards in a similar way, as well, turn on the spot. It also
possesses one motor in each shoulder to raise and lower the
arm and one motor in each elbow to twist the lower arm and
open its grippers. This gripper hand has three fingers. The
motors locations are presented in Fig. 2.
The dynamic walking pattern of RS follows the next
sequence as exposed by [17] and it is shown in Fig. 3.
> REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
3
Fig. 2. The motors locations in RoboSapien [17].
(1) The trunk motor tilts the upper body to the right. The
center of mass shifts over the right foot. The left foot lifts
from the ground.
a) Front view.
(2) The leg motors move into opposite directions, resulting in
a forward motion of the robot. As the upper body swings
back, the left foot regains contact with the ground.
(3,4) Symmetrical to (1,2).
Fig. 3. Walking gait of the RoboSapien [17].
D. Analysis of actuators, sensors and signal conditioning
The next task started in a dismantle procedure to allow the
detailed analysis of the actuators (motors) and regulation
electronics, sensors and respective signal conditioning, and of
the PCB boards included in the original robot.
As exposed, the PCB boards (Controller U2 and Motor
Driver U3) of the RS is easily accessed and clearly labelled,
indicating the motors (M), input or output port (P), raw battery
voltage that fluctuates wildly (VDD), the regulated voltage
(Vcc = 3.6V) and the universal ground (Gnd). The first task
was to identify all the connections of the PCB board exposed
in Fig. 4. The original controller, certainly an ASIC
(application-specific integrated circuit) is an integrated circuit
customised for this particular purpose, which was covered
with glue disabling the possibility of evaluating the control
systems philosophy developed for the RS.
b) Rear view.
Fig. 4. Original PCB board of the RoboSapien.
procedure consisted in the acquisition of the ports digital
signals, initially for a single motor, and then to command
functions that combined several movements at the same time,
listing the times that each motor was active and inactive. To
accomplish this task, was used Tektronix™ TDS220
oscilloscope to acquire the single movements signals and a
PM3580 Logic Analyzer for the robot combined movements
signals. In Fig. 5 is presented a photograph of the use of the
former instrument.
Furthermore, the students had to list all the components and
devices included in the PCB board and investigate its
functions. In parallel other working groups were devoted to
complete the list of actuators, sensors and output devices.
Were determined the mechanical and/or electrical
characteristics of the power switch, motor driver, the four foot
touch sensors, two finger touch sensors, shoulders and elbow
end course position switches, the sound sensor and of the
seven leds (fingers and eyes).
After dismantling the robot, was done the analysis of the
digital signals acquired from the electronic board ports to
evaluate the original microcontroller control output ports
when the robot do a specific command function. The
Fig. 5. Use of the PM3580 Logic Analyzer to acquire the digital signals of
the motors.
> REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
4
The analysis of each single motor signal was done by the
comparison of the output signal from the original
microcontroller and the signal that the motor receives. In Fig.
6 are exposed the graphs obtained with the digital oscilloscope
to single movements.
Fig. 7. Output port signals acquisition of a combined movement: Function
“Oops”
One of the next activities concerned the analysis of the RS
eye patterns, since depending on the command that is
executed, the pattern will be different. The RS original
microcontroller has 3 outputs for each eye. Since his eyes give
distinct patterns for all conditions, this output condition can be
used as an effective digital-level feedback source.
a) output signal vs. motor input signal
The next task involved the analysis of the infrared
commands. For the input commands is used the direct serial
input to the IR-OUT pin (active low signals, 1200 bps). The
timing is based on 1/1200 second clock (~ 0,833 msec), where
the signal is normally high (idle, no IR). It was determined
that the data bits (8 bits), the space encoded signal depends on
bit value, sending the most significant data bit first, being the
Carrier at 39,2 kHz. The first bit (MSB) is always 1 and the
valid codes are range from 0x80 to 0xFF. Every IR command
has a preamble in which the signal goes low for 8/1200 sec. If
the data bit is equal 0, the signal goes high for 1/1200 sec, and
if it is 1, the signal goes high for 4/1200 sec. In Fig. 8 is
presented an example of a specific IR command: “Wake Up”:
0xB1.
Empty
b) Left elbow movement from the inside to outside and vice-versa
Fig. 6. Example of digital signals of single movements.
The analysis of the combined actions signals required the
connection of wires to the original microcontroller ports to
measure the combined movement’s digital signals with a logic
analyzer. The acquisition of the graphical digital signals from
the microcontroller motor ports was done for all the combined
functions defined in the remote control. The graphical
functions were only obtained for one side (left one) of the
robot movements since other side (right one) does the same
movements but the motors operate in opposite direction. In
Fig. 7 is presented an example of the output port signals
acquisition of a combined movement: “Oops”. In this
function, signal “M1+” (Left Elbow Out) is “high”, for 531
msec and the rest of the time (2125 msec) is “low” and signal
“M3+” (Right Elbow Out) presents the same signal, since both
elbows execute the movement at the same time.
Preamble
1
0
1
1
0
0
0
1
Empty
0b10110001=0xB1=Wakeup command
Fig. 8. Example of a IR command: Function: “Wake Up”: 0xB1.
During this period, other working group was collecting all
the information obtained to draw in detail the electrical
schematics and simultaneously evaluating of the most
appropriate microprocessor of the MSP430 family to complete
replicate the original ASIC. They were involved in the
analysis of the schematics of the initial robot and development
of the new ones based in TI control/microprocessor devices.
Was chosen the microcontroller MSP430F149 making use of
the following on-chip resources to control the RS: ports
(output) P6.0 – P6.7 and P2.0 – P2.5 for the motors; ports
(output) P4.0 – P4.7 for the leds; port (input) 1.1 for the IR
signal and ports (input) P1.2 and P1.3 for the switches. In Fig.
9 is presented a schema of the new PCB board.
> REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
5
+3.3
R1
47K
P1
TDO/TDI
1
2
TDI
3
4
TMS
5
6
TCK
7
8
9 10
RST/NMI
11 12
13 14
+3.3
C15
+3.3
10nF
R2
330R
P5
4
3
2
1
DS1
LED3
P62
P61
P60
RST/NMI
TCK
TMS
TDI
TDO/TDI
XT2IN
XT2OUT
Header 7X2
P14
P13
P12
P11/IR
Switch
1
C2
+3.3
P2
AVcc
DVss
AVss
P6.2/A2
P6.1/A1
P6.0/A0
RST/NMI
TCK
TMS
TDI/TCLK
TDO/TDI
XT2IN
XT2OUT
P5.7
P5.6
P5.5
P5.4
P5.3
P5.2/SOMI1
P5.1/SIMO1
P5.0/STE1
P4.7/TB7
P4.6/TB6
P4.5/TB5
P4.4/TB4
P4.3/TB3
P4.2/TB2
P4.1/TB1
P4.0/TB0
P3.7
P3.6
P3.5
uP1
MSP430F149
8
7
6
5
4
3
2
1
P47
P46
P45
P44
P43
P42
P41
P40
C6
10uF
LED3
LED
P4
8
7
6
5
4
3
2
1
LED7
LED5
LED1
R3
P42
Q1
BC847
R5
Q3
BC847
P44
4K7
R7
LED8
LED7
LED6
LED5
LED4
LED3
LED2
LED1
P67
P66
P65
P64
P63
P62
P61
P60
Motores1
P3
P33
P32
P31
P30
C5
100n
P25
P24
P23
P22
P21
P20
2
1
P40
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
12pF
4
3
Y1
85SMX
DVcc1
P6.3/A3
P6.4/A4
P6.5/A5
P6.6/A6
P6.7/A7
VREF+
XIN
XOUT
VeREF+
VREF-/VeREFP1.0/TACLK
P1.1/TA0
P1.2/TA1
P1.3/TA2
P1.4/SMCLK
P1.5
P1.6
P1.7
P2.0/ACLK
P2.1/TAINCLK
P2.2/CAOUT/TA0
P2.3/CA0/TA1
P2.4/CA1/TA2
P2.5/Rosc
P2.6/ADC12CLK
P2.7/TA0
P3.0/STE0
P3.1/SIMO0
P3.2/SOMI0
P3.3
P3.4
1
2
3
4
5
6
7
8
9
10
11
12
P11/IR
13
P1214
P1315
P1416
P63
P64
P65
P66
P67
C1
12pF
2
C3
100n
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
P6
+3.3
C4
10uF
R9
P46
Q5
BC847
Q7
BC847
6
5
4
3
2
1
P25
P24
P23
P22
P21
P20
Motores 2
4K7
4K7
4K7
LED8
LED2
P41
R4
4K7
Q2
BC847
LED4
P43
R6
Q4
BC847
4K7
LED6
P45
R8
Q6
BC847
4K7
P47
R10
Q8
BC847
4K7
Fig. 9. Schema of the PCB board developed.
a) Connections to the original PCB board.
This task was concluded with the drawing of the new PCB
boards, fabrication and assembly of the components and
devices in this board. In Fig. 10 is exposed a detailed
photograph of the original PCB board without the ASIC. In
Fig. 11 is present the photographs of the new PCB boards and
the connections to the original one assembled in the RS.
b) New PCB board with the MSP430 microcontroller.
Fig. 11. New PCB board to include the MSP430 microcontroller.
substitute the original one. The C code was specified to
commit the robot dynamics.
a) Original PCB board without microcontroller.
b) Original ASIC.
Fig. 10. Detailed photograph of the original PCB board without the ASIC.
E. C code programming
The following task concerned the development of the C
programming code of the MSP430 microcontroller chosen to
The control system program consisted in redirect new labels
for the ports (P2 and P6) using the same ports addresses
(using C/C++ structures and unions). Then, was developed a
program routine for each movement function, with all time
values for every motor status. An interruption connected to the
countdown of the time values for each motor status
(BasicTimer Clock at 1msec). The algorithm details consisted
in the definition of (1) pointers to save the each time
movement for each motor on a free address of the
microcontroller memory, that allow access to time
movements; (2) new labels using C/C++ syntaxes union and
struct. The method was simple since it obtains the control of
microcontroller ports using the structures names. For each
motor was defined a variable with one bit for each port
P6OUT; (3) structures for the time movements, that kept the
time for each active/inactive condition of the motors. The
variables had 13 bits because some motor status times were
large (maximum time of 8192 msec), since the interval time
interrupt was 1 msec (BasicTimer Clock); and (4) movement
routines with arrays that contain the time values for every
change that motor ports should have. In Fig. 12 is presented
> REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
the operation principle of the software considering an
example: The physical motor M1 is represented by two logical
motors M1+ and M1- depending on the rotation direction
(Note: M1+ and M1- can’t possess the same high state
because it would provoke a short circuit). If M1 = state 0, then
M1+ = High and M1- = Low, consequently the physical
motor M1 runs counter clockwise.
6
BackGround Task Flow Chart
Start
Initialization
No
Any
Command?
Timers
[0]
M1+
Motor 1
[2]
[3]
[4]
[13]
[14]
[0] 2643
425
0
0
0
0
0
1
0
[1]
525
531
319
1693
0
0
0
1
1
[2]
0
0
0
0
0
0
0
0
0
[12]
0
0
0
0
0
0
0
0
0
[13]
0
0
0
0
0
0
0
0
0
M1-
Motors
Yes
[1]
Decode
Command
Load Command
Action
a) Block diagrams of the Background task.
Motor State
System Task Flow Chart
Motor Initial Value
Start
Motor
State
Movement
On ?
Motor (M1+)
Motor (...)
Motor
No (M7-)
4
Clockwise
1
M1
No
5
3
No
Stoped
0
Yes
Motor (n)
Enable
Motor (n)
Enable
Motor (n)
Yes Enable
Switch On?
Get next
Timer
(n)
Get next
TimerGet
(n)next
Yes
2
Decrement
Yes
Timer
(n)
Decrement
Timer
(n)
Decrease
Cclockwise
No
Timer (n) = 0?
Yes
Timer (n) = 0?
Yes
HI
Switch On?
No
Yes
Yes
Change Motor (n)
Yes
Value
Change Motor (n)
Value
Change Motor (n)
Value
M1 -
Yes
Timer (n) = 0?
Timer (n) = 0?
No
Debounce
Timer (n) = 0?
Timer (n) = 0?
No
Low
No
Yes
Timer (n)
Timer (n)
HI
M1 +
No
Desable
Motor
(n)Yes
Desable
Motor (n)
Desable
Motor (n)
Yes
Put STOP
Command
Low
END
525
531
319
Refresh all
Motors value
t [ms]
1693
425
2643
Put Next
Command
No
Movement
ON ?
Fig. 12. Operation principle of the software.
In Fig. 13 is presented a block diagram of the software
architecture. The C code was composed by several routines
each one devoted to several tasks. In Fig. 14 is presented the
block diagrams of the Background, System and IR tasks.
b) Block diagrams of the System task.
Command IR State Machine
Inicialization
Comunication OFF
HARWARE
IR
Remote Command
Motors
Driver
IR
Receptor
Timer B
ISR
1 ms
System
Task
Command
ISR
2
Leds
5
4
Validate
Preamble
Switch
Command Buffer
Timeout
1
1
Signal : High
2
Signal : High to Low
3
Preamble is valid
4
Timeout Condition
5
Preamble NOT valid
6
Valid Command
3
IR CMD State Data
Ring
Buffer
6
Actions Table
4
Communication On
WakeUp
Action Data
Sleep
SingleMov1
.....
BackGround
Task
.....
.....
Buldozer
Fig. 13. Block diagram of the software architecture.
c) Block diagrams of the IR task.
Fig. 14. Block diagrams of the Background, System and IR tasks.
F. Tests and development of new functionalities
The final task consisted in performing tests to evaluate the
robot movements and tuning slight discrepancies. During this
task, the students had to propose the development of new
functionalities.
> REPLACE THIS LINE WITH YOUR PAPER IDENTIFICATION NUMBER (DOUBLE-CLICK HERE TO EDIT) <
The tests proved that the RS moved like in early days. It
was concluded that the students successfully substituted the
RoboSapien control and regulation electronics by TI MSP430
microcontroller. It turn to be an excellent demo vehicle of
technology. Pedagogically, the combination of RoboSapien
and MSP430 microcontroller in laboratorial classes, allow
exemplifying robotics key concepts and embedded systems
capabilities. The substitution of the microcontroller by
MSP430, allow the RoboSapien to have an evolution
capability, since in the following academics years the projects
involve the development of new functionalities, as (1)
wireless communications, (2) expand computation capabilities
with a DSP to include voice commands, and (3) the
development of a user friendly PC high level application to
perform new actions/movements.
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
III. CONCLUSIONS
It was presented the teaching structure in the lectures that
use microprocessors at the undergraduate course of
Electromechanical Engineering at the University of Beira
Interior, Portugal. It was specifically focused the last year
lectures of Automation and Robotics, since it is devoted to
integrate several knowledge’s are acquired during the course.
The RoboSapien hacking has proven to be a valuable teaching
tool for this purpose, allowing the reinforcement of several
key concepts discussed in undergraduate lectures as
Automation and Robotics. It was pointed out that the practical
experience is a very important part of engineering education,
but it is resource intensive. This approach for the robotics
education proved to be very motivating and stimulating for the
students allowing the laboratory to control time and money in
projects proposed to the students. In last instance, reduce the
experiment cost per student, and makes available to students
the development of a large variety of upgrades to the RS
based in new technologies. With this pedagogical alternative,
the students gain much more experience then in traditional
laboratory experience. Additionally, one of the challenges
facing lecturers teaching advanced undergraduate courses in
robotics, integrating topics of kinematics, dynamics, control
systems, embedded systems, data acquisition and
microprocessors programming is the difficult in providing the
integration skills and transmit to the students how can them
relate the theory to the physical world. The use of RoboSapien
for this purpose was sufficiently complex to challenge the
students, but not overwhelming, and it was way to motivate
them to robotics topics.
ACKNOWLEDGMENT
The authors thank the support given by Texas Instruments;
and particularly the help provided by Christian Speck (TI
Europe Business Development) and Robert Owen (TI
University Programme Manager).
7
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
I. Horswill, “A laboratory course in behavior-based robotics,“ Intelligent
Systems and Their Applications, IEEE, vol. 15, issue 6, pp. 16 – 21,
Nov.-Dec. 2000.
M. Rosenblatt, and H. Choset, “Designing and implementing hands-on
robotics labs,” Intelligent Systems and Their Applications, IEEE, vol. 15,
issue 6, pp. 32 – 39, Nov.-Dec. 2000.
J. A. Piepmeier, B. E. Bishop, and K. A. Knowles, “Modern robotics
engineering instruction,” Robotics & Automation Magazine, IEEE, vol.
10, issue 2, pp. 33 – 37, June 2003.
B. A. Maxwell, and L. A. Meeden, “Integrating robotics research with
undergraduate education,” Intelligent Systems and Their Applications,
IEEE, vol. 15, issue 6, pp. 22 – 27, Nov.-Dec. 2000.
R. Kuc, E. W. Jackson, and A. Kuc, “Teaching introductory autonomous
robotics with JavaScript simulations and actual robots,“ IEEE Trans.
Education, vol. 47, issue 1, pp. 74 – 82, Feb. 2004.
L. Enrique Sucar, J. Noguez, and G. Huesca, “Project oriented learning
for basic robotics using virtual laboratories and intelligent tutors,”
Frontiers in Education, 2005. FIE '05. in Proc. 35th Annual Conference,
pp. S3H - 12-17, 19-22 Oct. 2005.
M. Krugman, “Teaching behavior based robotics through advanced
robocamps,” Frontiers in Education, 2004. FIE ‘04. in Proc. 34th
Annual Conference.
J. M. Conrad, “Stiquito for robotics and embedded systems education,”
Computer, vol. 38, issue 6, pp. 77 – 81, May 2005.
K. S. Rawat, and G. H. Massiha, “A hands-on laboratory based approach
to undergraduate robotics education,” Robotics and Automation, 2004. in
Proc. ICRA '04. 2004 IEEE International Conference, vol. 2, pp. 1370 1374, Apr 26-May 1, 2004.
D. J. Ahlgren, “Meeting educational objectives and outcomes through
robotics education,” World Automation Congress, 2002. in Proc. of the
5th Biannual, vol. 14, pp. 395 – 404, 9-13 June 2002.
K. Nagai, “Learning while doing: practical robotics education,” Robotics
& Automation Magazine, IEEE, vol 8, issue 2, pp. 39 – 43, June 2001.
Microbi’s
Robosapien
mods.
Available:
http://www.angelfire.com/droid/rsv2/.
Robosapien
RF
Sound
Mod.
Available:
http://home.comcast.net/~robosapien/rfmod.htm.
Robosapien
Camera
Mod.
Available:
http://home.comcast.net/~jsamans/robo/robocam.htm.
RoboSapienPets
RoboSapien
page.
Available:
http://www.aibohack.com/robosap/.
Mark
C’s
Robosapien
Hacking
Site.
Available:
http://homepages.strath.ac.uk/~lau01246/robot/myhackrs.shtml.
S. Behnke, J. Muller, and M. Schreiber, “Playing Soccer with
RoboSapien”, in Proc. of The 9th RoboCup International Symposium,
Osaka, Japan, paper #97, July 2005.