Контроллер теплицы на Arduino Mega

Тема в разделе "Глядите, что я сделал", создана пользователем DIYMan, 24 июн 2016.

  1. Tomasina

    Tomasina Иномирянин

    думаю затем, что работа с float требует больше памяти (4 байта вместо 1+1 байт) и сильно медленнее работы с целочисленными. Да и для хранения в EEPROM все равно придется их разбивать.
     
  2. AlexVS

    AlexVS Гик

    И где там 1+1? Наверное все же 2+2. Про медленнее - согласен.
     
  3. Tomasina

    Tomasina Иномирянин

    я код не смотрел, но для температурного диапазона теплицы вполне достаточно 110 единиц до запятой (-45...+65), и 10 после (0...9), что укладывается в 1+1 byte, а то и вовсе в 1 byte, если придумать компрессию.
     
  4. AlexVS

    AlexVS Гик

    Дык я же вставил вырезку из кода, там не Byte, там Int использован.
     
  5. Tomasina

    Tomasina Иномирянин

    есть еще поле для оптимизации ;)
     
  6. AlexVS

    AlexVS Гик

    Есть еще один вопрос, может даже замечание.
    Код (C++):
      result->Whole = tc_100/100;
      result->Fract = tc_100 % 100;
    При таком подходе температура например 21,06*С превращается 21,6*С. Или я не прав и у вас в коде это учтено?
     
  7. DIYMan

    DIYMan Гуру

    Так удобнее оперировать. Насчёт структуры DS18B20Temperature - уже и не упомню, почему я знак отдельно вынес, если честно. Эта структура промежуточная, нужна только как ответ от датчика, возможно, поэтому сильно не стал заморачиваться. Как понимаете, любой код со временем требует рефакторинга, и мой - не исключение ;)
    Например? В том примере, что вы привели, структура DS18B20Temperature никуда дальше не идёт, она промежуточная, поэтому какие там будут имена - не суть. Можно было вообще без структуры сделать, например. Со временем многие детали вида "почему я тут сделал вот так?" уплывают из памяти :) Заметьте, я никогда не позиционировал свой код как эталон - нет небезгрешного кода ;)
     
  8. DIYMan

    DIYMan Гуру

    Конечно ;) Должен же я чем-то зимой заниматься :) :) :)
     
  9. DIYMan

    DIYMan Гуру

    Учтено. 6 - это 06 при отображении для пользователя, всё нормально. 60 - это 60. Как вы понимаете, используются сотые доли ;)
     
  10. DIYMan

    DIYMan Гуру

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

    К сожалению, сейчас из-за нехватки времени практически не занимаюсь проектом, вся надежда на долгие зимние вечера :) Но - добью обязательно ;)

    И кстати сказать: если кто чувствует в себе силы стать соучастником проекта - милости прошу: прошивка модульная, всегда можно взять - и написать свой модуль, который будет работать лучше, чем аналогичный мой ;) Плюс - по ходу выявить косяки, которые допустила моя садовая голова. Из плюшек: респект и уважуха :)
     
  11. AlexVS

    AlexVS Гик

    Жаль, что не чувствую за собой такой силушки, слабоваты познания мои в Сях :(
    Спасибо за комменты.
     
  12. DIYMan

    DIYMan Гуру

    Всем привет! Прошу прощения за долгое отсутствие - много работы было. Вкратце - дела продвигаются, прошивка уже обросла всякими вкусностями, открыт сервис для мониторинга и управления контроллером с внешнего мира: http://gardenboss.ru/

    Дополнительная информация есть на моём Youtube-канале: https://www.youtube.com/channel/UCcvHb77Q8pHkT5l4VkaLElQ , а также в обсуждении проекта: https://www.forumhouse.ru/threads/399693

    Ещё раз прошу прощения - я просто физически не могу разорваться на все места, да и сорить однотипными сообщениями на разных форумах - моветон, считаю ;)
     
    ostrov и ИгорьК нравится это.
  13. ostrov

    ostrov Гуру

    Димон, ты где пропадал?!
     
    Последнее редактирование: 23 июн 2017
    DIYMan нравится это.
  14. DIYMan

    DIYMan Гуру

    Работал как чёрт, да и сейчас работаю :) Физически времени на всё не хватает, но с контроллером дел не бросаю, уже чего только не написано :)

    Сейчас хочу сделать информер графический, чтобы с сервиса картинку выдавал - как там в теплице :) Тут, гляжу, можно картинку по URL вставить как раз - вот и буду тестировать :)
     
  15. DIYMan

    DIYMan Гуру

    Ну вот, вроде первую версию информера приделал :) На сервис, кста, контроллер пуляет данные уже несколько дней - задачи там получает, статус свой отправляет.

    Потом хочу ещё поддержку снимков с вебкамер ввести, чтобы можно было видеть, кто пи@дит урожай :) :) :)
     
    Последнее редактирование: 24 июн 2017
  16. DIYMan

    DIYMan Гуру

    Первая версия мини-платы вчёрную протестирована, на сайте в разделе "Статьи" (http://gardenboss.ru/kbase) выложена инфа по ней. Если вкратце: GSM, Wi-Fi, все дела. Общение с датчиками и с силовой частью - посредством универсальных модулей по шине RS-485. Данная версия платы представляется минимально достаточной, с расширяемым функционалом (посредством регистрации любого количества универсальных модулей), простой, удобной. Есть сигнальные линии обратной связи (в статье на сайте описано, что к чему и зачем ;)).

    Сейчас на очереди разработка плат универсальных модулей (с датчиками и исполнительного), потом - тестирование этого добра, потом - постановка в работу. Параллельно идёт адаптация прошивки под Arduino Due, плюс будет писаться поддержка семидюймового TFT-экрана под это дело. Из намеченных двух лет на разработку - осталось несколько месяцев, надеюсь закончить в срок, хотя загадывать - не берусь, по понятным причинам ;)

    Ну и - пара фоток:
    1.jpg 2.jpg

    Чуть-чуть трёпа про неё:

     

    Вложения:

    • 2.jpg
      2.jpg
      Размер файла:
      142,4 КБ
      Просмотров:
      88
  17. DIYMan

    DIYMan Гуру

    Сижу, смотрю вот на это:

    screen.png

    и плачу - ну не верстальщик я, и не дизайнер: такой унылой вебморды свет ещё не видывал :) Перекидывать всё это дело на bootstrap - нога не поднимается, слишком много мороки. А вот отверстать бы нормально (хрен с ним даже с адаптивом) - ну не шмагла я, не шмагла!

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

    Плыли мы плыли, плыли мы плыли, и вот чувствую - берег близко, не обоср@ться бы, с таким-то убожеством :)
     
  18. Tomasina

    Tomasina Иномирянин

    Нормально там все. А то понавешают моднявых штучек, и все начнёт еле ворочаться, ла десятки скриптов в фоне грузить.
     
    DIYMan нравится это.
  19. DIYMan

    DIYMan Гуру

    Да дело не в моднявых штучках - у меня просто цветовой кретинизм, поэтому дальше серого не пошёл :) А там бы как-то цвета основные подобрать, заголовки выделить поинтересней, верхнее меню, левое меню закладками обозначить - в общем, цветовая косметика и чуть переоформления, чтобы визуально не было нагромождения однотипных элементов. Владел бы виденьем - сделал бы, не вопрос, даром что сам для текущей версии CSS писал. Но - дебил в этом деле, от слова "полупокер" :)
     
  20. DIYMan

    DIYMan Гуру

    Допиливаю вебморду пока, как могу - чтобы хоть как-то поприличнее стала выглядеть, с цветовой гаммой - потом определимся, сейчас хотя бы элементы скомпоновать нормально:

    screen.png

    Левое меню - вымораживает :)