Friday, 1 September 2017

Controller part 8 - eagle fight

Canada is a great place: trees, more trees, beer that doesn't taste like water, Montreal. We even have a puppy for prime minister. Getting things to Canada from the US on the other hand, is like chewing pebbles. I've been waiting since the end of July for paint samples to come by USPS. Lost in the mail. Resent. Still waiting. 

In the interim, I've been in a grim death-struggle with Eagle CAD, candidate for "World's Most Un-intuitive CAD Package". I also wired up the prototype controller. All the AC and signals to the lower board (the bull-dog clips are holding a piece of rubber over the exposed AC connections on the bottom) :


Then I made a break-out for the IO to the micro-controller from a piece of protoboard and some jumper wires. It plugs into un-used analog pins on the Arduino.



Overall it's a bit messy, but not too bad given that it is frankensteined together from various different projects. The only real problem is that the USB port is at the opposite end from all of the other connections. This is inconvenient for positioning the box in the base of the frame. The other mild annoyance is that the LCD screen is just too wide to fit across the short side of the box. So, at least for now, the interface will have to read from the side of the machine. 

The next step is to make custom boards for the keypad/screen and the power distribution/sensors/relays because protoboard just ain't gonna cut it. Ultimately, it would be better to incorporate all three boards into a single one, but that is a lengthy task which requires a much higher volume to make it worthwhile. Here is a first bash at the keypad shield. 


This is a pretty simple board: just the connections between the LCD and the microcontroller to make, plus an IDC connector to hook up a few flavors of power, ground and a bunch of pins to the lower board. The keypad design is clever - all the buttons are on a single analog pin, pressing one of them engages one of five different resistors. The pin reads the resistance and thus can distinguish which button has been pressed. 


There is, however, a mistake in the original design which has been blindly duplicated hundreds of thousands of times. The transistor that controls the LCD back-light is missing a diode (or minimally a resistor) to prevent current flowing back to the IO pin on the microcontroller and burning it out.


Suffice it to say that this shall be remedied.

No comments:

Post a Comment