Контроллер бассейна на Ардуино НАНО

И произойдёт аннигиляция, ибо

Впрочем можно снять этот джампер, и тогда ваше замечание будет верным.

Ну вот серьёзно? Чёй-то уже сомнительно , что это ваш проект!


Особенно учитывая

P.S. Уж лучше бы с паравозиками зашли, а не отрабатывать чей-то заказ :roll_eyes:

Ну, зачем же так… Я конечно новичок и возможно правила сообщества позволяют такую полемику. Что-же, вот видео, которое доказывает неверность ваших предположений. Никто не мешает любому повторить эксперимент из видео и сделать свои выводы.
https://youtu.be/jkBHGFtfd1E

Так, для справки - на территории России не только лишь все могут смотреть видео на ютубе, мало кто это может ))

Реле при отсутствии питания соответствует знакам переключателя под контактами

Первая загрузка скетча - пины не определены и их состояние высокомегаомное, то есть они просто отключены, поэтому реле не переключается
Вторая загрузка - при определении режима как OUTPUT пины переходят в низкоимпедансное состояние, и вместе с этим на пинах устанавливается уровень LOW. Если джампер на реле установлен (по умолчанию он есть), то реле работает в инверсном режиме и включается.
Третья загрузка - сразу после объявления состояния пины переводятся на HIGH, и, как при первой загрузке реле не включается.

Схема реле совершенно не причем, важно состояние пинов.

Подтяжка к VCC решит вопрос неопределенности состояния в момент включения. Я бы подтянул

Я до этого не додумался. Респект. Вот мои рассуждения…

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

Из этого вытекает, что такой модуль работает только в инверсном режиме, и в моей схеме после прохождения сетапа уровень на управляющем входе должен быть ВЫСОКИМ. Мне стало интересно это обсудить с вами, ибо возможны четыре решения.

  1. Аппаратное. Можно либо поставить чип с логикой НЕ между пином Ардуино и управляющим входом модуля реле, или выбрать другой тип релейных модулей с прямым режимом, либо просто взять реле и сделать к нему самодельную обвязку (в этом случае можно использовать 12-и вольтовое реле и сборку Дарлингтона, как на некоторых промышленных контроллерах).

  2. Программное. Единственное что мне приходит в голову это редактирование ядра АрдуиноIDE. Наверняка где-нибудь вArduino.h есть строчка с режимами OUTPUT которую можно изменить, чтобы при назначении pinMode пин устанавливался в ВЫСОКОЕ состояние. Но менять такую библиотеку, наверное, не самая лучшая идея.

  3. Мы слишком глубоко копнули. Так или иначе начальное состояние пинов тем или иным способом устанавливается именно в сетапе, и мой пример на видео естественный, и не надо изобретать велосипед.

  4. Я чего-то не знаю или что-то упустил.

Наверное это лучшее решение

О как :slightly_smiling_face: Енто хтож Вас так вынудил?

А так-же вторая и третья - энто как?

Это то, что используют для уменьшения влияния помех - опторазвязка.

Аппаратное завсегда луччее: или подтяжку к имеющимся, или изначально исполбзовать реле с высоким уровнем.

Убрать загрузчик, а в сетапе сначала выставлять высокий уровень, а уже потом переводить в режим вывода.

Это да! Ну ничего, сколько ещё собак не съеденных бегает, а слушать советы, ну их правда.

Желчи, конечно, в вас много. Но это ничего, пройдет…

Думаю что Нарния уже достаточно открылась.

Прислушивался бы, а не в позу становился.

подумайте еще…
Подсказка - VCC и JD-VCC не обязательно должны совпадать