| Teleoperation |
Last Modified: 2006-07-24
The Rover with a wireless camera and an iPaq acting as the BrainStemâ¢ TCP/IP relay.
Building an RC robot is popular but severely limited in terms of what the robot can do and how the person controlling the robot can interact with it. By using common consumer TCP/IP hardware and the BrainStemâ¢ GP 1.0 module, you can build a very sophisticated control structure for next-generation teleoperated robotics. Using this system, you can control the robot with nearly unlimited numbers of "channels". You can also run, load, and debug programs on the robot while it is in operation. Another exciting new possibility with this system is the ability to get feedback from the robot. This can be manifest in user interface indicators or even force feedback to the controls. Additionally, you can add sophisticate subroutines that act as primitives to be initiated by your control on the robot. Best of all, this can be less expensive and far more capable than the high-end RC transmitter/receiver combinations typically being used in RC robots.
The robot is basically controlled by the input from the joystick through a TCP/IP relay. This relay takes advantage of a wireless access point (WAP) to send the relayed information to the iPAQ where the information is passed along to the BrainStemâ¢ network. Since the iPAQ is multi-threaded it can run more than one program at a time and therefore it can perform additional processing if needed.
Block diagram showing how information travels from the joystick to the robot and back.
Since the BrainStemâ¢ architecture has a robust packet protocol for both receiving commands and sending data, the input from the IR Rangers can be sent back to the program on the host computer where it can be used to create force feedback inputs to the joystick.
The relay software running on the iPAQ is the key to the teleoperation. BrainStemâ¢ packets are sent from the software controlling the joystick using the aStem Library are sent to the relay via TCP/IP which then transfers them to the serial port on the iPAQ which is connected to the BrainStem through an interface cable to the BrainStem controller network.
The TCP/IP communication is handled in this case using a wireless LAN card in the iPAQ and a WAP (wireless access point). The advantage of this approach is 11 MBit throughput for almost no perceptible latency and there is great range. In addition, you can run virtually limitless numbers of robots, joysticks, controllers, or any combination using this approach!
Photo of the basic pieces that make up the TCP/IP relay.
The relay software is built into the Console program for the BrainStemâ¢ To activate the relay the relay command is used. This command basically tells the console to act as a TCP/IP socket server on a given IP address and port. The software on the host computer then sets the link type to TCP/IP instead of the typical serial connection when setting up the link in the aStem Library. This is automatically handled in all BrainStemâ¢ programs such as the Console and GP 1.0 programs using a configuration file.
When the host program starts, it acts as a TCP/IP client to the relay and connects to the address and port the relay is serving. The relay then passes packets back and forth from the serial line to the TCP/IP port. The TCP/IP settings used in the lowest I/O layer for the aStem Library optimizes the TCP/IP settings for fast and efficient TCP/IP packet transfer. This is implemented in the aIO Library as a stream.
There are several benefits to this approach. One major benefit is that the relay doesn't care what operating system or even programming environment is connecting to it. This means that a web page, Java program, or strange operating system can easily connect to and control the BrainStemâ¢ from anywhere on the internet (provided the networks are set up properly).
Another benefit is that programs, individual commands, and even debugging can take place remotely, potentially while your robot is moving about.
| voice: 720-564-0373, email: email@example.com, address: 4822 Sterling Dr., Boulder CO, 80301-2350, privacy |
© Copyright 1994-2012 Acroname, Inc., Boulder, Colorado. All rights reserved.