Каталог
|
Модулі розширення портів або АЦП зазвичай управляються за інтерфейсом I2C, який є внутрішньосхемним і не гарантує роботу на відстані більше одиниць метрів, інтерфейс даного модуля розрахований на відстані до 100 метрів. Модуль має 5 портів введення/виводу загального призначення, з яких 4 мають додаткову функцію АЦП, 1 – додаткову функцію ШІМ, 3 – додаткову функцію SPI (конвертер 1-wire у SPI-master). Модуль можна використовувати одночасно для читання датчиків, управління навантаженням як охоронну/пожежну сигналізацію, для взаємодії з іншим мікроконтролером, і навіть для його перепрошивки. Характеристики:
Модуль має вбудовану функцію порівняння результату АЦП з верхнім і нижнім порогами, індивідуальними для кожного з 4 каналів АЦП, та встановлення прапорів тривоги при виході АЦП за діапазон, що дозволяє знизити навантаження на центральний контролер, читаючи та обробляючи результати АЦП тільки з модулів з активованою тривогою. Аналогічно модуль може безперервно моніторити всі свої порти та встановлювати прапори тривоги при (навіть короткочасному) появі заданого логічного рівня, що дозволяє не пропустити сигнал із охоронного датчика або сигнал переривання. У прикладах до бібліотеки є готові скетчі охоронної сигналізації та моніторингу аналогового сигналу в межах діапазону, які можна використовувати, у тому числі, і з безліччю модулів на одній шині, не втрачаючи продуктивності. До модуля можна підключати:
Результат res = pex.analogRead(); при читанні аналогового значення з модуля знаходиться в діапазоні 0..65535 (16біт) незалежно від запитаної точності, для приведення його до загальноприйнятого діапазону 0..1023 (10біт) необхідно виконати res >>= (16-10); Функція конвертера 1-wire в SPI-master переводить порти P2, P3, P4 в режим SCK, MOSI, MISO відповідно, а два порти P0, P1, що залишилися, зберігають свої основні і додаткові функції, один з них знадобиться для сигналу SS (Slave Select) , а інший можна використовувати для GPIO, АЦП, ШІМ, читання переривання або як SS ще для одного SPI пристрою. Функція створює тунель для протоколу SPI поверх протоколу 1-wire, що збільшує дальність підключення та скорочує кількість дротів, але ціною зниження швидкості обміну. Функція дозволяє підключати датчики або виконавчі пристрої з інтерфейсом SPI, зокрема, розроблені самостійно на мікроконтролері. При використанні AVR (встановлений на більшості плат Arduino) як такий мікроконтролер, його можна навіть перепрошувати по 1-wire (швидкість прошивки ~140 байт/с). Для реалізації такої можливості порти P0..P4 модуля підключаються до портів Arduino: RST, SS, SCK, MOSI, MISO відповідно (P0 буде для переведення мікроконтролера в режим внутрішньосхемного програмування (ISP), а P1 - для взаємодії з програмою мікроконтролера). У прикладах є скетч ArduinoOWISP, який перетворює одну Arduino на повноцінний програматор інший Arduino по 1-wire. Зверніть увагу, що при паразитному живленні струм обмежений всього кількома мА на всю шину 1-wire, при великому споживанні датчиків, що підключаються, і/або виконавчих пристроїв буде потрібно підключення лінії VCC. Сумарний струм пристроїв, що підключаються до одного модуля, не повинен перевищувати 150мА. Налаштування Raspberry Pi У файлі /boot/config.txt додати рядок: dtoverlay=w1-gpio,gpiopin=4 У командному рядку виконати: sudo apt-get update -y sudo apt-get install -y owfs ow-shell У файлі /etc/owfs.conf додати рядок: server: w1 Перезавантажити: sudo reboot Команда для перегляду ідентифікаторів всіх знайдених 1-wire пристроїв: owdir /uncached (ідентифікатори модулів розширення портів починаються на "20.") Команда для запуску АЦП та читання результатів з пристрою 20.xxxxxxxxxxxx: owget /uncached/20.xxxxxxxxxxxx/volt.ALL ;echo Для керування пристроєм через веб-інтерфейс відкрити у браузері: http://honey.com.ua/io/adc/control.htm У полі "owhttpd address:port" ввести "127.0.0.1:2121" (127.0.0.1 замінити на IP-адресу Raspberry Pi) і натиснути "Ok", у списку вибрати необхідний ідентифікатор модуля розширення портів. Приклад скетчу для Arduino: #include < DS2450.h > OneWire ow(10); // DQ на пине 10, также необходим резистор 1кОм между DQ и VCC
Посилання: Відгуки покупців про Модуль расширения портов с интерфейсом 1-wire (сделано в Украине) Андрій (02.04.2024) Скільки таких модулів можна підключити до одного контролера? ВідповістиHoney (30.04.2024) Правильна відповідь - багато. На одній 1-wire шині може бути скільки завгодно 1-wire-slave пристроїв і лише один 1-wire-master пристрій. Обмеження накладаються лише шиною - її довжиною, відгалуженнями, якістю провідників. Даний модуль - це 1-wire-slave пристрій. Якщо 1-wire-master реалізований на мікроконтролері програмно, то для однієї шини використовується один пін, а шин можна зробити стільки, скільки є пінів. ВідповістиHoney (05.07.2022) Так, VCC це лише живлення, підключати його можна або з боку 1-wire (до гвинтових клем), або з боку портів (між VCC з боку 1-wire і VCC з боку портів стоїть діод, щоб не було витоку струму назовні). Бажано щоб напруга DQ і напруга живлення не відрізнялися більше ніж на +/-1В. Роман (02.07.2022) На скільки я розумію, лінія VCC використовується лише для передачі живлення. Чи можна живити модуль і все, що до нього підключено, від локального джерела живлення 5В, а для даних використати лише двохжильний кабель? Якщо так, то можна використати сигнальний кабель (не виту пару), наприклад 2x0.22 ? На яку максимальну відстань можна розраховувати? ВідповістиНаписати відгук: Є питання по "Модуль розширення портів з інтерфейсом 1-wire (зроблено в Україні)" ? Також рекомендуємо ознайомитися:
Шановні друзі! Ми намагаємося тримати на сайті інформацію про наявність товарів та ціни на них в актуальному стані. Коригування відбуваються постійно. Якщо ви знаходите ціну на товар завищеною, напишіть нам про це із посиланням на товар. Ми розглянемо лист та чи обгрунтуємо ціну, чи підкоригуємо її. Асортимент магазину дуже великий та іноді бувають помилки в ціноутворенні, особливо при скачках курсу долара. Дякуємо за розуміння.
|