Title ブラジルにおける土地なし農民コミュニティに …1 ブラジルにおける土地なし農民コミュニティに対する教育 -土地なし農民運動(MST)に着目して-
ロボット開発における モデルベース活用 - IPA · ロボット開発における...
Transcript of ロボット開発における モデルベース活用 - IPA · ロボット開発における...
ロボット開発における モデルベース活用
SysMLによる上流設計と、高信頼、安全性の確保
(独)産業技術総合研究所
知能システム研究部門
ディペンダブルシステム研究グループ長
中坊 嘉宏
0 2014/7/30
モデルを使う意義を考える
• なぜモデル(SysML)を使うか?
• 目的が大事 (モデル地獄に落ち入らないために)
1. コミュニケーション
– 安全認証、レビュー、異分野理解
2. 分析
– 安全分析、機能安全、要求分析
3. 再利用
– RTミドルウェア(コンポーネント化)
2014/7/30 1
SysMLによる移動ロボットのモデル比較
自律移動ロボット3種をモデル化
セニアカー
インテリジェント 車イス
AGV
• 産総研で開発した自律移動ロボット
• 設計開発者へのヒアリングにより,構造や実装だけでなく,設計意図,目的までモデル化した
• SysMLによる統一したシステム記述 • 構造の明確化と可視化
狙い:
1.共通部分の抽出と,再利用容易化のためのリプログラミング
2.ディペンダビリティの観点からの構造分析と安全検証
SysMLモデルを作成
2014/7/30 2
SysMLによるモデリングの例(1/6)
• 想定している環境と対象を明らかにする(リスクアセスメント)
1. Context Diagram
2014/7/30 3
SysMLによるモデリングの例(2/6)
• 機能要件に加え,信頼性,安全性などの非機能要件も加える
2. Requirement Diagram
2014/7/30 4
SysMLによるモデリングの例(3/6)
• 全体の振る舞いを記述し,さらに詳細記述へと分解
3. Activity Diagram
2014/7/30 5
4. Use Case Diagram
5. Block Diagram
• 機能とコンポーネントの関係を記述
• 全体のコンポーネント構成,電気構成,機械構成などに分けて記述
• ソフトウェア/ハードウェアコ
ンポーネントの詳細を適宜記述
SysMLによるモデリングの例(4,5/6)
2014/7/30 6
SysMLによるモデリングの例(6/6)
• コンポーネント内のデータフローの詳細まで記述可能
6. Internal Block Diagram
実装可能なレベル
の詳細仕様
2014/7/30
7
機能安全規格 IEC61508
• 機能安全規格 IEC61508
– プラントや鉄道から、組込み、車載、医療機器、ロボットへと適用範囲が拡大
– V字モデルと全安全ライフサイクル
ソフトウェア開発V字モデル
要求・概念・仕様レベルからの モデルベース開発,検証が有効
SysMLによるHW,SWのモデリング
Agileでやりたい (Waterfallでやりたくない)
2014/7/30 8
9
安全システム開発の実証検証
• 電動車椅子ロボット開発に適用して有効性を検証
安全を実現する冗長構成
2014/7/30
モデルベース・ロボット開発のトレーサビリティ(プロセス,アクティビティ - ドキュメント,タスク - モデル,技法)
ハザード リスク 機能安全
要求定義
状態遷移 (状態遷移図)
コンテキスト (内部ブロック図)
システム
アーキテクチャ 設計
論理構成 (ブロック定義図)
論理 内部ブロック (内部ブロック図)
ソフトウェア
要求定義
要求
(要求図) ドメイン
(ブロック定義図) ユースケース
(ユースケース図) アクティビティ
( アクティビティ図)
ソフトウェア 詳細設計
デバイス依存
処理の詳細
ソフトウェア アーキテクチャ
設計
インタフェース
(ブロック定義図) RTコンポーネント
(内部ブロック図) 状態遷移
(状態遷移表)
ミッション要求 (要求図)
ドメイン (ブロック定義図)
システム
要求定義
ユースケース (ユースケース図)
アクティビティ (アクティビティ図)
システムエンジニアリングプロセス
ソフトウェアエンジニアリングプロセス
アクティビティと, 作成するドキュメント タスクと, 定義するモデル(主にSysML)
A
C
D
A
C
A A
D
A A
B
Semi - formal methods
Modular approach
Simulation/modeling
Failure analysis
Block diagrams Sequence diagrams Finite state machines
Finite state machines
Performance modeling Fault tree analysis FMEA
Technique and measures Detailed
A
B
C
D
IEC61508 - 3 SIL3 で推奨される技法
組込みソフトウェア開発プロセスガイドライン(ESPR)
< 目的 > < 機能 > < 文脈 >
< 事象 > < 責務 > < 構造 >
< 目的 > < 機能 > < 文脈 >
< 責務 >
< 責務 >
< データ > < 事象 >
< > :下流方向のトレーサビリティで追加される情報 :開発の流れとトレーサビリティ
安全ゴール 機能安全要求
2014/7/30 10
設計に使用したSysML図
要求図 ユースケース図 ブロック図
アクティビティ図 ステートマシーン図 内部ブロック図
シーケンス図 パッケージ図 パラメトリック図
2014/7/30 11
12
トレーサビリティの表示(TERAS)
2014/7/30
機能によるRTCモジュール分割と連携
(モジュール)情報の隠蔽と公開
音声合成 ンポーネント コ
カメラ ンポーネント コ
カメラ ンポーネント コ
画像データ
画像データ ポート
データ・コマンドの流れ 顔位置 合せ 問
文字データ
音声データ
人物データ
カメラコントロール
表情データ
文字データ
ジェスチャ 道データ 軌
頭・腕駆動 ンポーネント コ
マイク ンポーネント コ
ステレオビジョン ンポーネント コ
対話 ンポーネント コ
音声認識 ンポーネント コ
顔認識 ンポーネント コ
ロボット体内のコンポーネントによる構成例
2014/7/30 13
Analysis
Design
Implementation
astah SysML
SysML+RTC 開発プロセス
RTC Plugin
Component spec.
RTC.xml
RTS.xml
SysML requirements
SysML Requirements
SysML Use cases
SysML Use cases
OpenRTM-aist
SysML Component
(block) ↑
SysML Components
(Block) ←
RTC source codes
(Skelton )
Executable RTC
SysML requirements
SysML Context (Block)
FSM SysML STMs
RTCBuilder
RTSystemEditor
SysML Component
(block)
RTCs
Restore connectors
2014/7/30 14
ヒューマノイドロボットタスクの逐次的な機能拡張
2014/7/30 15
機能拡張
+安全確保
モデル(SysML)により
逐次的に機能を分析,設計
実装
分析 & 設計 テスト
シナリオに基づく 作業実行
認識 ピック&プレース
人が近くに居たら 動作を停止
チョコ停 (把持物を落とすなど)
復帰処理 (手先や環境を操作)
安全
(センサによる監視)
使用性
(チョコ停復帰)
排泄支援 見守り支援
移乗支援
移動支援
経済産業省ロボット介護機器開発・導入促進事業
目的 高齢者の自立支援, 介護者の負担軽減
に資するロボット介護機器の開発・導入を促進すること.
開発補助事業
介護現場のニーズを踏まえてロボット技術の利用が有望な分野を重点分野として特定し,開発企業に対し補助を行う.
基準策定・評価事業
機器の開発に必要となる安全性と効果のアセスメント手法・検証方法、倫理審査等の「実証プロトコル」を確立する.
2014/7/30 16
重点分野の定義(例)
• 移乗介助機器(装着型)
– ロボット技術を用いて介助者のパワーアシストを行う装着型の機器で、以下の特徴を持つものを装着型移乗介助機器として重点的に開発を行います。
1. 介助者が装着して用い、移乗介助の際の腰の負担を軽減する。
2. 介助者が一人で着脱可能であること。
3. ベッド、車いす、便器の間の移乗に用いることができる。
2014/7/30 17
重点分野のSysMLによるモデル化
2014/7/30 18
• 移乗介助機器(装着型) – ロボット技術を用いて介助者のパワーアシストを行う装着型の機器で、以下の特徴を持つものを装着型移乗介助機器として重点的に開発を行います。
1. 介助者が装着して用い、移乗介助の際の腰の負担を軽減する。
2. 介助者が一人で着脱可能であること。
3. ベッド、車いす、便器の間の移乗に用いることができる。
モデルを使った要求分析 • 本当に、乗り移らせるだけの機能要求で良いか?
2014/7/30 19
分析の結果、新たな要求が見つかる
まとめ
• ロボット開発におけるモデルベースの適用事例を紹介した。
• 分析、トレーサビリティ確保、モジュールコンポーネント開発、要求分析など、様々な活用が可能。
• モデルの目的(コミュニケーション、分析、再利用)を明確にすることが重要。
20 2014/7/30
ご清聴ありがとう ございました
21 2014/7/30