Мегаобучалка Главная | О нас | Обратная связь


Семенов Б.Ю. Силовая электроника для любителей и профессионалов/ Б. Ю. Семенов. М.: Солон-Р, 2001. 126 с.



2020-02-03 255 Обсуждений (0)
Семенов Б.Ю. Силовая электроника для любителей и профессионалов/ Б. Ю. Семенов. М.: Солон-Р, 2001. 126 с. 0.00 из 5.00 0 оценок




2. Хорвиц П. Искусство схемотехники. Пер. с англ. М.: Мир, 1993.

3. Лавриненко В.Ю. Справочник по полупроводниковым приборам.                К.: Техника, 1984. 424 с.

4. Касаткин А.С. Электротехника. Учеб. пособие для вузов. 4-е изд.                М.: Энергоатомиздат,1983. 440 с.

5. Брускин Д.Э. Электрические машины: В2-х ч. Ч1: Учеб. пособие для вузов. М.: Высшая школа,1987. 319 с.

6. Романычева Э.Т. Разработка и оформление конструкторской документации радиоэлектронной аппаратуры. М.: Радио и связь, 1989. 448 с.

7. Вольдек А.И. Электрические машины. Л.: Энергия, 1974. 840 с.

8. Сентурия С., Уэдлок Б. Электронные схемы и их применение. М.: Мир, 1977.                 600 с.


ПРИЛОЖЕНИЕ А

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

 

Настройка и конфигурирование ПЛК в среде программирования CoDeSys

 

После инсталляции среды CoDeSys следует выполнить инсталляцию Target-файлов. В Target-файлах содержится информация о ресурсах программируемых контроллеров, с которыми работает CoDeSys.

Инсталляция Target-файлов производится при помощи утилиты InstallTarget, устанавливающейся вместе со средой программирования.

Выбор требуемого Target-файла показан на рисунке А.1.

Рисунок А.1. Выбор требуемого Target-файла.

Настраиваем входы и выходы ОВЕН ПЛК-150 в PLC Configurator.

Цифровой вход 0 будет подключен к фотоимпульсному датчику (энкодеру). На аналоговые выходы будет поступать высокий или низкий уровень сигнала, характеризующий увеличение или уменьшение вращения двигателя постоянного тока. 

Настройка конфигуратора изображена на рисунке А.2.

Рисунок А.2. Настройка конфигуратора.


ПРИЛОЖЕНИЕ Б

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

 

Разработка программы

 

Для программирования ОВЕН ПЛК-150 воспользуемся языками SFC, FBD и ST среды программирования CoDeSys.

Текст программы представлен на рисунках Б.1-Б.3.

Рисунок Б.1. Текст программы на языке SCF

Рисунок Б.2. Текст программы на языке FBD

Рисунок Б.3. Текст программы на языке ST.

 

На рисунке Б.4 изображена визуализация проекта.

Рисунок Б.4. Визуализация проекта.

Текст программы для микроконтроллеров PIC16F628A представлен на рисунках Б.5-Б.6.

   LIST P=16F628A, R=hex ; Use the PIC16F628 and decimal system

   #include "P16F628A.INC" ; Include header file

__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_OFF & _INTRC_OSC_NOCLKOUT & _MCLRE_OFF & _LVP_OFF

  TEMP EQU 070h

  TEMP1 EQU 072h

  COUNT EQU 074h

  COUNT1 EQU 076h

  ORG 0x000       ; Program starts at 0x000

begin

;

; ----------------

; INITIALIZE PORTS

; ----------------

;

  movf PORTA,F                   

  movf PORTB,F                   

 

  bsf STATUS,RP0         

                                 

  movlw B'00000000'

  movwf TRISA 

      

  movlw B'00001001'

  movwf TRISB

 

  movlw B'10000000'

  movwf OPTION_REG

 

  bcf STATUS,RP0

 

  movlw B'00000000'

  movwf PORTA              

 

  movlw B'00000000'

  movwf PORTB

;

; ---------

; MAIN LOOP

; ---------

;

  movlw 00h

  movwf TEMP

  movlw 00h

  movwf TEMP1

  movlw 04h

  movwf COUNT

Рисунок Б.5. Текст программы для PIC16F628A.

 

  movlw 04h

  movwf COUNT1

 

loop

  movf PORTB,W

  btfsc PORTB,3

  goto new

  goto loop

 

new

  iorwf TEMP1

  movlw 01h

  andwf TEMP1,0

  iorwf TEMP

  rlf TEMP,1

  movlw 00h

  movwf TEMP1

 

  decfsz COUNT,1

  goto again

  goto loop1

again

  btfsc PORTB,3

  goto again

 

loop1 

  decfsz COUNT1,1

  goto loop

 

  rrf TEMP,1

  movf TEMP,W

  movwf PORTA

 

  cycle

  btfsc PORTB,3     

  goto cycle

  movlw 00h

  movwf TEMP

  movlw 00h

  movwf TEMP1

  movlw 04h

  movwf COUNT

  movlw 04h

  movwf COUNT1

  clrf PORTA

  clrf PORTB

  goto loop

END

Рисунок Б.5. Продолжение.

 


  LIST P=16F628A, R=DEC ; Использовать десятичную систему счисления

   #include "P16F628A.INC" ; Подключение библиотеки

   __config _INTRC_OSC_NOCLKOUT & _LVP_OFF & _WDT_OFF & _PWRTE_ON & _BODEN_ON

   ORG 0x000       ; Program starts at 0x000

;

; ----------------

; INITIALIZE PORTS

; ----------------

;

   movlw b'00000000'  ; Установка portA

   movwf PORTA

 

   movlw b'00000100'  ; RB2(TX)=1 остальные 0

   movwf PORTB

 

   bsf STATUS,RP0     ; Банк памяти 1

 

   movlw 0xFF

   movwf TRISA        ; Все разряды portA входы

 

   movlw b'11110010'  ; RB7-RB4 and RB1(RX)=входы, остальные выходы

   movwf TRISB

 

; ------------------------------------

; SET BAUD RATE TO COMMUNICATE WITH PC

; ------------------------------------

; Скорость = 9600 бод, без паритета, 1 стоповый бит

;

   movlw 0x19         ; 0x19=9600 bps (0x0C=19200 bps)

   movwf SPBRG

   movlw b'00100100'  ;

   movwf TXSTA        ; включение асинхронной передачи

 

   bcf STATUS,RP0     ; Банк памяти 0

 

   movlw b'10010000'  ; включение асинхронного приема

   movwf RCSTA

 

;

; ---------

; MAIN LOOP

; ---------

;

   call message       ; послать строку

loop call receive       ; ожидание символа

   call send          ; посылка символа

   goto loop

;

; -------------------------------------------

; Принятие символа через RS-232 и сохранение его в регистре W

; -------------------------------------------

Рисунок Б.6. Текст программы для PIC16F628A.

 

; Этот цикл не заканчивается пока символ не принят

;

receive btfss PIR1,RCIF    ; (5) проверка на наличие поступающих данных

   goto receive

 

   movf RCREG,W       ; сохранение поступивших данных в W

   return

;

; -------------------------------------------------------------

; Отправка символа через RS-232 и ожидание окончания отправки

; -------------------------------------------------------------

;

send movwf TXREG        ; скопировать в регистр W посылаемый символ

 

TransWt bsf STATUS,RP0     ; Банк памяти 1

WtHere btfss TXSTA,TRMT   ; (1) если 1 то передача завершена

   goto WtHere

 

   bcf STATUS,RP0     ; Банк памяти 0

   return

;

; -------

; Сообщение

; -------

;

message movlw 'B'

   call send

   movlw 'a'

   call send

   movlw 'k'

   call send

   movlw 'a'

   call send

   movlw 'l'

   call send

   movlw 'a'

   call send

   movlw 'v'

   call send

   movlw 'r'

   call send

   movlw 's'

   call send

   movlw 'k'

   call send

   movlw 'a'

   call send

   movlw 'i'

   call send

  movlw 'a'

Рисунок Б.6. Продолжение.

   call send

movlw ' '

   call send

   movlw 'r'

   call send

   movlw 'a'

   call send

   movlw 'b'

   call send

   movlw 'o'

   call send

   movlw 't'

   call send

   movlw 'a'

   call send

   movlw ' '

   call send

   movlw 'P'

   call send

   movlw 'o'

   call send

   movlw 'd'

   call send

   movlw 'g'

      call send

   movlw 'u'

   call send

   movlw 'z'

   call send

   movlw 'o'

   call send

   movlw 'v'

   call send

   movlw ' '

   call send

   movlw 'A'

   call send

   movlw '.'

   call send

   movlw 'V'

   call send

   movlw '.'

   call send

   movlw 0x0D ; CR

   call send

   movlw 0x0A ; LF

   call send

   return

   END

Рисунок Б.6. Продолжение.


Текст программы для микроконтроллера MSP430C1101 представлен на рисунке Б.7.

#include     "msp430x11x1.h" ; Standard Equations

 

NAME DCmotorspeedcontroller

#define Duty_cycle R6               

;******************************************************************************

;Константы

;******************************************************************************

PWM_OUT equ 004h               ; bit2 of Port1 / TA1 

Period equ 0ffh               ; Counts for D/A, 8bits = 256

;******************************************************************************

      RSEG CSTACK

      DS 0          

;******************************************************************************

      RSEG CODE

;******************************************************************************

 

RESET mov #SFE(CSTACK),SP    ; Инициализация стека

      call #Init_Sys          ; Процедура инициализации          

 

Mainloop bit.b #BIT0,&P2IN        ; проверка был ли подан сигнал уменьшения скважности ШИМ     

      jz Next1

          

      bit.b #BIT1,&P2IN        ; проверка был ли подан сигнал уменьшения скважности ШИМ

      jz Next2

        

      jmp Mainloop           ; ожидание подачи управляющего сигнала

 

Next1 cmp #0,Duty_cycle      ; если значение скважности ШИМ минимально

      jz Mainloop           ; то переход на ожидание нажатия

      dec Duty_cycle         ; увеличение скважности ШИМ          

      jmp SendPWM        

          

Next2 cmp #0ffh,Duty_cycle   ; если значение скважности ШИМ максимально

      jz Mainloop           ; то переход на ожидание нажатия

      inc Duty_cycle         ; уменьшение скважности ШИМ

                     

SendPWM mov Duty_cycle,&CCR1   ; Вывод ШИМ сигнала на выход

         call #Delay             ; Вызов процедуры задержки

      jmp Mainloop           ; ожидание подачи управляющего сигнала

                                           

;******************************************************************************

Init_Sys; Инициализация

;******************************************************************************

StopWDT mov #WDTPW+WDTHOLD,&WDTCTL ; Останов сторожевого таймера

 

SetupBC mov.b #XTOFF+RSEL2+RSEL1+RSEL0,&BCSCTL1  

                                      ; RSEL=7

      mov.b #0ffh,&DCOCTL      ; Режим максимальной частоты.                                           

                                                                                                      

SetupP1 mov.b #0,&P1OUT          ; P1OUT сброс

      bis.b #PWM_OUT,&P1SEL    ; P1.2/TA1 настраиваем на ШИМ выход               

      bis.b #0ffh,P1DIR        ; остальные выводы P1 не используем

 

SetupP2 mov.b #03ch,&P2DIR       ; P2.0,P2.1 входы,P2.2 to P2.5 не используются

          

      mov #Period,&CCR0      ; Установка периода длительности ШИМ 

      mov #0,&CCR1           ;

      mov #OUTMOD_7,&CCTL1   ; Настройка режима таймера

SetupTA mov #TASSEL1+MC0,&TACTL ; Установка внутреннего генератора частоты

          

      mov #0,Duty_cycle      ; Сброс переменной Duty_cycle

      ret                        ; Возврат из процедуры

 

;******************************************************************************

Delay; Software delay

;******************************************************************************

      push #03FFFh            ; Задержка

L1    dec 0(SP)              ;

      jnz L1                 ;

      incd SP                 ;

      ret                        ;

Рисунок Б.7. Текст программы для MSP430C1101.

 

;******************************************************************************

        COMMON INTVEC            ; MSP430F1xx Векторы прерывания            

;******************************************************************************              

        ORG RESET_VECTOR

RESET_VEC DW RESET             ; Сброс сторожевого таймера

 

        END

 

Рисунок Б.7. Продолжение.


ПРИЛОЖЕНИЕ В

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

 

Руководство программиста

    Спроектированный блок управления двигателем постоянного тока спроектирован на основе микроконтроллера MSP430C1101 и программируемого логического контроллера ОВЕН ПЛК-150.

    Для того чтобы задать другие значения длительностей управляющего сигнала с ПЛК, необходимо в среде программирования CoDeSys изменить значение PT таймеров TON1-TON10 на требуемое.

    Для того чтобы задать другие значения скважности ШИМ сигнала, необходимо в программном коде для микроконтроллера MSP430C1101 изменить значение переменной Duty_cycle, которая пропорциональна скважности, изменение которой, в свою очередь, позволяет управлять частотой оборотов двигателя постоянного тока.

Для того чтобы использовать дополнительные интерфейсы связи, необходимо разрабатывать программное обеспечение для операционной системы персонального компьютера. Вся техническая информацию по программированию интерфейсов связи имеется в datasheet микроконтроллера MSP430C1101.


ПРИЛОЖЕНИЕ Г

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

 

Руководство пользователя

 

    Для управления частотой вращения двигателя постоянного тока необходимо:

– соединить ОВЕН ПЛК-150 с персональным компьютером через COM порт (подробное описание приводится в документации прибора ОВЕН ПЛК-150);

– запустить исполняющую программу new.pro;

– в открывшейся программе выбрать вкладку Visualizations - Diplom. Откроется следующее окно:

    Рисунок Г.1. Окно визуализации программы.

– для запуска программы нажать на кнопку «Старт»;

– сбросить предыдущие значения кнопкой «Сброс»;

– для увеличения или уменьшения скважности ШИМ нажать на кнопку «+1» или «-1». Для быстрого увеличения или уменьшения скважности ШИМ нажать на кнопку «+5» или «-5».


ПРИЛОЖЕНИЕ Д

(Рекомендуемое)

 

Характеристики MAХ232

 

    Рисунок Д.1. Внешний вид приёмопередатчика MAX232.

 

    Рисунок Д.2. Обозначение контактов MAX232.

 

Микросхема приемопередатчика MAX3232 оснащена фирменным выходным каскадом передатчиков, обеспечивающим малое падение напряжения и полную совместимость с требованиями стандарта RS-232 при напряжении питания от 3,0 до 5,5 В. Формирование выходного сигнала, при использовании одного положительного напряжения питания, обеспечивается двумя встроенными генераторами накачки, для работы которых достаточно четырех внешних малогабаритных конденсаторов емкостью по 0,1 мкФ.

1.3 Цифровой сигнальный процессор:

MSP430C1101 - 16-разрядная RISC-архитектура, время выполнения инструкции
- 125 нс, 16-разрядная RISC-архитектура, время выполнения инструкции
- 125 нс 32 КГц кварцевый резонатор, встроенный модуль 10-разрядного АЦП скоростью 200 ksps, 16-битовый таймер с тремя регистрами захвата/сравнения, ОЗУ 128б, ПЗУ 1кб, корпус 20 выводов, напряжение питания от +1,8В до +5В.


ПРИЛОЖЕНИЕ Е

(Рекомендуемое)

 

Микроконтроллер MSP430C1101

Рисунок Е.1. Внешний вид микроконтроллера MSP430C1101.

 

Цифровой сигнальный процессор MSP430C1101 имеет в своем составе ПЗУ, ОЗУ, число портов ввода/вывода - 20. Питание микроконтроллера осуществляется от источника напряжения +3В. Микроконтроллеры данного семейства содержат 16-разрядное RISC CPU, периферийные модули и гибкую систему тактирования, соединенные через фон-Неймоновскую общую адресную шину (MAB) памяти и шину памяти данных (MDB). Объединяя современное CPU с отображаемыми в памяти аналоговыми и цифровыми периферийными устройствами.

Система тактирования разработана специально для использования в приложениях с питанием от батарей. Вспомогательная низкочастотная система тактирования (ACLK) работает непосредственно от обычного 32 кГц часового кристалла. Модуль ACLK может использоваться в качестве фоновой системы реального времени с функцией самостоятельного «пробуждения». Интегрированный высокоскоростной осциллятор с цифровым управлением (DCO) может быть источником основного тактирования (MCLK) для ЦПУ и высокоскоростных периферийных устройств. Модуль DCO становится активным и стабильным менее чем через 6 мкС после запуска.

Семейство MSP430 имеет фон-Неймоновскую архитектуру с единым адресным пространством для регистров специального назначения (SFR), периферии, ОЗУ и Flash-памяти программ. Доступ к программному коду выполняется всегда по четным адресам. Данные могут быть доступны как байты или как слова.


ПРИЛОЖЕНИЕ Ж

(Рекомендуемое)

 

Основные характеристики ОВЕН ПЛК-150

 

Надежная среда программирования CoDeSys входит в комплект поставки контроллера.

Программируемые логические контроллеры ОВЕН ПЛК имеют встроенные интерфейсы Ethernet 10/100 Мbps, RS-485, RS-232, USB-Device*, USB-Host*.

Контроллеры поддерживают протоколы ОВЕН, Modbus RTU, Modbus ASCII, DCON, Modbus TCP, GateWay.

Устройство промышленного контроллера предусматривает три режима функционирования дискретных входов (10 кГц): режим импульсного счетчика, триггера или энкодера.

Контроллер предусматривает высокую точность настройки всех дискретных входов на генерацию ШИМ-сигнала.

В комплект поставки входят готовые библиотеки функциональных блоков. Это как стандартные библиотеки CoDeSys, так и разработки ОВЕН (ПИД-регулятор с автонастройкой, блок управления 3-х позиционными задвижками, блок измерения влажности психрометрическим методом и т.д.).

Количество входов и выходов программируемых логических контроллеров можно увеличить с помощью подключения внешних модулей ввода/вывода.

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

Внешний вид ОВЕН ПЛК-150 показан на рисунке Ж.1.

Рисунок Ж.1 – Внешний вид ОВЕН ПЛК-150

 

 


ПРИЛОЖЕНИЕ И

(Рекомендуемое)

 

Среда программирования CoDeSys

 

CoDeSys - это современный инструмент для программирования контроллеров (CoDeSys образуется от слов Controllers Development System).

CoDeSys предоставляет программисту удобную среду для программирования контроллеров на языках стандарта МЭК 61131-3. Используемые редакторы и отладочные средства базируются на широко известных и хорошо себя зарекомендовавших принципах, знакомых по другим популярным средам профессионального программирования (такие, как Visual C++).

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

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

Каждый программный компонент состоит из раздела объявлений и кода. Для написания всего кода POU используется только один из МЭК языков программирования (IL, ST, FBD, SFC, LD или CFC).

CoDeSys поддерживает все описанные стандартом МЭК компоненты. Для их использования достаточно включить в свой проект библиотеку standard.lib.

POU могут вызывать другие POU, но рекурсии недопустимы.

Функция – это POU, который возвращает только единственное значение (которое может состоять из нескольких элементов, если это битовое поле или структура). В текстовых языках функция вызывается как оператор и может входить в выражения.

При объявлении функции необходимо указать тип возвращаемого значения. Для этого после имени функции нужно написать двоеточие и тип.


ПРИЛОЖЕНИЕ К

(Рекомендуемое)

 

Инкрементные фотоимпульсные датчики (ФИД)

 

Схема применения фотоимпульсного датчика для измерения угла поворота a показана на рисунке К.1.

Рисунок К.1. Схема применения фотоимпульсного датчика.

Основным элементом ФИД является прозрачный диск с нанесенными на него рисками, количество которых достигает нескольких тысяч. При повороте диска, луч света, излучаемый источником ИС, модулируется рисками и воспринимается фотоприемниками ФП. Электрические сигналы от ФП преобразуются электронным преобразователем ЭП в систему электрических сигналов, которые подаются на программируемый логический контроллер ПК.

ФИД генерирует следующие сигналы и их инверсии:

OSN – основной;

SM – смещенный;

CLRM – нуль-метод.

Диаграмма этих сигналов при вращении вправо и влево показана на рисунке К.2. Программно-аппаратное обеспечение ПК организовано так, что при движении вправо при каждом переходе входного сигнала происходит прибавление "1" в программном или аппаратном счетчике, а при движении влево – вычитание "1". Кроме того, ПК проверяет отсутствие обрыва линии, сравнивая сигналы с их инверсиями. Таким образом, в счетчике ПК формируется код угла поворота Na или его приращения.

Рисунок К.2 – Диаграмма сигналов, генерируемых ФИД


ПРИЛОЖЕНИЕ Л

(Рекомендуемое)

 

Принцип управления скоростью вращения двигателя постоянного тока с помощью широтно-импульсной модуляции

 

При регулировании скорости вращения двигателя с помощью широтно-импульсной модуляции (ШИМ, в англоязычных текстах - PWM, pУLse-width modУLation) на двигатель подается полное напряжение питание, но регулируется время, в течение которого оно подается. Широтно-импульсная модуляция представлена на рисунке Л.1.

Рисунок Л.1. Широтно-импульсная модуляция.

 

То, что с помощью дискретного сигнала ("включено/выключено") можно управлять аналоговой величиной (частотой вращения двигателя), делает этот способ очень популярным при использовании цифровых схем управления и, в частности, логических контроллеров.

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

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

подали на двигатель напряжение 5В.

Часто именно это и требуется. Более того, это один из наиболее популярных способов регулирования аналогового напряжения в цифровых схемах.

Обратите внимание, что если емкость нагрузки мала, вы можете столкнуться с неожиданным поведением двигателя, что особенно заметно у дешевых микромоторов. Коллекторная система двигателя играет роль коммутатора, включая и выключая его обмотки; когда же на включение обмоток накладывается периодическое включение питания, результат может быть непредсказуемым, вплоть до того, что при определенном сочетании частоты ШИМ и частоты вращения двигателя, последний начнет вращаться в обратную сторону.

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

Рисунок Л.2. Схема подключения нагрузки.

 

 



2020-02-03 255 Обсуждений (0)
Семенов Б.Ю. Силовая электроника для любителей и профессионалов/ Б. Ю. Семенов. М.: Солон-Р, 2001. 126 с. 0.00 из 5.00 0 оценок









Обсуждение в статье: Семенов Б.Ю. Силовая электроника для любителей и профессионалов/ Б. Ю. Семенов. М.: Солон-Р, 2001. 126 с.

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (255)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.013 сек.)