не считываются коды ИК пульта

не считываются колы ИК пульта

Ответить
Аватара пользователя
qzia
Сержант
Сообщения: 115
Зарегистрирован: 19.01.2022{, 13:52}
Репутация: -25
Имя: Евгений

не считываются коды ИК пульта

#1

Сообщение qzia » 09.11.2022{, 00:13}

Вот вроде не сложно но опять с этим ИК управлением проблема.
Теперь называется доигрался.
Теперь вообще пушной зверёк прибежал.
Вроде ничего сложного делаю всё по инструкции >меню> инструменты> запись> кодов кнопок ИК пульта.
в окошке выбираю контроллер, указываю вывод к которому подключен датчик, прошиваю и жму далее.
в итоге получаю вот такую картинку.
Захват_11.jpg
Чтобы не нажимал код меняется производитель неизвестен
далее быстренько нарисовал вот такую штуку
КЮ.flp
(45.14 КБ) 20 скачиваний
В тоге в мониторе порта увидел вот такое
Захват_12.jpg
Полностью переустановил ФЛпрог, менял библиотеки ничего не помогло, попробовал Портативную версию 7.3.8 ничего не изменилось.
Пробовал сторонние скечи всё тоже самое
.может кто то знает в чём дело?
В ДЕТСВЕ Я БЫЛ ВРЕДНЫМ, НАГЛЫМ И УПРЯМЫМ.
СПЕШУ ВСЕХ УСПОКОИТЬ, Я ПРЕКРАСНО СОХРАНИЛСЯ.

Аватара пользователя
RedSky
Лейтенант
Сообщения: 574
Зарегистрирован: 19.12.2016{, 20:07}
Репутация: 72
Откуда: Днепропетровск
Имя: Алексей

не считываются коды ИК пульта

#2

Сообщение RedSky » 09.11.2022{, 11:27}

А что не так? Код ведь читается. А производитель не определён - ну нет такого в базе. У юарта скорость проверьте.

Аватара пользователя
qzia
Сержант
Сообщения: 115
Зарегистрирован: 19.01.2022{, 13:52}
Репутация: -25
Имя: Евгений

не считываются коды ИК пульта

#3

Сообщение qzia » 09.11.2022{, 11:59}

RedSky писал(а):
09.11.2022{, 11:27}
А производитель не определён
Увы не работает оно так. штатный считыватель кодов даже не сохраняет такие коды в файл
В ДЕТСВЕ Я БЫЛ ВРЕДНЫМ, НАГЛЫМ И УПРЯМЫМ.
СПЕШУ ВСЕХ УСПОКОИТЬ, Я ПРЕКРАСНО СОХРАНИЛСЯ.

Аватара пользователя
ViktorPetrov
Лейтенант
Сообщения: 678
Зарегистрирован: 09.04.2018{, 23:56}
Репутация: 49
Имя: Виктор

не считываются коды ИК пульта

#4

Сообщение ViktorPetrov » 09.11.2022{, 17:16}

Проблема известная и решаемая:
-Исправить библиотека Arduino-IRremote ,фаил (IRremote.h ) IRremoteInt.h строка
#define RAWBUF 101 // Maximum length of raw duration buffer поставил 222 (мак 255)
и #define MARK_EXCESS 100 на 222
сохраняем перезугражаем IDE
после перезагрузки увиличится буфер
- Производитель неизвестен. В поле производитель UNKNOWN и он не редактируется в самой FLProg.При сканировании пульта Вы сохраняете данные в файл.Этот файл открыть блокнотом и изменить,
в строке где за словом name идет type, дальше в ней между стрелками вставить большими буквами PANASONIC
и сохранить.
СпойлерПоказать
При сканировании пульта Вы сохраняете данные в файл.png
взято с форума
При сканировании пульта Вы сохраняете данные в файл.png (10.97 КБ) 958 просмотров
-Конфликт библиотек
СпойлерПоказать
13.png

autoelectronica
Рядовой
Сообщения: 89
Зарегистрирован: 18.10.2016{, 21:46}
Репутация: 6
Откуда: Москва

не считываются коды ИК пульта

#5

Сообщение autoelectronica » 09.11.2022{, 20:05}

У меня так было, пока не поменял ик приемник на другой вид

Аватара пользователя
qzia
Сержант
Сообщения: 115
Зарегистрирован: 19.01.2022{, 13:52}
Репутация: -25
Имя: Евгений

не считываются коды ИК пульта

#6

Сообщение qzia » 09.11.2022{, 20:17}

autoelectronica писал(а):
09.11.2022{, 20:05}
У меня так было, пока не поменял ик приемник на другой вид
Сначала были китайские потом перепробовал штук 5 из разных устройств надёрганных ничего не поменялось.
Но всё одно спасибо

Отправлено спустя 1 час 49 минут 52 секунды:
Всё заработало оказалось что 2 проблемы аппаратная и программная.
Аппаратная не знаю по чему но стоит только чемуто появится на I2C всё с ИК начитаются проблемы, но если прошить без подключеных устройств то после с ними всё работает нормально и увы у меня оказалось 2 контроллера с таким глюком.
Программная как правильно написал ViktorPetrov конфликт библиотек убрал конфликтующую RobotIRremote и всё заработало ничего править не пришлось всё нормально определилось.
В ДЕТСВЕ Я БЫЛ ВРЕДНЫМ, НАГЛЫМ И УПРЯМЫМ.
СПЕШУ ВСЕХ УСПОКОИТЬ, Я ПРЕКРАСНО СОХРАНИЛСЯ.

Аватара пользователя
NordKavkaz
Рядовой
Сообщения: 71
Зарегистрирован: 02.02.2024{, 15:19}
Репутация: 0
Откуда: Георгиевск
Имя: Александр

не считываются коды ИК пульта

#7

Сообщение NordKavkaz » 09.03.2024{, 14:24}

Здравствуйте!
Не получается записать коды с пульта ИК.
Выбираю контроллер, порт, загружаю скетч.

Выходит такое сообщение.

Помогите, пожалуйста!

Arduino: 1.8.19 (Windows 8.1), Плата:"Arduino Uno"

C:\Users\Alexandr\AppData\Local\Temp\flprog\pr3\pr3.ino: In function 'void dump(decode_results*)':

pr3:24:8: error: 'UNUSED' was not declared in this scope

case UNUSED :

^~~~~~

C:\Users\Alexandr\AppData\Local\Temp\flprog\pr3\pr3.ino:24:8: note: suggested alternative: 'FUSES'

case UNUSED :

^~~~~~

FUSES

pr3:51:7: error: 'AIWA_RC_T501' was not declared in this scope

case AIWA_RC_T501 :

^~~~~~~~~~~~

pr3:57:7: error: 'SANYO' was not declared in this scope

case SANYO :

^~~~~

C:\Users\Alexandr\AppData\Local\Temp\flprog\pr3\pr3.ino:57:7: note: suggested alternative: 'SONY'

case SANYO :

^~~~~

SONY

pr3:60:7: error: 'MITSUBISHI' was not declared in this scope

case MITSUBISHI :

^~~~~~~~~~

pr3:72:7: error: 'PRONTO' was not declared in this scope

case PRONTO :

^~~~~~

C:\Users\Alexandr\AppData\Local\Temp\flprog\pr3\pr3.ino:72:7: note: suggested alternative: 'PORT0'

case PRONTO :

^~~~~~

PORT0

Несколько библиотек найдено для "IRremote.h"

Используется: e:\ARD\FLProg\ideV8\portable\sketchbook\libraries\IRremote

Не используется: e:\ARD\FLProg\ideV8\portable\sketchbook\libraries\Arduino-IRremote

exit status 1

'UNUSED' was not declared in this scope



Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
Не откладывай на завтра то, что можно сделать послезавтра.

Аватара пользователя
garikb
Сержант
Сообщения: 150
Зарегистрирован: 04.11.2015{, 19:52}
Репутация: 21
Откуда: Славянск
Имя: Игорь

не считываются коды ИК пульта

#8

Сообщение garikb » 10.03.2024{, 03:58}

NordKavkaz писал(а):
09.03.2024{, 14:24}
Не получается записать коды с пульта ИК.
Заходите в папку: e:\ARD\FLProg\ideV8\portable\sketchbook\libraries\
и временно переносите папку библиотеки : IRremote в любое другое место.
Как прошьете, потом вернете библиотеку на место.
Ну или ставте не портабельную версию.

Аватара пользователя
NordKavkaz
Рядовой
Сообщения: 71
Зарегистрирован: 02.02.2024{, 15:19}
Репутация: 0
Откуда: Георгиевск
Имя: Александр

не считываются коды ИК пульта

#9

Сообщение NordKavkaz » 11.03.2024{, 21:22}

Спасибо! Ваш совет помог!
Не откладывай на завтра то, что можно сделать послезавтра.

Аватара пользователя
NordKavkaz
Рядовой
Сообщения: 71
Зарегистрирован: 02.02.2024{, 15:19}
Репутация: 0
Откуда: Георгиевск
Имя: Александр

не считываются коды ИК пульта

#10

Сообщение NordKavkaz » 15.03.2024{, 19:57}

Здравствуйте! Благодаря garikb, мне удалось прочитать коды кнопок с пульта управления сплит-системы CENTEK.
Но радоваться, оказалось, рано.
К Arduino-Uno подключаю ИК-приемник из стартового китайского набора, нажимаю кнопки на пульте.
В монитере COM3 FlProg творится безобразие: одна и та же кнопка дает разный код разной длины, разных производителей.
Длины кодов меняются от 4 до 8 байт.

Тогда я нашел такой скетч:

#include "IRremote.h"

IRrecv irrecv(8); // указываем вывод, к которому подключен приемник

decode_results results;

void setup() {
Serial.begin(9600); // выставляем скорость COM порта
irrecv.enableIRIn(); // запускаем прием
}

void loop() {
if ( irrecv.decode( &results )) { // если данные пришли
Serial.println( results.value, HEX ); // печатаем данные
irrecv.resume(); // принимаем следующую команду
}
}

После его загрузки мониторил COM3 монитором порта Arduino-IDE.
Пульт CENTEK хитрый, но в кодах кнопок стала просматриваться закономерность.
На выходе были 4-байтовые ПРЕДСКАЗУЕМЫЕ коды. Может быть не втему, но чуть-чуть отвлекусь.
Если я касаюсь приемника, то выходит разнообразие непонятных кодов разной длины.
То же самое происходит, если я направляю пульт на мебель и нажимаю на нем кнопки.

Подскажите, пожалуйста, можно ли в FLProg, блоке IRSend заполнять значение по умолчанию переменных kod1 и kod2 так как это сделано в прилагаемом проекте? И посоветуйте, какие ИК приемники-передатчики купить.
И правильно ли я понимаю, что управлять диодом надо через транзистор, сигнал на базу которого надо подавать с пина 3.
Спасибо!
Вложения
IRSEND.flp
Проверьте, пожалуйста, правильность заполнений значений по умолчанию.
(79.48 КБ) 5 скачиваний
Не откладывай на завтра то, что можно сделать послезавтра.

Аватара пользователя
garikb
Сержант
Сообщения: 150
Зарегистрирован: 04.11.2015{, 19:52}
Репутация: 21
Откуда: Славянск
Имя: Игорь

не считываются коды ИК пульта

#11

Сообщение garikb » 16.03.2024{, 00:11}

С кондиционерными пультами не все так просто.
Если для обычных пультов ДУ объем данных передаваемых при нажатии одной кнопки обычно составляет 24 или 48 бит, то для пульта ДУ кондиционера этот объем данных может доходить до 228 бит поскольку в нем закодированы данные о температуре, скорости вентилятора, времени засыпания, режиме работы и т.д.
Вот интесное видео по Вашей теме: https://www.youtube.com/watch?v=jOkwoY ... =Constanta
Диодом желательно управлять через транзистор (все зависит от потребляемого тока светодиода), я пробывал в своем проекте подключать светодиод напрямую к 3 пину у меня ток потребления с моим светодиодом составил порядка 15mA так и оставил, в пределах комнаты управляется хорошо если направлять на приемник.

Аватара пользователя
NordKavkaz
Рядовой
Сообщения: 71
Зарегистрирован: 02.02.2024{, 15:19}
Репутация: 0
Откуда: Георгиевск
Имя: Александр

не считываются коды ИК пульта

#12

Сообщение NordKavkaz » 16.03.2024{, 10:01}

Вот что должно получиться в итоге.
В жаркую погоду еду домой. За 50 км нажимаю кнопку на смартфоне. В доме включается сплит-система (если в дороге есть выход в интернет).
Детали.
Со смартфона удаленно включаю компьютер. Это уже работает.
Через COM-порт компьютера посылается команду на Arduino (пока тестовая команда). Обратным путем на смартфон получаю ответ от Arduino. Это получается.
Удаленно выключаю компьютер. Это работает. При освоении WI-FI модуля - можно обходиться без компьютера.

Многого от сплит-системы не требуется. Просто перед отъездом мне надо настроить ее на охлаждение до 16 градусов и выключить.
А Arduino должна поддерживать температуру, например, 20 градусов с помощью DHT11, DHT22 или BMP180.

При установке температуры на охлаждение пульт дает следующие коды:
...
18 градусов код C3EA
19 градусов код C3FA
20 градусов код C3E6
21 градусов код C3F6
...
Отдельной команды на выключение нет.
А работает это так:
Если сплит-система была выключена при настройке на 20 градусов, то при включении на нее пойдет код C3E6.
Теперь, если на пульте установить 21 градус, то на нее пойдет код C3F6. Если теперь нажать на пульте кнопку включения-выключения, то на сплит-систему пойдет ТОТ ЖЕ КОД C3F6 и она выключится.
И вот одна из проблем, которую надо решить, это СИНХРОНИЗАЦИЯ диалога между Arduino и сплит-системой. Arduino не знает включена ли система или выключена. Но знает в какой момент надо послать ей команду. И если систему надо включить, а она и так включена, то она выключится. Вот этот момент надо как-то обойти.
Не откладывай на завтра то, что можно сделать послезавтра.

Аватара пользователя
garikb
Сержант
Сообщения: 150
Зарегистрирован: 04.11.2015{, 19:52}
Репутация: 21
Откуда: Славянск
Имя: Игорь

не считываются коды ИК пульта

#13

Сообщение garikb » 16.03.2024{, 11:11}

1. Вы видать не внимательно посмотрели видео, снимается и потом передается RAW масив. И у автора видео он 200 знаков а не как у Вас 4 знака.
2. Кондиционер я думаю не опустит до 16 градусов в жару, если заведомо не ставить намного производительней чем положено по объему комнаты, или по стандарту но делать хорошую теплоизоляцию
помещения.
Кондиционер работает с постоянной производительностью ( дельта между входящим и исходящим потоком воздуха 10-12 градусов). На входе 20 градусов, на выходе 8-10 градусов. Но так как у Вас не
только охлаждает кондиционер но и греют комнату стены у Вас не опустится до 16 пока не остынут все стены, а это часы работы.
Многие заблуждаются что если выставил на пульте 16 градусом то он и будет охлаждать до 16. На пульте Вы выставляете при какой он температуре он выключит охлаждение (вентилятор продолжит
перемешивать воздух, выключится только компрессор и обычно при дельте 3-4 градуса опять включит компрессор. тоесть на пульте 20град. выключит компрессор при 20 и включит при 23-24).
Это все применимо к обычным кондиционерам (on-off), в инверторных там по другому управляется скоростью компрессора.
3. Синхронизировать не поручится, так как общение только в одну сторону (исключение есть кондиционеры с блютуз или вай фай модулями на борту).
4. Поддерживать температуру с помощью DHT11, DHT22 или BMP180 возможно я думаю но с неправильным алгоритмом, т.е. выставляете на пульте 16 градусов, а с помощью ардуино включаете выключаете
кондиционер в режиме термостата. ( но это неправильно так как будет полностью выключатся кондиционер и вентилятор не будет перемешивать воздух в помещении)

Аватара пользователя
NordKavkaz
Рядовой
Сообщения: 71
Зарегистрирован: 02.02.2024{, 15:19}
Репутация: 0
Откуда: Георгиевск
Имя: Александр

не считываются коды ИК пульта

#14

Сообщение NordKavkaz » 17.03.2024{, 19:22}

garikb писал(а):
16.03.2024{, 11:11}
1. Вы видать не внимательно посмотрели видео, снимается и потом передается RAW масив. И у автора видео он 200 знаков а не как у Вас 4 знака.
Я досмотрел роно до того момента, когда загрузил скетч и увидел в окне тестирования COM-порта при егоо привязке вопростителные знаки в зеркальном отображении. На кнопки пульта этот скетч не реагировал.
garikb писал(а):
16.03.2024{, 11:11}
так как общение только в одну сторону
Да. Вы правы. Вот поэтому мне и надо организовать общение в две стороны. Напомню, что от главной кнопки пульта (мне нужна имитация нажатия только этой кнопки) при установленной на пульте одной и той же температуре подается сигнал С ОДНИМ И ТЕМ ЖЕ КОДОМ и на включение и на включение. Поэтому перед подачей кода Arduino должна "знать" с помощью DHT для чего она собирается подать этот код (включить или выключить), и в каком состоянии фактически сплит-система в данный момент. Дабы не произошло ложного срабатывания. Сплит система должна быть настроена руками на 16 градусов, а Arduino принимает решение при гистерезисе 19-21.
Теперь, что касается "общения" Arduino со сплит-системой, то самый простой способ связать жалюзи, которые закрываются при выключении, с каким-то контактом, заведенным на вход Arduino.
Не откладывай на завтра то, что можно сделать послезавтра.

Аватара пользователя
garikb
Сержант
Сообщения: 150
Зарегистрирован: 04.11.2015{, 19:52}
Репутация: 21
Откуда: Славянск
Имя: Игорь

не считываются коды ИК пульта

#15

Сообщение garikb » 18.03.2024{, 12:04}

NordKavkaz писал(а):
17.03.2024{, 19:22}
На кнопки пульта этот скетч не реагировал.
Вот можете попробовать на своем кондиционере:
IR_Send_RAW_(Code_-_Basic).ubi
(23.27 КБ) 6 скачиваний
pult.flp
(70.7 КБ) 7 скачиваний

Brand2
Лейтенант
Сообщения: 414
Зарегистрирован: 26.02.2018{, 21:27}
Репутация: 42
Откуда: Haifa
Имя: Alex

не считываются коды ИК пульта

#16

Сообщение Brand2 » 18.03.2024{, 15:36}

NordKavkaz, У меня была тема с управлением кондиционера с приложения REMOTEXY,там подробно описано как и что делать,поищите.

Аватара пользователя
NordKavkaz
Рядовой
Сообщения: 71
Зарегистрирован: 02.02.2024{, 15:19}
Репутация: 0
Откуда: Георгиевск
Имя: Александр

не считываются коды ИК пульта

#17

Сообщение NordKavkaz » 24.03.2024{, 23:00}

Здравствуйте! Помогите, пожалуйста, решить вот какую проблему.

В FlProg кидаю блок IR Resive.

Компилирую, прошиваю. Привязываю порт. В мониторе выходит символ "0" (ноль) (код 48)

Нажимаю кнопку на пульте - в монитор выходит такое сообщение.

The function decode(&results)) is deprecated and may not work as expected! Just use decode() without a parameter and IrReceiver.decodedIRData.<fieldname> .

Но и что делать с этим переводом - не знаю.

Функция decode(&results)) устарела и может работать не так, как ожидалось! Просто используйте decode() без параметра и IrReceiver.decodedIRData.<fieldname> .

Спасибо!
Не откладывай на завтра то, что можно сделать послезавтра.

Ответить

Вернуться в «Помогите, а то я "нимагу"»