Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.03.2014, 22:19   #1
Bulatovor
Senior Member
 
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 800
Bulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond repute
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

В основном адресацию. Библиотека уже большая - для начала , чтоб работать с программой димера, достаточно исправить прямое обращение к пинам, Timer1 и Uart
Bulatovor вне форума   Ответить с цитированием
Старый 30.03.2014, 22:23   #2
ChemDevil
Junior Member
 
Регистрация: 30.03.2014
Сообщений: 12
Вес репутации: 0
ChemDevil is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Т.е. просто заменить эти команды на стандартные?
ChemDevil вне форума   Ответить с цитированием
Старый 30.03.2014, 23:28   #3
Bulatovor
Senior Member
 
Регистрация: 20.01.2013
Адрес: Уфа
Сообщений: 444
Вес репутации: 800
Bulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond reputeBulatovor has a reputation beyond repute
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Заменить библиотечные функции на стандартные -это если переписать программу диммера. Если переписывать библиотеку -то первое что нужно это мурзилка по контроллеру -порты, частоты, регистры
Bulatovor вне форума   Ответить с цитированием
Старый 30.03.2014, 23:54   #4
ChemDevil
Junior Member
 
Регистрация: 30.03.2014
Сообщений: 12
Вес репутации: 0
ChemDevil is an unknown quantity at this point
Lightbulb Re: Многоканальный Dimmer, работающий в фоновом режиме

Удалось исправить собственную программу, чему я несказанно рад. Если кому понадобится, вот код с пояснениями:
Код:
String Voltage = "";//Строка общения с Serial;
int Ac_Load = 3;//Пин нагрузки;   
int Dimming = 999;//Уровень яркости (мб любой) 0 - min, 999 - max;
boolean Marker = false;//Маркер того, прошла ли функция прерывания ZC (ZeroCross);
unsigned long currentM = micros();//Счётчик микросекунд (текущее значение);
unsigned long previousM = 0;//Предыдущее значение счетчика микросекунд;
	 
void setup() {
Serial.begin(9600);//Инициализация Serial;
pinMode(Ac_Load, OUTPUT);// Устанавливаем AC Load пин как вывод;
attachInterrupt(2, ZC, RISING);//Функция внешнего прерывания ZC (ZeroCross) на пин 2;
}
	 
void ZC(){ 
Marker = true;//Маркер того, что фунция прошла;
previousM = currentM;//Приравнивает предыдущее значение счетчика к текущему (начинаем отсчет);
}
 
void loop() {
currentM = micros();
//Время оключения: В сети 50Гц, одна волна: 1/50=20мс; Одна полуволна 10мс; (10мс-10мкс)/999=10мкс;
int Dimtime = (10*(999-Dimming));
//Если маркер больше нуля и разница между текущим и предыдущим значением больше времени отключения 
if ((Marker == true) && ((currentM - previousM) > Dimtime))
  {digitalWrite(Ac_Load, HIGH);//Открываем симистор;
    if ((currentM - previousM) > (Dimtime+10))//Через 10мкс закрываем симистор;
      {digitalWrite(Ac_Load, LOW);//Закрываем симистор;
        Marker = 0;//Возвращаем маркер в исходное состояние;
      }
  }
while (Serial.available() > 0)//Цикл приема данных с Serial 
  {char c = Serial.read();//Записываем посимвольно данные из Serial$
     if (c == ' ')//Если в конце пробел, то заканчиваем принятие строки;
      {Serial.println(Voltage);//Выводим в Serial всю строку;
        Dimming = Voltage.toInt();//Переводим строку в уровень яркости (integer);
        Voltage = "";//Обнуляем строку;
      }
     else
     {Voltage += c;//Записываем очередной символ в строку;    
     }      
  }
}
уровень яркости от 0 до 999. В com-порт подаем число яркости+пробел (маячок об окончании). Отдельное спасибо этому форму за помощь
ChemDevil вне форума   Ответить с цитированием
Старый 17.04.2014, 14:31   #5
Vvasya
Junior Member
 
Регистрация: 17.04.2014
Сообщений: 1
Вес репутации: 0
Vvasya is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Добрый день!
Сейчас очень интересует Ваша разработка, но есть пара вопросов...
Сразу извиняюсь, возможно где-то в теме есть ответы, но 36 страниц...
Интересует насколько универсален ваш диммер.
Есть 4 вида нагрузок:
- Блок питания на 12 вольт и светодиодная лента.
- Люминисцентные лампы с электромагнитными ПРА со стартерами и с электронными ПРА.
- Металогалогеновая лампа с балластом.
- Нагревательный прибор (маломощный).
Vvasya вне форума   Ответить с цитированием
Старый 17.04.2014, 15:21   #6
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Диммер не будет работать с люминесцентными лампами.
С металогалогеновыми лампами работать будет, но про балласт хотелость бы подробней услышать?
С нагревательными приборами , с большинством светодиодных ламп тоже будет работать.
Не будет работать с устройствами имеющими электронные преобразователи
к таким относятся люминесцентные лампы
Admin вне форума   Ответить с цитированием
Старый 22.04.2014, 14:46   #7
Black_Angel666
Junior Member
 
Регистрация: 16.04.2014
Сообщений: 7
Вес репутации: 0
Black_Angel666 is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Цитата:
Сообщение от Admin Посмотреть сообщение
Первая версия Dimmer для Arduino, мозолила мне глаза и мне было даже стыдно перед пользователями за такой говнокод, но
все никак не получалось....

Залил скетч, подключил купленный у вас модуль... на буквы Г и d реагирует, на все остальное горит полным накалом... т.е. без разницы отослал я 0 или 250, просто горит и все.... что не так? комманду отправляю так: 0 и ентер, с пробел или без после 0-250 разницы ни какой...
Black_Angel666 вне форума   Ответить с цитированием
Старый 22.04.2014, 16:38   #8
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Попробуйте вот этот скетч
Регулируется ступенчато от 0 до 9
Admin вне форума   Ответить с цитированием
Старый 29.04.2014, 11:35   #9
vold
Junior Member
 
Регистрация: 29.04.2014
Сообщений: 3
Вес репутации: 0
vold is an unknown quantity at this point
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

ПЛАТФОРМА ARDUINO LEONARDO ПРИ ПОДКЛЮЧЕНИИ БИБЛИОТЕКИ БИБЛИОТЕКА CyberLib_H НЕ ОПРЕДЕЛЯЕТСЯ
vold вне форума   Ответить с цитированием
Старый 29.04.2014, 11:44   #10
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Многоканальный Dimmer, работающий в фоновом режиме

Библиотека CyberLib для leonardo не подойдет
Admin вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 5 (пользователей: 0 , гостей: 5)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 16:57. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика