Официальный сайт компании Arduino по адресу arduino.cc
Напольные весы с отсылкой данных.
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Прочитал я как-то на Хабре статью "Как я сделал Wi-Fi весы, ниоткуда не уволился, а про жизнь вообще молчу" (http://habrahabr.ru/post/224137/), и захотелось нечто подобное себе соорудить.
Задачи были поставлены простые, всего три: взвесить, показать вес на дисплее, отправить данные про вес по радио.
Добрый человек [почти бесплатно] подогнал трое разных напольных весов разной степени убитости, из которых я выбрал наиболее подходящие по конструктиву и с исправными датчиками. (Про датчики, мосты/полумосты Витстоуна прекрасно написано в вышеупомянутой статье.)
Заморачиваться с инструментальным усилителем INA125 не стал, просто заказал готовый HX711 A/D Module, специально предназначенный для весов. В сусеках нашлись также Ардуино Нано, 4-х разрядный светодиодный индикатор, передатчик на 433 МГц, пара кнопок.
Итак, все составляющие имеются, теперь можно было очистить корпус весов от "родного" содержимого и набить своим.
Зачем там кнопки ? - а для калибровки. В скетче вес вычисляется по формуле CurWeight = scale.get_units(NumTimes) * 1000 / CurScale; , вот эта CurScale кнопками и корректируется, затем в EEPROM на будущее сохраняется. Естественно, можно обойтись и без кнопок, но так калибровать удобнее.
Дальше было доведение до ума скетча (скетч закину следующим постом). Получилось примерно так :
в режиме ожидания жертвы
и с двухкилограммовым аккумулятором
Бюджет:
Весы достались практически даром.
Nano $4.03, LED module $3.34, HX711 module $1.79, 433MHz TX module $0.61.
Кнопки, проводки и блок питания со шнуром - цены назвать затрудняюсь.
Итого прямых затрат $9.71.
Готов ответить на вопросы, ежели возникнут.
Я что-то понять не могу этот HX711 ? Понял, что втыкается куда-то, к чему-то, в некий тензодатчик, и что-то возвращает в последовательный порт? А даташит существет в природе?
http://www.dfrobot.com/image/data/SEN0160/hx711_english.pdf
Все понял.
В весах какой-то мостик изгибается. А что это такое? Пьезо пластинка гнется? А эта микрушка подпирает напряжением пьезик и меряеть под 90 градусов миливольты от изгиба? Жуть как интересно что сейчас в весах?
Документация по HX711, библиотеки, скетч, схема - https://www.dropbox.com/sh/dr63743zjnjdawz/AABwijf7YDxUoJvn2YT7kmU0a?dl=0
И резисторы эти соеденены не полными мостами?
Сколько же там проводов от резисторов?
Как я понимаю когда резистор вытягивается сопротивление увеличивается?
Каждый датчик - полумост. С него идут три провода (Б-К-Ч), как на картинке с иероглифами. Итого имеем четыре полумоста.
Дальше цитата : "Но я никак не мог взять в толк, как четыре полумоста соединяются в один мост и зачем это нужно. Ответ на первую часть задачи дала родная плата весов. Те же китайцы, чтобы не тратить зря медь, подключили готовые общие точки куда надо: к источнику тока и к приемнику потенциала. А все остальное соединили так, чтобы получить мост. В итоге каждое фабричное полуплечо стало четвертью плеча".
В результате в точности получается схема, как на картинке с фоном в клеточку. То есть два провода каждого датчика уходят к соседним датчикам, а третий провод - к HX711 модулю. Изначальная начинка весов также соответствовала этой схеме.
Как я понимаю когда резистор вытягивается сопротивление увеличивается?
Резистор изгибается, сопротивление увеличивается.
в hx711 2 канала. я бы не исключал варианта что каждые 2 моста образуют мост, получается 2 моста 2 канала. а потом математикой рассчитывается вес
не случайно в нем 2 канала а не 1
Тестером реально уловить изменение сопротивления при нажатии на датчик веса?
теоретически да в режиме милливольт
измерять не сопротивление а напряжение
Ага, я пробовал, потом понял, что не зря в модуле HX711 поставили precision 24-bit analog-to-digital converter (ADC).
Кстати, с практическим использованием весов так и не сложилось ((. Конструкция дешевая, стабильность показаний никакая, плюс-минус сотня граммов, зависит от перемещения весов, от расположения ног на площадке, от хрен знает чего. Ставил другие датчики - не помогло. При том, что давние мои фирменные напольные весы весьма стабильно показывают. Короче, разобрана конструкция.
да не зря. но просто проверить можно
а вообще с такими весами да проблема с ровной поверхностью
100 грамм для таких весов фигня, я бы даже до 500 закрывал глаза. Для веса человека это нормальная погрешность.
Я вот хочу сделать из своих весов игрушку для ребенка. Игра "кто сильнее", нужно потянуть на себя верёвку, аппарат покажет сколько у тебя силы. Для ребёнка можно показывать не числа, а картинки животных, заяц самый слабый, самый сильный медведь (с такой силой должен тянуть только папа :) разумеется). Для взрослых можно сделать аппарат по которому нужно как следует вмазать, и тут уже можно смело показывать числа.
А по опыту, если не волнует точность +/- 100 граммов, и весы стоят стационарно, динамику изменения веса реально получать на таких датчиках?
Вопрос не праздный. Имеем улей. Каждый день ездить проблематично. Необходимы контрольные весы, на которых он будет стоять, и по которым можно будет понимать ситуацию - носят пчёлы мёд или нет...
Насколько идея реализуема на таких датчиках? Понимаю, что остальная начинка будет другой, но раз увидел - спрошу, если позволите...
Заранее спасибо за ответ!
Я думаю что вполне реально.
Спасибо! Начали реализацию...
Автору - огромное спасибо за идею, описание и скетч. Первые шаги делаю, но сразу в прикладной области. Ибо надо :)
Успехов. Обращайтесь, если что.
Огромное спасибо!
Пока заказан модуль Arduino UNO R3 (китайский клон, $2,95), тензорезисторы, усилитель сигнала на Hx711, модуль GSM для отправки данных по sms/gprs, плата часов реального времени, чтобы отправлять данные по расписанию раз в сутки.
Приедет - надо будет всё это добро подружить между собой и заставить работать в качестве контрольных весов на пасеке...
Опыт коллеги показал, что тензодатчики плывут первые двое суток, потом стабилизируются и дальше уже показания не искажаются.
Попробуем...
Сейчас трушу интернет на предмет готовых решений по принципу "с миру по нитке" - собственных знаний пока нет, учусь.
Огромное спасибо!
Пока заказан модуль Arduino UNO R3 (китайский клон, $2,95), тензорезисторы, усилитель сигнала на Hx711, модуль GSM для отправки данных по sms/gprs, плата часов реального времени, чтобы отправлять данные по расписанию раз в сутки.
Приедет - надо будет всё это добро подружить между собой и заставить работать в качестве контрольных весов на пасеке...
Опыт коллеги показал, что тензодатчики плывут первые двое суток, потом стабилизируются и дальше уже показания не искажаются.
Попробуем...
Сейчас трушу интернет на предмет готовых решений по принципу "с миру по нитке" - собственных знаний пока нет, учусь.
А как пчелки к GSM относятся? Где то читал, что не любят они это до смерти, даже с телефонами подходить не рекомендуют.
То когда неправильные пчёлы :)
А если серьёзно, такие системы есть и работают, но ценники на них настолько негуманные, что даже не рассматриваются. А по телефону я возле пчёл разговариваю без проблем. Это от породы пчёл ещё может зависеть. У меня бакфаст - они очень мирные, можно большую часть года даже без сетки работать.
То когда неправильные пчёлы :)
А если серьёзно, такие системы есть и работают, но ценники на них настолько негуманные, что даже не рассматриваются. А по телефону я возле пчёл разговариваю без проблем. Это от породы пчёл ещё может зависеть. У меня бакфаст - они очень мирные, можно большую часть года даже без сетки работать.
Я совершенно не настаиваю, не любовь до смерти имелась в виду (до их смерти). Когда думал себе завести, попадалась статья, что и улики приходится экранировать. Возможно и журналистский бред.
Очень похоже на то :) Хотя есть среднерусские пчёлы, так у тех сама по себе охранная зона порядка 5 метров от улья, ближе жалят и без всяких излучений ;)
Ладно, похоже в оффтоп ушли. Удачи в разведении.
Voblin_UA, мне кажется, что вам ещё нужно погодную станцию к улью прикрутить.
Прохладно, пасмурно, и мало мёда - понятно.
Тепло, ясно и мало мёда - повод навестить пчёлок.
Электричество там есть или от аккумулятора?
Действительно, можно будет бонусом прикрутить измерение наружной и внутренней температур, влажности, освещенности и чего-нибудь еще. Отправку данных можно сделать также и по запросу.
Питание от аккумулятора. Пока рассматриваю разные варианты, например - последовательно два 18650 прикрутить...
Что касается погодной станции... Пока думаю. Для начала последовательно - заставлю снимать показания веса и передавать на комп, потом писать на микро-сд на случай потери связи и затем - отправлять смс / в гуглдокс.
а подскажите пожалйуста где вы тензодатчики покупали? и есть ли отечественного производства что-то хорошее и маленькое
Это из серии "быстро, качественно, недорого - выберите любые ДВА пункта"? ;)
Я покупал в Китае, $7,80 за лот из 5 штук. Датчики веса, по 50 кг каждый с возможностью превышения до 150%. Итого мостовое включение 4 датчиков даёт возможность штатно взвешивать до 200, с перегрузом - до 300 кг.
Дешевле уже не придумать, наверное, разве что из таблеток активированного угля собирать, как делал коллега. Но наши не годятся - выпуклые, из-за чего высокая нелинейность и рассыпаются уже при нагрузке в 20-30 кг. А импортные не пробовали. При таких раскладах потерялся интерес в виду низкой надёжности.
Датчики я пока не подключал - модуль Hx711 ещё не приехал.
Заказал ещё датчик температуры и влажности DHT11, хотя сейчас смотрю - надо было DHT22 брать... А то этот только положительную температуру меряет, а 22-й - от -40°С. Может дозакажу потом.
спасибо за инфу! удачи в проэктах!
Забыл сразу фото датчиков веса приложить...
Эх, ну тогда и мои 5 копеек. Датчик SHT10 в улик, мониторим темп.и влажность, серва прикрыть-открыть отверстие для газообмена, а для уличного измерения что то типа AM2301. Так и рождаются супердевайсы)))).
Ну, для начала, на "поиграться" смотрел просто только на то, что меньше всего стоит.
Влажность регулировать не надо - у меня полностью сетчатые днища круглый год :)
Сейчас конфигурация следующая: Arduino Uno R3 Mega 328P CH340G (пришлось поприседать, пока дрова нашёл), датчики веса с АЦП/усилителем, датчик температуры/влажности, GSM-модуль на чипе Neoway M590 (с ним тоже придётся поприседать, чувствует моё сердце - зато цена $7,80 против обычных $30), модуль часов реального времени. Ко всему этому прикручу модуль карты памяти, и буду пытаться колдовать... Пока жду, когда вся комплектуха доедет.
А карта памяти для чего? Или вы каждые полчаса хотите писать? У вас на часах есть AT24C32 это 4кВ EEPROM с 1 000 000 циклов перезаписи по I2C. Итого минус один шилд, а кодить я думаю одинаково.
Если не жалко, выложите схему и деталировку весовых датчиков. Спасибо.
А карта памяти для чего? Или вы каждые полчаса хотите писать?
По-хорошему, есть мысль сделать съём данных раз в час с 6:00 до 20:00, записывать на карту памяти в csv, потом в 20:00 из него считывать данные и класть на сервер. Этот функционал ещё в стадии размышлений и медитации ;) Опыта и знаний куда меньше, чем желания реализовать, откровенно говоря. Усиленно учу.
А можно для чайников чуть подробнее, если не затруднит? А то из всей фразы я понял только "минус один шилд" :)))) Я решил RTC прикрутить, чтобы время при смене элементов питания не сбивалось. Позже оказалось, что там можно будильники прописать... Изучаю - голова уже пухнет от объёмов информации...
Первое сообщение в этой теме, ссылка на Хабр, там разжёвано - так и буду соединять. Только пока неясен вопрос по цветам проводов - что куда? Много неясного, исходя из того, как собирается измерительный мост - если подключить все тензодатчики вместо одного - откуда возьмётся перекос? Буду пробовать...

Паять усилитель не буду, использую готовый Hx711
Сейчас на почту пойду - ещё два пакета с какой-то мелкотой приехало... Не исключено, что усилитель, и можно будет начинать паять... С использованием готовых скетчей...
SD карта удобна в двух случаях, когда нужен очень большой объем или хотим эти данные читать прямо с карточки на комп (при этом контакты умрут весьма быстро) Судя по вашему желанию, можно обойтись даже штатным EEPROM Atmegi328 (там 1кВ). При 14 записях в сутки, даже не применяя щадящие алгоритмы, вам ресурса хватит на 20 лет при постоянном использовании весь год.
На RTC модуле есть мелкосхема памяти, она уже на 4кВ и на 200 лет ресурса))). Там правда немного сложнее будет кодить, но ничего сверхестественного.
Так что карточка, по моему, ненужное излишество.
Дабы не засорять эу тему, создал новую, сильно упростив хотелки. Буду признателен за советы и замечания.
Araris
Документация по HX711, библиотеки, скетч, схема - https://www.dropbox.com/s/tvy4quuis7d7iht/Scales.zip?dl=0
Пожалуйста: https://www.dropbox.com/s/ik2pk27zog4nn7d/AVSmartScales.zip?dl=0
Схема подключения датчиков присутствует и в этой теме, и в первоисточнике на http://geektimes.ru/post/258592/
Что означает такая запись "4120.f"?
Что означает такая запись "4120.f"?
???
Это о чём вообще ?
Строка 50 из вашего скетча. Что означает ".f"?
float CurScale = 4120.f; // default 2280.f
Строка взята из скетча, на основе которого всё делалось. Буква после точки явно указывает компилятору на тип float. (Думаю, что и без неё обошлось бы.)
Вот тут немного нашел : http://stackoverflow.com/questions/2391818/f-after-number-float-in-objective-c-c
Расскажите пожалуйста о процессе калиброки. Нужні єталонніе гири или как?
В первом посте темы найдите фразу
"Зачем там кнопки ? - а для калибровки. В скетче вес вычисляется по формуле CurWeight = scale.get_units(NumTimes) * 1000 / CurScale; , вот эта CurScale кнопками и корректируется, затем в EEPROM на будущее сохраняется. Естественно, можно обойтись и без кнопок, но так калибровать удобнее."
Возможно, это ответ на Ваш вопрос.
Пришли датчики, из даташита http://www.fut-electronics.com/wp-content/plugins/fe_downloads/Uploads/Tutorial_for_Load_Cell_weight_sensor%2050KG.pdf я понял одна половина датчика должна обладать положительным коэффициентом, вторая отрицательным, но при испытании сопротивление обоих половинок датчика изменяется одинаково - оба увеличиваются или оба уменьшаются. Датчики бракованные?
Здравствуйте, можно ваши контакты, хотел обсудить с вами по поводу весов.
Здравствуйте. Технические вопросы обсуждаются в данной теме, коммерческие и прочие мне, извините, неинтересны.
Спасибо за ответ. К сожалению я никак не могу решить проблему с весами. Есть весы, ацп711 и ардуино, не знаю как их подключить, подскажите схему подключения четырех тензодатчиков с тремя проводами к ацп 711?
http://arduino.ru/forum/apparatnye-voprosy/hx711#comment-199383