Topic: RgbW
Добрый день
Можно ли добавить в структуру W ?
Для лент rgbw
Спасибо
You are not logged in. Please login or register.
RemoteXY community → Идеи и предложения → RgbW
Добрый день
Можно ли добавить в структуру W ?
Для лент rgbw
Спасибо
Канал W для элемента управления RGB не планируется в ближайшее время.
Вижу 2 пути решения.
1. Добавить в интерфейс слайдер, который будет отвечать за канал W.
2. Найти формулу преобразования RGB в RGBW и реализовать ее в программе Arduino.
Сделал 4 слайдера
лента RGBW и драйвер ln298n
Работает ) При подаче питания сразу все включается - потом слайдерами уменьшается
Не подскажите как сделать наоборот что бы при включении все было выключено?
/*
-- RGBW --
This source code of graphical user interface
has been generated automatically by RemoteXY editor.
To compile this code using RemoteXY library 2.2.5 or later version
download by link http://remotexy.com/en/library/
To connect using RemoteXY mobile app by link http://remotexy.com/en/download/
- for ANDROID 3.7.1 or later version;
- for iOS 1.0.7 or later version;
This source code is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
*/
//////////////////////////////////////////////
// RemoteXY include library //
//////////////////////////////////////////////
// определение режима соединения и подключение библиотеки RemoteXY
#define REMOTEXY_MODE__SOFTSERIAL
#define GRBLED_PIN_R 11 // пин для канала R
#define GRBLED_PIN_G 10 // пин для канала G
#define GRBLED_PIN_B 9 // пин для канала B
#define GRBLED_PIN_W 6 // пин для канала W
int slider_R=0, slider_G=0, slider_B=0, slider_W=0;
#include <SoftwareSerial.h>
#include <RemoteXY.h>
// настройки соединения
#define REMOTEXY_SERIAL_RX 2
#define REMOTEXY_SERIAL_TX 3
#define REMOTEXY_SERIAL_SPEED 9600
// конфигурация интерфейса
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
{ 4,0,31,0,6,11,0,4,64,17
,1,7,61,2,4,64,33,1,8,61
,2,4,64,53,1,7,61,2,4,64
,71,1,7,61,2 };
// структура определяет все переменные вашего интерфейса управления
struct {
// input variable
int8_t slider_R; // =0..100 положение слайдера
int8_t slider_G; // =0..100 положение слайдера
int8_t slider_B; // =0..100 положение слайдера
int8_t slider_W; // =0..100 положение слайдера
// other variable
uint8_t connect_flag; // =1 if wire connected, else =0
} RemoteXY;
#pragma pack(pop)
/////////////////////////////////////////////
// END RemoteXY include //
/////////////////////////////////////////////
void setup()
{
RemoteXY_Init ();
pinMode(GRBLED_PIN_R, OUTPUT);
pinMode(GRBLED_PIN_G, OUTPUT);
pinMode(GRBLED_PIN_B, OUTPUT);
pinMode(GRBLED_PIN_W, OUTPUT);
}
void loop()
{
RemoteXY_Handler ();
// TODO you loop code
// используйте структуру RemoteXY для передачи данных
analogWrite(GRBLED_PIN_R, RemoteXY.slider_R * 2.55);
analogWrite(GRBLED_PIN_G, RemoteXY.slider_G * 2.55);
analogWrite(GRBLED_PIN_B, RemoteXY.slider_B * 2.55);
analogWrite(GRBLED_PIN_W, RemoteXY.slider_W * 2.55);
}
добавил функцию и исправил
/*
-- RGBW --
This source code of graphical user interface
has been generated automatically by RemoteXY editor.
To compile this code using RemoteXY library 2.2.5 or later version
download by link http://remotexy.com/en/library/
To connect using RemoteXY mobile app by link http://remotexy.com/en/download/
- for ANDROID 3.7.1 or later version;
- for iOS 1.0.7 or later version;
This source code is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
*/
//////////////////////////////////////////////
// RemoteXY include library //
//////////////////////////////////////////////
// определение режима соединения и подключение библиотеки RemoteXY
#define REMOTEXY_MODE__SOFTSERIAL
#define GRBLED_PIN_R 11 // пин для канала R
#define GRBLED_PIN_G 10 // пин для канала G
#define GRBLED_PIN_B 9 // пин для канала B
#define GRBLED_PIN_W 6 // пин для канала W
int R=255, G=255, B=255, W=255;
#include <SoftwareSerial.h>
#include <RemoteXY.h>
// настройки соединения
#define REMOTEXY_SERIAL_RX 2
#define REMOTEXY_SERIAL_TX 3
#define REMOTEXY_SERIAL_SPEED 9600
// конфигурация интерфейса
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
{ 4,0,31,0,6,11,0,4,0,17
,1,7,61,2,4,0,33,1,8,61
,2,4,0,53,1,7,61,2,4,0
,71,1,7,61,2 };
// структура определяет все переменные вашего интерфейса управления
struct {
// input variable
int8_t slider_R; // =0..100 положение слайдера
int8_t slider_G; // =0..100 положение слайдера
int8_t slider_B; // =0..100 положение слайдера
int8_t slider_W; // =0..100 положение слайдера
// other variable
uint8_t connect_flag; // =1 if wire connected, else =0
} RemoteXY;
#pragma pack(pop)
/////////////////////////////////////////////
// END RemoteXY include //
/////////////////////////////////////////////
void setup()
{
RemoteXY_Init ();
pinMode(GRBLED_PIN_R, OUTPUT);
pinMode(GRBLED_PIN_G, OUTPUT);
pinMode(GRBLED_PIN_B, OUTPUT);
pinMode(GRBLED_PIN_W, OUTPUT);
}
void loop()
{
RemoteXY_Handler ();
// TODO you loop code
// используйте структуру RemoteXY для передачи данных
analogWrite(GRBLED_PIN_R, R - RemoteXY.slider_R * 2.55);
analogWrite(GRBLED_PIN_G, G - RemoteXY.slider_G * 2.55);
analogWrite(GRBLED_PIN_B, B - RemoteXY.slider_B * 2.55);
analogWrite(GRBLED_PIN_W, W - RemoteXY.slider_W * 2.55);
}
Видимо у вас нагрузка включается при напряжении 0 и выключается при напряжении 5В. Тогда вы сделали правильно - инвертировали уровень.
Можно сделать немного по другому. Оставьте для сигналов RGB элемент управления RGB-круг. Для сигнала W слайдер. Т.е. на интерфейсе у вас будет RGB-круг и рядом слайдер. Возможно так будет удобнее.
RemoteXY community → Идеи и предложения → RgbW
Powered by PunBB, supported by Informer Technologies, Inc.