FPGA の活用による電子回路の高性能化に関する研究－多軸モーションコントロールの開発－

Study on superior performance of electronic circuit using FPGA
－Development of Multi-axis motion control－
村井博、柳浦一美 ＊ 、小島賢司 ＊ 、中村一也 ＊（＊アダマンド並木精密宝石株式会社）
システム集積技術を県内企業に普及させるため、 FPGA ※ が持つ並列処理性能や柔軟性を生かした多軸モータ制御システムを開発した。従来、マイコンによるモータ制御では 2～3 軸でも対応が困難であったが、これを FPGA へ置き換えることにより１つのシステムで 10 軸以上の同時制御を目指す。ブラシレス DC モータを専用ドライバ IC で駆動する形態を想定しており、多数のドライバ IC とのインターフェースを FPGA が担う。
昨年度は FPGA によるモータ駆動の基礎技術を確立するため、1 軸に限定してモータ制御システムを構築し、さらに 4 軸同時制御に対応する制御システムを試作した。
今年度は昨年度の成果を発展させ、15 軸の同時制御に対応した制御基板を新規に開発した。さらに、12 軸のモータを有するロボットハンド 注） の制御に応用し、実用性を評価した。その結果、多軸化と小型化が十分両立可能であることが確認された。
※ FPGA：ユーザーが回路情報を書換え可能なデジタル回路 Field-Programmable Gate Array の略称

制御基板を搭載※

図１

15 軸対応モータ制御基板

図２ 12 軸のモータを有するロボットハンド 注）

注）本ロボットハンドの研究開発は, 総合科学技術・イノベーション会議が主導する革新的研究開発推進プログラム（ImPACT）の一環としてアダマンド並木精密宝石㈱が実施したものである。

－1－

１．はじめにシステム集積技術を県内企業に普及させるため、 FPGA ※ が持つ並列処理性能や柔軟性を生かした多軸モータ制御システムを開発した。従来、マイコンによるモータ制御では 2～3 軸でも対応が困難であったが、これを FPGA へ置き換えることにより１つのシステムで 10 軸以上の同時制御を目指す。ブラシレス DC モータを専用ドライバ IC で駆動する形態を想定しており、多数のドライバ IC とのインターフェースを FPGA が担う。
昨年度は FPGA によるモータ駆動の基礎技術を確立するため、1 軸に限定してモータ制御システムを構築し、さらに 4 軸同時制御に対応する制御システムを試作した。
今年度は昨年度の成果を発展させ、15 軸の同時制御に対応した制御基板を新規に開発した。さらに、12 軸のモータを有するロボットハンド 注） の制御に応用し、本システムの実用性を評価した。
２．実験方法本システムが制御対象としている小型モータを図１に示す。アダマンド並木精密宝石㈱製のブラシレス DC モータで、定格出力 16.5W、無負荷回転数 40,000rpm の能力を有している。このモータは専用のドライバ IC にて駆動するが、この IC の制御を FPGA が行う。この小型モータをターゲットとした多軸モータ制御基板の開発仕様を表１に示す。最多で 15 個のモータの同時制御を目標に掲げた。また、制御システム全体の構成としては、制御基板の上位コントローラとして PC を擁し、UDP/IP 通信にて各軸の指令を受け取る構成とした。
表1

図1

多軸モータ制御基板

仕様

制御対象の小型モータ

表１に示す仕様に基づいて検討した結果、基板サイズの制約も鑑みて、FPGA 基板とドライバ ICを搭載したインバータ基板の２枚構成とした。FPGA 基板の構成を図２に示す。FPGA は Intel 社(旧 Altera 社)の MAX10 シリーズ、10M50DAF255C8G（50kLE、FBGA 255 ピン）を採用した。
この FPGA に、各軸のモータードライバ IC やモータから接続される信号線がそれぞれ 15 系統、ならびに２系統の A/D コンバータの制御 I/O、PC と通信する Ethernet インターフェース全てを直結した。FPGA に接続したユーザーI/O ピン数は計 129 ピンである。

－2－

15/
15/
/ 15PWM
DIR
Break_n

モータドライバへ

15/15/A相B相エンコーダから電流相当電流センサから

FPGA 基板

Ethernet PHY

RJ-45

Microchip

17KSZ9031RNX RGMII/A/DFPGAIntel MAX108制御 /I/O

10M50DAF255C8GConverter

計 129 ピン

850MHz

制御/ I/O

CLK

アナログ電圧TI ADS1158

A/D

ユーザーI/O

15/Converter

15 トルク相当/トルクセンサからアナログ電圧TI ADS1158

モータ信号線

図２

FPGA 基板

ブロック図

計 105 本また、FPGA 内部のプログラムは１系統の UDP/IP 通信機能、15 系統の PWM 出力、エンコーダカウンタ、２系統の A/D コンバータのコントローラを実装する必要がある。本開発では Grove
Design Service 社 が提供している UDP コアを採用し、全体のフレームワークとした。このフレームワークでは Intel 製 FPGA で動作するソフトコア CPU の Nios II が UDP/IP プロトコルスタック用とユーザアプリケーション用に２つ実装されている。この構造を生かし、アプリケーション用 C プログラムにて UDP/IP パケットの送受信命令を記述し、各軸モータの制御はハードウェア記述言語 VHDL により周辺装置（ハードウェア）として作成して Nios II CPU のバス配下に接続する形でプロセッサシステムを構築した。この FPGA 内部ロジック構成を図３に示す。

図３ FPGA 内部ロジック構成（引用元 Grove Design Service 社 UDP コア資料に加筆）

－3－

３．結果
図２のブロック図に倣って試作した制御基板を図４に示す。FPGA 基板とインバータ基板の２枚重ねにより、70mm×82mm、基板間 5mm のサイズとなった。当初目標の 70mm×70mm からは若干拡大しているが、後述する実証試験においては問題ないサイズであることを確認している。

(a) FPGA 基板(b) インバータ基板
図４(c) 全体像（２枚重ね）

15 軸対応モータ制御基板

一方、図３の構成を FPGA にプログラムした結果を表２に示す。FPGA 開発ツールは Intel
Quartus Prime v16.1 を用いてコンパイルした。表２の(a)は FPGA が持っている回路リソースの消費量を表している。Logic Element 数は約 17kLE であり、約 34%の使用率であった。また、(b)はソフトコア CPU の Nios II で実行されるソフトウェアのメモリ量であるが、これらは FPGA 内蔵メモリの容量で賄うことができた。このとおり、15 軸同時制御の回路とネットワーク機能が外付けメモリなしで構成できたのは、FPGA の優位性であるシステム集積の効力が発揮されたことによる。

表２

FPGA 内部内部リソース消費量(a) FPGA ロジック回路量(b) Nios II ソフトウェア メモリ量

この制御基板を用いて、12 軸のモータを有するロボットハンド 注） にて動作検証を行った。制御基板を搭載したロボットハンドを図５に、制御システム全体を図６に示す。図５のとおり、制御基板はロボットハンドにおける手の甲の位置に搭載した。つまり、ロボットハンドの可動域に干渉しないよう小型化できたとともに、各軸モータと最短で配線することができた。このようにモータ制－4－

御システムを FPGA で構築することはロボットの小型化にも大きく役立つことを示すことができた。
この実用性評価を受けて、アダマンド並木精密宝石㈱ではロボットハンド、制御基板、PC ソフトウェアを含む多軸モータ制御システムを受注生産品として製品化した。

図５12 軸のモータを有する

図６ 多軸モータ制御システム全体

ロボットハンド 注）

４．まとめ
FPGA が持つ並列処理性能や柔軟性を生かし、多軸モータ制御システムを開発した。15 軸の同時制御に対応した制御基板を新規に開発した。さらに、12 軸のモータを有するロボットハンド 注） の制御に応用し、本システムの実用性を評価した。その結果、小型化と多軸化の両立を達成することができた。本研究開発の成果は、さまざまなロボットの制御システムを構築する上で、活用が期待される。

注）本ロボットハンドの研究開発は, 総合科学技術・イノベーション会議が主導する革新的研究開発推進プログラム（ImPACT）の一環としてアダマンド並木精密宝石㈱が実施したものである。

－5－