Помощь · Поиск · Пользователи · Календарь · Магазин для пчеловодов
Перейти к полной версии: пасечные весы
Объединенный пчеловодческий форум > Всё, что рядом с пчеловодством > Идеи пользователей форума в жизнь > Идеи в разработке
Страницы: 1, 2, 3, 4, 5
spectrum_ask
Цитата(profinrus @ Четверг, 15 Июня 2017, 14:05)
посмотрел сколько стоит промышленный тензодатчик на али,1600 руб самая маленькая цена,все другие ещё дороже.
одни датчики обойдутся 6-7 тыщ,да кто же будет это делать,когда все наровят как можно дешевле.
*


такого одного датчика хватит. Я буду делать на основе него. Я покупал китайские весы для торгашей там подобный (чуть по проще один на 200кг, на али стоит 800р) конструкция примитивно простая металлическая пластина прикручивается к датчику это опора весов. а с другой стороны такая же пластина на неё груз класть.
profinrus
замечательно.
вот и посмотрим разницу.
в цене полный провал,на 4-х датчиках вся конструкция получается за 500 руб,и платформу намного проще делать.
дёшево,наше всё biggrin.gif

упрощённый вариант,без IC2

схема подключения датчиков

Прикрепленное изображение: Открыть в новом окне
spectrum_ask
dntknw.gif мне тут нечего сказать. если нужна дешевизна зачем вообще водить пчёл, можно в китае мёд покупать. Вы его будете есть? Вы так за цену ратуете как буд-то продавать своё устройство собрались. Я вижу вы противопоставляете дешёвый показометр против весов средней точности. Ну кому что нравиться. Меня вы не убедили, я буду брать нормальный тензодатчик
profinrus
drinks_cheers.gif вы не поняли
я вас и не пытался вас убеждать,мне всё равно,кто хочет тот будет делать.
а про дешивизну,вы как с луны свалились biggrin.gif
зайдите в тему про приводы для медогонок,там крендель с зелёного форума.так ратует за свой блок,главная ФИШКА дешивизна,и сколько на это подсели biggrin.gif
rusevgen
Цитата(spectrum_ask @ Четверг, 15 Июня 2017, 14:03)
если нужна дешевизна зачем вообще водить пчёл
*


Тут скорее вопрос масштаба....если озадачится поставить "мониторинг" на каждый улей, по 500 или 1500 уже разница есть для большинства пчеловодов.

PS я тоже такие датчики купил весной, правда вот только руки дошли до них. Опыт то простой - ставим на платформу бочку 100 литров - если нет сильных пиков на графике за месяц и он стабилен, то эти датчики оправдывают себя.

PSS 500 это неверный расчет - вам же еще нужно вопрос питания, передачи данных и герметичности модуля решить, по моим оценкам будет по 1000 на один улей бюджет + головное устройство (тут зависит от того, что оно должно уметь делать)
profinrus
сама поделка в том виде как выложена,тянет на 500 руб,а остальное по желанию. smile.gif
Мордасов Владимир
profinrus молодец !!!! friends.gif
dryukov
Чё с весами взяток лучше ? dry.gif
krim_ pchel
Если будут надежные хоть и дорогие весы купил бы. У меня 5 лет проработали венгерские пасечные. Очень удобные. Но в прошлом году перестали работать.Снова пользуюсь обычными советскими 150кг весами. Очень неудобно с ними при кочевке.
profinrus
Цитата(krim_ pchel @ Пятница, 16 Июня 2017, 6:43)
Если будут надежные хоть и дорогие весы купил бы.
*



в чём проблема,весы конструктор с GSM,всего лишь 13 тыщ biggrin.gif ,весь инет ими заполнен smile.gif

Цитата(dryukov @ Пятница, 16 Июня 2017, 5:46)
Чё с весами взяток лучше
*



большая просьба,расскажите с чем взяток лучше? smile.gif
krim_ pchel
Цитата(profinrus @ Пятница, 16 Июня 2017, 8:32)
в чём проблема,весы конструктор с GSM,всего лишь 13 тыщ  ,весь инет ими заполнен
*


Если можно ссылочку пожалуйста
fant0m
profinrus friends.gif спасибо за проект! hi.gif
profinrus
типа http://www.fassen.net/video/soKTOo9ZH6c/

fant0m
получилось?
fant0m
Ещё в пути заказ, но получится - куда денется ?! bye.gif
procaster
Цитата(profinrus @ Вторник, 13 Июня 2017, 21:38)

Цитата(profinrus @ Среда, 14 Июня 2017, 9:23)
взял lcd shild - https://ru.aliexpress.com/item/Free-Shippin...55-63d19f48b3ca ,и конструкция собралась вся на одной плате.
*


Не могли бы Вы, нарисовать полную схему сбора плат. (Куда какой провод воткнуть + если возможно то ссылку на покупку этих проводов для соединения схем) Заранее спасибо.
procaster
Цитата(fant0m @ Пятница, 16 Июня 2017, 11:17)
Ещё в пути заказ, но получится - куда денется ?! 
*


Так же заказ в Пути. drinks_cheers.gif
profinrus
у меня вот так
Прикрепленное изображение: Открыть в новом окне
procaster
Спасибо
procaster
Собрал весы dance2.gif . Огромное спасибо profinrus drinks_cheers.gif

На aliexpress было куплено
4 тензодатчика. каждый до 50 кг
HX711
Nano 3.0 Atmega328
LCD Keypad Shield
Кабель mini usb - usb
т.к. пользуюсь аккумуляторами 18650, был куплен Power Bank 18650
https://ru.aliexpress.com/item/Multicolor-U...03123-uR7uBY3Rz

Всё это дело собираем по схеме.
С сайта arduino.cc скачиваем программу, ссылка ниже
https://www.arduino.cc/download_handler.php
При подключении Весов к ПК по USB, windows потребует драйвера. нужно найти драйвер ch341ser , ссылка ниже
http://www.winchiphead.com/download/CH341/CH341SER.ZIP
скачиваем библиотеку HX711 ссылка ниже
https://github.com/bogde/HX711/archive/master.zip
скачиваем код программы для весов для LCD ссылка ниже
http://www.pchelovod.info/index.php?act=At...=post&id=148474

Устанавливаем arduino-1.8.3-windows, драйвер ch341ser.
Запускам Arduinо, Нажимаем Скетч - подключить библиотеку - добавить zip библиотеку, выбираем HX711-master.zip
Далее полностью распаковываем архив для_LCD.rar , заходим в папку sketch_jun13q, запускаем sketch_jun13q.ino
Открывается код программы. нажимаем Инструменты - порт, и выбираем Порт у меня был СOM4 (при установки драйверов ch341ser windows сообщит какой порт, если usb разъём вставить в другой usb-порт пк, то в программе Ардуино, порт нужно поменять.)

Далее нажимаем на значок(стрелочка вправо)
Ждём когда загрузится программа. После загрузки на дисплее отобразится вес, при нажатии на тензодатчики, цифры будут изменятся.
p.s. соберу всё в кучу с платформой, напиши подробно про калибровку.


Прикрепленное изображение: Открыть в новом окне
profinrus
хорошо всё описал.
а калибровку как делал,написал бы своими словами
procaster
Забыл написать в программе Ардуино выбираем инструменты нажимаем плата и выбираем Ардуино Нано.
Про калибровку.
В папке LCD есть папка DATA в ней архив Balanza_digital_calibrado. Распаковываем архив и запускаем Balanza_digital_calibrado.ino далее нажимаем значок(стрелочка вправо), когда программа загрузится. нажимаем на значок лупа(правый верхний угол). Далее через секунд 10. следует положить груз(вес которого знаем) на платформу весов к примеру 15 кг. В программе пойдут цифры, подождать минут пять выбрать последнее число и поделить его на 15кг, число запомнить(к примеру -3000)
Далее запускаем файл sketch_jun13q.ino в тексте ищем строчку balanza.set_scale(-3000); и в скобки вписываем получившееся число. Далее нажимает на значок стрелочка вправо.
friends.gif
profinrus
ну теперь точно все с весами будут smile.gif
procaster
Для того чтобы вес при включения питания не обнулился следует в коде программы в строке
balanza.tare(20); // El peso actual es considerado Tara.

в скобках поставить ноль.
balanza.tare(0); // El peso actual es considerado Tara.
Если вес на платформе изменился, то при включении питания, дисплей отобразит правильный вес.
Вобщем можно сказать. проект закончен smile.gif))))
profinrus огромное спасибо за идею smile.gif) drinks_cheers.gif
profinrus
теперь будем ждать фоток конструктива,кто как сделает,делитесь не стесняйтесь,друг у друга будем перенимать опыт smile.gif hi.gif
profinrus
кто сделал весы.
поделитесь пожалуйста информацией о стабильности показаний во времени под весом.
интересно в плане на сколько хороши дешёвые китайские датчики веса hi.gif
procaster
Цитата(profinrus @ Понедельник, 31 Июля 2017, 20:43)
кто сделал весы.
поделитесь пожалуйста информацией о стабильности показаний во времени под весом.
интересно в плане на сколько хороши дешёвые китайские датчики веса
*


Улья стоят на профильной трубе. сварен в размер квадрат из профильной трубы, под тензодатчики вырезаны отверстия т.к. в центре должен быть ход. тензодатчики посажены на поксипол.
Квадрат с тензодатчиками перевернул вниз(то есть упираются в профильную трубу ), сверху улей. После установки за сутки уехал вес на -4кг. Далее плавать показания перестали. Показывают чётко вторую неделю drinks_cheers.gif
den_pti
Уважаемые коллеги,
Делюсь информацией по поводу сборки и тестирования комплекта, за наводку и проделанную работу выражаю признательность profinrus and procaster.

В моем случае я приобрел два комплекта железа согласно ссылкам выше, хотя по большому счету, LCD keypad shield это с запасом на возможные конструкции в будущем. Если собирать схему только под весы, то можно ограничиться покупкой "чистого" LCD 1602 без обвязки (собственно я подпаивался прямо к выводам LCD1602 минуя НЕ маркированные контакты shield).
Итак приступим к сборке, напишу более подробно, как для себя поскольку я полный чайник в ардуино smile.gif
Достаем из пакетика плату ардуино и контактные полоски, мое мнение контактные полоски лучше не впаивать в плату, ведь это все будет на улице жить и зачем нам лишние "контактные" проблемы. Запаиваем провода прямо в плату урдуино, в качестве проводов рекомендую использовать компьютерный шлейф от IDE устройств (серенький такой), понадобиться отрезок провода длиной сантиметров 10-ть и количеством проводников- 8-мь. Шесть проводов под сигнальную часть и два провода под питание. Запаиваем шлейф из шести проводов в цифровые выходы ардуино с D6 по D11, у меня так, но можно в любые цифровые.
Вот соответствующая часть программы (скейча):

// Creación del objeto para el LCD con comunicación I2C
//LiquidCrystal lcd( 7, 6, 11, 10, 9, 8);
const int rs = 11, en = 10, d4 = 9, d5 = 8, d6 = 7, d7 = 6;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

Вторая строчка - активируем 6,7,8,9,10 и 11 цифровые выходы ардуино
Третья строчка - D11 выход ардуино припаиваем к выводу RS LCD экрана, D10 выход Ардуино к выводу En экрана, D9->d4, D8->d5,D7->d6, D6->d7

Питание подпаивается либо к плате LCD 1602, первый вывод VSS это земля, второй вывод VDD это +5В, либо в нижнюю часть платы, там где кнопки есть помеченный вывод 5V, справа от этого вывода земля. Питание берется от ардуино, вывод на ардуино 5В и земля.

Выводы HX711, питание подписано, вывод SCK припаиваем к аналоговому A0, DT к A1.

С подключением датчиков у меня получилось несколько по другому, для ознакомления советую посмотреть ссылки:
https://electronics.stackexchange.com/quest...rks/75717#75717
https://electronics.stackexchange.com/quest...al-bounce-noise
https://electronics.stackexchange.com/quest...room-scale?rq=1

схема моего подключения указана на соответствующей картинке, при этом весы показали сразу "0", т.е. калибровать не надо. Но сначала датчики были подключены как на схеме profinrus и ничего не заработало, показания скакали в произвольном порядке.
В общем рекомендую поэкспериментировать smile.gif

Программная часть хорошо описана procaster-ом, так что повторять не буду, все интуитивно понятно.
Что не удалось пока победить, так это сбрасывание показаний при снятии питания.
мне строка balanza.tare(20); // El peso actual es considerado Tara. с заменой 20-ти на ноль не помогает,при нуле показания стоят как вкопанные на последнем значении и никак не реагируют на снятие/добавление веса. Разбираюсь в этом.

Сейчас нагрузил датчики 5-ти кг грузом, пока наблюдаю за стабильностью.
Удачи
Прикрепленное изображение: Открыть в новом окне
Прикрепленное изображение: Открыть в новом окне
den_pti
Забыл уточнить один момент, если датчики будут подключены по приведенной схеме, то в скейче нужно поменять знак, если мы хотим видеть положительные значения.
Речь идет об этой строчке:

balanza.set_scale(-22195); // Establecemos la ESCALA calculada anteriormente

Нужно поставить минус, тогда значения будут отображаться в "правильную" сторону (не отрицательные)
francs
Всем привет!
Спасибо за наработки, ОЧЕНЬ помогли

Цитата(den_pti @ Пятница, 15 Сентября 2017, 16:10)
Что не удалось пока победить, так это сбрасывание показаний при снятии питания.
мне строка balanza.tare(20); // El peso actual es considerado Tara. с заменой 20-ти на ноль не помогает,при нуле показания стоят как вкопанные на последнем значении и никак не реагируют на снятие/добавление веса. Разбираюсь в этом.

*



я для этого использую EEPROM
взяв от сюда
Serial.println(balance.read());
и
от сюда значения
balanza.set_scale(-22195) (у меня они конечно немного отличаются)
я их присвоил константам
long OFFSET_0 = -175100; //тарирование в 0
float CORRECT = -22195; //значение калибровки
и записываю в EEPROM если они там отсутствуют

// Провека в EEPROM запись OFFSET_0 и CORRECT
if( EEPROM_long_read(addr_offset) == -1) EEPROM_long_write(addr_offset, OFFSET_0);
if( EEPROM_long_read(addr_corr) == -1) EEPROM_float_write(addr_corr, CORRECT);

инициализация проходит так
eeoffset = EEPROM_long_read(addr_offset);
eecorr = EEPROM_float_read(addr_corr);
balance.set_scale(eecorr); // установили ранее рассчитанную калибровку SCALE
balance.set_offset(eeoffset);//Текущий вес будет учтен
//balance.tare(20); // Эту строку закоментировал!!!

на случай "усталости датчиков" используя кнопки LCD Keypad shield тарирую и калибрую из созданной менюшки и перезаписываю эти значения в EEPROM если посчитаю нужным
кнопками UP DOWN выбираю меню Тарировать или Калибровать
калибровку изменяю кнопками LEFT RIGHT прибавляя или отнимая 40 от значения eecorr (40 достаточно чтобы откалибровать с точностью до 10г, достиг опытным путем)
SELECT сохраняю или тарирую в 0 в зависимости от выбранного действия
тарирование выглядит так:
balance.tare(20); //Обнуляем вес. Текущий вес считается Тарой.
val_offset = balance.get_offset();
lcd.print(val_offset);
if( val_offset != eeoffset) EEPROM_long_write(addr_offset, val_offset);
eeoffset = val_offset;


так же EEPROM можно использовать для сохранения каких либо показаний, дело фантазии hmm.gif
например перед тем как ставить дополнительный корпус, сохранить текущий вес
установить корпус и оттарировать в 0
в таком случае всегда можно прочитать вес до установки корпуса и привес после установки
не зависимо от перезагрузки или отключения питания ардуины hi.gif
profinrus
Цитата(francs @ Понедельник, 16 Октября 2017, 12:04)
на случай "усталости датчиков" используя кнопки LCD Keypad shield тарирую и калибрую из созданной менюшки
*




очень интересно.
если можно,выложить весь скетч
Мордасов Владимир
Цитата(francs @ Понедельник, 16 Октября 2017, 12:04)
в таком случае всегда можно прочитать вес до установки корпуса и привес после установки
не зависимо от перезагрузки или отключения питания ардуины 
*


Желательно иметь возможность прочитывать вчерашний вес. А это значит, что фиксировать вчерашний вес нужно 24 часа. Текущий вес за это время может меняться и проверяться многократно, но по достижении определенного времени фиксированный вес должен поменяться на новый. hi.gif
francs
Цитата(profinrus @ Понедельник, 16 Октября 2017, 12:10)
очень интересно.
если можно,выложить весь скетч
*


да, конечно
обратите внимание что используемые пины могут отличаться
Вход в меню - жмем UP более 3сек
Ходим по меню UP DOWN
Сохранить или тарировать - SELECT в соответствующем меню
Выход из меню - LEFT в режиме Tare

Это начальная для меня версия, прошу сильно не пинать
francs
Цитата(Мордасов Владимир @ Понедельник, 16 Октября 2017, 13:03)
Желательно иметь возможность прочитывать вчерашний вес. А это значит, что фиксировать вчерашний вес нужно 24 часа. Текущий вес за это время может меняться и проверяться многократно, но по достижении определенного времени фиксированный вес должен поменяться на новый.
*


ну а какие проблемы?
вчера сохранил текущие показания и сразу оттарировал в 0, ждем 24ч, смотрим текущее показание(т.е. на сколько изменился вес за 24ч, и читаем из EEPROM вчерашние показание и радуемся smile.gif
....и так радуемся каждый день пока EEPROM не закончится dance2.gif
EEPROM энергонезависимая память, ее размер в Nano 1024байт, одна запись занимает 4байта
так что можно смело 200 результатов сохранить, ну 56 оставим на другие нужды (тарирование, калибровка ... и т.д.)

... кстати при таком алгоритме (тарирование каждые 24ч) снимается проблема "усталости датчиков" imho.gif
profinrus
правильно я понял,в меню есть чтение EEPROM?
francs
Цитата(profinrus @ Понедельник, 16 Октября 2017, 15:09)
правильно я понял,в меню есть чтение EEPROM?

*


да, перед тем как выкладывать скетч успел дописать сохранение одного показания
можно будет потом доработать, думаю создать массив показаний и туда сохранять
profinrus
хорошо.
общими усилиями вполне хороший проект получился smile.gif
и вещь нужная smile.gif
profinrus
есть правда ещё мысль,собирать все данные на один блок с помощью nrf24l01.
поставить солнечную батарею с аккумулятором,так сделал для передачи звука,потребление не большое и всё замечательно работает.
francs
Цитата(profinrus @ Понедельник, 16 Октября 2017, 16:08)
собирать все данные на один блок с помощью nrf24l01
*


проблема в том, что HX711 работает по шине I2C, а nrf24l01 по SPI
хотя можно попробовать через модуль spi to i2c типа такого
http://www.ebay.com/itm/ATMEGA48-NRF24L01-...3.c100033.m2042

profinrus
неее,этот вариант я даже не рассматривал.
чуть дороже но всё понятно когда передавать с полных весов,можно правда обойтись без ЖК,а NANO или MINI обязательно.
francs
выкладываю обновленный скетч для автономного взвешивания

// Вход/выход в меню нажатие кнопки UP более 3сек
// Выбор элемента меню UP/DOWN
// Изменение значений калибровки, тарирования, выбор сохраненных значений Weight - LEFT/RIGHT
// Сохранение изменения выбранного значения - SELECT (после сохранения добавится символ * в конце строки)
// Correct - калибровка по эталонному весу, нагружаем весы эталонным весом и кнопками LEFT/RIGHT добиваемся правильных показаний, для сохранения калибровки SELECT
// Tare0 - тарирование (сброс в 0) весов без нагрузки, выбираем Tare0, нажимаем SELECT
// Tare1 - тарирование (сброс в 0) веса тары, выбираем Tare1, выбираем on-тарировать / off-отменить тарирование(показать полный вес относительно Tare0), нажимаем SELECT
// WeightN - кнопками выбираем элемент памяти N (от 1 до 31) при нажатии SELECT в выбранный элемент сохранится текущее значение веса.
// ClearEEPROM - обнулить все значения WeightN
francs
доработал меню, теперь не тупит
при нахождении в меню показания весов считываются только при нажатии какой либо кнопки управления меню, а не в цикле, иначе по меню не комфортно ходить, начинает тупить
при выходе из меню переходит в циклический режим считывания

добавил
-тарирование тары(сброс показаний в 0 для отсчета привеса)
-отмену тарирования тары для показания полного веса
- сохранение до 31 показаний веса (можно сохранять в элемент под номером соответствующему дню месяца, легче запомнить хронологию)
- очистка всех сохраненных показаний
Александр 1975
То ли я такой непонятливый,сделал все как написано выше скетчи загружаются вижу на ардуине диод моргает,значит загружаются а на LSD экране одни квадратики,пробовал подключать по второму варианту прямо на экран,показывает буквы ууууууууууууу.Вобщем запарился уже может кто ещё доходчивей объяснит для таких как я.
profinrus
где то у вас ошибочка в подключении к экрану,посмотрите повнимательнее,или выложите как у вас подключено

может быть из за библиотек
profinrus
francs
эксклюзивную библиотеку использовал для "HX711.h"

моя 16.9 ни как не хочет понимать smile.gif
francs
profinrus
скачивал zip от сюда
https://github.com/bogde/HX711
francs
Александр 1975
Внимательно проверьте схему подключения LCD к ардуино
в скетче описаны какие из пинов шины данных используются
если используете другие, соответственно поправьте в своем скетче

// Создание объекта для связи LCD-дисплея по шине I2C
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

в Arduino IDE есть пример Файл/Примеры/LicuidCrystal/HelloWorld
для начала добейтесь вывод на LCD

добавил в своем скетче выход из меню если не было нажатий на кнопки в течении 1мин
если интересует, выложу
profinrus
ну вот,всё и получилось,реально эксклюзивная библиотека,качал не мерено, ни что не подходило smile.gif
francs
Цитата(profinrus @ Понедельник, 16 Октября 2017, 16:08)
есть правда ещё мысль,собирать все данные на один блок с помощью nrf24l01.
*


спасибо за мысль, тоже решил пойти по этому пути
заказал себе RFки еще одну nano и UNO и солнечную панельку на 5в прицепом
как придут буду пробовать

думаю на весах в качестве клиента использовать nano+hx711+NRF24l01
в качестве мастера UNO+NRF24l01, хотя может и нано потянет (вот толь часы забыл заказать, ну и ладно, как ни будь в другой раз, для начала в миллисекундах отсчет буду вести hmm.gif )
клиента хочу заставить работать в спящем режиме (StandBy) при обращении к RFки его пробуждать, NRF24l01 вроде может выдать прерывание ардуинке
ну а далее обращаться командами например:
TARE0 - нулевое тарирование
TARE1 ON - тарировать с учетом текущего веса
TARE1 OFF - отключить тарирование, показать полный вес
SAVE MEMn(n=1...31) - заставить клиента снять показание и записать себе в EEPROM
READ MEMn(n=1...31) - прочитать сохраненное показание
CLEAR MEM - очистить все показания в EEPROM
это будет необходимый минимум
если использовать часы реального времени, то можно раз в сутки в ночное время мастером инициировать запрос и считывать показание
можно еще потестить функцию millis(), вести отсчет сутки, если сильно не будет плыть, то можно и без часов обойтись





Цитата(profinrus @ Воскресенье, 22 Октября 2017, 18:56)
ну вот,всё и получилось
*


жду комментарии
если найдешь какие косяки, дай знать, постараюсь поправить
profinrus
Цитата(francs @ Воскресенье, 22 Октября 2017, 19:38)
солнечную панельку на 5в прицепом
*




у меня панель на 9вольт с расчётом на ненастье,с неё порядка 5-6 вольт выходит,всё питание через стабилизатор.

весь алгоритм абсолютно совпадает с моим задуманным,но наверняка у тебя это получится быстрее,хотя торопиться пока не куда smile.gif
francs
Цитата(profinrus @ Воскресенье, 22 Октября 2017, 19:51)
у меня панель на 9вольт
*


я так и думал что запас надо бы, но у этого продавца не было других в наличии sad.gif
придется отдельно заказывать, благо копейки стоит smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы пожалуйста нажмите сюда.
Пчеловодство © 2001-2019 Пчеловод.ИНФО