Комментарии 72
Интересно, уже существуют готовые решения для умных ульев?
Да, есть множество стартапов и любительских разработок, но это либо
A. Дорого
B. Сложно
С. Нельзя показывать людям ;-)
У некоторых энтузиастов дело так и не доходит до работающих образцов.
Но самый главный критерий "непаханного поля" — отсутствие китайских клонов подобных систем.
Еще с одним парадоксом столкнулся в лице BroodMinder — ребята собрали денег на bluetooth-мониториг влажности/температуры, выпустили девайсы, а спустя некоторое время запустили краудфандинг на тот-же продукт.
В общем, готовые решения есть, но дорого (200$+), что составляет стоимость по крайней мере двух ульев с пчелами.
Зачем держать модуль связи постоянно включенным? Вы указываете, 90% энергии сжирает он. Ведь можно запитать его только на время инициализации и отправки смс. И время автономной работы увеличится в Х раз.
Поясните.
А, солнечную панельку бы присобачить, целесообразно, полагаю.
Так он и не включен постоянно (ибо в таком режиме потребляет до 50мА)!
Просто режим power-off, активируемый что AT-командой, что кнопкой выключения (двойное нажатие с интервалом 2-3с), по сути переводит модуль в стендбай-режим — он в сети и может принять входящий звонок.
Вот в нем как раз и потребляется около двух миллиампер.
Может конечно SIM800L или NEOWAY и выключаются полностью, но тут(AI-THINKER A-6) так не выходит.
Да, солнечную панельку я обязательно поставлю, поскольку добавление других параметров мониторинга потребует более частых включений, не говоря уже о регулярной пересылке данных по GPRS.
Да, еще конечно можно поставить (полевой)транзистор для отключения GSM-модуля, но где его такой найти с управлением логикой 3.3v и падением напряжения меньше 0.1В
Ага. А зачем звонить в улей? В описании указана односторонняя связь раз в сутки, полагаю, лучше включать модуль посредством транзистора тогда, когда надо. Месяц автономной работы это мало для этого устройства. Переубедите, если что то упускаю из виду.
Второй вопрос по коду. В loop() после выключения тензодатчиков есть задержка в 90сек, зачем она? После чего вызывается функция сна, и как известно, камень может спать максимум 8 секунд, а по коду не видно на какую длительность это происходит. То есть получается, что процессор почти не спит.
Поясните пожалуйста эти вопросы, и какое именно прерывание выдергивает камень из сна.
Звонить в улей — да в принципе не надо (хотя я думал добавить принудительную отправку статистики по звонку), просто вот такая особенность этих модулей связи — не выключаются полностью.
По коду — скажу — процессор чудесно засыпает и просыпается по прерыванию на пине 2
attachInterrupt(0, NULL, RISING);
detachInterrupt(digitalPinToInterrupt(0));
То-есть, в разделе setup включается внутренняя подтяжка напряжения на цифровой пин 2:
pinMode(2, INPUT_PULLUP);
Между ним и «землей» — фоторезистор, на закате при уменьшении засветки, логический 0 сменяется логической единицей, что и ловится прерыванием, пробуждая камень.
Можно сказать, такое ноухау, на самом деле экспериментировал и с фототранзистором, и с обратной реакцией (pulldown) — все не то.
А дополнительно ставить RTC не хотелось.
В следующих версиях (с дополнительными параметрами) время будет запрашиваться от самого модуля связи, а при наличии солнечной батарейки ардуино можно вообще не загонять в сон (+3мА)
А по поводу месяца — на самом деле пасека требует гораздо более частого участия пчеловода, особенно передвижная — одни медоносы отцвели — переезд на другие.
Я к своим пчелам смотрел раз в неделю.
И зачем 250 раз за итерацию тела программы проверять датчик освещенности?
Так же, в loop() вы каждый раз "выключаете" gsm модуль с соответствующими задержками, тратя драгоценную энергию и теряя автономное время работы.
Проверка датчика освещенности 250 раз?
Вы обращали внимание на уличные автоматические фонари?
Они перед нормальным включением некоторое время моргают на граничном состоянии засветки фотодатчика.
Так и у меня, без ряда проверок, нередко смс строчились как из пулемета.
А почему проверялю так часто? Пускай это будет мой заскок.
По поводу драгоценного времени работы — положим система спит сутки — 2.3мА24ч=55.2мАч
Модуль связи не спит 3 минуты (1/20часа), потребляя в среднем 50мА, итого 2.5мА*ч
То-есть, бодрствуя система "сьедает" 1/20 от суточного потребления.
Идем дальше, замеренная емкость батареи 2600мАч у меня не получалась выше чем, 2300.
2300/57.7 = 39 суток.
Как по мне — нормальный результат для первой итерации системы, если учесть что к примеру GPS-трекеры с батареей 10 000мАч работают до 3 месяцев.
По поводу транзистора, хотел бы дообсудить, мосфеты выпускаются самых разных параметров, я совершенно уверен, что эта проблема точно надумана.
А так, конечно заманчиво было-бы найти транзистор на ток до 200мА с падением напряжения до 0.1В
А вообще, КТ816 обычный биполярный тоже удовлетворяет вашим условиям при токе 100-200мА у него падение напряжения внезапно порядка 0.15В. Есть ещё какие-то биполярные транзисторы с низким падением напряжения, причем это технологии ещё 60-70-х годов.
Есть ещё какие-то биполярные транзисторы с низким падением напряжения, причем это технологии ещё 60-70-х годов.
германий?
Не зря существуют гибридные транзисторы. И арсенид-галлиевые тоже в ходу. А кое-где, так досихпор у ламп нет конкурентов(микроволновка, магнетрон!).
Смешно конечно, но не так уж давно хотели делать микропроцессоры на радиолампах… на микронных размерах оказалось что и накал не нужен. И вполне могло бы получиться.
Первый попавшийся, не такой идеальный конечно, IRLML6402 — -20 вольт(P-канальный, вам же + шину размыкать?), 60 милиОм. т.е. 60 милливольт при 1А токе.
Gate Threshold Voltage -0.40...-0.95V — т.е. не больше 1 вольта. При 3.3В он гарантировано будет открыт. Перекрывает ваши потребности с лихвой.
По цене 20 шт на 1$…
При желании найти чего получше можно.
Только один ньюанс, с модулями типа SIM800 была проблема с коммутацией — тока утечки через транзистор хватало чтобы на конденсаторе модуля медленно копилось напряжение и он кратковременно пытался стартовать. Нужно этот ньюанс проверить и при необходимости параллельно модулю включить резистор на десяток килоом, погоду он не сделает а утечку нивелирует.
Часто на пасеках нет ни WIFI, ни тем более другого оборудования связи.
В предыдущих публикациях я рассматривал возможность использования NRF-24 или вообще RS-485, и возможно к ним еще вернусь (если надо будет мониторить ну совсем много ульев).
В экспериментах описанная система работала на проводах длинной 10 метров между каждым HX711 и ардуино, больше не проверял, ибо ногодрыг I2C вообще не создавался для длинных линий.
Можно попробовать передавать данные оптикой — маленьким лазерным модулем и фототранзистором, но нужен помехозащищеный протокол — солнце будет мешать, блики будут давать неожиданные помехи. Но если оформить все в правильные коллиматоры то влияние солнца можно свести к минимуму. туман… только очень плотный туман с видимостью метр-два может доставить проблемы.
Экспериментально проверено, что например RS232 работает с кабелем (экранированная витая пара) длиной 30 м со скоростью 9600 годами без сбоев.
А куда тут больше-то?
Можно я не буду комментировать остальное про оптику?
Жизненный и профессиональный опыт говорит, что при использовании человеческого кабеля — прекрасно все работает и на существенно больших дистанциях.
RS485 тут лучше будет, или оптика. Кстати минус для проводов — наводки от GSM могут гулять по этим же проводам и прямо в улей, их надо развязать от схемы по ВЧ бусинками хотябы или нашлёпками как на USB/VGA кабелях.
Что кстати, куда более логично, чем увеличение длины 3 кабелей до датчиков.
Да и закинув антенну на соседнее дерево качество сигнала сильно повысится, что в случае неустойчивого покрытия очень важно!
Спасибо за идею!
Так вот, антенна «волновой канал» 14dbi на 4-метровой мачте вполне решала проблему GPRS, а ныне — CDMA-3G-связи. И крысиные хвосты не были помехой.
Другое дело, с обычной червертьволновой эффекта может не быть.
В общем, если взять антенну Харченко, а кабель запаять на плату минуя разъемы, то проблем не будет вообще.
Можно сказать, пока он мне наиболее нравится из всех предложенных в обсуждении.
Еще добавить отключение питания GSM-модуля транзистором, и вообще замечательная схема получится!
Одним словом, мониторить одной атмегой 3 улья по параметрам вес, температура, влажность, запись звука — самое оно. А потом можно отдаваться в центральный контроллер хоть по проводам, хоть по nrf24
А так, как пчеловоды меня убедили, что вес — их все, то с него решил и начать.
atmega328 на один улей будет обладать большой избыточностью.
во-первых, я так не считаю.
во-вторых, можно взять мега88
в-третьих, я бы вообще stm32 взял
запись звука — самое оно
какая к черту избытычность запись звука на атмеге. разве что совершенно непожатый писать, но передавать его будет той еще задачкой.
А так, как пчеловоды меня убедили, что вес — их все, то с него решил и начать.вот тут главный момент. который определяет и выбор контроллера и его избытычность. масштабируемость в данном случае будет не только в количестве приборов, но и в количестве их типов. надо новый параметр — вешаем его хоть на новое отдельное устройство меряющее только новый параметр, хоть на новое устройство, меряющее и новый и старый параметр. при этом условием совместимости будет только интерфейс с головным устройством, а за интерфейсом пусть хоть полноценный комп будет стоять.
По поводу ульев в городе — это конечно хорошо, но с загазованностью мегаполисов, есть «бензиновый мед» как-то не хочется (у нас вокруг хвойные посадки, и то вкус меда уже несколько другой).
В итоге получилась автономная система со временем работы около месяца на одном заряде батареи 18650 ...
Хотел, по привычке, попенять на линейные стабилизаторы и прочее, но… поскольку необходимо частое участие пчеловода в процессе — значит проходит.
Конструкцию старался максимально упростить, дабы ее можно было повторить даже без схем, по одним фотографиям.
Отсутствие схемы — не упрощение, а косяк. И настоящей (пусть и от руки), а не фритцинг.
К тому-же, у решения от AiThinker минимальное потребление энергии (при отправке СМС не видел тока выше 100мА).
Каким амперметром проверяли? Скорее — он не успевал отреагировать.
Фоторезистор GL5528 (важно именно такой
1. Брать время от GSM, как тут уже упоминали.
2. Подключить к аналоговому входу, что-бы иметь возможность вместо digitalRead(2) подстроить порог под то, что есть в «магазине за углом».
Отнесённые на длинных проводах модули HX711:
1. Нет-ли ошибочных данных (из-за завалов фронтов сигналов и/или просадок питания на модулях)?
2. Есть-ли защита от возможных перенапряжений (см. Alexeyslav)?
…
151 — умиление трогательной беззащитностью и нежной хрупкостью цветка, божьей твари, девушки, самодельной конструкции;
…
2. Я, как пчеловод, не вижу особого смысла измерять вес каждого улья. Достаточно одного.
1. Подключение фоторезистора к цифровому входу (выше это отмечали), в следствие чего бестолковая работа в исходном коде с ним;
2. Работа с GSM модемом: нет проверки регистрации в сети, нет проверки сим карты, не отключение его для экономии заряда батарее и т.д.;
3. Длинный провода от измерительного контура;
4. Конструкция всего этого поделия.
Конструкция всего этого поделия.
Могу сказать одно — я художник — так вижу ;-)
Есть ряд "правильных" систем с RTC и модулем связи прямо на улье — но что-то они не пошли — то-ли пчелам не нравится, то-ли людям, повторяющим конструкцию.
Работа с GSM модемом: нет проверки регистрации в сети, нет проверки сим карты, не отключение его для экономии заряда батарее и т.д.;
Это все добавится, отключения нет полного в силу такого функционала модуля связи.
О бесконечности процесса доводки уже писал.
А по поводу "стыдно показывать" — знаете, опять таки "правильная" система на нескольких макетных платах и с сотней соединительных проводников выглядит куда удурчающе.
1. Есть практические наблюдения, как пчелы реагируют на 3G модуль, установленный стационарно в непосредственной близости от улья?
Бытует мнение, что пчелы плохо переносят сотовую связь. Проявляется в явлении, которое называется «слет пчел» (семья просто в полном составе улетает из улья, не путать с роением — когда из улья вылетает часть семьи с новой маткой).
2. Как быть в условиях отсутствия сотовой связи? Расположение пасек в глухих местах вполне распространенное явление.
Наблюдения есть и отчасти о них упоминается в статье
Потому и решил вынести модуль связи на несколько метров от ульев.
При отсутствии сотовой связи, как мне кажется любая другая связь тоже вряд-ли будет присутствовать.
А так, максимальное расстояние до БС в стандарте GSM900 — 35км, при наличии направленной антенны и заземления, вполне на это расстояние можно ориентироваться.
Кроме того, при полном выключении модуля, без трех минут, 24 часа в сутки ЭМИ пчел беспокоить не будут, да и кстати, при использовании направленной антенны влияние боковых лепестков сильно уменьшается.
Но это уже несколько другая история — тут надо добавлять настройку системы на уровень сигнала.
А вот накопление данных и передача их для анализа — очень хорошая идея. Динамика веса да еще в зависимости от условий (можно же еще измерять температуру воздуха, давление, влажность) весьма познавательный процесс. Как минимум можно тревогу бить при резких изменениях веса (роение, напад, банальное воровство).
Можно предусмотреть накопление данных и пакетную передачу по доступному каналу связи. Блютуз в качестве обязательного канала устанавливать (съем данных, настройка). А вот модем мобильной связи делать как подключаемый опцион (есть связь — ставим, нет — значит только блютузом пользуемся).
Очень интересная идея. И оформить устройство в виде платформы, на которую ставить можно любой улей.
Подолью еще масла в огонь:
!!! UPD!!!
Какой провод резать????
Нет, я не устроился сапером!
Только что резал провода ардуинки, и вот почему:
Наверное Вы обратили внимание, что тестовый стенд был собран на другом модуле связи — AiThinker A6.
Продавцы заявляют их полную совместимость с Goouu Tech IOT GA-6-B, который был использован для финальной сборки.
И неудивительно, ведь прошивки AiThinker-а льются в ГоооууТех.
Но не все так просто — у меня прошивальщик в упор не видил последний модуль, управление режимами выключения питания тоже отличалось.
Кроме того, модули AiThinker A6 не хотели запоминать настройки по команде AT&W/AT&W0, гоутех — запоминал.
Но это — ладно, вот сейчас будет вообще сказка — AiThinker A6 действительно не засыпал полностью и был в сети, вся система потребляла ~2.5мА "гуляя" этим параметром вверх.
При этом можно было отзвониться на номер сим-карты модуля.
Проверяя "финальный" релиз, я обратил внимание, что в режиме сна потребление снизилось до =2.3мА безо всяких выбросов вверх и списал все на особенности прошивки модуля IOT GA-6-B.
И вот теперь, пытаясь добавить функцию принудительной пробудки по звонку(для внеочередного измерения) я с удивлением обнаружил, что моя GSM-ка выключается, то-есть вообще!!!
Еее нет в сети! Тогда кто потребляет столько энергии??? Пришлось взяться за кусачки и тестер!
Для начала — ПАРАДОКС №1 — система стала потреблять всего 1.6мА, но с подключенным и запитанным адаптером CH340, при его отключении, ток потребления поднимался до замеренных ранее 2.3мА!!!
Как это происходит? непонятно!
Начал кусать провода — HX711 — потребление не изменилось!, синий (земля GSM-модуля) — минус 1.5мА!!!
Переключаюсь на режим измерения микроампер — 440 (это на спящей ардуинке, без других потребителей), подключаю CH340, воткнутый в комп — 140микроампер!
Как обьяснить данное поведение микроконтроллера — непонятно!
В общем, особого смысла ставить еще один транзистор, с его токами утечки, для отключения модуля не вижу:
В овале — так и нерасшифрованный мною элемент, наверняка транзистор, ибо за питание отвечает step-down преобразователь на другой стороне платы.
Вот разве что указанный элемент действительно является транзистором, тогда его можно заменить на более "православный" — с меньшей утечкой!
А вот каким чудом "накидываются" более 0.3мА — это действительно вопрос!
А непонятный элемент — вероятно LDO на 3.6 вольт
Входы толерантны к пяти вольтам, но питание модуля — все равно не более 3.6.
На конденсаторе GSM-модуля я фиксирую напряжение 4.02-4.10 Вольта разными тестерами, это при подключенном на вход платы +5В от USB
К тому-же, модуль перестает работать или вовсе не включается при снижении напряжения питания до 3.4В
Так что либо не-LDO, либо на другое напряжение.
И еще:
На Синкеровской плате трехногого элемента нет, зато на обоих есть step-down, указанный на фото выше, и оба понижают напряжение до 4.02В
Неопознанный элемент это таки LDO на 3.3 в, вот схема.
На самом деле, этих китайцев не поймешь — у Вас кстати схема модуля с камерой,
Я не нашел принципиалки A6 Mini, но у обычной версии LDO нет, впрочем как и визуально его не наблюдаю на плате
К тому-же, было-бы нелогично ставить конденсатор до линейного регулятора, а на нем таки 4 вольта!
Ну и как-бы в ардуинках я встречал регуляторы 3.3В с маркировкой KB 33, DE=A10, LB 33 — а тут неведома зверушка то-ли Y655V12, то-ли Y45V12
Всё вышеизложенное — эмоции, с практической ценностью около нуля.
P.S. Чудеса, не отражённые в errata (списках обнаруженных ошибок), — исчезающе редки.
Знаете, я не хочу никого топить, но:
Если критику пользователей, имеющих СВОИ публикации на Хабр-е еще можно считать конструктивной, то остальные я воспринимаю, как на 90% "токсичный" контент.
Вот к примеру (не моя)конструкция, которая продается за деньги:
Висящие тонкие провода тензодатчиков у меня не пошли дальше стенда.
Ну а GSM-модуль просто на стенке улья — это вообще слезы.
Все не так плохо — благодаря конструктивным предложениям и критике за три дня я сильно скорректировал систему, но это уже совсем другая история (и публикация)
А первичный вариант — уж пускай останется для истории как есть.
SMS-мониторинг веса трех ульев за 30$