Tux Droid... How does it work?
Tux Droid explained.
This tutorial will demonstrate in an entertaining way how to start programming. The tutorial shows how to program Tux Droid with a simple but powerful language: Python.
Page
1
of
6.
Introduction
Tux Droid is a new intelligent computer gadget. It's your new clever buddy specially developed for Linux and the Open Source community. In short, Tux Droid is a wireless robot connected to your PC. Equipped with sensors, motors, a microphone and speaker he can easily interact with his environment. With Tux Droid you will be able to quickly program some funny stuff, even if you are just now getting into programming.Tux Droid, the robot
Depending on your interests or background, Tux Droid can be considered as a robot. He has three motors for actuating the eyes, beak and flippers, and to make him rotate. Furthermore he has two blue LED's in the eyes which can be controlled individually. Tux Droid also comes with a remote control to operate him from a distance. With the available source codes you can develop new programs and at at same time gain knowledge about robotics. But it would be wrong to simply view Tux Droid as a robot. The available software turns Tux Droid in a clever computer agent and is pretty straightforward to program.
The following table shows the main functions of Tux Droid:
|
Motors/output |
Sensors |
Audio |
Communication |
|
Shared motor for eyes and beak |
Light sensors |
Microphone |
Dongle USB |
|
Flipper motor |
Right flipper switch |
Speaker |
RF 2.4 Ghz link with Tux Droid |
|
Rotation motor |
Left flipper switch |
Flash audio memory |
I2C for the CPU's |
|
2 blue LED's |
Head button |
|
I2C for external sensors |
|
Infrared emitter |
Infrared receiver |
|
|
Tux Droid, your computer buddy
The graphic below explains the main components powering the Tux Droid software:
Don't panic! Knowing the software architecture in detail is not required to program Tux Droid. But it is useful to know that one daemon is responsible for the behavior of the robot (Tux Droid daemon) and another one for the voice synthesis (TTS resource daemon). Both daemons are accessible via TCP/IP sockets in server mode (S). The applications connect with these sockets to send and receive requests.
An interface, or what we normally call an API, is made available to aid you for programming Tux Droid. This API is written in Python, an object-oriented language known for its power and many libraries. But Python is by many probably most appreciated for its simplicity.