Яка максимальна довжина проводів для послідовного зв'язку між двома Arduinos?


9

Я будую проект, в якому два Arduinos будуть пов'язані трьома проводами: TX - RX для послідовного зв'язку і загальний GND. Яка максимальна довжина проводів тут, перш ніж комунікація вплине?

Я використовую Arduino Mega R3 з одного боку і Arduino Mini з іншого.

У мене немає особливих вимог до ставки Бода, я міг би використати найнижчу, якщо це допоможе яким-небудь чином.

Відповіді:


4

Вам потрібно вказати

  • Порядок дальності, який вас цікавить - це в порядку метрів, десятків метрів, кілометрів або міждержавний? :-). ВСЕ можливі за умови відповідного компромісу.

  • Як ви маєте намір підключитися до схеми - прямі шпильки Arduino, буфер високого / низького рівня, драйвери диференціала, ...

Якщо ви використовуєте 5V / 0V "unipolar", то, скажімо, 9600 бод, ви можете отримати багато метрів з відповідними драйверами. Якщо ви використовуєте штифт Arduino безпосередньо, опір дроту і індуктивність почнуть мати значення, оскільки діапазон збільшується.

При 300 бодах ви можете досягти сотень метрів за допомогою кабелів із крученою парою. Зі збільшенням дальності збільшується важливість таких аспектів, як перехресні розмови з іншого кола та зовнішній шум. На більших діапазонах, що мають 4 дроти із сигналом + заземлення, скручене разом у кожному випадку, це допомагає, АЛЕ, ймовірно, що в діапазонах, що цікавлять, 2 дроти плюс земля спрацюють нормально.

Якщо ви готові використовувати достатню напругу і досить повільну сигналізацію, ви можете подавати сигнал на тисячі миль - як це було зроблено з дуже ранніми телеграфними кабелями. Необхідні тисячі вольт і швидкість сигналізації, можливо, декілька біт на секунду, будуть у більшості випадків перешкодою.


Відстань, яку я хотів би пройти, становить приблизно 40-50 метрів від нашого будинку до воріт зовні. Мій намір полягав у тому, щоб підключити відповідні шпильки Arduino безпосередньо кабелем, який я знайшов у попередній установці домофона.
хобі

2
Певна небезпека для Ардуїно з тривалими пробіжками кабелю. Індукція, витік, електростатичний заряд. (Блискавка та земля піднімаються від виходу електроенергії лише можливо, але ...). Зворотні затискачі діодів для рейок живлення на всіх лініях хороша ідея. Основний драйвер IC ДУЖЕ хороша ідея. Навіть шістнадцятковий шестигранний інвертор Шмітта на кожному кінці буде корисним. (де xx змінюється залежно від сімейства). Правильні водії лінійки ще краще, але це початок. Якщо ваш Arduino є цінним, використовуйте буфер.
Рассел Макмахон

Дякую всім за коментарі та пропозиції. Щоб дізнатись, чи зможу я пройти задану відстань (приблизно 40 м) простим з'єднанням, я спробував це з двома Arduino Uno, відповідно встановленими як відправник і отримувач. Плати безпосередньо підключаються через лінії TX / RX (штифти 0 і 1) зі швидкістю 9600 біт на секунду. Відправник щосекунди надсилає тестову рядок, коли приймач прослуховує вхідні дані. Я використовую існуючий рядок (ніякої інформації про якість / характеристики цього кабелю. Як би там не було, на цьому відстані та конфігурації пара відправника / одержувача працює без проблем.
хобі

Дякую, чи хотіли б ви мати якусь конкретну пропозицію / посилання на ІС чи чіп драйвера?
хобі

@hobie На 50 метрів та 9600 бодах ви, ймовірно, можете досягти нормальних результатів (спробуйте і подивіться) практично з будь-яким 5В цифровим драйвером ІС та навіть лише цифровими виходами. Корисною відправною точкою є тригерні CMOS-перетворювачі Шмітта, як правило, 74xxx14, CDxxx14, MM ..... 14. Шукайте інвертори, що спрацьовують від Шмітта, уникайте найнижчих потужностей приводу.
Рассел Макмахон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.