Идея создания электронных весов возникла сразу после желания приобрести Arduino. Я работал в сервисном центре по ремонту электронных весов Волгоградского Завода Весоизмерительной Техники. Поэтому устройство и принцип работы электронных весов всевозможных типов мне известен.
Большинство электронных весов строятся вокруг тензометрических датчиков. Если грубо, то тензодатчик это брусок металла, к которому приклеен тензорезистор (такой резистор, который меняет свои показания в зависимости от деформации). Получается, что если мы прикладываем усилия на металлический брусок – он слегка деформируется, а в след за ним и деформируется тензорезистор. Убираем нагрузку и благодаря свойствам металла, металлический брусок возвращается в исходное состояние. То есть деформация бруска не является необратимой. Именно по этой причине тензодатчики имеют различный номинал. К примеру маленький датчик, рассчитанный на 1кг будет деформировать при прикладывании к нему нагрузки в несколько десятых грамма и фиксировать показания. Датчик же, рассчитанный на 10 тонн эту нагрузки никак не почувствует и показания не зафиксирует. Наоборот, если приложить к датчику нагрузку больше, чем указано в его номинале деформация датчика будет необратимой и тензорезистор может попросту сломаться. Поэтому не стоит на весы, на которых указана величина НПВ (наибольший предел взвешивания) 30 кг пытаться положить 50 кг, вы попросту сломаете весы.
Если посмотреть немного глубже и разобрать типовые электронные весы, скажем, на 15 кг, чаще всего, мы можем увидеть датчик с номиналом в 30 кг. Производитель обычно устанавливает более крепкий датчик, чтобы предотвратить частые поломки при взвешивании грузов близкими к пределу взвешиванию. Причиной этому является то, что при установке груза на весы это происходит не плавно и есть небольшой удар. При этом нагрузка может в несколько раз превышать номинал датчика. Часто это имеет кратковременный характер и обычно не портит весы.
Еще один совет – не бросайте груз на весы. Кладите его плавно. Чтобы понять на сколько велика разница в нагрузке – положите руку на стол, возьмите небольшой предмет, например, стеклянный стакан, и положите плавно его на руку. Вы ничего не почувствует, стакан слишком легкий, чтобы нанести какой-либо вред. Но если вы поднимите стакан на высоту 10 см и отпустите его – во время падения он ударит вас с приличной силой. Это же и происходит с датчиком. Вся нагрузка приходится на него. Это самый уязвимый узел в весах.
Теперь немного поговорим о том, что необходимо для построения весов самостоятельно.
Как правило электронные весы состоят из следующих компонентов:
- источник питания. Весы электронные, поэтому необходимо питать все электронные компоненты.
- тензодатчик. Необходим для измерения нагрузки.
- АЦП. Аналого-цифровой преобразователь. Это небольшая микросхема, которая преобразует значение сопротивления тензорезистора в цифровое значение.
- плата управления. В нашем случае – это Arduino. Необходим для обработки и преобразования цифрового сигнала в удобные для восприятия значения.
- дисплей. Необходим для вывода полученной информации.
- кнопки управления. Позволяют производить различные манипуляции с весами. Например, включать и выключать подсветку экрана, обнулять значения груза, переводить весы в режим калибровки и так далее.
- корпус. Все вышеперечисленное должно находится в корпусе для удобства взвешивания.
Стоит отметить еще один важный компонент, который нам понадобится в построении весов – это калибровочные гири. Без них процесс калибровки возможен, но он неудобный и очень неточный. Также стоит немного сказать про класс точности весов. Не все весы одинаково точные, поэтому они разделены на классы. Чем ниже класс, тем выше требования к точности весов. Это относится к лабораторным весам, которые способны измерять значения до 1 тысячной грамма. Такие весы в домашних условиях не изготовить. К торговым весам обычно применяют не такие жесткие правила. Им обычно присваивается 3 класс точности. Для таких весов существует очень простая формула - Дискретность = НПВ (в граммах) / 3000. Дискретность – это шаг с которым весы могут взвешивать, НПВ – это максимальная нагрузка. Поэтому если вы видите весы на 30 кг в магазине, или весы на 300кг в больнице или фитнес клубе или на рынке, вы с легкостью может определить их точность измерения, а именно тот шаг, с которым будут меняться показания. Для весов в 30 кг. Делим на 30000 (это наш номинал весов в граммах) на 3000 и получаем 10 грамм. Таким образом подобные весы могут взвесит груз, с точностью 10 грамм. Например, 3.01 кг, 14.45 кг и так далее. Надеюсь тут нет ничего сложного. Эта формула работают для весов любого номинала. От 300 грамм до 300 тонн или даже больше. Все делим на 3000, если это весы 3-го класса точности.
Из вышеперечисленных компонентов не все являются обязательным, но как минимум полезными. Они точно присутствуют в обычных бытовых, кухонных или торговых весах.