BarBot/Recipe execution software

From Nottinghack Wiki
Jump to navigation Jump to search

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: