組込みシステムにおける UMLモデルカタログの実践研究

Similar documents
2015 TRON Symposium セッション 組込み機器のための機能安全対応 TRON Safe Kernel TRON Safe Kernel の紹介 2015/12/10 株式会社日立超 LSIシステムズ製品ソリューション設計部トロンフォーラム TRON Safe Kernel WG 幹事

ホンダにおける RT ミドルウェア開発と標準化活動 株式会社本田技術研究所基礎技術研究センター関谷眞

Jude を DSL エディタとして使う -Jude API 活用法 年 11 月 14 日稚内北星学園大学東京サテライト校浅海智晴 本日のテーマ Why Jude API What Jude API How Jude API 1

TOPPERS 活用アイデア アプリケーション開発 コンテスト 部門 : 活用アイデア部門アプリケーション開発部門 作品のタイトル : Toppers_JSP と Scicos_lab / (Scilab でも可 ) による 組込みメカトロニクス制御シミュレーション 作成者 : 塩出武 ( シオデタ

ET2014 ミニセミナー フィーチャー図と BricRobo で 簡単プロダクトライン 2014/11/19~21 ( 株 ) 富士通コンピュータテクノロジーズ伊澤松太朗 1294karch01 Copyright 2014 FUJITSU COMPUTER TECHNOLOGIES LIMITE

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

Microsoft PowerPoint - 01_Vengineer.ppt

RCX vs. NXT 機能 CPU メモリサイズ ( バイト ) 1 デバイス I/O 表示 サウンド 通信 コンパイラ オープンソース開発環境 RCX H8 (8bit, 16MHz) 32K ( 含むファームウェア ) センサ 3ch モータ 3ch 液晶 8bit PCM 赤外線 GCC f

ETロボコン2009 九州地区反省と来年度について

EV3_APIの解説.pptx

2008 年度下期未踏 IT 人材発掘 育成事業採択案件評価書 1. 担当 PM 石川裕 PM ( 東京大学大学院情報理工学系研究科教授 ) 2. 採択者氏名 チーフクリエータ : 加藤淳 ( 東京大学理学部情報科学科学部学生 ) コクリエータ : なし 3. プロジェクト管理組織 株式会社メルコホ

モータ HILS の概要 1 はじめに モータ HILS の需要 自動車の電子化及び 電気自動車やハイブリッド車の実用化に伴い モータの使用数が増大しています 従来行われていた駆動用モータ単体のシミュレーション レシプロエンジンとモータの駆動力分配制御シミュレーションの利用に加え パワーウインドやサ

モデリング操作ガイド アクティビティ図編

モデリング操作ガイド クラス図・オブジェクト図編

個人依存開発から組織的開発への移行事例 ~ 要求モデル定義と開発プロセスの形式化 による高生産性 / 高信頼性化 ~ 三菱電機メカトロニクスソフトウエア ( 株 ) 和歌山支所岩橋正実 1

2. 目的 1RationalRose を利用する場合にプログラム仕様書としての最低限必要な記述項目を明確にする 2 プログラム仕様書として記載内容に不足がない事をチェックする 3UML の知識があるものであれば 仕様書の内容を理解できること 4Rose にて入力した内容を SoDaWord を利用

2 概要 市場で不具合が発生にした時 修正箇所は正常に動作するようにしたけど将来のことを考えるとメンテナンス性を向上させたいと考えた リファクタリングを実施して改善しようと考えた レガシーコードなのでどこから手をつけて良いものかわからない メトリクスを使ってリファクタリング対象を自動抽出する仕組みを

ソフトウェア要求分析から詳細設計までシームレスにつなぐ開発手法

組込み分野のためのUMLモデル解説書

OS

Microsoft PowerPoint - 【最終提出版】 MATLAB_EXPO2014講演資料_ルネサス菅原.pptx

FIDO技術のさらなる広がり

アナリシスパターン勉強会 責任関係事例紹介 株式会社オーエスケイ小井土亨 (CBOP COM 分科会主査 ) 2000/07/19 1

クラス図とシーケンス図の整合性確保 マニュアル

組込み分野のためのUMLモデル解説書

<4D F736F F F696E74202D D4C82F08A B582BD A A F2E707074>

Microsoft PowerPoint - UML1_2009.ppt

第 3 回 TERAS 成果報告会 TERAS V3 紹介と今後の展開 Tool Environment for Reliable and Accountable Software 一般社団法人 TERAS 理事開発委員長渡辺政彦 2014 年 3 月 12 日

SysMLに関する操作方法について

rcp-add-01:アーキテクチャ設計書

はじめに : ご提案のポイント

press-1005.OHP

メディプロ1 Javaプログラミング補足資料.ppt

Javaの作成の前に

Microsoft PowerPoint - ●SWIM_ _INET掲載用.pptx

科学的モデリング 2 回 継承 2 無断転載 & 無断配布を禁じます 第 2 回 : 科学的モデリング 継承 2 継承される特性( プロパティ ) 第 2 回の話題 継承は何を継承するのか? 今回のコラムの話題は 継承される特性 ( プロパティ ) についてです そもそもサブクラスはスーパークラスか

コンテンツセントリックネットワーク技術を用いた ストリームデータ配信システムの設計と実装

目次 当社のご紹介 モデル駆動開発とは モデル駆動開発ツール BricRobo とは BricRobo で L チカ派生開発 BricRobo の展開 記載された商品名 製品名は各社の登録商標または商標です 1

Microsoft PowerPoint - 配布用資料.ppt

発表内容 背景 コードクローン 研究目的 4 つのテーマ 研究内容 テーマ毎に, 概要と成果 まとめ 2

057 { 058 int i; 059 timecounter=0; 060 pwmvalue=0;x=0;v=0; 061 requestdisplaydata=1; 062 tick=1; 063 for (i=0; i<rbuffsize; i++) { 064 ringbuffer[i]=

スライド 1

開発・運用時のガイド JDK8への移行に伴う留意点 [UNIX]

V8.1新規機能紹介記事

P01

ET ロボコンにおける STAMP/STPA の試 およびウエブベース STPA ツールの設計と開発 阿部惇朗 古川優也 松野裕 本 学岡本圭史仙台 専 2016 阿部惇朗 古川優也 松野裕 岡本圭史

モデリング操作ガイド (データベースモデリング編)

<4D F736F F F696E74202D208C7691AA8EA993AE90A78CE48A7789EF>

PowerPoint プレゼンテーション

Using VectorCAST/C++ with Test Driven Development

アジェンダ Renesas Synergy TM プラットフォーム構成 ThreadX とは ThreadX の状態遷移 ThreadX とμITRONの機能比較 まとめ ページ 2

Microsoft PowerPoint - lego1.ppt [互換モード]

11 ソフトウェア工学 Software Engineering デザインパターン DESIGN PATTERNS デザインパターンとは? デザインパターン 過去のソフトウェア設計者が生み出したオブジェクト指向設計に関して, ノウハウを蓄積し 名前をつけ 再利用しやすいようにカタログ化したもの 各デ

Microsoft Word - ModelAnalys操作マニュアル_


第3部:プログラミング実習

.NET テクノロジー概説 /WindowsAzure 入門 コード P-2 0:00~7:00 ( 休憩 時間含む ) 前提条件 Windows の操作経験 ( エクスプローラの操作 ファイルの操作 ) があること 最低開講人数 0 名.NET テクノロジー概説 /WindowsAzure 入門

プレポスト【問題】

機能検証トレーニング コース一覧

トレーサビリティとインパクト分析 2011 年 7 月 13 日 海谷治彦 1

arduino プログラミング課題集 ( Ver /06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイ

TopSE並行システム はじめに

PowerPoint Resources

国土技術政策総合研究所 研究資料

Microsoft PowerPoint - IAF フォーラム2015講演資料_PLCopenJapan_A02.pptx

<基礎領域>

組込み用Linuxボード,BeagleBone Blackにおける RTミドルウェアの動作と開発支援ツール

PowerPoint Presentation

5-3- 応統合開発環境に関する知識 1 独立行政法人情報処理推進機構

TECSをサポートする構造設計ツール ZIPC Toy!

NEXCESS基礎コース01 組込みソフトウェア開発技術の基礎 ソフトウェア開発プロセス編

(Microsoft Word - 06_2_22420-\222n\210\346\230A\214g\203V\203X\203e\203\200\223\340\202\305\202\314\217\210\227\235_ doc)

デザインパターン第一章「生成《

Microsoft Word 基_シラバス.doc

Presentation Title

kantan_C_1_iro3.indd

課題情報シート テーマ名 : 動画中継ラジコンカーの製作 担当指導員名 : 土山博剛実施年度 : 25 年度施設名 : 四国職業能力開発大学校課程名 : 専門課程訓練科名 : 電子情報技術科課題の区分 : 総合制作実習課題学生数 : 1 時間 : 12 単位 (216h) 課題制作 開発のポイント

Microsoft PowerPoint - tpms_session_matsuura

第 2 回中部放射線医療技術学術大会 RIS 導入時の時の病院側作業に関して 2009 年 11 月 横河電機株式会社 医療ソリューション本部 1 横河電機株式会社医療ソリューション本部 2006Yokogawa Electric Corporation

Presentation Title

UML は次のように表記を拡張して 利用しやすくすることができる ステレオタイプ クラス図などで モデル要素の意味を拡張するもの ギルメット << >> によるラベル表記と アイコン表記がある <<actor>> <<interface>> ステレオタイプ一覧 UML 表記の拡張 ATM 利用者 ス

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド

Java知識テスト問題

Microsoft PowerPoint - 04_01_text_UML_03-Sequence-Com.ppt

ソースコードの生成と読み込み 機能ガイド

和文タイトル

2. バージョンアップ内容 intra-mart WebPlatform/AppFramework Ver.7.1 および Ver.7.2 に対応いたしました SAP JCo 3.0.x に対応いたしました 3. 製品概要 IM-ERP リアルコネクトは SAP システム内のデータをリアルタイムに取

Java TM プログラミング能力認定試験 1 級サンプル問題 ( テーマプログラム第 6 版対応 ) 問題番号問 1, 問 2 選択方法 試験時間 2 問必須 150 分 指示があるまで開いてはいけません 試験監督者の指示に従い, 注意事項を読みなさい 試験終了後, 問題冊子を回収します 受験会場

ルネサス半導体セミナースケジュール

FUJITSU Cloud Service K5 認証サービス サービス仕様書

Microsoft PowerPoint - se06-UML(UseCase)_2.ppt [互換モード]

<4D F736F F D F345F D926E88E698418C6782A982E793648E7194C58EBE95618AC7979D8EE892A082CC B835E936F985E5F E646F63>

JBoss と Arquillian で実現する 究極のテスト環境 レッドハット株式会社 JBoss サービス事業部 コンサルタント 山 田義和

(Microsoft PowerPoint - daqmiddware-overview [\214\335\212\267\203\202\201[\203h])

Enterprise Architect日本語版 モデリング操作ガイド (データベースモデリング編)

目次 チーム パフォーマンス紹介 チームについて パフォーマンス内容 スケジュール 工夫点 苦労点 反省点 まとめ 2

Microsoft PowerPoint RT講習会(送付用)_ [互換モード]

MicrosoftVisualStudio.NET による ASP.NETWeb アプリケーションの開発 (#2334)(MP301)5 日間 () コースの概要 このコースでは VisualBasic.NETまたは C# プログラマで Web 開発の初心者が ASP.NETを使用して Web アプ

目次 エグゼクティブサマリー 1 概要...1 主な調査項目の結果...3 結論...5 調査結果 6 操作時間と操作ミスの発生率の調査結果...6 操作の達成感と使いやすさの調査結果...7 調査後の分析...8 比較調査分析...9 比較調査コメント 付録 A 調査方法について 12

Transcription:

Modeling Forum 2015 組込みシステムの設計実装への モデルカタログの活用 仙台高等専門学校 情報システム工学科 力武克彰, 新村祐太 ( 豊橋技科大 ), 菊池雄太郎 ( 仙台高専 )

概要 組込み分野のための UML モデルカタログ (*) のモデルを実装してみました (* 以下 モデルカタログと呼びます ) 2

概要 モデルカタログ : 目標制御モデル モデルカタログより引用 3

概要 実装 : 目標制御モデル 4

Agenda モデルカタログとは? 今回やったこと 目標制御モデルの実装 まとめ 5

モデルカタログとは? 6

組込みモデリング部会 活動目的» 組込み分野におけるUMLモデリングによる開発を促進するため お手本となるべきモデルの流通化を目指す» モデリングによる開発の生産性の向上» 技術者のモデリングスキルの向上 活動内容» 組込み分野のための UML モデルカタログの作成» 小さなモデル の作成 ワークショップ 7

組込み分野のための UML モデルカタログ 組込み分野でモデリングする全ての人に捧げるモデル集 http://www.umtp-japan.org/modules/introduction1/index.php?id=47&tmid0=24 組込み分野のさまざまなモデルを集めたカタログ 様々な製品 機能 部品に対してお手本となるようなUMLモデルを提供» モデル解説書 (pdf)» Enterprise Architectのモデルファイル 8

モデルカタログ掲載モデル 製品編» ある製品を実現するようなもの インライン装置 エアコン など (5 製品 ) 機能編» 多くの製品に共通して搭載されるような機能 部品編 認証 自己診断» 汎用的でライブラリとして使用できる部品 目標制御 プログラム更新機能 9

各モデルの構成 一つの要求仕様 ( 製品 機能 部品 ) に対して複数のモデルを掲載» 異なるコンセプトに基づくモデル 分析モデル PIM 設計モデルまでを掲載 PSM 設計モデルは未掲載 PIM: Platform Independent Model PSM: Platform Specified Model モデルカタログより引用 10

モデル解説書 モデル解説書例 : 部品編目標制御» 要求仕様 ユースケース図 ユースケース記述 用語集などで記述» モデル一覧» モデルのコンセプト» 分析モデル 静的モデル : クラス図 オブジェクト図 等 動的モデル : ステートマシン図 シーケンス図 等» PIM モデル 静的モデル 動的モデル 11

モデルカタログの適用範囲 モデルカタログより引用 12

今回やったこと 13

モデルカタログの適用範囲 モデルカタログでは未提供 14

モデルカタログへの不安 要求分析 モデルカタログで提供 分析モデル作成 PIM 作成 プラットフォームを意識しない抽象的なモデル PSM 作成 プラットフォームに依存する具体的なモデル 実装 モデルカタログ未提供 PSM をどのように作ればいいのか分からない 開発事例が無く システムを実現出来るか分からない 15

カタログ提供モデルの実装 カタログ提供モデルを使って組込みシステムの開発を 行い モデルの実装事例を提供する 対象モデル :» [ 部品編 ] 目標制御モデル モデルカタログより引用 16

目標制御モデルの実装 17

目標制御モデル ( モデルカタログ ) 目標制御» 制御対象の計測値が目標値となるように制御する方式 例 ) エアコンの室内温度の調整» 非常に汎用的なモデル モデルカタログより引用 18

目標制御モデル ( モデルカタログ ) 分析モデル ( 静的モデル )» 制御器 操作器 制御対象 計測器がそのままモデル要素へ モデルカタログより引用 19

目標制御モデル ( モデルカタログ ) 分析モデル ( 動的モデル ) モデルカタログより引用 20

目標制御モデル ( モデルカタログ ) PIM 操作器 計測器 <<interface>> タイマータスク 制御器 制御対象 <<interface>> 制御対象リスナー タイマー制御方式制御パラメータ範囲» 各クラスのメソッドの詳細化» タイマによる制御呼出しの検討» 例外的状況への対応の検討 ( 範囲クラス ) 21

目標制御モデル ( モデルカタログ ) 外部監視システム タイマータスク 範囲 制御対象リスナー タイマー 周期的な動作 制御対象 計測器 制御器 操作器 入出力 <<enumeration>> 制御状態 制御方式 制御パラメータ 制御のアルゴリズム 22

実装対象のハードウェア ET ロボコン走行体 (LEGO MINDSTORMS NXT) インターフェース» サーボモータ ( 両車輪 尻尾 )» 各種センサ ( 光センサ等 ) ファームウェア» lejos-nxj Java» nxtosek C/C++ 環境 2 つの開発プラットフォーム 23

開発システム ライントレース走行システム システム構成要素» 輝度値制御» 速度制御» 尻尾角度制御» ( 曲率半径制御 ) 3 つのドメイン 1 つの目標制御モデルの PIM から 3 ドメイン 2 プラットフォームの PSM を作成 実装 24

PIM のドメインへの適用 汎用的な目標制御モデルの言葉を 各ドメイン ( 輝度 値制御 走行速度制御 尻尾角度制御 ) の言葉に置き 換える 計測器 + 計測する () : 計測値 光センサ + 輝度値を計測する () : int 目標制御 PIM» 計測器とは?» 何を計測するのか?» 計測値のデータ型は? 輝度値制御 PIM» 計測器 : 光センサ» 計測するもの : 輝度値» 計測値のデータ型 :int 型 25

PSM の作成 各プラットフォームへの適用 輝度値制御器 輝度値制御器 輝度値制御器 <<interface>> 車輪モータ nxtosek 車輪モータ 車輪モータ LeJOS-NXJ 車輪モータ MotorPort <<API>> ecrobot_interface 輝度値制御 PIM 1. 抽象クラスをどう実装するか? 2. 操作器はどのように操作を行うか? lejos-nxj 版輝度値制御 PSM 1. 継承して実装 2. 操作 APIを持つクラスの利用 nxtosek 版輝度値制御 PSM 1. 除去して実装 2. 操作 APIを持つライブラリの利用 26

lejos-nxj 版輝度値制御システム PSM( 静的 ) プラットフォーム依存部 LightValCtrl-Timer LightValCtrlTimer LightValCtrl-LejosInterfaces MotorPort LightSensor LejosWheelMotor LejosLightValEncoder LightValCtrl-Listener LightValListener <<interface>> Actuator TargetControl-Common <<interface>> Measurement <<interface>> TimerTask Controller ControlledObject <<interface>> SystemListener CtrlMethod CtrlMethodParm CtrlRange LightValCtrl-Algorithm PIDLightValCtrl OnOffLightValCtrl PIDLightValCtrlParm OnOffLightValCtrlParm 27

nxtosek 版輝度値制御システム PSM( 静的 ) LightValCtrl-Listener LightValListener LightValCtrl-Common LightValCtrl LightVal LightValRange LightValCtrl-Algorithm PIDLightValCtrl LightValCtrl-nxtOSEKInterfaces nxtwheelmotor nxtlightvalencoder PIDLightValCtrlParm <<API>> ecrobot_interface プラットフォーム依存部 28

lejos-nxj 版輝度値制御システム PSM( 動的 ) 分析モデルのシーケンス図を基に作成 実際には ソースコード PSM 間での修正 29

実装 動作検証 30

実装 動作検証 輝度値制御 ( ライントレース ) 700 680 660 640 輝度値 620 600 580 560 540 520 500 0 1000 2000 3000 4000 5000 6000 7000 8000 時間 [ms] 制御方式 :PID 制御制御対象 : 輝度値 0~1023 操作量 : 旋回量 -100~100 Kp = 1.85, Ki =0.03[1/s], Kd = 0.03[s] 31

実装 動作検証 尻尾角度制御 90 80 70 60 角度 [ 度 ] 50 40 30 20 10 0 0 1000 2000 3000 4000 5000 6000 7000 8000 時間 [ms] 制御方式 :P 制御制御対象 : 尻尾角度操作量 : モータ出力 0~100 Kp = 1.85[1/ 度 ] 32

他のハードウェアでの実装 DONKEY ロボットキット (( 株 ) 北斗電子 ) MPU ルネサスM16C/Tiny OS 無し 開発言語 :C, アセンブラ 計測器» ロータリエンコーダ 操作器» 車輪 DCモータ ( 左右一つずつ )» PWM 駆動 nxtosek 版速度制御システム PSM とほぼ同じモデルで モータ回転速度制御を実装可 33

目標制御モデルの実装までの流れ 1. カタログを読み込む ( 特に要求分析 分析モデル )» 前提条件 制約条件 モデルの意図の理解» 用語の整理 統一 2. PIM をドメインへ適用する (PIM の変更 )» 目標制御モデルの構造はほぼそのまま利用可能 3. 各プラットフォームに適応した PSM の作成» 目標制御モデルではPIMにおいて プラットフォームに関連するところ しないところが明確に分かれている 4. プログラムの実装» ( 可能であれば ) ツールの利用 + シーケンス図の活用 34