Networked Cash Drawers using EtherMega

Showcase your projects! We love to see what people come up with, so please share your creations here.
Post Reply
bernfels
Posts:19
Joined:Mon Jan 16, 2012 6:09 am
Location:Perth
Contact:
Networked Cash Drawers using EtherMega

Post by bernfels » Fri Aug 09, 2013 3:36 am

What can I say... I've had too little to do to think about writing up the project? :?

Back in 2012, I posted a teaser of the controller that opens and monitors multiple "electronic cash drawers" using a network connection. It's been happily opening and monitoring cash drawers for over a year now. I even wrote a manual:
e4CashReference.zip
Controller Reference Manual (draft)
(172.82KiB)Downloaded 291 times
Hardware-wise, I made a shield which was dimensioned to fit into a neat little case. Note the use of a "paper PCB" to ensure that the daughter board with the front panel LEDs would fit. It was at that stage that I realized that I'd gone about providing the front-panel LEDs in a "stupid" way. I should instead have made a daughterboard to plug directly into the EtherMega's D22-D53 header.
shield.jpg
The cash drawer "shield"
The power components can be seen to the left of the space for the EtherMega. A Pololu D24V6ALV buck regulator is set to provide a nice 7V VIN to the Ethermega while anywhere between 9V and 42V DC can be connected to operate the cashdrawer solenoids.
TopOpenCropped.jpg
EtherMega and LED daughterboard in place
The shield has a Freetronics buzzer mounted in the wide, open spaces between the LED daughterboard and the solenoid driver FETs. I subsequently fitted a pushbutton on the back panel, next to the RJ sockets, connecting to the shield via fly-wires.

The story continues ...
Last edited by bernfels on Fri Aug 09, 2013 4:23 am, edited 1 time in total.

bernfels
Posts:19
Joined:Mon Jan 16, 2012 6:09 am
Location:Perth
Contact:

Re: Networked Cash Drawers using EtherMega

Post by bernfels » Fri Aug 09, 2013 4:10 am

Open2FrontS.jpg
Case open. Front view
The EtherMega is held securely onto the shield using a nylon screw and nut. Labels look much better "in the flesh" than in the photo.

The back panel obscures the EtherMega's power socket so that the power supply for the solenoids cannot be plugged into the EtherMega by accident. I've got ten thumbs so the detail work on the panel cutouts isn't pretty if you look closely.
Box2backS.jpg
Case closed. Rear view
The edge of the case has been notched to provide some ventilation for the voltage regulator on the shield. A test run for 24 hours in the summer revealed that the ethernet components on the EtherMega produced quite a bit of heat that would have led to some problems in the long run, so I drilled a row of 3 mm holes in the front panel, below the big label to provide for some convection between the shield and EtherMega. That, and the gaps around the connectors at the back panel was enough to make me feel comfortable about indefinite deployment of the device.

I'd initially made a traditional shield that did the drawer opening, etc, without LEDs. That worked as a proof of concept but it was far from pretty as well as having the clear and present danger of having the power supply being plugged into the wrong power socket.
proto_assyS.jpg
Prototype shield
... continues ...

bernfels
Posts:19
Joined:Mon Jan 16, 2012 6:09 am
Location:Perth
Contact:

Re: Networked Cash Drawers using EtherMega

Post by bernfels » Fri Aug 09, 2013 4:21 am

In March last year I did a presentation at the Arduino-U session of Perth's Artifactory, describing how to apply some principles of data dictionaries to manage the storage of operating parameters in EEPROM.
Artifactory.zip
Arduino-U Presentation Slides
(192.57KiB)Downloaded 277 times
EEPROM-SAMPLE.zip
Sample code
(20.23KiB)Downloaded 290 times
One interesting bit of feedback I got was that most of the audience, even the long-time Arduino hackers, were unaware of EEPROM storage and its versatility for storing operating parameters.

The novel packaging of "stacking" components and daughter boards outside the Arduino's footprint, allowing the use of slim-line cases was also appreciated.

BTW: The use of daughter board for the front panel was initially to work around the PCB area limit in the CAD package.

Post Reply