Страница 3 из 15 ПерваяПервая 12345678913 ... ПоследняяПоследняя
Показано с 21 по 30 из 144
  1. #21
    Местный Аватар для Kevin
    Регистрация
    02.02.2018
    Возраст
    53
    Сообщений
    127
    Вес репутации
    104

    По умолчанию Re: Фен паяльный

    По отдельности скетчи работают нормально. Первый крутит вентилятор, второй регулирует накал лампочки. Но при попытке их объединить - лампочка мерцает.
    Первый
    PHP код:
    #include <Encoder.h>

    #define PIN_ENCODER_CLK 5
    #define PIN_ENCODER_DT 6
    #define PIN_ENCODER_SW 7
    Encoder myEnc(PIN_ENCODER_DTPIN_ENCODER_CLK);

    int motorPin 3;
    int motorSpeed 75;                   // Изначальная скорость двигателя
    int accel 1;
    int i 0;
    long oldPosition 0;

    void setup() {
    TCCR2B TCCR2B 0b11111000 7;
    Serial.begin(9600);
    pinMode(motorPinOUTPUT);
    }
    void loop(){
      
    analogWrite(motorPinmotorSpeed);  // Устанавливаем первоначальную скорость
    //=== ручка энкодера/регулироака
      
    long newPosition myEnc.read() / accel;    
      if (
    newPosition oldPosition
      {      
        
    analogWrite(motorPinnewPosition);
        
    motorSpeed += 5;                  // Прибавляем скорость
        
    Serial.println(">>>");
        if ( 
    motorSpeed 255 )
        
    motorSpeed 255;
      }
      else
      if (
    newPosition oldPosition)
      {
        
    analogWrite(motorPinnewPosition);        
        
    motorSpeed -= 5;                  // Убавляем скорость
        
    Serial.println("<<<");
        if ( 
    motorSpeed 75 )
        
    motorSpeed 75;
      } 
      if ( 
    newPosition != oldPosition)
      {
        
    = (1)%16;
        
    oldPosition newPosition;
        
    analogWritemotorPinmotorSpeed );
        
    Serial.println(motorSpeed);
      } 

    Второй
    PHP код:
    #include <Encoder.h>
    #include <CyberLib.h> //Библиотека от Cyber-Place.ru
    volatile unsigned long Dimmer

    #define PIN_ENCODER_CLK 5
    #define PIN_ENCODER_DT 6
    #define PIN_ENCODER_SW 7
    Encoder myEnc(PIN_ENCODER_DTPIN_ENCODER_CLK);


    int accel 1;
    int i 0;
    long oldPosition 0;

    void setup() {
      
    D4_Out;  //Настраиваем порты на выход
      
    D4_Low;  //установить на выходах низкий уровень сигнала
      
    D2_In//настраиваем порт на вход для отслеживания прохождения сигнала через ноль
      
      
    attachInterrupt(0detect_upRISING);  // настроить срабатывание прерывания interrupt0 на pin 2 на низкий уровень
     
    Dimmer 4500;
    }
    //********************обработчики прерываний*******************************

    void  detect_up()  // обработка внешнего прерывания. Сработает по переднему фронту
    {
      
    delay_us(Dimmer);
      
    D4_High;
      
    delay_us(40); //формируем импульс включения симистора
      
    D4_Low;
    }

    //*************************************************************************
    void loop(){

    //=== ручка энкодера/регулироака
      
    long newPosition myEnc.read() / accel;    
      if (
    newPosition oldPosition
      {      
        
    Dimmer -= 100;
        if ( 
    Dimmer 2500 )
        
    Dimmer 2500;
      }
      else
      if (
    newPosition oldPosition)
      {        
        
    Dimmer += 100;                
        if ( 
    Dimmer 9500 )
        
    Dimmer 9500;
      } 
      if ( 
    newPosition != oldPosition)
      {
        
    = (1)%16;
        
    oldPosition newPosition;
        
    Dimmer Dimmer;
      } 

    Вместе
    PHP код:
    #include <Encoder.h>
    #include <CyberLib.h> //Библиотека от Cyber-Place.ru
    volatile unsigned long Dimmer

    #define PIN_ENCODER_CLK 5
    #define PIN_ENCODER_DT 6
    #define PIN_ENCODER_SW 7
    Encoder myEnc(PIN_ENCODER_DTPIN_ENCODER_CLK);

    int motorPin 3;
    int motorSpeed 75;                   // Изначальная скорость двигателя
    int accel 1;
    int i 0;
    long oldPosition 0;

    void setup() {
      
    D4_Out;  //Настраиваем порты на выход
      
    D4_Low;  //установить на выходах низкий уровень сигнала
      
    D2_In//настраиваем порт на вход для отслеживания прохождения сигнала через ноль
      
      
    attachInterrupt(0detect_upRISING);  // настроить срабатывание прерывания interrupt0 на pin 2 на низкий уровень
     
    Dimmer 4500;
     
    TCCR2B TCCR2B 0b11111000 7Serial.begin(9600);
    pinMode(motorPinOUTPUT);
    }
    //********************обработчики прерываний*******************************

    void  detect_up()  // обработка внешнего прерывания. Сработает по переднему фронту
    {
      
    delay_us(Dimmer);
      
    D4_High;
      
    delay_us(40); //формируем импульс включения симистора
      
    D4_Low;
    }

    //*************************************************************************
    void loop(){
      
    analogWrite(motorPinmotorSpeed);  // Устанавливаем первоначальную скорость
    //=== ручка энкодера/регулироака
      
    long newPosition myEnc.read() / accel;    
      if (
    newPosition oldPosition
      {   


        
    Dimmer -= 100;
        if ( 
    Dimmer 500 )
        
    Dimmer 500;



           
        
    analogWrite(motorPinnewPosition);
        
    motorSpeed += 5;                  // Прибавляем скорость
        
    Serial.println(">>>");
        if ( 
    motorSpeed 255 )
        
    motorSpeed 255;
      }
      else
      if (
    newPosition oldPosition)
      {


        
    Dimmer += 100;                
        if ( 
    Dimmer 9500 )
        
    Dimmer 9500;



        
        
    analogWrite(motorPinnewPosition);        
        
    motorSpeed -= 5;                  // Убавляем скорость
        
    Serial.println("<<<");
        if ( 
    motorSpeed 75 )
        
    motorSpeed 75;
      } 
      if ( 
    newPosition != oldPosition)
      {
        
    = (1)%16;
        
    oldPosition newPosition;
        
    Dimmer Dimmer;
        
    analogWritemotorPinmotorSpeed );
      } 

    На больших оборотах / напряжении всё нормально, только на малых лампочка моргает
    Последний раз редактировалось Kevin; 18.02.2018 в 20:23.

  2. #22
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Фен паяльный

    Я бы для начала закоментировал все что связано с serial

  3. #23
    Местный Аватар для Kevin
    Регистрация
    02.02.2018
    Возраст
    53
    Сообщений
    127
    Вес репутации
    104

    По умолчанию Re: Фен паяльный

    Уже сделано - это только тут осталось.

  4. #24
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Фен паяльный

    Так же мерцает?

  5. #25
    Местный Аватар для Kevin
    Регистрация
    02.02.2018
    Возраст
    53
    Сообщений
    127
    Вес репутации
    104

    По умолчанию Re: Фен паяльный

    Да, но стоит отключить программно вентилятор //analogWrite( motorPin, motorSpeed ) ; нет вспышек
    Хотел снять видео как вспыхивает, но неожиданно задымил резистор
    Нажмите на изображение для увеличения. 

Название:	Screenshot_1.png 
Просмотров:	617 
Размер:	259.8 Кб 
ID:	19341
    Последний раз редактировалось Kevin; 18.02.2018 в 21:45.

  6. #26
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Фен паяльный

    резистор 0,5W ?
    Нужно код диммера из шапки брать, этот не пойдет
    Последний раз редактировалось Chip; 18.02.2018 в 21:54.

  7. #27
    Местный Аватар для Kevin
    Регистрация
    02.02.2018
    Возраст
    53
    Сообщений
    127
    Вес репутации
    104

    По умолчанию Re: Фен паяльный

    Но диммер то работал пока не стал скрещивать с вентилятором. Брал тут
    У меня такая схема


    Поменял резистор - снял видео. На полной мощности всё ок, ниже середины начинаются вспышки
    Последний раз редактировалось Kevin; 18.02.2018 в 22:24.

  8. #28
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Фен паяльный

    По ссылке такой же код как в шапке темы. Который отличается от Вашего

  9. #29
    Местный Аватар для Kevin
    Регистрация
    02.02.2018
    Возраст
    53
    Сообщений
    127
    Вес репутации
    104

    По умолчанию Re: Фен паяльный

    Ааа код.. а я про схему (совсем запарился сегодня)
    Последний раз редактировалось Kevin; 18.02.2018 в 22:55.

  10. #30
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,376
    Вес репутации
    10

    По умолчанию Re: Фен паяльный

    В схеме все нормально. Если не считать резисторы 0,25Вт

Страница 3 из 15 ПерваяПервая 12345678913 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 3 (пользователей: 0 , гостей: 3)

Ваши права

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