ての回路が動作する。まず, この信号に同期して, \;Fコンバータパルスのカ ウント値がラッチされる。この値がDSPに読み込まれて, 前|口Iとの注により 電流んを演算し, 指令値Jdとの制御演算を行うことによりデユーティ比を求
め これをPWM発性回路へ送る。デューティ比は次同の割り込み信号により,
PWMパターンとしてチョッパへ送られ, 直流電流んを制御している。
2.3.2
ソフトウェア構成
本システムのソフトウェアは, ホストコンビュータ(PC9801)但IJのプログラ ムとDSP側のプログラムに分けられる。
ホストコンピュータのプログラムは ぐ言語で書かれていて, DSPとの通信 やIEEE形式の浮動小数点数とDSP形式との変換ルーチンなどから成る。この
プログラムは, 電源投入後のDSPボードの初期化やDSPのオブジェクトファ イルをボード上の高速SRAMへロードし, オペレータからの指示や制御ゲイ ンをDSPに伝送したり DSP上のデータを画面に表示する。
DSP側のプログラムは, アセンブラで書かれていて, 初期化ルーチン, コ マンド処理ルーチン 割り込みルーチンに分けられる。 初期化ルーチンは, 定 数, 変数, 周辺デバイスの初期設定を行つ。コマンド処理ルーチンは, ホスト コンピュータからボードコンピュータへ送られてきた命令(例えば制御開始や 終fなど)や, 定数変更の処理を行う。 割り込み処理ルーチンは, 一定時間間 隔(1.021 lTIS)の割り込みにより直流電流の検出, I-PD制御等を行う ルーチン である。
本システムでは浮動小数形DSPを用いて制御を行っているが, A/Dコンパー タ等による入力部やD/AコンパータおよびPWM出力部においてはすべての 状態量を整数形に変換して処理する必要がある。 このとき, 値を規格化する ことにより, オーバーフローや情報落ちを防止できる。 実際に物理量を内部 変数に対応させる場合, 例えば電流10Aをそのまま内部値の10に対応させる と, プロセッサのワード長をフルに活用できず精度が悪くなる。そこで, プロ セッサのワード長で最上位ピットの下位に小数点を持つ固定小数点とすると,
lワードで表現できる値は-1.0r-v + l.0となる。これにより, 物理量の最大値
33
を1.0に対応させて, ワード長を有効に利用し精度を保てる。
2.3.2.1 割り込み処理の概要
割り込み処理ルーチンはコントロールプログラムの要の部分であり, 割り
K j = Cj安Kj Kp = Cp * Kp Kd = Cd * Kd
図2.17 割り込み処理ルーチン
込み信号にlñJ期して, 電流検出を行い,オートチューニング演算や電流のI-PD 制御を行う。 このとき, I-PD制御の出力からデユーテイ比を求め, この他によ りインバータ制御部トランジスタの点弧パターンおよび点弧H手間が決まり, It�
流電流を制御することになる。 このルーチンの流れ図を凶2.17に示す。
2.3.2.2 電流検出
DCチヨツパの作用により直流電流は脈動しているため, 瞬時値を使川して 制御したのでは希望する電流を得るのはむずかしい。そのため, チヨツパ同期 の平均値を使用することが望まれる。 しかし, 電流値をAjDコンパータによ り入力したのでは値の平均を求める必要があり, 複数回のAjDコンパータ変 換時間と平均値を計算する時間が必要である。そこで, このシステムでは直 流電流をVjFコンバータによりパルスに変換し, カウンタにより電流の積力 値を求め, 積分値の差により電流値を得ている。
電流の最大値を1m,そのときのVjFコンパータの発振周波数を}�1! (lMHz) とすれば, 電流iのときの発振周波数は次式で与えられる。
f = E L (1 + 斗
2 \ - . 1m)
サンプリング周期をえとするとん回目までに出力したパルス数は,
rkTc � L F'm
k
7� Fm rk九 ・ 7p(ん)
= 1
.f dt= 川 ー + � � n 1_
i d} 0 .1 -_ _ 2 ' 2 1m J 0
となる。k回目までの電流の積分値を
rkTc
1(
k) = 1
i dtとおくと, k回目の電流i(ん)は次式で求まる。
2パ(k刈) ~
I尺( ん刈)
一I尺(k
一 ηIιη1'n 一 ?η1, Tc]'m
こ
い
一231(ん)一 伸一川231 1 , Fm ηえ23:2(2.22)
(2.2:3)
(2.2,1 )
(2.25 )
ここで, 変数をp(k)j231とすることにより, :32ピットで最上位ピットの下位に 小数点を持つ固定小数点と考えることができ, 232 j ( F m 1l Tc)が整数になるよう
にFm, 1ì, Tcを決定すると, 演算誤差のない検出周期中の平均値を得ること ができる。
3�
2.3.2.3 ファジィオートチューニンク
オートチューニングは, 以Fの手順で実行される。
(1)割り込み周期ごとに目標値と制御量の差の絶対値と操作量をメモリに 格納
(2)ステッフ。応答の指令が入ってから, 決まった個数のデータを集めてオート チューニングルーチンを実行(実験では.50同の割り込み)
(3)それぞれの特徴量について適合度を演算 (4)当てはまるルールの抽出
(.5)ファジィ推論を行い, 修正係数(Ci,
CいCd)を演算
(6)その修正係数を0.5から2.0に制限
(7)前同の制御ゲインと修正係数を乗算することにより, 新しいゲインを決定 この動作を指定した回数繰り返すことにより, 適切な制御ゲインを決定する。
2.3.3
実験結果
オートチューニングの実験は電流指令2.0Aから:3.0Aへのステップ応答を指 定した回数繰り返して, それぞれのステップ応答波形の特徴量を求め表2.f)の ルールに従って行った。チューニング目標としてはオーバシュートがι1(j(となる ように設定した。
図2.18 (a) � (c)は実験結果で, 目標イ|在1j, 市u御量Jd, 操作量%を心して いる。このとき, んは負荷に流れている電流波形であるが, IJと%は制御 装置のD/Aコンパータ より出力した波形である。(a)図は初期応答のオーバ シュートが大きい 場合, (b)図は初期応答にオーバシュートがない場合, (c
)
I苅はチューニング目標としてオーバシュートが0%となるようにした 場合の結果 である。 いずれの場合にも数回の繰り返しで望ましい応答が得られている。 ス テップ応答波形でシミュレーションと実験結果が異なるのは, 前者では瞬時に 負荷抵抗が変化するとしているが, 後者では徐々に変化するためである。 この 様子は, 図中のステップ応答後における操作量の変化に現れている。 チューニ ング目標としてのオーバシュートを0%にした場合, 従来の方法ではチューニ ングは難しいが, 操作量の特徴量を使用することにより改善が見られる。
5 3.0
*...3' 2.0
53.0
...3' 2.0
>' 40
目標値
ダ20 0
。 0.1 0.2 nu qtu ふeb pi'L 、,Bdc岨
(a)初期応答にオーバシュート有
5 3.0
* T1
...- 2.0
� 3.0
...3' 2.0
>' 40
目標値
♂20 0
。 0.1 0.2 AU qo 4lb 「EL 『EEE4pa
(b)初期応答にオーバシュート無
nu nu nu nu nu nu nu auτ n4 円。
。ru qo qL
〔〈]勺[〈〕J[〉〕
ダ
目標値
。 0.1 0.2 0.3
t [吋
(c)最適値がオーバシュート無 図2.18 実験結果
:37