как выбрать цифровой потенциометр?

bwn
Offline
Зарегистрирован: 25.08.2014

Вы сперва запустите. Памятник, ну на месте "Св.Владимира"  неплохо бы смотрелся.)))))

Aqua123
Offline
Зарегистрирован: 23.11.2016

Это в каком городе?)))

И еще вопрос, а каким образом можно регулировать яркость светодиодной ленты? там как я понимаю еще блочек питания идет?

bwn
Offline
Зарегистрирован: 25.08.2014

Он у нас один, совсем свеженький))))

Вы скажите толком что сделать хотите.

 

Aqua123
Offline
Зарегистрирован: 23.11.2016

Изменение яркости светодиодной  ленты  (одно цветной  не ргб)

а город то какой?

 

Aqua123
Offline
Зарегистрирован: 23.11.2016

Завтра запчасти куплю , постараюсь плату вытравить, глядишь скоро и аквариум доделаю)))

bwn
Offline
Зарегистрирован: 25.08.2014

Стоит он в городе Москва, я не оттуда.
По аквасу посмотрите проектик. Регулировка яркости, здесь по форуму поройтесь, тем много было.

Aqua123
Offline
Зарегистрирован: 23.11.2016

Спасибо ! !!

Aqua123
Offline
Зарегистрирован: 23.11.2016

Уважаемй bwn, здравствуйте!!! Живу в провинциальном городишке))) возник вопрос по предложенной Вами схемой димера, возможно ли заменить PC814 на PC817 (пугает что одно для постоянки а другое для переменки судя по даташиту) (пост 40)

bwn
Offline
Зарегистрирован: 25.08.2014

Я вообще использую диодный мост + 4N25. Аналогично можно и PC817.
Также можно параллельно 817 включить диод в обратном направлении, но тогда нужно будет править программу диммера, т.к. будем считать только одну полуволну.

Aqua123
Offline
Зарегистрирован: 23.11.2016

так что делать-то другие запчасти подбирать, и переделывать схему, или упереться рогом и заказать все тоже что в схеме?

bwn
Offline
Зарегистрирован: 25.08.2014

Здесь уж Вам решать. Для корректной работы разницы никакой.

Aqua123
Offline
Зарегистрирован: 23.11.2016

спасибо

Aqua123
Offline
Зарегистрирован: 23.11.2016

Здравствуйте! помогите собрать 2 схемы на до совместит ь движку и свет.

https://cloud.mail.ru/public/E4ap/rHjDeoubn

https://cloud.mail.ru/public/Bnn3/4gHADktGr

Aqua123
Offline
Зарегистрирован: 23.11.2016

чудом нашел детали, часть со старыхплат))

 

Aqua123
Offline
Зарегистрирован: 23.11.2016

bwn пишет:

Так точно. Уточнение - ту катушку, которая сейчас работает с штатным диммером. До включения замерить минимальное напряжение получаемое от штатного диммера и подобрать нижний числовой предел для электронного, постепенным снижением от максимума. Напряжения ниже, чем были на штатном лучше не выставлять.

Вы никак покупать это собрались? Не советую, спаять в десять раз дешевле выйдет. ИМХО.

Схема собрана, осталось со скетчем разобраться

Aqua123
Offline
Зарегистрирован: 23.11.2016

bwn пишет:

Не так, пишем скетч и пробуем на какой нибудь нагрузке (хоть лампочке), когда все заработало, подключаем нашу катушку и еще раз подгоняем напряжение. Я не специалист по индуктивным нагрузкам, но знаю, что не любят они издевательств. Активной это без разницы, лишь бы не выше допустимого.

Покупать - плата с 43 поста.

Здравствуйте! лампу диммирует ,катушку не хочет Подскажите в чем может быть проблемма?

bwn
Offline
Зарегистрирован: 25.08.2014

1. Схема диммера с потенциометром приведенная в начале - та, что стояла на катушке?
2. Если да, поставили снабберную цепь (посл. резистор и конденсатор параллельно симистору) ?
3. Два пункта "да", в чем и как выражается "не хочет". ?

Aqua123
Offline
Зарегистрирован: 23.11.2016

bwn пишет:

1. Схема диммера с потенциометром приведенная в начале - та, что стояла на катушке?
2. Если да, поставили снабберную цепь (посл. резистор и конденсатор параллельно симистору) ?
3. Два пункта "да", в чем и как выражается "не хочет". ?

 

Вот изначальная схема с потенциометром

https://cloud.mail.ru/public/FRn9/XUsC5Gtyk

Вот чем схема была заменена

https://cloud.mail.ru/public/4wPT/tkTEfeLnY

вот сам скетч

#include <TimerOne.h>
//#include <CyberLib.h>
volatile uint8_t tic ;
uint8_t data;
int startDimPin = 3; //первый диммер
int endDimPin = 12; //последний диммер
int Dimmer[9]; //количество диммеров минус 1
int var;

void setup() {

  //*********************Настраиваем порты на выход**********************

  for ( int i = startDimPin; i <= endDimPin; i++) //пройдемся циклом по портам
  {
    pinMode (i, OUTPUT);
    digitalWrite(i, LOW); // гасим оответствующий пин

    Dimmer[i - startDimPin] = 10; //выставим яркость соответствующего диммера в 0
  }
  //CHANGE – прерывание вызывается при любом изменении значения на входе;
  //RISING – вызов прерывания при изменении уровня напряжения с низкого (Low) на высокий(HIGH)
  //FALLING – вызов прерывания при изменении уровня напряжения с высокого (HIGH) на низкий (Low)
  attachInterrupt(0, detect_up, LOW);  // настроить срабатывание прерывания interrupt0 на pin 2 на низкий уровень
  Timer1.initialize(40);              // Интервал срабатывания таймера в мкс
  Timer1.attachInterrupt(halfcycle);   //будет вызыватся каждый раз при отсчете заданого времени
  Timer1.stop();
  Serial.begin(115200); //инициализация порта
  randomSeed(analogRead(0)); //псевдогенератор случайных чисел будет использовать шумы на аналог пин 0
}

//********************обработчики прерываний*******************************
void halfcycle()  //прерывания таймера
{
  tic--;  //счетчик
  for ( int i = startDimPin; i <= endDimPin; i++)
  {
    if (Dimmer[i - startDimPin] > tic )
      digitalWrite(i, HIGH); //управляем выходом (откроем семистор)
  }
}

void  detect_up()  // обработка внешнего прерывания. Сработает по переднему фронту
{
  tic = 200;           //обнулить счетчик
  Timer1.resume();   //запустить таймер
  attachInterrupt(0, detect_down, HIGH);  //перепрограммировать прерывание на другой обработчик
}

void  detect_down()  // обработка внешнего прерывания. Сработает по заднему фронту
{
  Timer1.stop(); //остановить таймер
  for ( int i = startDimPin; i <= endDimPin; i++)
  {

    digitalWrite(i, LOW);
  }
  tic = 200;     //обнулить счетчик
  attachInterrupt(0, detect_up, LOW); //перепрограммировать прерывание на другой обработчик

}

void loop() {
   
   Dimmer[1] = 20;

  }

 

в отличае от лампочки, катушка работает только на максимальном режиме, нет регулировки

bwn
Offline
Зарегистрирован: 25.08.2014

Странно, катушка какой мощности? Попробую у себя погонять, если найду подходящую.

А зачем киберлибовскую библиотеку выкинули?

Aqua123
Offline
Зарегистрирован: 23.11.2016

Про мощность не скажу, знаю что стоял слабенький семистр на 0,6 А.

Библтотеку надо вставить обратно?

bwn
Offline
Зарегистрирован: 25.08.2014

Хоть по габаритам какая? У меня где то валялся компрессор ватт на 5, попробую с ним.

Aqua123
Offline
Зарегистрирован: 23.11.2016

как раз компрессор на 5 wat

 

bwn
Offline
Зарегистрирован: 25.08.2014

Я Вас не обрадую, помпа 2,5Вт все работает. Ищите где у Вас косяк. Скетч:
 

#if defined(ARDUINO) && ARDUINO >= 100 //Определение версии IDE
#include "Arduino.h"
#else
#include "WProgram.h"
#endif

// ВАЖНО пин DHT заменен с 7 на 6, LCD с 0х38 на 0х20

#include <Wire.h>                   //Библиотека I2C
//#include <DS1307.h>                 //Библиотека для часов
//#include <LiquidCrystalCyr_I2C.h>   //Библиотека LCD I2C русифицированная
#include <OneWire.h>                //Для DS18B20
//#include "DHT.h"                    //Библиотека DHT
#include <CyberLib.h>               //Библиотека от Cyber-Place.ru
volatile uint8_t tic, Dimmer1, Dimmer2; //0-макс свечение, 200-мин.свечение, 255-выключить
uint8_t data;



//***********БЛОК НАЧАЛЬНОЙ ИНИЦИАЛИЗАЦИИ********************
void setup () 
{
  //Serial.begin(9600);

  //*******Инициализация диммеров*********

  Dimmer1=255;
  Dimmer2=255;

  //************Инициализация диммеров*************************************** 
  D4_Out; 
  D5_Out;          //Настраиваем порты на выход
  D4_Low; 
  D5_Low;          //установить на выходах низкий уровень сигнала
  D2_In;                   //настраиваем порт на вход для отслеживания прохождения сигнала через ноль  

  //CHANGE – прерывание вызывается при любом изменении значения на входе; 
  //RISING – вызов прерывания при изменении уровня напряжения с низкого (Low) на высокий(HIGH) 
  //FALLING – вызов прерывания при изменении уровня напряжения с высокого (HIGH) на низкий (Low) 
  //attachInterrupt(0, detect_up, LOW);  // настроить срабатывание прерывания interrupt0 на pin 2 на низкий уровень
  StartTimer1(halfcycle, 40); //время для одного разряда ШИМ
  StopTimer1(); //остановить таймер  
  attachInterrupt(0, detect_up, LOW); 
    

}
//*************КОНЕЦ БЛОКА НАЧАЛЬНОЙ ИНИЦИАЛИЗАЦИИ**************

//********************ОБРАБОТКА ПРЕРЫВАНИЙ*******************************
void halfcycle()  //прерывания таймера
{ 
  tic++;  //счетчик  
  if(Dimmer1 < tic ) D4_High; //управляем выходом
  if(Dimmer2 < tic ) D5_High;  //управляем выходом 
}

void  detect_up()  // обработка внешнего прерывания. Сработает по переднему фронту
{  
  tic=0;             //обнулить счетчик
  ResumeTimer1();   //запустить таймер
  attachInterrupt(0, detect_down, HIGH);  //перепрограммировать прерывание на другой обработчик
}  

void  detect_down()  // обработка внешнего прерывания. Сработает по заднему фронту
{   
  StopTimer1(); //остановить таймер
  D4_Low; 
  D5_Low; //логический ноль на выходы
  tic=0;       //обнулить счетчик
  attachInterrupt(0, detect_up, LOW); //перепрограммировать прерывание на другой обработчик
} 
//*************КОНЕЦ ОБРАБОТКИ ПРЕРЫВАНИЙ**********************

//**************ОСНОВНОЙ ЦИКЛ ПРОГРАММЫ**************************************

void loop () 
{

  Dimmer1 = 0;
  delay(1000);
  Dimmer1 = 40;
  delay(1000);
  Dimmer1 = 80;
  delay(1000);
  Dimmer1 = 120;
  delay(1000);
  Dimmer1 = 160;
  delay(1000);
  Dimmer1 = 200;
  delay(1000);
  Dimmer1 = 160;
  delay(1000);
  Dimmer1 = 120;
  delay(1000);
  Dimmer1 = 80;
  delay(1000);
  Dimmer1 = 40;
  delay(1000);
  

//***********ОКОНЧАНИЕ ОСНОВНОГО ЦИКЛА*****************************

 

На некоторые комментарии внимание не обращайте, это из рабочей программы огрызок.
D4 - выход, D2 - вход.

 

Dmitriyxz
Offline
Зарегистрирован: 17.08.2017

какая схема подойдёт для упровления яркостью светодиодных ламп работающих от 220В ?

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Dmitriyxz, в общем случае никакая. 

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Dmitriyxz пишет:

какая схема подойдёт для упровления яркостью светодиодных ламп работающих от 220В ?

Извне их нельзя регулировать, т.к. внутри лампы стоит драйвер, который стабилизирует и поддерживает постоянный ток на светодиодах.