DIY набор - сделай сам электронные весы на 3 кг.


Всем доброго времени суток!
Предлагаю на Ваш суд обзор на Kit набор для сборки электронных весов.

Как обычно набор приехал в простых пакетах, к сожалению, авторы набора вообще не озаботились выпуском хоть какой-то инструкции, так что придется собирать, основываясь на подписях на плате и мануалах на модули из сети.

Правда стоит отметить, что отсутствие инструкции частично компенсируется пакетом файлов который можно скачать со страницы заказ, тут есть и принципиальная схема, и печатная плата и даже полный исходный код прошивки.
В роли основного датчика выступает тензометрический датчик веса.

О тензодатчике из Википедии
Тензодатчик; от лат. tensus — напряжённый — датчик, преобразующий величину деформации в удобный для измерения сигнал (обычно электрический), основной компонент тензометра (прибора для измерения деформаций). Существует множество способов измерения деформаций: тензорезистивный, пьезоэлектрический, оптико-поляризационный, пьезорезистивный, волоконно-оптический, или простым считыванием показаний с линейки механического тензодатчика. Среди электронных тензодатчиков наибольшее распространение получили тензорезистивные датчики
Тензорезистивный датчик обычно представляет собой специальную упругую конструкцию с закреплённым на ней тензорезистором и другими вспомогательными деталями. После калибровки, по изменению сопротивления тензорезистора можно вычислить степень деформации, которая будет пропорциональна силе, приложенной к конструкции.
Существуют разные типы датчиков:
  • датчики силы (измеряет усилия и нагрузки)
  • датчики давления (измерение давления в различных средах)
  • акселерометры (датчик ускорения)
  • датчики перемещения
  • датчики крутящего момента
Наиболее типичным применением тензодатчиков являются весы. В зависимости от конструкции грузоприёмной платформы, применяются тензодатчики различного типа:
  • консольные
  • s-образные
  • «шайба»
  • «бочка»
Конструкция резистивного тензодатчика представляет собой упругий элемент, на котором зафиксирован тензорезистор. Под действием силы (веса груза) происходит деформация упругого элемента вместе с тензорезистором. В результате изменения сопротивления тензорезистора, можно судить о силе воздействия на датчик, а, следовательно, и о весе груза. Принцип измерения веса при помощи тензодатчиков основан на уравновешивании массы взвешиваемого груза с упругой механической силой тензодатчиков и последующего преобразования этой силы в электрический сигнал для последующей обработки.
.


На торце датчика наклеен стикер с указанием максимального веса и направлением его приложения для правильного измерения.

Датчик используется в паре с двухканальным модулем тензодатчиков HX711, по сути HX711 это двух канальный 24 битный АЦП предназначенный для использования в паре с тензодатчиками.

Спецификация
  • Дифференциальный вход с напряжением: ± 40 мВ
  • Точность преобразования: 24 бит
  • Частота обновления: 80 Гц
  • Рабочее напряжение: 5 В постоянного тока
  • Рабочий ток: <10 мА
  • Размер: 38 x 21 x 10 мм
Обозначение контактов платы: E+, E- (питание тензодатчиков); A-, A+ (канал A); B-, B+ (канал B); разъем, обозначенный на плате JP2, используется для подключения к контроллеру и для подачи питания. Обозначение контактов: VCC (напряжение питания), GND (общий контакт), DT (данные), SCK (синхронизация) – интерфейс IIC (I2C).
Схема АЦП HX711:

К сожалению описания, какой провод датчика, за какой канал отвечает, нет, так что придется ориентироваться на данные из интернета, а там соберем, посмотрим.

В первый раз собрал не правильно, подключил к А+ белый провод (нашел такой вариант в интернете), а зеленый соответственно к А-. Весы работали, но давить на датчик нужно было в сторону противоположную стрелке на датчике.
Сама плата будущих весов.

Очень странно выглядит решение с расположением основного контроллера, помимо посадочного места под панель для контроллера есть еще два ряда отверстий назначение который непонятно. То ли для установки контроллера в другом корпусе, то ли для его чего-то.

Собственно сам контроллер STC89c52BC.

Небольшой набор из конденсаторов, кварца и переменного резистора который в будущем будет отвечать за контрастность дисплея.

Микросхема памяти 24c16n. Как я понял из исходного кода прошивки микросхема нужна исключительно для хранения калибровочной поправки, которая прибавляется, или вычитается из показаний датчика при взвешивании.

Небольшое количество кнопок, переключателей, пара резисторов и резисторная сборка.

Набор из разъемов с их помощью предлагается собрать вмести три платы весов.

Ну и дисплей для отображения информации, это давно всем известный 1602А, две строки по 16 символов.

Ну и акриловый корпус, куда же без него.

Начнем сборку.
Вначале, как всегда, самые мелкие элементы.

Теперь панели для микросхем, и резисторную сборку, последнюю пришлось немного пригнуть иначе потом было бы невозможно установить контроллер.


Теперь кнопки и оставшиеся детали.

А теперь я делаю первую большую ошибку, гнездо для подключения контроллера припаиваю и отгибаю параллельно плате. Почему именно так? Посмотрев картинки на сайте, мне показалось, что именно так должно все собираться.


А на плату HX711 припаиваю изогнутые контакты. Потом все это придется переделывать, но об этом я еще не знаю :)

Освободил корпус от защиты, при резке одну панель немного прожарили, бумага в этом месте сгорела, а панель пожелтела немного.

В процессе сборки выяснилось, что мой первоначальный вариант с креплением платы HX711 просто физически не влезает в корпус, пришлось выпаивать разъемы и переделывать все по-другому.
Собственно как нужно было правильно припаивать ножки к плате HX711. Разъем на основной плате тоже пришлось переделать, он ставится просто вертикально.

Пока выпаивал разъем с АЦП и запаивал новый, умудрился вырвать провода с тензодатчика. Думал на это обзор и закончится, но зачистив защитный резиновый компаунд, удалось подпаять провода назад и на удивление все заработало :)

После восстановления датчика от греха подальше приклеил провода к бруску суперклеем. Думаю примерно так, стоило поступить сразу, потому как провода тонкие и хлипкие.
Ну и наконец, весы в сборе.

Вид снизу.

Первое включение, экран на весах инверсионный, он плохо дружит с внешней подсветкой, так что за качество фото прошу прощения.

После включения на экране в первой строке всегда отображается надпись Welcome to use!
Во второй строке, слева отображается вес, справа коэффициент калибровки датчика.
Для начала код из прошивки:
:

void Get_Weight ()
{
        Weight_Shiwu = HX711_Read ();
        Weight_Shiwu = Weight_Shiwu - Weight_Maopi; // Получить вес нетто
        If (Weight_Shiwu> 0)
            {
             Weight_Shiwu = (unsigned int) ((float) Weight_Shiwu / GapValue); // вычислить фактический вес объекта
                  If (Weight_Shiwu> 3000) // Сигнализация избыточного веса
                      {
                      Flag_ERROR = 1;
                      }
                     else
                     {
                     Flag_ERROR = 0;
                     }
             }
else
     {
     Weight_Shiwu = 0;
      // Flag_ERROR = 1; // загрузить сигнал тревоги
      }
}
void Get_Maopi()
{
	Weight_Maopi = HX711_Read();	
} 

GapValue — это и есть тот самый коэффициент, который нужно подобрать.
Механизм взвешивания следующий.
На вход АЦП поступает некое напряжение, которое меняется в зависимости от силы, приложенной к датчику. АЦП преобразует напряжение в число и передает его контроллеру. Так как датчик линейный то изменение напряжения на выходе с датчика пропорционально изменению веса, значит единственное что остается, подобрать такой коэффициент при делении на который получался бы значение веса.
Для подбора коэффициента используются две средние кнопки весов, в моем случае коэффициент получился равный 585. С таким коэффициентом удалось добиться точности ± 1 грамм и стабильных результатов.
Помимо кнопок для калибровки у весов есть еще две кнопки, крайняя левая отвечает за обнуление данных, такую операцию нужно проводить каждый раз после включения весов. Крайняя правая кнопка, судя по подписи, отвечает за перезагрузку, не совсем понял, что значит перезагрузка в понимании разработчика, при нажатии с экрана на некоторое время исчезают значения веса и коэффициента, потом все восстанавливается.


Видео сборки и настройки:


Небольшой вывод: если кратко, то неплохо, вполне себе интересный набор который можно собрать за вечер и получить рабочую вещь. И да я понимаю, что за эти деньги можно купить гораздо лучшие весы и не одни, но как писали в комментариях к таким обзорам основное его назначение это обучение и развлечение, а не получение конечного изделия как можно дешевле. В конце концов, тут как не крути ручная работа, а это всегда стоит дорого даже если и приходиться прилагать свои собственные руки.

Заранее приношу свои извинения за орфографию и грамматику текста, все допущенные ошибки сделаны не специально, а только по незнанию и в связи с несовершенством программ автоматической проверки текстов.

Товар предоставлен для написания обзора магазином. Обзор опубликован в соответствии с п.18 Правил сайта.
Планирую купить +10 Добавить в избранное +41 +56
+
avatar
  • SERG27
  • 15 апреля 2019, 09:53
+23
Наборы это хорошо. они развивают и позволяют достичь ЧСВ И ЧСУ… НО НЕ В 5 РАЗ ЖЕ ДОРОЖЕ готового изделия!!!
+
avatar
  • koticik
  • 15 апреля 2019, 09:54
-1
Увы Hand Made он такой. :)
+
avatar
0
позволяют достичь ЧСВ И ЧСУ
Причем один датчик- это технически неграмотное решение для весов. Или 4 датчика по углам, или на призмы ставить. Иначе никак не пройти стандартный тест весов- ставить груз по углам и в центре.
+
avatar
0
Смотря насколько далеко по углам груз ставить. Долгое время приходилось обслуживать промышленные весы и скажу одно — если правильно выбрана конструкция узла встройки, то все работает в заданном диапазоне погрешностей. Ну а если хочется конечно полный шоколад, то три или четыре или больше.
+
avatar
-1
Смотря насколько далеко по углам груз ставить.
Максимально в угол, лишь бы не упал.
в заданном диапазоне погрешностей.
Хорошая фраза. Я себе купил кухонные весы +-0.1грамм (в реале 0.3грамма). Пару лет такая точность не нужна была совершенно. Потом стал взвешивать автомобильную краску, и точности стало впритык. Ну и когда сел на диету, пришлось докупить весы +-0.01 грамм.
+
avatar
  • Vovan_a
  • 15 апреля 2019, 11:33
+10
Ну и когда сел на диету, пришлось докупить весы -0.01 грамм.
это колбасу так нужно дозировать?
+
avatar
+2
это колбасу так нужно дозировать?
Вес гантелей.
+
avatar
+2
они невкусные, но калорийные))
+
avatar
0
Тут вообще с измерениями будет полная жоппа. Тензодатчик уже должен быть с термостабилизирующими резисторами. Это раз. Ацп должен быть не 711, а минимум ads1231. У 711 ноль плывет как гавно крокодила по реке. Это два. И в третьих, если у Вас есть опыт разработки промышленных весов, то у Вас все получится, а если нет опыта, то нужно просто приобрести весы, которые будут удовлетворять Вашим запросам.
+
avatar
  • rx3apf
  • 15 апреля 2019, 14:53
0
Два вопроса — а что внутри готовых китайских бытовых весов и безменов? Ну понятно, что «клякса», а в ней-то что? Оно далеко ушло от 711?

И второй — в тех же готовых весах тензобалка с четырьмя проводами. И весы измеряют (безмены — точно) температуру. Зачем измерять, если нет датчика? Нужны ли дополнительные сенсоры, если уже все есть?

Если для бытовых целей — всего этого вполне достаточно, и не надо усложнять.
+
avatar
0
Два вопроса — а что внутри готовых китайских бытовых весов и безменов? Ну понятно, что «клякса», а в ней-то что? Оно далеко ушло от 711?
Все зависит от точности бытовых весов для точности 0.5 и 711 сгодиться, а для точности 0.1 и выше нужно что либо посерьезней.
И второй — в тех же готовых весах тензобалка с четырьмя проводами. И весы измеряют (безмены — точно) температуру. Зачем измерять, если нет датчика? Нужны ли дополнительные сенсоры, если уже все есть?
В промышленных весах температура для коррекции ркп и ухода нуля тензодатчика не используется. Это все уже заложено в паспортных данных самих тензодатчиков, а вот в простых дешманских весах допускается измерение температуры для коррекции ухода параметров датчика. Но это геморой и китайцы думаю это не используют.
+
avatar
+1
Причем — внезапно, 90% весов на одном тензодатчике и все проходят поверку. Особенно торговые до 15кг.
+
avatar
  • Booz
  • 15 апреля 2019, 09:53
+4
Теперь незнание русского языка принято сваливать на программы…
Напоминает извечную отмазку: Это не я, это компьютер ошибся.
+
avatar
+7
+
avatar
  • ded1971
  • 15 апреля 2019, 10:39
+3
п.18 же
+
avatar
  • deemon1
  • 15 апреля 2019, 12:44
+2
+
avatar
  • Aostspb
  • 18 апреля 2019, 13:55
0
Если на базе этого прибора сделать пенетрометр для дачного/индивидуального строительства — то совсем недорого получится. :) Добавить в набор метровую 12-ю арматуру и сравнить с промышленным образцом за 8000р.
+
avatar
0
Если на базе этого прибора сделать пенетрометр для дачного/индивидуального строительства
Измерять вязкость или плотность бетона или на даче плотность грунта измерять))))?
Добавить в набор метровую 12-ю арматуру и сравнить с промышленным образцом за 8000р.
Тут не совсем понял Вас. Поясните, если можно.
+
avatar
  • Aostspb
  • 19 апреля 2019, 11:23
0
Измерять вязкость или плотность бетона
Нет, там — конусом меряется.
или на даче плотность грунта измерять))))?
Таким методом оценивается прочность грунтовых слоев при строительстве, иными словами — качество трамбовки.

Вот, как-то так: www.forumhouse.ru/threads/217160/page-2#post-7303086
+
avatar
+3
STC89c52 господи аж прослезился 8) Этому семейству контроллеров лет наверное уже под 40, а они все еще используются. Бесконечные запасы похоже.
+
avatar
  • koticik
  • 15 апреля 2019, 10:05
0
Один из самых популярных контроллер в таких наборах.
+
avatar
  • kven
  • 15 апреля 2019, 10:06
0
похоже, их даже еще выпускают.
+
avatar
  • rx3apf
  • 15 апреля 2019, 11:09
+1
Самому прототипу от Intel — да.Но этот уже с flash, еще кое-что перепахано. Хотя по-прежнему 6/12 циклов, в отличии от более современных. Дешево, популярно — почему не использовать? Современные еще в DIP поискать придется.
+
avatar
0
Кусок колбасы бы что ли для наглядности взвесили…
+
avatar
  • koticik
  • 15 апреля 2019, 10:18
+1
В видосе есть кило риса
+
avatar
0
Спасибо к Гуглу не послали
+
avatar
  • koticik
  • 15 апреля 2019, 10:32
0
Добавил стоп кадр картинкой.
+
avatar
  • Corvair
  • 15 апреля 2019, 10:23
0
Избыточность индикации поражает, тут бы хватило 4-разрядного семисегментника. Порой приходится наблюдать устройства, выводящие пару цифр на точечную матрицу или наоборот с многоуровневыми меню на семисегментнике.
+
avatar
  • koticik
  • 15 апреля 2019, 10:34
0
Думаю тут дело в более простой разводке, меньшем числе деталей и копеечной цене дисплея.
Нет смысла городить семисегментку, транзисторы на ключи и прочее если за туже цену можно поставить дисплей.
+
avatar
-1
Нет смысла городить семисегментку, транзисторы на ключи
tm1637 :)
+
avatar
  • koticik
  • 15 апреля 2019, 11:33
0
Это не по спортивному. :)
И по цене думаю что этот LCD что такой модуль семисегментика будет одно и тоже.
+
avatar
0
MAX7219 + 2 семисегментника + 1 резистор + 1 конденсатор. В розницу около 1.5 бакса, оптом менее 1.
+
avatar
  • koticik
  • 16 апреля 2019, 22:29
0
Два семисегментника мало, нужно как минимум 3, а по хорошему четыре, можно конечно сделать что типа сдвига но то слишком неудобно.
А с другой стороны 1602A на али от 1.5$ c бесплатной доставкой :)
Замена с точки зрения цены не имеет смысла, если говорить о читаемости, яркости, размере цифр тогда да.
А с точки зрения простоты и цены по-моему этот дисплей как минимум на равных.
+
avatar
  • 0lympy
  • 15 апреля 2019, 11:23
0
Так «диайуай» же, думаю, планируется, что вы будете на базе этого набора что-то свое делать. Подобный дисплей стоит пару баксов в рознице — не намного дороже нескольких 7-сегментников. Ну а прошивочку уже можно и дописать, хоть тот же калькулятор калорий сделать — кнопки ведь тоже есть!
+
avatar
0
Хах, в таких китах самое сложное — это корпус собрать)
Помнится над часами вдвоем приходилось мучиться, чтобы эти болты не расползались)
+
avatar
  • koticik
  • 15 апреля 2019, 10:49
0
Мой выбор магнит, хороший магнит из винта очень помогает держать гайку пока винт вкручиваешь
+
avatar
0
хороший магнит из винта очень помогает держать гайку
А резьбовые заклепки не устраивают? Или просто резьбу в стенках нарезать?
+
avatar
  • koticik
  • 15 апреля 2019, 11:00
0
Тут корпус очень хитро сделан.
Панели собираются по принципу шип-паз, а потом что бы не распадались стягиваются винтами и вот эти самые винты сделаны по хитрому. В одной панели просверлено отверстие для винта, а во второй прорезь куда вставляется гайка и ее ничего не держит, только края прорези мешают ей проворачиваться. Вот эту самую гайку и нужно держать магнитом пока не накрутишь хоть пару оборотов на винт.
Вообщем конструкция простая, но очень неудобная в сборке.
+
avatar
0
Прикольно для обучения DIY, но то же самое можно сделать на tm1637 + attiny85.
+
avatar
0
Спасибо за обзор. Вполне нормальный DIY весов. Закажу. Функционал, конечно, никакой, но как законченное устройство для совместной сборки с сыном пойдёт.
На Али видел кто такой конструктор?
Цена может и высокая, но у нас дороже будет.
+
avatar
  • koticik
  • 15 апреля 2019, 11:35
+1
Да али есть набор на дуне, но блин денег за него хотят за 30 баксов.
+
avatar
  • rx3apf
  • 15 апреля 2019, 12:44
0
А, может быть, вообще обойтись без самого набора? Модули на HX711 на ali есть, стоят копейки. Тензобалки — в ассортименте.
+
avatar
  • koticik
  • 15 апреля 2019, 13:00
+1
обойтись без самого набора
Это зависит для чего вам это.
Если получить весы для определенных целей, то да проще без набора, хотя опять же если есть знания о том как написать прошивку развести хоть и маленькую но все таки схему.
А вот если вы хотите использовать это как и позиционируют китайцы для развития ребенка, то чаще лучше всего именно набор, в итоге получается готовое устройство с корпусом и хоть и малым но функционалам.
Я еще по себе помню когда только начинал учить программирование, пишешь пишешь эти сортировки, решаешь уравнения, массивы соняешь, а нафига это все непонятно.
А как только поменяли препода и новый показал как добавить к этому всему графику так стало интереснее и появилось желание и шарики по экрану гонять и часы написать. А там к самому пришло понимание что тут цикл нужен, тут массив. Но уже обучение по другому шло, не вот вам оператор сами решите нафига он нужен, а типа а я вот хочу сделать что бы шарик не по прямой по экрану ездил а по кругу как это сделать.
+
avatar
0
Опять STC…
Похоже китайцы окончательно реанимировали труп 89s и опять появился смысл указывать в резюме i51 семейство.
+
avatar
  • Zhuk72
  • 16 апреля 2019, 15:06
0
А что, хороший камень, вернее ядро. Может не именно в 89-й реализации, а в остальных серии 15F, 15W и их прочих современных клонах 51-го.
Да и не только STC, но и уважаемый Silicon Labs выпускает целую серию современных 51-х. Только в отличии от китайцев, они хорошо пишут мануалы. Китайский инглиш в мануалах STC порой вводит в ступор. Благо в самих чипах я неадекватного поведения не замечал.
+
avatar
0
Лет 10 назад почти все писал на Силабсе, но сегодня он стал фетишем, дорогой игрушкой для штучных проектов под программиста, который не может или не хочет перелезать на STM32.