Решение задач электромеханики на ЭВМ

Лабораторные работы по курсу «Универсальные методы расчета полей и процессов в электрических машинах»

Лабораторная работа № 2
Расчет магнитной цепи электрической машины методом узловых потенциалов

Методические указания к пункту 4:

Для работы с программой расчета магнитной цепи необходимо подготовить саму цепь, обозначить все узлы (базовый узел имеет номер 0 и не участвует в подсчете числа узлов цепи - согласно методу узловых потенциалов), выбрать положительные направления ветвей и обозначить номера ветвей. Для каждого линейного элемента цепи необходимо рассчитать его магнитную проводимость или величину, равную отношению магнитной проводимости к магнитной проницаемости воздуха m0. Для каждого нелинейного элемента необходимо подготовить марку стали, площадь поперечного сечения элемента и среднюю длину силовой линии магнитного потока в элементе. Обратите внимание, что сечение надо вводить в мм2, а длину в мм. Для элементов зубца можно рассчитать еще и коэффициент вытеснения потока.

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

Приступая к расчету характеристики холостого хода следует подготовить значения МДС возбуждения на основании величин тока возбуждения из заданного диапазона и числа витков ОВ. Рассчитав для каждого значения МДС магнитную цепь, следует найти величину магнитного потока в зазоре машины Fd, по которой и рассчитать значение соответствующей электродвижущей силы в обмотке якоря (E=CenнFd,  где

 
 

nн - номинальная частота вращения якоря; p - число пар полюсов; N - число проводников обмотки якоря; a - число пар параллельных ветвей обмотки якоря).

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

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

$STORAGE:2
INTERFACE TO SUBROUTINE Work [FAR,ALIAS:"Work_S"]
>   (Addr_1,Addr_2,Addr_3,Addr_4,Addr_5,Addr_6)
INTEGER*4 Addr_1[VALUE]
INTEGER*4 Addr_2[VALUE]
INTEGER*4 Addr_3[VALUE]
INTEGER*4 Addr_4[VALUE]
INTEGER*4 Addr_5[VALUE]
INTEGER*4 Addr_6[VALUE]
END

Program Obrab ! (или любое Ваше имя)
INTEGER*2 Stat
INTEGER*4 br,nd,net,FU,pot,flux
CHARACTER*9 Buffer
CALL GETARG(1,Buffer,Stat)
READ(Buffer,"(z8)") br
CALL GETARG(2,Buffer,Stat)
READ(Buffer,"(z8)") nd
CALL GETARG(3,Buffer,Stat)
READ(Buffer,"(z8)") net
CALL GETARG(4,Buffer,Stat)
READ(Buffer,"(z8)") FU
CALL GETARG(5,Buffer,Stat)
READ(Buffer,"(z8)") pot
CALL GETARG(6,Buffer,Stat)
READ(Buffer,"(z8)") flux
CALL Work(br,nd,net,FU,pot,flux)
END

 SUBROUTINE Work_S [FAR] (br,nd,net,FU,pot,flux)

*---------- описатель хар-ки намагничивания элемента магн. цепи

STRUCTURE /lam_char/
INTEGER*2 nu
        ! число точек в характеристике
REAL *4 um (50 )
    ! массив магнитных напряжений, A
REAL *4 fl (50 )
      ! массив магнитных потоков/
m0
END STRUCTURE

*---------- описатель ветви магнитной схемы замещения

STRUCTURE/network_branch/
INTEGER*2 from
      ! узлы, от которых направлена ветвь
INTEGER*2 to
         ! узлы,  к которым направлена ветвь
CHARACTER*1 type
  ! ветвь:L-лин.,N-нелин., J-источ. потока
REAL*4 cond
          ! проводимость /
m0
REAL*4 source        ! величина источника МДС или потока
CHARACTER*8 steel   ! марка стали
REAL*4 len
            ! длина сил. линии в нелин. эл-те
REAL*4 sq
             ! площадь сеч. нелин. элемента
REAL*4 kp
             ! коэф-т вытеснения потока
END STRUCTURE
INTEGER*2 br,nd
       ! число ветвей, число узлов
RECORD /network_branch/ net (br) ! массив структур, описывающих ветви цепи
RECORD /Lam_Char/ FU (br) ! массив структур, описывающих хар-ки намагничивания эл-тов
REAL*4 pot(nd)
                    ! массив потенциалов узлов
REAL*4 flux(br)
                    ! массив потоков ветвей
*******************************

Здесь расположен текст

Вашей программы

*******************************
END

 

Вся программа должна быть записана в файле с расширением .FOR. Затем ее надо откомпилировать и создать исполнимый файл (команда FL имя­_файла.for).

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

Программа-обработчик получает полную свободу действий по отношению ко всем полученным переменным. Например, для расчета ЭДС якоря по величине потока в 3-ей ветви в зависимости от величины источника МДС 1-ой ветви можно использовать следующую программу:

Tok=net(1).source/(2*W)
EDS=Ce*n*flux(3)
WRITE(*,”(‘ Tok=‘,F6.2,’ EDS=‘,F6.2)”) Tok,EDS
WRITE(1,”(‘ Tok=‘,F6.2,’ EDS=‘,F6.2)”) Tok,EDS

Разумеется, значения W, Ce и n должны быть определены этой программой самостоятельно, как и имя и тип файла для вывода.

В обработчике можно изменить и состав цепи:

WRITE(*,”(‘ Новое значение тока возбуждения i=‘$)”)
READ(*,”(F6.2)”) Tok_f
net(1).source=Tok_f*2*W

Однако работать в пакетном режиме программа не может. Поэтому, задав новое значение источника МДС, необходимо обращаться к пункту Главного Меню “Расчет” для определения новых значений узловых потенциалов.