Запрошуємо, Гість
Ім'я користувача: Пароль: Запам’ятати мене
  • Сторінка:
  • 1
  • 2
  • 3

ТЕМА: RGB по БЛЮТУЗ.

RGB по БЛЮТУЗ. 25 черв. 2017 20:11 #1

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Добрый вечер. Хотел задать вопрос Soir? Я на Андройд написал программку управление RGB лентой или светильником.(фото прилагается) Коды передачи управления написаны. Вы может написать программу на контроллер для управления RGB лентой. Cхема прилагается.
ТЗ
контроллер с энкодером. при включении нажать на кнопку в энкодоре включится белый свет (255,255,255,) при вращении энкодора меняются цвета, ещё раз нажать выключится (0,0,0,)
также возможность управления с телефона менять цвета эффекты яркость и тд.
Долучення:
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 25 черв. 2017 20:34 #2

  • Igr44
  • Igr44 аватар
  • Оффлайн
  • I live here
  • der tod der russischen schweinen
  • Дописи: 1237
  • Подякували: 56
В какой среде вы писали для андроида апк шку?
Интересует программа , но для своего применения. Пока сам разбираюсь с андроид студио, медленно и мучительно.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 25 черв. 2017 21:09 #3

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Есть онлайн App Inventor очень простой.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 25 черв. 2017 21:25 #4

  • Igr44
  • Igr44 аватар
  • Оффлайн
  • I live here
  • der tod der russischen schweinen
  • Дописи: 1237
  • Подякували: 56
пробовал им но пока не разобрался с поведением кнопок. Он вроде и на русском есть, прямо на сайте выбрать можно, но как то непонятно там написано.
Суть простая кнопка позвонить по номеру, после поднятия трубки с той стороны отправить 4 цифры дтмф кодом и все.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 26 черв. 2017 19:15 #5

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Уважаемый Soir Вы можете дать ответ по этой теме?
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 26 черв. 2017 22:11 #6

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
Мне нужно изучить вопрос, пока не готов ответить. Через пару дней буду посвободнее, тогда посмотрю.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 26 черв. 2017 23:27 #7

  • Oto
  • Oto аватар
  • Оффлайн
  • Moderator
  • Дописи: 2500
  • Подякували: 1087
  • Site Sponsor 2017 Author sxem.org Sponsor 2019
andros77 пише:
Есть онлайн App Inventor очень простой.
Это когда немного понятно что к чему , может оно и просто.
Попытался немного вникнуть что это такое , сразу наткнулся на такую информацию.

всего получается. есть (было) 3 программы, какая актуальная?
С росийским паспортом - мразь с засранными мозгами!
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 28 черв. 2017 12:00 #8

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
andros77 пише:
при вращении энкодора меняются цвета
Подробно, как меняются?
andros77 пише:
возможность управления с телефона менять цвета эффекты яркость и тд.
Тут еще подробнее. "и т.д." я не могу прописать в прошивку. Для каждой функции, кнопки, регулировки дайте подробное описание, какой командой управляется и т.д.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 28 черв. 2017 17:09 #9

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
<при вращении энкодора меняются цвета> Плавно преход из одного цвета в другой и так по кругу.
Кнопка ON команда ON функция включения контроллера.
Кнопка OFF команда OFF функция выключения контроллера.
Кнопка КРАСНАЯ команда 255,0,0, При нажатии загорается Красный цвет.
Кнопка ЗЕЛЁНАЯ команда 0,255,0, При нажатии загорается Зелёный цвет.
Кнопка СИНИЯ команда 0,0,255, При нажатии загорается Синий цвет.
Кнопка МНОГО ЦВЕТОВ команда 200#Avto При нажатии загорается Перебор всех цветов от одного к другому.
Кнопка ТРИ ЦВЕТА команда 100#Avto При нажатии загорается Перебор трёх цветов поочерёдно.

Слайдер используется для регулировки яркости команда минимум 0#slide максимум 255#slide между ними подряд от 0 до 255.

Центральный RGB круг посылает команды от 0,0,0, до 255,255,255, у каждого цвета свой код.
Программа Color.apk в ней можно посмотреть как происходит переход цветов.
Программа RGBControl.apk это моя программа. Если блютуз модуль подключить к ком порту в терминале можно посмотреть какие команды посылает программа.

файлы превышают размер вышлю Вам на почту.

ВОТ НАШЁЛ В НЕТЕ ТАКОЙ ПРИМЕР ЕСЛИ ОН ВАМ ПОМОЖЕТ.

По-умолчанию формулу R-G-B начнем с красного цвета 255-0-0.
1) Наращивается зеленый цвет 255-1-0, 255-2-0 ... 255-255-0.
2) Уменьшается красный цвет 254-255-0, 253-255-0 ... 0-255-0.
3) Наращивается синий цвет 0-255-1, 0-255-2 ... 0-255-255.
4) Уменьшается зеленый цвет 0-254-255, 0-253-255 ... 0-0-255.
5) Наращивается красный цвет 1-0-255, 2-0-255 ... 255-0-255.
6) Уменьшается синий цвет 255-0-254, 255-0-253 ... 255-0-0.

Как видим, мы начали красным цветом и закончили красным цветом. Этим мы обеспечиваем непрерывность смены цвета по кругу.

Теперь определимся (точнее я уже определился экспериментально) с шагом смены значения ШИМ. Чуть выше мы перечислили шесть сцен с наращиванием и уменьшением значений цвета. Каждая сцена имеет 255 шагов. Чтобы пройти все сцены нам потребуется 255*6=1530 шагов. Или 1530 оттенков. Уже интересно. Смотрим как работает на практике. Энкодер имеет 20 кликов. 1530/20=76 полных оборотов. Мне наверняка не понравится столько крутить энкодер чтобы сделать полную смену цветов. Сделаем еще немного расчетов.

Вычисляем новый шаг приращения/уменьшения значения ШИМ. Желательно, чтобы это число было кратным 255. Приведем несколько чисел: 5, 15, 17.
Шаг = 5; одна сцена 255/5=51 клик; шесть сцен 51*6=306; оборотов энкодера 306/20=15.
Шаг = 15; одна сцена 255/15=17 клик; шесть сцен 17*6=102; оборотов энкодера 102/20=5.
Шаг = 17; одна сцена 255/17=15 клик; шесть сцен 15*6=90; оборотов энкодера 90/20=4,5.

В итоге остановимся на шаге 15. Смена цветов плавная из 102 оттенков. Реально два соседних оттенка еле различимы для глаза. Поздравляем друг друга – мы определились с алгоритмом.



Следует сказать, что в Интернете этот алгоритм также встречается под названием алгоритм непрерывного спектра. Теперь посмотрим один из вариантов реализации примитивного алгоритма на Си. Здесь алгоритм приведен для примера, на самом деле способы реализации могут быть более замороченными.

void min (void){
if (scena == 1) {if(G<255) G=G+15; else scena = 2;}
if (scena == 2) {if(R>0) R=R-15; else scena = 3;}
if (scena == 3) {if(B<255) B=B+15; else scena = 4;}
if (scena == 4) {if(G>0) G=G-17; else scena = 5;}
if (scena == 5) {if(R<255) R=R+17; else scena = 6;}
if (scena == 6) {if(B>0) B=B-17; else scena = 1;}
}

void max (void){
if (scena == 1) {if(G>0) G=G-15; else scena = 6;}
if (scena == 2) {if(R<255) R=R+15; else scena = 1;}
if (scena == 3) {if(B>0) B=R-15; else scena = 2;}
if (scena == 4) {if(G<255) G=G+15; else scena = 3;}
if (scena == 5) {if(R>0) R=R-15; else scena = 4;}
if (scena == 6) {if(B<255) B=R+15; else scena = 5;}
}

Как видим у нас две функции: min и max. В зависимости от направления вращения энкодера вызывается та или иная функция. На этом хватит теории, переходим к практике.
Останнє редагування: 28 черв. 2017 18:45 від andros77.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 28 черв. 2017 19:51 #10

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
andros77 пише:
ВОТ НАШЁЛ В НЕТЕ ТАКОЙ ПРИМЕР ЕСЛИ ОН ВАМ ПОМОЖЕТ.
А мне то зачем такая помощь? Вы опишите алгоритм смены цветов, а я его реализую в виде прошивки. Вот и все. Теория, цветовые эффекты и т.п. мне мало интересны.
andros77 пише:
По-умолчанию формулу R-G-B начнем с красного цвета 255-0-0.
1) Наращивается зеленый цвет 255-1-0, 255-2-0 ... 255-255-0.
2) Уменьшается красный цвет 254-255-0, 253-255-0 ... 0-255-0.
3) Наращивается синий цвет 0-255-1, 0-255-2 ... 0-255-255.
4) Уменьшается зеленый цвет 0-254-255, 0-253-255 ... 0-0-255.
5) Наращивается красный цвет 1-0-255, 2-0-255 ... 255-0-255.
6) Уменьшается синий цвет 255-0-254, 255-0-253 ... 255-0-0.
Это я могу считать алгоритмом работы энкодера? Только по умолчанию Вы писали белый цвет.
Если это просто рассуждения, то предоставьте алгоритм в таком формате или в виде формулы. Больше мне ничего не нужно.
andros77 пише:
На этом хватит теории, переходим к практике.
Давайте вообще без теории, а сразу к практике: Алгоритм управления от энкодера. И алгоритм управления по bluetooth.

Про команды передаваемые по bluetooth Вы вообще ни слова.
Останнє редагування: 28 черв. 2017 19:52 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 28 черв. 2017 21:40 #11

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Подоём питание на контроллер лента RGB не горит. Нажимаем на энкодер загорается белый свет. Крутим энкодер по часовой стрелке начинают меняться цвета от красного и так далее. Против часовой стрелки крутим цвета меняются в обратную сторону . Если нажать кнопку энкодера ещё раз погаснет.
Это алгоритм энкодера.

Команды по блютуз.
Кнопка ON команда блютуз ON функция включения контроллера.
Кнопка OFF команда блютуз OFF функция выключения контроллера.
Кнопка КРАСНАЯ команда блютуз 255,0,0, При нажатии загорается Красный цвет.
Кнопка ЗЕЛЁНАЯ команда блютуз 0,255,0, При нажатии загорается Зелёный цвет.
Кнопка СИНИЯ команда блютуз 0,0,255, При нажатии загорается Синий цвет.
Кнопка МНОГО ЦВЕТОВ команда блютуз 200#Avto При нажатии загорается Перебор всех цветов от одного к другому.
Кнопка ТРИ ЦВЕТА команда блютуз 100#Avto При нажатии загорается Перебор трёх цветов поочерёдно.

Слайдер используется для регулировки яркости команда блютуз минимум 0#slide максимум 255#slide между ними подряд от 0 до 255.

Центральный RGB круг посылает команды блютуз от 0,0,0, до 255,255,255
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 00:43 #12

  • Айнцвайдрайченко
  • Айнцвайдрайченко аватар
  • Оффлайн
  • Модератор
  • Дописи: 889
  • Подякували: 368
  • sxem.org 2019,2020,2021,2022,2023 zavsehdatay Author
Дайте, пожалуйста, ссылку на Bluetooth-модуль.
СЛАВА УКРАЇНІ!
Ганьба агресору, смерть окупантам!
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 01:03 #13

  • Igr44
  • Igr44 аватар
  • Оффлайн
  • I live here
  • der tod der russischen schweinen
  • Дописи: 1237
  • Подякували: 56
Oto пише:
andros77 пише:
Есть онлайн App Inventor очень простой.
Это когда немного понятно что к чему , может оно и просто.
Попытался немного вникнуть что это такое , сразу наткнулся на такую информацию.

всего получается. есть (было) 3 программы, какая актуальная?
Да она одна только есть разные варианты вывода проекта ( заготовки) есть онлайн есть симулятор который на комп ставить можно и есть такой же вариант который на телефон ставится. Потом с помощью юсб шнурка можно сразу смотреть как телефон ведет себя с программой которая пишется.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 05:58 #14

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
andros77 пише:
Нажимаем на энкодер загорается белый свет. Крутим энкодер по часовой стрелке начинают меняться цвета от красного и так далее.
Я правильно понял, что после включения белого света первый же шаг по часовой стрелке переводит цвет в состояние 255,0,0 (R,G,B )? И далее по тому алгоритму, который я процитировал в своем предыдущем сообщении? То есть, попадаем в пункт 1? А если против часовой стрелки, то попадаем в п.6? А в белый больше возврата не будет?

andros77 пише:
Кнопка ON команда блютуз ON функция включения контроллера.
Что передает модуль микроконтроллеру? Две буквы "O" и "N"?
И так по каждой команде. Мне нужно знать, что получает МК от модуля и что с этими командами делать. Какие при этом производятся манипуляции (кнопки, слайдеры...) на андроиде, для написания прошивки мне абсолютно не нужны.

Айнцвайдрайченко пише:
Дайте, пожалуйста, ссылку на Bluetooth-модуль.
Когда-то брал здесь.
Останнє редагування: 29 черв. 2017 05:58 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: Айнцвайдрайченко

RGB по БЛЮТУЗ. 29 черв. 2017 19:02 #15

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
КНОПКА Включить контроллер команда <ON>
КНОПКА Выключить контроллер команда <OFF>
КНОПКА Включить Красный цвет команда <255,0,0,>
КНОПКА Включить Зелёный цвет команда <0,255,0,>
КНОПКА Включить Синий цвет команда <0,0,255,>
КНОПКА Включить перебор всех цветов команда <200#Avto>
КНОПКА Включить перебор трёх цветов команда <100#Avto>
Слайдер регулировка яркости команда <0#slide>.....<255#slide>

Это команды посылаемые на блютуз в контроллер.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 19:11 #16

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
andros77 пише:
КНОПКА Включить перебор всех цветов команда <200#Avto>
КНОПКА Включить перебор трёх цветов команда <100#Avto>
Опишите, каким образом идет перебор цветов, если это должна делать программа микроконтроллера.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 19:44 #17

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Команда 100#Avto перебор трёх цветов красный зелёный синий можно сделать с небольшим затуханием.
Команда 200#Avto перебор всех цветов по кругу. я не могу обьснить словами по картинке сможете сделать.
Долучення:
Останнє редагування: 29 черв. 2017 19:59 від andros77.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 20:07 #18

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
То есть, цвета сами переключаются по-кругу? С какой скоростью?
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 20:23 #19

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Скорость плавная не быстро. но если есть вожможность сделать регулировку скорости это будет хорошо. я могу добавить эти кнопки.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 29 черв. 2017 20:42 #20

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
Ни "плавная", ни "не быстрая" я не могу записать в прошивку. Нужны цифры (время). Можно и настройку, только пока я не начал писать программу, не понимаю, сколько она займет места, на все ли хватит.

Скажите, а такой формат данных "200#Avto" и т.п. чем-то задан жестко, или его можно изменить?
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 30 черв. 2017 10:38 #21

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
Предварительно собрал проект. Пока без управления по Bluetooth. Кнопка Set переключает режимы: выключено, управление от энкодера, управление авто по часовой стрелке, управление авто против часовой стрелки. От энкодера шаг 15, авто шаг 1.

Проект в Proteus 8.6 - там есть 3-х цветный светодиод, можно наблюдать что-то похожее на гамму.
Останнє редагування: 01 лип. 2017 09:43 від Soir. Причина: Удаление неактуального вложения.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 30 черв. 2017 11:35 #22

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Можно изменить . Можете сами команды назначить я их потом пропиши в программу.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 30 черв. 2017 11:48 #23

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
А в сообщении №15 уже все команды перечислены?

P.S.
Должен предупредить, что делаю только то, что указано, сам ничего не додумываю, даже если это Вам покажется очевидным или само собой разумеющимся... Поэтому еще раз пересмотрите перечень команд. Тогда уже определимся с их форматом.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 30 черв. 2017 19:20 #24

  • andros77
  • andros77 аватар
  • Оффлайн
  • I live here
  • Дописи: 861
  • Подякували: 50
  • Author
Вот новые команды:

КНОПКА Включить контроллер команда <ON>
КНОПКА Выключить контроллер команда <OFF>
КНОПКА Включить Красный цвет команда <255,0,0,>
КНОПКА Включить Зелёный цвет команда <0,255,0,>
КНОПКА Включить Синий цвет команда <0,0,255,>
КНОПКА Включить перебор всех цветов команда <RGB>
КНОПКА Включить перебор трёх цветов команда <rgb>
Слайдер регулировка яркости команда <0#S>.....<255#S>

Это команды посылаемые на блютуз в контроллер.
Увійдіть до облікового запису, щоб писати повідомлення.

RGB по БЛЮТУЗ. 30 черв. 2017 19:42 #25

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5143
  • sxem.org 2019,2021 Respect Author
Такой набор команд мне непонятен, но это и не мне эксплуатировать.

Смысла передавать 255,0,0 никакого нет. Длинная посылка, это только трата времени, ресурсов МК и заряда батареи. Если нужно включить красный цвет, а все остальные выключить, тогда предлагаю ONR. Аналогично ONG и ONB.
ONA (A - all) и OFF можно оставить. RGB и rgb тоже, хотя я пока не понимаю алгоритм переключения трех цветов.
Яркость достаточно передавать S0 ... S255.
Это вот так, общий принцип. Желательно, чтобы команды имели одинаковую длину, так будет проще обработка. Тут у меня вопрос. 255 будет отправляться как один байт, или как три раздельных цифры ("2" "5" "5")?
Увійдіть до облікового запису, щоб писати повідомлення.
  • Сторінка:
  • 1
  • 2
  • 3
Модератори: wolf2000, Vakula, Айнцвайдрайченко, Soir