6
How to program robot hardware Sascha Lange [email protected] Why care about?

How to program robot hardware

  • Upload
    lecea

  • View
    31

  • Download
    0

Embed Size (px)

DESCRIPTION

How to program robot hardware. Why care about?. Sascha Lange [email protected]. Different µ Controllers 8/16/12 bit architectures Address space Command sets Firmware / bootstrap-loaders Operating systems Proprietary programming languages Logo, c-control basic, … - PowerPoint PPT Presentation

Citation preview

Page 1: How to program robot hardware

How to program robot hardware

Sascha Lange

[email protected]

Why care about?

Page 2: How to program robot hardware

Common Problems one has to cope with Different µControllers

8/16/12 bit architectures Address space Command sets Firmware / bootstrap-

loaders Operating systems Proprietary

programming languages• Logo, c-control basic,

… Standardized

programming languages • Reduced/modified

command sets • Java, nqc

Communication Programming

serial/parallel ports, (Radio) LAN

Protocols• Packet layout• Data encoding• Checksums• Collision detection

Peer2Peer / Client-Server

Interfacing Input / Output AD, DA, analog, digital,

integrating, differentiating, IO-bus

Page 3: How to program robot hardware

How to handle the “hardware problem”

Use standard techniques of abstraction

Don’t forget everything you’ve learned about good software design:Modules / Layers / CommunicationDefining and implementing interfaces

Use operating system independent techniques

Page 4: How to program robot hardware

Client - Server Architecture

Brain is in the client (Russell and Norvig like agent) Client depends only on language of server

Independent of hardware Independent of used operating system / software Independent of communication channel

Free choice of the programming language

Server Client

Receives: s(i)Sends: action a

Receives: sensor inputSends: motor control

Client has only to know about a small part of theserver:- Used protocol- Language

Page 5: How to program robot hardware

Server changes with hardware

Transmission layer:• Control / initialisation of a port• Line control (RX, TX, Select etc.)• Bi- / unidirectional

Communication Control Layer

Translation Layer

Data Coding Layer Transportation Layer

Protocol LayerProtocol Layer

Transmission Layer Transmission Layer

Robot Side Client Side

UDP SocketImplementation

Client

Serial Line: RxD, TxD: - TTL Pegel (0/5V) - convert for RS232 - radio transmit via BIM2Use KEPHERA’s Mode 5 or 1

Communication via infrared light: - same protocol as REDRUM - send bytecodes directly - use SPIRIT OCX, - networking for LegOS under ongoing development

Page 6: How to program robot hardware

Transparency

Client

Sensory Server

Action Server

Simulation Server

Monolithic RF Server