Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Обзор действующих способов и систем



Введение

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

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

- реализация законов формирования (моментов появления) управляющих импульсов ключевых элементов преобразователя (оптотиристоров, транзисторов и др.);

- управление режимами работы преобразователя (включение, отключение, реверсирование и др.);

- защита основных узлов и элементов при возникновении внешних или внутренних аварий и повреждений (входных перенапряжений, перегрузок, коротких замыканий, отказов отдельных элементов и др.);

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

- обмен информацией между преобразователем и другими объектами или оператором.


 

 

Обзор действующих способов и систем

 

Внешняя характеристика выпрямителя

Внешняя характеристика выпрямителя - зависимость средневыпрямленного напряжения от изменения тока нагрузки. Схема замещения выпрямителя в цепи постоянного тока имеет вид (рисунок 1.6).

Рисунок 1.6 - Схема замещения выпрямителя в цепи постоянного тока

 

Напряжение выпрямителя определяется выражением

где ;

U0хх - максимальный уровень напряжения на " холостом ходу" неуправляемого выпрямителя без учета противоЭДС (Uпор ), т.е.,

Nд - число одновременно коммутируемых элементов (в однополупериодной схеме Nд =1, в двухполупериодной Nд =2);

Rкз - потери в обмотке трансформатора, определяемые из опыта " короткого замыкания";

Rд - динамическое сопротивление диода;

Rфp - активные потери в дросселе сглаживающего фильтра.

Уравнение для определения среднего напряжения на выходе нагруженного выпрямителя (рисунок1.7)

где .

Рисунок 1.7 - Внешняя характеристика выпрямителя.

Напряжение в точке " а" характеристики определяется из выражения , где

Nс - нестабильность входного напряжения (относительные единицы),

U2ном - номинальное значение напряжения во вторичной цепи трансформатора.

Напряжение в точке " б" характеристики равно

Под семейством внешних характеристик понимается построение U0=f(I0 ) с учетом отклонения напряжения сети и в диапазоне тока (I0max…I0min ). При построении регулировочной характеристики в управляемом выпрямителе учитываются значения напряжения в точках " а" и " б" и диапазон отклонения напряжения от номинального (Nc ).

Выбор типа вентилей

 

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

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

Произведем расчет максимально допустимого прямого тока через оптотиристор.

Среднее значение тока вентиля:

Iв = K тв * Id

где KTB - коэффициент схемы.

KTB=IB/IC=0, 333

Iв = 0, 333*50=16, 665 А.

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

UВМ = Ud0 * KНВ ,

где КНВ - коэффициент схемы;

KНВ=UKM/Ud0=2, 094

UВМ = 240*1, 57 = 376, 8 В.

Выберем по справочнику прибор со следующими параметрами:

• Тип прибора– TO-142

• Максимально допустимый действующий ток в открытом состоянии – 50 А.

• Повторяющееся импульсное напряжение в закрытом состоянии и повторяющееся импульсное обратное напряжение – 200 – 1200 В.

• Отпирающий постоянный ток управления: наименьший постоянный ток управления, необходимый для включения оптотиристора не более –1.8 А.

• Отпирающее импульсное напряжение управления не более–3.5 В.

• Максимально допустимый действующий ток в открытом состоянии -79А

 

Разработка схемы управления

Блока управления

Функциональная схема устройства регулирования выходного переменного тока соответствующая техническому заданию на рисунке 3.1

Она состоит из следующих функциональных звеньев:

- блок клавиатуры;

- блок синхронизации

- микропроцессорный блок управления;

-устройство сопряжения;

- повторитель

Рисунок 3.1 Схема функциональная. Устройства регулирования выходного переменного тока силового трансформатора.

Блок синхронизации (БС) обеспечивает формирование сигнала при переходе сетевого переменного напряжения через нуль в момент окончания каждого полупериода.

Устройство сопряжения с объектом (УСО) - служит для управления силовыми оптотиристорными ключами, которые подключают нагрузочный трансформатор ТН к сети переменного тока

Блок ввода аналоговых сигналов (БВАС) предназначен для ввода аналоговой информации: значений напряжения в первичной цепи, значений тока в выходной обмотке переменного тока.

Блока управления

Основу принципиальной схемы микропроцессорного блока управления оптотиристорного регулятора трехфазного напряжения с микропроцессорным управлением составляет микропроцессорный контроллер, реализованный на микросхеме DD1 типа AVR ATmega 16.

Микроконтроллеры AVR фирмы Atmel, семейства Mega являются 8 - разрядными микроконтроллерами, предназначенными для встраиваемых приложений. Они изготавливаются по малопотребляющей КМОП-технологии, которая в сочетании с усовершенствованной RISC архитектурой позволяет достичь наилучшего соотношения быстродействие/ энергопотребление.

Микроконтроллеры описываемого семейства являются наиболее развитыми представителями микроконтроллеров AVR [6].

Основные характеристики ATmega 16:

- 118 команд, большинство которых выполняется за один машинный цикл;

- 8 Кбайт Flash ПЗУ программ, с возможностью внутрисистемного перепрограммирования и загрузки через SPI последовательный канал, 1000 циклов стирание/запись;

- 512 байтов ЭСППЗУ данных, возможностью внутрисистемного перепрограммирования и загрузки через SPI;

- последовательный канал, 100000 циклов стирание/запись;

-512 байтов встроенного ОЗУ;

- 32 х 8 бит регистра общего назначения;

- 32 программируемые линии ввода/вывода;

- 8-канальный 10-разрядный аналого-цифровой преобразователь;

- 16-разрядный и 32-разрядный формат команд;

- программируемый полный дуплексный UART;

- диапазон напряжений питания от 2, 7 В до 6, 0 В;

- полностью статический прибор - работает при тактовой; частоте от 0 Гц до 16 МГц;

- два 8-разрядных таймера/счетчика с отдельным прескалером и режимом сравнения;

- 16-разрядный (с режимами сравнения и захвата) таймер/счетчик;

- три ШИМ канала;

- внешние и внутренние источники сигналов прерывания;

- программируемый сторожевой таймер с собственным встроенным генератором;

- встроенный аналоговый компаратор;

- встроенные часы реального времени с собственным встроенным; генератором и режимом счетчика

- блокировка режима программирования;

- режимы энергосбережения: пассивный (idle), экономичный (power save) и столовый (power down);

- встроенная схема сброса по подаче питания;

- промышленный (-40°С...85°С) и коммерческий (0°С...70°С)

диапазоны температур.

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

Рассмотрим типовую схему включения данного микроконтроллера.

Конденсаторы С13 и С14 (рисунок 3.2) совместно с кварцевым резонатором ZQ1 составляют генератор тактовых импульсов, необходимый для синхронизации контроллера. Номиналы приборов выбираются в соответствии с рекомендациями фирмы-изготовителя, приведенными в руководстве по эксплуатации [3], и составляют:

Из ряда Е96 выбираем ближайшее значение 33 пФ, а в качестве конденсаторов С1 и С2 - конденсаторы типа В37941-К9105-К0 емкостью 33 пФ, напряжением 16В.

Будем использовать кварцевый резонатор типа HC-49SM частотой 10 МГц.

С13 = С14 - 33 пФ;

ZQ1 = 4 МГц.

Рисунок 3.2 Схема подключения кварцевого резонатора

 

Резистор R2 образует схему начальной установки выбранного микроконтроллера, то есть обеспечивают сброс микроконтроллера при включении напряжения питания. Их номиналы определяются исходя из рекомендаций фирмы-производителя, приведенных в руководстве по эксплуатации [3], для корректного сброса прибора на входе «RST» микроконтроллера должен обеспечиваться низкий уровень сигнала в течение времени, соответствующего двум машинным циклам МПК и определяемого постоянной времени заряда конденсатора С1

R2 = 10 кОм.

Из ряда стандартных значений Е24 выбираем ближайшее значение ЮкОм, а в качестве резистора R2 - резистор типа Р1-12-0, 25Вт-10 Юм ±5%-А-М. Конденсаторы С1 и С2 являются фильтрующими по питанию. Они необходимы для устранения влияния высокочастотных помех на работу микроконтроллера. Номиналы приборов выбираются в соответствии с рекомендациями фирмы-изготовителя, приведенными в руководстве по эксплуатации [3], и составляют:

С24 = С26 = 0, 1 мкФ.

Из ряда Е96 выбираем ближайшее значение 0, 1 мкФ, а в качестве конденсаторов С24 и С26 - конденсаторы типа В37941-К9105-К0 емкостью 0, 1 мкФ, напряжением 16В.

Вывод Амплитудного значения тока и запрос ввода исходных данных осуществляется при помощи жидкокристаллического индикатора со встроенным символьным контроллером, использующим таблицу ASCII для русских букв, подключенный к портам PD0-PD7, РС5 - РС7. Он реализован на микросхеме HD44780. Резистор R27 предназначен для регулировки контрастности ЖКИ.

Микросхема DD3 типа MAX232S представляет собой стандартную схемотехническую реализацию устройства согласования уровней КМОП-логики микроконтроллера и уровней интерфейса RS-232C последовательного порта компьютера.

Конденсаторы С29, С34, С35, С48, С49 образуют типовую схему включения микросхемы DD3. Их номиналы выбираются из справочного руководства по эксплуатации фирмы-изготовителя и составляют:

С29 = С35 = С48 = С49 = 0, 1 мкФ;

С34 =10 мкФ.

Из ряда Е96 выбираем ближайшее значение ОД мкФ, а в качестве конденсаторов С29, С35, С48, С49 - конденсаторы типа В37941-К9105-К0 емкостью 0, 1 мкФ, напряжением 16 В.

Из ряда Е96 выбираем ближайшее значение 10 мкФ, а в качестве конденсатора С34 - конденсатор типа В45197-А4686-М50 емкостью 10 мкФ, напряжением 16 В.

 

Разработка схемы клавиатуры

 

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

Рисунок 3.5 - Схема подключения клавиатура к микроконтроллеру

 

Диоды VD15-VD17 предохраняют линии порта вывода от возможного короткого замыкания при одновременном нажатии кнопок в одном столбце. Сопротивления R25 - R28 задают входные токи на порты микроконтроллера. Рассчитаем номинальные значения резисторов R25 - R28.

Входные токи на выводы портов в соответствии с технической документацией должны быть не более 2 Ом А, значит, ток через сопротивление не должен превышать этого значения. Зададимся значением входного тока равного 1 мА, что удовлетворяет выше приведенному условию.

Исходя из изложенного выше вычислим величину сопротивления R25.

где Un - напряжение источника питания (Un = 5В);

1ВХ - входные токи портов ввода микроконтроллера (1вх = 1мА).

Мощность, рассеиваемая на резисторе, находится по формуле (3.10)

Выбираем следующие типы резисторов R25-R28:

R25-R28 - Р1-12-0, 25Вт-5 кОм±5%-А-М.

Выбираем диоды VD15 – VD17, рассчитанные на ток 1мА (КД522Б).

 

Напряжения фирмы LEM.

В течение 25 лет существования (с 1972 по 1997) компания ЛЕМ создавала широкий диапазон гальванически изолированных датчиков тока и напряжения, ставшие стандартами в области преобразований. Выбор датчика связан как с техническими, так и с экономическими параметрами. Среди технических параметров особое внимание нужно уделить следующим:

- электрические воздействия;

- механические воздействия;

- температурные воздействия;

- условия эксплуатации.

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

Эффект Холла вызывается силой Лоренца, которая действует на подвижные носители электрических зарядов в проводнике, когда на них действует магнитное поле перпендикулярно направлению тока. Тонкая пластина полупроводника пересекается вдоль током управления Iупр. (Рисунок 3.6). Магнитный поток В генерирует силу Лоренца FL, перпендикулярно направлению подвижных носителей зарядов, которые и образуют ток. Это ведет к изменению числа носителей зарядов на обоих концах пластины, и создает разницу потенциалов, которая является напряжением Холла VH.

 

Рисунок 3.6 — Пояснение электрических параметров эффекта Холла.

 

В то время как датчики прямого усиления дают выход напряжения Uвых, пропорциональный увеличенному напряжению Холла VH, компенсационные датчики обеспечивают выходной ток, пропорциональный напряжению Холла, который действует как сигнал обратной связи, чтобы компенсировать магнитное поле, создаваемое первичным током BP, магнитным полем, создаваемым полем выходного тока BS. Выходной ток намного меньше, чем IP, потому что катушка с NS витками предназначена для генерирования аналогичного магнитного потока (ампер-витков). Таким образом:

Следовательно, индукция BS эквивалентна BP и их соответствующие ампер витки компенсируют друг друга.

Таким образом, система действует при нулевом магнитном потоке в сердечнике (рисунок 3.7)

Рисунок 3.7 - Пояснение принципа работы компенсационного датчика.

Компенсационные датчики способны измерять постоянный ток, переменный ток и токи иной формы с гальванической развязкой. Они выделяются следующим:

- отличная точность;

- очень хорошая линейность;

- малый температурный дрейф;

- очень быстрое время отклика и широкий частотный диапазон;

- не приводят к дополнительным потерям в измерительной цепи;

В качестве датчика тока был выбран LTS 25-NP фирмы LEM. Это датчик для электрического преобразования токов: постоянного, переменного, импульсного и т.д. в пропорциональный выходной cигнал с гальванической развязкой между первичной(силовой) и вторичной (измерительной) цепями.

Электрические параметры датчика тока LTS 25-NP:

- IPN Номинальный входной ток, эфф.знач. 12 A ∙ вит;

- IP Диапазон преобразования 0.. ± 80 A ∙ вит;

- VSN Номинальное аналоговое выходное напряжение 2.5 ± (0.625·IP/IPN) B;

- NS Число вторичных витков (± 0.1 %) 2000;

- R L Сопротивление нагрузки ≥ 2 кОм;

- RIM Встроенный измерительный резистор (± 0.5 %) 50 Ом;

- TCRIM Температурный дрейф измерительного резистора < 50 ppm/K;

- VC Напряжение питания (± 5 %) 5 B;

- IC Потребляемый ток при IP = 0, VC = 5 V; 20+IS+(VOUT/RL)мА;

- Vd Электрическая прочность изоляции, 50 Hz, 1 мин 3 кВ.

Многопредельный компенсационный датчик на эффекте Холла, однополярное питание +5В, разработан для установки на печатную плату, изолирующий пластиковый негорючий корпус, адаптирован к применению в микропроцессорных и микроконтроллерных системах, встроенный измерительный резистор, расширенный диапазон преобразования, TA= - 40°C.. + 85°C

Преимущества:

- отличная точность, хорошая линейность;

- очень низкий температурный дрейф;

- оптимальное время задержки;

- широкий частотный диапазон;

- высокая помехозащищенность;

- высокая перегрузочная способность.

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

Коэффициент усиления неинвертирующего усилителя:

Т.к. усилитель неинвертирующий, то

Таким образом требуемые номиналы резисторов равны:

Обоснование выбора датчика напряжения

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

В датчики типа С встроены два сердечника Т1 и Т2, сделанные из магнитомягкого материала (Рисунок 3.8), каждый из которых имеет двухсекционную вторичную катушку NS с равным количеством витков. Первичная катушка NP – общая на два сердечника. Две вторичные катушки связаны последовательно. Генератор сигналов прямоугольной формы управляемой частоты (1) подает компенсационный ток IS на вторичную катушку (обмотку) сердечника Т1 (точка А), куда поступает и ток намагничивания Iµ.

Рисунок 3.8 структурная схема датчика типа – С

 

Общая для двух вторичных обмоток точка В связана с выходом активного фильтра 2, который поглощает ток намагничивания Iµ сердечника Т1. Ток Iµ возникает в цепи (меняя полярность напряжения, управляющего генератором прямоугольных импульсов) сразу как только появляется насыщение. Полученная кривая гистерезиса симметрична и упомянутое число вторичных ампер-витков точно соответствует числу первичных ампер-витков.

(IS + Iµ) x NS = IP x NP

Так как ток намагничивания поглощается фильтром, ток, находящийся в Т2 – вторичный ток IS, без наложения пульсаций. Выходной ток в точке С, следовательно, будет:

IS = IP x NP / NS,

который преобразуется в выходное напряжение VM с помощью конвертера ток/напряжение 4. Электронная цепь разработана таким образом, чтобы автоматически компенсировать смещение выходного сигнала усилителя и просадку напряжения в пределах широкого температурного диапазона, исключая, тем самым, необходимость регулирования.

 

Датчики напряжения типа С

Конструкция датчика предусматривает встроенный первичный резистор. Количество первичных ампер-витков меньше, чем у датчиков на эффекте Холла компенсационного типа (CV3-...означает 3 ампер-витка).

Датчики напряжения CV могут преобразовывать напряжение до 7000 В с точностью 0.2 % и частотным диапазоном от 0 до 700 кГц.

В качестве датчика напряжения был выбран CV3 – 200 фирмы LEM. Это датчик для электронного преобразования напряжений: постоянного, переменного, импульсного и т.д. в пропорциональный выходное напряжение с гальванической развязкой между первичной(силовой) и вторичной (измерительной) цепями.

Электрические параметры датчика тока CV3 – 500:

- VPN Номинальное входное напряжение, эфф.знач. 350 В;

- VP Диапазон преобразования 0.. ± 500 B;

- VSN Номинальное аналоговое выходное напряжение 10 В;

- KN Коэффициент преобразования 500В/10В;

- RL Нагрузочный резистор ≥ 1 кОм;

- CL Емкость нагрузки ≤ 5нФ;

- Vc Напряжение питания (± 5 %) ± 15В;

- Vd Электрическая прочность изоляции, 50 Гц, 1 мин, 6 кВ.

Преимущества:

- отличная точность;

- очень хорошая линейность;

- низкий температурный дрейф;

- высокая помехоустойчивость;

- малое время отклика;

- широкий частотный диапазон.

Так как АЦП работает со «смещенными» аналоговыми сигналами. Нулевое входное напряжение воспринимается как отрицательное, + 2, 5 В на входе воспринимается как нуль, +5 В на входе воспринимается как положительное, равное +2, 5 В. В связи с этим ставится преобразователь уровня, представленного в виде делителя напряжения. Принимаем значение R2 = 1кОм, тогда

Для согласования выходной цепи датчика и входной цепи встроенного в микроконтроллер АЦП используется повторитель напряжения построенный на микросхеме DA3 типа ОР37.

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

 

 


 

Разработка ПО МПС

 

Алгоритм работы устройство

 

Данная программа предназначена для управления работой всего устройства в целом и выполнения функций в зависимости от нажатия той или иной кнопки.

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

Далее микроконтроллер ожидает ввода значений тока, путем ввода значения напряжения изад соответствующего этому току, и выводит полученные значения на ЖКИ. После выполнения подпрограммы устранения броска тока микроконтроллер начинает выполнение основной программы, то есть определяет переход через ноль одной из трех фаз, затем запускается таймер ТС 0, и по прерыванию переполнения формирует управляющий для тиристора. Вследствие этого появляется напряжение на нагрузке. Начинается опрос измерительного канала, то есть микроконтроллер получает данные с датчика тока, сохраняет их в памяти, производит их непрерывное сравнение и таким образом определяет максимальное значение тока за период. При частоте работы АЦП 100 кГц будет производиться примерно 1828 опросов за период, что позволит определять амплитудное значение тока с минимальной погрешностью. Определив амплитудное значение тока микроконтроллер решает разностное уравнение и определяет следующий угол открытия и формирует управляющий сигнал для открытия ключа тем самым меняя угол открытия тиристоров в соответствии с выбранным законом регулирования. После этого данные о токе нагрузки выводятся на жидкокристаллический дисплей.

Рисунок 18. Схема алгоритма работы устройства.

 


 

Заключение

В результате выполнения выпускной квалификационной работы был разработан трехфазный управляемый выпрямитель с микропроцессорной системой управления. Предназначенный для регулирования выходной величины выпрямленного напряжения (тока). Устройство состоит из силой части и микропроцессорной системы управления.

Выбранные датчики тока и напряжения фирмы LEM позволяет определить выходные значения тока и напряжения в цепи нагрузки.

В качестве микропроцессорного блока управления был взят программируемый контроллер ATmega16. Применение данного микроконтроллера позволило значительно упростить схему системы управления, увеличить надёжность и функциональность выпрямителя.


 

Список литературы

Лачин В. И. Электроника: учебное пособие для вузов / Савелов Н. С./ Ростов н/Д: Феникс, 2009.

Полупроводниковые приборы: Транзисторы. Справочник/ В.Л. Аронов, А.В. Баюков, А.А. Зайцев и др. Под общ. Ред. Н.Н. Горюнова. – М.: Энергоатомиздат, 1983. – 904 с.

Савин М. М. Теория автоматического управления: учеб. пособие для вузов /Елсуков В. С., Пятина О. Н.; под ред. В.И.Лачина; - Ростов н/Д: Феникс, 2007.

Электроника и микропроцессорная техника. Дипломное проектирование систем автоматизации и управления: учебник/ Под ред. В.И.Лачина, Ростов н/Д: Феникс, 2007., 576 с.

Григорьян С.Г. Разработка конструкции электронного узла: Методические указания к практическим занятиям по дисциплине “Конструирование электронных устройств” ЮРГТУ, Новочеркасск: ЮРГТУ, 2005. 55 с.

Немцов М. В. Электротехника и электроника: учебник для вузов / М.: Высш. шк., 2007.

Справочник по электролитическим конденсаторам/ М. Н. Дьяконов, В. И. Карабанов, В. И. Присняков и др.; Под общ. ред. И. И. Четверткова и В. Ф. Смирнова. – М.: Радио и связь, 1983. – 576 с.

Бессонов Л. А. Теоретические основы электротехники. Москва.: Высшая школа, 1996.

Резисторы: Справочник/В.В. Дубровский, Д.М. Иванов, Н.Я. Пратусевич и др.; Под ред. И.И. Четверткова и В.М. Терехова. – 2 изд., переработанное и дополненное. – М.: Радио и связь, 1991. – 528 с.

Васильев А. Е. Микроконтроллеры. Разработка встраиваемых приложений: учеб. пособие для вузов / - М.: БХВ-Петербург, 2008. - 304 с.

В.Г. Костиков, Е.М. Парфенов, В.А. Шахнов «Источники электропитания электронных средств» Москва, Горячая линия – Телеком 2001г.

Крылов Е. В. Техника разработки программ. Кн. 2: учебник для вузов, в 2 кн. / Острейковский В. А., Типикин Н. Г.; - М.: Высш. шк., 2008. - 469 с.

Тавернье К. PIC – микроконтроллеры. Практика применения. М.ДМК Пресс, 2003.

Пирогова Е. В. – Проектирование и технология печатных плат, Москва, Форум, Инфра-М, 2005г. – 560 с.

Хоровиц П., Хилл У. Искусство схемотехники в 2-х томах. Монография. Издание 3-е, стереотипное, Москва, «Мир», 1986г.

Семенов Б. Ю. Силовая электроника: от простого к сложному Серия: Библиотека инженера/ М.: СОЛОН-Пресс, 2006.

Гусев В. Г. Электроника и микропроцессорная техника: учебник для вузов / Гусев Ю. М.; / М.: Высш. шк., 2008.

Бондарь И. М. Электротехника и электроника / Ростов н/Д: Изд. центр " МарТ", 2005.


 

Приложение А

(обязательное)

Перечень элементов.

 


 

Приложение Б

(справочное)

Листинг программы и подключаемых модулей.

 


 

Модуль LCD.c:

НАЧАЛО функция отправки команды на LCD

void send_cmd_to_LCD(unsigned char command)//приняли в переменную command код команды для отправки на LCD

{

 

PORTC = (command & 0xF0); //устанавливаем ножки МК(PC7, PC6, PC5, PC4) согласно с старшими 4мя битами(тетрада) команды

PORTC& =~(1< < 0); //PC0(RS) установили 0, т.е. передаем команду(не данные)

PORTC|= (1< < 1); //PC1(E) синхронизация

_delay_us(2);

PORTC& =~(1< < 1); //PC1(E) синхронизация

 

PORTC = ((command & 0x0F) < < 4); //устанавливаем ножки МК(PC7, PC6, PC5, PC4) согласно с младшими 4мя битами(тетрада) команды

PORTC& =~(1< < 0); //PC0(RS) установили 0, т.е. будим передаем команду

PORTC|= (1< < 1); //PC1(E) синхронизация

_delay_us(2);

PORTC& =~(1< < 1); //PC1(E) синхронизация

 

_delay_us(50); //операция длится больше 43 микросекунд согласно спецификации

}

//КОНЕЦ функция отправки команды на LCD

 

 

//НАЧАЛО функция отправки 8 бит данных на LCD

static int send_char_to_LCD(char data, FILE *stream)//приняли в переменную data символ для отправки на LCD

{

PORTC = (data & 0xF0); //устанавливаем ножки МК(PC7, PC6, PC5, PC4) согласно с старшими 4мя битами(тетрада) команды

PORTC|= (1< < 0); //PC0(RS) установили 1, т.е. передаем команду

PORTC|= (1< < 1); //PC1(E) синхронизация

_delay_us(2);

PORTC& =~(1< < 1); //PC1(E) синхронизация

 

PORTC = ((data & 0x0F) < < 4); //устанавливаем ножки МК(PC7, PC6, PC5, PC4) согласно с младшими 4мя битами(тетрада) команды

PORTC|= (1< < 0); //PC0(RS) установили 1, т.е. передаем данные

PORTC|= (1< < 1); //PC1(E) синхронизация

_delay_us(2);

PORTC& =~(1< < 1); //PC1(E) синхронизация(забирай)

 

_delay_us(50); //операция длится больше 43 микросекунд согласно спецификации

 

return 0;

}

//КОНЕЦ функция отправки 8 бит данных на LCD

 

 

//НАЧАЛО функция очистки экрана 1)Clear Display

void cls()

{

send_cmd_to_LCD(0x01); //отправляем код команды очистки экрана на LCD

_delay_ms(3); //ждем больше 1.53ms согласно спецификации

}

//КОНЕЦ функция очистки экрана 1)Clear Display

 

//НАЧАЛО функция перехода на вторую строку ( 8)Set DDRAM Address)

void secondline()

{

//при режиме двух строк

//Первая строка (DDRAM) начинается с адреса 0x00(hex) оканчивается адресом 0x27(hex)

//Вторая строка (DDRAM) начинается с адреса 0x40(hex) оканчивается адресом 0x67(hex)

//устанавливаем курсор(AC) по адресу 0x40(hex), т.е. на начало второй строки

send_cmd_to_LCD(0xC0); //1100 0000(bin)

_delay_ms(3);

}

//КОНЕЦ функция перехода на вторую строку ( 8)Set DDRAM Address)

 

//НАЧАЛО функция начальной инициализации ЖК дисплея

void lcdinit()

{

//Power on

 

send_cmd_to_LCD(0x02); //для дисплея LM016L

 

//ждем больше 30ms согласно спецификации

_delay_ms(60);

 

 

//6)FUNCTION SET //Определение параметров развертки, ширины шины данных

//lcdcmd(0x20); //0010 0000(bin) 4 bit, 1 строка, 5*7 шрифт

//lcdcmd(0x2C); //0010 1100(bin) 4 bit, 2 строка, 5*11 шрифт

send_cmd_to_LCD(0x28); //0010 1000(bin) 4 bit, 2 строка, 5*7 шрифт

 

_delay_us(50); //по спецификации больше 39микросекунд

 

//4)DISPLAY ON/OFF CONTROL//Выбор режима отображения

//lcdcmd(0x0C); //0000 1100(bin) включение экрана, выключение отображения курсора, курсор не мигает

//lcdcmd(0x0D); //0000 1101(bin) включение экрана, выключение отображения курсора, курсор мигает

send_cmd_to_LCD(0x0F); //0000 1111(bin) включение экрана, включение отображения курсора, курсор мигает

 

_delay_us(50); //по спецификации больше 39микросекунд

 

cls(); //очистка экрана

 

//3)Entry Mode Set//Выбор направления сдвига курсора или экрана

//lcdcmd(0x07); //0000 0111(bin) -> инкрементирование, сдвиг всего экрана включен(влево)

//lcdcmd(0x05); //0000 0101(bin) -> декрементирование, сдвиг всего экрана включен(вправо)

send_cmd_to_LCD(0x06); //0000 0110(bin) -> инкрементирование, сдвиг всего экрана отключен

 

_delay_us(50); //по спецификации больше 39микросекунд

 

//initialization end

 

}

//КОНЕЦ функция начальной инициализации ЖК дисплея

 

Листинг программы:

#include< avr/io.h>

#include < util/delay.h>

#include < avr/interrupt.h>

#define F_CPU 4000000UL

#include < avr/pgmspace.h> //утилиты для работы с FLASH памятью МК

#include < stdio.h> //Стандартные средства ввода / вывода (для потока 'stream')

#include " lcd.h"

 

volatile int ALPHA;

volatile int nABC;

volatile int vvod;

 

//создаём поток mystdout_LCD

//FILE — структура, содержащая информацию о потоке.

static FILE stdout_LCD = FDEV_SETUP_STREAM(send_char_to_LCD, NULL, _FDEV_SETUP_WRITE);

//создаем поток назначив функцию send_char_to_LCD для вывода, функцию для ввода не назначаем написав NULL, используем только вывод установив флаг _FDEV_SETUP_WRITE

 

//НАЧАЛО функция инициализации АЦП

void ADC_INIT()

{

 

//ADCSRA - регистр управления и состояния A

ADCSRA|=(1< < 7); //7й бит (ADEN) РАЗРЕШИТЬ РАБОТУ АЦП

//Выбор частоты преобразования АЦП. (установка коэффициента деления)

ADCSRA|=(1< < 2)|(1< < 1)|(1< < 0); //2й бит (ADPS2), 1й бит (ADPS1), 0й бит (ADPS0) установить в 1, т.е. Коэфф.делен. 128

//Выбор режима работы АЦП

ADCSRA|=(1< < 5); //5й бит (ADATE) - режим работы определяется содержимым разрядов регистра SFIOR

 

 

//SFIOR регистр специальных функций ввода-вывода

SFIOR& =~(1< < 7)& ~(1< < 6)& ~(1< < 5); //Источник сигнала СТАРТ: 7бит (ADTS2) 6бит(ADTS1) 5бит(ADTS0) установить в 0, т.е режим непрерывного преобразования

 

 

//ADMUX - Регистр управления мультиплексором АЦП

//выбор (ИОН) источника опорного напряжения

ADMUX& =~(1< < 7)& ~(1< < 6); //внешний ион напряжения(5V) подключенный к выводу AREF(в STK500 снять перемычку AREF)

//ВХОД АЦП

ADMUX=0; //задействовать несимметричный вход ADC0(PA0)

 

}

//КОНЕЦ функция инициализации АЦП

 

int main(void)

{ sei();

void Inital (void);

Inital();

 

stdout =& stdout_LCD;

stdout=& stdout_LCD;

 

lcdinit();

cls();

ADC_INIT();

char A, B, C, faza, key, last_key, CODE, last_ACP;

int nkey=0;

double adc_result_volts, adc_result;

char Apred, Bpred, Cpred, alhaA;

Apred =PIND;

Bpred =PIND;

Cpred =PIND;

Apred & = 0b00001000;

Bpred & = 0b00010000;

Cpred & = 0b00100000;

 

 

char Sinx=0;

while (1) // Главный цикл

{

 

A=PIND;

B=PIND;

C=PIND;

A & = 0b00001000;

B & = 0b00010000;

C & = 0b00100000;

ALPHA=0xE5;

key=(PINB& 0b01111111);

switch (nkey)

{

case 0:

 

 

//если была нажата кнопка

if ((key & 0b01111000 )! =0b01111000)//если изменилось состояние выводов PA3-PA6

{

 

last_key=key;

nkey++;

 

break;

}

switch (PORTB& 0b111)//в зависимости от предыдущего состояния выводов PA2, PA1, PA0

{

//устанавливаем новое состояние выводов PA2, PA1, PA0

case 0b011: PORTB=0b1111101; break;

case 0b101: PORTB=0b1111110; break;

case 0b110: PORTB=0b1111011; break;

}

break;

 

case 1:

 

if(( key & 0b01111000)==0b1111000)

{nkey=0;

switch (last_key)

{

case 0b1110110: CODE=1; break; //118(dec)

case 0b1110101: CODE=2; break; //117

case 0b1110011: CODE=3;; break; //115

case 0b1101110: CODE=4;; break;

case 0b1101101: CODE=5;; break;

case 0b1101011: CODE=6;; break;

case 0b1011110: CODE=7;; break;

case 0b1011101: CODE=8;; break;

case 0b1011011: CODE=9;; break;

case 0b0111110: CODE=10;; break;

case 0b0111101: CODE=0;; break;

case 0b0111011: CODE=11;; break;

 

 

}

vvod=vvod*10+CODE;

}

 

break;

}

 

// РАБОТА С АЦП

if(ADCSRA& (1< < 4))//если преобразование завершено (т.е. установилась 1) в 4м бите(ADIF)

{

 

//считать результат преобразования с регистра данных АЦП (ADC)

adc_result=ADC;

 

//входное напряжение вычисляется по формуле Vin=(ADC*REF)/1024

adc_result_volts=(double)(adc_result*5)/1024;

 

char mystr[7]; //буфер для перевода числа в строку

 

//вывод числа с плавающей запятой

sprintf(& mystr[0], " %.2f", adc_result_volts); //преобразовываем число с плавающей запятой в строку, 2 знака после запятой

printf(" %s: ", & mystr[0]); //передаем строку на LCD(выводим напряжение)

if(adc_result_volts! =last_ACP) {cls(); }

last_ACP=adc_result_volts;

 

//если 6я ножка(PA5) то начинаем с начала с 1й ножки(PA0)

 

 

}

 

// ОТКРЫТИЕ ТИРИСТОРВ НА УГОЛ АЛЬФА

switch(nABC)//угол по A, B, C

{

case 0:

if(A! =Apred )

{


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-07-13; Просмотров: 600; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.373 с.)
Главная | Случайная страница | Обратная связь