Bluetooth Remote Control: управление компьютером с мобильника — «Хакер»

Bluetooth Remote Control: управление компьютером с мобильника — «Хакер» Роботы

Запуск содержимого компьютера на андроиде

С помощью функции My Computer
вы можете скачивать и запускать любой файл, находящийся на вашем компьютере, в своем андроид устройстве, при чем эта операция никак не отображается на запущенном компьютере.

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

  • в качестве мышки
  • вместо клавиатуры
  • удаленное управление компьютером через андроид
  • запускать содержимое компьютера на андроиде

Хотите управлять своим компьютером или ноутбуком с Windows 10 через телефон? С помощью соответствующего программного обеспечения можно удаленно управлять компьютером, использовать телефон как мышку, заходить в меню Пуск, запускать программы, мультимедийные приложения и много другое. Рассмотрим, как это сделать.

Если вам нужно получить доступ к компьютеру через телефон, обратите внимание на приложение Controller for Windows 10. Эта программа «превращает» телефон в беспроводный пульт к компьютеру. Позволяет управлять мышкой через сенсорный экран смартфона, предоставляет возможность запускать приложения с помощью жестов (можно создавать собственные жесты для запуска различных программ на компьютере), управлять громкостью системы и мультимедийными приложениями и многое другое.

Все это работает на удивление гладко и без каких-либо задержек. Связь между телефоном и компьютером с Windows 10 устанавливается через беспроводную связь – то есть ваш компьютер и телефон должен быть в той же сети WiFi.

Смотрите про коптеры:  Как включить Блютуз на ноутбуке: простое руководство для Windows 7,8,10  |

Bluetooth remote control: управление компьютером с мобильника

Bluetooth Remote Control: управление компьютером с мобильника — «Хакер»

Когда то очень давно мне в руки попал Хакер за
апрель 2003 года. В нем была статья про то, как через IrDA и при
помощи пульта дистанционного управления управлять Виндой. Я тогда помню накупил деталей, спаял ИК-приемник, но ничего у меня не вышло :). Недавно захотел довести начатое до конца, но уже на основе Bluetooth. Для этого нам понадобится тело с “синим зубом” и BT-адаптер для компа.

Так как самому реализовывать в дельфи работу с bluetooth было долго и муторно, я решил взять уже готовую библиотеку: Bluetooth Framework Library, которую написал наш соотечественник (правда она без исходников). С библиотекой идет несколько демок, показывающих основные возможности.
Нам же сегодня потребуется KeypadControl. Отрываем source и устанавливаем библиотеку, потом копируем все содержимое этой папки, открываем demo_docdemoKeypadControl, вставляем и запускаем KeypadControl.dpr. Перед нами открылась главная форма этой демки. Она может обрабатывать нажатия кнопок на теле и по нажатию кнопок на форме эмулировать их нажатие на теле. Я предлагаю создать для тела простой мидлет, в котором будет крутиться цикл до тех пор, пока не нажата клавиша “0”. Его можно скачать тут
http://www.mobileservicesoft.narod.ru/blank.rar. Теперь необходимо придумать, за что будет отвечать каждая кнопка на теле. У меня siemens cx75 и для него я реализовал так: 

джойстик – перемещает курсор (причем перемещаем, пока кнопка нажата, в таймере) 
нажать его – левая кнопка мыши 
левая софт кнопка – двойное нажатие левой кнопки мыши 
правая софт кнопка – правая клавиша мыши 
зеленая трубка – reboot 
красная трубка – shutdown 
1 – enter 
2 – стрелка вверх 
3 – закрыть активное окно 
4 – стрелка влево 
5 – стрелка вниз 
6 – стрелка вправо 
7 – отрыть лоток CD 
8 – закрыть лоток CD 
9 – свернуть активное окно 

Для реализации задуманного нужно удалить все кнопки с форы кроме Connect и соответственно все обработчики нажатий на эти кнопки. Добавить таймер и все. ShowMessage(‘DOWN: ‘ Key) – тоже надо везде удалить.

Давайте посмотрим, как все это работает. Запускаем
приложение, появляется окно, на нем одна кнопка Connect, после ее нажатия вылезет несколько окон – там все
просто. Теперь соединение установлено. Нажатие кнопки на теле генерирует событие BFKeypadControlClientKeyDown(Sender: TObject; Key: String), где key – это код нажатой кнопки. Теперь нужно поместить простой case и все, хотя все лучше видно на исходнике:

key1:=key[1]; //это нужно, чтобы в обработке таймера знать какая кнопка была нажата 
a1:=0; 
a2:=0; 
case key[1] of 
'<' : a1:=-10; //
курсор влево 
'>' : a1:=10; //
курсор вправо 
'^' : a2:=-10; //
курсор вверх 
'V' : a2:=10; //
курсор вниз 
'F' : begin //
нажимаем левую кнопку мыши 
GetCursorPos(p); 
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, P.x, P.y, 0, 0); 
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, P.x, P.y, 0, 0); 
end; 
'[' : begin //
нажимаем левую кнопку мыши дважды 
GetCursorPos(p); 
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, P.x, P.y, 0, 0); 
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, P.x, P.y, 0, 0); 
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, P.x, P.y, 0, 0); 
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, P.x, P.y, 0, 0); 
end; 
']' : begin //
нажимаем правую кнопку мыши 
GetCursorPos(p); 
mouse_event(MOUSEEVENTF_RIGHTDOWN, P.x, P.y, 0, 0); 
mouse_event(MOUSEEVENTF_RIGHTUP, P.x, P.y, 0, 0); 
end; 
'S' : WinExec(PChar('shutdown -t 0 -r'),SW_SHOWNORMAL); //
reboot 
'C' : WinExec(PChar('shutdown -t 0 -s'),SW_SHOWNORMAL); //
shutdown 
'1' : begin //
эмулируем нажатие кнопки enter 
keybd_event(VK_RETURN,0,0,0); 
keybd_event(VK_RETURN,0,KEYEVENTF_KEYUP,0); 
end; 
'2' : begin //
эмулируем нажатие стрелки вверх 
keybd_event(vk_up,0,0,0); 
keybd_event(vk_up,0,KEYEVENTF_KEYUP,0); 
end; 
'3' : SendMessage(GetForegroundWindow, WM_CLOSE,0,0); //
закрываем активное окно 
'4' : begin //
эмулируем нажатие стрелки влево 
keybd_event(VK_LEFT,0,0,0); 
keybd_event(VK_LEFT,0,KEYEVENTF_KEYUP,0); 
end; 
'5' : begin //
эмулируем нажатие стрелки вниз 
keybd_event(VK_DOWN,0,0,0); 
keybd_event(VK_DOWN,0,KEYEVENTF_KEYUP,0); 
end; 
'6' : begin //
эмулируем нажатие стрелки вправо 
keybd_event(VK_RIGHT,0,0,0); 
keybd_event(VK_RIGHT,0,KEYEVENTF_KEYUP,0); 
end; 
'7' : mciSendString('Set cdaudio door open wait', 0, 0, 0); //
отрываем лоток CD 
'8' : mciSendString('Set cdaudio door closed wait', 0, 0, 0);//
закрываем лоток CD 
'9' : ShowWindow(GetWindowLong(GetForegroundWindow,GWL_HWNDPARENT),SW_MINIMIZE); 
//
сворачиваем активное окно 
end; 
if (GetCursorPos(p)=true)and 
((key1='<')or(key1='>')or(key1='^')or(key1='V')) then 
begin 
Timer1.Enabled:=true; //
запускаем таймер 
SetCursorPos(p.X a1,p.Y a2); //
перемещаем курсор 
end; 

В обработке таймера прописываем перемещение курсора. Как только кнопку джойстика отпустили происходит BFKeypadControlClientKeyUp, где и нужно
прописать Timer1.Enabled:=false. 

Прога может работать при соединении тела с ПК через IrDA, Bluetooth и COM порт. Скачать исходник проги можно тут
http://mobileservicesoft.narod.ru/rem.rar, а саму библиотеку на
www.btframefork.com.

Lg tv remote

LG TV Remote
LG TV Remote

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

У программы 3 модификации: LG TV Remote 2023, LG TV Remote, LG TV Remote Plus. Первая предназначена для техники не старше 2023 года выпуска – это одни из первых телевизоров со смарт ТВ. Вторая программа подойдет обладателям устройств, выпущенных в 2023-2023 годах, а последняя – для всего, что новее. Третья есть в Апп Стор и Гугл Плэй. Остальные выложены на сторонних сайтах.

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

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

Кроме этого меню можно перейти к смарт-экрану с онлайн-кинотеатрами, стриминговыми сервисами, браузером. Программа бесплатна и не содержит рекламы.

Play Market: ссылкаApp Store: ссылка

Tv remote control

TV Remote Control
TV Remote Control

Универсальное решение, которое подойдет почти для любого смартфона. Достигается это за счет поддержки Андроид, начиная с 2.2, вышедшей 10 лет назад.

Для сравнения – уже есть 11-й зеленый робот. Настолько старые аппараты мало у кого остались, но их поддержка идет приложению в плюс.

Дополнительно привлекает набор способов подключения к телевизору: инфракрасный порт, Wi-Fi или подключение через IP.

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

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

Play Market: ссылкаApp Store: отсутствует

Zaza remote

ZaZa Remote
ZaZa Remote

Пульт с расширенным набором функций. Он способен работать не только с телевизорами, но и с другой цифровой бытовой техникой – ТВ-приставки, медиацентры, кондиционеры и т.д. Английский язык не должен пугать, ведь разобраться в настройках можно интуитивно.

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

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

Play Market: ссылкаApp Store: ссылка

Как использовать?

Google Play Market предлагает десятки приложений, которые предоставляют возможность удаленного управления. При этом для подключения доступна не только операционная система Windows, но и Mac, Linux. Однако большинство из них – крайне дорогостоящие.

Может сложиться ошибочное представление, что бесплатных аналогов для удаленного управления не существует. Это не так. Существует как минимум два мощных и бесплатных инструмента: Microsoft Remote Desktop и TeamViewer. Рассмотрим их.

Управление компьютером с помощью Microsoft Remote Desktop

Это мощная утилита от компании Microsoft, вышедшая не так давно. Данная программа позволяет подключаться к компьютерам, на которых установлена Windows 7 или Windows 8.

Ищем программу на Google Play Market и скачиваем. Для того чтобы подключаться к компьютеру с нашего устройства, необходимо внести некоторые изменения в настройках системы компьютера:

https://www.youtube.com/watch?v=gG-9IBFsRwI

Переходим в Панель управления -> Система, выбираем пункт Настройка удаленного доступа, после чего устанавливаем галочку на «Разрешить подключаться только с компьютеров, на которых работает удаленный стол с проверкой подлинности на уровне сети»:

Разрешить удаленный доступ к компьютеру

Что делать если нижняя часть «Удаленный рабочий стол» отсутствует?

Это означает, что у вас отключен брандмауэр Windows. Для его включения переходим на рабочий стол, правая кнопка по «Мой компьютер», выбираем «Управление». Открываем «Службы» и в списке находим «Брандмауэр», после чего меняем его состояние на «Включен».

Включение брандмауэра Windows

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

Добавление подключения в Microsoft Remote Desktop

Ввод параметров подключения к компьютеру

Как узнать IP компьютера?

Используем сочетание клавиш Win R, в открывшемся окне вводим cmd. После открытия командной строки, пишем ipconfig. «IPv4 адрес» и есть нужный нам IP:

Определение локального IP адреса компьютера

Вводим его в окно добавления подключения Remote Desktop. При желании можно указать пароль.

Готово! Вы успешно подключитесь к удаленному компьютеру и увидите его рабочий стол.

Управление компьютером с помощью TeamViewer

Данная программа является одной из популярнейших в своем роде. Она бесплатна, удобна и очень распространена среди пользователей ПК. Однако мало кто знает о том, что не так давно разработчики выпустили своё детище и на Android. В отличие от Microsoft Remove Desktop, TeamViewer позволяет подключаться к компьютерам с установленными операционными системами Windows, Mac и Linux.

Как обеспечить дом умными светильниками

И прежде чем рассмотреть управление освещением со смартфона, стоит рассмотреть базовые способы того, как обеспечить дом умными светильниками. Несмотря на простое «купить что-то из системы умного дома», существуют также иные методы. В числе таковых:

  1. Умные светильники. Это самый простой способ, который используют с заделом на будущее, так как после проще обновить остальной интерьер. Они также зачастую входят в какую-либо экосистему, что априори делает превращение дома в «умный» несколько проще.
  2. Патроны. Способ более изощренный, однако не сложный. Можно купить своеобразный переходник, который сделает из любой лампы умную. Тем не менее есть ограничения в виде поддержки только осветительных приборов, что попросту исключает диодные источники света. Дальше стоит учитывать размер, который не всегда будет соответствовать необходимому, и сам монотонный процесс замены каждой лампы в доме. Критическим же недостатком для многих является тот факт, что при выключении лампа перестанет быть «умной». Связь с ней возможна только тогда, когда она находится в сети.
  3. Лампы. Это улучшенная версия переходников и более «правильная», хоть и немного дорогая. Диодные источники по-прежнему нельзя использовать, однако устанавливать лампочки вместо переходников куда проще. По части недостатков ситуация следующая: ресурс таких ламп меньше, а при их отключении от питания связь с ними пропадает.
  4. Умные выключатели. Наиболее оптимальный вариант, который позволит управлять источником света всегда, потому как непосредственно связан с подачей питания для него, однако исключает возможность управления с помощью приложения.

И теперь, когда разобраны основные способы по обеспечению дома «умных» светильников, разберем методы управления ими с помощью смартфона.

Как работает пульт на телефоне для телевизора

На пульте сели батарейки, он потерялся, его перепутал с соской ваш маленький ребенок, – может быть масса причин, по которым пульт ДУ недоступен. В этом случае на помощь придет смартфон, который вполне способен заменить устройство для удаленного управления. Причем это работает как на аналоговых ТВ, так и на современных «умных» телевизорах.

Главный нюанс: если речь идет о первых, понадобится гаджет, имеющий инфракрасный порт, например, некоторые устройства от Xiaomi. А вот для управления смарт ТВ подойдет телефон, поддерживающий Wi-Fi-соединение. Но в обоих вариантах понадобится устанавливать специальные приложения. Если речь идет о телефоне на ОС Андроид, скачивать программу нужно на Google Play, а если у вас айфон, то в AppStore.

Для поиска приложения в поле нужно ввести название марки телевизора и добавить слово Remote.

Вкратце телефон работает в качестве пульта по такой схеме:

  1. Загрузка программы на смартфон и ее открытие.
  2. Сопряжение гаджета и телевизора с помощью одной сети Wi Fi.
  3. Поиск и выбор своей ТВ-панели.

После этих действий экран устройство превратится в аналог пульта ДУ. С помощью программы можно также:

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

Если телевизор не реагирует на сигнал от устройства дистанционного управления, желательно тестировать пульт на смартфоне. Нести в ремонт такую вещь не всегда целесообразно. И большинство людей задумываются о том, чтобы заказывать устройство той же модели, что и

ТВ-панель, или приобретают универсальный пульт. Однако перед покупкой нового стоит убедиться в том, что старый действительно не работает. Сделать это можно с помощью телефона.

Пульт ДУ работают с помощью невидимого невооруженным глазом способа связи – инфракрасного излучения, производимого лампочкой на одной из его сторон. ИК-свечение способна уловить камера мобильного телефона, причем даже кнопочного.

Для тестирования следует:

  1. Открыть камеру устройства.
  2. Направить пульт на смартфон и зажать любую кнопку, лучше всего включения/отключения. Делать тест лучше в затемненном помещении.
  3. После нажатия на пульт через камеру нужно следить за лампочкой на нем. Если она загорелась синим или фиолетовым светом, ИК-сигнал пошел, а значит, устройство ДУ в рабочем состоянии.

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

Если речь идет об iPhone 4-й версии и других смартфонах, имеющих инфракрасный фильтр в объективе, проверку нужно делать с помощью фронтальной камеры. Тестировать на главной камере не имеет смысла, так как она не позволит увидеть свечение от лампочки пульта. Узнать о наличии такого фильтра можно в печатной инструкции или ее онлайн-версии.

В ситуации, когда пульт работает, но телевизор не реагирует на сигналы, логично предположить, что дело в приемнике сигналов. В этом случае в ремонтную мастерскую придется отдавать уже ТВ-панель.

Настройка teamviewer

Bluetooth Remote Control: управление компьютером с мобильника — «Хакер»App Store и Google Play имеются мобильные вариации приложения. С их помощью можно подключиться к компьютеру в одной Wi-fi сети или удаленно через интернет. В данный момент по удобству интерфейса и качеству передачи информации мобильные версиипрограммы TeamViewer уступают приложению Splashtop. Но если требуется подключаться к компьютеру вне сети Wi-fi бесплатно, ее можно использовать с этой целью. Кроме того, через TeamViewer, в отличие от Splashtop, можно подключаться к компьютерам сторонних пользователей удаленно с мобильного устройства, а также передавать файлы.Управление компьютером через андроид

очень удобно осуществлять по Wi-Fi. Вам не нужны беспроводная мышка и клавиатура при управление компьютером через андроид.

Средняя беспроводная мышка стоит $30, клавиатура – $40. Но зачем тратить деньги
, если у вас есть андроид, который всегда под рукой и на него можно позвонить, если он случайно упал за диван? Также вам не нужно заботиться о покупке батареек или их зарядке, а, как правило, это необходимо в самый неподходящий момент.

В этой статье мы разберем как управлять компьютером через андроид:1. В качестве мышки.
2. Вместо клавиатуры.
3. Удаленное управление компьютером через андроид.
4. Запуск содержимого компьютера на андроиде.

Подключение rgb ленты через arduino для управления с телефона | каталог самоделок

Данный проект посвящен тому, как сделать светодиодную подсветку, управляемую с соседней комнаты, чтобы не вставать с дивана. Светодиодная RGB-подсветка одинаково хорошо украшает как маленький аквариум, так и большую комнату.

Можно засветить разными цветами баню от RGB ленты на Arduino. Создать, так сказать, баню на микропроцессорном управлении от Arduino.

Всего лишь понадобятся для сборки RGB-подсветки такие компоненты:

  1. Bluetooth модуль HC-05 для беспроводной связи с Arduino.
  2. Плата Arduino nano, mini, Uno с микропроцессором ATmega8, ATmega168, ATmega328.
  3. Светодиодная лента RGB, при необходимости во влагозащитном исполнении IP65 или без него.
  4.  Смартфон с Android как пульт управления RGB-подсветкой.
  5. Полевые MOSFET транзисторы, такие как P3055LD, P3055LDG, PHD3355L, но лучше с выводами для закрепления в монтажных отверстиях. Биполярные транзисторы работают хуже.
  6. Резисторы 10 кОм, 0.125 Вт — 3 штуки.

Немного теории про подключение RGB ленты к Arduino

Нельзя подключить светодиодную полоску напрямую к плате Arduino. Светодиодная лента светиться от 12 В, тогда как микропроцессору нужно для работы всего 5 В.

Но, самая главная проблема в том, что выходы микропроцессора не имеют достаточной мощности для питания целой ленты светодиодов. В среднем метровой длины светодиодная полоса потребляет 600 мА. Такой ток точно выведет из строя плату Arduino.

Используемые ШИМ выходы микропроцессора не имеют достаточной мощности, чтобы засветить RGB ленту, но всё-таки их можно использовать для снятия сигнала управления.

Для развязки по питанию, в качестве ключей, рекомендуется использовать транзисторы. Лучше использовать полевые MOSFET транзисторы: им для открытия нужен мизерный ток на «затвор», к тому же они имеют большую мощность в сравнении с биполярными ключами такого же размера.

Подключение RGB ленты к Arduino

На электромонтажной схеме на управление лентой задействованы ШИМ-выхода: 9 (красный), 10 (зеленый), 11 (голубой).

Три резистора по 10 кОм, 0.125 Вт повешены на «затвор» каждого транзистора.

Плюс от блока питания 12 В (красный провод) идет напрямую на RGB ленту. Смотрите распиновку многоцветной ленты.

Смотрите распиновку многоцветной ленты

Минус от блока питания 12 В (черный провод) распределяется по «истокам» полевых транзисторов.

«Сток» каждого транзистора связан с отдельным контактом ленты: R, G, B. Рекомендуется для удобства при подключении использовать провода красного, зеленого, голубого цвета.

Контакт заземления GND платы Arduino следует посадить на минус входного питания.

Сама плата Arduino Uno запитывается от отдельного сетевого адаптера. Для Arduino nano, mini потребуется собрать простенький источник питания на интегральном стабилизаторе 7805.

Подключение

Подключение Bluetooth модуля HC-05:

  • VCC — 5V (питание 5 В);
  • GND — GND (земля, общий);
  • RX — TX на Arduino nano, mini, Uno;
  • TX — RX на Arduino nano, mini, Uno;
  • LED — не используется;
  • KEY — не используется.

Подключение

Загрузка скетча RGB-ленты

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

Скетч RGB_LED

unsigned long x;
int LED = 9; // зеленый подключен к 9 пину
int LED2 = 10; // синий подключен к 10 пину
int LED3 = 11; // красный подключен к 11 пину
int a,b,c = 0;
void setup() {
Serial.begin(9600);
Serial.setTimeout(4);
pinMode(LED, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
}
void loop()
{
if (Serial.available())
{
x = Serial.parseInt();
if (x>=0 && x<=255) {
a = x;  // для RGB ленты
//a = 255-x;  // для светодиода
analogWrite(LED, a);
}
if (x>=256 && x<=511) {
b = x-256;  // для RGB ленты
//b = 511-x;  // для светодиода
analogWrite(LED2, b);
}
if (x>=512 && x<=767) {
c = x-512;  // для RGB ленты
//c = 767-x;  // для светодиода
analogWrite(LED3, c);
}
/* Serial.println(x);
Serial.println(a);
Serial.println(b);
Serial.println(c); */
}
}

Если понадобиться подключить один RGB светодиод, тогда есть электромонтажная схема его подключения.

подключить один RGB

Установка приложения на телефон

Скачиваем приложение с коротким названием RGB на телефон. Здесь бесплатное приложение RGB на Android.

После установки запускаем приложение по иконке.

 запускаем приложение

Кликаем по надписи connect

connect

Находим в списке установленный Bluetooth модуль HC-05.

Находим в списке

При наличии связи вместо надписи connect будет отображаться адрес и название установленного модуля Bluetooth.

налажено!

Ну, вот и всё, управление RGB подсветкой налажено!

Вот видео-пример работы нашего проекта:

Автор: Виталий Петрович. 


Разработка android-контроллера для управления rgb светодиодной лентой. часть 1

Журнал РАДИОЛОЦМАН, январь 2023

Вадим Колесник, Тирасполь

Android Bluetooth RGB controller – простое аппаратно-программное решение для управления RGB светодиодной лентой или RGB светодиодами посредством Android-устройства с поддержкой Bluetooth

Статья носит ознакомительный характер, и в ней я постараюсь максимально подробно описать процесс создания простой системы, с помощью которой можно удаленно управлять RGB светодиодной лентой (или RGB светодиодами) посредством любого Android-устройства с интегрированным Bluetooth-модулем (Рисунок 1). Материал будет полезен не только начинающим радиолюбителям, осваивающим микроконтроллеры, но и профессионалам, интересующимся простым способом реализации беспроводного обмена данными Android-устройств с микроконтроллерными системами.

Общие сведения, состав аппаратной части и принципиальная схема.

Отличительной особенностью данного проекта является простота аппаратной и программой части системы, в состав которой входят Bluetooth-контроллер, портативное Android-устройство с установленным приложением (смартфон, планшет), выполняющее функции пульта ДУ, и источник питания 12 В/3 А (Рисунок 2). В статье мы рассмотрим в некотором роде демонстрационную версию системы, раскрывающей основные ключевые моменты аппаратной и программной реализации.

Bluetooth-контроллер представляет собой компактное устройство, состоящее из AVR микроконтроллера (МК) AtmelATmega8, миниатюрного Bluetooth-модуля HC-05 [4], силовых N-канальных MOSFET ключей, интегральных регуляторов напряжения, светодиодов статуса и нескольких пассивных элементов.

Программа микроконтроллера очень проста и разработана в интегрированной среде разработки AVR Studio 4 на языке Си.

Программное приложение для Android-устройства разработано в несложном и легким в освоении, но при этом достаточно функциональном графическом редакторе MIT App Inventor Beta.

Основные характеристики системы:

  • аппаратная часть (Bluetooth-контроллер):
    • доступный, дешевый и простой в применении Bluetooth-модуль HC-05;
    • реализованные на МК 3 канала 8-разрядной ШИМ для управления светодиодами;
    • в качестве силовых ключей используются N-канальные MOSFET в корпусе для поверхностного монтажа;
    • автономная работа – не требуется постоянная связь по Bluetooth с Android-устройством;
    • дальность связи 10-15 м;
    • напряжение питания 12 В;
    • ток потребления Bluetooth-контроллера (без светодиодной ленты):
      • Bluetooth-модуль в режиме поиска: 55 … 60 мА;
      • при установленном соединении с Android-устройством и отсутствии команд: 22 … 27 мА;
      • прием и обработка команды: 38 … 42 мА;
    • два светодиода для индикации режима работы Bluetooth-контроллера;
    • возможность реализации 10-разрядного ШИМ управления;
    • возможность реализации управления различными световыми эффектами;
  • простое приложение для Android-устройства:
    • понятный и достаточно информативный графический пользовательский интерфейс;
    • отображение МАС адреса подключенного Bluetooth-контроллера;
    • возможность ручной установки MAC-адреса;
    • сервисные сообщения об ошибках соединения с Bluetooth-контроллером;
    • кнопки быстрого выбора цвета свечения;
    • возможность ручной установки цветовой гаммы;
    • информирование о состоянии подключения;
    • возможность наращивания функционала (потребуется модернизация программы микроконтроллера).

Изначально для разработки и отладки системы автор использовал МК серии ATmega128, установленный на отладочную плату собственной разработки. Принципиальная схема доступна для скачивания в дневнике автора на форуме сайта radiocopter.ru [3]. Такой подход был обусловлен большим количеством свободных портов МК, достаточным объемом памяти и, самое главное, наличием в микроконтроллере отладочного интерфейса JTAG. При необходимости автор предоставит принципиальную схему и прошивку для этого МК.

Принципиальная схема Bluetooth-контроллера на микроконтроллере ATmega8 изображена на Рисунке 3, список примененных электронных компонентов приведен в Таблице 1. Схема и печатная плата разрабатывались в системе Proteus 7.7 SP2 [1]. Минимальное количество компонентов позволяет собрать схему на макетной плате или навесным монтажом.

Таблица 1.
Список использованных компонентов
Обозначение
в схеме
НоминалПримечание
R1, R268 ОмКорпус SMD 1206
R3, R4, R510 кОмКорпус SMD 1206
R6, R7, R8,
R9, R10
220 ОмКорпус SMD 1206
С11000 мкФ 16 В 
С20.47 мкФ 
С3, C4, C5100 мкФ 10 ВКорпус SMD
U1LM7805Возможно применение
LM78L05
U2UTC1117Y33Или аналог
в корпусе SOT223-3
DD1ATmega8Корпус PDIP28
Q1-Q3APM3055LИли аналог
в корпусе TO-252 
D1, D2светодиод (3 мм) 
X1кварцевый резонатор
11.0592 МГц
Опционально

Bluetooth-модуль HC-05 подключается к МК ATmega8 посредством интерфейса UART (порты PD0/RXD и PD1/RXD). О текущем режиме работы Bluetooth-модуля (поиск, установление соединения, режим AT команд) пользователя информируют два светодиода D1 и D2.

Стоит отметить, что в продаже доступны несколько вариантов Bluetooth-модулей, отличающихся конструктивным исполнением (Рисунок 4) и прошивкой. Чаще всего встречаются модули установленные на переходную плату с собственным регулятором напряжения, светодиодами статуса и выводами для подключения к МК. В авторском варианте схемы и печатной платы используется Bluetooth-модуль без переходной платы, который подключается к основной плате Bluetooth-контроллера с помощью гибкого шлейфа  (Рисунок 5). Другими словами, для такого решения потребуются установка микросхемы регулятора напряжения 3.3 В, светодиодов статуса и разъема для подключения к МК.

На принципиальной схеме участок с регулятором напряжения 3.3 В на микросхеме серии UTC1117Y33 (или аналогичной, например, CYT8117T33) отмечен надписью «Опционально» именно из-за этих конструктивных особенностей Bluetooth-модулей. Если вы используете модуль с переходной платой, то указанный участок исключается из схемы, изменяется разводка разъема подключения и, соответственно, немного видоизменяется печатная плата [2]. Распайка гибкого шлейфа для подключения Buetooth-модуля к разъему на печатной плате изображена на Рисунке 6.

Несмотря на то, что Bluetooth-модуль имеет напряжения питания 3.3 В, его цифровые входы/выходы являются 5 В совместимыми и могут подключаться к МК с напряжением питания 5 В без схем преобразования логических уровней.

Микросхема стабилизатора 5 В серии LM7805 используется для питания МК, а также в качестве предварительного понижающего регулятора напряжения для микросхемы стабилизатора 3.3 В (максимальное входное напряжение для этих микросхем не должно превышать 9 В). Однако возможно применение микросхемы серии LM78L05, ввиду того, что потребляемый МК и Bluetooth-модулем ток не превышает 65 мА. (Максимальный выходной ток LM78L05 составляет 100 мА). В ходе тестирования был выявлен незначительный нагрев микросхемы регулятора, когда Bluetooth-модуль находится в режиме поиска.

После программной инициализации периферии МК выходами 8-разрядных аппаратных блоков ШИМ назначаются порты PB1 (OC1A), PB2 (OC1B), PB3 (ОС2), к которым подключаются силовые N-канальные MOSFET ключи APM3055L с соответствующими резисторами в цепях затворов и между истоком и затвором. При работе с RGB светодиодной лентой длиной 5 м (светодиоды типоразмера 5050) нагрева силовых ключей не происходит. Также возможно применение любых мощных MOSFET в корпусе для поверхностного монтажа, например, транзисторов серии K3918. В процессе тестирования схемы в трех каналах ШИМ автор использовал указанные силовые ключи (один APM3055L и два K3918, что бросается в глаза на Рисунке 9), и разницы в установке цветовой гаммы и яркости не заметил.

Тактирование МК осуществляется от внутреннего осциллятора 8 МГц, однако на схеме указан опциональный кварцевый резонатор 11.0592 МГц. Кварцевый резонатор позволит повысить надежность обмена данными по UART. Испытания системы при тактовой частоте МК 8 МГц и скорости работы UART 9600 бит/с показали, что обмен данными ведется достаточно надежно, и сбоев обнаружено не было.

Также на схеме изображена перемычка (джампер) J1, предназначеная для перевода Bluetooth-модуля в режим AT команд с целью его конфигурирования и определения текущих параметров.

Все предлагаемые варианты печатных плат являются односторонними (Рисунки 7, 8). Коннектор для внутрисхемного программирования в авторских вариантах схем отсутствует, что связано с желанием минимизировать размеры платы, поэтому микроконтроллер устанавливается в DIP колодку, чтобы его можно было его извлечь для программирования.

Внешний вид готовой платы со стороны установки smd компонентов изображен на Рисунке 9. Как видно, печатная плата изготавливалась в домашних условиях по ЛУТ-технологии без лужения печатных проводников.

Ссылки

  1. Принципиальные схемы и рисунки печатных плат для варианта Bluetooth-модуля без переходной платы (Proteus 7.7 SP2) – скачать
  2. Принципиальная схема и печатная плата для варианта Bluetooth-модуля на переходной плате (Proteus 7.7 SP2) – скачать
  3. Документация на модуль HC-05 и утилита для его настройки – скачать
  4. Отладочная плата на микроконтроллере ATmega128
  5. Калькулятор Fuse-битов AVR микроконтроллеров

Продолжение

Реализация — android


Для телефона было написано приложение, с возможностью задания передаваемых команд без переписывания и компиляции кода — для универсальности.

Скриншоты приложения:

Особых заморочек не было — благо документация есть, и весьма хорошая, как и громадное количество советов на StackOverflow. Но кое с чем пришлось столкнуться — например невозможность подключиться к Ардуино, используя стандартный метод класса BluetoothDevice:

// Get a BluetoothSocket to connect with the given BluetoothDevice
try
{
    // MY_UUID is the app's UUID string, also used by the server code
    tmp = device.createRfcommSocketToServiceRecord(MY_UUID);
}
catch (IOException e) { }

Вместо этого пришлось лезть в рефлекшн и дергать приватный метод:

try
{
    Class class1 = device.getClass();
    Class aclass[] = new Class[1];
    aclass[0] = Integer.TYPE;
    Method method = class1.getMethod("createRfcommSocket", aclass);
    Object aobj[] = new Object[1];
    aobj[0] = Integer.valueOf(1);

    tmp = (BluetoothSocket)method.invoke(device, aobj);
}

С чем связана эта проблема — неизвестно, но возникает она у многих.

Еще одна проблема возникла при парсинге принимаемой от микроконтроллера строки. Вместо строк вида ###0-50-100-150-200-250***###0-50-100-150-200-250***… иногда приходили строки с ошибочным количеством элементов, неправильными разделителями или маркерами начала/окончания последовательности.

Реализация — arduino


Для управления выбрал телефон на Андроиде и синезуб, как наиболее простой способ, не завязанный на систему команд определенного пульта, не подверженный проблемам передачи команд через препятствия вроде стен-мебели-котов.

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

Максимум числа светодиодов — 6, по количеству PWM выходов выбранного Ардуино.

Что требовалось доделать: возможность подключения модуля синезуба для приема команд управления и отсыла данных о текущем состоянии на телефон для отображения.

С этим я успешно справился, результатом стал скетч для Ардуино:

Код скетча
#include <SoftwareSerial.h>

enum LedState { LED_ON, LED_OFF };
boolean isFadeMode = false;

#define LED_CNT 6
int ledPins[LED_CNT] = {11, 10, 9, 6, 5, 3}; // pwm pins
int ledBrightnessesWave[LED_CNT] = {0, 50, 100, 150, 205, 255}; // represents initial brightness for wave mode
int ledStepsWave[LED_CNT] = {-5, 5, 5, 5, 5, 5}; // represents initial change for wave mode
int ledBrightnesses[LED_CNT]; // represents brightness for pin
int ledSteps[LED_CNT]; // represents change, each pin gets its own change so it wont interfere with any other pin

int ledSpeed = 50;
int maxLedBrightness = 255;
int ledBrightnessesConst = 255; // represents brightness for pins in no wave or fade mode

LedState led_state;

#define rxPin 2
#define txPin 4

#define SPEED_PREFIX 'G'
#define SPEED_PREFIX_MAX 'P'
#define BRIGHTNESS_PREFIX 'Q'
#define BRIGHTNESS_PREFIX_MAX 'Z'

#define MIN_SPEED_DELAY 5
#define MAX_SPEED_DELAY 100
#define MIN_BRIGHTNESS 5
#define MAX_BRIGHTNESS 255

// set up a new serial port
SoftwareSerial mySerial =  SoftwareSerial(rxPin, txPin);

void setup()
{
  for (int i = 0; i < LED_CNT; i  )
  {
    pinMode(ledPins[i], OUTPUT); //set pwm pins to output

    //copy initial values
    ledBrightnesses[i] = ledBrightnessesWave[i];
    ledSteps[i] = ledStepsWave[i];
  }
  
  led_state = LED_ON;
  
  Serial.begin(9600);

  pinMode(rxPin, INPUT);
  pinMode(txPin, OUTPUT);

  mySerial.begin(115200);
}

int getBrightness(int b)
{
  return b;
}

int valueToDelay(int value)
{
  return MIN_SPEED_DELAY   (MAX_SPEED_DELAY - MIN_SPEED_DELAY) * value / (SPEED_PREFIX_MAX - SPEED_PREFIX);
}

int valueToBrightness(int value)
{
  return MIN_BRIGHTNESS   (MAX_BRIGHTNESS - MIN_BRIGHTNESS) * value / (BRIGHTNESS_PREFIX_MAX - BRIGHTNESS_PREFIX);
}

void recalculateBrightness(int brValue)
{
  ledBrightnessesConst = valueToBrightness(brValue);
}

void ledFade()
{
  if (led_state == LED_OFF)
  {
    for (int i = 0; i < LED_CNT; i  )
    {
      analogWrite(ledPins[i], ledBrightnessesConst); // update all pins
    }
    
    return;
  }

  String s = "###";
  for (int i = 0; i < LED_CNT; i  )
  {
    analogWrite(ledPins[i], getBrightness(ledBrightnesses[i]));

    int newBr = ledBrightnesses[i]   ledSteps[i];
    if (newBr <= 0 || newBr >= maxLedBrightness)
    {
      ledSteps[i] =- ledSteps[i]; //change direction if exceeds max/min value
    }
    else
    {
      ledBrightnesses[i] = newBr;
    }

    s.concat(ledBrightnesses[i]);
    if (i < LED_CNT - 1) //skip separator for last entity
      s.concat("-");
  }
  s.concat("***");
  
  char charBuf[1000];
  s.toCharArray(charBuf, 1000);
  mySerial.write(charBuf);
  mySerial.flush();
  
  delay(ledSpeed);
}

void loop()
{
  if (mySerial.available())
  {
    char command = mySerial.read();
    Serial.println("command is -> "   command);
    
    boolean handled = false;
    boolean changeFadeMode = false;
    
    switch (command)
    {
      case 'a':
        led_state = LED_OFF;
        handled = true;
        break;
      case 'b':
        led_state = LED_ON;
        ledSpeed = 50;
        handled = true;
        //do these lines to set wave mode
        changeFadeMode = true;
        isFadeMode = true;
        break;
      case 'c':
        led_state = LED_ON;
        ledSpeed = 30;
        handled = true;
        //do these lines to set wave mode
        changeFadeMode = true;
        isFadeMode = true;
        break;
      case 'd':
        led_state = LED_ON;
        ledSpeed = 10;
        handled = true;
        //do these lines to set wave mode
        changeFadeMode = true;
        isFadeMode = true;
        break;
      case 'e':
        led_state = LED_ON;
        changeFadeMode = true;
        handled = true;
        break;
      default:
        break;
    }
    
    if (changeFadeMode)
    {
      if (isFadeMode)
      {
        Serial.println("Set fade mode off");
        for (int i = 0; i < LED_CNT; i  )
        {
          //copy initial values
          ledBrightnesses[i] = ledBrightnessesWave[i];
          ledSteps[i] = ledStepsWave[i];
        }
      }
      else
      {
        Serial.println("Set fade mode on");
        for (int i = 0; i < LED_CNT; i  )
        {
          ledBrightnesses[i] = 0;
          ledSteps[i] = 5;
        }
      }
      isFadeMode = !isFadeMode;
    }
    else
    {
      //do nothing
    }
    
    if (!handled)
    {
      boolean isSpeedCommand = command >= SPEED_PREFIX && command <= SPEED_PREFIX_MAX;
      boolean isBrCommand = command >= BRIGHTNESS_PREFIX && command <= BRIGHTNESS_PREFIX_MAX;
      
      if (isSpeedCommand)
      {
        led_state = LED_ON;
        int speedValue = command - SPEED_PREFIX; //from 0 to 9
        ledSpeed = valueToDelay(speedValue);
      }
      if (isBrCommand)
      {
        led_state = LED_OFF;
        int brValue = command - BRIGHTNESS_PREFIX; //from 0 to 9
        recalculateBrightness(brValue);
      }
    }
  }
  
  ledFade();
}

В зависимости от принятой команды контроллер либо изменяет скорость, либо яркость свечения светодиодов. Так же можно запрограммировать любые произвольные действия на принятую команду — в примере я отключаю подсветку и меняю скорость.В каждом цикле контроллер шлет по синезубу на сопряженное устройство строку вида ###0-50-100-150-200-250***, где цифры — значения яркости шести светодиодов, с максимумом в 255.

Схема:
Bluetooth Remote Control: управление компьютером с мобильника — «Хакер»

Универсальный пульт samsung

Универсальный пульт Samsung
Универсальный пульт Samsung

Управление телевизором с телефона упрощается при использовании фирменного приложения, выпущенного той же компанией, которая сделала ТВ. Такое есть далеко не у всех, но производители вроде Самсунг разрабатывают программы, имитирующую их собственные пульты. При этом заявлена поддержка других производителей, что делает утилиту универсальной.

Среди способов подключения можно выбрать Wi-Fi или ИК порт при его наличии в смартфоне. Возможность создания профилей позволяет в одном приложении хранить пульты от разных устройств.

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

‎универсальный тв пульт

Универсальный пульт дистанционного управления для телевизоров Vizio, Roku, Sony, LG, Samsung, Android, Fire, Sharp, Phillips, Sanyo, Tcl, Emerson, Toshiba, Hisense, Insignia, RCA, TCL и многих других.

CodeMatics Inc. рада анонсировать очень мощное и эффективное универсальное приложение для дистанционного управления телевизором для смарт-телевизоров и устройств.

Для использования этого приложения для дистанционного управления подключите мобильное устройство и Smart TV к одной сети Wi-Fi, и вы готовы к работе.

************************************************* ***********
Список поддерживаемых брендов Smart TV
Samsung Smart TV (2023 )
LG Smart TV (веб-ОС)
Sony Bravia Smart TV (ОС Android)
Пожарное телевидение и устройства
AndroidTV и устройства (все Android-телевизоры, включая Sony, TCL, Scepter и т. Д.)
Roku Smart TV (Roku OS)
Телевизоры Vizio SmartCast
и многое другое.
************************************************* ***********
Также поддерживаются телевизоры следующих брендов, на которых установлена ​​ОС Roku.
Hisense Smart Roku TV
Sharp Smart Roku TV
RCA Smart Roku TV
Insignia Smart Roku TV
TCL Smart Roku TV
Roku TV Stick
Roku Express и Roku Express Plus.

Пульт дистанционного управления TV поддерживает все устройства и телевизоры, работающие на Roku OS, что делает его лучшим пультом дистанционного управления для roku tv.
************************************************* *************

Приложение TV Remote поддерживает все устройства и телевизоры, работающие на ОС Android, что делает его лучшим пультом для Android TV.
************************************************* ***********

Remote for TV поддерживает все устройства и телевизоры, работающие на Fire OS, что делает его лучшим пультом для Fire TV.
************************************************* ***********

Пульт дистанционного управления телевизором – лучший универсальный пульт для смарт-телевизора, который поддерживает почти 100 производителей телевизоров.

Если марки вашего телевизора нет в списке или удаленное приложение Universal TV не работает с вашим телевизором, напишите нам по электронной почте с указанием марки вашего телевизора. Мы заставим приложение работать на вас.

Функции Smart TV

>> Контроль мощности.
>> Отключение звука / регулировка громкости.
>> Ввод
>> Главная
>> Приложения, установленные на вашем телевизоре.
>> Списки каналов / Вверх / Вниз.
>> Воспроизведение / стоп / назад / вперед.
>> Навигация вверх / вниз / влево / вправо.

Итак, избавьтесь от надоедливых регулярных проблем с темпераментом, вызванных:

• Потеря пульта,
• Батареи изношены,
• Ударить своего младшего брата за сломанный пульт,
• Кусание и / или кипячение батарей в воде в надежде, что это приведет к их магической подзарядке и т. Д.

Лучшие возможности

Никакой настройки не требуется. Просто подключите мобильное устройство и Smart TV к одной сети Wi-Fi и начните пользоваться им.

Примечание. Для подключения к Fire и Android TV / устройствам убедитесь, что вы включили «Параметры разработчика и отладка ADB» на вашем телевизоре / устройстве.

Связаться с нами очень легко
CodeMatics очень радушная служба поддержки клиентов готова помочь вам во всем, что вам нужно. Наша команда постоянно работает над тем, чтобы максимально использовать телевизионные бренды и функциональные возможности. Приложение для интеллектуального дистанционного управления обновляется соответствующим образом.

Отказ от ответственности: Codematics не является аффилированным лицом Samsung, Roku, Sony, LG, Vizio или любой другой компании, и это приложение не является официальным продуктом любой из них. Приложение разработано Codematics с учетом улучшенного взаимодействия с пользователем.

Оцените статью
Радиокоптер.ру
Добавить комментарий