# Scales for analphabetic people

For my dayjob, I work with people who have physical and mental disabilities. Some of these people are also analphabetic and that can sometimes cause problems for the work they have to do. One of the jobs they do is repackaging sweets. The problem is that repackaging sweets is always based on weight and that they are not able to read scales. So I decided to do something about that.

Since teaching them to read and write would cost me to much time, I decided to build a device that does that for them. My task was made a lot easier by the fact that we use industrial scales that have a serial output to connect it to a printer. It meant that I didn't have to open the scales themselves to hack a device into it. I could just add a serial device to it.

I came up with this device. It has 3 LEDs to display the weight. Green means that the weight is ok, red means that it is to low and yellow means that it is to heigh. A foreman can set the device up via the LCD and the rotary encoder.

It is also possible to set separate percentages that the weight can be above or below the required weight. I added that feature because sweets have a certain weight and it isn´t always possible to get the required weight exactly.

An extra feature is that the value off the desired weight and of both percentages are stored in the EEPROM of the device, so that it sets itself to the last used values on powerup.
Remove these ads by Signing Up

## Step 1: What do you need to build the circuit?

• A 16 x  2 LCD
• An Atmega8
• A 74LS04D
• 3 x 150Ohm resistors
• 6 x 10K resistors
• A 10K trim potentiometer
• 2 x 100nF capacitors
• A red LED
• A green LED
• A yellow LED
• A rotary encoder with a pushbutton function.
• A male 9-pin serial connector
Ugifer1 year ago
Great Project - nicely designed & built.

I have also found ITeadstudio to be great and fantastic value.

One thing that might interest:

You can read the encoder with equally simple code and circuit but twice the resolution if you interrupt on a change in A rather than just A rising. You will see from the diagram that you posted that when turning Right, A always changes to be different from B (A is leading). Going Left, A always changes to be the same as B (A is following).

Therefore, if you interrupt on change in A then you can decrement the counter if A=B and increment if A=/=B.

Ugi
12 months ago
This was exactly what I was thinking when I read his code! I did that with an encoder taken from an old mouse scroll wheel just a little bit ago.
janw (author)  Ugifer1 year ago
You are right indeed. But when you do an interrupt on change, them it does 2 steps per 'click' with my encoders.
Sgfrye1 year ago
I really have no need for this but read it because I am a nerd. I really wanted to comment on you using your skills to help others. The world would be a better place if more people followed your example and thought about lifting those that are disadvantaged. Kudos to you!
binaryg1 year ago
Excellent work you are a great person you might want to look into selling this because i bet their is something already like this out their but costs silly money just because its a disability aid.
bob30301 year ago
Great job. Thanks for using your talents to help others be successful. Thanks for posting.
Mielameri1 year ago
Very good idea!
eblackman11 year ago
Well done!
jessyratfink1 year ago
Such a wonderful project! Great documentation, too :D