Transcript Document
AS-84.3149 Bionics
Project work spring
2008
Project work 2008
Implement a ’Blind guide robot’
Analyze data from whisker sensors
attached to the J2B2 robot and control
robot so that it follows a marked
Try to follow a path on the floor as
accurately and quickly as possible
Get to know how to combine different
tools for robot control (Simulink -> C)
A final competition for different groups
Whisker sensors
Whisker sensors are build
by attaching a ’whisker’ on a
capacitive microphone
This way whisker movement
is sensed as change in
voltage
Whisker oscillation and
movement can then be
analyzed in time or
frequency domain
Due to non-industrial
’production’ of whiskers,
they are not exactly similar
Data translation system
The voltage from microphone is amplified and lowpass filtered using a analog filter-amplifier board
Amplified signal is A/D converted using a DSP
prosessor board. The DSP does further low-pass
filtering and sends the results trough RS-232 port as
data packages at 250Hz frequency
analog
voltage
amplified
analog
voltage
RS-232
DSP
Data translation system
One data package contains a starting byte (0x44), 8
data bytes and a end byte, which is contains package
index (0-255)
Each data byte corresponds to voltage output from 0
to 255, nominal (no movement) is 127
The whiskers used for project are 1, 2, 3 and 5.
0x44
8 data bytes
index byte
Controlling the robot
The robot is controlled using an interface
made in C++
Project work however is done in matlab /
simulink and the code is compiled to C-code
using real-time workshop c-compiler
compile with
robot
interface
C-compiler
Simulink
C-code
Executable
Simulink
Data is read to matlab
and analyzed
Then a simulink model is
used to develop a control
for the robot
For testing:
Test_Environment, for
controlling
Driving_environment
Compiling
Compilation to c-code is compiled easily with
simulink, be sure to follow project work
instructions carefully!
Compiling with interface is done with
Devcpp-programming environment, you don’t
have to make many changes, compilation
should be easy
Connecting to robot
When running the code, the laptop must be
connected to robot with ethernet cable with
following connection settings:
–
IP: 192.168.10.2, Gateway: 192.168.10.1
If you want to use internet change the
settings to:
–
IP: 130.233.120.81, Gateway: 130.233.120.254
Testing with robot
There is a simple ready-made user interface
for robot control:
–
–
–
Drive robot with ’a,w,s and d’
Terminate control thread for whiskers ’t’
Exit application ESC
Read the code in main.cpp for more accurate
instructions
General stuff
ALWAYS leave the robot power chord on
when not working (and maybe also when
working)
Read instructions for robot use from:
http://automation.tkk.fi/AS-84-3145ProjectWork/Important
Reserve the robot beforehand using
reservation book at robot room (2551)
Outline of project work
Analyze data from whiskers using matlab
Create a control to follow, using whiskers
and robot bumpers and test it
Write a report of the data-analysis and
algorithm implementation
A final competition between groups