Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Вопрос по MegaD-328: необходимо сделать так, чтобы контроллер не отправлял запрос на сервер при изменении состояния одного из 7 портов. Но остальные 6 должны работать штатно. Такое возможно?
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Можно убрать из настроек адрес сервера, а для портов, для которых нужно отправлять запросы на сервер, прописать URL в поле Net. Если хватит размера поля.
Но на мой взгляд все это лишнее. Сервер с легкостью может игнорировать неинтересные ему запросы.
Но на мой взгляд все это лишнее. Сервер с легкостью может игнорировать неинтересные ему запросы.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Андрей, спасибо за идею. Сервер справляется, но у меня к порту подключен датчик с импульсным выходом и при его работе сильно наполняется журнал логов, что затрудняет работу с ним. Не критично конечно, но было бы удобней отключить отправку с контроллера. Попробую использовать ваш вариант.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Andrey_B, увеличьте ,пожалуйста, размер поля PHONE на одну позицию - не хватает для белорусов +375 xx xxx-xx-xx
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Возможно, будет эффективнее отключить логирование для определённого URL на самом сервере.ScoobyDoo писал(а): ↑29 ноя 2018, 16:38Андрей, спасибо за идею. Сервер справляется, но у меня к порту подключен датчик с импульсным выходом и при его работе сильно наполняется журнал логов, что затрудняет работу с ним. Не критично конечно, но было бы удобней отключить отправку с контроллера. Попробую использовать ваш вариант.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Доброго дня всем. Пытаюсь самостоятельно собрать новый контроллер , есть вопрос Андрею :
1. Кнопка reset вешается на порт reset без всякого согласования напрямую, или нужны какие-то согласующие компоненты, если да то какие?
2. Пытаюсь прикрутить системный монитор , а кнопку включения-выключения нужно вешать на реальный порт-жаль порта, Андрей нет у вас планов подключить такую кнопку на внутренний служебный порт XP4, если да ,то когда можно ждать реализации?
1. Кнопка reset вешается на порт reset без всякого согласования напрямую, или нужны какие-то согласующие компоненты, если да то какие?
2. Пытаюсь прикрутить системный монитор , а кнопку включения-выключения нужно вешать на реальный порт-жаль порта, Андрей нет у вас планов подключить такую кнопку на внутренний служебный порт XP4, если да ,то когда можно ждать реализации?
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Да, с белорусами как-то нехорошо получилось.
Очистка EEPROM обязательна!
https://ab-log.ru/files/File/megad-2561 ... a1-hex.zip
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
В даташите утверждается, что подтягивающий резистор находится внутри микроконтроллера. Теоретически ничего не нужно.
Но в модуле MegaD-2561 пин Reset все-таки соединен с +3.3В через резистор 10кОм.
Пока такая кнопка не планируется. И хотя наработки по системному монитору есть, существуют даже готовые экземпляры, наличие такого дисплея увеличивает как стоимость компонентов, так и стоимость работ, а реальной необходимости в таком мониторе в большинстве случаев нет.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Понял, спасибо за ответ, жаль рабочего порта , но что поделать:(
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Андрей, на форуме ih поднялся вопрос обработки значений с датчиков, подключенных к шине 1-wire. Вопрос в частности в том, зачем нужен статус busy? Можно ли от него избавиться, чтобы со стороны сервера не делать новый опрос если контроллер ответил busy?
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Датчик DS18B20 отдает актуальную температуру не сразу. Ему требуется время. В 12-битном разрешении подготовка значения температуры занимает 850 мс. Почти секунда.
Прошивка контроллера устроена таким образом, чтобы избегать подобных задержек.
В режиме 1WBUS команда на конвертацию отправляется каждые 30 секунд.
Если сервер со своим запросом попал в этот промежуток времени (между командой на конвертацию и 850 мс), контроллер вернет "busy". Это значит, что у датчиков еще нет актуальной температуры. Они ее считают.
Контроллер не станет ждать датчики. У него могут быть другие важные задачи. Сервер же, получив такой статус, должен подождать как минимум секунду и сделать запрос заново.
Можно делать иначе.
Сервер может отправлять команды "cmd=conv" (конвертация) + 1 секунда + "cmd=list" дуплетом. Тогда а) температура всегда будет актуальная на текущий момент времени, б) никогда не будет "busy".
И это все обсуждалось не раз. Да и здесь описано.
Прошивка контроллера устроена таким образом, чтобы избегать подобных задержек.
В режиме 1WBUS команда на конвертацию отправляется каждые 30 секунд.
Если сервер со своим запросом попал в этот промежуток времени (между командой на конвертацию и 850 мс), контроллер вернет "busy". Это значит, что у датчиков еще нет актуальной температуры. Они ее считают.
Контроллер не станет ждать датчики. У него могут быть другие важные задачи. Сервер же, получив такой статус, должен подождать как минимум секунду и сделать запрос заново.
Можно делать иначе.
Сервер может отправлять команды "cmd=conv" (конвертация) + 1 секунда + "cmd=list" дуплетом. Тогда а) температура всегда будет актуальная на текущий момент времени, б) никогда не будет "busy".
И это все обсуждалось не раз. Да и здесь описано.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
А может контролер отправить "не актуальную" (предыдущую) температуру, если запрос попал в эти 850 мс?
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Для режима 1W так и делается. Потому что есть функция термостата и Program.
Для режима 1WBUS так контроллер делать не будет, потому что для этого потребуется хранить в памяти адреса и значения. Портов 38 и к каждому теоретически можно подключить пару десятков датчиков.
Кроме того, контроллер в этом режиме должен сам периодически опрашивать шину, считывать значение каждого датчика на шине, тратить на это время. А это нецелесообразно, так как ему эти значения не нужны, а сервер опрашивает порт с той периодичностью, с которой считает нужным. Раз в 2-5 минут, например, для большинства задач более, чем достаточно.
Для режима 1WBUS так контроллер делать не будет, потому что для этого потребуется хранить в памяти адреса и значения. Портов 38 и к каждому теоретически можно подключить пару десятков датчиков.
Кроме того, контроллер в этом режиме должен сам периодически опрашивать шину, считывать значение каждого датчика на шине, тратить на это время. А это нецелесообразно, так как ему эти значения не нужны, а сервер опрашивает порт с той периодичностью, с которой считает нужным. Раз в 2-5 минут, например, для большинства задач более, чем достаточно.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Да, пока не начинают безудержно писать скрипты, обращающиеся к одним и тем же датчикам. Не вводя переменной, которая хранит и монопольно обновляется.
И контроллер получает задачу умереть на одновременных запросах шины.
Я правильно понял, что в случае с шиной сервер каждый раз обращается к датчикам напрямую.
Но при этом существуют еще и опросы шины со стороны самого контроллера.
А нельзя ли эти запросы (самого контроллера) сделать отключаемыми?
Если всю логику отдали серверу, и контроллер этими запросами только создает никому не нужное "занято"?
И контроллер получает задачу умереть на одновременных запросах шины.
Я правильно понял, что в случае с шиной сервер каждый раз обращается к датчикам напрямую.
Но при этом существуют еще и опросы шины со стороны самого контроллера.
А нельзя ли эти запросы (самого контроллера) сделать отключаемыми?
Если всю логику отдали серверу, и контроллер этими запросами только создает никому не нужное "занято"?
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
В случае 1WBUS контроллер каждые 30 секунд отправляет общую команду на конвертацию для всех датчиков. Не для каждого индивидуально. Это не отнимает много времени.
Что касается отключения запросов самого контроллера. В принципе есть "хак". Можно установить тип порта "OUT/DS2413". Для этой конфигурации доступна команда "cmd=list", но автоматически команды на конвертацию средствами контроллера не отправляются.
Что касается отключения запросов самого контроллера. В принципе есть "хак". Можно установить тип порта "OUT/DS2413". Для этой конфигурации доступна команда "cmd=list", но автоматически команды на конвертацию средствами контроллера не отправляются.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
А по какой причине термостат порта 1Wire может не отработать? Все порты на одной меге отработали, а один 10 порт упустил температуру ниже заданного и не выполнил команду нагрева. Пока было 2 раза за неделю. Это может быть из-за перезагрузки меги в момент термостатирования или если датчик уходил в обрыв, например? fw: 4.29b3
Пересохранение порта сразу включает нагрев как и нужно.
Пересохранение порта сразу включает нагрев как и нужно.
- Вложения
-
- TeamViewer_2018-12-03_20-12-47.png (28.68 КБ) 3855 просмотров
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
А портом P20 никто кроме термостата не управляет? Другой порт, сервер?
Перезагрузка - вряд ли (пересохранение - та же перезагрузка).
Обрыв линии - теоретически возможно. Это нужно как-то воспроизвести.
Перезагрузка - вряд ли (пересохранение - та же перезагрузка).
Обрыв линии - теоретически возможно. Это нужно как-то воспроизвести.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Добрый день!Andrey_B писал(а): ↑03 ноя 2018, 14:59Немного расширил функцию приложения под Windows для еще большего удобства.
Теперь если его просто открыть, не указывая никаких параметров, то запустится что-то вроде визарда.
megad-cfg-2561-wiz.png
Программа автоматически просканирует сеть на предмет доступных устройств и предложит указать IP-адрес контроллера, который нужно перепрошить.
Если нажать Enter, то будет прошит первый из списка. Пароль по умолчанию "sec".
В текущий момент программа тестовая, так как у нее есть некоторые проблемы, которые требуют решения.
http://ab-log.ru/files/File/megad-cfg/m ... 61-wiz.zip
При запуске в win10 (пробовал просто запуск и от имени админ.) после scan не показывает список найденных, предлагает указать IP/ Ввожу IP - далее пишет connect
и всё....
может где то не так делаю, подскажите...
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
В данном случае это означает, что в ОС несколько сетевых интерфейсов, и пакеты уходят не в тот.
В этом случае визард работать не будет. Нужно указать все ключи вручную и дополнительно указать локальный IP-адрес нужного интерфейса через опцию --local-ip
В этом случае визард работать не будет. Нужно указать все ключи вручную и дополнительно указать локальный IP-адрес нужного интерфейса через опцию --local-ip
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Спасибо! отключил виртуалку - всё по картинке. ТОлько зависла на последней "writing confoguration..." вот сижу жду...
Последний раз редактировалось rial2001 04 дек 2018, 17:49, всего редактировалось 1 раз.