Naar de inhoud

Werk2023

Een cocktailbar die de drank zelf samenstelt

Een machine die een cocktail schenkt die u op uw telefoon bestelt. Gebouwd met één medestudent tijdens een roboticavak. De pompen zijn in CAD ontworpen en geprint, de aansturing draait op een Arduino, en het bestelscherm wordt door de microcontroller zelf geserveerd.

Stack
OpenSCADBlenderArduinoC++ESP8266

Het aardige aan dit project was dat bijna niets te koop was. Een pomp die een afgemeten hoeveelheid vloeistof verplaatst en tussen twee drankjes door schoon te maken is, bestel je niet als onderdeel. Die moest dus ontworpen worden, geprint, en daarna ook nog aangedreven.

Een drankje bestellen

Mijn helft was het bestelpad. Een ESP8266 draait een kleine webserver op het lokale netwerk en serveert de pagina vanuit zijn eigen geheugen, en meldt zichzelf aan via mDNS zodat er geen IP-adres ingetypt hoeft te worden. Er is geen app, geen backend, en geen cloudaccount. U gaat op het netwerk, opent een pagina, kiest een drankje.

Daarna is het één byte over een seriële lijn naar de Arduino die de mechaniek bestuurt. De webkant houdt een bezet-vlag vast tot de Arduino terugmeldt, zodat een tweede bestelling tijdens het schenken geweigerd wordt in plaats van dwars door de eerste heen te lopen — met één glas onder de tap is precies dat de fout die telt.

De machine die eronder zit

Daarachter zit een carrousel met flessen op een stappenmotor, pompen die door servo's worden ingedrukt, en relais voor de gepompte mixers. Een recept is geen lijst milliliters maar een lijst omwentelingen en drukken. Het frame is in Blender gemodelleerd; de pompen zijn in CAD ontworpen en 3D-geprint, want een pomp die een afgemeten hoeveelheid vloeistof verplaatst en tussen twee drankjes door schoon te maken is, bestel je niet als onderdeel.

Het was een studentenproject met zijn tweeën en dat is eraan te zien. Het staat hier omdat het het duidelijkste voorbeeld is van waar dit bedrijf voor twee dingen staat ingeschreven: software die praat met hardware die in dezelfde week is ontworpen.