EEL4924 - Electrical Engineering Design 2 Final Design Report April 23, 2013 Boozer Cruiser The Mobile Bartending Robot Team Members: Mackenzie Banker Perry Fowlkes mbanker@ufl.edu perry.pfowlkes@gmail.com 813.732.4050 850.686.2622 Project Abstract: The Boozer Cruiser consists of three primary parts: the robot, drink station, and Android application. A user can order a drink on his or her phone, and the line-following robot will be waiting at the drink station for the station to release the desired drink, and will then bring the user their desired beverage. The Boozer Cruiser is intended to be used on a bar top and eliminate the need for a bartender.
Table of Contents Project Abstract..1 List of Tables and Figures.3 Project Objectives..4 Competitive Products.4 Technical Concepts 4 Project Architecture 5 Division of Labor 8 Bill of Materials...8 Gantt Chart...9 Conclusions.9 Appendix A: Circuit Diagrams and Layout..10 2
List of Tables and Figures Table 1. Division of Labor, percentage breakdown...8 Table 2. Robot cost...8 Table 3. Drink station cost.. 9 Figure 1. The Inebriator...4 Figure 2. The Drink Station...6 Figure 3. The Boozer Cruiser line-following robot...6 Figure 4. Overall project block diagram...7 Figure 5. Gantt Chart...9 Figure 6. Robot Schematic...10 Figure 7. Robot PCB design...10 Figure 8. Line-following sensor array schematic...11 Figure 9. Line-following sensor array PCB design...11 Figure 10. Recharge circuit schematic...12 Figure 11. Recharge circuit PCB design...12 Figure 12. Drink station schematic...13 Figure 13. Drink station PCB design...13 3
Project Objectives: The main function of our project is to make an alcoholic beverage and deliver it to the user with the click of a button. The user is given a selection consisting of two liquors and one mixer. The user s drink choice is then sent to the drink station s microcontroller. The microcontroller on the drink station will then release liquid into a cup on the line following robot. Once the drink is ready, the drink station communicates wirelessly with the robot s microcontroller to let the robot know that the drink is ready. The robot then leaves the drink station to deliver the mixed drink to the user. Competitive Products No similar products are commercially available, but a few bartending robots have been made by hobbyists. Another robot bartender, called the Inebriator, was made by a group of amateur engineers, but its functionality differs slightly from the Boozer Cruiser s. The Inebriator is completely stationary; a user must go to the robot to order his or her drink and to pick up the drink once it has been made. It has many more drink options than the Boozer Cruiser and is more aesthetically appealing, but the user must put in more effort to get a drink than someone using the Boozer Cruiser. Figure 1. The Inebriator, a bartending robot. Technical Concepts A strong torsion chassis was chosen as the platform for the robot for ensured strength and durability when transporting a full cup of liquid. We chose a chassis with two wheels, two DC motors, and one caster. This is for the reason that we wanted the robot to have a wide range of maneuverability. A two wheeled chassis can turn in place, which is utilized heavily in our system. We did not choose a four wheeled chassis since it needs a wide radius to make turns, and we are simply limited on space for this project. We chose the PIC18f4620 as our processor for this project. The PIC was chosen since it runs on 5V, which is ideal for turning on and off MOSFETs. Our microcontroller controls the line following robot s two motors by utilizing two H-Bridges which are constructed out of MOSFETs. The MOSFETs control the direction of current through the motor, which ultimately determines the direction that each of the motors will spin. The speed of each motor is modified by sending pulse-width modulations to the gates of the MOSFETs in its corresponding H-Bridge. At the front of the robot, there is a PCB which houses 6 photoresistors along with 6 LEDs. We are using the photoresistor array to determine whether the robot is online, or veering off course. We chose photoresistors because they are extremely cheap, yet also provide a straightforward solution. Since the robot needs to be mobile, it runs on battery power. For this, we chose an 8.4V Nickel Metal Hydride battery. These batteries are inexpensive, as well as rechargeable. 4
The second major component of our project is the drink mixing station. The station is supported by Unistrut. The Unistrut provides the station with stability, while making disassembly easy. We have two measured liquor dispensers for accurate dispensing of liquor each time. Each of the liquor dispensers is operated by a servo motor. These were chosen for their ability to offer high torque. A solenoid valve was chosen for the mixer dispensing due to its easy operation making it a breeze to integrate into our project. A PIC18f4620 microcontroller is used for the drink station as well. This is because it has Pulse-Width capabilities in addition to having a USART port. We chose to integrate an android application into our project as well. This is because we can achieve a sharp looking user interface which adds to the overall appeal of our project. Android is a very well established platform, so documentation is readily available. Finally, Android is open source which meant that we did not have to purchase a license in order to develop for the platform. Project Architecture Android Application The Android application provides an intuitive interface which the user can remotely order his or her desired drink from the convenience of a smartphone. When a drink order has been selected, the application sends the order via Bluetooth to a Bluetooth module on the Drink Station, which can then make the drink accordingly. Drink Station The drink station is equipped with a Bluetooth module which is set to wait for an incoming message from the Android App. Once the request has been received, it is serially transmitted to the microcontroller via a USART port. From there, the microcontroller choose a drink option based on the message it received. Each drink choice is different, consisting of one of two liquors and also a mixer. Pulse width signals are sent to one of the two servo motors in order to dispense a shot (or two) of liquor into a cup down below. At the same time that happens, a signal is sent to the solenoid valve also attached to the station. The valve will stay open for a pre-designated amount of time in order to fill the cup. Once the drink order has been fulfilled, the drink stations microcontroller will then send a message to the robot using an Xbee module. The Xbee module is also connected to the microcontroller through the USART port. At this point the drink station has finished its job, and will continue to listen for new requests from the Android App. 5
Figure 2. The Drink Station. Robot A line-following array, placed underneath the robot chassis, uses five photoresistors to detect a black line on a light surface. The three middle sensors stay on the line while the other two border the line on either side, ensuring full knowledge of where the line lies at all times. The robot was shrouded with wrapping paper to eliminate changes in lighting from the environment, and five LEDs provide consistent lighting for the sensor array. The voltage drop across each resistor is read in by an analog-to-digital converter, and the robot s microcontroller modulates the motors accordingly to make the robot follow the line. Figure 3. The Boozer Cruiser line-following robot. 6
A single photoresistor is used to detect a piece of blue tape, alerting the robot to stop. Blue tape is placed at the drink station and the seat of the user, so the robot will stop at these two locations. Four outputs from the PIC control the two H-Bridges, making the left and right motors move forward or in reverse. When the voltage from the far right sensor goes above a certain threshold, we know that sensor is on the line and the robot needs to move slightly to the right. Therefore, the PIC sets the left motor to be moving forward at full speed while pulse-width modulating the right motor to slow it down, causing the robot to turn right. The opposite is done when the sensor on the far left reaches the line. An XBee on the robot is used to communicate with the Xbee on the drink station. An 8.4V NiMH battery powers the robot. A recharge circuit that runs on 14-30V uses a comparator and bipolar junction transistor to provide current to the battery. Once the battery reaches its fully charged voltage of 9.8V (it consists of seven 1.2V cells that when fully charged are 1.4V), the comparator turns off the BJT, causing the battery to stop charging. Figure 4. Overall project block diagram. 7
Division of Labor Item Mackenzie Banker Perry Fowlkes Line Following Hardware 100% 0% Color Sensing Hardware 100% 0% H-Bridge Design 100% 0% Robot PIC Programming 50% 50% Bluetooth 0% 100% XBee 0% 100% Drink Station Construction 25% 75% Drink Dispensing 15% 85% Drink Station Programming 15% 85% Battery Recharge Circuit 100% 0% Android App 0% 100% Table 1. Division of Labor, percentage breakdown. Bill of Materials Component Cost PIC18f4620 $5.21 Chassis/Motors $46.95 Photoresistors $2.95 White LEDs $18.00 H bridge Components $14.65 Xbee $25.95 Rechargeable Battery $6.95 Table 2. Robot cost. 8
Component Cost Processor $5.21 Xbee $25.95 1 Solenoid Valve $32 2 Measured Drink Dispensers $35 Stand Structure Materials $65 2 Servo Motors $29.80 Bluetooth Module $89.95 Table 3. Drink station cost. Total Cost: ~$433.37 Gantt Chart Figure 5. Gantt chart. Conclusions Overall, the project provides a feasible solution to the problem. The Boozer Cruiser makes a drink for a user and brings it directly to him or her with no hassle. A few improvements could be made to the project though. To begin, there are not many drink options available due to time and cost restraints, but more options could easily be added. Also, the valve pumping the mixer into the drink does not operate very quickly, so finding a faster valve would expedite the drink making process. Adding an ice dispenser and a method to stir the drink would additionally make the Boozer Cruiser a more appealing product. 9
Appendix A: Circuit Diagrams and Layout Figure 6. Robot schematic. Figure 7. Robot PCB design. 10
Figure 8. Line-following sensor array schematic. Figure 9. Line-following sensor array PCB design. 11
Figure 10. Recharge circuit schematic. Figure 11. Recharge circuit PCB design. 12
Figure 12. Drink station schematic. Figure 13. Drink station PCB design. 13