joão rodrigues, sérgio brandão, rui rocha, jorge lobo, jorge dias {joaor,...

1
João Rodrigues, Sérgio Brandão, Rui Rocha, Jorge Lobo, Jorge Dias {joaor, brandao}@alumni.deec.uc.pt, {jlobo, rprocha, jorge}@isr.uc.pt Introduction The main goals of the RAC team (Robótica Académica de Coimbra) are to have a competitive RoboCup soccer team, interest students in robotics research, and build a team of high performance robots suitable for educational and research applications beyond the Robocup competition. In order to achieve these objectives, several tasks were assigned to final project students. RACmotion was focused on robot assembly and motion control. Motion Simulator Given the inverse kinematics equations, we simulated the nonlinear system using SIMULINK ® . Simulation is divided in two parts: the motion controller and the motion simulator. Robot Construction and Assembly The Robot’s construction went trough several stages. First, it was built a prototype to test the hardware and to develop control software. More four robots were constructed based on prototype design. RACmotion Objectives • Omnidirectional drive control design and modeling; • Project and implementation of a robot motion simulator using MATLAB ® and SIMULINK ® ; • Development of a calibration procedure; • Prototype development and assembly; • Deployment and configuration of a robot’s embedded Linux™ operating system; • Development of a communication system and communication protocol; • Development of sensor and motor control software; • Test and optimization of prototype mechanics and software in real world conditions. Robot Hardware Main Features • Omnidirectional drive and kicker; • NiMH batteries and PC104 power supply; • DC motors and encoders; • FPGA control card and motor driver daughter board; • PC104 embedded computer; • IEEE 802.11b wireless USB dongle; Conclusions We presented the modelling, control and simulation of the omnidirectional drive, and a calibration procedure. We presented the kinematics equations, plus preliminary control simulation results using a simple open loop controller. We also presented a calibration method to estimate the wheel skew angles. These robots will enable the setup of a competitive RoboCup team. The aim of the design options taken during this project was to provide a set of high performance robots suitable for educational and research applications beyond the RoboCup game. Fig.2 – Hardware components and preassembled robots. Dep. of Electrical and Computer Engineering, Faculty of Science and Technology, University of Coimbra Wireless 802.11b link High performance Linux PC Bumpers FPGA Board Battery pack + SuperCap + DC/DC 4X Motor power drive OmniDrive 3 DC motors etc Dribbler DC motor Kicker Solenoid with SuperCap Fig.1 – Hardware architecture for RAC SSL robot. Omnidirectional Robot Model The first step to develop a robot controller was to derive the inverse kinematics equations. In our model we consider several parameters, including skew wheel angles. This parameter was introduced to account for construction limitations that introduce miss-alignments of wheels and influence the real robot trajectory. y x v v M r w w w v v v r w w w 1 1 3 2 1 3 2 1 3 2 1 R R R M ) cos( ) 3 sin( ) 3 cos( ) cos( ) 3 sin( ) 3 cos( ) cos( ) sin( ) cos( 3 3 3 3 2 2 1 1 1 Control Software Development Robot application software was developed for the Linux™ embedded operating system. The robot controller program has two major tasks: communications handling and motion control. Fig.8- Several stages of robot construction and assembly. Fig.4 – Simulator block diagram. Fig.5 – Robot trajectories can be visualized and the influence of motion parameters can be studied. Fig.6 – Robot's animation and motor's velocities during trajectory following. Access Point BSS = “RAC” R AC bot1 R AC bot3 R A C bot2 R A C bot4 R A C bot5 C ontroller(server) W ired local netw ork Vision Internet Cam era R obotO perating System C lientApplication Server Centralized C ontroller SocketTC P/IP Select (Blocking) Stream Pipe Com munication M anagem ent M essage Coding/Decoding Select (25m s) M ovem ent C ontrol Kicker C ontrol Sensors Process 1 Process 2 Tests and Results The robot's hardware and software were tested in the playing field. These tests helped us drawing conclusions about the design options taken. Further tests will allow adjustments and upgrades to the system. Fig.10 – Motion control tests in the playing field. Fig.3 – Inverse kinematics equations. Calibration A calibration procedure was devised to estimate unknown wheel skew angles. Given the non linearity of inverse kinematics equations, we can't obtain a direct expression for α 1 , α 2 , and α 3 (skew wheels angles). We developed an iterative calibration method. When the robot movement is parallel to a wheel axis, i.e. the wheel is not under traction, we assume that its effect on the trajectory is minimal and can be neglected. Under this assumption, we can decouple the behavior of two wheels from the third one. Fig.7 – Skew wheels angles and their effect in robot trajectory. Fig.9 - Robot controller diagram

Upload: jamal-smithey

Post on 14-Dec-2015

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: João Rodrigues, Sérgio Brandão, Rui Rocha, Jorge Lobo, Jorge Dias {joaor, brandao}@alumni.deec.uc.pt, {jlobo, rprocha, jorge}@isr.uc.pt Introduction The

João Rodrigues, Sérgio Brandão, Rui Rocha, Jorge Lobo, Jorge Dias

{joaor, brandao}@alumni.deec.uc.pt,{jlobo, rprocha, jorge}@isr.uc.pt

IntroductionThe main goals of the RAC team (Robótica Académica de Coimbra) are to have a competitive RoboCup soccer team, interest students in robotics research, and build a team of high performance robots suitable for educational and research applications beyond the Robocup competition.

In order to achieve these objectives, several tasks were assigned to final project students. RACmotion was focused on robot assembly and motion control.

Motion SimulatorGiven the inverse kinematics equations, we simulated the nonlinear system using SIMULINK®. Simulation is divided in two parts: the motion controller and the motion simulator.

Robot Construction and AssemblyThe Robot’s construction went trough several stages. First, it was built a prototype to test the hardware and to develop control software. More four robots were constructed based on prototype design.

RACmotion Objectives• Omnidirectional drive control design and modeling;

• Project and implementation of a robot motion simulator using MATLAB® and SIMULINK®;

• Development of a calibration procedure;

• Prototype development and assembly;

• Deployment and configuration of a robot’s embedded Linux™ operating system;

• Development of a communication system and communication protocol;

• Development of sensor and motor control software;

• Test and optimization of prototype mechanics and software in real world conditions.

Robot Hardware Main Features• Omnidirectional drive and kicker;

• NiMH batteries and PC104 power supply;

• DC motors and encoders;

• FPGA control card and motor driver daughter board;

• PC104 embedded computer;

• IEEE 802.11b wireless USB dongle;

ConclusionsWe presented the modelling, control and simulation of the omnidirectional drive, and a calibration procedure. We presented the kinematics equations, plus preliminary control simulation results using a simple open loop controller. We also presented a calibration method to estimate the wheel skew angles. These robots will enable the setup of a competitive RoboCup team. The aim of the design options taken during this project was to provide a set of high performance robots suitable for educational and research applications beyond the RoboCup game.Fig.2 – Hardware components and preassembled robots.

Dep. of Electrical and Computer Engineering,Faculty of Science and Technology, University of

Coimbra

Wireless 802.11b link

High performance Linux PC

Bumpers

FPGA Board

Bat

tery

pac

k +

Su

pe

rCap

+ D

C/D

C

4X Motor power drive

OmniDrive3 DC motors

etc

DribblerDC motor

KickerSolenoid with

SuperCap

Fig.1 – Hardware architecture for RAC SSL robot.

Omnidirectional Robot ModelThe first step to develop a robot controller was to derive the inverse kinematics equations. In our model we consider several parameters, including skew wheel angles. This parameter was introduced to account for construction limitations that introduce miss-alignments of wheels and influence the real robot trajectory.

y

x

v

v

Mr

w

w

w

v

v

v

rw

w

w1

1

3

2

1

3

2

1

3

2

1

R

R

R

M

)cos()3

sin()3

cos(

)cos()3

sin()3

cos(

)cos()sin()cos(

333

322

111

Control Software DevelopmentRobot application software was developed for the Linux™ embedded operating system. The robot controller program has two major tasks: communications handling and motion control.

Fig.8- Several stages of robot construction and assembly.

Fig.4 – Simulator block diagram.

Fig.5 – Robot trajectories can be visualized and the influence of motion parameters can be studied.

Fig.6 – Robot's animation and motor's velocities during trajectory following.

Access PointBSS = “RAC”

RACbot 1 RACbot 3

RACbot 2

RACbot 4RACbot 5

Controller (server)

Wired local network

Vision

Internet

Camera

Robot Operating System

Client Application

Server

Centralized Controller

Socket TCP/IP

Select(Blocking)

Stream Pipe

Communication Management

MessageCoding/Decoding

Select(25ms)

MovementControl

KickerControl

Sensors

Process 1 Process 2

Tests and ResultsThe robot's hardware and software were tested in the playing field. These tests helped us drawing conclusions about the design options taken. Further tests will allow adjustments and upgrades to the system.

Fig.10 – Motion control tests in the playing field.

Fig.3 – Inverse kinematics equations.

CalibrationA calibration procedure was devised to estimate unknown wheel skew angles. Given the non linearity of inverse kinematics equations, we can't obtain a direct expression for α1, α2, and α3 (skew wheels angles). We developed an iterative calibration method. When the robot movement is parallel to a wheel axis, i.e. the wheel is not under traction, we assume that its effect on the trajectory is minimal and can be neglected. Under this assumption, we can decouple the behavior of two wheels from the third one.

Fig.7 – Skew wheels angles and their effect in robot trajectory.

Fig.9 - Robot controller diagram