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

Трехфазный блок питания на АВР


Михаил N

Рекомендуемые сообщения

Задался целью собрать преобразователь трехфазного напряжения из однофазного. Делать решил на контроллере АтМега88 (я его слепила из того что было). Знаю что готовых решений в сети много, многие из них с различными регулировками и примочками в виде дисплеев, датчиков и т.п. Моей целью было по большей части разобраться с принципом работы самого контроллера и хотя бы немного научится программированию. Генератор реализован на таймерах, задействованы сразу три таймера и все их выхода (OC0A,OC0B, OC1A,OC1B,OC2A,OC2B). Частота и скважность не регулируется но при желании запилить можно. Вот сама работа:

#ifndef MAIN_H_
#define MAIN_H_
#define F_CPU 20000000
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include <stdio.h>
#include <stdlib.h>
#endif

void timer_ini(void)
 {
     TCNT0=0;
     TCNT1=85;
     TCNT2=170;
     ASSR |=0x00;
     TIMSK0, TIMSK1,TIMSK2 |=0x00;
     
     TCCR0A =0b11100001;
     TCCR0B =0b00000100; \\ последними тремя цифрами можно настроить нужную частоту
     OCR0A |=(1<<COM0A1),(1<<COM0A1);
     OCR0B |=(1<<COM0B1);
     OCR0B=OCR0A;
     
     TCCR2A =0b11100001;
     TCCR2B =0b00000110 ; \\ последними тремя цифрами можно настроить нужную частоту
     OCR2A |= (1<<COM2A1);
     OCR2B |= (1<<COM2B1),(1<<COM2B0);
     OCR2B=OCR2A;
      
     TCCR1A =0b11100001;
     TCCR1B =0b00000100; \\ последними тремя цифрами можно настроить нужную частоту
     OCR1A |= (1<<COM1A1);
     OCR1B |= (1<<COM1B1),(1<<COM1B0);
     OCR1B=OCR1A;
     
    GTCCR &=~(1<<TSM);
    GTCCR |= (1<<PSRASY);    
 }

void port_ini(void) 
{
       DDRD = 0b01101000;
      PORTD = 0b00000000;
      DDRB = 0b00001110;
      PORTB = 0b00000000;                
}

int main(void)
{
port_ini();
timer_ini();
      
    while(1)
    {
    }
}

Делал в Атмел студио 6.1. Для многих занимающихся этим профессионально может покажется смешным сие творение, но для человека который занимается этим всего неделю думаю весьма не плохо. По факту тут всего лишь настройка таймеров и их сдвиг относительно друг друга. При моделировании в протеусе показала 3 меадра. Рассчитано под схему трехфазного транзисторного моста, с управление последними через драйвера типа IR2110 - 13. Критика приветствуется, помощь в прикручивании сюда регулировки частоты тоже.

Новый рисунок.bmp

Схемы мостов и включения контроллера не привожу, в сети таких схем полно любая схема полумоста собранная 3 раза думаю будет неплохо работать, DIED TIME нет к сожалению, но насколько мне известно у драйверов есть время задержки включения и отключения транзисторов думаю его должно хватить. для совсем привередливых достаточно будет после каждого таймера  добавить строчку:

OСRnA=125; OCRnB=~125; где n - это номер таймера. Может это и не правильно но ступенька появляется и её должно хватить для избежания сквозных токов.

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...