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