COMPLEX Concept robotThe hardware of the 1st prototype was simple but proved to be reliable (more reliable than the later version). It features a 433MHz receiver, a microcontroller to decode the serial data and generate 8 PWM signals and 4 full H-bridges.
One of the things that made this system reliable was its simple but reliable protocol. Corrupted packets were just ignored. If no correct packages were received for a certain time, the robot slowly stopped until it would receive a correct packet again. Another thing that made the protocol reliable was that state data was sent, not commands. This makes that when a packet is lost, it does not matter because a new packet with updated data will arrive anyway.
The communication is one-way and the same channel is used for all robots. The microcontroller of each cart responds only to certain packages. The data is generated by a PC. There the seperate data streams of all the controls (joysticks) for each robot was combined into a single stream. If no updates were made, old packets were repeated.
The core is composed of the (now obsolete) AT90S1200 which is a very simple Flash programmable 8-bit RISC microcontroller manufactured by Atmel. It has no RAM. Only 32 general purpose registers. It decodes the serial data coming from the 433 Mhz ASK receiver, checks if the received packet is for our address (this could be set with a few jumpers) and generates up to 8 independant PWM signals. Since the microcontroller also doesn't have a hardware UART, a UART was implemented fully in software.
As output drivers, 2 L293D chips were used. Each chip features 2 full H-bridges and all the needed free-run diodes.
The supply is very simple and build around a 7805.