MegaD-328 + светодиодные RGB ленты

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Bonefolder
Сообщения: 245
Зарегистрирован: 30 мар 2017, 11:15
Откуда: г.Севастополь

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Bonefolder » 12 май 2017, 09:27

типа так?
  • Код: Выделить всё

    rule "RGBLight_FF_Bed value"
    when
    	Item RGBLight_FF_Bed changed
    then
    	var HSBType hsbValue
    	var Number r=(255-hsb.red.intValue)
    	var Number g=(255-hsb.green.intValue)
    	var Number b=(255-hsb.blue.intValue)
    	hsbValue = RGBLight_FF_Bed.state as HSBType
    	sendCommand(RGB_Ch_R_FF_Bed, r.toString)
    	postUpdate(RGB_Ch_R_FF_Bed, r.toString)
    	sendCommand(RGB_Ch_G_FF_Bed, g.toString)
    	postUpdate(RGB_Ch_G_FF_Bed, g.toString)
    	sendCommand(RGB_Ch_B_FF_Bed, b.toString)
    	postUpdate(RGB_Ch_B_FF_Bed, b.toString)
    end
в этом случае выдает ошибку
  • Код: Выделить всё

    2017-05-12 08:26:09.705 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': An error occured during the script execution: The name 'hsb' cannot be resolved to an item or type.
    2017-05-12 08:26:23.596 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': An error occured during the script execution: The name 'hsb' cannot be resolved to an item or type.
    2017-05-12 08:26:26.374 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': An error occured during the script execution: The name 'hsb' cannot be resolved to an item or type.
    2017-05-12 08:26:29.369 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': An error occured during the script execution: The name 'hsb' cannot be resolved to an item or type.
    2017-05-12 08:26:31.989 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': An error occured during the script execution: The name 'hsb' cannot be resolved to an item or type.

maloicds
Сообщения: 86
Зарегистрирован: 28 сен 2012, 23:14
Откуда: МО, Подольск
Контактная информация:

Re: MegaD-328 + светодиодные RGB ленты

Сообщение maloicds » 12 май 2017, 11:47

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

rule "RGBLight_FF_Bed value"
when
   Item RGBLight_FF_Bed changed
then
   val hsbValue = RGBLight_FF_Bed.state as HSBType
   var Number r=(255-hsbValue.red.intValue)
   var Number g=(255-hsbValue.green.intValue)
   var Number b=(255-hsbValue.blue.intValue)
   sendCommand(RGB_Ch_R_FF_Bed, r.toString)
   postUpdate(RGB_Ch_R_FF_Bed, r.toString)
   sendCommand(RGB_Ch_G_FF_Bed, g.toString)
   postUpdate(RGB_Ch_G_FF_Bed, g.toString)
   sendCommand(RGB_Ch_B_FF_Bed, b.toString)
   postUpdate(RGB_Ch_B_FF_Bed, b.toString)
end

Bonefolder
Сообщения: 245
Зарегистрирован: 30 мар 2017, 11:15
Откуда: г.Севастополь

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Bonefolder » 12 май 2017, 12:35

Maloicds, Спасибо.
Упущенное слово Value и я нашел. Но не успел написать. Надо было срочно уходить
Но при таком раскладе выдает ошибку:
  • Код: Выделить всё

    [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty.
И ни на какие действия Colorpicker'a не реагирует
Надо что-то другое. Но я в кодах не силен((

maloicds
Сообщения: 86
Зарегистрирован: 28 сен 2012, 23:14
Откуда: МО, Подольск
Контактная информация:

Re: MegaD-328 + светодиодные RGB ленты

Сообщение maloicds » 12 май 2017, 12:50

Перед отправкой данных добавьте логирование начений и посмотрите что есть в логе. У себя испольую только sendCommand. Колорпикер включили? (самая правая иконка со стрелочкой вверх).

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

   	logInfo( "RGB", r.toString )
   	logInfo( "RGB", g.toString )
   	logInfo( "RGB", b.toString )

Bonefolder
Сообщения: 245
Зарегистрирован: 30 мар 2017, 11:15
Откуда: г.Севастополь

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Bonefolder » 12 май 2017, 13:06

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

    2017-05-12 12:01:34.554 [INFO ] [g.eclipse.smarthome.model.script.RGB] - 242
    2017-05-12 12:01:34.564 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty.
    2017-05-12 12:01:39.964 [INFO ] [g.eclipse.smarthome.model.script.RGB] - 242
    2017-05-12 12:01:39.969 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty.
    2017-05-12 12:01:41.097 [INFO ] [g.eclipse.smarthome.model.script.RGB] - 155
    2017-05-12 12:01:41.102 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty.
    2017-05-12 12:01:52.737 [INFO ] [g.eclipse.smarthome.model.script.RGB] - 255
    2017-05-12 12:01:52.742 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty.
    2017-05-12 12:01:55.601 [INFO ] [g.eclipse.smarthome.model.script.RGB] - 155
    2017-05-12 12:01:55.607 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty.
    2017-05-12 12:01:58.268 [INFO ] [g.eclipse.smarthome.model.script.RGB] - 255
    2017-05-12 12:01:58.275 [ERROR] [.script.engine.ScriptExecutionThread] - Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty.
    
Похоже, рекция опенхаба на кулпикер есть. Но дальше ошибка
закоментировал постапдейт. Результат тот же(

Bonefolder
Сообщения: 245
Зарегистрирован: 30 мар 2017, 11:15
Откуда: г.Севастополь

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Bonefolder » 12 май 2017, 13:40

Поигрался с названиями Айтемсов. Если заменить диммер на Number or String, ошибка Rule 'RGBLight_FF_Bed value': The argument 'command' must not be null or empty исчезает. Реакция на пикер появляется. Но какая-то дерганная и не выключает до конца ленту

d.v.ermakov
Сообщения: 592
Зарегистрирован: 29 май 2015, 21:23
Откуда: Екатеринбург, Нижний Тагил

Re: MegaD-328 + светодиодные RGB ленты

Сообщение d.v.ermakov » 12 май 2017, 14:17

default.items

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

Color	Light_G_RGB 	"Подсветка потолка" 	<colorwheel>
default.sitemap

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

Colorpicker item=Light_G_RGB
default.rules

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

/* Преобразование Light_G_RGB */
rule "Light_G_RGB value"
when
	Item Light_G_RGB changed
then
	var HSBType hsbValue
	hsbValue = Light_G_RGB.state as HSBType
	sendCommand(Light_G_R, (100-hsbValue.red.intValue).toString)
	postUpdate(Light_G_R, (100-hsbValue.red.intValue).toString)
	sendCommand(Light_G_G, (100-hsbValue.green.intValue).toString)
	postUpdate(Light_G_G, (100-hsbValue.green.intValue).toString)
	sendCommand(Light_G_B, (100-hsbValue.blue.intValue).toString)
	postUpdate(Light_G_B, (100-hsbValue.blue.intValue).toString)
end

maloicds
Сообщения: 86
Зарегистрирован: 28 сен 2012, 23:14
Откуда: МО, Подольск
Контактная информация:

Re: MegaD-328 + светодиодные RGB ленты

Сообщение maloicds » 12 май 2017, 14:38

Совсем забыл что значение цвета от 0 до 100 :)

Bonefolder
Сообщения: 245
Зарегистрирован: 30 мар 2017, 11:15
Откуда: г.Севастополь

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Bonefolder » 12 май 2017, 15:25

to d.v.ermakov + maloicds спасибо огромное. Все заработало. Тему можно подчистить
На всякий случай выкладываю настройки для ОН2 + МегаD. Возможно, кому-то пригодится. А нет, сам посмотрю при настройке 2-й и 3-й ленты))
Items:
  • Код: Выделить всё

    Color  RGB_Light             "RGB Лента" <colorwheel> (Bedroom, Lights) ["Lighting"]
    Dimmer RGB_Red																	{ channel = "megad:device:megad_1:rgbr:dimmer" }
    Dimmer RGB_Green																	{ channel = "megad:device:megad_1:rgbg:dimmer" }
    Dimmer RGB_Blue																	{ channel = "megad:device:megad_1:rgbb:dimmer" }
Sitemap (в моем случае не указанно, так отображается в составе группы Bedroom) подойдет этот: Things:
  • Код: Выделить всё

    Bridge megad:bridge:megad_1
    {
    Thing device rgbb [hostname="192.168.1.114", password="sec", port="10",  r="0"]
    Thing device rgbr [hostname="192.168.1.114", password="sec", port="12",  r="0"]
    Thing device rgbg [hostname="192.168.1.114", password="sec", port="13",  r="0"]
    }
И Rules:
  • Код: Выделить всё

    /* Преобразование Light_G_RGB */
    rule "RGB_Light value"
    when
       Item RGB_Light changed
    then
       var HSBType hsbValue
       hsbValue = RGB_Light.state as HSBType
       sendCommand(RGB_Red, (100-hsbValue.red.intValue).toString)
       postUpdate(RGB_Red, (100-hsbValue.red.intValue).toString)
       sendCommand(RGB_Green, (100-hsbValue.green.intValue).toString)
       postUpdate(RGB_Green, (100-hsbValue.green.intValue).toString)
       sendCommand(RGB_Blue, (100-hsbValue.blue.intValue).toString)
       postUpdate(RGB_Blue, (100-hsbValue.blue.intValue).toString)
       
    end

synclpz
Сообщения: 5
Зарегистрирован: 22 окт 2017, 20:41

Re: MegaD-328 + светодиодные RGB ленты

Сообщение synclpz » 08 ноя 2017, 22:43

Доброго дня всем. Вопрос - можно ли подключить к выходам 2561 несколько модулей L298N параллельно? Задача - в одном помещении разместить несколько отрезков светодиодной ленты, управляющихся синхронно. Я себе решение представляю так: выходы меги из щитка довожу витой парой до помещения, там распараллеливаю клеммником на 3 штуки L298N (в разных углах комнаты), к каждому драйверу подключаю по куску ленты. Или есть проще/надёжнее решение?

Andrey_B
Администратор
Сообщения: 3766
Зарегистрирован: 18 мар 2011, 12:06

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Andrey_B » 09 ноя 2017, 01:38

synclpz писал(а):можно ли подключить к выходам 2561 несколько модулей L298N параллельно?
Можно.

empenoso
Сообщения: 872
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: MegaD-328 + светодиодные RGB ленты

Сообщение empenoso » 12 ноя 2017, 12:13

vladimir22 писал(а):http://ru.aliexpress.com/item/Four-Chan ... 24692.html
вот на это смотрю давно .... есть и одноканальные
d.v.ermakov писал(а):to vladimir22: L298N модуль для целей управления RGB-лентой суть то же самое (если не принимать во внимание максимальный ток), но дешевле и более широко распространен.
L298N только 2А на канал (24Вт на канал), а если требуются гораздо большие токи?

d.v.ermakov
Сообщения: 592
Зарегистрирован: 29 май 2015, 21:23
Откуда: Екатеринбург, Нижний Тагил

Re: MegaD-328 + светодиодные RGB ленты

Сообщение d.v.ermakov » 13 ноя 2017, 23:25

Для больших токов есть усилители. Ключевые слова "led amplifier". Кроме того, к Меге можно и помощнее мосфеты прицепить. L298N вполне достаточно для стандартной ленты длиной 5 метров, например 5050 60шт/м.

synclpz
Сообщения: 5
Зарегистрирован: 22 окт 2017, 20:41

Re: MegaD-328 + светодиодные RGB ленты

Сообщение synclpz » 20 ноя 2017, 22:11

Andrey_B писал(а):
synclpz писал(а):можно ли подключить к выходам 2561 несколько модулей L298N параллельно?
Можно.
Спасибо большое за ответ. А кто-нибудь ещё может подсказать: ленты мерцают? И есть ли RGBW драйверы, которые протестированы с мегой?

Andrey_B
Администратор
Сообщения: 3766
Зарегистрирован: 18 мар 2011, 12:06

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Andrey_B » 20 ноя 2017, 22:17

synclpz писал(а):И есть ли RGBW драйверы, которые протестированы с мегой?
Тот же самый L298N имеет 4 канала, а значит его можно использовать для управления RGBW лентой.

zubkov
Сообщения: 9
Зарегистрирован: 24 апр 2017, 23:28

Re: MegaD-328 + светодиодные RGB ленты

Сообщение zubkov » 21 ноя 2017, 18:30

synclpz писал(а):
Andrey_B писал(а):
synclpz писал(а):можно ли подключить к выходам 2561 несколько модулей L298N параллельно?
Можно.
Спасибо большое за ответ. А кто-нибудь ещё может подсказать: ленты мерцают? И есть ли RGBW драйверы, которые протестированы с мегой?
ленты могут мерцать на разных уровнях ШИМ и часто это зависит от БК... у меня на разных проявляют себя по разному...

Aleksey-nsk
Сообщения: 1
Зарегистрирован: 07 янв 2018, 20:38

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Aleksey-nsk » 07 янв 2018, 21:09

Andrey_B писал(а):
09 ноя 2017, 01:38
synclpz писал(а):можно ли подключить к выходам 2561 несколько модулей L298N параллельно?
Можно.
Возникла проблема при параллельном подключении l298n:
Мега 2561 и модуль 14in подключаю l298 к портам 25, 27, 28 (модуль на втором шлейфе). При включении перестает работать 28 порт, не регаирует никак на команды. Остальные два порта работают штатно. Испортил так два модуля 14in. Не могу понять в чем проблема.
При подключении одного драйвера и одной ленты 5м все работало.
Блок питания для лент отдельный, большой мощности, оба драйвера питаются от него, мега и модуль от другого блока, минус 12в общий.

Попутно вопрос, что в модулях могло произойти и ремонтнопригодно ли? Спасибо

Andrey_B
Администратор
Сообщения: 3766
Зарегистрирован: 18 мар 2011, 12:06

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Andrey_B » 08 янв 2018, 11:26

Aleksey-nsk, трудно что-либо сказать, не зная как в точности все подключалось.
Порты 25, 27, 28 ничем не отличаются друг от друга, поэтому странно, что перестает работать именно 28.
В MegaD-14-IN вряд ли можно что-то испортить. В режиме "цифрового входа" (а вы же подключали драйвер именно в этом режиме?) там попросту нечему портиться.
Наверное, при случайном попадании +12В на порт мог испортится порт в микроконтроллере, но настораживает ваша ремарка относительно двух 14-IN.
Можно было бы, наверное, также предположить какую-то неисправность в самом драйвере L298N. В том канале, к которому подключался порт 28.

synclpz
Сообщения: 5
Зарегистрирован: 22 окт 2017, 20:41

Re: MegaD-328 + светодиодные RGB ленты

Сообщение synclpz » 15 янв 2018, 03:45

А я верно понимаю, что подключая MegaD-14-IN, я могу получить только 3 порта с PWM, соответственно, могу управлять тремя компонентами цвета на драйвере, но не четырьмя?

Andrey_B
Администратор
Сообщения: 3766
Зарегистрирован: 18 мар 2011, 12:06

Re: MegaD-328 + светодиодные RGB ленты

Сообщение Andrey_B » 15 янв 2018, 11:56

Если речь идет о MegaD-328, то да, в этом контроллере только 3 ШИМ порта.
Если речь идет о MegaD-2561, то в этом контроллере 7 ШИМ портов: 4 таких порта выведены на разъем XP1 и 3 на разъем XP2.
Кроме того, MegaD-2561 поддерживает ленты WS2818, WS2811, которые и вовсе подключаются к любому цифровому порту и расширитель PCA9685 (16 ШИМ портов), модули на базе которого, надеюсь, появятся в ближайшем будущем.

Ответить