You are on page 1of 13

Summer Research Program

Biped Robot, development of


an autonomous walking robot
Mentor/Instructor: Prof. Ismail Lazoglu

Marcin Szarek
Mechanical Engineering and Robotics,
AGH University of Science and
Technology, POLAND
mszarek@agh.edu.pl

Gzde zcan
Electrical and Electronics Engineering,
Bilkent University, TURKEY
gozde_o@ug.bilkent.edu.tr



Abstract In this project, the robot uses motors to make its walking motion. The project control aspect is done by microcontroller
controller type. Aided engineering tools was used for complex calculations. Test of dynamic gait, as motion of robot, is taken under
research. The calculations and the experimental data is visualized.

Content
I. Introduction .....................................................................................................................................................................1
II. Main Body ..................................................................................................................................................................1
A. CAD model .............................................................................................................................................................1
B. SIMULINK model ...................................................................................................................................................1
C. Servomotor ..............................................................................................................................................................2
III. Software Solution ........................................................................................................................................................4
D. Arduino simulation board ........................................................................................................................................4
E. PWM generation system ..........................................................................................................................................5
F. Gait pattern ..................................................................................................................................................................6
G. Velocity servo control ..............................................................................................................................................8
H. Virtual Reality Toolbox model ............................................................................................................................... 10
IV. Conclusions ............................................................................................................................................................... 11
V. References ................................................................................................................................................................. 11
I. Webinars ................................................................................................................................................................... 11
J. Programs ................................................................................................................................................................... 11
VI. Photos at MARC........................................................................................................................................................ 12


I. INTRODUCTION
Bipedalism is a form of terrestrial locomotion where an organism moves by means of its two rear limbs. An animal or
machine that usually moves in a bipedal manner is known as a biped meaning "two feet" (Latin: bi = two + ped = foot). Types
of bipedal movement include walking, running, or hopping, on two appendages (typically legs).
The project is about construction of bipedal walking robot which consists of two parts; electrical and mechanical. In
electrical part, 8 RC servo motors located hip, knee and ankle of robot are controlled with a PC and Proteus. In addition,
MATLAB controlled user interface is prepared for this purpose. In mechanical part, simulation of robot structure are modeled
3D in SolidWorks and motion of bipedal walking are analyzed by modeling RC servo motor in Matlab SIMULINK. This report
will explain what electrical, mechanical aspects and software solution of this project.

II. MAIN BODY
A. CAD model
Every model of legs is comprised of fives parts (Fig.1.), PELVIC is connection between its. An eight RC servomotors are
used in a project. Each leg contains four of them. First motor is located on THINGH, second one is intended for motion of
KNEE, third & fourth ones are used for given ANKLE/FOOT mobility. Model basically is rest upon humanoid construction of
leg, but with many simplifications, like a reduce DOM. All parts is designed, and its CAD files is enclose to report.



Fig.1. Model of Biped. Location
of servomotors: hip, knee and
ankle (2 DOM) of each robot leg

B. SIMULINK model
Conversion from SolidWorks assembly CAD model into a SimMechanics model is done. Unity coordinate system, body
sensor block is already added, it is shown in Fig.2. Through trial and error method there steps was taken to find appropriate
constrain for issue of wall-grounding construction for simulate constantly motion of walking. Unfortunately it is failure - have
not found a proper one. The idea of research was to put floor below a robot, and located biped into it.

Fig.2. SIM-model of BODY with left foot grounded.
After model initialization - to do it run initialize.m - machine for model (Fig.3) is going to reach standing position, every
each of motor is working in design point, it means 90 degree angle (Fig.4).

Fig.3. SIMULINK model of Biped, gravity forces on





Fig.4. Servos on design point, respond
Used solution is left leg grounded, so we are able to do one
full step by opposite leg.
Feedback from sensors in model is absolute value, and it is
displayed in Fig.4.

C. Servomotor
HS5645 High Torque servomotors are chosen to be located in hip, knee and ankle of each robot leg as it is shown in Fig.5a.
The HS-5645MG is servomotor, featuring a programmable digital circuit with custom metal gear train technology. The servo
delivers high resolution and torque. Specification is shown below, in Fig.5b.


Fig.5a. Digital sport servomotor: HS-5645MG High Torque Fig.5b. HS-5645MG specification. Manufacture by
Hitec RCD, USA, Inc.
In Fig.6 we can see issue of servo working pattern, and idea is present. Electrical model of servo is created in SIMULINK.
Model, shown in Fig.7, include most aspects of real servo-model, like a DC motor delay. Fidelity of model is acceptable.
Input of model is PWM control signal, output is stabile torque.


Fig.6. Schematic model of servomotor
0 500 1000 1500
0
20
40
60
80
100
120
140
160
180
time [ms]
d
e
g
r
e
e

[
o
]


desired angle
R thigh
R knee
R ankle
R foot
L thigh
L knee
L ankle
L foot (grounded)

Fig.7. Electrical SIMULINK model of servo
The servo expect a pulse every 20 milliseconds (50 Hz). The length of the pulse will determine how far the motor turns.
Operating angle is 45 degrees per one side pulse travelling 400 sec. A 1.5 millisecond pulse, will turn the motor to the
90 degree angle, to neutral position.


III. SOFTWARE SOLUTION
D. Arduino simulation board
Arduino is open source microcontroller, board photograph is shown in Fig.8. It is used in project for controlling each of eight
RC servomotor.

Fig.8. Arduino Duemilanove board


Fig.9. Arduino Integrated Development Environment
The code for loading input/output board is written in C programming language by using Arduino Integrated Development
Environment (Fig.9). RC servomotors are controlled via serial communication between PC and Arduino. Atmega 328 AVR is
used and eight servomotors connections are made at a simulation. The Arduino Duemilanove board is simulated in ISIS
Proteus 7.6 (Fig.10). In order to make serial communication in Proteus; Virtual Serial Port Driver is used for creating virtual
serial ports between PC (Tera term 3.1.3) and Proteus serial ports, for example: COM3 and COM2 connection.

Fig.10. Arduino Duemilanove with Atmega 328 AVR Simulation in Proteus 7.6
E. PWM generation system
After connecting serial ports and opening Tera Term which is terminal emulator program, the user first enters which motor
will turn, and then direction, degree data are declared. The degree data is indicated within quotation marks
(example: 2L453R30) as is shown in Fig.11. Each motor current position is kept stabile - with tolerance +/-0.5 - while
moves. When user enters another degree in the program, motors current position is being updated according to coming degree
data. An main idea is generate proper PWM control signal according to command definition.

Fig.11. Eight RC Servo motor control by serial communication from Hyper Terminal in Proteus 7.6 Arduino Board Simulation.
In Tera Term window (terminal) we can see line of commands, its results we can observe in the background (ISIS program)
The user interface (Fig.12) is made by using Matlab GUI Toolbox. This program lets the user open/close serial port of
Arduino by press lefts side buttons. It also provides the user selects each motor with desired turning degree, remember that its
design position is 90 degree angle. The user can use the edit box to enter degree number or use slider for degree within border
of 0 to 180. After pressing send button, this data is transmitted from PC to Arduino via serial communication.

Fig.12. GUI (user interface) designed in Matlab for control eight of RC servomotors
by serial communication between PC and Arduino Duemilanove
There is an idea for further development to connect GUI and rearranged SEND button as automatic sender option with
constant frequency to transfer commands for Arduino.
F. Gait pattern
In the Fig.13a main SIMULINK system/file is presented. Model is comprised of electrical (Fig.7) and mechanical (Fig.2)
Sim-model files (subsystems). Every motor receive each control signal, then generated Torque_Output, like a input for
mechanical part, set proper join into rotation motion, what is display as a animation in Virtual World. So movements of model
are simulated in real time control.


How to do a step

Fig.13b. Gait signal
For moving legs, of robot from back to
forward location you have to use switchers
To perform step of biped you have to
switch both switchers in Gait signal
subsystem.

Fig.13a. Main SIMULINK file, legs control system


Gait pattern has been trialing to develop.
In Fig.14 prototype range of degrees angle are
shown. The main point, to perform motion of
Biped correctly, is develop a control system of
servos velocity.
As we can notice in Fig.14. only foot join has
to follow nonlinear path of degrees angle
changing range, rest of joints has linear course
of graph.


Fig. 14. prototype range of degrees angle of step (+ 90 )
step back
step front
In a present simulation left leg is grounded and a step by right legs is being performed. In Fig.15 we can see step back, and
step forward in Fig.16 is shown. Results of joint localization are displayed in Fig.17.

Fig.15. Right leg, step back Fig.16. Right leg, step forward

Fig.17. Location of joints of model during step performance (tree times)

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000
0
20
40
60
80
100
120
140
160
180
time [ms]
d
e
g
r
e
e

[
o
]


desired angle
R thigh
R knee
R ankle
R foot
L thigh
L knee
L ankle
L foot (grounded)
G. Velocity servo control
To performance step correctly we have to find out how to control a speed of servomotor. This issue is quite easy with
hardware solution, if you want use specialist board for it. Here we have put effort to implement a software solution. Control
system velocity of servo was developing on DC motor model (Fig.20). Main system (Fig.18) lets us to doing research of find
out solution for velocity control system.

Fig.18. System of servo velocity developing


Fig.19. PWM subsystem Fig.20. DC motor subsystem
In this subsystem comparison of sawtooths and
sinusoide signals is being done.
Model of DC motor is presented in Fig.20 which is let us find out
clue of reseach of servomotors velocity Constant of DC motor, and
simulation:
R = 1.5 Ohm
L = 2.16 mH
J = 0.000035 kg
step time = 1 kHz
Max power Amplifier = 5V


Fig. 21. PWM, Delta-sigma solution
Principle of the delta PWM (Fig.21). The output signal (blue) is compared with the limits (green). These limits correspond to
the reference signal (red), offset by a given value. Every time the output signal reaches one of the limits, the PWM signal
changes state.
V
e
l
o
c
i
t
y

[
d
e
g
/
s
e
c
]


T
r
a
j
e
c
t
o
r
i
e
s

[
d
e
g
r

T
r
a
j
e
c
t
o
r
y

e
r
r
o
r

Time [s]
Fig.22. Servo speed control graphs
As is shown in first graph in Fig.22 velocity has stabile with fluctuant trend. The next step of research is compile that result
with a gait pattern system.

H. Virtual Reality Toolbox model
There is another solution to create settings of simulation, where an Virtual Reality Toolbox is used. In that model PELVIC is
grounded, so robots legs has no extra-loads.
SIMULINK model was exported like a XML file from SolidWorks program, after that has been updating - last version is
shown in Fig.25. VR subsystem include feedback from block sensor; rotation matrixes was convert to degree angle.
This implementation we can see in Fig.24. There is a VR Sink block, where Virtual World is connected. Virtual World was
created in V-Realm Builder; Virtual Scene has been prepared, transform nodes are created. In spite of well done transform
nodes, problems with connection beetwen join appears. It is easy to find that problems are connected with constrains of joints.
Model include gravity forces, there is no control signal implemented into it.


Fig.23. Biped model into VRML (Virtual Reality) world


Fig.24. VR subsystem


Fig.25. Virtual World implementation prototype
IV. CONCLUSIONS
Table, which we can see below, show us summary of work done of this project.

R
E
A
L

M
O
D
E
L

S
O
L
U
T
I
O
N




D
E
S
T
I
N
A
T
I
O
N

Gait research,
Control panel
PWM generator SIMULINK Model Visualization
S
O
F
T
W
A
R
E

F
O
R

S
I
M
U
L
A
T
I
O
N

R
E
A
L

M
O
D
E
L

(
e
q
u
i
v
a
l
e
n
t
s
)





N
A
M
E

O
F

P
R
O
G
R
A
M
S

Matlab,
GUI Toolbox
Arduino,
Proteus, ISIS,
Tera Term,
Virtual Serial Port Driver
Matlab,
SIMULINK,
SimElectronics Toolbox,
SimMechanics Toolbox,
SolidWorks
SolidWorks,
V-Realm Builder

V. REFERENCES
I. Webinars
[1] From SolidWorks Assemblies to SimMechanics Models and Animations from Simulink 3D Animation
[2] Introduction to Electromechanical Modeling in Simulink
[3] Building Virtual Worlds for use with Simulink 3D Animation
[4] Advanced Modeling Techniques with SimEvents
[5] Introduction to Electromechanical Modeling in Simulink
[6] Introduction to Simulink 3D Animation
[7] Learning Basic Mechatronics Concepts Using the Arduino Board and MATLAB
[8] Optimizing Mechatronic Systems Using Simulation
J. Programs
[1] Matbal 2009b
[2] V-Realm Builder Version 2.0 (in Virtual Reality Toolbox included)
[3] SolidWorks 2009
[4] Arduino alpha, version 0017
[5] Proteus 7.6 SP0, build 8304 with Advanced Simulation (ISIS Professional)
[6] Tera Term Web Pro, version 3.1.3
[7] Virtual Serial Port Driver, version 7.0, build 7.0.1.263
VI. PHOTOS AT MARC
(Manufacturing& Automation Research Center)


Photo no.1. Gzde zcan (team member), Professor smail Lazolu and
Marcin Szarek (team member)

Photo no.3. Marcin Szarek and Gzde zcan (team members)

Photo no.2. MARC Mechanical Technician Muzaffer Btn, Gzde zcan
and Marcin Szarek(team members)

Photo no.4. Gzde zcan and Marcin Szarek (team members)

You might also like