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

=AK=

Свой
  • Постов

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

  • Посещение

  • Победитель дней

    5

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


  1. Так всё таки, какую оптопару мне брать и

    У вас диплом "на бумаге", или макет будете делать? Если на бумаге, то не задавайте странных вопросов, берите ту, у которой лучше хар-ки, т.е. FODM3053. Если будете макет делать, то тоже не задавайте странных вопросов, берите ту, которую легче достать, т.е. МОС3023.

     

    как её связать с силовым симистором?

    Так, как рекомендовано в даташите.

  2. :) , в каком то даташите видел значение емкости между вх. и вых. оптопары, имеется ввиду, что если бы развязка была на трансе, то это значение было бы на порядок больше. А короткие импульсы из сети через эти емкости ставят "в позу" контроллер.

    Проходная емкость у обыкновенного резистора меньше, чем у оптопары. Так что, поставив простой резистор, безо всякой гальванической развязки можно обеспечить еще лучшую "емкостную развязку", см. http://www.caxapa.ru/lib/emc_immunity.html

  3. Люди, не так быстро.. чем оптрон то паршивый ? А то мало ли попадется

    У оптосимистора MOC302x макс напряжение всего 400 В и dV/dt всего 10 V/us, он будет ложно срабатывать от каждого кошкина бздеха.

     

    У xxx3053/xxx3053 напряжение 600 В и dV/dt = 1000V/us

  4. На счет МК, по крайней мере в AVR AT90S8515 там имеется подтягивающий резистор, которым можно управлять через регистр PORTx.Y, полагаю, что там подтягивающий резистор тогда не нужен.

    Это совсем разные вещи, да и встроенный в порт резистор очень высокоомный

  5. Получается розвязка всё-таки предпочтительней.

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

     

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

     

    Значит симистор нужно брать минимум на 4.5А. Слышал, что берётся ещё некоторый запас по току. Нужно ли брать его мне?

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

     

    По идее скачков тока у меня не должно быть. Програмно я буду делать "плавный пуск". То есть если нужно будет включить лампу с яркостью 50%, я буду делать это плавно. 10%.. задержка на n мс ..20%..задержка на n мс.30%..задержка на n мс.40%.. задержка на n мс .50%

    Рано или поздно ваш "плавный пуск" сбойнет и симистор сдохнет. Например, плохо затянутый контакт даст "дребезг" сетевого, из-за чего ваш мк получит ложный импульс "перехода сети через 0", в результате включит симистор не там, где вы хотели. Без запаса по току он сдохнет.

     

    Для фазного регулирования мне подходит MOC3023.

    Оптрон паршивый, но для диплома сойдет.

     

    А что с C1, R3, R4? Для чего они нужны, и как их рассчитывать. В документации указаны номиналы, но подойдут ли они для моего симистора?

    Резистор последователно с оптосимистором нужен для того, чтомы ограничить импульсный ток через оптосимистор и через упр. электрод силового симистора. Предельно-допустимый ток оптосимистора 1А, упр. упр. электрода - 2А, значит, надо ограничить ток на уровне не более 1А при любом сетевом. 220В+ 10% = 242 В rms, пиковое 342 В, значит, резюк не менее 342 Oм. И желательно проволочный.

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

    Светодиоды разных цветов имеют разное падение напряжения. При питании +3.3В вы можете использовать красные, зеленые и желтые. Для синих и белых требуется более высокое напряжение.

     

    Подключаете анод светодиода к +3.3В питания, катод - к резистору, второй конец резистора - к порту мелкоконтроллера. Величина резистора определяет ток через светодиод, т.е. - яркость. Для начала попробуйте примерно 1 кОм. Порт настраиваете на вывод, при выдаче в порт лог. 0 светодиод горит, при лог. 1 - погашен.

  7. Искал в интернете опредиление термина "гальваническая развязка". Хотел побольше узнать. Знаю лишь, что гальваническая развязка электрически разделяет вход и выход.

    "Гальваническая развязка" показывает, что сопротивление изоляции между двумя узлами сравнительно велико, а токи, протекающие между ними, весьма малы. Но сопротивление не бывает бесконечно большим, так что все довольно условно. То, что "велико" для одних задач, может оказаться "мало" для других, и т.п.

     

    При гальванической развязке передаётся сигнал, а не напряжение.

    А сигнал чем передается, святым духом, что ли?

     

    Мой руководитель по диплому сказал, что нужно, чтобы СУ и силовая часть были гальванически развязаны. Я подумал, что это делается чтобы в случае неисправности устройства (например фаза окажеться на корпусе устройства) человек управляющий устройством (с помощью кнопки, например) не оказался под опасным напряжением.

    Положим, кнопка делается обычно из пластмассы и сама является прекрасным изолятором, лучше оптрона.

     

    Однако какой-то резон в таких словах все же есть. Речь может идти о том, что человек по каким-то причинам имеет доступ (может коснуться) к токоведущим частям, гальванически связанным с микроконтроллером. В таком случае, действительно, все цепи, гальванически связанные с микроконторллером, должны относиться к классу "изолированных низковольтных" (safety extra low voltage) и должны быть гальванически изолированы от цепей, связанных с сетевым напряжением.

  8. Немного не понятно, как разряженый конденсатор будет ещё "разряжаться".

    При отрицательной полуволне на МТ2 ток заряда С1 меняет направление. Чтобы на это намекнуть, используется слово "разряжаться" в кавычках.

     

    Поскольку слова "заряжать конденсатор" и "разряжать конденсатор" можно толковать двояко. В первом случае слова "заряжать" и "разряжать" обозначают направление протекания тока, а величина напряжения между обкладками во внимание не принимается. Во втором случае слова "заряжать конденсатор" обозначают процесс, при котором увеличивается напряжение между обкладками по абсолютной величине, безотносительно к полярности напряжения.

     

    Получится на левой обкладке +30В относительно правой, а на правой -30В относительно левой....

    Напряжение, как известно, есть разность потенциалов. Вы какой техникум заканчиваете, кулинарный?

  9. Да, необходимо гальванически развязать систему управления и микроконтроллер. Чтобы в случае выхода из строя симмистора, например, не згорел контроллер.
    • "Симистор" пишется с одним "м".
    • "Сгорел" начинается с буквы "с".
    • В правильно сделанном устройстве микроконтроллер не сгорит при выходе из строя симистора, независимо от того, развязан он от симистора или нет. Нет такого закона природы, по которому микроконтроллер сгорел бы из-за симистора.
    • Кому нужен "живой" микроконтроллер в диммере, если там сгорел симистор? Такой диммер наверняка пойдет в помойное ведро. Микроконтроллер из него никто выковыривать не будет, симистор менять тоже.
    Так что такой ваш довод в пользу использования развязки в общем-то безоснователен. Во всем свете работают миллионы диммеров с микроконтроллерами, гальванически связанными с симисторами.
  10. Давным-давно использовал дешевое пластиковое оптоволокно диаметром 1 мм для 20 кВ развязки в высоковольтном устройстве. Отлично все работало. У Сименса (ныне Инфинеон) есть приемники и передатчики, заточенные под это волокно.

  11. Для развязки системы управления (МК) и силовой части (симмистора) возьму оптопару MOC3023.

    А в задании требуется развязка, или это ваша самодеятельность?

     

    Мощность буду расчитывать програмно, получая данные с датчика тока и напряжения.

    Сигналы от датчиков вы тоже собираетесь гальванически развязывать? Если нет, то нафиг нужна развязка симистора?

     

    Ещё нужно синхронизировать МК с синусоидой. Как это можно сделать?

    Вам ведь уже все разжевали, http://electronix.ru/forum/index.php?showtopic=39765

  12. Получается в рассматриваемой схеме на затвор подаётся управляющие импульсы только положительной полярности (G+)

    Нет, это неверно. Есть два случая:

     

    1. Напряжение на МТ2 положительно (относительно МТ1).

    Это обозначается МТ2+. Конденсатор С1 будет заряжаться током, втекающим через резисторы R1 и P1, при этом на правой обкладке С1 будет нарастать положительное напряжение (относительно левой обкладки, или относительно МТ1, что одно и то же). Когда напряжение на С1 достигнет порога срабатывания динистора D1 (типично - порядка 30 В), динистор почти мгновенно откроется, и к управляющему электроду симистора будет приложено напряжение, имеющееся на С1, почти целиком (падение напряжения на открытом динисторе D1 можно в первом приближении не учитывать, оно мало). Значит, напряжение на G положительно, это квадрант МТ2+G+

     

    Конденсатор С1 быстро разрядится током, протекающим по цепи: правая обкладка С1 - динистор D1 - управляющий электрод G - общий электрод МТ1 - левая обкладка С1. В этой цепи существенное сопротивление представляет собой только внутреннее сопротивление Rg управляющего электрода G (порядка нескольких сотен ом), оно-то и ограничит величину тока разряда. К сожалению, Филипс не нормирует величину сопротивления для симисторов, но если принять Rg=300 Ом, то при 30 В начальный ток равен 100 мА, что меньше, чем предельно-допустимый ток электрода G (2 А), но более чем достаточно для срабатывания симистора (для ВТ137 пороговый ток - trigger current - для квадранта МТ2+G+ равен 25...50 мА, в зависимости от буквы). Длительность импульса разряда примерно tr=2.2*Rg*С1=2.2*300*100нФ=66 мкс.

     

    Поскольку сопротивление цепи разряда вообще говоря не нормировано, приведенная схема не является хорошей. Правильно будет включить резистор сопротивлением примерно 220 Ом последовательно с динистором, а не полагаться на "авось".

     

    2. Напряжение на МТ2 отрицательно.

    Это обозначается МТ2-. Конденсатор С1 будет "разряжаться" током, вытекающим через резисторы R1 и P1, при этом на правой обкладке С1 будет нарастать отрицательное напряжение. Когда напряжение на С1 по абсолютной величине достигнет порога срабатывания динистора D1 (типично - порядка тех же 30 В, но отрицательных, т.к. динистор - тоже симметричный прибор, как и симистор), динистор почти мгновенно откроется, и к управляющему электроду симистора будет приложено отрицательное напряжение, имеющееся на С1. Значит, напряжение на G будет отрицательно, это квадрант МТ2-G-

  13. По какому пути заряжается конденсатор?

    Левый (по схеме) вывод симистора (кстати, "симистор" пишется с одним "м") будем считать "общим" Это тот терминал, который обычно обозначается Т1 или МТ1. Управляющий электрод называется G (от слова "gate" - ворота). Силовой электрод называется Т2 или МТ2.

     

    Симистор управляется напряжением между электродами G и МТ1, или током, протекающим между G и МТ1/ Если напряжение на G относительно МТ1 положительно, обозначим это G+. Если отрицательно, обозначим G-.

     

    Силовое напряжение на МТ2 относительно МТ1 тоже может быть или положительно (обозначим МТ2+), или отрицательно (обозначим МТ2-).

     

    Симистор работает во всех четырех квадрантах. Это значит, что он откроется при любой комбинации, и при G+MT2+, и при G-MT2+, и при G+MT2-, и при G-MT2-.

     

    Приведенная мною схема управляет симистором в двух квадрантах, G+MT2+ и G-MT2-. В этих двух квадрантах его чувствительность обычно одинакова, см. http://home.planet.nl/~midde639/specs/bt137.pdf

  14. в схеме есть еще аналоговое питание +-12.6В, как реализовать схемотехнически проверку наличия сигнала питания

    В простейшем случае можно так:

    post-2483-1196490888_thumb.jpg

     

    R1 является частью делителя; D1 ограничивает напряжение до уровня менее 4В; R2 вместе с R3 слегка делят ограниченное напряжение, чтобы напряжение на пине не превысило предельно-допустимого, поскольку 4В - это все-таки многовато. В этой схеме пин дискретного ввода микроконтроллера используется в качестве плохонького компаратора, который срабатывает при напряжении примерно половина питания, т.е. 1.65 В, плюс-минус дофига. На передаточной характеристике (внизу) легко найти, при каком входном напряжении мк должен "увидеть" лог.0, а при каком лог.1, при указанных номиналах порог будет примерно 7 В.

     

    post-2483-1196491398_thumb.jpg

     

    Для более точного порога срабатывания можно применить компаратор или - более просто и изящно - стандартный маломощный супервизор питания с открытым коллектором. Напряжение "питания" такому супервизору делается из входного 12.6В при помощи резистивного делителя.

  15. Использую такую простую схему и доволен.

    чуть не забыл самую важную деталь - X7R 0.22 мкф - конденсатор интегрирует напряжение за полупериод, к концу на нем вольт 6 -8, чуть за мгновение перед переходом через 0 открывается транзистор и на выходе отрицательный импульс.

    Хорошая схема. Я бы посоветовал резисторы уменьшить до 330к и поставить транзюк BC547B с большим усилением, иначе ток через оптрон может быть маловат про малом сетевом напряжении.

  16. Изучил описание на МК вдоль и поперек, но так и не нашел- какой же ток тянет пин вывода порта, ток утечки - да, 10 мкА, но ещё есть "втекающий" ток- тоже 10 мкА (может опечатка).

    Обычно в даташите оговариваются выходное напряжение лог."0" и лог."1" при определенном токе нагрузки. Типа, "напряжение лог. нуля не более 0.8 В при втекающем в пин токе 8 мА".

  17. Оптрон для розвязки?

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

  18. А как рассчитывать номиналы в Вашей схеме ? Эту схему мне рекомендовали, но толком не могли рассказать как рассчитать номиналы.

    Обозначим R12 = R1 || R2 = (R1*R2)/(R1 + R2), в моей схеме R12=0.82k || 1.7k = 0.553k

     

    Ку = 1 + R3/R12, в моей схеме Ку = 1 + 6.8k/0.533k = 13.29

     

    Hапряжение "виртуального нуля" Vo = (Vcc*R2)/(R1 + R2), в моей схеме Vo = (5V*1.7k)/(0.82k + 1.7k) = 3.37 V

     

    При подаче на вход Vin=Vo на выходе будет Vout=Vo. При подаче на вход произвольного Vin на выходе будет Vout = (Vin - Vo)*Ку + Vo

     

    Чтобы уменьшить пролезание пульсаций, разделите R1 на два последовательно включенных резистора, и поставьте электролит. конденcатоp 100 мкФ между их средней точкой и землей. И еще, увеличьте номиналы всех резисторов в 10 раз, это уменьшит потребляемый ток и улучшит подавление помех кондером.

     

    post-2483-1196033634_thumb.jpg

     

    PS: Для подавления высокочастотных помех и улучшения стабильности желательно включить керамич. кондер параллельно R3, емкостью не менее 10 пФ (чем больше тем лучше, насколько полоса сигнала позволяет).

  19. Как реализовать усиление постоянного сигнала изменяющегося от 3,2В до 3,4В (в зависимотси от положения датчика). Хотелось что бы этот диапазон от 3,2 В до 3,4 был от 1 до 3В (удобнее на АЦП обработать).

    Например, так:

     

    post-2483-1195958651_thumb.jpg

     

    Номиналы я не посчитал, а грубо подобрал, "на глазок". При указанных номиналах передаточная характеристика такая:

     

    post-2483-1195958665_thumb.jpg

  20. Сомневаюсь в правильности написания.Может кто глянет,какие ошибки.

    По идее должна считать период

    модель AT90S2313

    К сожалению, не знаком с системой команд этого проца. Тем не менее, попробую прокомментировать то, что понял

      rjmp  Init     
    ; После прыжка на Init вы, похоже, никогда не вернетесь назад, поскольку 
    ; у вас здесь нет меток, куда бы можно было прыгнуть. А коль не вернетесь, 
    ;  то нафига вам следующие три команды?
      rjmp  ext0   
      reti              
      rjmp  CUPT1 
    
    Init:программа инициализации 
    -//-//-//-//-//-//-//-//-
    -//-//-//-//-//-//-//-//-
    -//-//-//-//-//-//-//-//
    ext0:
      in   PеrL,ICR1L;
      in   PеrH,ICR1H;
    CUPT1:
      in   temp,ICR1L    ;сохраняем захваченное значение
      in   tempH,ICR1H;в рабочих регистрах
    ; А сколько времени успело пройти с того момента, когда вы 
    ; исполнили команды под меткой ext0: ? Всего ничего. Вряд ли
    ; это соответствует вашим намерениям.
    
      sub  temp,PеrL;вычисляем разность между 
      sbc  tempH,PеrH     ;старым и новым значением
    ; Неверно, поскольку вычитаются 16-битные числа. Значит,
    ; обязательно должен обрабатываться перенос из старшего байта в младший 
    
      in  PеrL,ICR1L;запоминаем новое  
      in  PеrH,ICR1H;значение
    ; За время, пока вы вычисляете разность, ICR1L и ICR1H могут
    ; успеть измениться. Сохранять надо бы  temp и tempH. 
    
    ; А где цикл? А куда выводятся результаты?

    В общем, впечатление такое, что это работать не будет никак, уж извините.

  21. Всем доброго времени суток.

    Помогите пожайлуста найти ошибку .

    (Вкратце о программе - сумматор, состоящий из 2-х полусумматоров и соединенных при помощи логического ИЛИ)

    Вот программка:

    Да как тут найдешь ошибку, если вы используете где-то в другом месте объявленные компоненты? А "программка" ваша в сущности есть текстовое описание схемы, которая соединяет компоненты в одно целое.

     

    Непонятно, зачем вы так сложно делаете простейшие вещи. Вот как можно было бы сделать "в лоб" приведенную вами схему

    library ieee;
    use ieee.std_logic_1164.all;
    
    entity volladdierer is
    Port (a_in, b_in, u_in: In bit;
            s_out, u_out: Out bit);
    end;
    
    architecture Struktur of volladdierer is
    
    begin
    my_p : process(a_in, b_in, u_in)
    variable tmp1, tmp2, tmp3 : bit;
    begin
      tmp1 := a_in xor b_in;
      tmp2 := a_in and b_in;
      s_out <= tmp1 xor u_in;
      tmp3 := tmp1 and u_in;
      u_out <= tmp2 or tmp3;
    end  process my_p;
    
    end Struktur;

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