BarBot/Recipe execution software: Difference between revisions

From Nottinghack Wiki
Jump to navigation Jump to search
Mousetad (talk | contribs)
Created page with "== Recipe Execution == Once a drink has been selected in the user interface, the recipe in the database must be translated into instructions for the hardware control system. ..."
 
 
(4 intermediate revisions by 3 users not shown)
Line 19: Line 19:


Instructions generated (pseudocode here would actually be opcodes sent to Arduino using I2C or UART)
Instructions generated (pseudocode here would actually be opcodes sent to Arduino using I2C or UART)
# CheckGlassPresent()
# VerifyWithOperator()
# MoveToPosition(2)
# MoveToPosition(2)
# Dispense(2)
# Dispense(2)
Line 27: Line 27:
# OperatorMessage("Add ice")
# OperatorMessage("Add ice")
# OperatorMessage("Add lemon")
# OperatorMessage("Add lemon")
''Note: VerifyWithOperator() should require operator intervention. The operator will be required to check the punter is of age and such, and that a receptacle is present.''
Design notes from 26/06/2014:
[[File:barbot_sw_make_drink.jpg|400px]]

Latest revision as of 11:49, 5 February 2019

Recipe Execution

Once a drink has been selected in the user interface, the recipe in the database must be translated into instructions for the hardware control system.

Example: Gin & tonic

BarBot config:

  • 'Home' position is 0
  • Gin in position 2
  • Postmix in position 7
  • Tonic water on postmix with ID=2
  • Postmix delivery unit = 50 ml

G&T Recipe:

  • 2 x measure of gin
  • 150 ml tonic water
  • Ice
  • Slice of lemon

Instructions generated (pseudocode here would actually be opcodes sent to Arduino using I2C or UART)

  1. VerifyWithOperator()
  2. MoveToPosition(2)
  3. Dispense(2)
  4. MoveToPosition(7)
  5. Dispense(3)
  6. MoveToPosition(0)
  7. OperatorMessage("Add ice")
  8. OperatorMessage("Add lemon")

Note: VerifyWithOperator() should require operator intervention. The operator will be required to check the punter is of age and such, and that a receptacle is present.

Design notes from 26/06/2014: