1 2 3 4 5 6 7 8 9 10 10/10 10,00оценок: 9

Arduino Mega. Контроллер теплицы. Хроники - 3.0

Тема в разделе "Умный дом", создана пользователем Анкор Плюс, 27.04.17.

Статус темы:
Закрыта.
  1. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    На гитхабе обновил конфигуратор (новые кнопки на тулбаре), заодно выложил скетч для чистки EEPROM.

    Мега, у которой я сперва очистил EEPROM, потом закачал крайнюю версию прошивки - работает, с конфигуратором общаются. Настройки Globals. h - актуальные с гитхаба. @olegmak3 - попробуйте эту версию скачать, сильно не гонитесь за кол-вом датчиков и правил, просто поправьте номера пинов и типы датчиков на нужные в Globals. h - и всё. И настройки LCD-экране не трогайте - хай кажет то, что по умолчанию в Globals. h прописано.

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

    И да - таки попробуйте SMS-модуль закомментировать - вдруг в нём дело.
     
  2. olegmak3
    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442

    olegmak3

    Живу здесь

    olegmak3

    Живу здесь

    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442
    Адрес:
    Санкт-Петербург
    Не помню точно, но было около1500 свободной памяти, завтра уточню.
     
  3. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    Ну тут уже надо проверять по наитию, что называется. Я вот сейчас тестирую, отправляю СМС - статистику там, баланс - приходит всё, работает. Но всё может быть, конечно, именно поэтому я и предлагаю - начать с минимальной конфигурации, поотключав большинство модулей: я так делаю, когда творится непонятная фигня и неясно, где рыть - это помогает хотя бы понять, с какой конфигурации ошибки исчезают, а при какой - появляются. Именно так было отловлено парочку неприятных неочевидных багов, вполне возможно, что вы натолкнулись на один из таких.

    И да: если вдруг выясните, что при отключении какого-то модуля ошибка исчезла, и для этого модуля есть отладочный режим в прошивке - можно сразу включить этот отладочный режим, включить этот проблемный модуль обратно в прошивку и посмотреть, что происходит, в мониторе порта - вполне возможно, станет понятно, на каком месте виснет.
     
  4. Shelllonn
    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300

    Shelllonn

    Живу здесь

    Shelllonn

    Живу здесь

    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300
    Note shell # cd Теплица/GreenhouseProject.git/
    note GreenhouseProject. git # git log
    копируем ключ
    note GreenhouseProject. git # git checkout 42f6a48077e214fda956aba9c01f2a446b1e170b
    Примечание: переход на «42f6a48077e214fda956aba9c01f2a446b1e170b».

    Вы сейчас в состоянии «отделённого HEAD». Вы можете осмотреться, сделать
    экспериментальные изменения и закоммитить их, также вы можете отменить
    изменения любых коммитов в этом состоянии не затрагивая любые ветки и
    не переходя на них.

    Если вы хотите создать новую ветку и сохранить свои коммиты, то вы
    можете сделать это (сейчас или позже) вызвав команду checkout снова,
    но с параметром -b. Например:

    git checkout -b <имя-новой-ветки>

    HEAD сейчас на 42f6a48... Глобальный редизайн модуля полива
    откат
    note GreenhouseProject. git # git checkout -b 42f6a48077e214fda956aba9c01f2a446b1e170b
    Переключено на новую ветку «42f6a48077e214fda956aba9c01f2a446b1e170b»
    возврат на мастер
    note GreenhouseProject. git # git checkout master
    Переключено на ветку «master»
    Ваша ветка опережает «origin/master» на 19 коммитов.
    (используйте «git push», чтобы опубликовать ваши локальные коммиты)

    note GreenhouseProject. git # git pull
    remote: Counting objects: 28, done.
    remote: Compressing objects: 100% (7/7), done.
    remote: Total 28 (delta 20), reused 28 (delta 20), pack-reused 0
    Распаковка объектов: 100% (28/28), готово.
    Из https://github.com/Porokhnya/GreenhouseProject
    89f8245..3c11c21 master -> origin/master
    * [новая метка] 0.8 -> 0.8
    Обновление f854ecb..3c11c21
    Fast-forward
    ClearEEPROM/ClearEEPROM.ino | 17 +
    GreenHouseConfig_SOURCE.zip | Bin 2673819 -> 2777015 bytes
    README. md | 4 +
    SOFT/GreenHouseConfig.exe | Bin 717824 -> 770560 bytes
    screen1.png | Bin 73673 -> 105633 bytes
    screen10.png | Bin 21436 -> 86419 bytes
    screen11.png | Bin 26696 -> 74837 bytes
    screen12.png | Bin 0 -> 74918 bytes
    screen13.png | Bin 0 -> 81267 bytes
    screen14.png | Bin 0 -> 83542 bytes
    screen15.png | Bin 0 -> 78119 bytes
    screen2.png | Bin 63087 -> 83483 bytes
    screen3.png | Bin 56678 -> 75164 bytes
    screen4.png | Bin 58278 -> 77945 bytes
    screen5.png | Bin 58737 -> 86067 bytes
    screen6.png | Bin 51048 -> 77886 bytes
    screen7.png | Bin 57258 -> 67100 bytes
    screen8.png | Bin 56332 -> 67687 bytes
    screen9.png | Bin 64116 -> 66664 bytes
    19 files changed, 21 insertions(+)
    create mode 100644 ClearEEPROM/ClearEEPROM.ino
    create mode 100644 screen12.png
    create mode 100644 screen13.png
    create mode 100644 screen14.png
    create mode 100644 screen15.png
    note GreenhouseProject. git #

    примерно так в консоли
     
  5. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    Это то ясно, но не всем доступно ;) В том смысле, что не все владеют гитом даже в минимальной степени. Ничего, выловим косяк, если он есть. Странно, что у мну не ловится ничего такого, что могло бы хоть как-то указать на ошибку. Откатываться сильно назад - тоже не вариант, я погрязну в версиях :(
     
  6. Viktorovich4232
    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95

    Viktorovich4232

    Живу здесь

    Viktorovich4232

    Живу здесь

    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95
    @DIYMan, Дмитрий, добрый день! Можно ли исключить из графиков в веб морде температуру прибора. Не снять галочку на графигке, а вообще не заносить ее туда. Так как при рестарте прибора в график заносится температура -45 и соответственно устанавливается масштаб по шкале температур. В результате чего графики температур воздуха субстрата и тд зрительно сливаются. А температуру прибора, если и необходимо можно глянуть в показаниях датчиков.
     
  7. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    А откуда у вас температура -45, собственно? Ни разу не замечал подобной фишки. Исключить - можно, конечно, но нужно ли? Дам наколку сходу: открываете WEB/cron.php, и строчки, начиная с 217-й, оборачиваете в условие:

    1. Было:
    Код:
    $sql = "INSERT INTO controller_data(controller_id,sensor_type_id,module_id,sensor_index,sensor_data) VALUES($controller_id,$sensor_type_id,$module_id,$sensorIdx,$temp);";
                      if($SIMULATION)
                        echo "$sql\n";
                      else
                        $dbengine->exec($sql);
    2. Стало:
    Код:
    if($moduleName != "0")
    {
    $sql = "INSERT INTO controller_data(controller_id,sensor_type_id,module_id,sensor_index,sensor_data) VALUES($controller_id,$sensor_type_id,$module_id,$sensorIdx,$temp);";
                      if($SIMULATION)
                        echo "$sql\n";
                      else
                        $dbengine->exec($sql);
    }
    И всё, собственно.
     
  8. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    @Viktorovich4232, обновил на гитхабе, можете запулить изменения.
     
  9. Viktorovich4232
    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95

    Viktorovich4232

    Живу здесь

    Viktorovich4232

    Живу здесь

    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95
    У меня практически постоянно после перезагрузки Меги температура прибора записывается -45 а потом опять нормально. Может у вас хрон реже дергает данные поэтому не замечали. У меня раз в минуту
     
  10. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    @Viktorovich4232, скажите - с крайней версией прошивки у вас есть какие-нибудь проблемы? И по части конфигурации, если не затруднит - в двух словах: сколько каких датчиков, используете ли конфигурацию по-максимуму в части модулей и т. п. - хочу докопаться до сути проблемы у @olegmak3, т. к. не вижу сходу ничего криминального в прошивке из последних изменений.

    Конкретные вопросы к вам такие:

    1. Юзаете ли SMS-модуль?
    2. Юзаете ли Wi-Fi-модуль?
    3. Юзаете ли универсальные модули?

    Остальные - чуть выше перечислил - кол-во/тип датчиков и т. п. Если не затруднит :|:
     
  11. Shelllonn
    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300

    Shelllonn

    Живу здесь

    Shelllonn

    Живу здесь

    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300
    Звонок в дата центр
    - Скажите, у нас датчик показывает 200 градусов, это нормально?
    -Да, у нас пожар

    Может наоборот его в приоритет, и орать всем при повышении?
     
  12. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    Я пока просто убрал из графиков в вебморде - там он чисто справочный. В самой вебморде при просмотре текущих показаний он присутствует, а уж что там делать по превышению температуры с него - можно будет в будущем подумать.
     
  13. Viktorovich4232
    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95

    Viktorovich4232

    Живу здесь

    Viktorovich4232

    Живу здесь

    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95
    1. SMS-модуль да.
    2. WI-Fi да
    3. универсальных сейчас нет.
    4. Дисплей NEXTION на 1Wire.
    5 Датчик влажности 1 - Si7021
    6. Температуры 3 датчика DS18B20
    7. PH (пока только датчик помпы как раз встремляю в корпус)
    8. Управление окнами через регистры включено работает но используется
    9. Полив 2 канала
    10. Через управление пинами вентиялция по температуре и увлажнитель повлажности
    11. Через таймеры подача питательного раствора, аэрация питательного раствора, ежечастностное десятиминутное проветривание.

    Все работает отличненько, завтра у же планирую черенок помидора подопытным сделать :)

    PS
    Работа с универсальными модулями в прошивке тоже задействована и с исполнительным и сдатчиками. Сейчас просто железо распихиваю по платам и корпусам, по этому с крайней версией сами модули еще не тестил. До этого через НРФ и 485 и по однопроводной работало ровно.
     
    Последнее редактирование: 03.06.17
  14. Viktorovich4232
    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95

    Viktorovich4232

    Живу здесь

    Viktorovich4232

    Живу здесь

    Регистрация:
    28.02.17
    Сообщения:
    145
    Благодарности:
    95
    В противопожарных целях лучше нормальные датчики повесить и по ним помимо того что орать можно и огнетушение включать. А встроенный если смотрели так себе к тому же управление как правило установлено в удалении от пожароопасных приборов
     
  15. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.898
    Адрес:
    80 км от Краснодара
    Ттт, чтоб не сглазить ;) Тогда ещё одна просьба - фоточки работающего добра - хочу подсобрать альбом, чтобы душонку мою беспокойную это дело грело долгими зимними ночами :)]:aga: Согласитесь, приятно ведь, когда ощущаешь, что не напрасно что-то делается ;)
     
Статус темы:
Закрыта.