Simulink/T-VEC Examples

提供: T-VEC Wiki
移動: 案内検索

T-VEC Tester for Simulink(SL2TVEC)の使用に成功している、ほとんどのユーザは、いくつかのキーとなるガイドラインに従っています。

  1. 検証を念頭に入れモデルを開発する - 安全なシステムになるように、モデリング構造やパターンに気を配る
  2. デザイン工程の間、反復的、連続的にSL2TVECを用いて、モデリングして検証、を実行
  3. ツールはモデルチェックを実行し、そのテストベクタは、この過程の副産物と理解する
  4. Simulink/Stateflowツールは、継続的に進化しているので、新しいSimulinkのリリースに対する、SL2TVECの対応は、時間がかかるかもしれないことを理解し、1.のガイドラインを再認識する。

Key Guidelines

このセクションではまず、モデル解析やテスト生成を行う上で、モデルからT-VECプロジェクトに変換するための設定など、主要な要素を解説します。

Signal Ranges

シグナルレンジ情報は、入出力信号のローバウンドとハイバウンド値を定義します。この情報は、テストベクタ入力が入力信号の範囲を基に選択されるので重要です。また、T-VECは、信号の範囲を基にして、ドメイン解析を用いてモデルを検証します。デフォルト入力範囲は、型定義に基づきます。その場合、たいていは、最小(ローバウンド)と最大(ハイバウンド)値は、そのままでは意味を成しません。特に以下のような、浮動小数点数の場合に、明らかです:

  • 32 bit float range: -3.4E+38 から 3.4E+38
  • 64 bit float range: -1.7E+308 から 1.7E+308

非常に大きな範囲で値を選択することは、精度が下がります。例えば、

Y<X+100 の場合、Xが1.7E+308では、有意義な解析はできない
100は、1.7E+308のノイズ程度となってしまう

浮動小数点型のデフォルト範囲は、この問題を軽減するために、以下のように設定されます。

  • single型(32 bit float)範囲: -1.0e4..1.0e4
  • double型(64 bit float)範囲: -1.0e12..1.0e12

他の型は、以下のデフォルト範囲に設定されます。

  • int8: -128..127 int16: -32768..32767
  • unint8: 0..255 uint16: 0..65535
  • int32: -2147483648.. 2147483647
  • uint32: 0..4294967295

デフォルト型範囲を修正したり、特定の信号範囲を定義することができます。これらの操作は、Signal Range Editor GUIを使用して実行するか、エディタを使ってXMLファイルを修正することもできます。

デフォルトを作成するには、一旦Sl2tvec変換を走らせ、Signal Range Editorを使用し、信号範囲を適切に設定します。

Test Sequences

Sl2tvec変換とT-VEC VGSを使って、テストシーケンスをサポートするメカニズムが2つあります。

  • Test Sequence Vectors: State Variable Initialization(テストシーケンスベクタ:状態変数の初期化)- VGSにより、状態変数に関わる制御とロジックを網羅するテストシーケンスベクタの生成
  • Test Sequence Vectors(テストシーケンスベクタ)- SL2TVECのGUIにより、VGSによって、テストシーケンスベクタを生成させるメカニズムを提供。これは、制御のテストをサポートできますが、主に動的なアルゴリズム解析に適応されます。

Assertions

アサーションは、モデルの外界となり、追加の制約を指定するのに使用される多目的なメカニズム。実現できるコンストレインツ、以下の通りです:

  • 自然法則のような暗黙の設計制約を定義する
  • 安全特性をモデリングする
  • 追加のテストを定義する

Example Links

T-VECのSimulink Testerインストレーション設定は、Simulink Testerの学習を始めるいくつかの例題を提供しているフォルダを作成します。デフォルトの場所は以下の通りです。

C:\t-vec\translators\sl2tvec\examples

加えて、Simulink Testerユーザーズガイドには、いくつかの例があります。以下は追加の例題です。