JP4965634B2 - シミュレーション・システムの動作制御方法、プログラム及びシステム - Google Patents
シミュレーション・システムの動作制御方法、プログラム及びシステム Download PDFInfo
- Publication number
- JP4965634B2 JP4965634B2 JP2009278002A JP2009278002A JP4965634B2 JP 4965634 B2 JP4965634 B2 JP 4965634B2 JP 2009278002 A JP2009278002 A JP 2009278002A JP 2009278002 A JP2009278002 A JP 2009278002A JP 4965634 B2 JP4965634 B2 JP 4965634B2
- Authority
- JP
- Japan
- Prior art keywords
- state
- block
- guard condition
- condition block
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4061—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4063—Monitoring general control system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0243—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Feedback Control In General (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
- 遊びのあるシステムの挙動のモデル化(バックラッシュ)のブロック
- 零点で不連続、その他では線形ゲインを伴う型のモデル化のブロック
- ゼロ出力の領域を生成(デッドゾーン)ブロック
- 2つの入力の間での切り替えブロック
- ブロック入力の選択ブロック
- 指定された間隔で入力を離散化ブロック
- 信号の変化率を制限ブロック
- 2つの定数間で出力の切り替えブロック
- 信号の範囲を制限(飽和)ブロック
Out=( ((In) >= (Saturation_LowerSat)) ? (Saturation_LowerSat) :
(((In) <= (Saturation_UpperSat)) ? (Saturation_UpperSat) : (In)) ); ...Code 1.1
となる。Saturation_LowerSatとSaturation_UpperSatがそれぞれSaturationブロックの上限と下限を表しており、In, Outが入出力を表わす。入力Inの値によって出力Outが決まる。
Out=( ((In) >= (Saturation_LowerSat)) ? (Saturation_LowerSat) :
(((In) <= (Saturation_UpperSat)) ? (Saturation_UpperSat) : (In)) );
Model_State=( ((In) >= (Saturation_LowerSat)) ? Model_State+Saturation_LowerOffset :
(((In) <= (Saturation_UpperSat)) ? (Model_State+Saturation_UpperOffset) : (Model_State+Saturation_MiddelOffset)) );
となる。Model_State以下の部分は、検証用ブロックの追加機能となる。Model_State, Saturation_LowerOffset, Saturation_UpperOffset, Saturation_MiddelOffsetは、MATLABのワークスペースにある変数名であり、それぞれ、モデルのシステムID、Saturationブロックの入力がSaturation上限を上回ったときにシステムIDの計算に必要なオフセット、ブロック入力がSaturation下限を上回ったときのシステムIDのオフセット、ブロック入力がSaturation上限と下限の間にある場合のシステムIDのオフセットを表わす。この追加機能によって、Saturationブロックの入力値からシステムIDが計算されることになる。検証用ブロックの作成は、C言語で書かれた上Simulink(R)のS Functionとしてコンパイルすることによって実現される。
状態ID = 0×44 + 1×43 + 2×42 + 3×41 + 2×40 = 110となる。
If (Model_State <= 4) {
Stable();
} else if (Model_State == 14) {
Stable();
} else {
if (Model_State == 5) Unstable();
if (Model_State == 16) Untested();
if (Model_State == 24) Untested();
... ...
}
このように、ガード条件のブロックは、機能的には、図10のブロック1002、1004、1006及び1008などと同様のブロックとして記述される。このガード条件ブロックは、MATLAB(R)のMスクリプトで記述され、Simulink(R)のEmbedded MATLAB Functionブロックで呼び出すように実装する。ガード条件ブロックの中で、Model_StateはMATLABのワークスペースにある変数名であり、状態IDを表している。Stable(), Unstable(), Untested()関数は、システム状態が安定、不安定、または未踏であるときに実行される。それらの関数は、MATLABのMスクリプトもしくはC言語によって記述する。Stable(), Unstable(), Untested()については、図11のフローチャートの後のステップに関連して説明する。
(1) 評価がSafeかつ出現率が最大のエントリを0にするよう値を交換
(2) ハミング距離およびラティス距離に基づき行列を昇順にソート
(3) 評価がSafeであり出現確率が高いエントリを選択
(4) ハミング距離に従い、他の行の順序関係が壊れないよう選択行が最大or最小となるよう値を交換
(5) 他の行の順序関係が壊れないよう、選択行が最大or最小となるよう列を交換
(6) 未操作のエントリにSafeがなくなるまで(3)を繰り返す
if (Model_State == 0) Stable();
というコードを生成する。
606 メイン・メモリ
608 バス
610 キーボード
612 マウス
614 ディスプレイ
616 ハードティスク・ドライブ
702 モデリング・ツール
702 シミュレーション・モデリング・ツール
704 ソースコード
706 非線形ブロック解析モジュール
810 非線形ブロック
708 状態テーブル
710 コンパイラ
712 実行システム
714 安定性判定モジュール
716 テストケース生成ブロック
718 ガード条件
720 コンパイラ
722 実機用システム
1202 ガード条件
1204 ガード条件
Claims (9)
- コンピュータの処理により、非線形ブロックを含む複数の機能ブロックをもつシミュレーション・システムにおいて、前記複数の機能ブロックを、スイッチドリニア化により、複数の状態からなる線形ブロックに変換するステップと、所定の動作シナリオに従い、前記スイッチドリニア化によって生成される複数の状態の間を遷移するステップとを実行しつつ、前記システムの動作を制御する方法であって、
前記動作シナリオに従い、次に遷移すべき状態の安定性を検査するステップと、
前記検査の結果が不安定であることに応答して、前記安定性を判定した状態の前に、該不安定な状態を検出するための第1のガード条件ブロックを配置するステップと、
前記第1のガード条件ブロックの配置の後、前記第1のガード条件ブロックに到達することに応答して、前記システムを停止するステップを有する、
シミュレーション・システムの動作制御方法。 - 未踏の状態への遷移に、第2のガード条件ブロックを付与するステップと、
前記第2のガード条件ブロックに到達することに応答して、前記システムの動作を一旦停止し、次の状態の安定性を検査するステップと、
前記検査の結果が不安定であることに応答して、前記第2のガード条件ブロックを第1のガード条件ブロックに置き換えるステップを更に有する、請求項1に記載の方法。 - 前記検査の結果が安定であることに応答して、前記第2のガード条件ブロックを除去するステップを更に有する、請求項2に記載の方法。
- コンピュータの処理により、非線形ブロックを含む複数の機能ブロックをもつシミュレーション・システムにおいて、前記複数の機能ブロックを、スイッチドリニア化により、複数の状態からなる線形ブロックに変換するステップと、所定の動作シナリオに従い、前記スイッチドリニア化によって生成される複数の状態の間を遷移するステップとを実行しつつ、前記システムの動作を制御するプログラムであって、
前記コンピュータに、
前記動作シナリオに従い、次に遷移すべき状態の安定性を検査するステップと、
前記検査の結果が不安定であることに応答して、前記安定性を判定した状態の前に、該不安定な状態を検出するための第1のガード条件ブロックを配置するステップと、
前記第1のガード条件ブロックの配置の後、前記第1のガード条件ブロックに到達することに応答して、前記システムを停止するステップを実行させる、
プログラム。 - 未踏の状態への遷移に、第2のガード条件ブロックを付与するステップと、
前記第2のガード条件ブロックに到達することに応答して、前記システムの動作を一旦停止し、次の状態の安定性を検査するステップと、
前記検査の結果が不安定であることに応答して、前記第2のガード条件ブロックを第1のガード条件ブロックに置き換えるステップを更に有する、請求項4に記載のプログラム。 - 前記検査の結果が安定であることに応答して、前記第2のガード条件ブロックを除去するステップを更に有する、請求項5に記載のプログラム。
- コンピュータの処理により、非線形ブロックを含む複数の機能ブロックをもつシミュレーション・システムにおいて、前記複数の機能ブロックを、スイッチドリニア化により、複数の状態からなる線形ブロックに変換する動作と、所定の動作シナリオに従い、前記スイッチドリニア化によって生成される複数の状態の間を遷移する動作とを実行しつつ、前記システムの動作を制御するシステムであって、
記憶手段と、
前記動作シナリオに従い、次に遷移すべき状態の安定性を検査する手段と、
前記検査の結果が不安定であることに応答して、前記安定性を判定した状態の前に、該不安定な状態を検出するための第1のガード条件ブロックを配置する手段と、
前記第1のガード条件ブロックの配置の後、前記第1のガード条件ブロックに到達することに応答して、前記システムを停止する手段を有する、
システム。 - 未踏の状態への遷移に、第2のガード条件ブロックを付与する手段と、
前記第2のガード条件ブロックに到達することに応答して、前記システムの動作を一旦停止し、次の状態の安定性を検査する手段と、
前記検査の結果が不安定であることに応答して、前記第2のガード条件ブロックを第1のガード条件ブロックに置き換える手段を更に有する、請求項7に記載のシステム。 - 前記検査の結果が安定であることに応答して、前記第2のガード条件ブロックを除去する手段を更に有する、請求項8に記載のシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009278002A JP4965634B2 (ja) | 2009-12-07 | 2009-12-07 | シミュレーション・システムの動作制御方法、プログラム及びシステム |
US12/961,479 US8868381B2 (en) | 2009-12-07 | 2010-12-06 | Control system design simulation using switched linearization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009278002A JP4965634B2 (ja) | 2009-12-07 | 2009-12-07 | シミュレーション・システムの動作制御方法、プログラム及びシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011118841A JP2011118841A (ja) | 2011-06-16 |
JP4965634B2 true JP4965634B2 (ja) | 2012-07-04 |
Family
ID=44082871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009278002A Expired - Fee Related JP4965634B2 (ja) | 2009-12-07 | 2009-12-07 | シミュレーション・システムの動作制御方法、プログラム及びシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8868381B2 (ja) |
JP (1) | JP4965634B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118837A (ja) * | 2009-12-07 | 2011-06-16 | Sony Corp | 情報処理装置、情報処理方法およびプログラム |
US8751094B2 (en) * | 2012-04-16 | 2014-06-10 | Toyota Motor Engineering & Manufacturing North America, Inc. | Method for validation of a graphically based executable control specification using model extraction |
US8751093B2 (en) * | 2012-04-16 | 2014-06-10 | Toyota Motor Engineering & Manufacturing North America, Inc. | Hierarchical accumulated validation system and method |
CN103514087B (zh) * | 2012-06-18 | 2016-09-28 | 中国电子科技集团公司第四十一研究所 | 一种测量仪器的软件仿真验证系统 |
US11354463B1 (en) | 2018-12-12 | 2022-06-07 | The Mathworks, Inc. | Systems and methods for generating code for computer-based physical models |
CN110109514A (zh) * | 2019-04-26 | 2019-08-09 | 安徽嘉亨软件开发有限公司 | 一种计算机软件开发用测试装置 |
JP2022544767A (ja) * | 2019-08-13 | 2022-10-21 | テトラ ラバル ホールディングス アンド ファイナンス エス エイ | 液状食品用の包装機の状態監視 |
WO2022130019A1 (en) | 2020-12-17 | 2022-06-23 | Mobileye Vision Technologies Ltd. | Vehicle operation safety model test system |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05181654A (ja) * | 1991-12-28 | 1993-07-23 | Nec Corp | 状態図式変換装置 |
JPH05303408A (ja) * | 1992-04-28 | 1993-11-16 | Hitachi Ltd | 制御方法及び制御装置 |
JPH11224106A (ja) | 1998-02-06 | 1999-08-17 | Matsushita Electric Ind Co Ltd | パラメータ推定装置 |
JP2002127059A (ja) * | 2000-10-20 | 2002-05-08 | Sony Corp | 行動制御装置および方法、ペットロボットおよび制御方法、ロボット制御システム、並びに記録媒体 |
JP3602809B2 (ja) * | 2001-05-16 | 2004-12-15 | 本田技研工業株式会社 | プラントの制御装置 |
US6757579B1 (en) * | 2001-09-13 | 2004-06-29 | Advanced Micro Devices, Inc. | Kalman filter state estimation for a manufacturing system |
US7680637B1 (en) * | 2003-04-16 | 2010-03-16 | The Mathworks, Inc. | Automated linearization analysis |
US7643973B2 (en) * | 2004-09-13 | 2010-01-05 | The Mathworks, Inc. | Analyzing linearization of models in modeling environments |
US8046207B2 (en) * | 2005-12-27 | 2011-10-25 | The Mathworks, Inc. | Digital effects analysis in modeling environments |
US7603185B2 (en) * | 2006-09-14 | 2009-10-13 | Honeywell International Inc. | System for gain scheduling control |
US7970482B2 (en) * | 2007-08-09 | 2011-06-28 | Honeywell International Inc. | Method and system for process control |
US8467888B2 (en) * | 2009-06-05 | 2013-06-18 | The Mathworks, Inc. | Automated PID controller design |
-
2009
- 2009-12-07 JP JP2009278002A patent/JP4965634B2/ja not_active Expired - Fee Related
-
2010
- 2010-12-06 US US12/961,479 patent/US8868381B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8868381B2 (en) | 2014-10-21 |
US20110137631A1 (en) | 2011-06-09 |
JP2011118841A (ja) | 2011-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4965634B2 (ja) | シミュレーション・システムの動作制御方法、プログラム及びシステム | |
JP5209059B2 (ja) | ソース・コード処理方法、システム、及びプログラム | |
US7734455B1 (en) | Test postcondition items for automated analysis and test generation | |
JP4886838B2 (ja) | 並列化方法、システム、及びプログラム | |
US10078500B2 (en) | Method and system for automatic code generation | |
US8903688B1 (en) | Test entities for evaluation and validation of a model | |
KR20130091096A (ko) | 하이브리드 시스템을 검증하기 위한 시뮬레이션 장치 및 방법 | |
JP5479942B2 (ja) | 並列化方法、システム、及びプログラム | |
JP6592605B2 (ja) | Ecuシミュレーション装置 | |
US7266791B2 (en) | High level synthesis device, method for generating a model for verifying hardware, method for verifying hardware, control program, and readable recording medium | |
US10970183B1 (en) | System and method for improving model performance | |
JP7045921B2 (ja) | 半導体lsi設計装置および設計方法 | |
US11544436B1 (en) | Hardware-software interaction testing using formal verification | |
US12001771B2 (en) | Variant model-based compilation for analog simulation | |
US20130318487A1 (en) | Programmable Circuit Characteristics Analysis | |
KR102325612B1 (ko) | 시뮬레이터를 구현하는 방법, 장치, 기기 및 매체 | |
CN115328772A (zh) | 激励组合与模块相关性的学习方法与测试脚本产生方法 | |
US7454680B2 (en) | Method, system and computer program product for improving efficiency in generating high-level coverage data for a circuit-testing scheme | |
US9830174B2 (en) | Dynamic host code generation from architecture description for fast simulation | |
EP4113282A1 (en) | Method and system for generating programs for an automation system by code-similarity based approach | |
JP2009140028A (ja) | ハードウェア検証用プログラミング記述生成装置、ハードウェア検証用プログラミング記述生成方法、制御プログラムおよび可読記録媒体 | |
JP5076785B2 (ja) | プラント運用計画装置、そのプログラム | |
US10380296B2 (en) | Connecting designs in mixed language environments | |
JP5136257B2 (ja) | 経路管理方法 | |
JP2022011264A (ja) | ソフトウェア開発支援装置及びソフトウェア開発支援方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110823 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111028 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120313 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120329 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150406 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |