Дистанционное управление электроприборами в Москве: 57-товаров: бесплатная доставка, скидка-10% [перейти]

Дистанционное управление электроприборами в Москве: 57-товаров: бесплатная доставка, скидка-10% [перейти] Лодки

А почему бы не взять готового «робота-шпиона»?

Попал мне в руки один такой, HappyCow 777-325.

Я было обрадовался: всё у него есть, и дистанционное управление, и передача видео, и едет довольно медленно. Есть, правда, одна особенность – управляется только через приложение в Android или iOS. Ну так это мы решим через удаленное управление Android, например, при помощи scrcpy.

Но оказалось, что кроме исправимых недостатков (узкий угол обзора камеры) у машинки есть один неисправимый. Видео, передаваемое им через Wi-Fi, имеет чудовищную задержку. То есть этот робот уже давно врезался во что-то, а вы всё жмёте на газ, думая, что он ещё до препятствия не доехал.

Для ребёнка, который учится дистанционно управлять машиной, это, на мой взгляд, неприемлемо.

Так что робот получает отставку. Хотя шасси от него я бы позаимствовал.

Введение

В дополнение к устройству отслеживания взгляда и бесплатного программного обеспечения к нему, описываемых вот в

статье, нам понадобится что-то, связывающее компьютер с внешними объектами.

Несмотря на наличие в продаже всевозможных устройств, которыми можно управлять с компьютера, наиболее простым и дешёвым мне показался вариант использования двух деталей: платы Arduino и платы из нескольких реле.

Если вы никогда не сталкивались с Arduino, всё же не бросайте чтение, в дальнейшем вы увидите, что в данном контексте работать с ним довольно просто, не даром в продаже есть множество детских конструкторов на основе Arduino.

В то же время, если вы не знакомы с электробезопасностью и никогда не делали электропроводку в доме, не пытайтесь повторить схемы, в которых используется подключение к розеткам!

Всё, что вам нужно знать об Arduino: это небольшое устройство, которое можно воткнуть в USB-разъём компьютера, после чего оно сможет включать/выключать электрические сигналы на своих контактах согласно полученной инструкции.

Сигналы довольно маломощные, поэтому для управления чем-нибудь помощнее (электролампами, например), поставим блок реле, которые в ответ на сигнал от Arduino замыкают-размыкают контакты управления внешними приборами. Кроме того, реле изолируют электрические цепи компьютера Arduino от электрических цепей управляемого устройства.

В реальном мире это может выглядеть вот так:

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

Делаем два:

Снимаем старый выключатель:

image

Закорачиваем провода друг на друга — так, как если бы выключатель был все время включен. Он нам больше не нужен. Все переключения будет происходить внутри силовых блоков, которые мы поставили в предыдущем шаге.

Ставим новый выключатель. Сначала — крепежную панельку:
image
Затем — прикрепляем выключатель с рамкой:
image
Само-собой, не обязательно ставить его на тоже самое место — он будет работать из любого места. Я так сделал, чтобы закрыть следы прошлого выключателя 🙂 При желании можно и два выключателя поставить, и три — для возможности включать свет из любой части зала или коридора, допустим.

Делаем раз:

Снимаем плафон, подключаем два силовых блока к двум лампам:

image

Прячем это внутрь лампы:

image

Главное — не забыть расправить антенны. В первый раз, я не могу понять, почему у меня глючил пульт — включался через раз. Оказалось антенна была пару раз согнута, да еще и слишком близко к металлической площадке. Расправил, убрал подальше — все работает как часы.

В общем виде схема подключения выглядит вот так:
image
image
На самом деле не так ярко, это я снимал на выдержке в пару секунд. Заметно, но не мешает. Будет мешать — заклеить изолентой светодиод труда не составит.

Делаем три:

Привязываем выключатель к силовым блокам. Если у вас набор(там есть 7 наборов, для наиболее распространённых применений), то делать ничего не надо — пульт и блок уже связаны. Если у вас они были приобретены по отдельности — то перед использованием их надо связать. Делается это просто:

  1. Нажимаем кнопку на силовом блоке(задняя поверхность гибкая, и его не надо разбирать — просто сдавить с двух сторон). Светодиод на нем начнет медленно мигать.
  2. Нажимаем сервисную кнопку на пульте управления. Загорается светодиод на пульте.
  3. Жмем ту кнопку, которую хотим присвоить этому силовому блоку. Светодиод на пульте погаснет, а на блоке — начнет быстро мигать.
  4. Подтверждаем привязку, нажав кнопку на блоке еще раз. Светодиод на блоке начнет мигать медленно — ждет еще одной привязки. К нему можно подключить еще одну кнопку, или другой пульт. Если вам этого не надо — нажимаете кнопку еще раз, блок выходит из режима привязки.


Теперь кнопкой из третьего пункта можно включать или выключать(или регулировать освещение — зависит от пульта) блок из первого пункта.

Все, мы можем включать и выключать освещение по-новому. Одну лампу или другую. Или обе сразу:
image
image
image
Третья кнопка, на которой нарисован частично закрашенный кружок — сценарная. Это означает, что к ней можно привязать не просто включение или выключение света, а любое состояние системы или отдельного блока. Можно взять отдельный пульт с тремя сценарными кнопками, и назначить на одну включение всего света, на вторую — выключение, а на третью — включение одной лампы, комфортное для просмотра телевизора, например.
Делается это тоже очень просто. Сначала надо привязать каждый блок, который будет участвовать в будущем сценарии к этой кнопке. Все тоже самое, но после нажатия сервисной кнопки — жмем сценарную кнопку, дожидаемся подтверждения, выходим из режима привязки. Повторяем со всеми блоками. Потом включаем/выключаем/регулируем яркость всех светильников другими кнопками, и записываем сценарий — нажимаем и держим сценарную кнопку. Через две секунды все блоки моргнут светом — сценарий записан. Теперь при нажатии этой кнопки все блоки примут то состояние, в котором были на момент записи — включатся, выключатся, или установят яркость.

Стоит сказать, что времени на установку было потрачено часа четыре, включая фотографирование.

Дистанционное управление электроприборами в москве: 57-товаров: бесплатная доставка, скидка-10% [перейти]

Популярные товары в наличии! В категории: Дистанционное управление электроприборами – купить по выгодной цене, доставка: Москва, скидки!

Необходимые компоненты

Нам потребуются (в скобках приведены цены 2023 года в местном магазине. Умеющие покупать в Китае могут существенно сэкономить в деньгах, но проиграть во времени):

1) Плата Arduino UNO с кабелем USB (можно неоригинальная, с дешёвым CH340 вместо дорогого FTDI) (450 руб.)

2) Плата с четырьмя реле, работающими от напряжения 5 Вольт и способными управлять устройствами с напряжением 220 Вольт. (450 руб.). Бывают ещё платы, работающие от 12 Вольт, не перепутайте!

3) Пучок проводов для соединения двух плат. В моём случае потребовались провода с гнездом с одной стороны и штырьком – с другой, так как блок реле имеет штырьковые контакты, а Arduino — гнёзда. Посмотрите, какие разъёмы на ваших платах, покупая провода (150 руб.).

О выключателях:

Выключатель, а точнее пульт управления:

image

Плоская штука с тремя сенсорными кнопками. Коробочка:

image

Внутри тоже руководство:

image

Если кому любопытно почитать, в конце статьи есть линк на электронную версию для всей системы, а в

— фото комплектных руководств.


Кнопок у в каждом пульте три, но символы меняются в зависимости от модели. В верхнем левом углу просто светодиод:

image

Он зажигается при нажатии на любую кнопку, а еще служит индикатором некоторых режимов. Перевернем:

image

Плата, крепеж под шуруп, полоски клейкой ленты для крепежа на плоских поверхностях.

Поддеваем отверткой, чтобы изучить подробнее:

image


Рамка, крепеж, и сам пульт:

image

Пульт, в свою очередь, тоже разбирается на три части:

image

Рамку, плату, и пластик с изображениями. Чтобы его разобрать, надо аккуратно подковырнуть две капли термоклея, которые удерживают этот бутерброд вместе. Плата пульта управления:

image


Сенсорные кнопки:

image

Нажимаем — загорается светодиод.

image

Значит ничего не сломали в процессе разборки. Собираем обратно.


Я не особо в восторге от полностью сенсорного управления, все-таки даже у маленькой тактовой кнопки лучше тактильный отклик. Ну, что есть, то есть. Через неделю я привык 🙂

О силовых блоках

Силовой блок — это вот такая

ктулху

штука:

image


Если присмотреться — то на нем есть обозначение:

image

SL-111-200. Первые две буквы — тип блока, он означает, какие лампы можно подключать к этому блоку.

SN — Лампы накаливания, галогенные лампы, в том числе на 12 вольт(через трансформатор).ST — Галогенные лампы на 12 вольт(электронный блок питания).SL — Люминесцентные и энергосберегающие лампы, светодиодные светильники, и любые другие нагрузки.

Первые два поддерживают регулировку яркости, а последний тип — нет. Зато через него можно подключать люминесцентные лампы. Последние цифры — означают мощность, которую можно подключить через такой блок. 200 — это 200 ватт, еще бывают на 300, 500 и аж на 3 и 5 киловатт. Через два последних можно включать даже прожекторы и обогреватели, возникни такая нужда.

Поставляется каждый блок вот в такой коробочке:
image
С рассказом на задней стороне, почему эта система самая лучшая:
image
И с достаточно подробной инструкцией внутри:
image
Подключать — просто.
image
Где перечеркнутый кружочек и чОрные провода — подключаем лампу. Где написано 220 вольт и белые провода — этим концом подключаемся к сети. Расположение фазы значения не имеет. Один белый провод — это антенна, ее не надо никуда подключать, просто вытянуть. Если сильно согнуть или обмотать вокруг корпуса — работать не будет, просто не примет сигнал от пульта. Одно неудобство — провода многожильные, и просто так в мои любимые клеммники не вставить. Пришлось залудить :)Откроем, надавив сбоку на защелки:
image
Мы же помним, что не разобрав устройство, нельзя считаться его полноценным хозяином, да? 🙂 Внутри вот такая платка:
image
Две микросхемы, чуть-чуть рассыпухи, кварц, светодиод, кнопка. На обратной стороне:
image
Симистор, резистор, три конденсатора. Конденсаторное питание, стало быть. Соответственно, все части системы могут потенциально находится под напряжением, не рекомендую открывать корпус и трогать пальцами внутренности, если не отключили оба провода.

Подключение

Конечно, обзор такой штуки без использования — фигня, а не обзор. Да и глупо было бы сфотографировав ее, не установить. Итак, моя кухня:

image

Как и положено технофилу, никаких люстр с завитушками, а две нормальные лампы дневного освещения с электронными балластами, в каждой — две трубки по 36 ватт.

Вот только проблема. Светит это все примерно как несколько стоваттных ламп накаливания, т.е. довольно ярко. Нет, я-то не против, но вот ночью, когда все спят, хорошо бы оставить только один светильник рабочим. Обычным способом сделать это не получится — выключатель и провод в стене только один, такой вариант строители не предусматривали. А так как ремонт я

, стены долбить ну я никак уже не намерен. Вот тут-то и пригодилась система.

Подключение arduino к компьютеру

Для начала установим программное обеспечение для программирования Arduino с сайта

Ссылки:

в проекте

Стоимость

На сайте

такой набор, который использовал я, стоит

= $51. Да, немного больше, чем 10 метров провода и выключатель, но зато без проводки поверх обоев или штробления стен. Да и установка вполне удобная.

Схема управления моторами

Мой знакомый модернизировал гироскутер и заменил им заднюю ось детской коляски. Управление осуществлялось пультами через плату Arduino.

Мы решили попробовать предоставить ребёнку возможность управлять коляской самостоятельно при помощи взгляда. Для этого в программу bkb был добавлен режим управления коляской.

После запуска в таком режиме на экране появляются стрелочки, взгляд на которые заставляет программу посылать в порт COM9 символы управления, которые потом интерпретируются коляской для движения вперёд/назад, разворотов влево/вправо и остановки.

Пока коляска находится в состоянии доработки, я решил использовать эту же программу для дистанционного управления моделью гусеничного танка. Это тоже довольно полезная вещь. Во-первых, ребёнок получает навыки, которые пригодятся для управления коляской. Во-вторых, это просто увлекательная игра.

Каждая из гусениц танка управляется рычагом, который можно сдвинуть вперёд или назад. При перемещении рычага вперёд он нажимает на кнопку, заставляющую мотор вращаться вперёд. При перемещении рычага назад он нажимает на кнопку, которая заставляет вращаться мотор в обратном направлении.

Одновременно нажать две кнопки – вперёд и назад невозможно.Блок реле был подключён к кнопкам пульта дистанционного управления согласно приведённой ниже схеме. Схема не позволяет активировать кнопки “мотор вперёд” и “мотор назад” одновременно. Одно реле включает/отключает мотор, а второе выбирает направление вперёд или назад.

Найдите на плате пульта управления, куда подключаются кнопки и подключитесь к ним, согласно приведённой схеме.

Обратите внимание, что в отличие от предыдущей схемы, Arduino управляет блоком реле выводами с 6 по 9.

Блок реле я соединил с пультом через разъём, чтобы пульт можно было легко отсоединить и использовать отдельно:

Программа, которую нужно загрузить Arduino, принимает от компьютера те же команды, какие используются для управления моторизованной коляской:

F-вперёдB-назадL-влевоR-вправоS- стоп

Текст программы приведён ниже.

// Реле подключены к пинам 6,7,8,9
int Relay1=6, Relay2=7, Relay3=8, Relay4=9;

int heartbeat=0; // для обнаружения разрыва связи

void setup() {

pinMode(Relay1,OUTPUT);
pinMode(Relay2,OUTPUT);
pinMode(Relay3,OUTPUT);
pinMode(Relay4,OUTPUT);

Serial.begin(9600);
}

void RCStop()
{
  digitalWrite(Relay1,0);
  digitalWrite(Relay2,0);
  digitalWrite(Relay3,0);
  digitalWrite(Relay4,0);  
}

void RCForward()
{
  digitalWrite(Relay1,1);
  digitalWrite(Relay2,1);
  digitalWrite(Relay3,1);
  digitalWrite(Relay4,1);  
}

void RCBack()
{
  digitalWrite(Relay1,1);
  digitalWrite(Relay2,0);
  digitalWrite(Relay3,1);
  digitalWrite(Relay4,0);  
}

void RCLeft()
{
  digitalWrite(Relay1,1);
  digitalWrite(Relay2,0);
  digitalWrite(Relay3,1);
  digitalWrite(Relay4,1);  
}

void RCRight()
{
  digitalWrite(Relay1,1);
  digitalWrite(Relay2,1);
  digitalWrite(Relay3,1);
  digitalWrite(Relay4,0);  
}

void loop() 
{
  // 1. Принимаем команду от компьютера
  while(Serial.available())
  {
    switch(Serial.read())
    {

      case 'S': // Стоп машина!
      RCStop();
      heartbeat=0;
      break;

      case 'F': // Ехать вперёд!
      RCForward();
      heartbeat=0;
      break;

      case 'B': // Ехать назад!
      RCBack();
      heartbeat=0;
      break;

      case 'L': // Поворот влево!
      RCLeft();
      heartbeat=0;
      break;

      case 'R': // Поворот вправо!
      RCRight();
      heartbeat=0;
      break;
    } // switch
  } // while

  // 2. Обнаруживаем обрыв связи
  // Если треть секунды не было команд - отключаем моторы
  delay(10);
  heartbeat  ;
  if(heartbeat>30)
  {
    heartbeat=30; // не расти же бесконечно!
    RCStop(); // связь потеряна - моторы выключаем
  }
}

Если связь с компьютером обрывается (не приходят никакие символы в течение 0,3 сек, то Arduino выключает моторы). Такую ситуацию можно смоделировать, закрыв глаза при управлении взглядом. Айтрекер не сможет определить направление взгляда и сигналы не будут посылаться. Моторы остановятся.

Модель танка я оснастил видеокамерой, которая обычно именуется курсовой, или FPV (First Person View), передающей аналоговый сигнал на частоте около 5,8 ГГц. Я взял одну из самых дешёвых камер, оснащённую также передатчиком и антенной: AKK BA-3. Мне она обошлась в 1050 рублей. Камера с передатчиком столь мала, что умещается в руках у фигурки «Лего»:

Всё, что нужно сделать для работы камеры – подключить её к питанию (от 3,2 до 5,5 Вольт). Потом единственной кнопкой выбрать диапазон, частоту и мощность передатчика.

Камера ощутимо греется, поэтому рекомендую выставить минимальную мощность (25 милливатт). К тому же я подключил её к аккумулятору танка с напряжением 6 Вольт, что превышает допустимые значения. Поэтому не знаю, сколько она протянет. Вам же рекомендую использовать стабилизатор напряжения для питания камеры.

При креплении камеры я приклеил к танку один элемент конструктора «Лего», а остальные элементы уже крепил к нему простым соединением. Это позволяет легко снимать и убирать камеру. Также при врезании в препятствие камера может просто сложиться, что спасёт её от повреждения.

Для приёма видеосигнала от камеры я использовал приёмник Eachine ROTG01. Брал не новый за 1800 руб. Это просто коробочка с антенной, которая соединяется с USB-портом компьютера и видна как USB-камера. То есть запускаем приложение “Камера” в Windows и видим то, что принимает приёмник.

В целом нам потребуются три порта USB в компьютере:

— для айтрекера— для Arduino, управляющего пультом управления танком— для приёмника видеосигнала

Запускаем вывод изображения с камеры, например, программой «Камера». Запускаем программу bkb и выбираем режим управления моторизованной коляской.

Схема управления электророзетками

Если вы не знакомы с электробезопасностью и никогда не делали электропроводку в доме, не пытайтесь повторить эту схему! В схеме используется опасное для жизни напряжение!

Ещё раз контрольные вопросы:

Если вы неуверенно отвечаете на эти вопросы, попросите собрать схему кого-нибудь более опытного.

Теперь к делу.

Работает это вот так:

Схема подключения розеток выглядит так:

Ноль подаём на розетки напрямую, а фазу – через реле. Если сделаете наоборот, то работать будет, но возникнет опасность поражения током от ВЫКЛЮЧЕННЫХ НЕИСПРАВНЫХ приборов. То есть, хватаетесь за выключенный неисправный телевизор, а он вас током бьёт.

Если в доме есть защитное заземление, то используйте розетки с заземлением.

Дальше – мой референсный дизайн. В нём я допустил ошибку с цветом проводов: цвет нулевого провода сделал коричневым, а фазы – голубым. Обратите на это внимание.

Берём кусок доски подходящего размера, чтобы на нём уместились (слева направо): Arduino, блок реле, четыре розетки, скоба для прижатия провода к доске.

Отпиливаем лишнее и стамеской проделываем жёлоб для проводов, чтобы они свободно укладывались под розетками.

Платы Arduino и блока реле прикручиваем саморезами к доске, проложив пластиковые шайбы.

Если шайб под рукой не оказалось, можно нарезать дюбели:

Подготовим провода: обрежем до нужной длины и зачистим от изоляции. Желательно их залудить паяльником в местах контактов с розетками и реле.

Прижмём провод к доске при помощи скобы, чтобы его нельзя было выдернуть.

Подключаем провода и привинчиваем розетки. Прозваниваем цепи.

Соединяем плату Arduino с блоком реле пучком проводов в соответствии с приведённой выше схемой.

Закрываем платы защитным кожухом из непроводящего ток материала. Здесь это нужно сделать обязательно, так как к блоку реле подходит опасное для жизни напряжение! В крайнем случае хотя-бы замотайте изолентой контакты у реле.

Я использовал в качестве кожуха контейнер для продуктов из жёсткого пластика, прикрепив его саморезами:

Не забудьте проделать отверстие для USB-кабеля.

Соединим устройство с компьютером, но не включаем его в розетку.

Запускаем программу “Arduino” и копируем туда вот этот текст программы:

// Реле подключены к пинам 2,3,4,5
int Relay1=2, Relay2=3, Relay3=4, Relay4=5;

void setup() {

pinMode(Relay1,OUTPUT);
pinMode(Relay2,OUTPUT);
pinMode(Relay3,OUTPUT);
pinMode(Relay4,OUTPUT);

Serial.begin(9600);
}

void loop() 
{
 delay (200);

  // 1. Принимаем команду от компьютера
  while(Serial.available())
  {
    switch(Serial.read())
    {
     case '0': // первое реле выключить
      digitalWrite(Relay1,0);
      break;

     case '1': // первое реле включить
      digitalWrite(Relay1,1);
      break;

     case '2': // второе реле выключить
      digitalWrite(Relay2,0);
      break;

     case '3': // второе реле включить
      digitalWrite(Relay2,1);
      break;

     case '4': // третье реле выключить
      digitalWrite(Relay3,0);
      break;

     case '5': // третье реле включить
      digitalWrite(Relay3,1);
      break;

     case '6': // четвертое реле выключить
      digitalWrite(Relay4,0);
      break;

     case '7': // четвертое реле включить
      digitalWrite(Relay4,1);
      break;
    } // switch
  } // while
}


Затем жмём на кнопку загрузки программы в Arduino (см. рисунок ниже). Если всё прошло без ошибок, то видим надпись “Загрузка завершена”.

Проверим, что наше устройство исполняет команды. Для этого вызовем монитор порта:

Теперь наберём там цифру 1 и нажмём Enter или кнопку «Отправить»:

Раздастся характерный щелчок реле и контакт в первой розетке соединится с проводом фазы. Проверьте это при помощи тестера. Затем наберите цифру 0 и реле отключит контакт.

Посмотрев на текст программы, можно заметить, что будет, если мы наберём другие цифры:

3,2 – включить, выключить вторую розетку

5,4 – включить, выключить третью розетку

7,6 — включить, выключить четвёртую розетку

Проверьте тестером подключение этих розеток. После проверки можно подключить провод к напряжению в сети и начать включать/выключать реальные приборы.

Наша следующая задача – включать и выключать приборы при помощи взгляда. Для этого сконфигурируем программу bkb, описанную вот в этой статье, (НУЖНА ПОСЛЕДНЯЯ ВЕРСИЯ ПРОГРАММЫ!!!).

Допустим, мы хотим включать и выключать лампу и ёлочную гирлянду.Нарисуем в стандартной программе Paint четыре рисунка размером 200×200 в формате BMP:

Создадим также четыре командных файла: c.cmd, d.cmd, e.cmd, f.cmd

Они будут содержать команды отсылки в порт COM9 символов 1,0,3,2. А мы помним, что они включают и выключают первую и вторую розетки. Важно, чтобы между двумя строками в этих файлах не было пустых строк!

c.cmd:

Заключение


Желаю всем успехов в повторении и развитии описанных технических решений.

Смотрите про коптеры:  Управление светом с телефона Андройд: ТОП-11 лучших приложений
Оцените статью
Радиокоптер.ру
Добавить комментарий