Схемы на atmega8

     

     

    схемы на atmega8

    > // закрывающая скобка основной программы. Программаторы, средства разработки и отладки для DSP, средства разработки и отладки для ПЛИС-ПАИС. Доработка схемы управления электродвигателем. В схеме управления электродвигателем из предыдущей статьи используются четыре бита порта D микроконтроллера, количество используемых битов можно уменьшить что позволит управлять большим количеством двигателей, упростить программу и уменьшить занимаемый объем памяти в микроконтроллере. Если соединить последовательно диоды оптопар открывающих транзисторы на диагонали моста для каждой диагонали то подача сигнала с микроконтроллера на одну из последовательно соединенных пар диодов приведет к открытию транзисторов на одной из диагоналей. Таким образом можно использовать один бит порта для управления транзисторами на одной из диагоналей. Для управления электродвигателем можно использовать одну из схем на рисунке 1 или на рисунке 2. Рисунок 1 - Схема управления электродвигателем микроконтроллером 1. Рисунок 2 - Схема управления электродвигателем микроконтроллером 2. По идее в первой схеме для открытия нужных транзисторов в соответствующий бит подается ноль, например для открытия транзисторов VT2 и VT3 в нулевой бит порта D (PD0) подается ноль следовательно напряжение на нем падает это приводит к тому что к диодам оптопар DD3 и DD5 прикладывается прямое напряжение в результате этого диоды оптопар светятся а их транзисторы открываются что приводит к открытию транзисторов VT2 и VT3. Во второй схеме открытие происходит при подаче единицы, например при подаче единицы в нулевой бит порта D открываются диоды оптопар DD3 и DD5. Трансформаторный преобразователь напряжения. Транзисторный мост рассматриваемый, в предыдущих статьях, как схема для коммутации электродвигателя может использоваться как инвертор напряжения (преобразователь постоянного напряжения в переменное) если диагональные транзисторы включать поочерёдно с требуемой частотой. Используя трансформатор можно повысить или понизить это напряжение до требуемого уровня. Преобразованное напряжение можно выпрямить выпрямителем и получить преобразователь постоянного напряжения. Схема управления электродвигателем микроконтроллером дополнена транзисторами VT2, VT5, VT4, VT7 включенными как обратные диоды, в диагональ моста включена первичная обмотка повышающего напряжение трансформатора Т1. Схема представлена на рисунке 1. Рисунок 1 - Схема преобразователя. Первичная обмотка w1 содержит около 21 витков алюминиевым проводом, вторичная w2 около 400 витков тонким медным проводом, сердечник использован от трансформатора строчной развёртки ТВС-110П3. Напряжение на первичной обмотке составляло примерно 1.5 В. Из за повышенной частоты видно что светодиоды светятся непрерывно, в принципе в этих светодиодах нет необходимости. Напряжение на вторичной обмотке около 31В. Действующее напряжение трансформатор повышает примерно в 20 раз. Программа для управления электродвигателем микроконтроллером дополнена кодом для преобразователя напряжения. При нажатии на кнопку SB1 подключенную к четвёртому биту порта C срабатывает старый код который можно убрать. В коде для работы преобразователя напряжения, в отличии от кода для управления двигателем, используется функция _delay_us для создания задержки в микросекундах. Ниже приведен исходный код программы на языке C++ для микроконтроллера: #define F_CPU 8000000UL // 8 MHz. int main( void ) // начало основой программы. DDRD = 0xff ; /* все выводы порта D сконфигурировать как выходы */ DDRC = 0x00 ; //выводы порта С сконфигурировать как входы. PORTC = 0xff ; // установить "1" на всех выводах порта C, //включаем подтягивающие резисторы. while ( 1 ) // Бесконечный цикл. _delay_ms(250); // Ждем 250*8 мсек . _delay_ms( 250 ); // Ждем 250*8 мсек . _delay_ms( 250 ); // Ждем 250*8 мсек . _delay_ms( 500 ); // Ждем 500*8 мсек . _delay_us( 5 ); // Ждем 5*8 мксек . _delay_us( 5 ); // Ждем 5*8 мксек . > // закрывающая скобка основной программы. Исходный код компилировался в среде WinAVR, hex файл прошивался в микроконтроллер с помощью программы ponyprog2000. Удвоитель для преобразователя напряжения. Удвоитель напряжения осуществляет выпрямление и увеличение, в два раза, переменного напряжения. На рисунке 1 представлен трансформаторный преобразователь напряжения дополненный удвоителем напряжения на элементах VD5, VD6, C1, C2 и конденсатором С3 на выходе. Рисунок 1 - Трансформаторный преобразователь напряжения с удвоителем. При каждом полупериоде переменного напряжения, на обмотке w2, заряжается либо конденсатор C1 либо конденсатор C2. Конденсатор C3 заряжается суммой напряжений на конденсаторах C1 и C2. Положительное напряжение будет на выводе конденсатора C3 подсоединенном к катоду диода VD5, отрицательное на выводе подсоединенном к аноду диода VD6. Схема на рисунке 1 представляет собой преобразователь постоянного напряжения так как преобразует постоянное напряжение питания в повышенное постоянное напряжения на выходе к которому может быть подключена нагрузка. Постоянное напряжение на выходе составило примерно 80В: Использование удвоителя позволяет уменьшить количество витков вторичной обмотки повышающего трансформатора удвоитель также выпрямляет напряжение заменяя таким образом половину витков обмотки и выпрямитель, если на выходе требуется постоянное напряжение. Умножитель ун9/27-1.3 в преобразователе напряжения. Если напряжение на вторичной обмотке большое и/или напряжение требуется увеличить до большей величины то удобнее использовать готовый умножитель например ун9/27-1.3 из старого телевизора. Схема приведена на рисунке 1: Рисунок 1 - Преобразователь напряжения с умножителем ун9/27-1.3. Вместо микроконтроллера, в данном случае, лучше использовать схему попроще например мультивибратор или какой нибудь генератор колебаний. Микроконтроллер удобен тем что можно: изменять частоту управляющих импульсов, их скважность, осуществлять модуляцию, запускать и останавливать преобразование напряжения по заданной программе и в общем по всякому управлять работой преобразователя не внося изменений в схему или совершая какие либо другие сложные действия. На рисунке ниже чёрными стрелочками показаны выводы умножителя на которые подавалось переменное напряжение, красной и синей показаны выводы с которых снималось выходное напряжение. На изображении ниже показана собранная схема преобразователя с умножителем. Напряжение на выходе составило примерно 150 В. Светодиодная мигалка на микроконтроллере ATmega8. Использование микроконтроллеров существенно упрощает построение светодиодных мигалок. Светодиодная мигалка - это, наверное, одно из самых подходящих устройств для изготовления новичками в области построения схем на микроконтроллерах. Здесь приведен пример построения мигалки и исходный код для микроконтроллера ATmega8 на языке C++. Рассмотрим схему приведенную на рисунке: Пусть кнопка SB1 будет для переключения режима мигания, а кнопка SB2 для изменения частоты мигания. Исходный код приведен ниже: DDRD = 0xff; /* все выводы порта D сконфигурировать как выходы */ DDRC = 0x00; //выводы порта С сконфигурировать как входы. // включаем подтягивающие резисторы. int j=0; //для смены битов порта D. int d=20; //для изменения периода миганий. int sw=0; //для изменения режимов миганий. if (!(PINC & (1<<PINC4))) //если логический ноль на 4 бите порта С. sw++; //преключить режим миганий. if (!(PINC & (1<<PINC3))) //если логический ноль на 3 бите порта С.

     

    Предыдущая страница   Следущая страница




Рейтинг@Mail.ru