Your SlideShare is downloading. ×
  • Like
TERAS Conference
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

TERAS Conference



Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. 平成24年3月19日第1回 TERAS成果報告会 電動車椅子ロボット開発への TERAS活用 S活用 (独)産業技術総合研究所 知能システム研究部門 主任研究員 中坊 嘉宏2012/03/19 0
  • 2. 来場者への事前アンケート結果 来場者 の事前アンケ ト結果質問: 「関心のある項目にチェックしてください(複数回答可)」 (人) 0 50 100 150 200 250 機能安全への対応 機能安全への対応効果的なトレーサビリティ活用法 効果的なトレーサビリティ活用法 TERASツールの導入/運用方法 既存ツールのTERAS対応 その他 事務 提供 TERAS事務局提供2012/03/19 1
  • 3. 発表概要 • なぜ機能安全が必要か? • なぜトレーサビリティが有効か? • TERASの活用方法 サービスロボット (生活支援ロボット)開発 (生活支援 ボ ト)開発2012/03/19 2
  • 4. 生活支援ロボット ‐ 社会背景 生活支援 ボ • ロボットがサービスを支える • 生活支援ロボ トの市場創造 生活支援ロボットの市場創造 2005年 2025年 増減 労働力人 労働力人口1) 6,770万人 6 770万人 6,300万人 6 300万人 ▲470万人 (15才~64才) 高齢者人 高齢者人口2) 2,539万人 2 539万人 3,472万人 3 472万人 933万人 (65才~) 発生するギャップ 1,403万人 1 403万人 出典: 1) 厚生労働省職業安定局推計(2002年7月) 2) 国立社会保障・人口問題研究所「日本の将来推計人口」(2002年1月)2012/03/19 3
  • 5. 国際安全規格 ‐ 導入の背景 ・ 企業や国は 安全の全責任を負えるか? 企業や国は,安全の全責任を負えるか? 安全への 販売 信頼 製造物責任 一般消費者 (適合マーク) 要求の増大 生産者 ロボットメーカー 責任分担構造販売 信頼 生産者 認証機関責任 (ブランド) ロボットメーカー (第三者機関) 規格適合性認証 一般消費者 般消費者企業ブランドに頼る方法 安全規格(ISO/IEC →JIS)• 現状の製品では十分• では今後の製品では? EUなどは特に積極的に推進,TBT協定• 例えば自動運転車は可能?2012/03/19 4 4
  • 6. 取り組み例:「NEDO生活支援ロボット実用化PJ」取り組み例 「NEDO生活支援ロボ ト実用化PJ」 ISO TC184/SC2/WG7で規格策定中 ISO TC184/SC2/WG7で規格策定中 生活支援 ボット安全検証センタ 生活支援ロボット安全検証センター 必要な試験をワンストップで実施可能な 検証拠 検証拠点 障害物接近再現装置 パッシブダミー 2012/03/19 5
  • 7. IEC61508機能安全の要求プロセス (≒ ウ ウォーターフォール開発モデル) タ 開発 デ ) • V字モデル開発 • 全安全ライフサイクル2012/03/19 6
  • 8. 先行開発のプロセス = 試行錯誤 繰り返し 試行錯誤・繰り返し • アジャイル開発 • スパイラル開発 ⁻ 動けばOK ⁻ 開発チームの技量に依存 ⁻ 至高の極致 プロトタイプ 分析 設計 評価2012/03/19 7
  • 9. ロボットソフトウェア開発の課題 ロボットソフトウ ア開発の課題 • 機能安全プロセスに多大な工数がかかる – 大量のドキュメント..ガイドラインの必要性 – 開発,管理ツールの整備 開発,管理ツ ルの整備 • 先行開発と量産開発 ギ 先行開発と量産開発のギャップ プ – 開発が属人的 – 品質の確保 – 要求・設計・実装・テストの整合性 要求 設計 実装 テストの整合性2012/03/19 8
  • 10. 解決策(機能安全) • 全て新規ではなく,再利用する RTミドル • コンポーネントの組み合わせで作る ウエア • プ プラットフォームを活用する • モデルベース開発を導入する →  SysML2012/03/19 9
  • 11. 解決策(先行開発) • 設計図を基にプラモデルを作ることは容易 • ならば,先行開発で設計図が作れればよい → トレーサビリティ → トレーサビリティ2012/03/19 10
  • 12. 研究の目標• 設計図の設計図を作り,変更の影響を制御可能に – 各 程で設計する項目 ドキ メント 各工程で設計する項目,ドキュメント,モデルを デルを あらかじめ定義しておく – 定義したプロセス,アクティビティ,タスクとその成 果物のトレ サビリティをとる 果物のトレーサビリティをとる – 変更があった際に影響範囲を検索し、そのタスク 情報を基に再計画する →  ウォーターフォール開発に移行しやすい環境づくり2012/03/19 11
  • 13. 実証検証 • 電動車椅 電動車椅子ロボット開発に適用して有効性を検証 ボ 適 有効性を検証 (ROBOMEC2012@5月,浜松にて関連発表数件) 安全を実現する冗長構成 長2012/03/19 12
  • 14. モデルベース・ロボット開発のトレーサビリティ(プロセス,アクティビティ ‐ ドキュメント,タスク ‐ モデル,技法) アクティビティと, 作成するドキュメント タスクと, 定義するモデル(主にSysML) シ <目的> <機能> <文脈> ス システム ドメイン ミッション要求 ユースケース ユ スケ ス アクティビティ テ 要求定義 (ブロック定義図) (要求図) (ユースケース図) (アクティビティ図) ム 組 エ 込み ン D D ジ ニ 機能安全 ソ ア リスク ハザード 安全ゴール 機能安全要求 フ リ 要求定義 ト ン ウ グプ ェア A <事象> A C <責務> <構造> A ロ システム コンテキスト 状態遷移 論理構成 論理内部ブロック 開 セ アーキテクチャ 発 (内部ブロック図) (状態遷移図) (ブロック定義図) (内部ブロック図) ス 設計 プ ロセ ソ <責務> <目的> <機能> <文脈> ス フ ガ ト ソフトウェア ドメイン 要求 ユースケース アクティビティ イ ウ 要求定義 (ブロック定義図) (要求図) (ユースケース図) (アクティビティ図) ド ェ ライ アエ <責務> A B <データ A > <事象> A C ン ン ソフトウェア (E ジ RTコンポーネント インタフェース 状態遷移 ニ アーキテクチャ (内部ブロック図) (ブロック定義図) (状態遷移表) S ア 設計 PR リ ) IEC61508 3 SIL3 で推奨される技法 IEC61508‐3 SIL3 ン グ Technique and measures Detailed Block diagrams プ ソフトウェア デバイス依存 A Semi‐formal methods Sequence diagrams ロ 詳細設計 処理の詳細 Finite state machines セス B Modular approach pp Finite state machines < > :下流方向のトレーサビリティで追加される情報 C Simulation/modeling Performance modeling :開発の流れとトレーサビリティ Fault tree analysis D Failure analysis FMEA
  • 15. ミッション要求(SysML 要求図) req [Pa ck a g e] Dep end a b leBa s e [03 Mis s ion Req uirement s ] <<requirement>> Prov id e d ep end a b le mob ilit y not es The robot base shall be capable of moving in 2 dimensions on a road-like surface. It shall provide this motion service to the utilising entity and allow the utilising entity to control it. It shall avoid collisions with static and dynamic obstacles where possible and when a collision is inevitable it shall attempt to minimise damage. It shall be safe even in the case of internal system failures. <<requirement>> q <<requirement>> Mob ilit y Dep end a b ilit iy not es not es The robot shall move in two The robot shall avoid collisions where possible, and attempt to dimensions. The motion shall be minimise damage when a collision is inevitable. It shall be safe controlled by the utilising even in the event of internal errors. The robot shall not move in entity. an unsafe manner. <<deriveReqt>> <<deriveReqt>> <<deriveReqt>> <<deriveReqt>> <<requirement>> F orwa rd /rev ers e <<requirement>> Rot a t ion <<requirement>> <<requirement>> mot ion E merg ency s t op Int erna l error d e t e c t ion not es not es The robot shall be able to not es The robot shall be The robot shall provide a not es capable of moving rotate both on the spot and while moving. facility and interface to The robot shall be forwards and backwards. backwards immediately halt all i di t l h lt ll capable of detecting <<deriveReqt>> motion. internal errors. <<deriveReqt>> <<deriveReqt>> <<deriveReqt>> <<deriveReqt>> <<requirement>> <<deriveReqt>> S t op <<requirement>> <<requirement>> <<requirement>> <<requirement>> <<requirement>> C onfined s pa ce E x t erna l cont rol S peed limit ing Ob s t a cle Report current s a fet y mot ion collis ion s t a t us p re v e n t ion not es The robot shall be able to not es not es stop. not es The robots motion shall The robot shall limit its not es The robot shall be be controlled by the maximum speed so as to not es The robot shall report its current capable of entering utilising entity. not allow unsafe motion. The robot shall prevent status, including detected errors, confined spaces. spaces collisions wherever current speed limits, sensor t d li it possible. statuses, etc. <<deriveReqt>> <<deriveReqt>> <<deriveReqt>> <<requirement>> <<requirement>> <<deriveReqt>> <<deriveReqt>> C omma nd s t a t us Res t rict cont rols <<requirement>> C ollis ion prev ent ion s t ra t eg y <<requirement>> not es not es Ob s t a cle det ect ion The robot shall report whether The robot shall refuse to perform a command was successfully motion commands that would executed or not. conflict with the safety goals. not es When Wh an obstacle appears within a given range, the b t l ithi i th not es <<deriveReqt>> robot shall limit its speed. When an obstacle moves into The robot shall detect obstacles. a closer range, the robot shall halt all motion. When the <<requirement>> robot detects contact with an obstacle, it shall halt all <<deriveReqt>> Report mot ion s t a t us motion. not es The robot shall report its current <<deriveReqt>> motion status, including speed. <<deriveReqt>> <<deriveReqt>> <<deriveReqt>> <<deriveReqt>> <<requirement>> << i t>> <<requirement>> << >> <<requirement>> Ov erride s a fet y res t rict ions C ont a ct ing obs t a cle Dis t a nt ob s t a cle d e t e c t ion d e t e c t ion not es The utilising entity shall be capable of not es not es overriding halted motion to allow restricted The robot shall detect contact with2012/03/19 motion even in the presence of a close obstacle. obstacles. The robot shall detect obstacles at a distance and measure the distance 14 to them.
  • 16. ミッションユースケース(ユースケース図)uc [Pa c k a g e] Depe nd a b leBa s e [04 Mis s ion u s e c a s e s ] Dependable mobile robot base Class:Dependable mobile robot base Mov e forwa rd s a n d b a c k wa rds <<include>> Rot a t e <<include>> <<block,external>> Mov e Roa d <<include>> <<include>> S t op Mov e de pe nd a b ly Det ec t in t e rna l e rrors Av oid Det ect obs t a c les a t a collis ions <<include>> dis t a nc e <<include>> <<include>> <<include>> C ont rol mot ion Minimis e Ma in t a in <<block,external>> s a fet y c ollis ion Ob s t a c le <<include>> d a ma g e <<include>> De t ec t <<extend>> Ov e rride s a fe t y <<extend>> cont a ct in g res t ric t ions obs t a c les Limit mot ion s p ee d Ut ilis ing e nt it y E x e cu t e When motion is restricted emerg e nc y s t op by safety concerns, the When the robots safety is jeopardized, the speed of motion should user will initiate an be limited. override. Re port Re port s a fet y s t a t us es s t at us Rep ort mot ion st at us Rep ort comma n d s t at us 15
  • 17. 論理内部ブロック図(SysML 内部ブロック図)ib d [Pa ck a g e ] Wheelc ha ir [119 Wheelcha ir log ica l int erna l block d ia g ra m] : DependableWheelchairRobot : ObstacleSensor Left : LogicalController Right : DriveUnit <<flowPort>> <<fl P >> O : <<flowPort>> Resolver <<flowPort>> O : ObstacleInformation :Angle ObstacleInformation <<flowPort>> Encoder : <<flowPort>> S : <<flowPort>> SS : Angle SensorStatus SensorStatus <<flowPort>> Encoder : Angle EmergencyStop <<flowPort>> B :BrakeStatus MotionCommand <<flowPort>> Resolver :Angle Override <<flowPort>> M : MotionStatus <<flowPort>> TorqueControl : StatusInformation Current StatusInformation <<flowPort>> MS : MotionStatus EmergencyStop : UserInterfaceUnit <<flowPort>> Resolver <<flowPort>> B :Angle :BrakeStatus <<delegate>> BrakeControl MotionCommand Left D i U it L ft : DriveUnit <<flowPort>> B : Override BrakeStatus MotionCommand <<flowPort>> R :Angle BrakeControl : Brake <<delegate>> EmergencyStop EmergencyStop : ElectricMotor <<delegate>> Override BrakeControl <<flowPort>> Control Override MotionCommand :Current <<flowPort>> <<flowPort>> T : TorqueControl : Torque <<flowPort>> MS : Current MotionStatus <<flowPort>> T <<flowPort>> M : :Torque StatusInformation <<flowPort>> T MotionStatus :Torque <<delegate>> : Wheel StatusInformation <<flowPort>> BrakeT : Torque EmergencyStop EmergencyStop : Encoder <<flowPort>> <<flowPort>> T Tout :Torque :Torque <<flowPort>> FOut :Force <<flowPort>> A :Angle <<flowPort>> Encoder : <<flowPort>> Angle FOut :Force 2012/03/19 <<flowPort>> 16 F :Force
  • 18. 論理コンポーネント図(SysML 内部ブロック図)ibd [Pa ck a g e ] Whe e lc h a ir [12 0 Log ica l c ont rolle r in t e rn a l block d ia g ra m] Left : LogicalController : SafetyMonitor : PartnerMonitor <<flowPort>> Theirs : <<flowPort>> Theirs : PartnerStatus PartnerStatus <<flowPort>> Mine : <<flowPort>> Mine : <<flowPort>> O : PartnerStatus PartnerStatus ObstacleInformation <<flowPort>> O : ObstacleInformation <<flowPort>> SS : <<flowPort>> SS : UserInterfaceController SensorStatus :SensorStatus <<delegate>> StatusInformation <<flowPort>> Mine : <<flowPort>> Encoder : <<flowPort>> Encoder : Override PartnerStatus Angle Angle EmergencyStop Override StatusInformation MotionCommand <<flowPort>> MO : <<flowPort>> B <<flowPort>> BS : MotionStatus <<flowPort>> M : :BrakeStatus BrakeStatus MotionStatus EmergencyStop <<flowPort>> M : MotionCommand MotionStatus SafeMotionCommand <<flowPort>> SL : MotionCommand SafetyLevel Override EmergencyStop g y p <<flowPort>> SL : MotionCommand SafetyLevel <<delegate>> SafeMotionCommand MotionCommand : CommandProcessor Override : MotorController EmergencyStop MotionCommand <<flowPort>> C : MotorControlSignal <<flowPort>> C : MotorControlSignal <<flowPort>> R :Angle <<flowPort>> M : MotionStatus <<flowPort>> Control :Current 2012/03/19 <<flowPort>> Resolver :Angle <<flowPort>> TorqueControl :Current 17
  • 19. トレーサビリティの表示(TERAS)トレ サビリティの表示(TERAS) 18
  • 20. ム ビ 1:「ドキュメントトレ サビリティ」 ムービー1:「ドキュメントトレーサビリティ」2012/03/19 19
  • 21. ム ビ 2: ムービー2: 「下流影響範囲の検索」の具体例2012/03/19 20
  • 22. まとめ • 先行開発から量産開発へスムースにつなぎ, 機能安全に対応するためのトレーサビリティ 機能安全に対応するためのトレ サビリティ (TERAS)の有効性が見えてきた • 何のために,何のトレーサビリティをとるのか が重要 • 説明力の向上には さらに工夫が必要 説明力の向上には,さらに工夫が必要 • トレ サビリティツ ルは「知の道具」 トレーサビリティツールは「知の道具」2012/03/19 21
  • 23. ご清聴ありがとう ございました2012/03/19 22