PLECS Coder

Generate C Code from a PLECS Model

PLECS Coder (製品名:プレックス コーダー)は、 PLECS BlocksetまたはPLECS StandaloneのシミュレーションモデルからCコード(ANSI-C 規格)を自動で生成します。 生成されたCコードは、組み込み制御環境、HIL(hardware-in-the-loop)システム、 リアルタイムシミュレータといった各ターゲットに応じてコンパイル可能です。 Cコード生成の対象となるシミュレーションモデルは、 物理的な回路モデル、または制御ロジックモデルになります。 このようなCコード生成機能の代表的な適用事例としては、 実際の制御用ハードウェアを、ハードウェアエミュレータ上の仮想プラントに接続してシステムを検証する、 ハードウェア・イン・ザ・ループ・シミュレーション(HILS)が挙げられます。 この手法によって、高価な実験装置を使用せず、制御用ハードウェアに実装された制御ロジックの検証が可能になります。 複雑なモデルのシミュレーション時間を短縮するため、 生成されたCコードをホストコンピューター上でコンパイルして実行することも可能です。

Simulink Coderのサポート

PLECS BlocksetでSimulinkモデルのCコードを生成する場合、 PLECS Coderは Simulink Coder® (Mathworks社 旧名称:Real-Time Workshop®) と連携して動作します。 ビルドプロセスが始まると、PLECSは自動生成される回路ブロックのCコードを適切な場所に挿入します。 このモードでは、ラピッドシミュレーションターゲット(または RSim ターゲット)と、 リアルタイムターゲットの、2つの異なるターゲットを出力可能ですが、 デフォルト設定では、Simulink Coder® に設定してあるターゲットに依存し、自動で適切なターゲットを選択します。

Cコードを適用するターゲット

PLECS Coderは特定のハードウェアターゲット用Cコードを生成可能です。 ターゲットサポートパッケージによって、 各CPU/MCUベースのプラットフォーム用に生成されたCコードをカスタマイズ可能です。 PLECSモデルの信号と、ターゲット上の物理的なI/Oピンの関連付けは、回路図のI/Oブロックによって指定されます。

  • RT Boxターゲット

    PLECS Standalone用RT Boxターゲットサポートパッケージは、PLECS RT Boxをターゲットとして認識します。 PLECS RT Boxコンポーネントライブラリには、一般的なアナログ・デジタルI/Oを設定するためのブロックが格納されています。 このライブラリには外部から入力されるPWM信号を検出し、 制御器に送信する直交エンコーダ信号を生成する特殊なブロックが含まれています。 下図はオフライン用太陽光発電システムの3相インバータPLECSシミュレーションモデルですが、 これにPLECS Coderを適用することによって、 PWM信号入力、電流/電圧出力を検出するプラント用リアルタイムコードを生成することが可能です。

外部モードでオフライン用PLECSモデルと、 RT-Box上で動作するリアルタイムモデルを接続することによって、 ターゲット上のパラメータ値をリアルタイムに調整したり、 検出したリアルタイムデータをPLECSスコープに表示することが可能になります。

  • マイクロコントローラー ターゲット

    制御ロジック組み込み用ターゲットとして、各メーカーからリリースされているマイクロコントローラー(MCU)のコード生成、および外部モード動作をサポートしています。各マイコン用ターゲットライブラリには、センシング/アクチュエーション用MCUペリフェラルをモデリングして、自動コーディングするためのブロックモデルが実装されています。組み込み用制御ロジックモデルは、PLECSライブラリに実装されている標準的な制御モデリング用コンポーネントを使用して実装可能です。マルチタスクのコード生成も可能なため、異なる時定数による動特性で構成された複数のシステム出力に関する制御処理にも対応可能です。

自動生成された組み込みCコードをマイコン(MCU)に展開する方法は2つあります。PLECSからターゲットデバイスに直接書き込む方法と、指定されたターゲット用のエンベデッドCコードを、メーカー別の統合開発環境(IDE)プロジェクト用ファイルとして生成する方法です。生成された組み込みCコードがターゲットデバイス上で実行されると、外部モードで接続してリアルタイム信号を表示しつつ、制御器のパラメータ等を直接、調整可能になります。

  • TI C2000 ターゲット

    ​​The PLECS Texas Instruments (TI) C2000 Target Support Packageは、TI 2806x、TI 2833x、TI 2837x、TI 28004xマイクロプロセッサ(MCU)に対して、自動コード生成および外部モード動作をサポートします。 PLECSからターゲットデバイスに書き込み、もしくはCoder Composer Studio(CCS)プロジェクト用ファイルとしてビルドが可能です。

  • ST STM32 ターゲット

    ​​​The STMicroelectronic (ST) STM32 Target Support Packageは、STM32G431、STM32G474、STM32F303、TM32F334マイクロプロセッサ(MCU)に対して、自動コード生成および外部モード動作をサポートします。 OpenOCD(もしくはJ-Link)を使用してPLECSからターゲットデバイスに書き込み、もしくはSTM32CubeIDEプロジェクト用ファイルとしてビルドが可能です。.

  • Imperixターゲット(サードパーティー製品)

    Imperix社が開発したPLECS用TSP(Target Support Package)を適用すると、B-Box RCPユニット、B-Board PRO等のRCP用プラットフォームと直接接続可能になります。設定動画(英語)のリンクは コチラ です。TSPのダウンロードは、下記リンクのImperix社Webサイトにアクセスしてください:https://imperix.com/software/acg-sdk/plecs/