Droid trooper is a robot based on Kib robot chasis as showed in building section.
Now, before starting in details, let me show you some features of the robot:
This video is a small preview of the behaivior and "temperament" of Droid Trooper
In this video we can see how the robot tracks autonomously an object
This is how the robot "see" an object
Now, the interesting part:
Originally, Kib robot is based on ARM cortex 0 and uses some wireless chip in 2.4 Ghz to use it by remote control. But the balancing control really sucks, it's worst than Mip balancing robot...
I wanted to control the robot in 3 ways:
1.- The robot must be autonomous and have it's own decitions for: Navigation, behaivior and seek objects
2.- The robot can be programed by blocky or anothe simple and graphical language
3.- The robot can remotely be controled using a FPV visor
Using FPV control requires that the robot stays still as much as possible, this is because one can get dizzy easily, and original balancing mode looks like a super drunk guy, so, thats why I discarded the original PCB with ARM cortex 0 and instead re-design everything: Electronics, PID control for self balance, wireless communications, sensors, artificial vision etc.
So, for the electronics, I design a board to control all what the robot needed:
8 I/O ports to control servos
5 I/O asigned to ADC, mainly used by distance sensor and battery level
2 H bridges with 3 Amp RMS to control each motor
2 Timer imputs to receive wheel encoders
1 Buck converter to provide enough current to servos and electronics systems.
4 I2C pin ports to conect IMU MPU6050
2 UARTS to control wireless comunications
128 KB SPI RAM
8 MB FLASH RAM for program data
1 RTC to keep traking of time
1 Connector to ViXion Cam
1 Serial connector to add Nordic NRF24L01+ or ESP8266
So, I started from 0, designing the PCB in protel with al these specs
And here is a time lapse designing the board CoreVix
Once the design was finished, and after waiting 2 weeks, the PCB boards from china arrived...
Now, with this new card, I could started the programming of the robot...