μgpcdsp series simulink 東洋ブロックセット コントロール … ページ μgpcdsp...

60
1/59 ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号 QG18656 発行 部門 産業事業部 産業工場 開発グループ 記号 年 月 日 適用製命 訂正ページ 承認 調査 作成 2010.12.14 記帳・新規発行 ―― 鬼塚 鬼塚 B 第2章注2追記、付録4追加、4.2章説明 追記、改定内容追記、目次付録4追記、 全頁数訂正、一部誤記訂正、 3,4,6,20,21,24,2 6,28,30,32,34,3 6,38,58,59 頁 [ 適用 ] TOYODENKI SEIZO K.K. Simulink 東洋ブロックセット コントロール編 機能説明書

Upload: tranmien

Post on 01-Nov-2018

232 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

1/59

ページ

μGPCdsP series

Simulink 東洋ブロックセット

コントロール編 機能説明書

番号 QG18656

発行

部門

産業事業部

産業工場

開発グループ

記号 年 月 日 来 歴 適用製命 訂正ページ 承認 調査 作成

- 2010.12.14 記帳・新規発行 ―― 鬼塚 レ 鬼塚

B

第2章注2追記、付録4追加、4.2章説明

追記、改定内容追記、目次付録4追記、

全頁数訂正、一部誤記訂正、

3,4,6,20,21,24,2

6,28,30,32,34,3

6,38,58,59 頁

[ 適用 ]

TOYODENKI SEIZO K.K.

Simulink 東洋ブロックセット

コントロール編 機能説明書

Page 2: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

2

記号QG18656

2/59 番 号 ページ

はじめに

このたびは、TOYO FA デジタルコントローラμGPCdsP をお買い上げいただきまことにありがとうございます。

この Simulink 東洋ブロックセットコントロール編 機能説明書は、μGPCdsP(注1) により当社製の専用インバ

ータ、及びモータを使用したドライブシステムを行うにあたって、MATLAB/Simulink(注2)にて使用する東洋ブロッ

クセット「TOYO DENKI SEIZO Blockset」のコントロールブロック群について解説したものです。東洋ブロックセット

を正しくお使いいただくために、この機能説明書をよくお読みください。

また、下表に示す当社関連マニュアルや、米国 The MathWorks 社が発行する MATLAB/Simulink のマニュアル

も併せてお読みくださるようお願いいたします。

名称 マニュアル番号 記載内容

TDdsPMonitor 操作編 取扱説明書 QG18578

TDdsPMonitor のメニュー、アイコンなどの説明お

よびオペレーションの解説

TDdsPMonitor ユーティリティ・

マニュアル QG18579

制御モデルから TDdsPMonitor で使用するファイ

ルを作成する方法の解説

μGPCsH シリーズ プログラミング

マニュアル(命令語編) QG18273

μGPCsH シリーズのメモリ、言語、システム定義

の内容などを解説

μGPCsH シリーズ ユーザーズ

マニュアル(オペレーション編) QG18291

TDFlowEditor のメニュー、アイコンなどの説明およ

び TDFlowEditor のオペレーションのすべてを解説

μGPCsH シリーズ ユーザーズ

マニュアル(ハードウェア編) QG18284

μGPCsH シリーズのシステム構成、各モジュール

のハードウェア仕様などを解説

(注1)TOYO FA デジタルコントローラμGPCdsP、及びμGPCsH は当社の登録商標です。

(注2)MATLAB、及び Simulink は米国 The MathWorks 社の登録商標です。

その他、本文中における会社名、商品名は、各社の商標または登録商標です。

(1) 本書の内容の一部または全部を無断で転載、複製することは禁止されております。

(2) 本書の内容に関しては、改良のため予告なしに仕様などを変更することがありますのでご了承くだ

さい。

(3) 本書の内容に関しては万全を期しておりますが、万一ご不審な点や誤りなどお気付きのことがあり

ましたら、お手数ですが巻末記載の弊社営業所までご連絡ください。その際、表紙記載のマニュア

ル番号も併せてお知らせください。

ご注意

Page 3: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

3

記号QG18656

3/59 番 号 ページ

※マニュアル番号は、このマニュアルの表紙の右下に記載しております。

印刷日付 ※マニュアル番号 改訂内容

2010 年 10 月 QG18656 初版発行

2011 年 04 月 第2章注2追記、付録4追加、4.2章説明追記

改定履歴

Page 4: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

4

記号QG18656

4/59 番 号 ページ

目 次

はじめに ...................................................................................................................................... 2 改定履歴 ...................................................................................................................................... 3 目 次 .......................................................................................................................................... 4 第 1 章 概要 ............................................................................................................................ 5 第 2 章 初期設定方法 .............................................................................................................. 6

2.1 東洋ブロックセットの登録 ..................................................................................................................... 6 2.2 東洋ブロックセットの更新 ................................................................................................................... 10 2.3 東洋ブロックセットの削除 ................................................................................................................... 10 2.4 Custom Board ブロックの設定 ............................................................................................................... 11 2.5 補足(初期設定) ................................................................................................................................. 12

第 3 章 ビルドとダウンロード .............................................................................................. 14 3.1 ビルド ................................................................................................................................................... 14 3.2 ダウンロード ........................................................................................................................................ 15

第 4 章 コントロールブロックの説明 ................................................................................... 16 4.1 ブロック線図作成時の注意点 ................................................................................................................ 16 4.2 コントロールブロックの説明 ................................................................................................................ 20

第 5 章 DPRAM データ転送 ................................................................................................. 40 5.1 GPC 機能モデル例 .................................................................................................................................... 40 5.2 DSP 機能モデル例 ..................................................................................................................................... 41 5.3 GPC/DSP 転送データ確認 ....................................................................................................................... 44 5.4 DSP/GPC 転送データ確認 ....................................................................................................................... 44

第 6 章 付 録 ....................................................................................................................... 45 6.1 付録1(デバック方法) ....................................................................................................................... 45

6.1.1 TDdsPMonitor での数値モニタ、書込 ..................................................................................................... 45 6.1.2 TDFlowEditor のレジスタ確認例 ............................................................................................................ 48

6.2 付録2(DPRAM 領域) ........................................................................................................................ 49 6.3 付録3(サンプル時間) ....................................................................................................................... 50

6.3.1 定期スキャン時の一例 ........................................................................................................................... 50 6.3.2 割込み処理時の一例 ............................................................................................................................. 51 6.3.3 サンプル時間の計測 .............................................................................................................................. 53

6.4 付録3(参考ブロック) ....................................................................................................................... 54 6.5 付録4(MATLAB/Simulink R2007b 不具合修正方法) ........................................................................... 58

Page 5: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

5

記号QG18656

5/59 番 号 ページ

第1章 概要

μGPCdsP(注1)は PLC に DSP 機能を組込んだ FA デジタルコントローラであり、MATLAB/Simulink にて

モデルベースの設計、記述したモデルファイルのコードを生成(注2)後、当社の支援ツール TDdsPMonitor

(注3)にて、μGPCdsP にダウンロードする機能を有する PLC 型 DSP 装置です。

MATLAB/Simulink では、標準ブロックセット(ツールボックス)が登録されている Simulink Library Browser

(Simulink ライブラリ・ブラウザ)から、必要なブロックを選択し、モデルファイルにてブロック線図を作成します。

ここに当社のカスタムブロックセットである東洋ブロックセット「TOYO DENKI SEIZO Blockset」(注4)を登録す

ることにより、複雑なモデルファイルを組込むことなく簡単なモデルファイルを構築でき、設計、記述する時間の

短縮が可能となります。

本説明書では、当社東洋ブロックセット「TOYO DENKI SEIZO Blockset」のコントロールブロック(注5)につい

て説明します。

(注1)μGPCdsP を使用する場合は、予め当社プログラミングツール TDFlowEditor にて、ラダー回路側

の初期設定が必要です。別紙「QG18291 μGPCsH シリーズ ユーザーズ マニュアル(オペレー

ション編)」を参照してください。

(注2)コード生成には、MATLAB/Simulink のほかに、別途テキサス・インスツルメンツ社の DSP 用総合

開発環境「Code Composer Studio IDE」が必要になります。

必要なソフトウェア環境、セットアップについては、別紙「QG18579 TDdsPMonitor ユーティリティ・

マニュアル」を参照してください。

なお、Code Composer Studio はテキサス・インスツルメンツの商標または登録商標です。

(注3)MATLAB/Simulink による設計、制御を支援する PC ツールです。

モデリングした変数名を用いて数値モニタ、数値書込み、トレンドグラフ表示及びトレースバックを

行うことができます。

別紙「QG18578 TDdsPMonitor 操作編 取扱説明書」を参照してください。

(注4)当社のカスタムブロックセットである東洋ブロックセット「TOYO DENKI SEIZO Blockset」は、

C 言語で作成しており、S-Function ブロックにて提供しています。

(注5)コントロールブロックは、μGPCdsP の実行環境にてモータ速度制御などに使用するPIアンプなど

の制御ブロックのことです。

Page 6: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

6

記号QG18656

6/59 番 号 ページ

第2章 初期設定方法

当社東洋ブロックセットを使用するためには、Simulink Library Browser に登録する必要があります。ここでは、

東洋ブロックセット「TOYO DENKI SEIZO Blockset」のセットアップについて説明します。

(注1)予め、別紙「QG18579 TDdsPMonitor ユーティリティ・マニュアル」に記載してあるソフトウェア環境を、

ご使用になるPCに設定しておくことが必要です。

(注2)お使いの MATLAB/Simulink のバージョンが R2007b の場合、米国 The MathWorks 社にて報告されて

いる「バグレポート:491184」の不具合を修正する必要があります。前述の不具合が修正されていない

環境であれば、上記注1の環境構築後に修正してください。詳細な説明は付録4にありますので参照

してください。

2.1 東洋ブロックセットの登録

東洋ブロックセットの登録方法を説明します。

(1)東洋ブロックセット「TOYO DENKI SEIZO Blockset」のインストールディスク(注1)を用意します。

インストールディスクには以下のファイルが存在します。

・ライブラリファイル :“ugpcdsplib.mdl”

・登録mファイル :“slblocks.m”

・カスタムブロック・ファイル:“<ブロック名>.mexw32” 、他複数のファイル

・CCS ライブラリ・ファイル:“ugpcdsplib.lib” (注2)

(注1)インストールディスクについては、別途当社にお問い合わせください。

(注2)ターゲットであるμGPCdsP 用のコード生成時に必要となるライブラリ・ファイルです。

“CCS”は、テキサス・インスツルメンツ社の DSP 用総合開発環境「Code Composer Studio

IDE」の略称になります。

(2)格納フォルダ:“<MATLAB インストールパス>\toolbox\toyodenki\ugpcdsp\”を作成します。

MATLAB/Simulink R2007b をインストールした場合、上記<MATLAB インストールパス>は、通常

“C:\Program Files\MATLAB\R2007b” になります。

インストール条件やバージョンにより異なりますので、インストールしたPCの設定、フォルダを確認して

ください。

Page 7: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

7

記号QG18656

7/59 番 号 ページ

(3)上記(1)項のインストールディスクのファイルを、上記(2)項の格納フォルダに配置(コピー)します。

(4)MATLAB に格納フォルダのパス(以下、格納パス)を設定します。

MATLAB を起動してください。

設定方法には、次の2種類の方法があります。

①MATLAB のコマンドウィンドウによる設定

MATLAB のコマンドウィンドウにて、“addpath”コマンドにて格納パスを設定し、

“savepath”コマンドにて追加したパス設定を保存します。

→ >> addpath(genpath(fullfile(matlabroot,'toolbox/toyodenki/ugpcdsp')))

>> savepath (fullfile(matlabroot,'toolbox/local/pathdef.m'))

格納パスを変更する場合は、“rmpath”コマンドにて格納パスを削除し、“savepath”コマンドにて

パス設定を保存します。その後、再度設定してください。

→ >> rmpath (genpath(fullfile(matlabroot,'toolbox/toyodenki/ugpcdsp')))

>> savepath (fullfile(matlabroot,'toolbox/local/pathdef.m'))

Page 8: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

8

記号QG18656

8/59 番 号 ページ

②パス設定画面による設定

MATLAB のメニューから“ファイル” =>“パス設定”を選択し、“フォルダを追加”ボタンにて格納パス

を追加後、“MATLAB サーチパス”にて格納パスが追加してあることを確認してから“保存” ボタン

にて格納パスを保存します。

格納パスを変更する場合は、“MATLAB サーチパス”にて格納パスがアクティブ表示(反転表示)に

なっていることを確認してから、“削除”ボタンにて格納パスを削除し、“保存”ボタンにて格納パスを

保存します。その後、再度設定してください。

Page 9: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

9

記号QG18656

9/59 番 号 ページ

(5)パス設定が成功しているか確認します。

以下の“which”コマンドを MATLAB コマンドウィンドウから指定します。

格納フォルダに存在する“ugpcdsplib.mdl”の格納パスがアンサーとして戻ってきた場合、パス設定が

正常(格納フォルダ内の各種ファイルが参照できる状態)であること示しています。

>> which -all ugpcdsplib.mdl

C:\Program Files\MATLAB\R2007b\toolbox\toyodenki\ugpcdsp\ugpcdsplib.mdl

(6)Simulink を起動後、Simulink Library Browser を起動し、ライブラリ名称「TOYO DENKI SEIZO

uGPCdsP」が登録されていることを確認します。

(すでに Simulink Library Browser が起動していれば、再度開き直してください)

登録例:

Page 10: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

10

記号QG18656

10/59 番 号 ページ

2.2 東洋ブロックセットの更新

バージョンアップなどで東洋ブロックセットの更新が必要になる場合があります。

更新方法を説明します。

(1)更新された東洋ブロックセット「TOYO DENKI SEIZO Blockset」のインストールディスクを用意します。

格納フォルダにあるファイルを置き換えます。(前述2.1(3)項を参照)

以下、2つの“rehash”コマンドを MATLAB コマンドウィンドウから指定します。

>> rehash path

>> rehash toolboxcache

(注)このコマンドは設定(キャッシュ)内容を更新するコマンドになります。

ブロックセットのファイルを置き換えるだけは更新されませんので注意が必要です。

パス設定、ファイル更新後は必ずこのコマンドを指定するようにしてください。

2.3 東洋ブロックセットの削除

諸事の理由により必要であれば、東洋ブロックセットを削除してください。

削除方法を説明します。

(1)格納パスの設定を削除します。(前述2.1(4)項を参照)

(2)設定(キャッシュ)内容を更新します。(前述2.2(1)項を参照)

(3)格納フォルダ内のファイルを削除します。(前述2.1(3)項を参照)

(4)Simulink Library Browser を起動し、東洋ブロックセット「TOYO DENKI SEIZO Blockset」が削除されて

いることを確認してださい。

Page 11: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

11

記号QG18656

11/59 番 号 ページ

2.4 Custom Board ブロックの設定

東洋カスタムブロックを使用して作成したモデルがμGPCdsP にて動作するには、初期設定を定義する

“Custom Board” ブロックに、実行環境用のコードを生成するための設定を追加する必要があります

(注1)“Custom Board”ブロックを使用した MATLAB/Simulink の初期設定は、別紙「QG18579 TDdsPMonitor

ユーティリティ・マニュアル」を参照してください。

(1)MATLAB => Simulink => Simulink Library Browser の順で起動します。

(2)Simulink にて「新規作成」を選択し、新規のモデルファイル(*.mdl)を作成し、適当なファイル名で保存

します。

(3)新規モデルに Simulink Library Browser の Link for Code Composer Studio(tm) => Target Preferences

から “Custom Board” ブロックを追加します。

Page 12: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

12

記号QG18656

12/59 番 号 ページ

(4) Custom Board ブロックの Board Info タブより、Board custom code に Libraries を選択し、“ugpcdsplib.lib”

を記入します。

“OK”、あるいは“Apply”ボタンをクリックし設定を確定し、モデルファイルを保存します。

(注2)コード生成には、この設定に CCS ライブラリ・ファイル“ugpcdsplib.lib”を記入する必要があります。

2.5 補足(初期設定)

μGPCdsPを使用する場合は、予め当社プログラミングツールTDFlowEditorにて初期設定しておく必要があ

ります。TDFlowEditor の詳細は、別紙「QG18291 μGPCsH シリーズ ユーザーズ マニュアル(オペレーション

編)」に記載がありますので参照してください。

(注)プログラミングツール TDFlowEditor で設定する高速 CPU 側の機能は GPC 機能とし、DSP 機能と区別

します。

ここでは、DSP 機能を使用する前に、GPC 機能の初期設定を簡単に説明します。

(1)プログラミングツール TDFlowEditor を起動し、メニューより ファイル(F) => 新規プロジェクト(N) を

選択します。

(2)CPU タイプ選択 にて uGPCsH を選択し、プロジェクトファイル名(例:new)を指定して保存します。

(3)I/O割付 よりシステム構成を定義します。

CPU 位置に存在する標準 CPU モジュール“SHPC-111-Z”を取り外し、高速 CPU/DSP モジュール

“SHPC-115-Z”を取り付けます。

また、必要に応じて IO モジュールの設定を行います。(ここでは説明を省きます。)

Page 13: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

13

記号QG18656

13/59 番 号 ページ

(4)メニューより 編集(E) => サブプログラム新規作成(N) を選択し、“タスク1” にラダープログラム

(例:NONAME)を追加します。

(5)ラダープログラムの回路を開き、ラダー回路を追加します。ここでは、ダミーの回路を追加します。

追加後、“書込終了”をクリックして回路を確定します。

(6)メニューより、オンライン(O) => ダウンロード(D) にて、μGPCdsP の高速 CPU/DSP モジュール

“SHPC-115-Z” にプロジェクトをダウンロードします。

(7)μGPCdsP の高速 CPU/DSP モジュール “SHPC-115-Z” 本体にて、エラー表示がなければ完了です。

Page 14: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

14

記号QG18656

14/59 番 号 ページ

第3章 ビルドとダウンロード

Simulink で作成したブロック線図のモデルは、ビルド操作することでブロック線図のコードを生成します。ビル

ド後は支援ツール TDdsPMonitor にてμGPCdsP へダウンロードします。これによりμGPCdsP の DSP 機能に

モデル(制御システム回路)が組込まれます。ここでは、μGPCdsP へダウンロードするまでの概略を説明しま

す。

(注)ビルドに関する詳細な内容は、別紙「QG18579 TDdsPMonitor ユーティリティ・マニュアル」を確認して

ください。

支援ツール TDdsPMonitor の詳細な内容は、別紙「QG18578 TDdsPMonitor 操作編 取扱説明書」を

確認してください。また、通信設定などの初期設定は完了しておいてください。

3.1 ビルド

(1) MATLAB => Simulink の順で起動し、さらに前述2.4項で作成したモデルファイル(*.mdl)を開きます。

(2) モデルをビルドします。

モデルファイルのメニューより、ツ-ル(T) => Real-Time Workshop(W) => モデルのビルド(B) を選択

します。 初は MATLAB/Simulink のコードが生成され、その後 CCS によりμGPCdsP 用のコードが、

「“モデルファイル名”_ ccslink」フォルダ内に生成されます。

MATLAB 画面にて、MATLAB 左部のコマンドウィンドウに「### Build complete」と表示になれば正常

です。

(注)MATLAB 上部のカレントディレクトリに表示しているパス(格納場所)が、コード生成の基準フォルダ

になります。

カレントディレクトリに “[モデルファイル名]_ ccslink” フォルダが作成されますので、必ずモデル

ファイルが存在する階層のフォルダを、MATLAB のカレントディレクトリとしてください。

(「*.mdl」と同じ階層に “[モデルファイル名]_ ccslink” フォルダが作成されます)

Page 15: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

15

記号QG18656

15/59 番 号 ページ

3.2 ダウンロード

(1)支援ツール TDdsPMonitor を起動します。

(2) メニューの ファイル(F) => 開く(O) にて、ビルドしたモデルファイル(*.mdl)を選択します。

モデルファイルと同じ階層の「“モデルファイル名”_ ccslink」フォルダから必要なファイルを抽出し、

プロジェクトを構築します。

(3)上記(2)項にてプロジェクトを構築後、ファイル(F) => ダウンロード(D) にて、生成したコードやモデル

ファイルをμGPCdsP の DSP 機能へダウンロードします。

このとき、ダウンロード中はμGPCdsP の電源を切らずにお待ちください。

ダウンロードが正常に終了すると、「ダウンロード」画面の上部に「ダウンロード正常に終了しました。」

とメッセージが表示されます。

(4)また、μGPCdsP 側で正常にダウンロードされ、動作できるか簡単に確認するには、ダウンロード完了後

にμGPCdsP の電源を再投入することで確認できます。

電源投入時、SHPC-115-Z の LCD インジケータが「CPUDSP RUN」と表示すれば、DSP 機能は正常に

動作しています。

Page 16: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

16

記号QG18656

16/59 番 号 ページ

第4章 コントロールブロックの説明

ここでは、Simulink Library Browser に登録した東洋ブロックセット「TOYO DENKI SEIZO Blockset」にある、コ

ントロールブロック群について説明します。

4.1 ブロック線図作成時の注意点

(1) Simulink でサポートされている型

ブロック線図において、ライン、プロパティはそれぞれのデータ型を持ちます。データ型が異なる箇所を接続

すると、シミュレーションやビルド時にエラーが発生しますので注意してください。以下に代表例を表します。

Simulink での

型名 内容

MATLAB/Simulink 内部での

型名

C コードでの

型名 バイト数

double 倍精度実数(倍精度浮動小数点) real_T double 8

single 単精度実数(単精度浮動小数点) real32_T float 4

int8 符号付き8ビット整数 int8_T signed char 1

uint8 符号なし8ビット整数 uint8_T unsigned char 1

int16 符号付き16ビット整数(ワード) int16_T short 2

uint16 符号なし16ビット整数 uint16_T unsigned short 2

int32 符号付き32ビット整数 int32_T int 4

uint32 符号なし32ビット整数 uint32_T unsigned int 4

boolean 論理値 boolean_T unsigned char 1

(2)ブロック構築時の注意点

1)各ブロックのパラメータの入力端子には、特に問題なければ、定数値を生成する “Constant” ブロックを

使用します。また、接地(「0」を入力)するには “Ground”ブロックを使用します。(“Constant” ブロックに

「0」を設定しても構いません)

・Simulink Library Browser => Simulink => Sources => “Constant” ブロック

定数値の生成

・Simulink Library Browser => Simulink => Sources => “Ground” ブロック

未接続の入力端子を接地

2)複数のブロックをグループ化し、1つのブロックにしたものをサブシステムといいます。サブシステムの

外部から内部に入力し、リンクするには “Inport” ブロックを、サブシステムの内部から外部へ出力し、

リンクするには “Outport” ブロックを使用します。

Page 17: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

17

記号QG18656

17/59 番 号 ページ

・Simulink Library Browser => Simulink => Sources => “Inport” ブロック

サブシステムの入力、または外部入力を作成

・Simulink Library Browser => Simulink => Sinks => “Outport” ブロック

サブシステムの出力端子または外部出力を作成

3)各ブロックの未接続の出力端子が接続されていない場合、シミュレーションやビルド時に警告が発生

しますので、“Terminator” ブロックを使用し、接続しておきます。

・Simulink Library Browser => Simulink => Sinks => “Terminator” ブロック

未接続の出力端子の終端を生成

4)コントロールブロックに配列データ、すなわち同じデータ型を持つ入力信号を連結して連続した出力

信号を作成する場合、“Vector Concatenate” ブロックを使用してください。

設定の詳細は後述5.2の表を参照してください。

配列データから個々の出力信号を抽出する場合、“Demux” ブロックで分割してください。

また、分割後に必ず “Gain” ブロックか “Data Type Conversion“ ブロックを使用し、出力端子と同じ型に

変換(キャスト)してください。

・Simulink Library Browser => Simulink => Math Operations => “Vector Concatenate” ブロック

同じデータ型を持つ入力信号を連結して連続した出力信号を作成

・Simulink Library Browser => Simulink => Signal Routing => “Demux” ブロック

ベクトル信号の出力要素の抽出

・Simulink Library Browser => Simulink => Math Operations => “Gain” ブロック

入力に定数を乗算

・Simulink Library Browser => Simulink => Signal Attributes => “Data Type Conversion” ブロック

入力信号を指定されたデータ型へ変換

Page 18: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

18

記号QG18656

18/59 番 号 ページ

5)GPC への転送データの入出力には、“Memory Copy” ブロックを使用します。

・Simulink Library Browser => Link for Code Composer Studio(tm) => C6000 DSP Chip Support

=> “Memory Copy” ブロック

6)外部割込み(高速通信)処理を行う場合は、“Hardware Interrupt” ブロックと、トリガ端子である

“Trigger” ブロックを使用します。

・Simulink Library Browser => Link for Code Composer Studio(tm) => C6000 DSP Chip Support

=> “Hardware Interrupt” ブロック

・Simulink Library Browser => Simulink => Ports & Subsystems => “Trigger” ブロック

モデルまたはサブシステムにトリガー端子を追加

7)他に使用頻度が高いブロックは、加算または減算 の“Sum” ブロック、乗算と除算の “Product”

ブロックなどがあります。

・Simulink Library Browser => Simulink => Math Operations => “Sum” ブロック

入力の加算または減算

・Simulink Library Browser => Simulink => Math Operations => “Product” ブロック

スカラー、非スカラーの乗算と除算、あるいは行列の乗算と逆行列

必要なブロックは Simulink Library Browser 内の Simulink(標準ブロック)か、あるいは Link for Code

Composer Studio(tm) (DSP ブロック)を使用してください。μGPCdsP の実行環境(DSP-C6000)に対応

した Simulink(標準ブロック)については、Simulink Library Browser => Simulink => Model-Wide Utilities

=> “Block Support Table”(ドキュメント)を参照してください。

Page 19: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

19

記号QG18656

19/59 番 号 ページ

(3)コントロールブロックの注意点

1)コントロールブロックには、通常使用する入力信号にスイッチ信号 “Sw”と、制御入力信号 “In” があり、

また、シミュレーション時に使用するシミュレーション用サンプリング時間 “SimTs” があります。

[説明]

・スイッチ信号 “Sw”(データ型 “int8”)

制御切り替え用のスイッチ信号です。“≠0” で真(スイッチオン)、“=0” で偽(スイッチオフ)となります。

・制御入力信号 “In”(データ型 “double”)

各種制御の入力信号です。

・シミュレーション用サンプリング時間 “SimTs” (データ型 “uint16”)

シミュレーション時は、「1」以上のサンプル時間(符号なし 16 ビット整数、単位は[μs])を設定してくだ

さい。シミュレーション時に「0」を設定すると、MATLAB/Simulink が不正終了するので注意してください。

実行時は、必ず「0」を入力(あるいは“Ground”ブロックを接続)してください。

2)コントロールブロックには、通常使用する出力信号に制御出力信号 “Out” と、通常は使用しない

デバック情報 “Debug” があります。

[説明]

・制御出力信号 “Out” (データ型 “double”)

各種制御の出力(結果)信号です。

・デバック情報 “Debug” (データ型 “double”)

デバック情報は弊社内調整用の信号です。内容は公開していません。“Terminator”ブロックを接続し、

警告が発生しないようにしてください。

3)入出力信号は同じデータ型を持ち、連結、連続した配列信号になっていることが多く、各ブロックをライン

で接続するときには、配列の信号数(要素数)は必ず一致する必要があります。一致しなければシミュレ

ーションやビルド時にエラーが発生します。(入力信号 “In[0..7]” の場合では、要素数は 8 となります。)

4)コントロールブロックでは、フィルタ時定数などを入力するものがあります。

高速化の観点から内部演算に除算を使用せず、時間などの場合はその逆数を入力(例:フィルタゲイン)

して、乗算を行っています。

直接、逆数を入力する方法、例えば時間「0.005」秒の場合に逆数の「200」を入力しても構いませんが、

後述の図のように、「1/0.005」と入力した方がモデルの可読性が高くなりますし、MATLAB/Simulink 内部

にて変換した値(この場合「200」)になり、演算速度も変わりませんので、こちらを推奨します。

なお、TDdsPMonitor からモニタすると、逆数に変換した値をモニタすることになります。

Page 20: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

20

記号QG18656

20/59 番 号 ページ

4.2 コントロールブロックの説明

(1) コントロールブロック一覧

ブロック名 機能

ASR2 自動速度調整(Type2)ブロックです。速度偏差によって比例ゲインが可変となるよう機能拡

張した速度制御用ブロックになります。

EARC 簡易ARC(ARC:変化率制限)ブロックです。指令値に到達するまでの加減速時間を設定

し、急峻な指令が入力された場合に出力を緩和させることができます。

FCAN フレキシブル側キャンセレーションブロックです。モータのトルク指令、実際のモータ回転

速度と、負荷側の回転速度から、負荷側のイナーシャ係数Jlnやダンピング係数 Dln、ねじ

り軸の各種設定値を考慮し、求めた値との差を 小限にするよう制御します。

FFWD フィードフォワードブロックです。モータ回転速度指令値に対して実際の回転速度の遅れ

(差)を、イナーシャ係数 Jn やダンピング係数 Dn を考慮し補償します。

LAG1 一次遅れフィルタブロックです。立上りまでの遅れゲイン Kf(=1/遅れ時間 Tf)を設定しま

す。

MCAN モータ側キャンセレーションブロックです。モータのトルク指令と、実際のモータ回転速度

からイナーシャ係数 Jn やダンピング係数 Dn を考慮し、求めた値との差を 小限にするよ

う制御します。

PCTQ パワコン係数(トルク発生係数の逆数)ブロックです。トルク指令と実際のモータ回転速度

を入力することで、基底回転速度以上の回転速度で電力一定となるように変換したトルク

指令を出力します。

PI3A PI アンプ(PI Amp Type3:基本特性)ブロックです。比例ゲインKpと積分出力制限を持った

積分ゲイン Ki(=1/時定数 Ti)を自由に設定できます。設定によっては比例制御のみにす

ることが可能です。

PIDA PIDアンプブロックです。比例、積分、微分制御機構を持ちます。設定によっては比例制

御のみにすること、微分入力を別信号にすることが可能です。

(2) コントロールブロック説明

次ページより、各コントロールブロックの説明を行います。

説明に記載している項目の意味は以下の通りです。

項目 意味

種類 Simulink 上のブロック種類

名称 Simulink Library Browse の登録名称(例:LAG1)と説明名称(例:一次遅れフィルタブロック)

ブロック表記 Simulink 上のブロック表記

実行(演算)時間 ブロックを測定した実行時間

機能 ブロックの機能内容

入出力説明 ブロックの入力信号とパラメータ、および出力信号の説明

使用例 ブロックの具体的な使用例と説明

Page 21: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

21

記号QG18656

21/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

ASR2

倍精度実数演算のみ:

およそ 3.16 [μs] 自動速度調整

(Type2)ブロック

機能 速度偏差によって比例ゲインが可変となるよう機能拡張した速度制御用ブロックです。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 リセットスイッチ ≠0(真)、=0(偽) 上図参照(注2)

[1] B2 int8 プリセットスイッチ ≠0(真)、=0(偽) 上図参照(注2)

In[0] E1 double 速度指令 Nref ―

[1] E2 double 速度フィードバック Nfb ―

[2] E3 double トルクフィードバック Tfb ―

Param[0] Kvs(=1/Vs) double 可変構造比例ゲイン

開始速度設定 Kvs:0.0~100.0(Vs:0.01[min-1]~)

基本デフォルト=0.5

(Vs=2.0)

[1] Vg double 可変構造比例ゲイン

小ゲイン 0.0~150.0[倍] 基本デフォルト=5.0

[2] Kp double 速度比例ゲイン 0.0~150.0[倍] 基本デフォルト=5.0

[3] Jf double フィードフォワード

イナーシャ設定値 0.0~64.0 (注1)

Page 22: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

22

記号QG18656

22/59 番 号 ページ

入力信号 変数名 型 内容 設定範囲/単位 備考

Param[4] Kf(=1/Tf) double

フィードフォワード

フィルタゲイン

(Tf:フィルタ時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=200.0

(Tf=0.005[s]) ) (注3)

[5] Hp double トルク出力上限値 ―

[6] Lp double トルク出力下限値 ―

[7] Jc double キャンセレーション

イナーシャ設定値 0.0~64.0 (注1)

[8] Ki(=1/Ti) double

キャンセレーション

フィルタゲイン

(フィルタ時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=100.0

(Tf=0.01[s]) (注3)

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double PID 出力 ―

Debug[0..26] ― double デバック情報 ―

(注1)イナーシャ設定値(Jf,Jc)=モータ軸換算のイナーシャ[kgm2]×定格速度[rad/s]/定格トルク[Nm]

(注2)リセットとプリセットスイッチが同時に真(≠0)の場合は、リセットスイッチの機能が有効になります。

(注3)Kf, Ki の逆数である Tf, Ti が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Kf, Ki の逆数である Tf, Ti が、サンプル時間の 2 倍より長い値になるように設定してください。

使用例

Page 23: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

23

記号QG18656

23/59 番 号 ページ

[特徴]

①入力される速度偏差量によって比例ゲインを変化させることができます。

②フィードフォワード制御とキャンセレーションの組み合わせによる速度制御が行えます。

③フィルタの出力を B1 や B2 で切換えることが可能です。

④出力に上下限リミッタを設定できます。

⑤Vg は Kp より大きくすることはできません。Vg はブロック内部で制限されます。

速度偏差(絶対値)

比例ゲイン

Vs

Vg

Kp

Page 24: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

24

記号QG18656

24/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

EARC

倍精度実数演算のみ:

およそ 1.72 [μs] 簡易ARC

ブロック

機能 指令値に到達するまでの加減速時間を設定し、急峻な指令が入力された場合に出力を

緩和させることができます。(ARC:変化率制限)

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 リセットスイッチ ≠0(真)、=0(偽) 真のとき、U1=E1

In[0] E1 double 入力指令 Ref ―

Param[0] Kt(=H1/T1) double 出力変化率 4000000.0~0.1

H1 は到達値

T1 は加減速時間[s]

想定範囲:

H1:40000.0~1.0

T1:0.01~10.0[s]

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double EARC 出力 ―

Debug[0..5] ― double デバック情報 ―

Page 25: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

25

記号QG18656

25/59 番 号 ページ

使用例

黒色:入力(E1)

赤色:出力(U1)

[特徴]

①入力1指令 Ref に入力すると、ARC 出力値は Kt の出力変化率に従って入力値まで徐々に加減速して

いきます。

1800

0

5s 5s 5s 5s

Page 26: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

26

記号QG18656

26/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

FCAN

倍精度実数演算のみ:

およそ 2.57 [μs] フレキシブル側 キャンセレーション

ブロック

機能 モータのトルク指令、実際のモータ回転速度と、負荷側の回転速度から、負荷側のイナ

ーシャ係数 Jln やダンピング係数 Dln、ねじり軸の各種設定値を考慮し、求めた値との差

を 小限にするよう制御します。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 停止スイッチ ≠0(真)、=0(偽) 真のとき、U1=U2=0

In[0] E1 double モータ角速度 Omegam ―

[1] E2 double 負荷角速度 Omegal ―

Param[0] Dvi(=1/Dv) double ねじり軸ダンピング

設定値

Dvi:7.692~0.0025

(Dv:0.13~400.0)

Dvi=1.00 (Dv=1.00)

(注1)

[1] Kc/Dv

(=1/(Dv/Kc)) double ねじり軸遅れ時定数

Kc/Dv:1000~1

(Dv/Kc:0.001~1) Kc/Dv=100.0

(Dv/Kc=0.01[s]) (注1)

[2] Jln double 負荷イナーシャ設定値 0.0~64.0 基本デフォルト=1.0(注2)

[3] Dln double 負荷ダンピング設定値 0.0~1.0 基本デフォルト=0.0(注3)

[4] Kf(=1/Tf) double フィルタゲイン

(Tf:フィルタ時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=100.0

(Tf=0.01[s]) ) (注4)

Page 27: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

27

記号QG18656

27/59 番 号 ページ

入力信号 変数名 型 内容 設定範囲/単位 備考

Param[5] Hfc double FCAN 出力上限値 ―

[6] Lfc double FCAN 出力下限値 ―

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double FCAN1(TL)出力 ―

[1] U2 double FCAN2 出力 ―

Debug[0..23] ― double デバック情報 ―

(注1)ねじり軸ダンピング設定値 Dv=ねじり軸のダンピング[Nm・s/rad]×定格速度[rad/s]/定格トルク[Nm]

ねじり軸バネ定数設定値 Kc=ねじり軸のバネ定数[Nm/rad]×定格速度[rad/s]/定格トルク[Nm]

(注2)負荷イナーシャ設定値(Jln)=負荷のイナーシャ[kgm2]×定格速度[rad/s]/定格トルク[Nm]

(注3)負荷ダンピング設定値(Dln)=負荷のダンピング[Nm・s/rad] ×定格速度[rad/s]/定格トルク[Nm]

(注4)Kf の逆数である Tf が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Kf の逆数である Tf が、サンプル時間の 2 倍より長い値になるように設定してください。

使用例

[特徴]

①E1 にモータ回転速度を入力します。

②E2 に負荷側の回転速度を入力します。

③ねじり軸で発生する負荷側のトルク変動に対応できます。

Page 28: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

28

記号QG18656

28/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

FFWD

倍精度実数演算のみ:

およそ 1.94 [μs] フィードフォワード

ブロック

機能 モータ回転速度指令値に対して実際の回転速度の遅れ(差)を、イナーシャ係数 Jn やダ

ンピング係数 Dn を考慮し補償します。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 停止スイッチ ≠0(真)、=0(偽) 真のとき、U1=0

[1] B2 int8 パワコン切替スイッチ ≠0(真)、=0(偽) 真のとき、U1 は ZN 倍

In[0] E1 double モータ速度指令 Wref ―

[1] E2 double パワコン係数 Zn 0.0~16.0

Param[0] Jn double イナーシャ設定値 0.0~64.0 基本デフォルト=1.0(注1)

[1] Dn double ダンピング設定値 0.0~1.0 基本デフォルト=0.0(注2)

[2] Kf(=1/Tf) double フィルタゲイン

(Tf:フィルタ時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=100.0

(Tf=0.01[s]) ) (注3)

[3] Hd double 出力上限値 ―

[4] Ld double 出力下限値 ―

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

Page 29: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

29

記号QG18656

29/59 番 号 ページ

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double FFWD 出力 ―

Debug[0..7] ― double デバック情報 ―

(注1)イナーシャ設定値(Jn)=モータ軸換算のイナーシャ[kgm2]×定格速度[rad/s]/定格トルク[Nm]

(注2)ダンピング設定値(Dn)=モータ軸換算のダンピング[Nm・s/rad] ×定格速度[rad/s]/定格トルク[Nm]

(注3)Kf の逆数である Tf が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Kf の逆数である Tf が、サンプル時間の 2 倍より長い値になるように設定してください。

使用例

[特徴]

①E1 に(一般的には)回転速度指令値を入力します。

②モータ特性値を予め設定し制御するので、指令値に対し追従性が良くなります。

Page 30: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

30

記号QG18656

30/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

LAG1

倍精度実数演算のみ:

およそ 1.44 [μs] 一次遅れフィルタ

ブロック

機能 立上りまでの遅れゲイン Kf(=1/遅れ時間 Tf)を設定します。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 リセットスイッチ ≠0(真)、=0(偽) 真のとき、U1=E1

In[0] E1 double 入力 ―

Param[0] Kf(=1/Tf) double 遅れゲイン

(Tf:遅れ時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=100.0

(Tf=0.01[s]) ) (注1)

[1] Kd double 比例係数 0.0~8.0 基本デフォルト=1.0

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double LAG1 出力 ―

Debug[0..8] ― double デバック情報 ―

(注1)Kf の逆数である Tf が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Kf の逆数である Tf が、サンプル時間の 2 倍より長い値になるように設定してください。

Page 31: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

31

記号QG18656

31/59 番 号 ページ

使用例

黒色:入力(E1)

赤色:出力(U1)

[特徴]

①入力値から一次遅れの値が出力されます。

63.2%

Tf=100ms Tf=100ms

Page 32: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

32

記号QG18656

32/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

MCAN

倍精度実数演算のみ:

およそ 2.73 [μs] モータ側

キャンセレーション

ブロック

機能 モータのトルク指令と、実際のモータ回転速度からイナーシャ係数 Jn やダンピング係数

Dn を考慮し、求めた値との差を 小限にするよう制御します。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 停止スイッチ ≠0(真)、=0(偽) 真のとき、U1=0

[1] B2 int8 パワコン切替スイッチ ≠0(真)、=0(偽) 真のとき、U1 は ZN 倍

In[0] E1 double トルク速度指令 Tref ―

[1] E2 double フィードフォワード Ffwd1 ―

[2] E3 double フィードフォワード Ffwd2 ―

[3] E4 double モータ角速度 Omegam ―

[4] E5 double FCAN 出力用

速度偏差 Dw ―

[5] E6 double パワコン係数 Zn 0.0~16.0

Param[0] Jn double イナーシャ設定値 0.0~64.0 基本デフォルト=1.0(注1)

[1] Dn double ダンピング設定値 0.0~1.0 基本デフォルト=0.0(注2)

Param[2] Kf(=1/Tf) double フィルタゲイン

(Tf:フィルタ時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=100.0

(Tf=0.01[s]) ) (注3)

Page 33: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

33

記号QG18656

33/59 番 号 ページ

入力信号 変数名 型 内容 設定範囲/単位 備考

Param[3] Hmc double 出力上限値 ―

[4] Lmc double 出力下限値 ―

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double MCAN 出力1 ―

[1] U2 double MCAN 出力2 ―

Debug[0..23] ― double デバック情報 ―

(注1)イナーシャ設定値(Jn)=モータ軸換算のイナーシャ[kgm2]×定格速度[rad/s]/定格トルク[Nm]

(注2)ダンピング設定値(Dn)=モータ軸換算のダンピング[Nm・s/rad] ×定格速度[rad/s]/定格トルク[Nm]

(注3)Kf の逆数である Tf が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Kf の逆数である Tf が、サンプル時間の 2 倍より長い値になるように設定してください。

使用例

[特徴]

①E1 にトルク指令を入力します。

②E2、E3 にフィードフォーワード結果を入力します。

③E4 にモータ回転速度を入力します。

④モータの負荷トルクを推定し、それをトルク指令(E1)に付加することで急峻な負荷トルク変動に対応でき

ます。

Page 34: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

34

記号QG18656

34/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

PCTQ

倍精度実数演算のみ:

およそ 1.82 [μs] パワコン係数

(トルク発生係数の

逆数)ブロック

機能 トルク指令と実際のモータ回転速度を入力することで、基底回転速度以上の回転速度

で電力一定となるように変換したトルク指令を出力します。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 (予備) ― 現在、使用していません

In[0] E1 double 入力 Wm ―

Param[0] Wr double 定格(基底)速度 100.0~40000.0

[1] Wri(=1/Wr) double 定格(基底)速度の逆数 0.01~0.000025必ず“Wr”の逆数としてく

ださい

[2] Znt

(=1/Ktn) double

ゲイン (トルク発生係数の逆数)

0.0~16.0 基本デフォルト=1.0

[3] Kf(=1/Tf) double 遅れゲイン

(Tf:遅れ時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=100.0

(Tf=0.01[s]) ) (注1)

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double PCTQ 出力 ―

Debug[0..11] ― double デバック情報 ―

Page 35: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

35

記号QG18656

35/59 番 号 ページ

(注1)Kf の逆数である Tf が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Kf の逆数である Tf が、サンプル時間の 2 倍より長い値になるように設定してください。

使用例

黒色:入力(E1)

赤色:出力(U1)

[特徴]

①モータ回転速度が入力されるとトルクが算出されます。 ②上図例は、回転速度が減速しているためWrまでは式に沿ってトルクが変化していきます。

③Wr以下となるとトルクは E1 と一致します。

Wr:25%(5000)

Tq

Wm:モータ回転速度

Tq

Page 36: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

36

記号QG18656

36/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

PI3A

倍精度実数演算のみ:

およそ 1.77 [μs] PI アンプ

(PI Amp Type3:

基本特性)ブロック

機能 比例ゲイン Kp と積分出力制限を持った積分ゲイン Ki(=1/時定数 Ti)を自由に設定で

きます。設定によっては比例制御のみにすることが可能です。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 ホールドスイッチ ≠0(真)、=0(偽) 真のとき、U1 を保持

[1] B2 int8 停止スイッチ ≠0(真)、=0(偽) 真のとき、U1=0

[2] B3 int8 積分なしスイッチ ≠0(真)、=0(偽) 真のとき、U1=(E1-E2)×Kp

In[0] E1 double 速度指令 Nref ―

[1] E2 double 実速度 Nfb ―

Param[0] Kp double 比例ゲイン 0.0~150.0 基本デフォルト=5.0

[1] Ki(=1/Ti) double 積分ゲイン

(Ti:積分時定数) Ki:1000.0~10.0(Ti:0.001~0.1[s])

基本デフォルト=20.0

(Ti=0.05[s]) ) (注1)

[2] Hpi double 比例積分出力上限値 ―

[3] Lpi double 比例積分出力下限値 ―

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

Page 37: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

37

記号QG18656

37/59 番 号 ページ

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double 比例積分出力 ―

Debug[0..15] ― double デバック情報 ―

(注1)Ki の逆数である Ti が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Ki の逆数である Ti が、サンプル時間の 2 倍より長い値になるように設定してください。

使用例

黒色:入力(E1)

赤色:出力(U1)

[特徴]

①E1(速度指令)対して、E2(実速度)が追従するように比例積分(PI)制御を行います。

20000

0

-20000

Page 38: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

38

記号QG18656

38/59 番 号 ページ

種類 名称 ブロック表記 実行(演算)時間

カスタム

(S-Function)

PIDA

倍精度実数演算のみ:

およそ 2.42 [μs] PIDアンプ

ブロック

機能 比例、積分、微分制御機構を持ちます。設定によっては比例制御のみにすること、微分

入力を別信号にすることが可能です。

入出力説明

入力信号 変数名 型 内容 設定範囲/単位 備考

Sw[0] B1 int8 ホールドスイッチ ≠0(真)、=0(偽) 真のとき、U1 を保持

[1] B2 int8 停止スイッチ ≠0(真)、=0(偽) 真のとき、U1=0

[2] B3 int8 積分なしスイッチ ≠0(真)、=0(偽) 真のとき、U1=(E1-E2)×Kp

[3] B4 int8 微分入力スイッチ ≠0(真)、=0(偽) 真のとき、微分入力が E3

In[0] E1 double 速度指令 Nref ―

[1] E2 double 実速度 Nfb ―

[2] E3 double 微分入力 Nd ―

Param[0] Kp double 比例ゲイン 0.0~150.0 基本デフォルト=5.0

[1] Ki(=1/Ti) double 積分ゲイン

(Ti:積分時定数) Ki:1000.0~10.0(Ti:0.001~0.1[s])

基本デフォルト=20.0

(Ti=0.05[s]) ) (注1)

[2] Kd double 微分ゲイン 0.0~10.0 基本デフォルト=1.0

[3] Kf(=1/Tf) double 微分フィルタゲイン

(Tf:微分時定数)

Kf:1000.0~1.0

(Tf:0.001~1[s])

基本デフォルト=100.0

(Tf=0.01[s]) ) (注1)

Page 39: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

39

記号QG18656

39/59 番 号 ページ

入力信号 変数名 型 内容 設定範囲/単位 備考

Param[4] Hpid double PID 出力上限値 ―

[5] Lpid double PID 出力下限値 ―

SimTs[0] SimTs uint16 シミュレーション用

サンプリング時間 0~65535[μs]

実行環境時は「=0」とし

てください

出力信号 変数名 型 内容 設定範囲/単位 備考

Out[0] U1 double PID 出力 ―

Debug[0..23] ― double デバック情報 ―

(注1)Ki, Kf の逆数である Ti, Tf が、実行(演算)周期の 2 倍より短い値を設定した場合、正しい演算結果に

なりません。Ki, Kf の逆数である Ti, Tf が、サンプル時間の 2 倍より長い値になるように設定してください。

使用例

[特徴]

①E1(速度指令)対して、E2(実速度)が追従するように比例積分微分(PID)制御を行います。

②E3 に別途微分入力値を入力します。B4≠0 のとき微分制御に使用されます。

Page 40: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

40

記号QG18656

40/59 番 号 ページ

第5章 DPRAM データ転送

ここでは、μGPCdsP の GPC と DSP 機能のデータ転送領域である DP(デュアル・ポート)RAM を使用して、

互いのデータを転送し合う方法について例を基にして説明します。使用できるデータ型は 16 ビット整数(符号

付きか符号なしのいずれか)か、単精度実数(=単精度(32 ビット)浮動小数点)が使用できます。

この DPRAM には、システム情報のデータ転送に使用していますが、一部のシステム設定領域やユーザ専

用領域は使用することができます。なお、指定されたアドレス領域以外をアクセスした場合、μGPCdsP の動作

は保障されませんので、必ず指定されたアドレス領域内をアクセスし、特に書込みについては注意してください。

アドレス領域の詳細一覧は付録2を参照してください。

(注)支援ツール TDdsPMonitor、プログラミングツール TDFlowEditor の詳細は、「はじめに」に記載した

別紙を参照してください。

5.1 GPC 機能モデル例

ここでは、前述2.5章にて説明した TDFlowEditor のプロジェクトを基に説明します。

(1)TDFlowEditor を起動し、ラダープログラムの回路を開き、下図のラダー回路を追加します。

追加後、“書込終了”をクリックして回路を確定します。

・送信データ(DSP へ送信) ・・・グローバルレジスタ:g00000 から DPRAM 領域レジスタ:w00000 へ

8ワード(16 ビット整数)転送

・受信データ(DSP から受信)・・・DPRAM 領域レジスタ:w00110 からグローバルレジスタ:g000110 へ

8ワード(16 ビット整数)転送

(2)メニューより、オンライン(O) => ダウンロード(D) にて、μGPCdsP の高速 CPU/DSP モジュール

“SHPC-115-Z” にプロジェクトをダウンロードします。

Page 41: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

41

記号QG18656

41/59 番 号 ページ

5.2 DSP 機能モデル例

モデルに下図の回路①から④を作成します。作成後はモデルのビルドと、μGPCdsP へのダウンロードをし

てください。

回路①(符号付き 16 ビット整数(g00000~3)を GPC→DSP へ転送)のプロパティ

ブロック名:Memory Copy オブジェクト名:mem_In_000_INT16

“ソース” タブ “Destination” タブ

設定項目 設定値 設定項目 設定値

Copy from Specified address Copy to Output port

Specify address source ダイアログより指定 データタイプ Inherit from source

Address(注3) hex2dec(“0xB000 0000”) サンプル時間 -1

データタイプ int16

Data length(注1) 8 (byte)

ブロック名:Demux(注4) オブジェクト名:Demux1(非表示)

設定項目 設定値

出力数 4

ブロック名:Gain(注4) オブジェクト名:Gain1~4(非表示)

“メイン” タブ “Signal Attributes” タブ

設定項目 設定値 設定項目 設定値

ゲイン 1 出力データ型 int16

サンプル時間 -1

ブロック名:Terminator オブジェクト名:Terminator_000~003

ライン 信号名:g00000~003(注2)

“Real-Time Workshop” タブ

設定項目 設定値

RTW ストレージクラス Exported Global

Page 42: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

42

記号QG18656

42/59 番 号 ページ

回路②(単精度実数(gr0004 or gr0006)を GPC→DSP へ転送)のプロパティ

ブロック名:Memory Copy オブジェクト名:mem_In_004_REAL32

“ソース” タブ “Destination” タブ

設定項目 設定値 設定項目 設定値

Copy from Specified address Copy to Output port

Specify address source ダイアログより指定 データタイプ Inherit from source

Address(注3) hex2dec(“0xB000 00008”) サンプル時間 -1

データタイプ single

Data length(注1) 8 (byte)

ブロック名:Demux(注4) オブジェクト名:Demux2(非表示)

設定項目 設定値

出力数 2

ブロック名:Gain(注4) オブジェクト名:Gain5,Gain 6(非表示)

“メイン” タブ “Signal Attributes” タブ

設定項目 設定値 設定項目 設定値

ゲイン 1 出力データ型 single

サンプル時間 -1

ブロック名:Terminator オブジェクト名:Terminator_000R~001R

ライン 信号名:gr0004,gr0006(注2)

“Real-Time Workshop” タブ

設定項目 設定値

RTW ストレージクラス Exported Global

回路③(符号付き 16 ビット整数(Const_110~113)を DSP→GPC へ転送)のプロパティ

ブロック名:Constant オブジェクト名:Const_110~113

“メイン” タブ “Signal Attributes” タブ

設定項目 設定値 設定項目 設定値

出力値 1 or 2 or 3 -1 出力データ型 int16

サンプル時間 -1

ブロック名:Vector Concatenate(注5) オブジェクト名:Vector Concatenate1(非表示)

設定項目 設定値

入力数 4

モード 多次元配列

連結の次元 1

Page 43: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

43

記号QG18656

43/59 番 号 ページ

ブロック名:Memory Copy オブジェクト名:mem_Out_110_INT16

“ソース” タブ “Destination” タブ

設定項目 設定値 設定項目 設定値

Copy from Input port Copy to Specified address

データタイプ Inherit from Input port Specify address source ダイアログより指定

Data length(注1) 8 (byte) Address(注3) hex2dec(“0xB000 00220”)

データタイプ int16

サンプル時間 -1

回路④(単精度実数(Const_114R or Const_116R)を DSP→GPC へ転送)のプロパティ

ブロック名:Constant オブジェクト名:Const_114R or Const_116R

“メイン” タブ “Signal Attributes” タブ

設定項目 設定値 設定項目 設定値

出力値 0.1234 or -5.6789 出力データ型 single

サンプル時間 -1

ブロック名:Vector Concatenate(注5) オブジェクト名:Vector Concatenate2(非表示)

設定項目 設定値

入力数 2

モード 多次元配列

連結の次元 1

ブロック名:Memory Copy オブジェクト名:mem_Out_114_REAL32

“ソース” タブ “Destination” タブ

設定項目 設定値 設定項目 設定値

Copy from Input port Copy to Specified address

データタイプ Inherit from Input port Specify address source ダイアログより指定

Data length(注1) 8 (byte) Address(注3) hex2dec(“0xB000 00228”)

データタイプ single

サンプル時間 -1

(注1)Memory Copy ブロック の “Data length” では、バイト(byte=8 ビット)単位で設定します。

4データの 16 ビット整数を転送する場合は、8(=4×16/8)バイトになります。

2データの単精度実数を転送する場合は、8(=2×32/8)バイトになります。

(注2)信号名については、付録1を参照してください。

(注3)アドレス領域の詳細一覧は付録2を参照してください。

(注4)DPRAM より配列データを転送する場合、必ず同じバイト数の型のデータを転送してください。

また個々のデータに分割するときは、“Demux” ブロックで分割後、必ず “Gain” ブロックか

“Data Type Conversion“ ブロックを使用し、転送元と同じ型に変換(キャスト)してください。

(注5)Memory Copy ブロックなどに配列データを転送する場合、“Vector Concatenate” ブロックを使用して

ください。各設定は前述の表を参考にしてください。

Page 44: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

44

記号QG18656

44/59 番 号 ページ

5.3 GPC/DSP 転送データ確認

回路①と回路②の内容である GPC から DSP 機能への転送データを確認します。

(1)プログラミングツール TDFlowEditor を起動し、レジスタ表示 を選択します。レジスタ表示画面 の

“g00000”~“g00003”(符号付き 16 ビット整数)と“gr0004”と“gr0006”(単精度実数)に確認用のデータ

を入力します。

操作についての詳細は、付録1を参照してください。

(2)転送データ入力後、TDFlowEditor にて入力した値を支援ツール TDdsPMonitor の数値モニタで表示、

確認します。

TDdsPMonitor の数値モニタ定義にて、符号付き 16bit 整数の信号“g00000” ~“g00003”、単精度実数

の信号 “gr0004”と“gr0006” の定義を行った後、同“数値モニタ”表示されます。

詳細は、支援ツール TDdsPMonitor の数値書込定義、数値書込 を参照してください。

5.4 DSP/GPC 転送データ確認

回路③と回路④の内容である DSP から GPC 機能への転送データを確認します。

(1) プログラミングツール TDFlowEditor を起動し、レジスタ表示 を選択します。レジスタ表示画面 の

“g00110” ~“g00113”(符号付き 16 ビット整数)と“gr0114”と“gr0116”(単精度実数)に確認用のデータ

を入力します。DSP から GPC への転送データが表示されます。

操作についての詳細は、付録1を参照してください。

(注)モデル内の Conatant ブロックの値を変更することができます。

詳細は、支援ツール TDdsPMonitor の 数値書込定義、数値書込 を参照してください。

Page 45: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

45

記号QG18656

45/59 番 号 ページ

第6章 付 録

6.1 付録1(デバック方法)

ここでは、支援ツール TDdsPMonitor や、プログラミングツール TDFlowEditor を使用したデバック方法につい

ての概略を説明します。

以下に示すとおり、モデルの信号の確認、設定値の一時的な変更などが可能です。

(注)支援ツール TDdsPMonitor、プログラミングツール TDFlowEditor の詳細は、「はじめに」に記載した

別紙を参照してください。

6.1.1 TDdsPMonitor での数値モニタ、書込

(1)モデルの信号(Signal)に名前を付け、TDdsPMonitor の数値モニタ、トレンドグラフにてモデルの信号を

モニタできます。

モニタしたい信号を右クリックし、信号プロパティ を選択してください。信号プロパティ の信号名を

入力(図例では“ASR_TRQ”)し、Real-Time Workshop タブの RTW ストレージクラス を“Exported

Global”に設定してください。

詳細は、別紙「QG18579 TDdsPMonitor ユーティリティ・マニュアル」の「4.変数の設定方法」を参照して

ください。

その後、モデルのビルド、μGPCdsP へのダウンロードを行ってください。

(2)モデルの信号名を TDdsPMonitor の変数名として、数値モニタ、トレンド画面にて表示できます。

詳細は、別紙「QG18578 TDdsPMonitor 操作編 取扱説明書」の「4.2 数値モニタ」、「4.4 トレンド

グラフ」を参照してください。

Page 46: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

46

記号QG18656

46/59 番 号 ページ

・数値モニタ画面例

・数値モニタ定義画面例

・トレンドグラフ画面例

・トレンドグラフ定義画面例

Page 47: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

47

記号QG18656

47/59 番 号 ページ

(3) TDdsPMonitor の数値書込画面にて、モデルの設定値へ書込み(注1)ができます。

特にモデルへの設定追加は必要なく、TDdsPMonitor の数値書込画面にて行います。

詳細は、別紙「QG18578 TDdsPMonitor 操作編 取扱説明書」の「4.3 数値書込」を参照してください。

・数値書込画面例

・数値書込定義画面例

(注1)一部のブロックの設定値のみ対象になります。例えば、Constant ブロックの“定数値”(Value)、

Gain ブロックの“ゲイン”(Gain)などがあります。

(自動的に “[Constant 名]_Value”、“[Gain 名]_Gain” などの変数名になります)

数値書込み後にμGPCdsP の電源を再投入すると、モデルにて設定した数値に戻ります。

Page 48: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

48

記号QG18656

48/59 番 号 ページ

6.1.2 TDFlowEditor のレジスタ確認例

プログラミングツール TDFlowEditor にて、μGPCdsP 内のレジスタを表示できます。また、レジスタの内容を

変更することもできます。

(注)TDFlowEditor の詳細は、別紙「QG18291 μGPCsH シリーズ ユーザーズ マニュアル(オペレーション

編)」を参照してください。

(1) レジスタの表示

TDFlowEditor の左部にある回路(下図例では回路名:NONAME)を右クリックし、“レジスタ表示”を選択

します。

“レジスタ表示” 画面の左上から左下へ入力します。(下図例では “g00000”、“gr0000” と入力)

レジスタの内容が表示されます。

(2) レジスタの変更

続けて画面右上の“データ変更”のアイコンボタンをクリックします。レジスタが変更できる状態になり

ます。

Page 49: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

49

記号QG18656

49/59 番 号 ページ

レジスタの内容を変更できます。

(下図例では “g00000”~“g00003”、“gr0004”、“gr0006” を変更)

6.2 付録2(DPRAM 領域)

μGPCdsP の GPC と DSP 機能のデータ転送領域である DP(デュアル・ポート)RAM のアドレス領域につい

て説明します。ユーザが使用できる領域は以下のとおりです。

DSP 側

アドレス

DSP 側

アクセス

データ長(注) GPC 側

レジスタ(注) 説明

バイト数 ワード数

0xB000 0000 Read/Write 1792 896 w□0000 通信用メモリ ユーザ使用領域

(~0xB000 06FF) (~w□037F) 16 ビット整数 896 個、単精度実数 448 個

0xB000 080C Read/Write 2 1 w□0406 高速通信パラメータ DSP 割込み

0xB000 0810 Read Only 2 1 w□0408 DSP サイクルタイム

(注)GPC側レジスタについて、“□”はベース位置番号です。CPU位置が「0」、IO位置が「1~8」となります。

また、wレジスタはワード単位のアクセスになります。

ワードは 16 ビット整数のことを指します。1ワード(16 ビット整数)あたり2バイトになります。

(1バイト(byte)あたり8ビットになります)

Page 50: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

50

記号QG18656

50/59 番 号 ページ

6.3 付録3(サンプル時間)

ここでは、モデルのサンプル時間について、設定方法の一例を説明します。

6.3.1 定期スキャン時の一例

定期スキャン処理時の設定方法を説明します。

ここでは、「100μs」のサンプル時間を設定します。

(1)ツ-ル => Real-Time Workshop => オプション もしくは、シミュレーション => コンフィグレーション

パラメータ より、“コンフィグレーション パラメータ” を選択します。

ソルバ 内の “固定ステップ(基本サンプル時間)” にサンプル時間の数値を入力してください。

ここでは、直接数値を入力するのではなく、MATLAB の Workspace 領域の変数 “SampTime”(=100μs)

を入力しています。

(2)Workspace 領域の変数の設定は次のようにします。

ファイル => モデルプロパティ を選択し、コールバック タブを選択します。

Page 51: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

51

記号QG18656

51/59 番 号 ページ

モデルのコールバック の InitFcn を選択後、右側にある モデル初期化関数 の箇所に、

“SamplingInterval=0.00001” と、“SampTime=0.000100” を入力します。

(3)モデル内の Conatant ブロック以外のブロックのプロパティを、サンプル時間 の設定に “-1”(継承)を入

力してください。(Conatant ブロックの方は“inf”(一定)を入力してください)

(4)ソースのブロックの サンプル時間 に “-1” を入力すると、ビルド時 MATLAB コマンドウィンドウにて、

警告が発生します。

この警告を表示しないようにするためには、前述(1)で説明した コンフィグレーション パラメータ にて、

診断-サンプル時間 内の “-1 のサンプル時間が指定されたソースブロック” を「警告」から「なし」に

変更、選択してください。

6.3.2 割込み処理時の一例

割込み処理時の設定方法を説明します。

ここでは、高速通信時の DSP への通信割込み(外部割込み)を使用していることが前提となります。

(1)ツ-ル => Real-Time Workshop => オプション もしくは、シミュレーション => コンフィグレーション

パラメータ より、“コンフィグレーション パラメータ” を選択します。

Page 52: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

52

記号QG18656

52/59 番 号 ページ

ソルバ 内の “固定ステップ(基本サンプル時間)”にサンプル時間の数値を入力してください。

ここでは、直接数値を入力するのではなく、MATLAB の Workspace 領域の変数 “SamplingInterval”を

入力しています。

割込み処理時の基本サンプル時間の設定は、実割込み時間より短い時間を入力する必要があります。

このモデルでは、実割込み時間が 83μs 程度と想定していますので、基本サンプル時間

(“SamplingInterval”)は 10μs としています。

(2)次にモデルについて説明します。

モデルに Simulink Library Browser の Link for Code Composer Studio(tm) => C6000 DSP Chip

Support から “Hardware Interrupt” ブロックと “Memory Copy” ブロックを追加します。

また、Ports & Subsystems の Function-Call Subsystem ブロックと、Sources の “Constant” ブロックを

追加します。

“Constant”、 “Memory Copy”、“Hardware Interrupt” ブロックと、“Function-Call Subsystem”内の

“function” ブロックのプロパティを次のように変更し、ラインで各ブロックを上図のように接続して

ください。(図のダミー回路は必要ありません)

ダミー回路

Page 53: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

53

記号QG18656

53/59 番 号 ページ

ブロック名:Constant オブジェクト名:IntEnable

“メイン” タブ “Signal Attributes” タブ

設定項目 設定値 設定項目 設定値

出力値 3 (注1) 出力データ型 int16

サンプル時間 -1

ブロック名:Memory Copy オブジェクト名:mem_snd406

“ソース” タブ “Destination” タブ

設定項目 設定値 設定項目 設定値

Copy from Input port Copy to Specified address

データタイプ Inherit from Input port Specify address source ダイアログより指定

Data length 2 (byte) Address (注1) hex2dec(“0xB000 0080C”)

データタイプ int16

サンプル時間 -1

ブロック名:Hardware Interrupt(注2) オブジェクト名:Hw_Int

“Parameters” タブ

設定項目 設定値

Interrupt number(s) [13]

Simulink task priority(s) [0]

Preemption flag(s) [1]

ブロック名:Trigger(注3) オブジェクト名:function

“パラメータ” タブ

設定項目 設定値

トリガタイプ fuction-call

イネーブル時の状態 保持

サンプル時間のタイプ トリガ

(注1)高速通信の受信割込みモードにするには、アドレス “0xB000 0080C” を ”= 3“ とする必要が

あります。

(注2)“Hardware Interrupt” ブロックは、Interrupt number(s) などの設定を合わせる必要あります。

(注3)“Trigger” ブロックは、トリガタイプなどの設定を合わせる必要あります。

6.3.3 サンプル時間の計測

前述付録2にあるとおり、実際の DSP サイクルタイム(=サンプル時間)を確認することができます。

必ずモデル実行時には確認し、想定内のサンプル時間であること、また余裕時間もあることを確認してくだ

さい。

詳細は、別紙「QG18579 TDdsPMonitor ユーティリティ・マニュアル」を参照してください。

なお、操作については前述付録1もあわせて参照してください。

Page 54: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

http://www.toyodenki.co.jp/

http://www.toyodenki.co.jp/ 本 社 東京都中央区八重洲一丁目 4-16(東京建物八重洲ビル) 〒103-0028 HAED OFFCE: Tokyo Tatemoto Yaesu Bldg, 1-4-16 Yaesu, Chuuo-ku,

産業事業部 TEL.03(5202)8132~6 FAX.03(5202)8150 Tokyo, Japan ZIP CODE 103-0028 TEL: +81-3-5202-8132 - 6

FAX: +81-3-5202-8150

サービス網

東洋産業株式会社 http://www.toyosangyou.co.jp/

本 社 東京都千代田区東神田1丁目10-6(幸保第二ビル) 〒101-0031

TEL.03(3862)9371 FAX.03(3866)6383

本資料記載内容は予告なく変更することがあります。ご了承ください。

Page 55: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

54

記号QG18656

54/59 番 号 ページ

6.4 付録3(参考ブロック)

ここでは、デバック等で使用できる Simulink Library Browser の標準ブロックセット(ツールボックス)、あるい

は、標準ブロックセットにて作成したサブシステムブロックを紹介します。

Page 56: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

55

記号QG18656

55/59 番 号 ページ

種類 名称 ブロック表記 実行時間

標準ブロック Lookup Table

(1次元関数近似)

倍精度実数:

下記設定時

およそ 0.87 [μs]

機能 指定されたテーブルを使って入力値の1-D線形補間を実行します。(パターン回路)

●Lookup Table ブロック

パターンテーブル例

●プロパティ例

ブロック名:Lookup Table オブジェクト名:Lookup Table

“メイン” タブ

設定項目 設定値

入力値のベクトル [-5 -4 -3 -2 -1 0 1 2 3 4 5]

テーブルデータ [-2.5 -2 -1.5 -1 -0.5 0 1 2 3 4 5]

Lookup 手法 補間- 後の値を使用

サンプル時間 -1

使用例

1次元関数近似 の “Lookup Table” ブロックは、プロパティ “入力値のベクトル” に入力値を設定し、同

数の設定をプロパティ“テーブルデータ”に設定することで、入力値を補間し、1次元関数の近似を実行しま

す。

(注)Simulink Library Browser の Simulink 内 Lookup Tables の “Lookup Table” ブロックを使用

します。

Lookup 手法: 後の値を使用

Lookup 手法: 後の値を使用

5

-5

-2.5

5

入力値のベクトル

テーブルデータ

Page 57: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

56

記号QG18656

56/59 番 号 ページ

種類 名称 ブロック表記 実行時間

標準ブロック MinMax

(優先回路)

倍精度実数:

2入力:およそ 0.24 [μs]

3入力:およそ 0.31 [μs]

機能 複数の入力値を比較し、 小入力値または 大入力値を出力します。

比較方式(関数)は、 小入力値(Min)、 大入力値(Max)のいずれかを選択します。

●MinMax ブロック例

●プロパティ例

ブロック名:MinMax オブジェクト名:Min or Max

“メイン” タブ

設定項目 設定値

関数 min or max

入力ポートの数 2 or 3

サンプル時間 -1

In1 > In2 ならば Out1 = In2

In1 ≦ In2 ならば Out1 = In1

In1 > In2

In1 > In3ならば Out1 = In1

In2 > In3

In2 ≧ In1ならば Out1 = In2

In3 ≧ In1

In3 ≧ In2ならば Out1 = In3

使用例

or

左図のように2入力にて、MinMax ブロックのプロパティ“関数”を“min”に設定した場合は、入力“In1”と固

定値“In2”の「5」が比較され、小さい方の数値が出力“Out1”に反映されます。その場合、固定値“In2”の「5」

を上限値とするリミッタになります。

右図のように3入力にて、MinMax ブロックのプロパティ“関数”を“max”に設定した場合は、大きい方の数

値が出力“Out1”に反映されます。その場合、固定値“In3”の「-5」を下限値とするリミッタになります。

(注)Simulink Library Browser の Simulink 内 Math Operations の “MinMax” ブロックを使用します。

Page 58: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

57

記号QG18656

57/59 番 号 ページ

種類 名称 ブロック表記例 実行時間

サブシステム Limiter

(制限回路)

倍精度実数:

およそ 0.31 [μs]

機能 入力値と上限値(Max)、あるいは下限値(Min)との比較を行い、出力します。

上限値や下限値を超えた数値は、それぞれの制限以内の数値となります。

●サブシステム内ブロック線図

MAX < In ならば Out = MAX

MIN ≦ In ≦ MAX ならば Out = In

MIN > In ならば Out = MIN

●プロパティ例

ブロック名:MinMax オブジェクト名:非表示 ブロック名:MinMax オブジェクト名:非表示

“メイン” タブ “メイン” タブ

設定項目 設定値 設定項目 設定値

関数 min 関数 max

入力ポートの数 2 入力ポートの数 2

サンプル時間 -1 サンプル時間 -1

使用例

サブシステム“Limiter”内の2つの MinMax ブロックのプロパティ“関数”を“min”、および“max”に設定しま

す。

入力“In”に対して、入力“MIN”の数値-500 を下限値とするリミッタに、入力“MAX”の数値 1000 を上限値

とするリミッタになり、出力“Out1” に反映されます。

(注)Simulink Library Browser の Simulink 内 Math Operations の “MinMax” ブロックを使用します

Page 59: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

58

記号QG18656

58/59 番 号 ページ

6.5 付録4(MATLAB/Simulink R2007b 不具合修正方法)

米国 The MathWorks 社にて、MATLAB R2007b 上の S-Function、S-Function Builder ブロックと、Link for

Code Composer Studio を使用した場合の不具合「バグレポート:491184」が報告されています。

ここでは、上記不具合の修正(回避)方法を説明します。

なお、修正(添付)ファイルとバグレポートは、以下の URL にあります。(英文)

→http://www.mathworks.com/support/bugreports/491184

(注1)上記 URL にアクセスするには「My MathWorks Account」のユーザ ID とパスワードが必要です。

お客様の MATLAB 管理者にお問い合わせください。

(注2)上記 URL のリンクが切れている場合は、別途 MathWorks 社に「バグレポート:491184」について

お問い合わせください。

修正方法は以下の通りです。

(1)上記URLの”Attachments”(添付ファイル)にある、”patch_installer.m” と ”patch_491184.zip”をダウンロード

します。

(2)MATLAB を閉じます。

(3)MATLAB を起動し、MATLAB カレントディレクトリをダウンロードしたファイルのフォルダに移動します。

あるいは、予め MATLAB カレントディレクトリにダウンロードしたファイルをコピーしてください。

(4)MATLAB コマンドウインドウ上で下記を実行します。

→ patch_installer('patch_491184.zip', 'install')

(5)”Installation successful!” と MATLAB コマンドウインドウ上に表示されたら完了です。

MATLAB を再起動してください。

Page 60: μGPCdsP series Simulink 東洋ブロックセット コントロール … ページ μGPCdsP series Simulink 東洋ブロックセット コントロール編 機能説明書 番号

http://www.toyodenki.co.jp/

http://www.toyodenki.co.jp/ 本 社 東京都中央区八重洲一丁目 4-16(東京建物八重洲ビル) 〒103-0028 HEAD OFFICE: Tokyo Tatemono Yaesu Bldg, 1-4-16 Yaesu, Chuoh-ku,

産業事業部 TEL.03(5202)8132~6 FAX.03(5202)8150 Tokyo, Japan ZIP CODE 103-0028 TEL: +81-3-5202-8132 - 6

FAX: +81-3-5202-8150

サービス網

東洋産業株式会社 http://www.toyosangyou.co.jp/

本 社 東京都千代田区東神田1丁目10-6(幸保第二ビル) 〒101-0031

TEL.03(3862)9371 FAX.03(3866)6383

本資料記載内容は予告なく変更することがあります。ご了承ください。