====== Модуль подтяжки Pull-Up v2 (Troyka-модуль): инструкция, примеры использования и документация ====== Используйте [[amp>product/troyka-pull-up?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|модуль подтяжки Pull-Up v2]] для избежания помех при считывании сигнала с [[amp>product/tactile-button?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|кнопок]], [[amp>product/water-level-sensor-angle?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|герконов]] и других сенсоров работающих на разрыв цепи. {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-overview.jpg?nolink&600 |}} А ещё модуль подружит управляющую электронику с интерфейсом 1-Wire для подключения [[amp>product/sealed-temperature-sensor-ds18b20?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|датчиков температуры 18B20]]. ===== Предыдущая ревизия модуля ===== Текущий модуль Pull-Up v2 — обновлённая версия устаревшего модуля Pull-Up v1. ^ Модель ^ Количество каналов ^ Объединение каналов 1-Wire ^ | [[amp>product/troyka-pull-up-v1?utm_source=man&utm_campaign=troyka-pull-up&utm_medium=wiki|Pull-Up v1]] / [[:products:troyka-pull-up|Документация]] | 2 | Нет | | [[amp>product/troyka-pull-up?utm_source=man&utm_campaign=troyka-pull-up&utm_medium=wiki|Pull-Up v2]] / [[:products:troyka-pull-up-v2|Документация]] | 4 | Да | ===== Общие сведения ===== При подключении [[amp>product/tactile-button?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|тактовых кнопок]], [[amp>product/water-level-sensor-angle?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|герконов]] и других сенсоров с контактами на разрыв цепи — возникают проблемы из-за электромагнитных наводок. При разомкнутых контактах вся цепь превращается в одну антенну и ловит сигналы «из воздуха». В итоге выходной сигнал с сенсоров при каждом считывании может быть рандомный: «низкий уровень» или «высокий уровень». Для устранения помех в схему подключения добавляются стягивающие или подтягивающие резисторы. Однакого городить стяжку или подтяжку на макетке не всегда удобно. [[amp>product/troyka-pull-up?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Модуль подтяжки Pull-Up v2]] подтягивает два цифровых сигнала с датчиков к шине питания через распанные резисторы на плате. В итоге сигнал на входе управляющей платы избавляется от посторонних наводок, а внешний вид устройства остаётся эстетичным: без макеток и клубков из проводов. ===== Подключение и настройка ====== Модуль подтяжки Pull-UP — это соединительное звено между контроллером и сенсорами с работой на разрый цепи. Для старта выполните следующие действия: - [[#подключение_контроллера|Подключите модуль подтяжки Pull-UP к контроллеру.]] - [[#подключение_датчиков|Подсоедините интересующий датчик к модулю подтяжки Pull-UP]]. - [[#пины_подключения|Запомните пины подключения.]] После выполнения всех пунктов чек-листа, схема устройства готова и можно переходить к программной работе. Программная настройка, код и примеры работы вы найдёте в документациях на выбранный [[#подключение_контроллера|контроллер]] и [[#подключение_датчиков|сенсор]]. ==== Подключение контроллера ==== Рассмотрим несколько популярных управляющих платформ. * [[#коммуникация_с_arduino|Коммуникация с Arduino]] * [[#коммуникация_с_espruino|Коммуникация с Espruino]] * [[#коммуникация_с_raspberry_pi|Коммуникация с Raspberry Pi]] === Коммуникация с Arduino === На роль платформ из линейки [[amp>collection/arduino?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Arduino]] возьмём контроллер [[amp>product/arduino-uno?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Arduino Uno]]. == Что понадобится == * [[amp>product/troyka-pull-up?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Модуль подтяжки Pull-Up v2]] * [[amp>product/arduino-uno?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Arduino Uno]] * [[amp>product/usb-cable?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Кабель USB (A — B)]] * [[amp>product/wire-fm?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Соединительные провода «папа-мама»]] Рекомендуем также обратить внимание на дополнительные платы расширения: * [[amp>product/arduino-troyka-shield?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Troyka Shield]] поможет подключить модуль к Arduino с помощью аккуратных шлейфов из комплекта. * [[amp>product/arduino-troyka-slot-shield?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Troyka Slot Shield]] поможет подключить модуль к Arduino без проводов вовсе. == Схема устройства == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-arduino.png?nolink&600 |}} == Схема устройства с Troyka Shield == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-arduino-troyka-shield.png?nolink&600 |}} == Схема устройства с Troyka Slot Shield == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-arduino-troyka-slot-shield.png?nolink&400 |}} Всю информацию по программной настройке Arduino читайте в [[articles:arduino-ide-install|руководстве по Arduino IDE]]. === Коммуникация с Espruino === На роль платформ из линейки [[amp>collection/espruino?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki| Espruino]] возьмём контроллер [[amp>product/iskra-js?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Iskra JS]]. == Что понадобится == * [[amp>product/troyka-pull-up?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Модуль подтяжки Pull-Up v2]] * [[amp>product/iskra-js?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Iskra JS]] * [[amp>product/usb-cable-micro?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Кабель USB (A — Micro USB)]] * [[amp>product/wire-fm?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Соединительные провода «папа-мама»]] Рекомендуем также обратить внимание на дополнительные платы расширения: * [[amp>product/arduino-troyka-shield?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Troyka Shield]] поможет подключить модуль к Arduino с помощью аккуратных шлейфов из комплекта. * [[amp>product/arduino-troyka-slot-shield?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Troyka Slot Shield]] поможет подключить модуль к Arduino без проводов вовсе. == Схема устройства == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-espruino.png?nolink&600 |}} == Схема устройства с Troyka Shield == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-espruino-troyka-shield.png?nolink&600 |}} == Схема устройства с Troyka Slot Shield == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-espruino-troyka-slot-shield.png?nolink&400 |}} Всю информацию по программной настройке Iskra JS читайте в [[js:ide|руководстве по Espruino IDE]]. === Коммуникация с Raspberry Pi === На роль платформ из линейки [[amp>collection/raspberry-pi?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Raspberry Pi]] возьмём компьютер [[amp>product/raspberry-pi-4-model-b-4-gb?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Raspberry Pi 4 (4 GB)]]. == Что понадобится == * [[amp>product/troyka-pull-up-v2?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Модуль подтяжки Pull-Up v2]] * [[amp>product/raspberry-pi-4-model-b-4-gb?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Raspberry Pi 4 (4 GB)]] * [[amp>product/cable-usb-type-c?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Кабель USB (A — Type-C)]] * [[amp>product/wire-ff?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Соединительные провода «мама-мама»]] Рекомендуем также обратить внимание на дополнительную плату расширения [[amp>product/raspberry-pi-troyka-hat?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|Troyka HAT]], которая поможет подключить модуль к Raspberry Pi с помощью аккуратных шлейфов из комплекта. == Схема устройства == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-raspberry-pi.png?nolink&600 |}} == Схема устройства с Troyka HAT == {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-raspberry-pi-troyka-hat.png?nolink&600 |}} Всю информацию по программной настройке Raspberry Pi читайте в [[articles:rpi-guide|руководстве по Raspberry Pi]]. ==== Подключение датчиков ==== Рассмотрим несколько популярных сенсоров с работой на разрыв цепи. * [[#коммуникация_с_кнопкой|Коммуникация с кнопкой]] * [[#коммуникация_с_четырьмя_кнопками|Коммуникация четырьмя кнопками]] * [[#коммуникация_с_датчиком_уровня_воды|Коммуникация с датчиком уровня воды]] * [[#коммуникация_с_сенсором_температуры_ds18b20|Коммуникация с сенсором температуры DS18B20]] * [[#коммуникация_с_четырьмя_сенсорами_температуры_ds18b20|Коммуникация с четырьмя сенсорами температуры DS18B20]] * [[#коммуникация_с_четырьмя_сенсорами_температуры_ds18b20_по_1-wire|Коммуникация с четырьмя сенсорами температуры DS18B20 по 1-Wire]] === Коммуникация с кнопкой === Для начала подключим [[amp>product/button_for_boxes_17mm?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|тактовую кнопку]] к управляющей плате через модуль подтяжки. {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-button.png?nolink&450 |}} === Коммуникация с четырьмя кнопками === Модуль подтяжки Pull-Up обладает четырьмя каналами входа-выхода — это позволяет подключать четыре сенсора одновременно. Подключим четыре [[amp>product/button_for_boxes_17mm?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|тактовых кнопки]] к управляющей плате через модуль подтяжки. {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-button-four.png?nolink&600 |}} === Коммуникация с датчиком уровня воды === Рассмотрим коммутацию датчиков на основе геркона к модулю Pull-Up. В качестве примера подключим [[amp>product/water-level-sensor-angle?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|датчик уровня воды]] к управляющей плате через модуль подтяжки. {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-sensor-water-level-angle.png?nolink&600 |}} === Коммуникация с сенсором температуры DS18B20 === Перейдём к сенсорам с протоколом 1-Wire, в котором для работы датчика необходимо не только подключить сенсор к контроллеру, но и притянуть сигнальный контакт ''S'' к контакту питания ''V'' через резистор номиналом 4,7 кОм. Для примера подключим [[amp>product/sealed-temperature-sensor-ds18b20?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|датчик температуры DS18B20]] к управляющей плате через модуль подтяжки. {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-sensor-ds18b20.png?nolink&600 |}} === Коммуникация с четырьмя сенсорами температуры DS18B20 === Как мы описывали ранее, модуль подтяжки Pull-Up обладает четырьмя каналами входа-выхода — это позволяет подключать четыре сенсора одновременно. Подключим четыре [[amp>product/sealed-temperature-sensor-ds18b20?utm_source=man&utm_campaign=troyka-pull-up-v2&utm_medium=wiki|датчика температуры DS18B20]] к управляющей плате через модуль подтяжки. {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-sensor-ds18b20-four.png?nolink&600 |}} === Коммуникация с четырьмя сенсорами температуры DS18B20 по 1-Wire === На закуску мы приготовили приятный сюрприз. В сенсорах по протоколу 1-Wire, каждый датчик хранит в своей памяти уникальный номер, такое решение позволяет подключить несколько датчиков к одному сигнальному пину. [[#джамперы_конфигурации_каналов|Переключите джамперы конфигурации каналов в положения 1-Wire]], в итоге мы объединем контакты S2, S3, S4 с контактом S1 для организации интерфейса 1-Wire на одной линии. {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-wiring-sensor-ds18b20-four-1wire.png?nolink&600 |}} ==== Пины подключения ==== Внимательно запомнинайте пины подключения в собранной схеме. Именно их надо будет указывать в программном коде. После выполнения всех пунктов чек-листа, схема устройства готова и можно переходить к программной работе. Программная настройка, код и примеры работы вы найдёте в документациях на выбранный [[#подключение_контроллера|контроллер]] и [[#подключение_датчиков|сенсор]]. ===== Элементы платы ===== {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-annotation.png?nolink&550 |}} ==== Клеммники подключения сенсоров ==== На модуле выведено две пары клеммников. ** Первый клеммник ** ^ Контакт ^ Функция ^ Подключение ^ | S1 | Входной цифровой сигнал на первый канал. | Подключите к цифровому выводу сенсора.| | S4 | Входной цифровой сигнал на четвёртый канал. | Подключите к цифровому выводу сенсора.| | V | Выходное напряжение (+) | Подключите к плюсу сенсора.| | G | Выходное напряжение (-) | Подключите к минусу сенсора.| ** Второй клеммник ** ^ Контакт ^ Функция ^ Подключение ^ | S2 | Входной цифровой сигнал на второй канал. | Подключите к цифровому выводу сенсора.| | S3 | Входной цифровой сигнал на третий канал. | Подключите к цифровому выводу сенсора.| | V | Выходное напряжение (+) | Подключите к плюсу сенсора.| | G | Выходное напряжение (-) | Подключите к минусу сенсора.| ==== Troyka-контакты ==== На модуле выведено две группы Troyka-контактов. ** Первая группа ** ^ Контакт ^ Функция ^ Подключение ^ | S1 | Выходной цифровой сигнал первого канала с подтяжкой к питанию. | Подключите к пину ввода-вывода микроконтроллера.| | V | Входное напряжение (+) | Подключите к рабочему питанию микроконтроллера.| | G | Входное напряжение (-) | Подключите к земле микроконтроллера.| ** Вторая группа ** ^ Контакт ^ Функция ^ Подключение ^ | S2 | Выходной цифровой сигнал второго канала с подтяжкой к питанию. | Подключите к пину ввода-вывода микроконтроллера.| | S3 | Выходной цифровой сигнал третьего канала с подтяжкой к питанию. | Подключите к пину ввода-вывода микроконтроллера.| | S4 | Выходной цифровой сигнал четвёртого канала с подтяжкой к питанию. | Подключите к пину ввода-вывода микроконтроллера.| ==== Джамперы конфигурации каналов ==== На модуле расположена система джамперов для конфигцации каналов, которая позволяет выборочно объединять выходные Troyka-контакты S2, S3, S4 с контактом S1. Объединение каналов позволяет организовать интерфейс 1-Wire: группы датчиков подключенных на разные сигнальные пины клеммника, модуль объединяет на одну сигнальную линию S1 Troyka-контактов. ^ Канал ^ Клеммник ^ Troyka-контакты ^^ ^ ::: ^ ::: ^ Switch ON ^ 1-Wire ON ^ | 1 | S1 | Нет выбора → S1 | Нет выбора → S1 | | 2 | S2 | S2 | S1 | | 3 | S3 | S3 | S1 | | 4 | S4 | S4 | S1 | ===== Принципиальная и монтажная схемы ===== {{:products:troyka-pull-up-v2:troyka-pull-up-v2-schematic.png?direct&390 |}} {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-layout-top.png?direct&265|}} {{ :products:troyka-pull-up-v2:troyka-pull-up-v2-layout-bottom.png?direct&265|}} ===== Габаритный чертёж ===== [[this>_media/products:troyka-pull-up-v2:troyka-pull-up-v2-dimensions.pdf|{{:products:troyka-pull-up-v2:troyka-pull-up-v2-dimensions.png}}]] ===== Характеристики ===== * Модель: Модуль подтяжки Pull-Up v2 * Напряжение питания: 3,3–5 В * Интерфейс для сенсоров: колодки под винт * Интерфейс для контроллеров: Troyka-контакты * Количество каналов: 4 * Конфигурация каналов: система джамперов * Сопротивление стягивающих резисторов: 5,1 кОм * Габариты: 25,4×25,4 мм ===== Ресурсы ===== ==== Магазин ===== * [[amp>product/troyka-pull-up?utm_source=man&utm_campaign=troyka-pull-up&utm_medium=wiki|Модуль подтяжки Pull-Up v2]] ==== Полезные статьи ==== * [[articles:arduino-ide-install|Подключение и настройка Arduino IDE]] * [[js:ide|Подключение и настройка Espruino IDE]] * [[articles:rpi-guide|Заводим Raspberry Pi]] ==== Файлы ==== * [[https://github.com/amperka/hardware-drawings/blob/master/troyka-pull-up-v2.svg|Векторное изображение Pull-Up v2]]