川島・大峠：ACサーボモータコントローラの試作と動作試験

資料

ACサーボモータコントローラの試作と動作試験
川島
1．目

崇宏＊・大峠忍＊

表1 ACモータ（山洋電気製R2AA06040FXS00M）の仕様

的項目

仕様

へ対応するために日本の製造業にはより一層の効率化が

電源電圧

三 相 C200V ～ 230V
50/60Hz±3Hz求められており，それを実現するためには高いレベルでの定格出力（連続）0.4 kW

FA（factory automation）の推進が必須となる．

定格トルク（連続）1.27 N・m

瞬時最大ストールトルク

4.8 N・mランニングコストまで含めて考えて低コスト化が可能な

定格回転速度

3000 rpm

ACサーボモータが今後主流となっていくものと考えられ最高回転速度

る．ACサーボモータはDCサーボモータに比較して駆動制

6000 rpm

定格電機子電流2.8 A

瞬時最大ストール電機子電流10.8 A

極数102000 PPR（インクリメンタル）

労働人口の減少や働き方の変化といった社会情勢の変化

FAのあらゆる場面において用いられるサーボモータは，御が複雑であるため，高度な自動化システムや生産ロボットを構築する際には高性能な制御装置が必要になる．
高度なFAシステムに用いられるACサーボモータの制御には市販の高性能なPLC（programmable logic controller）ロータリエンコーダ分解能が使用されることが多い．市販の高性能PLCは汎用性が高
く，機能も豊富で，多岐にわたる応用が可能である反面，回転位置検出器として2000パルス/回転の分解能を持つイ必要のない機能が含まれたり，性能過剰になったりするこ

ンクリメンタルエンコーダが付属している．出力はFAでとがあり，カスタムの自由度の面では不満が残ることも多用いられることの多い0.4kWとした．

くある．また，モータ自体の価格（よく用いられる0.4kW

図1に試作するサーボコントローラの機能（制御）ブロッ程度のもので3～5万円）に比較してそれを制御するためのク図を示す．それぞれの機能は次のとおりである．

PLCの価格が高い（20万円程度）こともACサーボモータ

2.1.1

導入の障壁となっている．

パーソナルコンピュータ（以下PCと表記する）

PCからUSBでサーボコントローラに目標位置指令のコACサーボモータのコントローラ（以下サーボコント
ローラと表記する）は，汎用のマイコンとFPGAもしくは1）

CPLDを用いて自作することができ ，PLCを用いるのにマンドを送る．PC側はUSB，マイコン側はボード搭載のUSB-UART変換回路を利用してソケット通信を行う．
2.1.2

サーボコントローラ

比べて大幅にコスト低減が可能である．そこで，本報で速度軌跡計算器とPI制御の速度制御器，ベクトル制御には必要な機能のみに絞った安価なサーボコントローラを，よる電流（トルク）制御器から構成する．電流制御系の外汎用のマイコンとFPGAを搭載した17,000円弱のボードをに速度制御系を構成する．

使って試作し，動作試験を行ったのでその結果を報告する．

2.1.3

2．方

モータ駆動アンプ

三相交流入力のコンバータと三相のフルブリッジ・イン法

バータによる構成で，各相の電流を測定するために電流検2.1 機能仕様

出抵抗を付ける．

表1に，試作するサーボコントローラで制御の対象とす

2.2

ハードウェア全体構成

るACモータ（山洋電気製R2AA06040FXS00M）の仕様を

図2にハードウェアの全体構成を示す．構成要素は，サー示す．このモータは，三相200V，60Hzの動力電源を使用

ボコントローラ，モータ駆動アンプ，サーボコントロー

する3000rpm回転の汎用的なACモータである．ロータのラとモータ駆動アンプを中継するPM_IFボード，サーボ＊

次 世代パワーエレクトロニクス技術開発プロジェクトチーム（現:電子・電気技術科）

コントローラ搭載のAD変換器への入力信号の中継をする
ADC-IFボード，ACモータである．サーボコントローラにはACアダプタを用いて直流電圧5Vの電源を供給する．

― 29 ―

島根県産業技術センター研究報告第55号 （2019）

サーボコントローラ
サーボコントローラ

速度軌跡
速度軌跡
計算器
計算器

＋＋
速度
速度
指令
指令

ACモータ
ACモータ

PI制御のPI制御の速度制御器
速度制御器

－－

目標位置
目標位置
指令
指令

電圧指令
電圧指令
ベクトル制御 PWMPWM
による電流ベクトル制御
電流制御器
電流による電流
（トルク）
（トルク）
制御器
指令
指令

図1PC
CN9 CN8

ACアダプター（絶縁）
AC100V-DC5V

NC

ADC_IFボード
DE0-Nano-SoCボード

USB

InrushCN5

DIPIPM+

電圧
検出

CON4
CON3レベルシフト

CN4 電流検出信号

CN6

GND 5V

3相コイル
U相V相
W相

アンプ

CN1

差動
シングルエンド
変換

ACモータ
山洋電気製
R2AA06040FXS00M

3φ 200V

電流検出信号

5VNC

1φ 100V

モータ駆動アンプ

LPF

CN3

エンコーダ
エンコーダ

サーボコントローラ機能ブロック図

サーボコントローラ
CN7

モータ
モータ

電流
電流

位置
位置

USB

ロータリ
エンコーダ
パルス
信号

電流センサ
電流センサ

位置-速度
位置-速度
変換
変換
（微分器）
（微分器）

PC
PC

電流、電圧検出信号

モータ駆動アンプ
モータ駆動アンプ 三相
三相インバータ 電流電流
インバータ

CON1
15V CN2

DC/DC
コンバータ

三菱電機DIPIPM+ CON5
評価ボードEVA03-DIP+制御信号（PWM等）280V+

PM_IFボード

図2

CON2

ロータリエンコーダ（インクリメンタル）
GND
5V
A+
AB+
BZ+
Z-

ハードウェア全体構成

モータ駆動アンプには，モータの動力として三相200Vのを示す．Cyclone V SoCは，マイコンによるデジタル演算交流電源を入力する．サーボコントローラには，Intel社

処理に加えて，FPGAでユーザが任意のデジタル回路を作（旧Altera社）製ARMマイコン搭載FPGAであるCyclone

成でき，処理をソフトウェアとハードウェアに最適に割

V SoCの開発ボードDE0-Nano-SoCボード（Terasic社）をり振ることで効率化や高速化が可能である．このボード使用し，目標移動距離の指令等のためPCとUSBケーブルには，FPGAのコンフィギュレーションデバイスやプログで接続される．モータ駆動アンプには三菱電機製IPM（イラマに加えて，イーサネット，micro SDカードソケット，ンテリジェントパワーモジュール）のDIPIPM+シリーズ

UART-USB変換器といったマイコンの外部アクセスツー

PSS15MC1FTとその評価ボードEVA03-DIP+を用いる．

ルが搭載されている．その他にも，AD変換器や加速度セ

図3にDE0-Nano-SoCボードを，表2.1，表2.2 にその仕様

ンサ，LED，ボタン，スイッチなど多岐にわたる開発を― 30 ―

川島・大峠：ACサーボモータコントローラの試作と動作試験
表2.1
表2.1

DE0-Nano-SoCボードFPGAサイド仕様
DE0-Nano-SoC ボード FPGA サイド仕様

項目

仕様

デバイス名

Cyclone V SE
5CSEMA4U23C6N
40,000

ロジックエレメント数
ロジック用クロックソース
周波数
組み込みメモリ

図3

DE0-Nano-SoCボード

50 MHz2,460 Kbits

PLL

5個

ハードメモリコントローラ
コンフィギュレーションデバ
イス
オ ン ボ ー ド USB-Blaster II（プログラマ）2個
EPCS128
JTAG ModeUSB mini-B 接続
LTC2308 （ 12-bit ，500ksps ， 8ch ， 0V ～4.096V，SPI 通信）

AD 変換器表2.2
表 2.2 DE0-Nano-SoCボードマイコンサイド仕様
DE0-Nano-SoC ボードマイコンサイド仕様
可能とするツールが搭載されている．

項目仕様

2.3

デバイス名

デュアルコア ARM
Cortex-A9

ソフトウェア全体構成

図4にサーボコントローラのソフトウェアの全体構成を搭載メモリ

1 GB DDR3示す．構成要素はFPGAで作成されるモジュールによってHPS 用クロック周波数実装される機能とマイコンのプログラムによって実装されイーサネットる機能の2種類に分かれる．それぞれの構成要素の機能ブ

SD カード925 MHz
10/100/1000 Base-T(KSZ9031RN)
micro SD カードソケット
FT232R （ UART-USB 変換），USB mini-B 接続
SMSC USB3300
USB micro-AB 接続
ADXL345

ロックの括弧の中に記載しているのは，FPGAの場合ではUART

機能を司るモジュール名，マイコンの場合では関数名であOTG

る．FPGAで実装する機能は，PWM信号生成，AD変換，ロー加速度センサ

タリエンコーダパルスカウント，割り込み周期生成，ハードストップである．マイコンで実装する機能は，初期設定，電流ループ，速度ループ，UART通信処理，エラー処理でから回転方向の判別を行い，回転方向をパルスカウントのある．

符号に反映する．
2.3.1.4

各要素の機能は次のとおりである．

割り込み周期生成

2.3.1

FPGAで実装する機能

マイコンサイドで行う電流ループと速度ループの割り込

2.3.1.1

PWM信号生成み処理開始のタイミングを与えるパルス信号を，クロックモータ駆動アンプの中の三相インバータを構成する6つ信号のカウントを用いて生成する．電流ループの割り込みの半導体スイッチングデバイスのスイッチングを制御する

処理（割込1）開始要求はPWM信号と同期して行い，速ためのデッドタイム入りのPWM信号を，クロック信号の度ループの割り込み処理（割込2）開始要求はその20倍のカウントを用いて生成する．生成するPWM信号の周波数，周期（割込1要求の20回に1回の頻度）で行う．

デューティ，デッドタイムはマイコンから取得する．また，

2.3.1.5

異常検出時の停止信号を受けた場合には，マイコンから受け取ったデューティの値に関わらずデューティ0のPWM

異常検出時にPWM信号生成器に停止信号を送り，迅速にモータ駆動アンプを停止させる．

信号を生成し，インバータを停止させる．
2.3.1.2

検出対象となる異常状態は過電流，過電圧，電圧低下のAD変換3種類で，異常検出時にはエラーの種類に応じたエラーフ

コントローラボード上のAD変換器（LTC2308）と通信ラグ信号を出力する．

し，AD変換された電流検出信号及び電圧検出信号をマイ2.3.2

コンで取得できるようにする．

2.3.2.1

2.3.1.3

ハードストップ

ロータリエンコーダパルスカウント

マイコンで実装する機能
初期設定

スイッチング周波数やデッドタイム，制御パラメータのモータ付属のロータリエンコーダから送られてきたA初期値，保護機能の動作閾値など各種機能の初期設定を行相，B相，Z相の3つのパルス信号をカウントし，モータのう．

回転速度やロータ位置についての情報源となるパルスカウ

2.3.2.2

ント値を出力する．また，A相とB相のパルスの位相関係― 31 ―

電流ループ

割り込み要求1の受け付け時に実行する．行う処理は次島根県産業技術センター研究報告

図4第55号 （2019）

ソフトウェア全体構成のとおりである．

割り込み要求1が生じた場合には電流ループの処理を優先・ロータ位置検出して行い，電流ループ処理終了後に処理を再開する．
行う処理は次のとおりである．

FPGAからロータリエンコーダパルスカウント値を取得

・速度軌道計算

し，現在のロータ位置（角度）を検出する．

PCからUARTで送られてきた目標位置から，そこに至・ロータ回転速度算出
現在と過去のロータ位置の差分をとり，その間の時間でるまでの速度軌道を生成する．生成される速度軌道は目標位置の距離によって2種類ある．図5に，アクチュエータの除算することで現在のロータ回転速度を算出する．

移動速度上限値をVMAXとしたとき，速度をVMAXに到達さ・電流検出値取得
FPGAからU相電流値iuとV相電流値ivのAD変換結果をせるのに十分な長さの移動距離がある場合の速度軌道を示取得する．W相の電流値iwについては，三相交流で成りす．この軌道では加速期間（時間tが0～ t1の期間），減速立つiu+iv+iw=0の関係より算出する．

期間（tがt2～ t3の期間）ともに正弦波状に速度変化させる．

・電流ベクトル制御演算

速度がVMAXに到達してから減速期間に入るまでの間（tが取得した各相電流値とロータ位置からベクトル制御1）のt1～ t2の期間）は速度をVMAX一定とする．

座標変換を行い，d軸電流（界磁電流），q軸電流（トルク

加速期間と減速期間は目標位置に依存しない固定値と電流）を算出する．算出した各軸の電流成分についてPI制しており，FAST，MIDDLE，SLOWの3種類設定できる．

御演算を行い，各軸の電流指令値に追従するために必要なFASTは，加速期間，減速期間ともに0.5秒の速度軌道を生各軸の電圧指令値を算出する．その後，d軸，q軸各軸の成する．MIDDLEでは1秒，SLOWでは2秒で加減速する．

電圧指令値を逆変換してU相，V相，W相の各相電圧指令

目標位置までの距離が短く，速度がVMAXに到達する前値を算出する．なお，今回の試作ではモータ制御の際にリに減速する必要がある場合は，加速期間及び減速期間を据

ラクタンストルクの活用や高速回転時の弱め界磁制御を行え置いて，最高速度を減少させることで移動距離を調節すわないものとする．そのため，d軸電流指令値を0として，る．その場合の速度軌道を図6に示す．この軌道では速度界磁への操作を行わないようにする．q軸電流指令値には一定の期間は存在せず，加速した後即座に減速し停止する

速度PI制御演算で算出されるトルク電流指令値を適用す

間にアクチュエータが移動する位置が目標位置と一致する

る．

ような最高速度V’MAXを算出して速度軌道を生成する．

・PWM信号のデューティ設定

・速度PI制御演算

電流ベクトル制御演算によって算出された電圧指令値か生成された速度軌道上の現時点の速度からロータ回転速ら各相のデューティを算出し，PWM信号生成器へ送る．

度指令値を算出し，電流ループで算出された現在のロータ

2.3.2.3

回転速度と差分をとり，PI制御の演算を行う．算出される

速度ループ

割り込み要求2の受け付け時に実行開始する．処理中に制御量は，電流ループの電流ベクトル制御演算で使用する― 32 ―

川島・大峠：ACサーボモータコントローラの試作と動作試験
速度v

vMAX00t2t1t3

時間

図5
図 5 移動距離が十分長いときの速度軌道
移動距離が十分長いときの速度軌道
速度v

図7

試作したハードウェア回路

vMAXvʼMAX0t10

図6
図6t2

時間t

移動距離が短く，Vまで加速できないときの移動距離が短く，
VMAX MAXまで加速できないときの
速度軌道
速度軌道

図8
トルク電流指令値となる．
2.3.2.4

表 3 電動アクチュエータETS-14-10-105-EM4NAANの仕様
電動アクチュエータETS-14-10-105-EM4NAANの仕様
表3

UART通信処理

項目

PCのUSBとコントローラボード搭載のUSB-UARTを介してUARTで通信し，PCから目標位置データを受け取る．
startUART関数でUARTの通信を開始し，parseCommand関数でデータの受信と内容の解釈，データ抽出を行い，抽出したデータから目標位置を取得し，速度ループの速度軌道計算で利用する．
2.3.2.5

電動アクチュエータ動作試験システム

エラー処理

FPGAで過電流，過電圧，電圧低下の異常検出をした場

ボールねじリード10 mm

ボールねじ外径16 mm

ボールねじ精度等級

C7

ストローク1050 mm

本体幅135 mm

最大可搬質量水平 88 kg，垂直 22 kg
250 mm/s（モータ回転速度1500 rpm）
694 N

最高速度

合と，電流ループで算出されたロータ回転速度が上限を上仕様

推力回った場合に，コントローラを緊急停止状態に切り替えるとともに，発生した異常の種類をエラーフラグで通知する．の時間に対するモータ回転速度（回転数z [rpm]）及びア

2.4

クチュエータ移動距離（位置y [mm]）のグラフを示す．

動作試験システム

図2に示すハードウェアの回路部分を実際に設計，試作

このグラフはマイコン上で算出した値をUARTによる通したものの写真を図7に示す．回路はアルミ製の箱に入れ，信で受け取ったものをPC上のGUIで表示させたものであ底面にパワー半導体モジュールの放熱のためのヒートシンり，1200ms付近と3000ms付近に通信時に混入したノイズ

クを装着した．

によるデータ受信異常によるものと思われる異常値が含まACモータはCKD株式会社製の電動アクチュエータETS-れていることが確認できる．

14-10-105-EM4NAANに装着した．表3にその仕様を示す．

モータ回転速度は1秒（1000ms）間に緩やかなカーブ

電動アクチュエータには矢印とスケールを取り付け，移動で上昇して，電動アクチュエータの仕様上の最高速度距離が測定できるようにした．図8に動作試験に用いたア

1500rpmに到達した後1500ms程度の間一定制御が働いてクチュエータシステムの写真を示す．

1500rpm付近の値で推移し，その後1秒間で緩やかに下降

3．結している．200rpm以下の速度では，図5に示す目標軌道の果ように緩やかな速度変化をしておらず，加速時は0rpm付

図9に加減速の速さMIDDLE（加減速期間1秒）の条件

近から急峻に立ち上がっており，減速時は急峻に0rpm付で，目標移動距離600mmを送信して動作試験を行った際近へ立ち下がっている．このことから，200rpm以下の低― 33 ―

島根県産業技術センター研究報告第55号 （2019）

図9 目標移動距離600mmの時のモータ回転速度，
移動距離軌道図10 目標移動距離200mmの時のモータ回転速度，移動距離軌道

速度領域を除いた速度域においては，設定した加減速の速と減速の後期のモータ回転速度が200rpm以下の低速度領さで図5に示すような速度軌道に沿った速度制御がおおよ域の期間における移動不足と考えられる．

そ実現できていることが確認できる．一方，200rpm以下以上の結果から，現状の制御システムでは，速度がの低速度では精密な速度制御が実現できておらず，目標の200rpm以下程度の低速度になると精密な速度制御が困難速度軌道が実現できていなかった．になり，加速期間初期と減速期間後期に速度が指令値に追移動距離の軌道については，低速度領域以外では正弦従しないため，アクチュエータが目標位置まで到達しない波状に加速・減速が行われていることからおおよそS字という問題が発生した．市販されているACサーボモータカーブを描いていることがわかる．最終的な到達位置の目標位置到達性能は通常誤差1%未満にはなるため，本は500mm付近で，目標とする600mmまで至っていない．

報の試作サーボコントローラの位置制御の誤差20%程度でこれは，加速の初期と減速の後期のモータ回転速度がはあまりに誤差が大きく，実用化するためには大幅な性能200rpm以下の低速度領域において，速度が指令値に追従改善が必要となる．一般的に，モータを定格回転速度に比せず0付近にあったことで，その期間の移動距離が少なく較してかなり低い回転速度で精密に制御することは困難でなったことが主な原因と考えられる．

あるため，目標位置から生成した速度軌道への追従に頼る

図10に加減速の速さMIDDLEの条件で，目標移動距離のみの現状の制御方法ではこの課題の解決は難しいものと200mmを送信して動作試験を行った際の時間に対する考えられる．そのため，今後は目標位置軌道も生成し，現モータ回転速度及びアクチュエータ移動距離のグラフを示

在位置との誤差を検出して，その誤差を補正するように速す．このグラフにもデータ受信異常によるものと思われる

度指令値を補正するような制御方法に改める必要があると異常値が900ms付近のところに含まれている．

考えられる．

モータ回転速度は，この場合も200rpm以下辺りの低速謝度領域で図6に示す目標軌道のように緩やかな速度変化で辞はなく，加速時は0rpm付近から急峻に立ち上がっており，本報で報告した試作を行うに際して，資材提供及び有益

減速時は急峻に0rpm付近へ立ち下がっている．200rpm以なご助言，ご助力を頂きました島根自動機株式会社，ホシ下を除いた速度域では正弦波状の緩やかな軌道で上昇しザキ株式会社，株式会社イワタクリエイト，並びにGUIの作て，その後すぐに下降しており，移動距離が短い場合も成，提供をいただきました名城大学に深く感謝いたします．

200rpm以下の低速度領域を除いて図6に示す速度軌道が実文現できていることが確認できる．
移動距離については，この場合も目標値に対して大幅に不足している．原因は，図9の場合と同様に，加速の初期

献1）石島勝. 小型ACサーボ・モータの制御回路設計. 第3版, CQ出版,
2014, 200p.

― 34 ―