Страница 2 из 5
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 08 апр 2024, 12:10
garikb
Интересно где вы их находите такие ик диоды, обычно они на напряжение 1.2- 1.5 вольт.И так как он работает здесь в импульсном режиме реально подключать прямо к пину ардуино, ну если превышает допустимый ток на пин ардуино то тогда через омный резистор.
Я так понимаю RAW масив и не должен быть одинаковый при сканировании это же сырой код, где много каких факторов влияет на прием, главное что бы он укладывался в допустимые пределы библиотеки.
У меня нет кондиционера, пришлось просится к знакомому на эксперементы с его Панасоником.
У Панасоника ну уж очень длинный код, на уно влезает только две команды, переменные сжирают всю память.
Новый текстовый документ (3).txt
Все отлично управляется.
https://youtube.com/shorts/4dXp7lltLMc
Так же эксперементировал на ESP32.
Вот там библиотека IRremoteESP8266 и она намного интересней, при сканировании выдает так:
on.txt
scan_ir_esp32.ino
С кондиционером так же работает, но впихнуть можно я думаю все команды с пульта если есть желание.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 08 апр 2024, 12:39
NordKavkaz
garikb писал(а): 08 апр 2024, 12:10
Интересно где вы их находите такие ик диоды
Вот здесь ИК - приемник и передатчик.
https://aliexpress.ru/item/100500380445 ... 7223801982
Наладил ИК-связь между двумя ардуинами. А теперь можно прообовать управлять кондиционером. Если не получится, то придется сворачивать проект. Но есть еще вариант. Найти распечатку кодов пульта.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 09 апр 2024, 14:27
NordKavkaz
[ref]garikb[/ref], помогите, пожалуйста разобраться с работой блока Ir_Send_RAW.
Вот пришел сигнал на вход in_on, блок начал этот сигнал отрабатывать. А в это время скетч останавливается или продолжает работу? Такое ощущение, что отправка данных и работа скетча проходят асинхронно.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 09 апр 2024, 16:11
garikb
Когда на вход in_on подается еденица запускается передача кода и так в цикле пока не уберете еденицу со входа in_on.
Для того чтобы код передавался 1 раз нужно поставить на вход RTriger. (нажали кнопку код передался 1 раз и ждет пока отпустите кнопку и опять нажмете что бы еще раз передать код)
минус на входы 4,5.flp
плюс на входы 4,5.flp
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 09 апр 2024, 19:17
NordKavkaz
[ref]garikb[/ref],
правильно ли я понимаю, что в этой схеме посылка кода буедт проходить ТОЛЬКО один раз, и ТОЛЬКО при переходе мультивибратора с нуля на единицу?
схема.png
Мысль проскакивала о R-triggerе, а Вы ее подтвердили.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 09 апр 2024, 19:51
garikb
NordKavkaz писал(а): 09 апр 2024, 19:17
правильно ли я понимаю
Нет, в этой схеме посылка будет каждый раз как мультивибратор будет переключатся с нуля на еденицу , для каждого блока есть справка, нажимаете на знак "?" и смотрите как он работает.
Я не пойму смысл ставить мультивибратор чтобы отправить код?
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 09 апр 2024, 20:21
NordKavkaz
garikb писал(а): 09 апр 2024, 19:51
в этой схеме посылка будет каждый раз как мультивибратор будет переключатся с нуля на еденицу
Вот это меня и интересует. Именно по ПЕРЕКЛЮЧЕНИЮ с нуля в единицу, и ТОЛЬКО по ПЕРЕКЛЮЧЕНИЮ с нуля в единицу.
garikb писал(а): 09 апр 2024, 19:51
Я не пойму смысл ставить мультивибратор чтобы отправить код?
В рабочей схеме мультивибратора не будет. В рабочей схеме посылка должна пойти
только один раз и только при заходе температуры на 20 градусов. И все! И следующая посылка должна пойти
только один раз и только при возврате температуры на 20 градусов. То есть, при каждом возврате на 20 градусов. Но как это сделать я пока не соображу.
Думаю, что надо поставить RS-триггер, а после него R-триггер с которого и подавать сигнал на посылку ИК-кода
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 09 апр 2024, 21:29
tolika
Попробуйте таким способом
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 10 апр 2024, 01:36
NordKavkaz
Уточню свой вопрос по этой теме, так как не нашел описания работы блока Ir_Send_RAW.
В скетче блока Ir_Send_RAW есть такая строка:
if (In_on) { irsend.sendRaw(irSignal_on, sizeof(irSignal_on) / sizeof(irSignal_on[0]), khz); }
Пришла единица на вход In_on, начала работать команда посылки sendRaw
В скетче за этой командой есть еще какие-то команды.
Будут ли эти команды ждать отработки команды SendRav, или продолжат работу дальше, не дожидаясь окончания посылки?
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 10 апр 2024, 17:10
garikb
NordKavkaz писал(а): 10 апр 2024, 01:36
В скетче блока Ir_Send_RAW есть такая строка:
Здесь просто задается какой raw массив передавать и какая частота в посылке. У большинства это 38кгц, у панасоника 36 и т.д.
Программа выполняется по шагам, так что пока Ir код не отправится следующий шаг не сделает.
Вот простой пример:
1.flp
Здесь пин 4 запуск Ir кода и пин 13 подключенный светодиод на uno.
При подаче на пин 4 (минус) пеередается Ir код постоянно в цикле.
Теперь посмотрите на мигание светодиода при отключенном (минус) и включенном на 4 пине. Частота заметно отличается т.к. при минусе на 4 пине Ir код передается постоянно в цикле программы.
Тепеть такой пример:
2.flp
Добавляем RTrig. Теперь при подаче (минус) на 4 пин Ir код передается только в первом цикле программе (пока вы не уберете (минус) с 4 пина и опять не подадите его).
Светодиод мигает с одной частотой, изменяет свою частоту только 1 цикле программы и это почти не заметно .
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 10 апр 2024, 21:02
NordKavkaz
Скажите, а если при компиляции я получаю такое сообщение,
[spoiler]Скетч использует 19608 байт (60%) памяти устройства. Всего доступно 32256 байт.
Глобальные переменные используют 1705 байт (83%) динамической памяти, оставляя 343 байт для локальных переменных. Максимум: 2048 байт.
Недостаточно памяти, программа может работать нестабильно.
[/spoiler]
И программа не работает, то это так и должно быть? Или все-таки она должна работать?
Отправлено спустя 19 минут 48 секунд:
Попробовал примеры от garikb, теперь понятно. Коды в кондиционер еще не загонял. Хочу попробовать из этой схемы.
Вопрос.png
Есть ли здесь подводные камни? Спасибо!
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 10 апр 2024, 21:14
garikb
Должна работать, но.. как написано может нестабильно.
Где я Вам показывал видео работы пульта там у меня тоже выдавало предупреждение что переменные занимают 96% памяти, но программа работала.
Отправлено спустя 9 минут 41 секунду:
NordKavkaz писал(а): 10 апр 2024, 21:02
И программа не работает,
Ну тут несколько вариантов, не работает сама программа или не принимаются коды кондиционером.
Сперва я бы создал простой пульт как у меня на видео и попробывал управлять кондиционером, если управляется то тогда бы искал проблемы в программе.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 10 апр 2024, 22:57
NordKavkaz
[ref]garikb[/ref], "а теперь самое интересное" Построил схему из #31.
В блоке прописал:
unsigned int irSignal_on[] = { 8850, 3850, 650, 450, 650, 450, 650}
Одна ардуина передает ИК--команды, другая принимает.
На ИК-приемнике контрольный красный диод, который мерцает при приеме от передатчика.
И вот что на приемнике при передаче одного о того же кода:
1110CE7E
Unknown encoding: 1110CE7E (32 bits)
Raw (8): 8550 -3950 500 -800 350 -650 450
ED0E5738
Unknown encoding: ED0E5738 (32 bits)
Raw (8): 8500 -4050 500 -600 500 -650 450
ED0E5738
Unknown encoding: ED0E5738 (32 bits)
Raw (8): 7900 -4000 500 -550 550 -550 450
9B2D83D8
Unknown encoding: 9B2D83D8 (32 bits)
Raw (10): 1400 -400 6550 -3950 500 -700 400 -600 350
А если загнать сюда irSignal_on[] 211 чисел, то передачи ВООБЩЕ НЕТ.
Отправлено спустя 17 минут 52 секунды:
garikb писал(а): 10 апр 2024, 21:14
Сперва я бы создал простой пульт как у меня на видео и попробывал управлять кондиционером
У меня такая же мысль пойти по Вашему пути, но я не могу передать 211 элементов массива. Либо приемник не реагирует, либо Ir_Send_RAW затыкается.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 10 апр 2024, 23:28
garikb
NordKavkaz писал(а): 10 апр 2024, 22:57
А если загнать сюда irSignal_on[] 211 чисел, то передачи ВООБЩЕ НЕТ.
Передача есть или нет легко отследить на обычную камеру смартфона.
Дайте в текстовом файле два рав масива, включение и отключение.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 10 апр 2024, 23:52
NordKavkaz
garikb писал(а): 10 апр 2024, 23:28
Передача есть или нет легко отследить на обычную камеру смартфона.
Смартфон не видит и контрольный диод на приемнике не мигает.
Сейчас на ютуб загружаю видео. А как у вас получается передавать очень длинный код?
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 11 апр 2024, 00:10
garikb
Это управление относительно Gnd
пульт.flp
Это управление относительно +5v
пульт1.flp
Ir диод на 3 пин и Gnd
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 11 апр 2024, 00:56
NordKavkaz
garikb писал(а): 10 апр 2024, 23:28
Дайте в текстовом файле два рав масива, включение и отключение.
Отправлено спустя 22 минуты 37 секунд:
garikb писал(а): 11 апр 2024, 00:10
Это управление относительно Gnd
пульт.flp
(117.57 КБ) 1 скачивание
Это управление относительно +5v
пульт1.flp
(121.54 КБ) 2 скачивания
Ir диод на 3 пин и Gnd
Пробовал Ваши проекты. Недостаточно памяти.
Скетч использует 4136 байт (12%) памяти устройства. Всего доступно 32256 байт.
Глобальные переменные используют 1544 байт (75%) динамической памяти, оставляя 504 байт для локальных переменных. Максимум: 2048 байт.
Недостаточно памяти, программа может работать нестабильно.
Когда заношу свои коды, то памяти достаточно, но передачи нет. Может быть контроллер другой модели купить?
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 11 апр 2024, 02:55
garikb
Ладно пойдем другим путем)
Блок:
ИК_передатчик_(Code_-_Basic).ubi
Ну и сам пульт:
пульт.flp
Светодиод так же на 3 пин.
Пробуйте на своем кондиционере.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 11 апр 2024, 04:33
tol123
Один код отправленный от пульта от кондиционера отправляет сразу настройку других настроек. То есть пульт не отправляет именно настройку на увеличение и это будет настройка для всех температур при увеличении. Для каждой температуры свой код пульт отправляет!. Это у меня было так на пульте кондера Komanchi. Ловиш коды для каждо температуры или для которой тебе нужна, забиваеш в блок и все пользуйся. Вот как я делал viewtopic.php?f=194&t=8191&p=116843#p116843. Если держать кнопку на пульте он тебе будет отправлять код большого формата и повторять, а ведь вам достаточно одной команды, максимально короткой от пульта и не ждать пока пульт выдаст партянку с 200 символов.
Помогите прикрутить блок ИК-передатчика к этому проекту
Добавлено: 11 апр 2024, 05:03
garikb
tol123 писал(а): 11 апр 2024, 04:33
отправляет сразу настройку других настроек
Это вы гугл переводом откуда то текст взяли?
Это что? " Вот как я делал viewtopic.php?f=194&t=8191&p=116843#p116843"