Once all of the hardware was assembled and the software was programmed, the system worked well. We had control of the train so that we could control its speed and direction, program the train so that it would do a certain number of laps forward and backward, and count the laps as the train went around. In addition, ramping the speed of the train allowed us to make sure the train did not derail itself as it switched direction. Also, the speed control as the train went into the curves kept the whole train on the track and did not allow for high speeds around the curves.
A few minor unfixed bugs (due to time constraints) were:
Below, are pictures of the circuitry that was actually built.
Figure 5: Complete train controller brought to life with all parts labeled
Figure 6: output on 4X20 LCD screen showing details about the train Figure 7: H-bridge and Controller
Figure 8: Sensor power and push buttons with sensor 4 light lit Figure 9: Connections to the UART and programmer