Scales come in equal-arm, shoulder, lever and electronic scales. In order to make the first three types of scales, what you find at home is quite suitable: a clothes hanger, a ruler, a knitting needle from a broken umbrella, used lids and much more that, in principle, will not be useful to you. But the device of electronic scales is quite complex. In order to make electronic scales, you may need strain gauges, inductors, transformers and similar devices, which certainly don’t just lie around like trash.
How to make scales at home
Sometimes a lot of different junk accumulates at home. This trash can be thrown away, or you can make very useful things out of it, for example, scales. In the kitchen, you often need to measure small amounts of ingredients for a complex recipe. If you are doing chemical experiments, then you cannot do without the exact weight of the substance.
Scales come in equal-arm, shoulder, lever and electronic scales. In order to make the first three types of scales, what you find at home is quite suitable: a clothes hanger, a ruler, a knitting needle from a broken umbrella, used lids and much more that, in principle, will not be useful to you. But the device of electronic scales is quite complex. In order to make electronic scales, you may need strain gauges, inductors, transformers and similar devices, which certainly don’t just lie around like trash.
We suggest you familiarize yourself with How to clean tiles in the bathroom: folk remedies
Equal-armed scales resemble a swing in appearance. So to make these you will need a straight shoulder bar. The role of this bar can be performed by an ordinary ruler, an umbrella knitting needle, or any other straight stick.
You need to attach bowls to the edges of the plank. For these purposes, you can use any two identical containers. These could be drink caps, metal canning lids, measuring cups, etc. Along the edges of these containers, you should make three holes equidistant from each other and attach threads, fishing line, and thin wire to them.
In the center of the strip, another strip should be glued (or welded) perpendicularly, only shorter. This arrow will show the balancing of the arms of the scales. You can even use a needle for these purposes. Your scales are ready, all that remains is to secure them on some kind of stand, for example, hang them on a hook on a vertically mounted rail.
Shoulder scales are good because they allow you to measure not only absolute weight, but also measure out the required amount, for example, of a bulk composition. The main difference between such scales and equal-arm scales is that the cups can move along the rail and be installed at different points relative to the suspension.
It is best to use a thin rack as a bar for such scales. You can also hang it on a hook. If the rail is very thin, then it is better to make a groove in the middle rather than a hole. Make a needle arrow there too, which will indicate the deviation of the scales.
From the suspension point in both directions, measure equal distances, numbering them as you move away. You can make notches at the marks so that the scales do not slide on the bar during weighing. The bowls are made in the same way as for equal-armed scales, only they are not attached to the edges of the bar, but are suspended. When weighing, inverse proportionality is used: L1/L2 = M2/M1.
Lever scales are also easy to use. In order to make them, you will need some kind of platform or tripod. Lever and cup for weight. A lever is attached to the tripod using screws, and a weighing cup is attached to one side of it. The other side of the lever is the scale arrow. By experience you establish weight divisions.
We invite you to familiarize yourself with 4 ways to remove rust from clothes
Kettlebells can be purchased at the store. Tablets that have a very clear weight indicated on the package can also serve as weights. In addition, you can use ordinary coins as weights, establishing their exact weight experimentally.
Do-it-yourself scales for the role-playing game “Shop”
Do-it-yourself scales for the role-playing game “Shop”
Good afternoon, dear colleagues! I present to your attention a master class on making scales for the store game .
At home I accidentally came across a box with weights from the times of the USSR.
And then I got the idea to make my own scales . For this I needed an ordinary shoe box, two round flower trays, colored paper , cardboard, an awl, scissors, a simple pencil, and blue tape.
I took an ordinary cardboard shoe box and covered it with blue tape to make blue scales .
Then I made a template for the top of the scale. I traced the template on cardboard, cut it out, and covered it with blue paper.
Next I started decorating the inside of the scale.
I printed out the numbers and cut out an arrow from black cardboard.
I glued the top of the scale to the cardboard lid of the box.
I added two cups for scales on both sides. You can glue them or sew them with a needle in the center, after first piercing holes in the scales with an awl.
At home there were dummies of vegetables and fruits.
I put everything together and got these scales , now I can take them to work. Children will have fun playing shop , naming vegetables, fruits and colors. I have my first junior group.
In the future, I plan to make weights from salt dough and paint them in primary colors: red, yellow, green and blue.
Thank you, dear colleagues, for watching! I will be glad if any of you find my master class useful.
“Cash register” for a role-playing game in a store. Children lose all life situations, be it a trip to the hospital with their mother, or to the store. To play the store we need a store that...
DIY attributes for the role-playing game “Shop” To gain gaming experience and the ability to develop a game plot, it is necessary to teach children the game. In play, the child shows initiative and creativity.
Summary of a role-playing game for the first junior group “Vegetable shop” Purpose: To develop initial skills in role-playing behavior. Materials and equipment: scales, cash register, models of vegetables and fruits, bag, wallet, suit.
Equal-armed scales
Equal-armed scales resemble a swing in appearance. So to make these you will need a straight shoulder bar. The role of this bar can be performed by an ordinary ruler, an umbrella knitting needle, or any other straight stick. You need to attach bowls to the edges of the plank. For these purposes, you can use any two identical containers. These could be drink caps, metal canning lids, measuring cups, etc. Along the edges of these containers, you should make three holes equidistant from each other and attach threads, fishing line, and thin wire to them.
Equal-armed home scales
Equal-arm homemade scales for measuring grams are similar to a swing; to perform them you need a level bar (ruler, knitting needle, level stick, etc.). “Cups” (small plastic bowls or bottle caps) are attached to the edges of the bar.
Three holes are punched in them at equal distances, into which a thread or fishing line is attached. A small strip is attached perpendicular to the center of the plank. It will play the role of an arrow that fixes the balancing of the shoulders. The scales are then secured to the stand and used effectively for their intended purpose.
Equal-arm scales, known to everyone from school, are made from a pencil, fixed with a heavy textbook on the edge of the table, and a ruler hanging on it in the form of a swing.
IMPORTANT!
The pencil should be positioned exactly in the center of the ruler. This is called determining the center of gravity.
An object of a certain weight is placed on one end of the ruler, and the load to be measured is placed on the other end. In this way, you can weigh oversized objects whose weight does not exceed 50 g. Due to the fact that there is a danger that the ruler will break. There is also a danger that it will turn over and the bulk materials under study will scatter.
Using the indicated principle, simple scales are made for larger and heavier objects. Instead of a ruler, use a board, and instead of a pencil, take, for example, a log.
Lever scales
Method 1
You need to take a long straight stick, a ruler, no shorter than 30 - 35 cm. In this scheme, it plays the role of a rocker.
IMPORTANT!
The longer the rocker arm, the more accurate the results will be.
Next, you need to find the center on this “yoke”, measure equal segments on both sides of the marked center to install the bowls. Drill holes at these points. Secure a strong synthetic thread in the middle. Bottle caps or cut-off plastic cups are also suitable for bowls. Connect the threads from the bowls to the rail with a knot. Drill 3-4 holes along the upper perimeter of the cups at equal distances from each other, pass strong threads through them and tie them.
Make a scale arrow, you can cut out a cardboard triangle. Attach in the center of the rail where the main thread passes. Make sure that the stretched thread runs through the middle of the cardboard triangle. Hang the scales on a central thread on a support: a hook or a nail. Calibrate the scale.
IMPORTANT!
To ensure that the top of the triangle arrow in a suspended state clearly coincides with the stretched thread, you can stick a piece of plasticine to the bottom of a correspondingly lighter bowl.
Weights for such homemade scales can be found in a special store, either used as coins, or used the same tablets; their weight is indicated on the packages.
Method 2
Let's talk about another of the simplest lever scales. To do this, use a hanger hanging in any closet. Cups or bags are hung from both sides of clothes hangers. On one side, objects of known weight are placed in them. For example, factory-made packages with sugar and cereals are suitable; you can also take bottles filled with water.
Setting up lever scales:
To set up a lever scale, you will need a set of weights, or something with a strictly defined and pre-known exact weight. The pointer position without the weight will be your zero reference. Next, simply place the weight on the cup and see how much the scale arrow deflects - this will be your maximum measurement limit. You can maneuver the measurement limits by changing the force of the counterweight (use larger or smaller counterweights)
PS: I tried to clearly show and describe non-tricky tips. I hope that at least something is useful to you. But this is not everything that can be imagined, so go ahead and study the site
Shoulder weighing devices
Such devices are good because they can be used to measure not only any weight, but also measure out the required amount of bulk compositions.
Important! They differ from equal-arm scales in that their bowls are able to move along the rail; they can be installed at any point relative to the suspension.
- It is better to make a bar for them from a thin strip. It can be hung on a hook if desired.
- If you only have a thin strip, then it is recommended to make not a hole, but a groove in the middle. A needle arrow is also made here, indicating the deviation of the scales.
- Then it is necessary to measure equal distances on both sides of the suspension point, numbering them as they move away.
- It is better to make notches at these points so that the bowls do not slide on the bar when weighing.
Important! You can make bowls the same as we described earlier, only here they are not attached to the bar, but suspended. Weighing on such scales is carried out using inverse proportionality.
Shoulder scales
These are unequal weight measuring devices, since the bowls in this case move along the bar. Such devices will help to measure not only the weight of any objects, but also measure any bulk products
IMPORTANT!
The bar for these scales is taken to be thin, and then it is more advisable to punch not a hole, but simply a groove.
Next, you need to install an arrow, for example from a needle or something similar, to record the deviation of the scales. The next step is to measure identical pieces in both directions from the center - the suspension point - and calibrate. It makes more sense to put notches there, since the bowls may slide off during the process of measuring weight.
IMPORTANT!
Bowls can also be bottle caps, plastic cups and bowls, but here they are not fixed to a rail, but hung on strings.
How to make scales in nature
Sometimes in nature there is a need to weigh something. And this task is achievable. After all, you can make scales with your own hands from almost any available materials. You just need to apply a little imagination.
So, in order to weigh small objects, you can make scales from an ordinary plastic bottle. To do this, you need to make vertical slits closer to the neck and insert an even stick or straw into them. Tie either the object to be weighed and a load, or two bottle caps, to the ends on threads or ropes. Put what you need to weigh in one of them, and the counterweight in the other.
It is clear that with the help of such a device it is impossible to find out the mass of something heavy. But you can apply this principle using larger things.
You can make your own scales from a thick stick, which is tied to a tree or crossbar by the middle. It should hang perfectly straight. Then the object to be weighed is tied to the ends of this stick on one side and a load on the other. The only difficulty in the forest may arise from finding a load of known mass. Bottles of water, a bag of cereal, and cutlery are perfect for these purposes. It is unlikely that in nature you will need to weigh something with an accuracy of a gram. It is quite easy to find out the approximate weight with such scales. And the accuracy with a well-chosen load can reach an error of only 50-100 g per several kilograms.
Simple equal-armed scales
We all once made this option from an ordinary school ruler and pencil in physics lessons. But over time, for some reason, many people forgot about them. And in vain, because it’s easy to make such scales, and the result will be accurate.
The main task is to position the pencil clearly in the center of the ruler. When the ruler lies perfectly flat on the pencil, you have found the center of gravity. Now you need to place an object on one edge of the ruler, and on the other - a load with a previously known weight. Small objects and bulk materials are weighed on a ruler. Their weight should not exceed 50 g. Otherwise, the ruler will break.
Using this principle, you can also make scales for heavier objects. The ruler needs to be replaced with a wide board, and the pencil with a cylindrical beam of suitable diameter.
But still, this option is not particularly convenient, especially for bulk materials, since there is always a risk that the ruler will turn over.
Homemade scales for fairly large items
You can also weigh objects up to 100 kg at home or on the go.
To complete them you will need:
- steelyard,
- two very strong bars 1.5 and 1 m long
- strong twine
- cargo hook
The design itself is presented in the diagram below.
According to the diagram, it is clear that the values of 10 and 100 cm were not chosen casually. The data from the steelyard will need to be increased 10 times. It is necessary to accurately position the hole on block 1. You can use a clamp (a) to hang the object. Moving the clamp with a known weight along bar 1, you should determine its correct location and secure it in this place with a nail. If you need scales for loads over 100 kg, then the bars for the structure need to be longer. But the second one is always 10 times larger than the first one (for example, 15 and 150 cm, then the load should supposedly weigh up to 150 kg), and the steelyard indicators are multiplied by the length of the first one (in the example, by 15, respectively).
One comment
Good idea. Although I bought myself for 100 UAH. and I don’t worry. With electronic ones you can weigh much faster. But strange as it may seem, on lever scales you can get greater accuracy over a wide range. Because for example, the ones I have only weigh up to 200 grams. And kitchen ones can weigh up to 5-20 kg. but their error will no longer be 0.01 but 1-2 grams. Those. the greater the weight, the greater the error. In principle, it is the same with lever ones, but still their weighing limit with the same accuracy is greater.
Source
How to make scales on the go
Many people have faced the need to measure the weight of something in nature. To solve this problem, you can make scales from plastic bottles. Identical vertical holes measuring 1 cm by 5 cm are cut in the sides of the bottle from the top closer to the neck. A stick or straw is inserted into them.
Either the object being weighed and a load of known mass, or two bottle caps are tied to its ends with strings. The object being measured is placed in one, and the counterweight in the other. It is logical that this device will allow you to weigh only light objects. But the principle itself is perfectly applicable in the case of large objects.
To do this, find a thick, strong stick, hang it by the middle to a strong knot or to a crossbar.
IMPORTANT!
The stick should hang very evenly.
An object to be weighed and a load of known mass are tied to it from different sides. Its role can again be played by bottles of water, unopened packages of cereals/salt/sugar. It is not difficult to measure the approximate mass in this way.
Examples of homemade lever scales, how to make lever scales:
In order to make a lever scale, all you need is: a platform, a tripod (can be made of wood or plexiglass), and a lever (it can be cut from a sheet of iron), and, of course, cups for the weight. The design of this kind of scales is so simple (as is the principle of their operation) that only separate explanations are needed in Figure No. 1.
Figure No. 1 – Design of lever scales
Figure No. 1 shows that the platform has set screws - they are necessary to level the scales (by screwing or unscrewing them) - this is important for weighing. The scale should be level, and you can even attach a water level to your structure. I would also like to draw your attention to the so-called “stopper”, Figure No. 2.
Figure No. 2 – Sketch of some structural elements
A stopper in lever scales is necessary so that the counterweight does not fall, and you do not have to level them every time, in short, for ease of use.
Of course, if you wish, you can do without a stopper and counterweight - it is also convenient to use a design with an elastic band or a simple spring, Figure No. 3.
Figure No. 3 – Lever scales with an elastic band instead of a counterweight
But be warned! There is one difficulty - choosing an elastic band that is suitable in strength.
How to make your own electronic scales
Making electronic scales with your own hands is not the easiest task. First you need to carefully study the components and operating principle.
External components are:
- The weight processor is a separate block with a screen, keys, and microcircuits.
- A keyboard that should have working buttons “0” - “9”.
- Screen.
- Platform.
- A housing that hides all internal parts.
- Adjustable legs. For measurement accuracy, it is necessary to place the device level.
The measured load exerts pressure on it due to its gravity. Depending on the weight, the force of pressure of the measured object on the platform will change proportionally. Numerical values will be displayed on the screen.
The conversion of pressure data is facilitated by:
- Strain gauge
- Analog-to-digital converter ADC
- Microcontroller or processor.
Making scales with your own hands involves a careful study of each of the listed devices, their varieties, and a clear definition of what you need.
The heart of electronic scales can be considered a strain gauge. The strain gauge on which the strain gauge is based has a property that causes it to change resistance when deformed.
A voltage is sent to the strain gauge, and the output takes on a changed value, interacting with the strain gauge.
The analog-to-digital converter converts this voltage value into a digital code, which is then processed by the microcontroller. And the weight value is displayed on the screen. It happens in an instant.
There are several types of strain gauges:
- Single-point is built under the platform in the center. Used in trade, floor, packaging, technical and beam scales.
- Beam strain gauge. Intended, for example, for platform electronic scales.
- A rod strain gauge is required in particularly large scales - automobile, carriage, bunker. Used when weighing cargo from 20 tons.
- The S-shaped load cell is designed for overhead and crane scales.
- The double beam is used when weighing loads over 10,000 kg during transport weighing.
IMPORTANT!
When choosing strain gauges, take into account the further conditions of its use. For high-quality functioning, they must be reliably protected from moisture and dust. Also, before installing the strain gauge, carefully study the connection diagram. An undamaged, high-quality wire must run from the strain gauge to the analog-to-digital converter.
Connecting multiple strain gauges is extremely difficult. If you want this connection to be guaranteed to be of high quality, it is better to entrust this task to a professional.
The platform is made of stainless steel. Its service life is unlimited, which makes it possible to work with it in an aggressive environment without consequences. An organization specializing in rolled metal can help with the production of such a platform.
The housing for desktop electronic scales is made of plastic, while the housing for floor-standing, industrial scales is, of course, made of metal. A qualified welder can make a housing for industrial scales. The body needs to be painted to protect it from corrosion.
When producing homemade devices, the goal is always to save money, but when making electronic scales with your own hands, there is a risk of losing wasted money if you do not approach the process seriously and thoughtfully. The costs of the components are quite high. It is worth reading the instructions very carefully.
How I made a Wi-Fi scale, I didn’t quit anywhere, and I’m generally silent about life
From the title it’s easy to see that this adventure was inspired by the banal desire to plagiarize the title of the guys from Madrobots.
But this really was an adventure: the story alone with the protracted purchase of INA125U is so boring that it could drive anyone crazy except me. However, there may be something I still don’t know about myself. So, scales. As usual, I did everything wrong. Namely, he didn’t even look at what representatives of this group, so to speak, scalar ones, typical at the current moment in the development of the Internet of Things, can do. Therefore, my scales can separately weigh three different human specimens (me, my wife and a spherical guest in a vacuum), as well as five cats. The results are announced by a nearby smartphone and published on a Google sign.
Well, now let’s talk about how to do this, having on hand a scale from IKEA, an operational amplifier TI INA125, an Arduino Pro Mini, a Serial-Wi-Fi converter HiLink HLK-RM04, a few other loose items and a hefty pain in the ass.
There is contact!
Actually, when I bought a Serial-Wi-Fi converter on DX.com, I was not so much fascinated by its capabilities (I had an extremely vague idea about them at that time), but by the price - compared to the same Wi-Fi shield for Arduino.
Of course, it soon became clear that the difference in price is not just that: out of the box this converter bears little resemblance to a shield. And, yes, I understand - this is obvious to you, but for me it was a revelation that there will be no GET/POST just like that. Nevertheless, I tried the HLK-RM04 in action almost immediately after the purchase. First, without a microcontroller at all. You just need to connect the power (5V) and go to the default address indicated in the manual. There, after some doubts (so as not to screw something up), I entered my Wi-Fi settings and gave the converter a static IP, so that later I would not have to search for it throughout the network.
These are the settings. Looking ahead, this is a complete set of settings for the scales (substitute your IP and SSID, but the port speed is quite important - at this speed the HLK-RM04 will communicate with the controller):
At the second stage, I connected it to the controller and saw what could be done without a library and without effort. It turned out that if you switch it to server mode, connect it to the Arduino serial port, and write code that periodically prints something to this very port, then you can see what is being printed in the browser. Also, in principle, not bad, but not too inspiring. However, I remembered this as a last resort.
In general, the HLK-RM04 would have been lying around in a dusty box if not for Madrobots. I considered any options: making the converter work as a web client, and, if that doesn’t work, then at least take data from it through Tasker on a smartphone, and publish it where I need it using the same Tasker. Fortunately, for the first option, a suitable library was found WiFiRM04, which ultimately behaves almost like a Wi-Fi library for Arduino.
There are, of course, specifics. This library was compiled for the Arduino Mega, which has a lot of RAM and serial ports - through the roof. Therefore, the author of the library, by default, used a broad gesture to use two Arduino Mega ports to communicate with the HLK-RM04, and still had a connection to the desktop via USB for simultaneous debugging.
And by the way, with the debug module also enabled by default, even a tiny program using the WiFiRM04 library compiles to just under 30KB, so the prospects of migrating to the Arduino Pro Mini seemed a little dubious. However, there is good news: the author still provided for working with one port and turning off the debugging module.
The first one is written on GitHub, and I learned about the second one from the Arduino.cc forum.
And yet, to be honest, I debugged on Mega, because it seemed very tedious to constantly disconnect and connect the HLK-RM04 - after all, on the Pro Mini it occupies the only port, so even to simply download a new version of the program, the converter needs to be disabled. But there is a trick: if, after loading the program into the Pro Mini, you connect both the HLK-RM04 and at the same time a desktop with a port monitor, you can see what exactly the controller sends to the converter. And this allows you to understand in what condition he is in general.
The bottom line is that to adapt WiFiRM04 to Arduino Pro Mini, you needed:
1) In at_drv.cpp do this:
#define DEFAULT_BAUD1 9600 #define DEFAULT_BAUD2 9600
2) In the same place - like this:
// use Serial1 as default serial port to communicate with WiFi module #define AT_DRV_SERIAL Serial // use Serial2 to communicate the uart2 of our WiFi module #define AT_DRV_SERIAL1 Serial
3) In the same place - comment out #define _DEBUG_
// #define _DEBUG_
4) In the same place - don’t forget to put your favorite digital pin in #define ESCAPE_PIN
#define ESCAPE_PIN 4
3) In wl_definitions.h change MAX_SOCK_NUM to 1
In both cases, with the Mega and with the Pro Mini, I tested the performance of this hybrid with a hedgehog in practice - I sent requests to the server, which could record their receipt.
Your burden sometimes pulls, sometimes it doesn’t
At the next stage, I began to study the issue of obtaining data from the scales.
The theory was that, depending on the type, the scales were equipped with one, two or four load cells. Having opened the usual IKEA scales, I realized that here, in general, there is a classic scheme: each heel has a sensor, that is, four sensors in total. The only thing that bothered me was the number of wires. . original scale board
Apparently, each sensor is equipped with three of these useful things. However, the same theory stated that (fixed) resistors actually have two terminals.
. strain gauge
A thoughtful study of Aliexpress showed the following: the cunning Chinese produce sensors in the form of half of a fairly popular measuring bridge (Wheatstone bridge).
The bridge itself looks like this (picture from Wikipedia, the link to which is nearby):
And, in principle, everything was clear. But I could not understand how four half-bridges are connected into one bridge and why this is needed. The answer to the first part of the problem was given by the native scale board. The same Chinese, in order not to waste copper, connected ready-made common points where necessary: to the current source and to the potential receiver. And everything else was connected to form a bridge. As a result, each factory half-arm became a quarter-arm:
Well, okay.
The principle of weight measurement is quite simple: the load changes the resistance of the strain gauges, which naturally results in a change in the voltage at the bridge output. Moreover, the voltage changes linearly depending on the weight. In general, everything is fine, if not for one thing: the output voltage of the bridge is too low to measure it directly with the Arduino ADC. The almighty Internet tells us that to succeed you need the right amplifier - with a high enough gain, with a low enough noise.
The same Internet advises using the INA125 instrumental operational amplifier manufactured by the well-known Texas Instruments. Many corresponding circuit design solutions repeat each other as if they were carbon copies and practically do not deviate from the classical circuit in the datasheet. And yet I decided to be original and chose this scheme for repetition:
Here R1: 39 ohms, R2: 1 kohms, C1: 100 nF, C2: 100 µF. A measuring bridge is connected to pads 1, 2, 3 and 4, and if I understand anything, then when connecting to the bridge there is no need to specifically select points, the main thing is that V+, V-, Vref and GND go through one, i.e. e., for example: Vref, V+, GND, V-. On the other hand, I subsequently did not take risks, but simply looked at the designations on the original scales board, there were: E+, E-, S+ and S-, and connected it all to the amplifier accordingly (E+ = Vref, E- = GND, S+ = V+, S- = V-).
It would seem that everything is clear: I bought the parts and solder the amplifier. However, even in DS it turned out to be hellishly difficult to purchase 1 (One) TI INA125 amplifier, and especially in DIP. Prices range from 100 to 800 rubles, delivery times range from tomorrow to next month, the location of offices and stores is such that even depressed people begin to feel depressed.
I gathered my strength for about a month. Then I gave up and ordered from the Chip-and-Dip boutique, but through their website. This way I saved on seeds: if I’m not mistaken, the minimum batch of 20 resistors cost almost less than this one unfortunate resistor in an offline store. At the same time, I found out that SOL16 is much, no, MUCH smaller than I thought. And you can’t just solder it into the canopy.
I was almost upset, but decided to still look for some solution to the problem. Found in the same boutique. These are ready-made adapter scarves, where the SOL16 cockroach suddenly spreads out onto platforms with a quite reasonable 2.5 mm pitch. To celebrate, I bought three of them. I can’t imagine why I need them, it’s all a toad.
. cockroach on the circuit board
The rest of the details, however, were soldered externally. And I foolishly soldered the plugs, like on an Arduino. I thought that I would connect through sockets, for simplicity. However, the reality turned out to be more severe, and in the end we had to wrap the plugs, and the entire board in general, with electrical tape. There is another architectural problem: the electrical tape is white.
. I connected to the HLK-RM04 via plugs (2 mm pitch). It turned out that this was correct, otherwise I would have been tormented by soldering and desoldering: after all, during debugging you need to disconnect from the module to free up the controller port
Surprisingly (I'm always surprised when something that comes out of my hands works), but the finished board, connected to both the scales and the Arduino, began to produce adequate results. So now I had all the components of the scale in my hands: a scale with a voltage converter and a controller with a communication unit. Therefore, I discarded pathos and called the first version of the program alpha. As it turned out, it was not in vain.
. almost beta: alpha used an LED on the controller board
In principle, Alpha worked well as long as the controller was connected to the computer (at this time I used either Mega or Pro Mini, but without HLK-RM04, due to the above-mentioned reason for the lack of serial ports).
However, when switching to autonomous power supply, there was a feeling that the whole design had gone crazy. A little investigation showed that I was again faced with a problem familiar from the Automatic Light and Music ASIM-AU-2-6. Namely, constant fluctuations in values when reading the analog pin of the controller, which I associate with the pulsed nature of the power supply. You can admire these same fluctuations at rest
05/17/2014 23:55:51 user 28 05/17/2014 23:56:03 user 21 05/17/2014 23:56:28 user 11 05/17/2014 23:56:41 user 58 17.05 .2014 23:56:53 user 10 05/17/2014 23:57:05 user 22 05/17/2014 23:57:18 user 30 05/17/2014 23:57:30 user 26 05/17/2014 23:57:42 user 9 17.05 .2014 23:57:55 user 22 05/17/2014 23:58:07 user 28 05/17/2014 23:58:20 user 22 05/17/2014 23:58:32 user 29 05/17/2014 23:58:45 user 13 17.05 .2014 23:58:57 user 26 05/17/2014 23:59:10 user 22 05/17/2014 23:59:22 user 44 05/17/2014 23:59:34 user 22 05/17/2014 23:59:47 user 58 17.05 .2014 23:59:59 user 13 05/18/2014 0:00:11 user 29 05/18/2014 0:00:24 user 14 05/18/2014 0:00:36 user 51 05/18/2014 0:00:49 user 22 18.05 .2014 0:01:01 user 11 05/18/2014 0:01:14 user 30 05/18/2014 0:01:26 user 27 05/18/2014 0:01:38 user 9 05/18/2014 0:01:51 user 29 05/18 .2014 0:02:03 user 28 05/18/2014 0:02:16 user 9 05/18/2014 0:02:41 user 22 05/18/2014 0:02:53 user 8 05/18/2014 0:03:06 user 28 18.05 .2014 0:03:18 user 27 05/18/2014 0:03:30 user 22 05/18/2014 0:03:43 user 27 05/18/2014 0:03:55 user 31 05/18/2014 0:04:07 user 22 18.05 .2014 0:04:20 user 28 05/18/2014 0:04:32 user 22 05/18/2014 0:04:45 user 10 05/18/2014 0:04:57 user 24 05/18/2014 0:05:09 user 27 18.05 .2014 0:05:22 user 22 05/18/2014 0:05:34 user 27 05/18/2014 0:05:47 user 23 05/18/2014 0:05:59 user 22 05/18/2014 0:06:12 user 14 18.05 .2014 0:06:24 user 28 05/18/2014 0:06:36 user 59 05/18/2014 0:06:49 user 55 05/18/2014 0:07:01 user 27 05/18/2014 0:07:14 user 58 05/18 .2014 0:07:26 user 27 05/18/2014 0:07:38 user 22 05/18/2014 0:07:51 user 24 05/18/2014 0:08:03 user 28 05/18/2014 0:08:16 user 57 18.05 .2014 0:08:28 user 28 05/18/2014 0:08:53 user 28 05/18/2014 0:09:05 user 28 05/18/2014 0:09:18 user 24 05/18/2014 0:09:30 user 23 18.05 .2014 0:09:43 user 8 05/18/2014 0:09:55 user 28 05/18/2014 0:10:07 user 13 05/18/2014 0:10:20 user 22 05/18/2014 0:10:32 user 36 05/18 .2014 0:10:45 user 30 05/18/2014 0:10:57 user 26 05/18/2014 0:11:10 user 59 05/18/2014 0:11:22 user 57 05/18/2014 0:11:34 user 29 18.05 .2014 0:11:47 user 27 05/18/2014 0:11:59 user 27 05/18/2014 0:12:11 user 28 05/18/2014 0:12:24 user 27 05/18/2014 0:12:36 user 17 18.05 .2014 0:12:49 user 11 05/18/2014 0:13:01 user 21 05/18/2014 0:13:14 user 53 05/18/2014 0:13:26 user 54 05/18/2014 0:13:38 user 56
Exploring the Arduino.cc forum showed that I am not the only one so happy. One of the recommended methods to combat this effect is to pull the analog pin to ground and use wires of a minimum length. But my wires were no longer than 10 centimeters, and the analog pin, as is easy to see from the diagram, was already pulled to the ground. Therefore, I had to turn to a proven method: first, I added a certain threshold weight value to the program, which was obviously larger than the observed fluctuations. And, secondly, since the fluctuations were too noticeable, I calculated the weight as the average of a sufficiently large, although not infinitely large, number of measurements. More precisely, I average a thousand measurements, which more or less brings fluctuations (and values in general) to more or less reasonable limits.
But this turned out to be not the only problem. I was so used to relying on other people’s diagrams that at first I didn’t understand why the scales at some point began to show the same value. And then it became clear: this is the ceiling of dimensions. I'm not a genius, so I spent quite a lot of time both figuring out this simple fact and solving the problem.
The essence of the problem is that the gain of INA125 is set by resistor R1 according to the formula:
Thus, according to the authors of the circuit, the gain is set at 1500 (1542.5, to be more precise). Apparently, it was selected for a specific instance of scales, which I did not think about. For my scales, judging by the results, this turned out to be too much. So I added another 39 ohm resistor and got a slightly different result: the gain was around 773.
It should be remembered that, based on the same INA125 datasheet, the voltage at the amplifier output does not exceed 3.8V. From here we get the maximum reading value of the Arduino analog pin: (3.8 * 1024)/5 = 778. At this point, I also managed to use the scales, so I found out that the ratio between the weight and the value on the analog pin is approximately 7.25.
Summary: with the current gain, the theoretical measurement limit of the scale is about 107 kg, which is more than satisfactory for me. But if something bothers me, then I’ll probably change the resistor and get closer to the operational limit of 150 kg. And a post-recap for those curious. I calibrated the scales using other floor scales. It is clear that the accuracy is there, plus or minus the slippers, well, it’s the same with the original.
I did not use any reference scales. Just three measurements on some, three measurements on others. And we divide the arithmetic mean of each instance by each other. Hence the coefficient between what the Arduino receives and the actual weight.
One for all
So, I had calibrated scales and pieces of hardware capable of transmitting readings... somewhere, in general, capable.
There is very little left: to write a working program with a multi-user, multi-view mode and, if possible, a more or less convenient way to switch views and users. The explanation is simple. I wanted to get identifiable weighing results for myself, my wife, and for guests to play with without mixing their results with mine. And sometimes I would like to weigh our cats, and with a minimum of effort. You know how cats are weighed, right? You pick up the cat, step on the scale, remember the weight, let go of the cat, step on the scale again. Then you subtract the smaller from the larger.
In general, word for word, two species (people and cats) and eight users were identified. Therefore, I remind you that more or less convenient control was extremely desirable.
I abandoned the idea of using a native LCD display almost as soon as I read about reverse engineering the protocol for communicating with it. And I managed to kill the 0.96-inch OLED screen I bought for the occasion somewhere during the experiments (probably it was still 3.3V, and not 5V, as the Chinese promised). And to be honest, I screwed up terribly: in the photo the display seemed quite large, but in fact it turned out to be tiny - from the height of growth, nothing would have been visible anyway. In addition, even at the testing stage I found out that the display library and the WiFiRM04 library do not get along together. Obviously, the Pro Mini has too little memory for both of them.
Therefore, the only output means left were tweeters and LEDs. Lyrical digression: now a segment LED display is on its way to me, which I’ll probably attach to the scales, but maybe not - I really like how it turned out. I planned to use the LED to indicate the readiness of the scales for operation, and the beeper to announce the current status, successful sending of readings and errors.
As for input means, I wanted to get by with the absolute minimum. Just imagine: you are standing on the scales, and there are some other buttons, switches - what is this for? At the same time, I didn’t want to be chained to my smartphone, assuming that the desired setting would be activated by the smartphone. That is, ideally, according to my idea, the control should be such that even in the middle of the night with your eyes closed you could weigh yourself without any questions.
And then I thought: “Hey, dude, you have four beautiful load cells under your feet (okay, one is synthetic). Why not use them as an almighty button? I’ll be honest: half of the personality (the active one) was delighted with such an elegant solution to the problem; the second half (lazy) is in deep melancholy. But the idea captivated me, and after some time of trial and error, the following control concept emerged: switching modes and users by pressing on the scale table, and indicating the current status by sound signals.
In general, the “menu” is something like this:
1) The first press after weighing or immediately after turning on reports the current status; 2) Subsequent single clicks switch users within the category; 3) Pressing twice switches modes (people/cats); 4) Pressing it three times resets the settings to default values.
The sound indication is also quite simple. One long beep means people, two long beeps mean cats. The next number of short signals is the user number in the queue. In this version of Morse code, for example, dash-dot-dot means weighing person number two; and dash-dash-dot is cat number one.
Of course, it is enough to press the scales with the toe of your foot (and there is no need to crawl on your hands and knees). And, of course, the time intervals for clicks and audio signals are selected so that it is comfortable for control and perception. Those. There is also acoustic feedback of pressing, and a sufficient pause to have time to press several times in a row during the timeout allotted for the command.
The only thing left is to somehow find out your own weight. And for this I used cunning Internet services, and therefore the weight is announced by the nearest Android device (tablet or smartphone). In theory, it can be crossed with iOS, but I have nothing to test it on. The delay is extremely small, and taking into account the fact that these are actually scales that should not work without the Internet, the concept is quite viable.
Is there life after HTTPS or how to make the scales talk
I immediately planned to post the measurement results on the Internet.
Just as I do with the current climate at home and around it. But for a number of reasons, my beloved People’s Monitoring was not suitable for this purpose. But Google tables were quite suitable, but they required connection via HTTPS, which Arduino cannot do in any way - neither with a native network shield, nor, especially, with a non-native one. But it turned out that there is a very attractive solution - the Pushing Box service, this is all a special notification just for the Internet of things, if you believe the description. And she, the smart girl, takes all this SSL magic upon herself. And studying the same Google led to a recipe for crossing Arduino and Google spreadsheets, and here’s another important thing about the Submit button.
In a nutshell: create a form on Google, create an account on Pushing Box. Then in Pushing Box:
1) Add a Google form as a CustomURL service, where the URL should be like:
https://docs.google.com/forms/d/ID OF YOUR FORM/formResponse
2) Add a script that looks, for example, like this:
?entry.11234123=$status$&&submit=Submit
Here entry.11234123 is the name of the form field, which can be viewed in its source code. Multiple fields are combined using & as usual.
3) From the Arduino code (or whatever you have), data is added via HTTP POST/GET of the following form:
https://api.pushingbox.com/pushingbox?devid=v0123456789ABCDE&status=open
Here devid is the identifier issued by the Pushing Box, “open” is the transmitted value.
Returning to the announcement of the results. This is done by a combination of Pushing Box and Newtifry, which exists in two forms: the Pushing Box service and an app for Android (there is a similar service for iOS).
Moreover, I created several scenarios at once - one for each human user and one common for cats. Just so that later you can flexibly configure whose smartphone and when the weight is announced.
As a result, my HTTP request to Pushing Box looks something like this:
https://api.pushingbox.com/pushingbox?devid=v0123456789ABCDE&name=name&name1=username&weight=99.9
The line is hard-won. It turned out that Newtifry perfectly conveys the Cyrillic alphabet TTS Android, but the same Cyrillic alphabet turns into crap in the Google sheet. Therefore, I send the same name to Pushing Box twice: in Cyrillic and Latin. The first is voiced by the smartphone via Newtifry, and the second is sent to the table via CustomURL.
By the way, Google does the timestamp automatically, so it doesn’t give me a headache:
And after some thought and consultation with the author of the People's Monitoring, I finally connected it to the scales. Typically, through the same Pushing Box, which eventually became a kind of data hub-relay.
Everything turned out to be very simple. Let's assume that you already have accounts on Pushig Box and People's Monitoring. Then first go to Pushing Box and add another CustomURL to the services:
https://narodmon.ru/post.php
Method: GET
Then we go to the script and create a new one or add a new action to an existing one - the newly created CustomURL. And in the Data line we add the rest of the request:
?ID=0123456789AB&AB9876543210=$weight$
Here, in terms of People's Monitoring, ID is your device identifier, and the number following it is the sensor identifier. Accordingly, sensors can be assigned to all available users. However, in the context of my implementation of the scale, one sensor is equivalent to one group of users, of which there are only four: one for each person and one for all the cats (yes, discrimination, but you can fix it if you want).
Well, $weight$ is the weight you know well, which the Pushing Box receives from the scales and sends wherever it is told.
Design
In my configuration, to assemble the scales you will need:
1) Scales with 4 load cells. As far as I understand, this is a fairly popular design now, but I can’t guarantee that all of them are made this way. An important point: the clearance of the scales should be such, or the scales should have such a body that all the electronics fit there. Otherwise you will have to put the box next to it.
2) Serial-Wi-Fi converter HLK-RM04. For example.
3) Instrumental amplifier INA125 in any housing that you can figure out.
4) Body kit for the amplifier (capacitor 100 µF, 100 nf, resistor 1 kOhm, gain adjustment resistor).
5) LED
6) Squeaker. I have a piezoceramic one, so it connects directly to the controller (quite high resistance). For the speakers you will have to make some kind of amplifier, so decide for yourself what you like best.
7) Arduino Pro Mini. For example.
Wires, 5V power supply and other soldering irons.
The sketch of the circuit looks like this:
Necessary comments. I took the first drawing tool I came across, but it only had an Arduino nano in its base. For our purposes there is no difference, but keep in mind that my version is a Pro Mini.
The resistor value depends on the LED you get.
You were lucky enough to see a typical INA125 connection diagram above. There you only need to select resistor R1 to match your scales. This, unfortunately, is only by experience.
The tweeter is piezoceramic. DO NOT connect regular speakers directly to the controller. You will kill, and not the speaker.
Surprisingly, but true - everything I needed miraculously fit into the original scale case. Unless I barbarically removed even the slightest hint of a battery compartment from there. And I left the display, even if it’s not working, - it perfectly masks the ugliness inside.
Algorithm
To be honest, this is the first time I'm drawing an algorithm. Besides, after everything is done. But I drew and saw at least one thing that can be optimized in the next version of the program.
With code, the situation is similar to a resistor for gain. You will need to select three values:
1) tare - “empty” weight of the scale when turned on 2) treshold - deviation from the empty weight (if any) 3) relationship between the value at the analog input of the Arduino and the weight. Current - 7.25, set in the sendWeight procedure section
Secret code
#include // for PROGMEM #include // https://playground.arduino.cc//Code/SimpleTimer #include char ssid[] = "YOUR SSID"; // your network SSID (name) char pass[] = “YOUR NETWORK KEY”; // your network password (use for WPA, or use as key for WEP) int keyIndex = 0; // your network key Index number (needed only for WEP) int status = WL_IDLE_STATUS; char server[] = "api.pushingbox.com"; // name address for Google (using DNS) WiFiRM04Client client; #define ledPin 8 #define weightPin A0 #define tonePin 10 #define weightPowerPin 9 byte tare = 28; // idle weight byte treshold = 30; // weight sensor value treshold int i; int scaleTimeoutID; byte nameSelectorCount = 0; // counter for name selection byte stepCount = 0; byte human = 0; // default setting byte cat = 0; // default setting float wt; long weight, gross, netto; long prevWeight = 0; boolean idleWeight = false; boolean clearToSend = false; boolean ishuman = true; boolean nameSelect = false; boolean stepCounting = false; boolean stepTimeout = false; boolean firstStep = true; // strings in PROGMEM prog_char statusString_0[] PROGMEM = “devid1&name=”; // User 1 prog_char statusString_1[] PROGMEM = “devid2&name=”; // User 2 prog_char statusString_2[] PROGMEM = “devid3&name=”; // User 3 prog_char statusString_3[] PROGMEM = “devid4&name=”; // Cats prog_char statusString_4[] PROGMEM = "User 1"; // cyrillic names prog_char statusString_5[] PROGMEM = “User 2”; prog_char statusString_6[] PROGMEM = "User 3"; prog_char statusString_7[] PROGMEM = "Cat 1"; prog_char statusString_8[] PROGMEM = "Cat 2"; prog_char statusString_9[] PROGMEM = "Cat 3"; prog_char statusString_10[] PROGMEM = "Cat 4"; prog_char statusString_11[] PROGMEM = "Cat 5"; prog_char statusString_12[] PROGMEM = "&name1=User 1"; // latin names for Google Spreadsheet prog_char statusString_13[] PROGMEM = "&name1=User 2"; prog_char statusString_14[] PROGMEM = "&name1=User 3"; prog_char statusString_15[] PROGMEM = "&name1=Cat 1"; prog_char statusString_16[] PROGMEM = "&name1=Cat 2"; prog_char statusString_17[] PROGMEM = "&name1=Cat 3"; prog_char statusString_18[] PROGMEM = "&name1=Cat 4"; prog_char statusString_19[] PROGMEM = “&name1=Cat 5″; prog_char statusString_20[] PROGMEM = "HTTP/1.1"; prog_char statusString_21[] PROGMEM = "Host: api.pushingbox.com"; prog_char statusString_22[] PROGMEM = "User-Agent: Arduino"; // table of pointers to strings PROGMEM const char *statusString[] = { statusString_0, statusString_1, statusString_2, statusString_3, statusString_4, statusString_5, statusString_6, statusString_7, statusString_8, statusString_9, statusString_10, statusString_11, statusString_12, statusString_13, statusString_14, statusString_1 5, statusString_16, statusString_17 , statusString_18, statusString_19, statusString_20, statusString_21, statusString_22}; char statusStringBuf[40]; // buffer for reading status lines SimpleTimer scaleTime; void setup() { Serial.begin(9600); pinMode(weightPowerPin, OUTPUT); digitalWrite(weightPowerPin, HIGH); pinMode(weightPin, INPUT); // weight sensor pinMode(ledPin, OUTPUT); // led Power pinMode(7, OUTPUT); digitalWrite(7, LOW); // led GND // check for the presence of the shield: if (WiFi.status() == WL_NO_SHIELD) { while(true) { } } // attempt to connect to Wifi network: while (status != WL_CONNECTED) { // Connect to WPA/WPA2 network. Change this line if using open or WEP network: status = WiFi.begin(ssid, pass); // wait 10 seconds for connection: delay(10000); } } void loop() { scaleTime.run(); averageWeight(); // CHECK FOR IDLE WEIGHT if ((idleWeight == false) && (weight < (tare+treshold))) { // check if there is still somebody on table idleWeight = true; // set flag to enable measurements in case there is nobody on table digitalWrite(ledPin, HIGH); // turn on ready led } // DETECT STEP-ON if ((idleWeight == true) && (weight > (tare+treshold))) { // check if there is still somebody on table idleWeight = false; digitalWrite(ledPin, LOW); // turn on ready led tone(tonePin, 450, 100); // audio confirmation for step-on if (stepCounting == false) { scaleTime.setTimeout(250, stepDetector); stepCounting = true; } } // READY TO SEND if (clearToSend == true) { // check for upload permission sendWeight(); // upload } } // Detect step-on void stepDetector() { averageWeight(); if (weight < (tare+treshold)) { // step detected if (firstStep == false) { // do not count first step stepCount = stepCount + 1; // count step-ons: only announce current name after first step-on; switch names on consecutive step-ons. if (stepTimeout == false) { // set timeout to confirm last step: ie if no one steps on table for specified time, scales must switch to stby or weighing mode scaleTimeoutID = scaleTime.setTimeout(1500, stepTotal); stepTimeout = true; } // tone(tonePin, 450, 100); // audio confirmation for step-on if (stepTimeout == true) { scaleTime.restartTimer(scaleTimeoutID); } } else { statusNotify(); // announce current status stepCount = 0; } firstStep = false; } else { if (ishuman == true) { getWeight(); netto = weight; } else { getWeight(); if (clearToSend == true) { gross = weight; tone(tonePin, 550, 800); delay(3000); getWeight(); if (brutto > weight) { netto = gross - weight; } else { netto = weight - gross; } netto = netto+29; } } } stepCounting = false; } void stepTotal() { // tone(tonePin, 550, 1000); if (stepCount == 1) { if (ishuman == true) { human = human+1; if (human > 2) { human = 0; } } else { cat = cat+1; if (cat > 4) { cat = 0; } } } if (stepCount == 2) { if (ishuman == true) { ishuman = false; } else { ishuman = true; } } if (stepCount > 2) { ishuman = true; human = 0; cat = 0; firstStep = true; } delay(1500); statusNotify(); stepTimeout = false; stepCount = 0; } void statusNotify() { if (ishuman == true) { tone(tonePin, 550, 600); delay(800); makeSound(human+1, 300); } else { tone(tonePin, 550, 600); delay(1000); tone(tonePin, 550, 600); delay(1000); makeSound(cat+1, 300); } } // MEASURE WEIGHT void getWeight() { averageWeight(); if (weight > (tare+treshold)) { // object on table still heavier than idle weight digitalWrite(ledPin, LOW); // turn off ready led delay(3000); // let everything settle averageWeight(); prevWeight = weight; // save initial weight for future reference averageWeight(); if ((((prevWeight - treshold) < weight) && (weight < (prevWeight + treshold))) && prevWeight > (tare)) { // check if measurement average consistent with initial load (ensure object is on table) clearToSend = true; // set flag for upload } else { makeSound(2, 300); // measurement error clearToSend = false; // prevent upload idleWeight = false; // set flag to grant subsequent measurements } } } // HTTP SENDER void sendWeight() { netto = netto - tare; wt = (float)netto / 7.25; if (client.connect(server, 80)) { client.print("GET /pushingbox?devid="); if (ishuman == true) { strcpy_P(statusStringBuf, (char*)pgm_read_word(&(statusString[human]))); // devid client.print(statusStringBuf); strcpy_P(statusStringBuf, (char*)pgm_read_word(&(statusString[human+4]))); // name — name for audio notification client.print(statusStringBuf); strcpy_P(statusStringBuf, (char*)pgm_read_word(&(statusString[human+12]))); // name1 — name for Google client.print(statusStringBuf); } else { strcpy_P(statusStringBuf, (char*)pgm_read_word(&(statusString[3]))); // devid client.print(statusStringBuf); strcpy_P(statusStringBuf, (char*)pgm_read_word(&(statusString[cat+7]))); // name — name for audio notification client.print(statusStringBuf); strcpy_P(statusStringBuf, (char*)pgm_read_word(&(statusString[cat+15]))); // name1 — name for Google client.print(statusStringBuf); } client.print("&weight="); client.print(wt); for (byte clientCounter=20; clientCounter<23; clientCounter++) { strcpy_P(statusStringBuf, (char*)pgm_read_word(&(statusString[clientCounter]))); client.println(statusStringBuf); } client.println(); client.stop(); makeSound(3, 300); // confirm upload } else { makeSound(2, 300); // upload error } clearToSend = false; // clear flag firstStep = true; } // BEEPER void makeSound(byte count, byte duration) { for (i = 0; i<999; i++) { weight = weight+analogRead(weightPin); // capture measurements } weight = (weight/1000); // measurement average }
I guess that's all I can tell you. One last thing: I am sure that there are wonderful people here, technically literate and brilliant in terms of ideas. I believe you can do better. Do it. But I did what I did, and you can’t squeeze anything more out of me.
Oh yes, I almost forgot. Why with a power supply and not batteries? Firstly, and this is the most important thing, I never learned how to work with energy conservation. And, secondly, it turns out that the typical code for connecting to Wi-Fi with the WiFiRM04 library takes up to half a minute, so if you turn it on every time, you will have to wait a long time. Who would use such scales? And at the same time, the HLK-RM04 consumes a lot - 140 mA according to the datasheet in Only Wi-Fi mode.
Therefore, a stationary power source turned out to be the most reasonable.
PS If you see incriminating evidence somewhere, please tell me - I’ll spell it out with asterisks or something.
Weights for homemade scales
Kettlebells can be purchased at the store. Tablets that have a very clear weight indicated on the package can also serve as weights. In addition, you can use ordinary coins as weights, establishing their exact weight experimentally.
Need to measure out the right amount of something once or twice? Because of this, you shouldn’t run to the store and spend extra money on accurate scales. In such a situation, you can get by with a simple method of making homemade lever scales based on the same plastic bottle.
So, what you will need for work: a bottle; wooden skewer 30 cm long; threads; a pair of bottle caps; matches; paper corner.
Watch the video of the scale making process
The paper triangle serves as an indicator of the balance of the cups. At rest, the top of the triangle is installed opposite the thread, or rather on the same line with it. You can use pieces of plasticine to adjust the cup weights. After aligning the cups, you can do test weighings, focusing on the approximate weights of different things.