В этом проекте показано, как использовать пульт дистанционного управления TiVo и плату Arduino для управления линейным приводом и поднятием картины, закрывающей телевизор. Посмотрите видео в конце
Необходимые инструменты
Для завершения этого проекта потребуются следующие инструменты.
- Крестовая отвертка #0
- Паяльник
- Припой
- Кусачки
- Маленькие плоскогубцы (я использовал плоскогубцы, предназначенные для работы с мелкой электроникой)
Список деталей
Для завершения этого проекта необходимы следующие части.
- Гусеничный привод для тяжелых условий эксплуатации от Firgelli Автоматизация
- Пульт дистанционного управления TiVo Roamio
- Ардуино Уно ред. 3
- Hammond 1591ESBK ABS Project Box, черный (7,5 x 4,3 x 2,2 дюйма)
- Microtivity IB171 170-точечная мини-макетная плата для Arduino
- Инфракрасный приемник 2,5–5,5 В, 38 кГц
- 100 шт., соединительные провода Michael Josh, 20 см, M/F, кабели, 1-контактный штекер, штекер-мама
- SainSmart 2-канальный релейный модуль
- Кабель USB 2.0 — штекер A к штекер B
- 4 фута черного спринклерного провода 18/5
- 8 крепежных винтов из нержавеющей стали № 4–40 x 2 дюйма (я купил их в Home Depot)
- 8 гаек Everbuilt № 4–40 (я купил их в Home Depot)
- 16 нейлоновых прокладок диаметром ½ дюйма (я купил их в Home Depot)
- 1 шт. стяжка-молния
Настройка Arduino Uno Rev 3
Мы будем использовать следующие контакты на плате Arduino, выделенные желтым цветом.
- Мощность 5 В
- Цифровой №8
- Цифровой №9
- Цифровой № 11
- Питание, заземление
Настройка 2-канального релейного модуля SainSmart
Нам необходимо соединить релейный модуль SainSmart, чтобы он совпадал с Firgelli Линейный привод автоматизации. Есть синяя перемычка от JD-VCC к VCC. Оставьте это на месте как есть.
Перемычка K1 позиция 1 на K2 позиция 1
Установите перемычку от первого положения реле К1 к первому положению реле К2. Наша перемычка показана красным.
Перемычка K1 позиция 3 на K2 позиция 3
Установите перемычку от третьего положения реле К1 к третьему положению реле К2. Наша перемычка показана желтым цветом.
При правильном переходе вы должны увидеть следующую конфигурацию.
Настройка инфракрасного датчика
От инфракрасного датчика отходят три провода. Один предназначен для провода заземления, другой для провода питания 5 В, а третий отправляет сигнал на нашу плату Arduino.
Снимите на два дюйма внешний экран спринклерного провода 18–5, чтобы обнажить цветные провода внутри. Мы будем использовать только зеленый, белый и синий провода, поэтому отрежьте остальные, чтобы не пришлось с ними возиться.
Снимите изоляцию на ⅛ дюйма с каждого из проводов, которые мы будем использовать. Они будут припаяны к реле, используя следующую конфигурацию. Если смотреть на датчик сверху круглым выступом к себе:
- Припаяйте синий провод к левой клемме.
- Припаяйте зеленый провод к средней клемме.
- Припаяйте белый провод к правой клемме.
Настройка жгута проводов линейного привода
Линейный привод поставляется с проводным пультом дистанционного управления с двумя треугольными кнопками. Одна кнопка активирует переключатель, который перемещает линейный привод вверх, а другая — вниз.
Снимите корпус пульта дистанционного управления с печатной платы.
Первым делом нужно открутить провода сзади пульта. Их необходимо снять с помощью крестообразной отвертки №0.
Снимите плату с корпуса пульта дистанционного управления и осмотрите провода. Если посмотреть на него снизу, к плате должно быть припаяно четыре провода. Слева направо они черные, белые, фиолетовые и коричневые, как показано ниже.
Если по какой-то причине они использовали разные цвета, просто записывайте цвета в том же порядке, как показано ниже.
Отпаять провода
С помощью паяльника снимите провода с платы. Аккуратно надавите кончиком паяльника на имеющийся припой на месте пайки, чтобы ослабить его, и с помощью небольших плоскогубцев аккуратно вытащите провод из места пайки.
Подсоедините провода к реле
Теперь подключим провода от проводного пульта к 2-канальному реле SainSmart. Используйте крестовую отвертку № 0, чтобы отвинтить клемму, а затем снова затяните ее, чтобы закрепить провод.
- Белый провод перейдет в положение К1 1.
- Черный провод перейдет в положение К1 2.
- Коричневый провод войдет в положение К2 2.
- Фиолетовый провод перейдет в положение К2 3.
Примечание. Не удаляйте существующие перемычки. Оставьте их при вкручивании клемм.
Когда все будет готово, это должно выглядеть как на изображениях выше.
Подключение макетной платы
Теперь мы подключим плату Arduino к макетной плате. Макет позволяет нам перемыкать соединения там, где к одному терминалу Arduino или реле выполняется несколько подключений.
Каждый ряд отверстий соединен между собой, что позволяет нам перемыкать все, что находится в этом ряду. Вот элементы, которые нам нужно будет подключить.
мощность 5 В
- Используйте перемычку «папа-гнездо» от клеммы питания 5 В на Arduino к неиспользуемому ряду на макетной плате. Вставьте его в отверстие в ряду.
- Используйте перемычку «папа-мама» из того же ряда на макетной плате к клемме VCC на 2-канальном реле SainSmart. Вставьте его в отверстие в том же ряду.
- Освободите ¼ дюйма белого провода с другой стороны спринклерного провода 18–5. Вставьте его в отверстие в том же ряду.
Земля
- Используйте перемычку «папа-гнездо» от клеммы Power GND на Arduino к неиспользуемому ряду на макетной плате. Вставьте его в отверстие в ряду.
- Используйте перемычку «папа-мама» от клеммы GND на 2-канальном реле SainSmart к отверстию в том же ряду, что и другой провод GND. Вставьте его в отверстие в том же ряду.
- Освободите ¼ дюйма зеленого провода с другой стороны спринклерного провода 18–5. Вставьте его в отверстие в том же ряду.
Сигнализация
- Используйте перемычку между разъемом Digital #11 на Arduino и неиспользуемым рядом на макетной плате. Вставьте его в отверстие в ряду.
- Освободите ¼ дюйма синего провода с другой стороны спринклерного провода 18–5. Вставьте его в отверстие в том же ряду.
Когда все будет готово, макет должен выглядеть примерно так, как показано на следующем изображении.
Установите программу управления на Arduino.
Вам нужно будет скачать и установить Ардуино IDE. После того, как вы загрузили и установили IDE, откройте IDE.
Скопируйте и вставьте код в IDE
Загрузите или скопируйте исходный код с GitHub и вставьте его в окно IDE, которое после завершения должно выглядеть так.

Настройте файл IRremote.cpp.
В каталоге C:\Program Files (x86)\Arduino\libraries\RobotIRremote\src\ есть файл, в котором имеется проблема с исходным кодом, препятствующая компиляции исходного кода GitHub. Откройте файл IRremoteTools.cpp в простом текстовом редакторе, например в блокноте, и измените следующую строку:
Строка 5 должна выглядеть так:
интервал RECV_PIN = TKD2; // контакт, к которому подключен ИК-приемник
Измените его на следующее и сохраните файл.
интервал RECV_PIN = 11; // контакт, к которому подключен ИК-приемник
Подключите Arduino к компьютеру с помощью USB-кабеля.
Поместите Arduino, макетную плату и релейные платы на непроводящую поверхность, например на деревянный стол.
Подключите прямоугольную сторону USB-кабеля к компьютеру, а сторону «D» — к плате Arduino.
Выберите порт
Выберите пункт меню «Инструменты — Порт» и выберите тот, который показывает вашу плату Arduino.
Загрузите код
Выберите пункт меню Sketch — Upload, чтобы загрузить код в Arduino.
Проверьте код
После загрузки кода подсоедините жгут проводов от Firgelli Линейный привод автоматизации возвращается в привод и подсоединяется к приводу.
Подключите плату Arduino к компьютеру через USB-кабель.
Направьте пульт дистанционного управления TiVo на инфракрасный датчик и нажмите зеленую кнопку «Мне нравится». Привод должен двигаться вверх.
Направьте пульт дистанционного управления TiVo на инфракрасный датчик и нажмите красную кнопку «не нравится». Привод должен двигаться вниз.
Упакуйте все это
Для размещения своих печатных плат я использовал коробку проекта Hammond вместе с крепежными винтами, проставками и гайками. Я использовал острие паяльника, чтобы проделать отверстия в черной пластиковой коробке, а также освободить место для проводов по бокам. Я использовал стяжку, чтобы не выдернуть провод инфракрасного датчика. Управляющие провода на Firgelli Линейный привод автоматизации у меня есть кусок резины, предотвращающий их вытягивание, чтобы я мог использовать его.
Об авторе
Ричард Багдонас — эксперт по интеграции данных с более чем 15-летним опытом интеграции с системами точек продаж, электронной медицинской документации, управления взаимоотношениями с клиентами и системами управления складом. Ричард увлекался электроникой с детства, и это его первый проект Arduino.
В настоящее время Ричард является главным архитектором здравоохранения в МИ-7, где он курирует интеграцию компании с электронными системами медицинских записей.