Real-Time Workshop User's Guide | ![]() ![]() |
本マニュアルの情報の見つけかた
下記の一覧は、開発作業に関連する情報や興味のある情報を示しています。
シングルタスクおよびマルチタスクコード生成
Real-Time Workshopは、シングルタスクおよびマルチタスクのコード生成をサポートします。詳細は、第6章「プログラムアーキテクチャ」 と 第7章「複数のサンプルレートをもつモデル」を参照してください。
生成コードのカスタマイズ
Real-Time Workshopカスタムコードライブラリは、生成コードのカスタマイズをサポートします。このライブラリの詳細については、第14章「カスタムコードブロック」を参照してください。
生成コードのカスタマイズの別の方法は、Target Language Compiler (TLC)ファイルを変更することです。Target Language Compilerは、SimulinkモデルをCコードに変換するインタプリタ型言語です。Target Language Compilerを使って、コード生成プロセスを管理することができます。
Real-Time Workshopの生成コードをカスタマイズするための関数を含むTLCファイルには、hookslib.tlc
とcachelib.tlc
の2つがあります。これらのTLCファイルに関する情報は、Target Language Compiler Reference Guide を参照してください。matlabroot
/rtw/c/tlc
にあるソースコードも参照してください。
生成コードの最適化
デフォルトのコード生成の設定は、フレキシブルなラピッドプロトタイピングシステムに対して標準的なものになっています。この自由度に対するペナルティは、コードが最適でないことです。要求を満たすモデルをもつとき、ソースコードの大きさやメモリ使用量を最小化するために利用できる最適化手法がいくつかあります。
すべてのターゲット構成に対して利用可能なコードの最適化手法の詳細は、第3章「コード生成とビルドプロセス」 と 第8章「コード生成に対する最適化」 を参照してください。
第9章「組み込みReal-Time Target」 には、ERTターゲットに対して特化した最適化に関する情報が含まれています。
生成コードの検証
Real-Time Workshopのデータロギング機能を使って、ワークステーション上で実行する実行ファイルを作成し、データファイルを作成することができます。その後で、プログラムの結果と、等価なSimulinkシミュレーションの結果を比較することができます。
Real-Time Workshopの生成コードの検証方法に関する詳細は、「ワークスペースI/Oオプションとデータロギング」を参照してください。この章の「チュートリアル2:データロギング」 と 「チュートリアル3:コードの検証」も参照してください。
生成コードを大規模システムに組み込む
Real-Time Workshopの生成コードが既存のコードをベース(たとえば、生成コードをプラグイン関数として使いたい場合)として機能されることを目的とする場合は、組み込みリアルタイム(ERT)ターゲットを使ってください。第9章「組み込みリアルタイムターゲット」には、ユーザコードとERT生成コードとのインタフェース用に必要なエントリポイントとヘッダファイルが記述されています。
ユーザコードを生成コードに組み込む
手書きのコードとReal-Time Workshop生成コードとのインタフェースを作成するには、S-ファンクションラッパーを使うことができます。詳細は、Writing S-Functionsマニュアルを参照してください。
デバイスドライバの作成と通信
S-ファンクションは、デバイスドライバとの通信のためのフレキシブルな方式を提供します。デバイスドライバの作成方法に関する詳細は、第17章「リアルタイムシステムターゲット」 を参照してください。S-ファンクションの詳細な説明については、Writing S-Functionsマニュアルを参照してください。
コードのトレース
Real-Time Workshopは、生成したコードをSimulinkモデルに戻してトレースすることを簡略化する専用のタグをもっています。この機能の詳細は、「生成コードをSimulinkモデルでトレース」を参照してください。
自動ビルドプロシージャ
Real-Time Workshopを使って、ボタンを押すことでコードを生成することができます。自動ビルドプロシージャは、マウスのシングルクリックによって起動され、コード、makefileを生成し、オプションでコンパイル(またはクロスコンパイル)を行い、プログラムをダウンロードします。概要については「自動プログラムビルド」を、詳細については第3章「コード生成とビルドプロセス」 を参照してください。
パラメータチューニング
パラメータチューニングにより、生成プログラムの実行中にブロックパラメータを変更するので、生成コードをリコンパイルすることはありません。Real-Time Workshopは、4種類の環境でのパラメータチューニングをサポートします。
rsim
) を使うことによりパラメータの検討に対して高速シミュレーションを提供することができます。これは、実行中のパラメータチューニングアプリケーションではありませんが、やはりモデルの評価に対して役立つ方法です。このモードは、モンテカルロシミュレーションに対しても有効です。詳細は、第11章「Real-Time Workshop Rapid Simulation Target」を参照してください。「信号とパラメータのインタフェース」も参照してください。
信号のモニタリングとデータのロギング
Real-Time Workshopでは信号やデータをモニタするいくつかの方法があります。/p>
信号とパラメータのインタフェース
信号とパラメータのストレージ宣言の指定によって、モデル内の信号およびパラメータと手書きのコードとのインタフェースを作成することができます。詳細は、以下を参照してください。
実現方法のサンプル
Real-Time Workshopは、Window、UNIXでの一般的なリアルタイムプログラムと同様に、DOS、Tornadoでのリアルタイムプログラムの開発を説明する、実現方法の例題を提供しています。
matlabroot
/rtw/c/grt
:
一般的リアルタイムの例題matlabroot
/rtw/c/dos
: DOSの例題matlabroot
/rtw/c/tornado
: Tornadoの例題![]() | チュートリアル4: 生成コードの調査 | 技術的な概要 | ![]() |