Перейти к содержанию

MDG_Lab

Members
  • Постов

    105
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные MDG_Lab

  1. Добрый день. 

    Хочу получить комментарии по поводу "подводных камней" при запуске схемы (на рисунке)  и в общем о возможности работы данной схемы.

    На Ua1, Ub1, Uc1 сетевое напряжение 400 В, 50 Гц, с Ua2, Ub2, Uc2 напряжение будет сниматься.  Ключи Q1-Q3 работают в противофазе с Q5. Нагрузка планируется активно-индуктивная (Асинхронный двигатель)

    5c03a77f88c64__1.thumb.jpg.7b7d6e7fdb1f9db0739ff877bb6b1714.jpg

  2. Добрый день!

    Имеется простенькая схема для управления нагрузкой мосфет ключом IRF540, см. на рисунке.

     схема

    В качестве драйвера применяется драйвер с оптической развязкой TLP350.

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

    Саму осциллограмму не заснял, но напряжение на нагрузке отобразил на рисунке.

     Vds.jpg.3fe280c3c79c84976b709a7967403556.jpg

    ШИМ на выходе с TLP350 имеет правильную форму-прямоугольники(на рис. обозначено Vgs).

    Частота была 2кГц, сопротивление в цепи затвора 30ом, напряжение питания драйвера применялось от 11 до 16В,  напряжение питания нагрузки 12В. 

    С чем такая работа транзистора может быть связана? Спасибо.

  3. 41 минуту назад, bam-buk сказал:

    @MDG_Lab А зачем нужен ОУ? Это что, учебный проект? Если нет, то можно обойтись и без ОУ, рассчитав делитель с учётом параметров входа АЦП (или чего там ещё).

    С уважением В.

    Совершенно верно, проект относится к разряду учебных. В разработке электроники мне еще учится и учиться, так что решил применить такое решение. АЦП контроллера STM32 F103. А так же там используются датчики тока и напряжения.

  4.  

    Получил такой результат при однополярном питании и ОУ типа LT1364 (за не имением других в LT Spice). Верхний график выход с ОУ.2pOU.thumb.jpg.afb2d4cb9f8e34ca7ef96e7c56b26f81.jpg

    И такая картина при однополярном питании но с rail-to-rail ОУ типа LT1368 

    rail2rail.thumb.jpg.eb8b0478ebc9d798af77f162791bb865.jpg

    Сейчас в наличии есть только NE5532, получается его не применить в такой схеме с однополярным питанием?LT.jpg.7c96c3c416ef4ea0d13ced9b8761c6a5.jpg

    8 часов назад, bam-buk сказал:

    На оригинальной схеме от @MDG_Lab С1 и R10 могут быть неотъемлемой частью нагрузки ТГ, без которых может быть искажена характеристика Uвых(n_вала).

    С уважением В.

    Нагрузочная характеристика пока точно не известна, но скорее всего ТГ придется "подгрузить".

  5. 9 часов назад, avv_rem сказал:

    Если правильно понял, то
    R7 = R9 = 2 * R8 * (Eвх/Uвых - 1)

    В нашем конкретном случае
    R7 = R9 = 2 * R8 * (7/3,3 - 1) = R8 * 2,24242424… = R8 * 222 / 99

    Объясните, пожалуйста, почему R7=R9? 

    И возможно ли использовать напряжение смещения, например, стандартного уровня 5В?

  6. Добрый вечер! 

    Подскажите пожалуйста как рассчитать номиналы резисторов R7-R9 аттенюатора с положительным смещением.

    На входе имеется напряжение с тахогенератора (ТГ) с номиналом 7 В в одном направлении и -7В при обратном вращении, 0 В при отсутствии вращения.

    Нужно на выходе ОУ U4.1 получить сигнал 0 ... 3,3 В для подачи на АЦП.

    Соответственно нужно сначало получить диапазон 0 ... 14 В, а потом его ослабить до 0 ... 3,3В.

    Резистор R10 предполагается как нагрузка для ТГ.

    U4.2 не задействованный ОУ.

    Спасибо!.

    2018-01-03_224626.jpg.87dffd607ff737035fff695a75e12396.jpg

     

  7. Добрый день!

    Хочу спросить о правильности кода обработки сигнала с датчика тока ACS712.

    Датчик тока имеет диапазон -20 ... +20 А. Для точного определения нуля нужно точно знать опорное напряжение АЦП.  

    Возможно ли как-то внутренними средствами определить опорное напряжение АЦП, что бы каждый раз не производить вручную замер опорного напряжения. Контроллер STM32F103. 

    Для определения среднего значения кода с АЦП (т.к. код АЦП сильно прыгает) складываю до n=2000 (т.е. от 0 до 2000 получается 2001)  значений и делю потом на n+1, при это получаю 4094, как такое может быть?

     
    
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
    // int Value=0;
    int ADC = 0; // Цифровой код с АЦП
    float I_in = 0.000;
    float V_in = 0.000;
    // float vin=0;
    float I_min = -20.000; // Нижний предел диапазона датчика тока
    float I_max = 20.000; // Верхний предел диапазона датчика тока
    int I_min_D = 0;     // Нижний предел диапазона датчика тока(цифровой код)
    int I_max_D = 4095;  // Верхний предел диапазона датчика тока(цифровой код)
    float V_min = -0.000; // Нижний предел диапазона датчика тока
    float V_max = 3.300; // Верхний предел диапазона датчика тока
    int V_min_D = 0;     // Нижний предел диапазона датчика тока(цифровой код)
    int V_max_D = 4095;  // Верхний предел диапазона датчика тока(цифровой код)
    long Summ_ADC = 0;
    int n = 2000; // количество замеров значений с АЦП [0;4294967295]
    int S_ADC = 0;
    
    LiquidCrystal_I2C lcd(0x3F, 16, 2); // Устанавливаем дисплей
    void setup()
    {
      lcd.init();
     lcd.backlight();// Включаем подсветку дисплея
    
    
      pinMode(PB9, OUTPUT);
    }
    void loop()
    {
      for (int i = 0; i < n; i++) {
        ADC = analogRead(PA1); // чтение цифрового кода с порта PA1
        Summ_ADC = Summ_ADC + ADC; // накапливаем значение пока выполняется условие
      }
      Summ_ADC = Summ_ADC / (n + 1);
    
      int i = 0;
      
      I_in = .............// пересчет цифрового кода в физические велечины
      V_in = .............// пересчет цифрового кода в физические велечины
      lcd.clear();
      lcd.setCursor(0, 0); // установка курсора в 2 строку  1 символ
      lcd.print(Summ_ADC);  // вывод текста на дисплей
    
      lcd.setCursor(5, 0); // установка курсора в 2 строку  1 символ
      lcd.print("V_in= ");  // вывод текста на дисплей
      lcd.setCursor(10, 0); // установка курсора в 2 строку  1 символ
      lcd.print(V_in, 4);  // вывод текста на дисплей, количество знаков после зяпятой
    
      lcd.setCursor(0, 1); // установка курсора в 2 строку  1 символ
      lcd.print("INPUT I= ");  // вывод текста на дисплей
      lcd.setCursor(8, 1); // установка курсора на 2 строку 13 символ
      lcd.print(I_in, 4); // вывод значения переменной, количество знаков после зяпятой
    
      delay(50);
    }
  8. В 01.10.2017 в 00:23, Электронщик сказал:

     

    При таких значениях получишь ШИМ 21кГц, ну используя функцию ардуино pwmWrite, которую ты используешь, скажи что получилось

    Как испробую обязательно отпишу. Сейчас просто нет возможность замерить нормально частоту.

×
×
  • Создать...