Питание Arduino и сеть по кат6

Я планирую установить около 4-5 arduino pro micro на своем заднем дворе, чтобы управлять электромагнитными клапанами для полива сада на основе измерений почвы (поэтому мы обеспечиваем хороший полив).

Мой вопрос касается напряжения питания, я хочу использовать категорию 6, возможно, на 20-метровом пробеге для подачи питания и сети RS485 по витым парам.

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

Электромагнитный клапан говорит 8 Вт при 12 В, что составляет 0,6 А, если предположить, что ток требуется, чтобы держать его открытым (не закрытым - это правильно?), На что я надеюсь, иначе потеря мощности приведет к его открытию.

Я думаю, мне все равно нужно будет подавать 12 В, должен ли я запускать 12 В и 5 В по парам? Если я использую только 12 В, мне нужен линейный стабилизатор напряжения, который сильно нагревается, значит ли это, что он неэффективен? Если я также использую 5 В, насколько хорошо 5 В работает на этом расстоянии из-за падения напряжения на парах Cat6?

Планируете ли вы использовать Arduino/AVR UART в 9-битном режиме (многоточечная адресация) или открыты для других протоколов? Кроме того, есть ли у вас какая-либо центральная станция управления, и если да, то какая?
Извините, надо было упомянуть. Это будет координироваться raspberry pi, который будет регулярно «проверять» узлы. Таким образом, arduino не будет говорить, пока с ним не заговорят первым. Я собирался использовать MAX485 и выводить двоичные структуры, которые я себе представляю. Я бы дал каждому узлу идентификатор и позволил хосту идентифицировать его в большом двоичном объекте данных.

Ответы (2)

В общем, более высокое напряжение означает меньшие потери, поэтому вам нужно использовать самое экономичное напряжение (но не более 48 В, это будет опасно). Я также рекомендую использовать одно напряжение, но использовать два провода, например, оранжевый/белый для (+) и синий/сине-белый для (-). Это просто упрощает подключение и значительно снижает вероятность самопроизвольной перезагрузки микроконтроллеров из-за помех или контуров заземления.

Во-первых, давайте посмотрим, сможете ли вы использовать 12V. Кабель 23 AWG длиной 20 футов будет иметь сопротивление 0,4 Ом (при условии, что 20 Ом/1000 футов и два параллельных провода для заземления и Vcc). При 0,6А вы потеряете 0,24В, чего соленоиды не заметят. Если вы запустите 5 соленоидных клапанов одновременно с помощью одного кабеля, они будут потреблять всего 3 А, а на кабеле будет падать 1,2 вольта, чего достаточно для питания соленоидов. Так что да, похоже, мы можем работать только на 12 В.

Обратите внимание, что если вам нужно больше мощности, вам придется перейти на 24 В или 48 В и иметь регулятор на 12 В в каждой коробке.

Теперь, чтобы получить 5В, вы можете использовать линейный или импульсный стабилизатор. Преимущества линейного регулятора в том, что он прост и уже присутствует на некоторых ардуино (не на микро). При токе 45 мА будет потрачено 0,3 Вт, что немного и легко рассеивается. Однако, учитывая, что импульсные 5-вольтовые регуляторы на ebay стоят менее 2 долларов каждый, я настоятельно рекомендую вам просто купить дюжину таких регуляторов и использовать их повсюду.

Спасибо, почти в точку! На самом деле я использую около 20 м, а не ', так что это будет больше похоже на падение на 1 В, верно? Также вот мой актуатор — adafruit.com/product/997 . Я бы поливал их по очереди не все сразу, и они не требуют напряжения в закрытом состоянии, так что тем более. Похоже, 12 В - это путь, и он будет работать. Наконец, лучше переключиться на линейный преобразователь постоянного тока.
Также в качестве продолжения я использую клоны с atmega328, в которых указано, что он может использовать 12 В -> aliexpress.com/item/…
re solenoid: «Мы испытали этот соленоид при различных напряжениях постоянного тока и обнаружили, что можем привести его в действие при 6 В постоянного тока» — это означает, что вы можете выдержать большое падение напряжения. re встроенный регулятор на дешевых ардуино: у меня был неудачный опыт с ними - регулятор ломался при перенапряжении до 13В. Таким образом, только что заряженная свинцово-кислотная батарея производит достаточное напряжение, чтобы поджарить 12-вольтовый вход Arduino.
Я буду запускать его от блока питания «12 В», но я все равно видел, что они достигают 13 В, так что спасибо за предупреждение. Будут ли заслуживать доверия те источники питания (подобные стальной клетке), которые имеют «подстройку» напряжения, если вы точно настроите напряжение на 12 В?
В целом, переключаемые блоки питания обычно довольно стабильны во времени. Кроме того, убедитесь, что у вас есть диоды свободного хода на всех ваших катушках, иначе энергия, накопленная в катушках, может поджарить регуляторы, когда они выключены.

Включите этого ребенка!

Во-первых, хотя использование 12 В для питания было бы, по крайней мере, несколько практичным, учитывая ограничения в вашем вопросе, оно ограничивает вас в отношении доступного тока. Использование 24 или 48 В с понижающими стабилизаторами до 12 В на каждой конечной точке (они доступны в виде модулей из различных источников), скорее всего, будет подходом с меньшими потерями и, возможно, несколько более надежным подходом в целом.

Поговори со мной....

Во-вторых, есть проблема и со стороны данных — UART Pi на самом деле не поддерживает систему многоточечной адресации (9-битный режим UART), которая обычно используется в сетях RS-485 и UART микроконтроллеров. Я бы рекомендовал использовать либо внешний UART для Pi, который может правильно поддерживать 9-битный режим, либо использовать сеть I2C-over-RS485 вместо UART-over-RS485.

Внешние UART для Pi

К счастью, микросхемы SPI UART доступны относительно дешево и поддерживают 9-битный режим, а также другие функции, полезные для RS-485 (например, автоматическое управление выводами управления направлением приемопередатчика RS-485). Некоторые микросхемы USB->UART также могут поддерживать эту функцию; прочитайте техническое описание того, что вы используете для деталей.

Использование I2C через RS-485

Шина I2C предоставляет несколько очень полезных функций — многоабонентскую адресацию, обнаружение конфликтов и поддержку множественного мастеринга — все это прямо из коробки. «Но как вы собираетесь заставить его пройти 20 м по витой паре?» ты спрашиваешь. Просто: мы берем RS-485 и используем его в качестве физического уровня для нашего канала I2C с помощью буферной ИС P82B96. Этот чип разделяет двунаправленные сигналы I2C на два однонаправленных сигнала, каждый для SCL и SDA — отсюда можно использовать современные приемопередатчики RS-485, которые реализуют отказоустойчивость с открытой/плавающей шиной в псевдооткрытом стоке. образом (т. е. соедините DE с дополнением TX, а D с 0), как показано на схеме ниже: U2 и U3 — приемопередатчики RS-485, а логический элемент НЕ может быть тем, что у вас есть под рукой, что работает от наличие напряжения питания.

схематический

смоделируйте эту схему - схема, созданная с помощью CircuitLab

(Вам понадобятся приемопередатчики 3,3 В для U2 и U3, чтобы использовать это с Pi BTW.)

очень интересно! Я пытаюсь примириться с I2C через RS-485 (больше бонусного ответа, спасибо!) Похоже, в этом примере у нас есть три P82B96, один действует как модулятор, а два действуют как демодуляторы, эффективно модемы для I2C через RS-485? В этом случае мы взяли сигналы часов и данных и разделили их на пару (по одному в каждом направлении). Это о сути? Мой первоначальный план состоял в том, чтобы просто использовать USB-> RS485 на Raspberry Pi и max-485 для Arduino.
@MitchellCurrie - U1 - единственный P82B96 на схеме, U2 и U3 - приемопередатчики RS-485. Но да, общая схема фактически представляет собой своего рода модем для I2C через RS485 и разделяет часы и данные на двунаправленную дифференциальную пару для каждого.
Я понимаю. Именно поэтому требуется пара из них, чтобы сделать 4-проводной выход для нашего I2C через RS485. Я полагаю, что у меня есть доступные пары проводов в 8-ядерном CAT6. Мне нужно подумать об этом, казалось бы, проще просто подключить USB-адаптер. На мой взгляд, основным преимуществом I2C является тот факт, что в протокол встроены режимы адресации — верно?
второе дополнение: скажем, с блоком питания на 48 В, какова эффективность, скажем, Arduino, которому требуется 0,25 Вт (50 мА при 5 В) от 0,25 Вт (5 мА при 48 В). Если я правильно помню, если блок питания переключается, они обычно имеют эффективность около 90%.
Хороший модуль понижающего преобразователя должен быть эффективен на 80-90% при понижении напряжения с 48 В до 5 В — они довольно распространены в телекоммуникациях.
Большое спасибо. Наконец, я обнаружил, что может быть более простой вариант — P82B715, который расширяет I2C. Кажется, что для его использования не нужно слишком много «Котла». Есть предположения? Теперь, когда вы продали мне I2C, это более элегантное решение (поскольку я инженер-программист, в первую очередь это мне нравится) tronixstuff.com/wp-content/uploads/2010/10/i2cbufferedss1.jpg
Вы можете использовать P82B96 отдельно в качестве расширителя шины, и это предпочтительнее, чем P82B715. Однако физический уровень RS-485 дает вам гораздо лучшую помехоустойчивость и дальность.
Из-за того, что RS-485 12в. Таким образом, буфер фильтрует сигнал, канальный уровень RS-485 усиливает его. Основываясь на 20-метровом пробеге CAT6, какова вероятность того, что на самом деле понадобится RS-485? Честно говоря, скорость не так важна, но простота была бы неплохо.
@MitchellCurrie - RS485 не является «12 В» как таковым, но он повышает его за счет предоставления дифференциального / сбалансированного линейного интерфейса. С CAT-6 нет особых причин не использовать его, кстати, у вас есть провода под рукой, и вы просто подключили бы их для сигналов, если бы вы передавали несимметричный сигнал с P82B96 напрямую. .
Спасибо, теперь я также смотрю на MCP2515, который, похоже, также предпочтительнее, например, модуль TJA1050.
MCP2515 немного другой зверь — он используется с CAN, который представляет собой совершенно другой стек протоколов, хотя он также будет неплохо работать для вашего приложения, если вы готовы использовать больше оборудования для решения проблемы.
Спасибо во всем. Я попробую RS-485 сам по себе, чтобы почувствовать его и перейти на другой уровень стека, когда / если это необходимо.