計測自動制御学会東北支部 第 275 回研究集会(2012.10.26)
資料番号 275-13

ニューラルネットワークによるステッピングモータ制御用前置補償要素の調整法の改善
Improvement of a Neural-Network Type Adjusting System
for a Pre-compensator of a Stepping Motor
雪田哲志*，松尾健史*，三浦 武*，田島克文*，米田 真**
Satoshi Yukita *, Kenshi Matsuo*, Takeshi Miura*, Katsubumi Tajima*,
Makoto Yoneda***秋田大学，**オリエンタルモーター*Akita University，**Oriental Motor Co., Ltd.
キーワード：ステッピングモータ(stepping motor)，慣性負荷(inertial load)，前置補償要素(pre-compensator)，ニューラルネットワーク(neural network)
連絡先：〒010-8502 秋田県秋田市手形学園町 1-1 秋田大学工学資源学研究科 電気電子工学専攻
三浦 武，TEL.：(018)889-2329，FAX.：(018)837-0406，E-mail：miura@ipc.akita-u.ac.jp

はじめに

1.

ーメントの値を推定することができれば，固有周波数を除去するためのフィルタを設計することステッピングモータはその回転角度と回転速ができる．

度を入力される指令パルスの総数と周波数によ文献 3)では，励磁巻線の端子電圧の時系列デーって制御できる．そのため角度センサや速度セン

タを入力としたニューラルネットワークによっサを用いない開ループ制御が可能であり，簡易でて，上記の慣性モーメントを推定できることが報

低コストな制御システムを構築することができ告されている．これにより，開ループ制御の利点1)である簡易性・低コスト性を損なわずに慣性モー

一方，駆動時には回転子の慣性の影響により振メントの推定ができる．また推定された慣性モー動が発生し，整定時間の増大や脱調といった問題メントの値を用いて前置補償要素である低域通点が生じる．この問題を解決する方法として，低過フィルタの遮断周波数を適応的に変化させ，振域通過フィルタからなる前置補償要素を用いる動を抑制する方法が文献 4)で考案されている．

方法が提案されている 2)．この手法では，目標角

文献 3)では時系列データをニューラルネット

度波形から振動の原因となるシステムの固有周ワーク学習用の教師データとして用いている．他

波数付近の周波数成分を除去することで振動を方で，先述したとおり，ステッピングモータの固抑制する．よって，このシステムにはフィルタ設

有周波数は慣性モーメントの値に応じて変化す

計のために固有周波数の値が必要となる．ステッることから，周波数領域の情報が慣性モーメント

ピングモータの固有周波数は回転子の慣性モー値と密接に関連していると言える．このことから

メントの逆数の平方根に比例する 2)ので，慣性モ時系列データを高速フーリエ変換(FFT)によってる ．

1

周波数領域の振幅スペクトルに変換すれば，より

表1

ステッピングモータの仕様

慣性モーメント毎の特徴を表わしたデータが得

Table 1

Specifications of the stepping motor

られると思われる．

Holding torque0.26 [N・m]上記を考慮し，本研究では，教師データとしてRotor inertia

5.4×10-6 [N・m・s2/rad]時系列データと周波数スペクトルの双方を用い，Rated current

1.2 [A/phase]

慣性モーメントを推定することを試みる．さらに，Rated voltage

4.0 [V]

得られた慣性モーメントの値を用いて文献 4)のWinding resistance

3.3 [/phase]

適応形前置補償要素を設計することにより，低域

Fundamental step-angle

1.8 [deg.]

通過フィルタの遮断周波数の調整法の改善を図
る．

2.

社製）を用いた．

実験システムの構成

ニューラルネットワークの構成

3.

本研究で用いた実験システムを図 1 に示す．使

3.1

ニューラルネットワークの構造用したステッピングモータは 2 相ハイブリット形であり，励磁方式は 2 相励磁である．ステッピ

本研究では，文献 3)で提案されたニューラルネ

ングモータの各相への励磁指令は，パーソナルコ

ットワークを用いる方法をもとに，ステッピングンピュータ(PC)から I/O ポートを介して駆動シスモータの慣性モーメントを推定する．このとき入テムへ送られる．この指令に従って駆動システム

力データとして，端子電圧の時系列データを入力から各相に励磁電流が流され，モータが駆動されデータとして用いる場合と，周波数スペクトルをる．このときの各相の端子電圧の時系列データは用いる場合の双方を検討する．またニューラルネ

電圧取得用回路により取得され，A/D 変換器を介ットワークは中間層を 1 層とした階層型のものして PC へ入力される．このデータを FFT で周波を用いる．ニューラルネットワークの構造を図 2数スペクトルに変換する．またステッピングモーに示す．

タの回転角度はロータリエンコーダにより取得

図 2(a)のように端子電圧の時系列データを用され，Up/Down カウンタを介して， PC へ入力いる場合には，サンプル数を N，サンプリング時される．

間を Δtとすると，時刻(t –N×Δt)から tまでの各相の本研究で使用したステッピングモータは，端子電圧の時系列データがニューラルネットワ

PK244-01B（オリエンタルモーター社製）である．

ークに入力される．従って，全相(4 相)の端子電その仕様を表 1 に示す．また，モータの駆動シス圧の時系列データを用いた場合にはユニット数テムとして CMD2112-P（オリエンタルモーターが 4N 個となる．
また，図 2(b)のように振幅スペクトルを用いる

Personal computer( PC )

I / O Port

場合には，サンプル数を NF とすると，サンプリ

Drive system

ング周波数 Δf=1/N×Δt ごとに振幅スペクトルが入力される．

A / D converter

Voltageacquiring circuit

U /D counter

Rotary encoder

propagation 法を用いる 5)．本研究において中間層実験システム

では，(1)式のシグモイド関数を，出力層では(2)学 習 方 法 と し て ， 慣 性 項 を 付 加 し た back

Stepping motor

図1Fig.1

Experimental system2：load 1：load 3

voltage A (t  N  t ) B ( t  N t )
 A (t  N t )：load 2：load 426

 B (t  N  t )load inertia
×10-6
output layer

24

voltage[V] A (t ) B (t ) A (t )hidden layertime B (t )22
20

input layer

18(a)Input:time-series

16

Amplitude spectrum

5.0

Δf

10.0
15.0
time[ms]

Δf

S n ( f )S n (2f )Δf(a)S n (3  f )26×10-6
output layerΔf

S n (( N F / 2  4)f )24

ΔfFrequency

S n (( N F / 2  2)f )voltage[V]ΔfS n (( N F / 2  3)f )hidden layer

S n (( N F / 2  1)f )(b)

Input:frequency spectrum

2220
1816

階層型ニューラルネットワーク

Fig.2

first phaseload inertia

input layer

図20.0

S n (0 )0.0

5.0

Multi-layered neural network

10.0
15.0
time[ms](b) second phase

式の線形関数を用いている．

11  exp(  z j )f (z j )  z j
3.2

(1)

(2)

教師データ(時系列)

Fig.3

Teacher data (time-series)

0.6

amplitude spectrumf (z j ) 

図3入力データ

本研究で用いるステッピングモータの駆動方
式は 2 相励磁方式である．また，ステッピングモータの端子電圧の時系列データは励磁のON/OFF によって大きく変化する．よって本研究

0.40.20では，あるステップの駆動において 励磁 がOFF→ON になる相を第 1 相，OFF のままの相を

図4

第 2 相，ON →OFF になる相を第 3 相， ON のま100200frequency[Hz]

教師データ(周波数スペクトル：第 1 相)Fig.4

まの相を第 4 相と定義して用いる．

Teacher data

(frequency spectrum:first phase)

教師データである各相の端子電圧の時系列データおよび周波数スペクトルの例をそれぞれ図3300

3，4 に示す．ここで時系列データはサンプリン
Teacher data

グ時間t =0.5ms で取得され，周波数スペクトルx11 x12x21 x22x1j

x1mx2jx2m

xi1xi2xij

xim

3.3 標準化

xi 1 m x ijm j 1

文献 3)で用いられたニューラルネットワーク

x 'ij はサンプリング時間 t=0.2ms，取得時間 TA=0~30.0ms で取得された時系列データをデータ数
NF=256，ハミング窓の FFT で変換した．

は学習回数が 100,000 回以上と多い．そこで本研

X SDj

Teacher dataすることで，学習回数の減少が可能か検討する．
標準化の方法を図 5 に示す．ここで i はニューラルネットワークの第 i 入力，j は教師データの番号をそれぞれ示す．また x i は(3)式のように mx'11 x'12x'21k x'22x'1jx'2jx'1mx'2mx'i1 x'i2x'ijx'im

図5標準化

個ある i 番目の入力データの平均値，XSDi は標準偏差であり，それぞれ1 m
 xij
m j 1

1 m
X SDi  ( xij  x j )2m j 11 m
 ( xij  x j ) 2
m j 1

X SDi x ij  x j

究では，教師データを分散=1，平均=0 で標準化

xi 

input layer

Fig.5

input layerStandardization(3)
表2

ニューラルネットワークの入力データ(時系列データ)(4)

Table 2

Input data of the neural network(time-series)
condition

choiceとなる．この x i および XSDi を用いて xij を次式のPhase used as input

all phases

ようにして標準化する．

Sampling time t

0.50[ms]

Acquisition time

14.5[ms]

x'ij xij  x j
X SDj(5)表3

ニューラルネットワークの入力データ(周波数スペクトル)

3.4

入力データの条件

Table 3

Input data of the neural network(frequency spectrum)

文献 3) と同様な時系列データを用いる場合のconditionchoice

入力データの形式を表 2 に示す．また，周波数スPhase used as input

first phase

Number of data

NF=256

上記のような形式を持った入力データと，文献

Sampling time

t =0.20[ms]3) で最も良好な推定結果が得られたと報告されSampling frequency

f =19.5[Hz]た構造を持つニューラルネットワークを用いる．

Window function

Hamming window

ニューラルネットワークの構造を表 4 に示す．

Acquisition time

TA=30.0[ms]Maximum frequency

fmax=253.5

ペクトルを用いる場合のものを表 3 に示す．

43.5ニューラルネットワークの学習

表4ニューラルネットワークの構造

Table 4

本研究で用いる回転子と慣性負荷の和の慣性

Structure of the neural network.

Inputtime-series

spectrum

モーメントの値を表 5 に示す．load1~load4 の慣

Sampling time t [ms]

0.50

0.20

性モーメントは出力に対する教師データとして，

Number of phases

41

load5，load6 はニューラルネットワークの汎化能

Number of input-layer units

12014

力を確認するために用いる．

Number of hidden-layer units

2020

Number of output-layer units

11

本研究では，教師データに時系列データを用いる場合および周波数スペクトルを用いる場合それぞれに関してニューラルネットワークの学習

表5を行う．また，上記のそれぞれに関して，データ

Table 5の標準化を行った場合と行わない場合の学習もLoad

Moment of inertia (×10-6)[N・m・s2/rad]load 15.4 (no load)を表 6 に示す．また学習する際の終了条件として，load 2

15.4

文献 3)より表 7 に示す 2 つの条件を用いる．

load 335.4

load 455.4

load 525.4

load 645.4

実施する．そのときの教師データの与え方(Type)3.6 推定結果の評価方法

慣性モーメント(回転子＋慣性負荷)
Moment of inertia (rotor + inertial load).

ここではニューラルネットワークにより学習したシステムの推定精度を比較するために，評価指標を以下のように定義する．学習を終了したニ表6

教師データ

Table 6

Teacher dataューラルネットワークに，load1~load6 の 6 パタ
number of dataーン(L=6)のデータを 5 個(P=5)ずつ入力し，それぞれ推定された慣性モーメント Jlp と，実際の慣性モーメント Jl’との 2 乗誤差を次式のように求for each condition

not standardized

standardized

1Type1Type25Type3Type41Type5Type65Type7Type8time-series

め，それらの平均値の平方根を評価値 E とする．
ELP
1( J l ' J lp ) 2
2( L  P) l 1 p 1

spectrum(6)

表7

適応形前置補償要素の構成

4.

Table.7

4.1

standardization

data type

学習の終了条件

End conditions for learning

・Number of learning ≧ 1,000,000

遮断周波数の決定

・Average errors of the inertial load used forlearning ≦ 5.0%(2.5×10-6N・m・s2/rad)

本研究では適応形前置補償要素として用られる低域通過フィルタに，2 次バタワースフィルタ

性モーメントと遮断周波数の対応を図 6 に示す．

および 2 次ベッセルフィルタを用いる．ここでフこの図をもとにして，推定した慣性モーメントかィルタの遮断周波数 fc は，文献 4)に従い，システら遮断周波数を決める．

ム全体のゲイン特性の最大値が 3[dB]以下になるように決める．これにより求められた回転子の慣

520

rPre-compensatorr’
Drive system(a)reference waveform



0Fig.6

Schematic view of control system.

105

図6

Stepping motor

Controlled system

15rotor angle

Cutoff frequency[Hz]Butterworth filter
Bwssel filter

1020304050
Moment of inertia[N・・m s2/rad]Estimation of moment of inertia60(10-6)

Decision of the cut-off frequencyof pre-compensator

慣性モーメントと遮断周波数の対応
1step

Correspondence between the moment of inertia and0

the cutoff frequency

timeTS(b)Reference waveform in the cases thatthe pre-compensator is used.

4.2

制御方法

本研究では，文献 4)と同じ構成の制御システム

図7

適応形前置補償要素を用いた制御

Fig.7

Control with the adaptive pre-compensator.

表8

評価関数 E および学習回数

Table 8を用いた場合の回転角度の目標波形を図 7 に示

Learning Type

E(×10-6)

number of learning

す．このシステムの制御アルゴリズムは以下のよ

Type12.4

351,309

Type2*9.2

17,289Type312.2

1,000,000

ステップで駆動させる．このとき各相の端子電圧

Type4*6.726,044を取得し慣性モーメントを推定し，その値に応じType51.979,715

Type6*5.039,094Type7

1.717,399

Type8*

2.188,813

time-seriesを用いる．制御システムの構成図および補償要素うにして実施される．まず遮断周波数を決定する

spectrum

ため，ステッピングモータを 1 ステップだけフルて遮断周波数を決定する．このステップの駆動時
間 TS は，時系列データを用いる場合には 20.0ms，周波数スペクトルを用いる場合には 35. 0ms である．次に，補償要素を適用し角度目標値r からr’

Performance index E and number of lerning*: standardizedへ修正しつつ制御する．この制御システムによる振動抑制を定量的に評価するため，最終停止位置に端子電圧の周波数スペクトルを用いた場合，時における整定時間と行き過ぎ量を評価指標とし系列データを用いた場合に比べ推定精度が高く，て用いる．

学習回数も少ない．このことから，慣性モーメン
トの推定に周波数スペクトルを用いることで，推5.

慣性モーメントの推定実験定精度を向上できることが可能とわかった．
教師データを標準化した場合，学習回数は

表 6 のようにしてニューラルネットワークにType7-8 を除き減らすことができた．しかし推定教師データを与え学習させた．また，教師データ精度は Type3-4 を除き悪化している．

取得時と同一の条件で慣性モーメントの推定実時系列データを用いた場合および周波数スペ験を行った．実験結果を表 8 に示す．教師データ

6rotor inertia[N・m・s2/rad]605040験条件を以下に示す．駆動方法としては 8 分割のload1
load2
load3
load4
load5
load6

マイクロステップ駆動を用いる．駆動速度をフルステップ換算で 580pps，800pps として行う．また最終停止位置を 720deg.とする．ここで 580pps はフ30ルステップ，load4 接続，補償なしで 700deg.以上20駆動できる速度の最大値である．駆動時には慣性10負荷 load1～load6 を取り付ける．これに加えて，fc 値を全ての条件において最大負荷 load4 の値に0

図8Fig.8102030405060
Moment of inertia[N・m・s2/rad]

固定した場合の前置補償要素でも実験を行い，結慣性モーメントの推定値(Type1)果を比較する．

Estimated values of the moment of inertia (Type1)

6.2

実験結果

rotor inertia[N・m・s2/rad]60504030

load1
load2
load3
load4
load5
load6

図 10 に，load1，load3 時のモータ駆動時の回転子角度の時間変化を示す．図 10(a)~(d)はバタワースフィルタを用いた場合，図 10(e)~(h)はベッセルフィルタを用いた場合である．また 800pps に20おける整定時間を図 11 に，行き過ぎ量を図 12 に10示す．
まず教師データの違いを比較する．図 10(a)を0102030405060
Moment of inertia[N・m・s2/rad]

見ると，入力データとして時系列データを用いた慣性モーメントの推定値(Type7)

場合，周波数スペクトルを用いた場合双方とも似Estimated values of the moment of inertia (Type7)たような波形になっている．また，目標角度到達

図9Fig.9

時刻は時系列データを用いた方が短いことが分クトルを用いた場合それぞれに関して最も推定かる．図 10(b)~(h)でも同様のことが言える．つ

精度が高い推定結果を図 8，9 に示す．

まり速度，慣性モーメントの変化にかかわらず目時系列データを入力した場合は，Type1(標準化標角度到達時刻は時系列データを用いた方が短なし，各負荷データに対する教師データ数:1)のいことが分かる．これは推定に用いるデータの取場合が最も推定精度が高い．同様に周波数スペク得時間の差が表れたためと考えられる．

トルを入力した場合は，Type7(標準化なし，各負次にバタワースフィルタとベッセルフィルタ

荷データに対する教師データ数:5)の場合が最もの違いを比較する．図 10(a)~(d)を見た場合，バタ推定精度が高い．よって適応形前置補償要素にはワースフィルタを用いると行き過ぎ量が大きく，これらの推定システムを用いる．

目標角度到達時刻が短いことが分かる．また図10(e)~(h)を見た場合，ベッセルフィルタは整定時

適応形前置補償要素による制御実験

6.

間，行き過ぎ量が小さく，早期に整定している．
また図 10(a)(b)(e)(f)および図 11，12 を見た場合，

6.1

実験条件

低負荷時において，遮断周波数を一定にした前置補償要素に比べて目標角度到達時刻の遅れ，整定

適応形前置補償要素を用いた制御システム実時間，行き過ぎ量の増加が抑えられることが分か

7

Without pre-compensator

Adaptive pre-compensator(time-series)

Pre-compensator

Adaptive pre-compensator(frequency spectrum)730

rotor angle[deg.]

rotor angle[deg.]

730
720
710
700

700.0

800.0
time[ms]

720710700

900.0(a) filter:Butterworth (580pps load1)

rotor angle[deg.]

rotor angle[deg.]

710

700.0

800.0
time[ms]

720
710
700

900.0(b) filter:Butterworth filter (580pps load3)

rotor angle[deg.]

rotor angle[deg.]

800.0
time[ms]

900.0

filter:Bessel (580pps load3)

730

720
710

500.0

600.0
time[ms]

720
710
700

700.0

(c) filter:Butterworth (800pps load1)

500.0

600.0
time[ms]

700.0(g) filter:Bessel (800pps load1)

730

rotor angle[deg.]

730

rotor angle[deg.]

700.0(f)730720710
700

900.0

730

720

700

800.0
time[ms](e) filter:Bessel (580pps load1)

730

700

700.0

500.0

600.0
time[ms]

720
710
700

700.0

(d) filter:Butterworth (800pps load3)

500.0(h) filter:Bessel (800pps load3)

図 10 回転子角度の時間変化
Fig.10600.0time[ms]

Temporal variation of the rotor angle

8700.0Butterworth(time-series)

Bessel(time-series)

数スペクトルを用いることで推定精度が向上す

Butterworth(frequency spectrum)

Bessel(frequency spectrum)

ることが分かった．

Butterworth(constant)Bessel(constant)

また各データを標準化して用いた場合，標準化

Without pre-compensatorしない場合と比較して学習回数が減少する傾向がみられる．一方で，標準化することで推定精度200.0に関しては全体的に悪化している．ただし教師データが増えると精度が向上する傾向がみられる．

settling times[ms]150.0

これはデータ数が増えることでデータに含まれるノイズの影響が減るためと思われる．特に周波100.0数スペクトルを用いた場合には，標準化しない場
合の推定精度に大きく近づいており，教師データ50.0をより増やせば標準化しない場合の精度と同程
01020304050
Moment of inertia[N・・m s2/rad]

図 11
Fig.11度になる可能性があると思われる．

60以上のことから，標準化は教師データを増やす

整定時間の比較(800pps)ことで精度をさらに向上できる可能性があると思われる．

Comparison of settling time(800pps)

第 6 章においては，第 5 章で得た時系列データ，周波数スペクトル双方の慣性モーメント推定シ8ステムを用いた．慣性モーメントの推定に時系列データを用いた場合と周波数スペクトルを用いovershoot[deg.]

6た場合を比較すると，両者に大きな差がないことが分かった．これは 5 章での推定精度の向上の度4合いが，明確な差を生み出すほどなかったためと思われる．よって，今回の実験条件では，適応形

2

前置補償要素には推定時間の短い時系列データ
01020304050
Moment of inertia[N・・m s2/rad]を用いる方が良いと思われる．

60

またバタワースフィルタ，ベッセルフィルタの

図 12 行き過ぎ量の比較(800pps)違いを比較し，バタワースフィルタは目標角度到Fig.12

達時刻が早く，ベッセルフィルタは整定時間，行Comparison of overshoot(800pps)

き過ぎ量の小ささに優れていることが分かった．
った．

このことから，制御系の設計仕様に応じてフィルタを使い分ければ，より目的に適した適応形前置

7.

考察

補償要素による制御が行えると思われる．

第 5 章においては，教師データに時系列データ

8

おわりにを用いる場合，周波数スペクトルを用いる場合，それらを標準化して用いる場合でニューラルネ

本研究では，ニューラルネットワークの教師デットワークの学習を行い，それらの推定精度，学ータとして端子電圧の時系列データと周波数ス習回数を比較した．その結果，教師データに周波ペクトル双方を用い，推定精度を比較した．また

9

教師データの値を標準化して行い，それらの推定結果と学習回数を比較，検討した．またその推定システムを適応形前置補償要素に用いることで，遮断周波数の調整法の改善を図った．
周波数スペクトルを用いることにより，時系列データを用いる場合よりも高精度な推定が可能となった．また標準化においても，教師データの数を増やすことで，精度が向上する可能性が示された．
しかし適応形前置補償要素に用いる場合，双方の回転子角度の時間変化に大きな違いはなかった．よって今回の実験の範囲内では，推定時間の短い時系列データを用いる方が良いと分かった．

参考文献

1)

百目鬼英雄：ステッピングモータの使い方，7/42，工業調査会(1993)2)

三浦武，谷口敏幸，百目鬼英雄：前置補償要素の適応によるステッピングモータのマイク
ロステップ駆動時における回転子振動の抑制，電学論 D，Vol.120，No.12，1462/1470，(2000)
3)

細野寛，松尾健史，三浦武，田島克文，米田真：
ニューラルネットワークを用いたステッピン
グモータの慣性負荷の推定，計測自動制御学会
東北支部第 259 回研究集会，259-7(2010)4)小松田弘瑛，松尾健史，三浦武，田島克文，米田真：適応形前置補償要素を用いたステッピン
グモータの回転子振動抑制，計測自動制御学会
東北支部第 267 回研究集会，267-10(2011)5)坂和正敏，田中正博：ニューロコンピューティ
ング入門，25/37，森北出版株式会社(1997)

10