1

Topic: RgbW

Добрый день
Можно ли добавить в структуру W ?
Для лент rgbw

Спасибо

2

Re: RgbW

Канал W для элемента управления RGB не планируется в ближайшее время.
Вижу 2 пути решения.
1. Добавить в интерфейс слайдер, который будет отвечать за канал W.
2. Найти формулу преобразования RGB в RGBW и реализовать ее в программе Arduino.

3 (edited by cadetandrey 2017-01-18 18:24:37)

Re: RgbW

Сделал 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);

}

4

Re: RgbW

добавил функцию и исправил

/*
   -- 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);

}

5

Re: RgbW

Видимо у вас нагрузка включается при напряжении 0 и выключается при напряжении 5В. Тогда вы сделали правильно - инвертировали уровень.
Можно сделать немного по другому. Оставьте для сигналов RGB элемент управления RGB-круг. Для сигнала W слайдер. Т.е. на интерфейсе у вас будет RGB-круг и рядом слайдер. Возможно так будет удобнее.