2 足歩行ロボットのモデルベース開発(SILS) - MathWorks

2 足歩行ロボットのモデルベース開発(SILS)
デモンストレーション概説書
近年、制御システム開発において、モデルベース開発(Model Based Development:MBD)と呼ばれる開発手法が注目
されています。MBD における SILS(Software In the Loop Simulation)は、シミュレーション環境上に構築した制御対象の
モデルに対し、制御則をソフトウェアとして評価 / 検証するものです。本デモは 2 足歩行ロボット教材「e-nuvo(イーヌー
ボー)」(株式会社ゼットエムピー)を用いて、ロボットの制御則の評価 / 検証を SILS にて行った事例をご紹介します。SILS
環境は MATLAB ®/Simulink ®上に構築します。
キーワード: 2 足歩行ロボット、e -n u v o 、S I L S 、レガシーコード、自動生成コード、S -F u n c t i o n 、S i m M e c h a n i c s、
SimPowerSystems、PWM 制御
1 導入
一般に、設計/開発において、既存システムのレガシー
(資産)を活用しながら、レガシーの一部を新規で置き換
えていくことは多々見受けられます。
本デモは2足歩行ロ
ボットの制御則設計でのレガシーから M BD へのリプ
レースを想定し、MBD の手法でどのように行うか図 1-1
のフローに従い事例を示します。但し、レガシーの一部
の置き換えに特化する考えではなく、フローからレガ
シーコードの項を除けば、一般的な新規システムにおけ
るSILSのフローと見なすことが可能です。
図 2-1 e-nuvo のモータ及び制御基板の位置
図 1-1 リプレースのフロー
2 e-nuvo について
図 2-2 e-nuvo の PID 制御則の構造
2 足歩行ロボット e-nuvo は、各脚 6 関節、計 12 関節を備
えています。「1 関節」=「1 モータ」=「1 自由度」であ
3 SILS について
り、12自由度を持つ二足歩行ロボットであると表現する
こともできます。各関節の回転方向は、足首:ロール方向
とピッチ方向の2自由度、膝:ピッチ方向のみの1自由度、
股関節:ピッチ・ロール・ヨーの 3 自由度となります。 また、各モータ、制御用の基板等は、図 2-1 の位置に配置
されています。e-nuvoの動作を定める 12関節分の角度設
3 . 1 導入
本章では、図1-1のフローに基づき、デモにおけるSILS
の工程を説明します。
す。各関節は DCギアドモータ 12点により駆動されます。
3 . 2 ①レガシーコードと等価な
S i mu l in k モデルの作成
図 2-1 のサブ CPU 基板上の H8S(株式会社ルネサステクノ
本デモで用いるレガシーコードは図2-2におけるPID制
ロジ)に実装されたソフトウェアより関節角度の設定値追
御則を記述したものです。
図3-1にレガシーコードと等価
従の PID 制御が行われます。関節角はセンサ(ポテンショ
なSimulinkモデルを示します。
レガシーコードでは各変数
メータ)により取得されます。DCギアドモータはHブリッ
に様々な数値型を指定しており、
Simulinkモデルでは各箇
ジで PWM 制御されます。(図 2-2 参照)。
所でその型に合わせることが必要です。
定値は e-nuvoの外部から時系列データとして与えられま
2 足歩 行 ロ ボッ ト の モデ ル ベ ース 開 発( S I L S )
3.5 ④ SILS 環境の構築
図 3-3 に、Simulinkで作成した SILS環境を示します。②
右足膝の関節以外の関節には、角度、角速度及び角加速
度で構成されるモーションデータが与えられます。②右
足膝の関節について、以下のようにSILSを構築します。2
足歩行ロボットの機構系、電気系を合わせたモデルを制
御対象とします。①機構系モデルは SimMechanicsで構成
します。③電気系モデルは SimPowerSystemsの DC モータ
と Hブリッジ、PWM生成器及びギア等で構成します。④
は PID制御則となり、⑤ Simulinkモデル、⑥レガシーコー
ド及び⑦自動生成Cコードを適宜切り替えられます。⑥、
⑦は各々レガシーコード、
自動生成Cコードをラップした
S-Function です。このモデルの狙いは図 2-2 における関
図 3-1 Simulink モデルとレガシーコード
節1個分のPID制御構造をシミュレーション環境上に再現
3 . 3 ② S imu l in k モデルの C コード自動
生成
し、Simulink、レガシーコード及び自動生成 Cコードの評
価を行うことです。
SimulinkモデルからCコードを自動生成し、ターゲット
に実装する技術は、MBD を支える基幹の一つと言えま
す。図 3-1 に示した Simulinkモデルから Simulinkオプショ
ンの Real-Time Workshop®及び Real-Time Workshop Embedded Coderを用いて、実装により適したCコード自動生
成を行うことが可能です。
3 . 4 ③ S imu l in k モデルと C コードの
評価
C コードと Simulink モデルの等価の確認には以下の手
順が有効な手法の一つです。C コードを S-Function に取
り込み、Simulink 環境上で Simulink モデルと S-Function
に等しい入力を与えたとき、等しい出力が出るかを評価
図 3-3 SILS 環境のモデル
します。図3-1の評価用モデルでは、レガシーコードと自
動生成コードをS-Functionに取り込み、各々②と③として
3.5 ⑤ SILS 環境上での評価
います。①は図3-1①に示したSimulinkモデルです。シミュ
図 3-4 左に、図 3-3のモデルのシミュレーション結果を
レーションの結果⑤から、①と②、②と③の差分出力は
示します。①では実機と同様に、設定値に対してやや遅
常時 0 となり、等価なことが確認できます。
れ気味で追従する傾向が確認できます。
②は図3-3④が出
力するデューティ比です。参考までに図 3-4 右に他モー
ションの実測データを示します。
図 3-4 シミュレーション結果と他モーションの実測値
使用ツール等
図 3-2 Simulink モデルと C コードの評価環境
MATLAB, Simulink, SimMechanics,SimPowerSystems,
Real-Time Workshop,Real-Time Workshop Embedded Coder
© 2009 The MathWorks, Inc.
/〒15 3- 00 42
東京都目黒区青葉台4-7-7青葉台ヒルズ10F
TEL( 03)573 8-4855
F AX(03) 5738-4 838 2足歩行ロボット「e-nuvo」については
株式会社ゼットエムピー 教材担当 E-mail:[email protected] http://www.zmp.co.jp/html/products_education.html
株式会社ゼットエムピーにお問い合わせください。