Страница 6 из 12

Re: Помогите новичку!!!!

Добавлено: 28 авг 2017, 04:08
Bonefolder
У меня этих датчиков нет. Но читал, что они имеют проблему с зависанием, при слишком частом опросе. Увеличьте период опроса, скажем, до 20-30 сек.
Задержка в 1 секунду.... зависит от того, что вы прописали в настройках. По вашему описанию похоже на то, мега ждёт ответа от сервера, недождавшись - выполняет ценарий по умолчанию.

Re: Помогите новичку!!!!

Добавлено: 29 авг 2017, 08:13
Andry
Я так понял нужно правильно настроить сервер.У меня MajorDoMo,и я настроил виртуальные кнопки они работают при нажатии входов,значит сервер работает в смысле выполняет сценарий.Я так понял задержки не должно быть,по крайний мере заметной?

Re: Помогите новичку!!!!

Добавлено: 29 авг 2017, 12:34
Andrey_B
Никакой задержки быть не должно.

Re: Помогите новичку!!!!

Добавлено: 29 авг 2017, 13:01
Andry
Понял,спасибо.

Re: Помогите новичку!!!!

Добавлено: 08 сен 2017, 01:32
Andry
Тут такое дело выше я писал и скидывал фото графика скающего при роботе датчика DHT22,случайно нашол причину.Стояла галочка srv loop .Галку убрал скакание прикратилось .Megad-ID ничего не прописано.Как может влиять на датчик галочка srv loop?Теперь датчик работает нормально и график не скачет в 0.Прошивка fw: 3.55.
График 2.png
График 2
График 2.png (160.13 КБ) 2520 просмотров
На фото видно с включеной и отключенной галкой,так случайно нашол.

Re: Помогите новичку!!!!

Добавлено: 08 сен 2017, 18:54
Andrey_B
Это все потому, что вы слишком часто опрашиваете датчик. Поясню.
DHT22 нельзя опрашивать чаще, чем раз в 0,4 секунды. Иначе в ответ он вернет нули.
Функция srv-loop тоже опрашивает порты. Так вот если попытаться запросить состояние порта внешним запросом сразу же после работы srv-loop, когда 0,4 секунды еще не прошло, датчик вернет 0.
Но кое-что исправлено в версии 3.57beta1. Попробуйте.
http://ab-log.ru/files/File/ip_manager3 ... a1-hex.zip

Re: Помогите новичку!!!!

Добавлено: 09 сен 2017, 00:41
Andry
Спасибо,большое .Протестирую отпишусь,тяжело начинающему.

Re: Помогите новичку!!!!

Добавлено: 09 сен 2017, 01:03
Andry
Прошил тестирую,но всё равно при интенсивном опросе з браузера иногда проскакивают ноли,надеюсь с серной программы етого небудет. Галку поставил.Есть ли возможность сохранения настроек? При прошивке наново всё выставлял.

Re: Помогите новичку!!!!

Добавлено: 09 сен 2017, 09:59
Andrey_B
Что вы понимаете под "интенсивном опросом"? Как я писал выше, попытка считать показания чаще, чем раз в полсекунды (точнее 0,4 для AM2303, значение получено экспериментально и может отличаться для других вариантов/экземпляров) приводит к сбою. Это не вина прошивки. Это особенность работы датчика DHT22.
Хуже того. Если вы откроете документацию на AM2302/AM2303, то прочитаете вот это.
"Read the sensor minimum time interval for the 2S; read interval is less than 2S, may cause the temperature and humidity are not allowed or communication is unsuccessful, etc."
То есть производитель вообще рекомендует опрашивать датчик не чаще, чем раз в 2 секунды! Неудивительно, что при интенсивном опросе датчик выдает некорректные значения.

Все, что может сделать прошивка контроллера, это попытаться кешировать значения в случае неприличного поведения пользователя. Возможно для MegaD-2561.
Но учитывая тот факт, что датчики DHT22 постепенно уступают более точным и быстрым I2C собратьям, не знаю, насколько это действительно необходимо.

Re: Помогите новичку!!!!

Добавлено: 10 сен 2017, 11:41
Andry
Ну я думаю необходимо.Во первых всего один порт задействуется ,второе можно сразу увидеть показания без каких либо серверов.Трете я читал вы писали ,что точность у этого датчика приемлемая,и достаточно для большинства задач.А можно зделать на уровне прошивки опрос, например 2сек,или как вы писали зделать буфер или при показании (совпадении)двух нулей влажность -температура оно выдавало предыдущий вариант?Написал наверное сумбурно извините я не программист.Стесняюсь спросить а можно зделать подержку ходовых датчиков по шине I2C,чтобы сразу видеть показания.И можно снимать показания поствив датчик HTU21D или BMP180 без костылей в виде драйвера?Просто мне как не программисту,тяжело и так отстроить сервер,а тут было б удобно поддержка еще пары датчиков прям с коробки.

Re: Помогите новичку!!!!

Добавлено: 10 сен 2017, 12:03
Andrey_B
Кеширование значений для DHT22 можно сделать только в прошивке для MegaD-2561. Но снова вопрос целесообразности. DHT22 в исполнении AM2302 - недостаточно надежный датчик даже для домашнего применения. Имеет свойство подвисать. Поведение разнится от экземпляра к экземпляру. DHT22 в исполнении AM2303, кажется, лишен этих недостатков, но его цена, которая в текущий момент находится в районе 400-500 руб не кажется разумной. В этом смысле куда проще использовать HTU21D, который дешевле, быстрее, надежнее.
Вывод показаний ходовых I2C-датчиков без внешних драйверов уже реализован в MegaD-2561. В 328-й сделать это нельзя.
По поводу работы через "один порт". Да, I2C-датчикам нужно 2 порта: SCL и SDA. Но особенность реализации поддержки I2C-датчиков в контроллерах MegaD такова, что на все датчики можно использовать только один SCL порт. Это означает, что количество необходимых портов равно количеству датчиков + 1. Не слишком большая разница с DHT22. Правда? Более того, датчики с разными адресами можно вешать на один порт. А это значит, что один и тот же SDA-порт может быть использован для подключения HTU21D/Si7021, BME280, MAX44009, SSD1306 и т.д.

Re: Помогите новичку!!!!

Добавлено: 10 сен 2017, 12:08
Andry
Ткните пожалуйста носом на схему MegaD-2561,если она есть? Судя по описанию MegaD-2561 заменить минимум две D328,оно даже более инетересно.D328 я так понял будет отходить понемногу и сразу наверное нужно прыгать на MegaD-2561?

Re: Помогите новичку!!!!

Добавлено: 10 сен 2017, 12:14
Andrey_B
Andry, схема фактически та же самая. Есть только нюанс с портами, которые используются для SPI-программирования. Они у atmega2561 другие.
MegaD-2561 заменяет даже больше, чем два MegaD-328, так как у нового контроллера в прошивке доступно 38 портов. Фактически портов еще больше, но они зарезервированы для внутреннего использования: подключение RTC, кнопка Erase EEPROM.

Re: Помогите новичку!!!!

Добавлено: 10 сен 2017, 12:17
Andry
А готовой схемы нет?Просто я хочу попробовать розвести под себя печатку для лут,не трача времени на изучения даташита и лепить демоплатку на соплях угадуя порты.

Re: Помогите новичку!!!!

Добавлено: 12 сен 2017, 17:58
Andry
Andrey_B писал(а):Andry, схема фактически та же самая. Есть только нюанс с портами, которые используются для SPI-программирования. Они у atmega2561 другие.
В смысле другие,не такие как в даташите? В даташите пины 11-SCK.12-MOSI.13-MISO и 20-ресет,что не так? Почал рисовать платку,буду использовать стандартный интернет шилд(вытяну с с контроллера D328 у меня на панельке)Подскажите по пинам 2561.Интересует на какие ножки 2561 садится INT и CS ENC28J60?И еще очиска EEPROM на каких ногах сидит.По остальных вроде понятно. RTC это часы?А на каких они пинах будут?

Re: Помогите новичку!!!!

Добавлено: 12 сен 2017, 21:40
Andrey_B
В отличие от atmega328 микроконтроллер atmega2561 программируется пинами 2 - PDI, 3 - PDO, 11 - SCK.
INT не используется, а CS на SS, пин 10.
EEPROM - 44
RTC - 34, 35

Re: Помогите новичку!!!!

Добавлено: 12 сен 2017, 22:42
Andry
Большое спасиба,буду дальше делать.Уже щас понимаю что лутом очень тяжело будет зделать,очень всё плотно да и привязан я под габариты и интернет шилд.Хотелось бы так как у вас,по стандартным пинам вывести разъемы.Ну и мне много не надо одного будет достаточно чтобы перекрыть мой часный домик.Одно не понимаю а почему контролер 2561 так дорого стоит. унас в интернет магазинах 11-12 доларов :( .В китае дешевле только стрёмно,когда то много читал как там поделают микроконтроллеры или брак подсовывают.

Re: Помогите новичку!!!!

Добавлено: 12 сен 2017, 22:50
Andry
Еще раз извините за глупые вопросы. просто поставлю стандартную колодку под SPI интерфейс,там MOSI ето 2 пин 2561?и MISO-3пин? Смотрю у вас пины 2 и 3 на 2561 выведены на колодку XP1-XP2 мне их выводить как у вас они потом будут задействуваны?Или ето только для программирования?. У меня старенький STK500 программатор вроде этот чип поддерживает.И пины 34 и 35 вроде у вас выведено на внутреннюю 16пиновую колодку,есть ли смысл од дельно выводить?Последний вопрос по SO и SI(ENC28J60). Если MOSI и MISO на других пина тогда и SO на 3 пин а SI на 2? И какие теперь порты на 12 и 13 пинах 2561?

Re: Помогите новичку!!!!

Добавлено: 13 сен 2017, 09:13
Andrey_B
Тормозной диск автомобиля стоит пару тысяч, в китае дешевле (если его не поведет сразу же после пары интенсивных торможений), но я лично хорошо понимаю, почему автомобиль стоит так дорого, особенно тот, что едет... На этом обсуждение экономических вопросов предлагаю отложить и сконцентрироваться на технических.
atmega2561 не использует MISO/MOSI для программирования. Вместо этого он использует TXDO/RXDO (PDO/PDI, SPI Serial Programming Data Otput/Input).
Откройте пожалуйста даташит на микроконтроллер. Например, разделы 13.3.5 и 30.8.1
Да, эти два порта (E0/E1) выведены на 34-пиновые разъемы из-за чего желательно отключать исполнительные модули в случае прошивки контроллера SPI-программатором (если на эти порты попадают выходы и они подключены к чему-то критическому; в момент прошивки программатором порты могут переключаться). Но учитывая конструкцию и расположение разъема для SPI-программирования в контроллере MegaD-2561, прошивка с подключенным исполнительным модулем крайне маловероятна.
По поводу подключения микроконтроллера к ENC28J60
CS - B0(10); SO - B3(13); SI - B2(12); SCK - B1(11)
Как делать - решать вам. Это же будет ваше устройство.

Re: Помогите новичку!!!!

Добавлено: 13 сен 2017, 10:48
Andry
Спасибо за ответ.