Vending Machine

From HackPittsburgh Wiki
Jump to navigation Jump to search

ELECTRICAL SPECS

There are 25 relays that connect to the motors that drive the spinny things, they run off of 5 volts. (There are actually 32 of them but only 25 spinny things, so.) They APPEAR to all be wired up already to the spinny things, so we just need to turn each motor on for however long we need to.

The keypad is a 5x5 grid of chained switches, so there are 10 outputs and each switch turns on two of them. From those two you get grid coordinates telling you what button is pushed.

There's an Arduino Mega sitting in the thing not connected to anything; no idea what software may or may not be on it. But it has 30 or so digital pins and 15 analog inputs, so it should work.

A display. There's a SainSmart 2004 I2C LCD sitting in the thing, specs here: http://www.sainsmart.com/sainsmart-iic-i2c-twi-serial-2004-20x4-lcd-module-shield-for-arduino-uno-mega-r3.html There's also a couple random display modules sitting in the thing that I don't recognize.


WHAT WE NEED

A sane front panel designed, cut out and bolted on

A bunch of electrical connection work to provide power and be able to do something with the current rat's nest

A panel to bolt all the electrical stuff to

A couple multiplexers would probably make the wiring easier; as it is we might not have enough pins on the Mega to drive the display along with everything else.

Coin accepter. Forget about it for now; maybe someday when we have the shop accounting system we can make it work with that.

USB Credit Card reader

PROPOSAL

We drive the thing with the Arduino Mega and just get the thing working.

Honestly an RPi might make a better controller 'cause then we could connect it to the internet and whatever shop accounting system we end up using, but the software really isn't the hard part, so that can happen later.

Thoughts?

TO DO

In no particular order

  • Write software for controller
  • Connect controller to relay board somehow
  • Make relays work and make sure they drive the motors correctly
  • Connect button panel to controller

Controller parts

Controller software

2016-06-20, Adam Casto and Brian Coulter:

We found the specs for the controller and found a python script that should be able to run it. We had some issues getting it operating, but based on the vid and pid it looks like it was made for this device:

This is a second program with the same idea, written in java script.