Project Conclusion:

In the end, we were able to implement the automated bartender with the components initially chosen. The only major change to the project was the implementation of how the stepper motor was changing the drink selection (spinning a thin disc with hoses attached to it instead of carrying, balancing, and turning the entire weight of the cocktail carousal.

The processing power for our project was significant. We only made one change to the order in which we handled processes. We gave the End Of Conversion (EOC) interrupt from the ADC lower priority than interrupts thrown by either the keypad or the NES controller. Initially EOC was occurring so frequently that other interrupts were never being serviced and a starvation situation was encountered. By swapping the priorities we resolved this issue.

Given what we know now, if we had to do this again, the keypad and PIC microcontrollers wouldn't have taken us nearly as many hours to implement. We would also have thicker ribbon cables, amplified signals, and better signal filtering to allow us to carry signals accurately along greater lengths of wire. We had initially used ribbon cable quite often to keep our project neater and had some longer cables to accommodate having the LCD and keypad in a box, separated from the main circuit board. Lastly, a better conveyor belt would have been nice. We had some trouble with our belt becoming offset and a little help being necessary to initially start the belt on occasion. As for the actual components that we choose to interface to, we were satisfied with their performance. They all proved to work as well as we needed for constructing the Automated Bartender.

The University of Michigan, EECS 373 - Winter Semester 2006