The majority of the electronics for the robot is in the mainboard. It acquires all the sensors, controls the motors, the stepper, checks the battery and more.
The core of the board is the PIC18F24K22, programmed in C++.
Two integrated H-Bridge SN754410 are used for driving the motors. One IC is for the stepper and one, with a not-gate IC, controls the traction motors in PWM LAP control. The LAP control ensures a more precise control of the motor, but most importantly it permits to really brake the motor, which is fundamental for a forklift robot.
The power for the robot comes from a 12V 1.2Ah Pb battery, monitored from the PIC by a voltage divider. A linear voltage regulator 7805 is used to power all the logic and control electronics.
The pushbuttons used for the color selection. Each button creates a precise tension which is read by the PIC ADC.
The PCB layout design is done on Orcad suite because it was the CAD used in my school. The PCB is also printed in my school, here's a photo of the mainboard assembled: