Raspberry pi fluid app12/31/2022 Once the drink has returned to home, the loop starts over waiting for drink data from the Pi. This variable is passed directly into the delay for the solenoid that allows the chaser to flow. The protocol value for the chaser is a time in milliseconds. The chasers are poured last, after the liquor. The protocol includes pour durations for the chasers based on the recipe received. The platform returns to the exact place when it started the drink. When the program considers the drink complete, it takes the total number of steps added at its current position and moves the motor, that many steps, in the opposite direction. The number of steps are added when the platform passes under the drink dispensers. When no more drinks are left to pour, the program considers the drink complete and returns to the first position (home). The program also checks whether or not there is any more drink modules left to pour when executing the recipe. The program will check the number of shots in the recipe and dispense the first shot then wait about 4 seconds for the drink module chamber to refill and pour the second shot before moving on to the rest of the recipe. The positions are fixed and have a set number of steps in order to move the motor until the cup is directly under the pour spout. Once these variables are assigned, we check the values of these variables and move the motor accordingly to each drink module position. We then parse out the array and assign individual variables. We use the Serial.parseInt() function to place each comma separated value into an array. The Arduino receives the values separated by commas. The main program runs in a loop waiting to receive serial data from the Pi based on the protocol setup. We then setup all the variables and subroutines. The SoftwareSerial.h Library is imported to allow serial communication from the Pi. The Centipede shield comes with a library that is imported along with Wire.h library in order to communicate with I2C devices. The program starts off with importing the libraries. The Centipede Shield uses the Wire I2C interface on analog pins 4 and 5 of the Uno to provide 64 general purpose I/O pins. We are using the Centipede shield to expand the I/O of the Arduino Uno. The Arduino receives the serial drink protocol (Recipe) from the Raspberry Pi and controls the motor routine based on the recipe. Although this is only driving a small platform and a cup, there still is resistance. Most stepper motors are not designed to handle lateral forces. With CNC applications, directly coupling a stepper motor to the drive shaft is never a good idea. There is a stepper motor driving the Drinkmotizer table via a drive belt. Be inexpensive (relatively to the other bot options) Technically, I could build a Drinkmo that is twenty feet long having 80 bottles on it! I thought that would be cool to see at a bar somewhere. That particular setup, being four feet long, can have up to sixteen bottles and still have the chaser spot. In the video I show six bottle stations and one chaser spout. My goal was to make something a bit faster, slightly less precise, and upgradeable. The concept is based on a CNC lathe I built. Artistically speaking, It isn’t just a nozzle that sprays alcohol at objects, it uses the actual bottle, and gravity. I know what you are thinking, “hey, there are other drink mixing bots out there, what makes this one different?” This one doesn’t break the bank. Drinkmo is your designated, sober, mixologist. You want the Drinkmotizer at your party… You need the Drinkmotizer at your party… At some point, dexterity for drink mixing is lost at a gathering. One of the few projects that’s fun at parties. On every engineer’s senior design short list is/was a drink mixing robot.
0 Comments
Leave a Reply.AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |