Управление кондиционером Toshiba RAS-07J2KVG-EE

Повторенные мною конструкции
Ответить
TechMike
Site Admin
Сообщения: 213
Зарегистрирован: Вт окт 06, 2009 3:37 pm
Контактная информация:

Управление кондиционером Toshiba RAS-07J2KVG-EE

Сообщение TechMike »

По ИК:

https://github.com/hristo-atanasov/Tasmota-IRHVAC
TSOP2136 https://static.chipdip.ru/lib/153/DOC001153676.pdf
TSOP1736 http://www.farnell.com/datasheets/2243793.pdf

качаем прошивку tasmota-ircustom.bin, заливаем в esp8266

конфигурим wifi
mqtt
Backlog mqtthost 192.168.1.2; mqttport 1883; mqttuser esp; mqttpassword XXX; topic tasmota_9DF226-4646/BEDIR/

SetOption19 1
Setoption1 1
Setoption13 1

кидать команды в mqtt так
cmnd/tasmota_9DF226-4646/BEDIR/IRHVAC
{"Vendor":"TOSHIBA_AC","Model":-1,"Power":"On","Mode":"Cool","FanSpeed":"Auto","Celsius":"On", "Temp":28}

пример команд от существующих кондиционеров
16:22:19.132 MQT: tele/tasmota_9DF226-4646/BEDIR/RESULT = {"IrReceived":{"Protocol":"TOSHIBA_AC","Bits":72,"Data":"0xF20D03FC0180010080","Repeat":0,"IRHVAC":{"Vendor":"TOSHIBA_AC","Model":-1,"Mode":"Cool","Power":"On","Celsius":"On","Temp":25,"FanSpeed":"Auto","SwingV":"Off","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","Sleep":-1}}}


16:23:05.091 MQT: tele/tasmota_9DF226-4646/BEDIR/RESULT = {"IrReceived":{"Protocol":"COOLIX","Bits":24,"Data":"0xB21FC8","DataLSB":"0x4DF813","Repeat":0,"IRHVAC":{"Vendor":"COOLIX","Model":-1,"Mode":"Auto","Power":"On","Celsius":"On","Temp":25,"FanSpeed":"Auto","SwingV":"Off","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","Sleep":-1}}}

17:09:13.001 MQT: tele/tasmota_9DF226-4646/BEDIR/RESULT = {"IrReceived":{"Protocol":"COOLIX","Bits":24,"Data":"0xB27BE0","DataLSB":"0x4DDE07","Repeat":0,"IRHVAC":{"Vendor":"COOLIX","Model":-1,"Mode":"UNKNOWN","Power":"Off","Celsius":"On","Temp":2.5,"FanSpeed":"UNKNOWN","SwingV":"Off","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","Sleep":-1}}}
TechMike
Site Admin
Сообщения: 213
Зарегистрирован: Вт окт 06, 2009 3:37 pm
Контактная информация:

Re: Управление кондиционером Toshiba RAS-07J2KVG-EE

Сообщение TechMike »

Для Toshiba есть внешний wifi контроллеры RB-N103S-G или RB-N104S-G
https://www.toshiba-aircon.co.uk/wp-con ... S-G_EN.pdf

в России их не найти, стоят конских денег. Энтузиаст подключился к внутреннему блоку по uart и на esp32 сделал прошивку под HA
https://github.com/toremick/shorai-esp32/issues/6
TechMike
Site Admin
Сообщения: 213
Зарегистрирован: Вт окт 06, 2009 3:37 pm
Контактная информация:

Re: Управление кондиционером Toshiba RAS-07J2KVG-EE

Сообщение TechMike »

Схема на esp12f(8266):
sheme.jpg
sheme.jpg (212.15 КБ) 4863 просмотра
плата в Altim 17:
plata.jpg
plata.jpg (232.97 КБ) 4863 просмотра
Фото платы:
1630663842187-min.jpg
1630663842187-min.jpg (546.31 КБ) 4863 просмотра
1630663842162-min.jpg
1630663842162-min.jpg (398.37 КБ) 4863 просмотра
1630663842180-min.jpg
1630663842180-min.jpg (421.56 КБ) 4863 просмотра
Как выглядит на кондицонере (питание взял с платы кондицонера, там ест +5в и +12в)
1630663842148-min.jpg
1630663842148-min.jpg (309.5 КБ) 4863 просмотра
В архиве схема и плата в altium 17, корпус в stl с исходниками Компас3Д v17
http://www.rn3aig.ru/phpBB3/files/IR_AC_Remote.rar

Важно: TSOP очень чувствительны к качеству питания, конкретно тут на них дают помеху esp8266 и без керамики и большоо электролита прям на ноги TSOP'ов они на выходи постоянно в режиме nonstop выдают "полезный" сигнал, которые пытается декодировать Tasmota и за ни периодически теряется сигнал от ИК-пульта. Не забывайте ставить конденсаторы и желательно выносить TSOP подальше от источников ипульсных помех. Здесь были требования к размещению TSOP для 100% перекрытия со всех сторон, по этому дорожки питания шли "абы-как".

Резисторы в цепи питания ИК-светодиодов это три штуки параллельных резистора 1206 по 100 Ом.
TechMike
Site Admin
Сообщения: 213
Зарегистрирован: Вт окт 06, 2009 3:37 pm
Контактная информация:

Re: Управление кондиционером Toshiba RAS-07J2KVG-EE

Сообщение TechMike »

Настройка OpenHab 2.8:
Создаем things под каждый отдельный девайс от Generic MQTT Thing, либо можно поиском найти их если подключен аддон для Home assistance
oh28_1.jpg
oh28_1.jpg (28.56 КБ) 4863 просмотра
Создаем для каждого Channels свой item, но принципиально настроить их на нужные топики mqtt и задать настройки для парсинга сразу в Item, для примера по температуре и состоянию:
oh28_2.jpg
oh28_2.jpg (103.02 КБ) 4863 просмотра
Incoming Value Transformations:
REGEX:(.*TOSHIBA_AC.*)∩JSONPATH:$.IrReceived.IRHVAC.Power

причем REGEX нужно настроить под конкретную модель кондиционера, чтобы он не реагировал на другие, нужно тукать пультом в девайс и в логах или консоли будет видно как он себя идентифицируем. Для конкретно этого вот его отличие:
{"Vendor":"TOSHIBA_AC","Model":-1,"Mode":"Cool","Power":"On","Celsius":"On","Temp":25,"FanSpeed":"Auto","SwingV":"Off","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","Sleep":-1}
oh28_3.jpg
oh28_3.jpg (156 КБ) 4863 просмотра
для температуры похожим образом:
MQTT State Topic:
tele/BedroomIR/RESULT

Incoming Value Transformations:
REGEX:(.*TOSHIBA_AC.*)∩JSONPATH:$.IrReceived.IRHVAC.Temp
oh28_4.jpg
oh28_4.jpg (145.01 КБ) 4863 просмотра
Теперь, чтобы отправлять в сам девайс и кондиционер команды из OH, создаем специальный Channels "BedroomIR_out_cmd" с типом String, он нам нужен для отправки в определенный топик mqtt команд для передачи от Tasmota в кондиционер. У этого топика важно заполнить MQTT Command Topic:
cmnd/BedroomIR/IRHVAC

остальное можно не трогать.

Теперь нужно написать правило, которое будет отправлять в кондиционер команды выполненные из интерфейса OH:

Код: Выделить всё

//для управления кондиционеро спальни по ИК
// https://makeitmore.fun/smarthome/control-lg-ac-on-openhab-using-ir
// https://community.openhab.org/t/trying-to-send-variable-command-in-rules-for-a-c-remote-control-with-tasmota-ir/116314/13
// {"Vendor":"TOSHIBA_AC","Model":-1,"Mode":"Auto","Power":"On","Celsius":"On","Temp":24,"FanSpeed":"Auto","SwingV":"Off","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","$
// Добавить во все Things для Incoming Value Transformations проверку вида REGEX:(.*TOSHIBA_AC.*)∩JSONPATH:$.IrReceived.IRHVAC.Power


import org.openhab2.core.library.types
import org.openhab2.core.persistence
import org.openhab2.model.script.actions
//import java.text.SimpleDateFormat

rule "Send Command to BedroomAC"
when

    Item BedroomIR_Switch changed or
    Item BedroomIR_temp changed
then
logInfo("Send Command to BedroomAC", "BedroomIR_Switch=" + BedroomIR_Switch.state)
logInfo("Send Command to BedroomAC", "BedroomIR_temp=" + BedroomIR_temp.state)

var int setTemp = (BedroomIR_temp.state as Number).intValue
        var String jsonString = '{"Vendor":"TOSHIBA_AC","Model":-1,' +
                         '"Power":"'+ BedroomIR_Switch.state.toString +'",' +
                         '"Celsius":"On",' +
                         '"Temp":'+ setTemp +
                         ',"Mode":"Auto","FanSpeed":"Auto"' +
                         '"SwingV":"Off","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","Sleep":-1}'
logInfo("Send Command to BedroomAC", "json=" + jsonString)

if ((BedroomIR_Switch.state==ON)|| (BedroomIR_Switch.previousState.state==ON)){
 logInfo("Send Command to BedroomAC", "SendCommant to AC")
 BedroomIR_out_cmd.sendCommand(jsonString)
}else{
 logInfo("Send Command to BedroomAC", "NOT SendCommant to AC")
}
end
Выводим в SiteMap нужные нам Items, мне нужны только статус и температура, после чего это уже будет работать само.

Код: Выделить всё

       Switch item=BedroomIR_Switch
       Setpoint  item=BedroomIR_temp minValue=17 maxValue=30 step=1
Screenshot_2021-09-03-13-48-42-006_org.openhab.habdroid.jpg
Screenshot_2021-09-03-13-48-42-006_org.openhab.habdroid.jpg (358.17 КБ) 4863 просмотра
например когда подаются команды с ИК-пульта кондиционера, то дейвайс с Tasmota ловит их на TSOP и передает в mqtt. Оттуда это вычитывает OH и отображает пользователю.
Если же меняем температуру или статус кондиционера через OH, то он отправляет команды из правила в mqtt, оттуда его вычитывает Tasmota и отправляет по ИК уже в кондиционер.
Получается двухсторонняя связь только по событиям, ничего лишнего.

Главное расположить девайс с Tasmota поближе к кондиционеру, чтобы его tsop ловил сигналы от ИК-пульта, а за счет 5шт ИК светодиодов на девайсе, его сигнал отражаюсь от всего подряд гарантированно доставляется до кондиционера.
TechMike
Site Admin
Сообщения: 213
Зарегистрирован: Вт окт 06, 2009 3:37 pm
Контактная информация:

Re: Управление кондиционером Toshiba RAS-07J2KVG-EE

Сообщение TechMike »

Нужно попробовать новый подход для HA https://github.com/pedobry/esphome_toshiba_suzumi
Image
TechMike
Site Admin
Сообщения: 213
Зарегистрирован: Вт окт 06, 2009 3:37 pm
Контактная информация:

Re: Управление кондиционером Toshiba RAS-07J2KVG-EE

Сообщение TechMike »

Еще проекты но старые:
https://github.com/muxa/esphome-tcc-link
https://github.com/issalig/toshiba_air_cond

Библиотека для кондиционеров toshiba по работе с uart
https://github.com/ormsport/ToshibaCarrierHvac

https://github.com/topics/toshiba?l=c%2 ... sc&s=forks

Схема подключения тут:
https://github.com/toremick/shorai-esp32
TechMike
Site Admin
Сообщения: 213
Зарегистрирован: Вт окт 06, 2009 3:37 pm
Контактная информация:

Re: Управление кондиционером Toshiba RAS-07J2KVG-EE

Сообщение TechMike »

TechMike писал(а): Вт янв 03, 2023 8:14 pm Нужно попробовать новый подход для HA https://github.com/pedobry/esphome_toshiba_suzumi
Image
Реализована данная схема и настройка ESPHome. Использовал Wemos D1 mini + Logic Level Converter Bi-Directional Module
Смонтировано навесным монтажом, запихнуто в кондиционер как есть, благо там есть место.
Из особенностей:
1. на D1 mini задействованы под RX/TX пины GPIO12/GPIO13 иначе на штатных пинах UART будет мешать отладка, на остальных могут быть конфликты при загрузке ESP8266, напримет так было на GPOI15.
2. на панели кондиционера теперь светиться значок WIFI, пришлось заклеить картонкой, чтобы ночью глаза не мозолил.
Вложения
IMG_20230604_125800-min.jpg
IMG_20230604_125800-min.jpg (92.38 КБ) 2015 просмотров
IMG_20230604_125636-min.jpg
IMG_20230604_125636-min.jpg (159.43 КБ) 2015 просмотров
IMG_20230604_125623-min.jpg
IMG_20230604_125623-min.jpg (180.85 КБ) 2015 просмотров
IMG_20230604_125613-min.jpg
IMG_20230604_125613-min.jpg (188.64 КБ) 2015 просмотров
Ответить