永久磁石同期モータの120度通電制御 ‐ 初期位置検...

67
アプリケーションノート R01AN4502JJ0100 Rev.1.00 Page 1 of 64 2018. 09. 19 永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編 要旨 本アプリケーションノートは RL78/G1F マイクロコントローラを使用し、永久磁石同期モータを 120 度通電 方式で駆動するサンプルプログラム及びモータ制御開発支援ツール「Renesas Motor Workbench」の使用方法に ついて説明することを目的としています。 サンプルプログラムはあくまで参考用途であり、弊社がこの動作を保証するものではありません。サンプル プログラムを使用する場合、適切な環境で十分な評価をした上でご使用ください。 動作確認デバイス サンプルプログラムの動作確認は以下のデバイスで行っております。 RL78/G1F(R5F11BLEAFB) 対象サンプルプログラム 本アプリケーションノートの対象サンプルプログラムを下記に示します。 RL78G1F_MRSSK_SPM_LESS_120_DIP_CSP_CA_V100 (IDE : CS+ for CA,CX) RL78G1F_MRSSK_SPM_LESS_120_DIP_CSP_CC_V100 (IDE : CS+ for CC) RL78G1F_MRSSK_SPM_LESS_120_DIP_E2S_CC_V100 (IDE : e 2 studio) 24V Motor Control Evaluation System & RL78/G1F CPU カード向け RL78/G1F 初期位置検出機能付センサレス 120 度通電制御サンプルプログラム 参考資料 RL78/G1F ユーザーズマニュアル ハードウェア編(R01UH0516JJ0110) ・永久磁石同期モータの 120 度通電制御 (アルゴリズム編) (R01AN2657JJ0120) Renesas Motor Workbench V.1.00 ユーザーズマニュアル (R21UZ0004JJ0100) Renesas Solution Starter Kit 24V Motor Control Evaluation System for RX23T (Motor RSSK) 取扱説明書 (R20UT3697JJ0100) RL78/G1F CPU カード 取扱説明書 (R12UZ0014JJ0100) R01AN4502JJ0100 Rev.1.00 2018. 09. 19

Upload: others

Post on 07-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

アプリケーションノート

R01AN4502JJ0100 Rev.1.00 Page 1 of 64

2018. 09. 19

永久磁石同期モータの 120 度通電制御

‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

要旨

本アプリケーションノートは RL78/G1F マイクロコントローラを使用し、永久磁石同期モータを 120 度通電

方式で駆動するサンプルプログラム及びモータ制御開発支援ツール「Renesas Motor Workbench」の使用方法に

ついて説明することを目的としています。

サンプルプログラムはあくまで参考用途であり、弊社がこの動作を保証するものではありません。サンプル

プログラムを使用する場合、適切な環境で十分な評価をした上でご使用ください。

動作確認デバイス

サンプルプログラムの動作確認は以下のデバイスで行っております。

RL78/G1F(R5F11BLEAFB)

対象サンプルプログラム

本アプリケーションノートの対象サンプルプログラムを下記に示します。

RL78G1F_MRSSK_SPM_LESS_120_DIP_CSP_CA_V100 (IDE : CS+ for CA,CX)

RL78G1F_MRSSK_SPM_LESS_120_DIP_CSP_CC_V100 (IDE : CS+ for CC)

RL78G1F_MRSSK_SPM_LESS_120_DIP_E2S_CC_V100 (IDE : e2studio)

24V Motor Control Evaluation System & RL78/G1F CPU カード向け

RL78/G1F 初期位置検出機能付センサレス 120 度通電制御サンプルプログラム

参考資料

・RL78/G1F ユーザーズマニュアル ハードウェア編(R01UH0516JJ0110)

・永久磁石同期モータの 120 度通電制御 (アルゴリズム編) (R01AN2657JJ0120)

・Renesas Motor Workbench V.1.00 ユーザーズマニュアル (R21UZ0004JJ0100)

・Renesas Solution Starter Kit 24V Motor Control Evaluation System for RX23T (Motor RSSK) 取扱説明書

(R20UT3697JJ0100)

・RL78/G1F CPU カード 取扱説明書 (R12UZ0014JJ0100)

R01AN4502JJ0100

Rev.1.00

2018. 09. 19

Page 2: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 2 of 64

2018. 09. 19

目次

1. 概説 ................................................................................................................................................... 3

2. システム概要 ..................................................................................................................................... 8

3. 制御プログラム説明 ........................................................................................................................ 15

4. モータ制御開発支援ツール「Renesas Motor Workbench」 .......................................................... 60

Page 3: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 3 of 64

2018. 09. 19

1. 概説

本アプリケーションノートでは、RL78/G1F マイクロコントローラを使用した永久磁石同期モータ(PMSM)

の 120 度通電制御サンプルプログラムの実装方法及びモータ制御開発支援ツール「Renesas Motor Workbench」

の使用方法について説明します。なお、このサンプルプログラムは「永久磁石同期モータの 120 度通電制御

(アルゴリズム編)」のアルゴリズムを使用しています。

1.1 開発環境

本アプリケーションノート対象サンプルプログラムの開発環境を表 1-1、表 1-2 に示します。

表 1-1 サンプルプログラムの開発環境(H/W)

マイコン 評価ボード モータ

RL78/G1F

(R5F11BLEAFB)

24V 系インバータボード注1

& RL78/G1F CPU カード注2

TSUKASA 注3

TG-55L

表 1-2 サンプルプログラムの開発環境(S/W)

CS+バージョン ツールチェイン

V4.01.00 CA78K0R V1.72

V6.01.00 CC-RL V1.06.00

e2studio バージョン ツールチェイン

6.3.0 CC-RL V1.06.00

ご購入、技術サポートにつきましては、弊社営業及び特約店にお問い合わせ下さい。

【注】1. 24V系インバータボード(RTK0EM0001B00012BJ)は、ルネサスエレクトロニクス株式会社の製品です。

2. RL78/G1F CPU カードは、以下の二種類を使用可能です。

RTK0ELML240C03000BJ:ルネサスエレクトロニクス株式会社製

T5103:株式会社デスクトップラボ (http://desktoplab.co.jp/)製

3.TG-55L は、ツカサ電工株式会社の製品です。

ツカサ電工株式会社 (http://www.tsukasa-d.co.jp/)

Page 4: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 4 of 64

2018. 09. 19

1.2 評価ボード修正方法

本アプリケーションノートのサンプルソフトウェアに対応するために、以下の修正を 24V 系インバータ

ボード、及び RL78/G1F CPU カードに行ってください。

(1)24V 系インバータボードの修正

(a) 3 シャントを 1 シャントに修正します。

① R72/R97 を取り外します。

② TH1/TH2/TH3 を接続します。

③ JP3 を 2-3 ピン間短絡とし、シャント電圧がボード上のオペアンプを経由せずにマイコンに入力

されるように設定します。

TH1

Q2

TH2

Q4

TH3

Q6

R50

R72 R97

図 1-1 3シャントから 1 シャントへの修正

①削除 ②接続 ③2-3短絡

Page 5: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 5 of 64

2018. 09. 19

(b)各相電圧検出部のフィルタ回路を修正します。

① R34/R61/R79 に 10kΩをマウントします。

② R67 に 510Ωをマウントします。

③ R42/R46/R49 の抵抗値を 470Ωから 1.5KΩに変更します。

④ C60 に 0.33μF をマウントします。

TB3 U

V

W

TB4

TB5

R34

R61

R79

10k/0.25W

10k/0.25W

10k/0.25W

AVCC

GND

R67

C60

R65

VN

VU

R35

10k/0.25W

R42

470/

0.1W

→1.

5K/0

.25W

0.3

3uF/16V

GND

C49

0.1u

F/5

0V

VU_AD

AVCC

VV

R62

10k/0.25W

R46

470/

0.1W

→1.

5K/0

.25W

GND

C51

0.1u

F/5

0V

VW_AD

AVCC

VW

R80

10k/0.25W

R49

470/

0.1W

→1.

5K/0

.25W

GND

C53

0.1u

F/5

0V

VW_AD

AVCC

510/

0.25

W

図 1-2 各相電圧検出部の修正

Page 6: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 6 of 64

2018. 09. 19

①マウント

②マウント

③変更 ④マウント

Page 7: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 7 of 64

2018. 09. 19

(2)RL78/G1F CPU カード(T5103)の修正

本修正は Renesas 製 CPU カード RTK0ELML240C03000BJ には不要です。

① C3/C5/C6/C7/C8/C13/C14/C18/C19/C22 を削除します。

② C4 1000pF を 0.1uF に変更します。

③ 下図の赤枠・赤線の回路を追加します。

図 1-3 RL78/G1F CPU カード(T5103)の修正

図 1-4 回路修正例

①削除

②③追加

①削除

Page 8: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 8 of 64

2018. 09. 19

2. システム概要

本システムの概要を以下に説明します。

2.1 ハードウェア構成

ハードウェア構成を次に示します。

RL78/G1F

A/Dコンバータ入力母線電圧

TRD出力

VDC

GND

電源回路

U端

W端

V端

HU

端子

HW

端子

HV

端子

GN

D端

Vcc端

VR1

SW1 SW2

スイッチ入力

モータ回転開始/停止

エラーリセット

LED出力

LED1 LED2

過電流検出入力

Up

Vp

Wp

Vn

Un

Wn

インバータ回路

OC

VuVvVw

EN

C_Z

端子

EN

C_A

端子

EN

C_B

端子

GN

D端

Vcc端

P24 / ANI4

P26 / ANI6LED3

P20 / ANI0

P03 / ANI16

P21 / ANI1

Vu

Vv

Vw

相電圧

Vu

Vv

Vw

P05

P06

P141

P140

P15 / TRDIOB0 (Up)

P13 / TRDIOA1 (Vp)

P12 / TRDIOB1 (Wp)

P14 / TRDIOD0 (Un)

P11 / TRDIOC1 (Vn)

P10 / TRDIOD1 (Wn)

P137 / INTP0

P04

コンパレータ入力

P03 / IVCMP11

P20 / IVCMP12

P21 / IVCMP13

Vn(中性点)

P02 / IVCMP10

P22 / PGAI Iu

LPFP62

P61

P60

Vu

Vv

Vw

相電圧

図 2-1 ハードウェア構成図

Page 9: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 9 of 64

2018. 09. 19

2.2 ハードウェア仕様

2.2.1 ユーザインタフェース

本システムのユーザインタフェース一覧を表 2-1 に示します。

表 2-1 ユーザインタフェース

項 目 インタフェース部品 機 能

回転速度 可変抵抗(VR1) 回転速度指令値入力(アナログ値)

START/STOP トグルスイッチ(SW1) モータ回転開始/停止指令

ERROR/RESET トグルスイッチ(SW2) エラー状態からの復帰指令

LED1 黄緑色 LED ・ モータ回転時:点灯

・ 停止時:消灯

LED2 黄緑色 LED ・ エラー検出時:点灯

・ 通常動作時:消灯

LED3 黄緑色 LED ・ コンパレータによるゼロクロス

判別時:点灯

・ A/D を使った判別時:消灯

RESET プッシュスイッチ(RESET1) システムリセット

本システムの RL78/G1F マイクロコントローラ端子のインタフェース一覧を表 2-2 に示します。

表 2-2 端子インタフェース

R5F11BLEAFB 端子名 機 能

P24 / ANI4 インバータ母線電圧測定

P26 / ANI6 回転速度指令値入力用(アナログ値)

P05 START/STOP トグルスイッチ

P06 ERROR RESET トグルスイッチ

P141 LED1 点灯/消灯制御

P140 LED2 点灯/消灯制御

P04 LED3 点灯/消灯制御

P03 / ANI16 / IVCMP11 U 相電圧測定(A/D) / U 相ゼロクロス比較(コンパレータ使用)注1

P20 / ANI0 / IVCMP12 V 相電圧測定(A/D) / V 相ゼロクロス比較(コンパレータ使用)注1

P21 / ANI1 / IVCMP13 W 相電圧測定(A/D) / W 相ゼロクロス比較(コンパレータ使用)注1

P02 / IVCMP10 仮想中点入力(コンパレータ使用)

P15 / TRDIOB0 ポート出力/PWM 出力(Up)

P13 / TRDIOA1 ポート出力/PWM 出力(Vp)

P12 / TRDIOB1 ポート出力/PWM 出力(Wp)

P14 / TRDIOD0 ポート出力/PWM 出力(Un)

P11 / TRDIOC1 ポート出力/PWM 出力(Vn)

P10 / TRDIOD1 ポート出力/PWM 出力(Wn)

P137 / INTP0 過電流検出時の PWM 緊急停止入力(外部検出回路使用時)注2

P22 / PGAI PGA+CMP0 による過電流検出入力と極性判定時電流測定(U 相電流値)注

【注】1. 低速時(2000[rpm]未満)は A/D コンバータを、高速時(2000[rpm]以上)はコンパレータを

使用します。

2. 過電流検出に外部検出回路を使用するか、PGA+CMP0 を使用するかはコンパイルオプションに

よって選択します。

Page 10: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 10 of 64

2018. 09. 19

2.2.2 周辺機能

本システムに使用する周辺機能一覧を表 2-3 に示します。

表 2-3 サンプルプログラム別周辺機能対応表

周辺機能 用途

10bit A/D コンバータ

回転速度指令値入力(ボード UI 時)

インバータ母線電圧測定

各 U/V/W 相電圧測定

シャント電流測定

タイマ・アレイ・ユニット(TAU)

CMP1 出力タイマウィンドウ

回転制御転極タイミング用ディレイタイマ

初期位置検出処理用ディレイタイマ

タイマ RD(TRD) 相補 PWM モード使用の PWM 出力

タイマ RX(TRX) 回転速度計測およびコンパレータ検出時間測定用

フリーランカウンタ

インターバルタイマ 1[ms]周期タイマ

コンパレータ CMP1 U/V/W 相のゼロクロス検出

相電圧基準値到達検出

コンパレータ CMP0 過電流検出注

プログラマブル・ゲイン・アンプ(PGA) 過電流検出注

外部割り込み(INTP0) 過電流検出注

【注】INTP0 と(PGA+CMP0)は、排他的に使用します。(コンパイルオプションで選択)

(1) 10bitA/D コンバータ

回転速度指令値入力、U 相電圧、V 相電圧、W 相電圧、及びインバータ母線電圧とシャント抵抗に流

れる電流値を「10bit A/D コンバータ」を使用して測定します。

A/D 変換はチャネル選択モードを「セレクトモード」に、変換動作モードを「ワンショット変換モード」

に設定します。(ソフトウェアトリガを使用)。

(2) タイマ・アレイ・ユニット(TAU)

a. CMP1 出力タイマウィンドウ

タイマ・アレイ・ユニットのチャネル 0 及びチャネル 2 を用いて PWM の ON タイミングに同期した

タイマウィンドウを構成し、CMP1 の出力にマスクを掛けます。詳細は 3.1.7 を参照して下さい。

b. 回転制御転極タイミング用ディレイタイマ

ゼロクロス検出からの転極のタイミングをπ/6 遅らせるためのディレイタイマとしてチャネル 3 を使用

します。

c. 初期位置検出処理用ディレイタイマ

チャンネル 3 をディレイタイマとして用い、コンパレータ検出時間測定処理のタイミングを作ります。

(3) タイマ RD(TRD)

相補 PWM モードを使用して、デッドタイム付きの出力(”High”アクティブ)を行います。

また、パルス出力強制遮断機能(INTP0)(選択時)を用いて、過電流検出時は PWM 出力端子をハイインピー

ダンス出力とします。

Page 11: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 11 of 64

2018. 09. 19

(4) タイマ RX(TRX)

回転速度検出用のフリーランカウンタとして使用します。初期位置検出処理時には、回転子角度推定時

に相電圧が一定電圧値に到達するまでの時間を計測するタイマとして使用します。カウント開始トリガと

してタイマ RD0 のカウント開始を用います。コンパレータ CMP1 の割り込みにより,カウント値をバッ

ファに転送します。

(5) インターバルタイマ

1[ms]周期タイマとして使用します。

(6) コンパレータ CMP1

2000[rpm]以上の場合、ゼロクロスの検出に使用します。初期位置検出処理時に相電圧が基準電圧値に

到達したことを判別するために使用します。

(7) コンパレータ CMP0

プログラマブル・ゲイン・アンプと組み合わせて過電流検出を行います。(選択時)

(8) プログラマブル・ゲイン・アンプ

コンパレータ CMP0 と組み合わせて過電流検出を行います。(選択時)

(9) 外部割り込み(INTP0)

外部回路による過電流検出を行います。(選択時)

Page 12: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 12 of 64

2018. 09. 19

2.3 ソフトウェア構成

2.3.1 ソフトウェア・ファイル構成

サンプルプログラムのフォルダとファイル構成を表 2-4 に記します。

表 2-4 サンプルプログラムのフォルダとファイル構成

プロジェクト フォルダ ファイル 説 明

RL78G1F_MRSSK_SPM_LESS

_120_DIP_CSP_CA_V100

RL78G1F_MRSSK_SPM_LESS

_120_DIP_CSP _CC_V100

RL78G1F_MRSSK_SPM_LESS

_120_DIP_E2S_ CC_V100

inc main.h メイン関数、ユーザインタフェース制御関連定義

mtr_common.h 共通定義

mtr_ctrl_mrssk.h ボード依存処理関連定義

mtr_ctrl_rl78g1f.h RL78/G1F依存処理関連定義

mtr_ctrl_rl78g1f_mrssk.h ボード&RL78/G1F依存処理関連定義

mtr_spm_less_120.h センサレス120度通電制御関連定義

control_parameter.h 制御パラメータ関連定義

motor_parameter.h モータパラメータ関連定義

mtr_feedback.h フィードバック制御関連定義

mtr_gmc.h モータ制御機能関連定義

mtr_driver_access.h ドライバアクセス機能関連定義

mtr_filter.h フィルタ処理関連定義(未使用)

ics ics_RL78G1F.obj GUI通信ライブラリ

ics_RL78G1F_Lx.h GUI通信用関連定義

RL78G1F_vector.c GUI通信用割り込み処理

prj RL78G1F_MRSSK_SPM_LESS_

120_DIP_CSP_CA_V100.dr

リンクディレクティブファイル注1

lib R_dsp_rl78_CA.lib 演算処理ライブラリ CAツールチェイン用注2

R_dsp_rl78_CC.lib 演算処理ライブラリ CC-RLツールチェイン用注2

src main.c メイン関数、ユーザインタフェース制御

mtr_ctrl_mrssk.c ボード依存処理

mtr_ctrl_rl78g1f.c RL78/G1F依存処理

mtr_ctrl_rl78g1f_mrssk.c ボード&RL78/G1F依存処理

mtr_interrupt.c 割り込みハンドラ

mtr_spm_less_120.c センサレス120度通電制御、初期位置検出

mtr_feedback.c フィードバック制御

mtr_gmc.c モータ制御機能

mtr_driver_access.c ドライバアクセス機能

mtr_filter.c フィルタ処理(未使用)

【注】1 リンクディレクティブファイルは RL78G1F_MRSSK_SPM_LESS_120_DIP_CSP_CA_V100 の

みに含まれます。

2 R_dsp_rl78_CA.lib は RL78G1F_MRSSK_SPM_LESS_120_DIP_CSP_CA_V100 のみに含まれ

ます。

R_dsp_rl78_CC.lib は RL78G1F_MRSSK_SPM_LESS_120_ DIP_CSP_CC_V100 と

RL78G1F_MRSSK_SPM_LESS_120_ DIP_E2S_CC_V100 に含まれます。

Page 13: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 13 of 64

2018. 09. 19

2.3.2 モジュール構成

サンプルプログラムのモジュール構成を図 2-2、表 2-5 に示します。

図 2-2 サンプルプログラムのモジュール構成

表 2-5 サンプルプログラムのモジュール構成

階層 ファイル名

アプリケーション層 main.c

モータ制御層 mtr_spm_less_120.c mtr_feedback.c mtr_gmc.c mtr_driver_access.c mtr_filter.c

mtr_interrupt.c 注

H/W 制御層 mtr_ctrl_rl78g1f_mrssk.c mtr_ctrl_rl78g1f.c mtr_ctrl_mrssk.c

mtr_interrupt.c 注

【注】“mtr_interrupt.c”は、モータ制御層、H/W 層に関わる処理を行っています。

アプリケーション層

ユーザアプリケーション

H/W 制御層

マイコン依存処理部、インバータボード依存処理部

H/W

インバータボード、マイコン

モータ制御層

モータ制御処理部

Page 14: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 14 of 64

2018. 09. 19

2.4 ソフトウェア仕様

本システムのソフトウェアの基本仕様を下記に示します。120 度通電制御の詳細に関しては「永久磁石

同期モータの 120 度通電制御(アルゴリズム編)」を参照してください。

表 2-6 センサレス 120 度通電制御ソフトウェア基本仕様

項 目 内 容

制御方式 120 度通電方式(上アームチョッピング)

モータ回転開始/停止 SW1(P05)のレベルにより判定(”Low”:回転開始 “High”:停止)

もしくはモータ制御開発支援ツールによる操作

回転子磁極位置検出 A/D 変換、もしくはコンパレータによる誘起電圧判定を用いた位置検出(60 度毎)

・2000[rpm]までは 50[μs]毎に A/D 変換値によるゼロクロス判定を行う

・2000[rpm]以上はコンパレータを用いてゼロクロス判定を行う

・パターン切り替え時、PWM デューティ設定と通電パターンの決定を行う

RL78/G1F のタイマとコンパレータの連動機能を用いた初期位置検出

・モータの突極性を利用した 180 度内角度検出を行う

・モータの磁気飽和特性を用いた極性判定を行う

入力電圧 DC24[V]

メインクロック周波数 CPU クロック:fCLK 32[MHz]

TRX クロック:fHOCO 64[MHz]

キャリア周波数(PWM) 20 [kHz]

デッドタイム 2 [μs]

制御周期 速度 PI 制御は 1 [ms]毎

回転速度制御範囲 700 [rm] ~ 2650 [rpm]

CW/CCW 対応

コンパイラ最適化設定 デフォルト設定

保護停止処理 ・以下のうちいずれかの条件の時、モータ制御信号出力(6 本)を非アクティブにする

1.インバータ母線電圧が 28 [V]を超過(1 [ms]毎に監視)

2.インバータ母線電圧が 15[V]未満(1 [ms]毎に監視)

3.回転速度が 3300 [rpm]を超過(1 [ms]毎に監視)

4.A/D 変換によるセンサレス駆動時、ゼロクロス検出が 50 [ms]間未発生

5.コンパレータ駆動時、コンパレータ割り込みが 50[ms]間未発生

6.仮想ホールセンサパターン(位置情報)の異常検出

7.初期位置検出用基準電圧値が不適切

8.磁極位置判定失敗

9.極性判定失敗

・外部からの過電流検出信号(INTP0 端子にローレベル入力) または、内蔵 PGA+CMP0 で

過電流信号を検出した場合、PWM 出力端子をハイインピーダンスにする。

Page 15: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 15 of 64

2018. 09. 19

3. 制御プログラム説明

本アプリケーションノートの対象サンプルプログラムについて説明します。

3.1 制御内容

3.1.1 モータ起動/停止

モータの起動と停止は、モータ制御開発支援ツールからの入力、または SW1 と VR1 の入力によって制御

します。SW1 には汎用ポートを割り当て、メインループ内で端子入力を確認し、”Low”レベルの時スタート

スイッチが押されていると判断し、逆に”High”レベルの時はモータ停止と判断します。

また、VR1 にはアナログ入力端子が割り当てられ、その入力をメインループ内で監視、回転速度指令値を

作成します。回転指令値が 550[rpm]未満の時はモータ停止と判断します。

3.1.2 A/D 変換

(1) モータ回転速度指令値

モータの回転速度指令値はモータ制御開発支援ツールからの入力、または VR1 の出力値(アナログ値)を

A/D 変換することによって決定します。A/D 変換された VR1 の値は、以下の表のように回転速度指令値と

して使用します。変換比の指令値最大値は最大回転速度が出る様に設定しています。

表 3-1 回転速度指令値の変換比

項 目 変換比(指令値:A/D 変換値) チャネル

回転速度指令値 CW 0 [rpm]~2650[rpm]:0200H~03FFH

ANI6 CCW -2650 [rpm]~0[rpm]:0000H~01FFH

(2) インバータ母線電圧

下記のように、インバータ母線電圧を測定します。変調率の算出と過電圧・低電圧検出(異常時は PWM

停止)に使用します。

表 3-2 インバータ母線電圧の変換比

項 目 変換比(インバータ母線電圧:A/D 変換値) チャネル

インバータ母線電圧 0 [V]~111[V]:0000H~03FFH ANI4

(3) U 相、V 相、W 相電圧

下記のように、U、V、W 相電圧を測定し、ゼロクロス判定に使用します。

表 3-3 U、V、W 相の変換比

項 目 変換比(U 相、V 相、W 相電圧:A/D 変換値) チャネル

U、V、W 相電圧 0 [V]~111 [V]:0000H~03FFH ANI16、ANI0、ANI1

(4) 相電流

回転し磁極方向判別時にシャント抵抗に流れる電流値を測定します(電流値に変換せずに使用)。

【注】A/D 変換特性の詳細に関しては「RL78/G1F ユーザーズマニュアル ハードウェア編」を参照して下さい。

Page 16: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 16 of 64

2018. 09. 19

3.1.3 停止時初期位置検出

回転子の位置により各相コイルを貫く回転子磁石磁束の量が異なる場合、そのモータは突極性を持つとい

います。これは回転子の位置に応じて磁気抵抗が変化すると言い換える事が出来ます。磁気抵抗が正弦波状

に変化するとすれば、インダクタンスも正弦波状に変化する事になります。図 3-1にある様に回転子の 1周

に対してインダクタンスは 2 倍の周期で変化します。この場合、例えば U→V、V→W、W→U の方向に電流

が流れる様に電圧を印加すると、各々の下側の相(U→V の場合 V 相)の相電圧が、印加された電圧値に達す

るまでの時間は、回転子の位置に応じて変化する事になります。例えば、図 3-2の状態の時、V→W の方向に

電圧を印加した場合の方が W→U の方向に電圧を印加した場合より時間が掛かる事になります。

図 3-1 回転子位置に応じたインダクタンスの変化

図 3-2 回転子位置と各相の関係

この性質を利用して回転子の位置を検出する方法を説明します。図 3-3 に本システムで用いる角度推定

の模式図を示します。判別は U→V、V→W、W→U の順にパルス状の電圧 Vi を印加し、図 3-3 にある相

電圧検出抵抗に発生する電圧が内部基準電圧の値に達するまでの時間を内部タイマにより計測し、これを

比較することで回転子が電気角 180 度内で 60 度毎のどの方向を向いているのかを検出します。

W-U

U-V

Page 17: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 17 of 64

2018. 09. 19

図 3-3 角度推定模式図

本アプリケーションノートで用いるアルゴリズムでは、内部基準電圧の値に達するまでの時間を RL78/G1F

のタイマ RX(TRX)とコンパレータを用いて検出します。

TRD の相補 PWM モードを用い、各相にパルス状の電圧を印加します。この時、TRX を TRD の立ち上がり

エッジ同期でカウントを開始し、CMP1 により相電圧が内部基準電圧の値に到達した事を検知したタイミング

で TRX インプットキャプチャ機能を用いて要した時間を計測します。

各相で計測した時間の累計値の比較から電気角 180 度内の 60 度毎の角度推定を行います。測定終了は

計測した時間の累計値が最大の相とその次の相で差分が閾値以上になった時に計測終了としています。但

し、閾値に到達しなかった場合、または最大測定回数分の測定を行っても差分が閾値の 30%に達しなかった

場合はエラーとして位置検出処理を終了します。

最大回数分の測定を行って閾値の 30%以上 100%未満の差分しか得られなかった場合は、それを示す変数

g_u1_induct_effect_reach_max_cnts に1を設定しその状態を表示します。

測定終了判別閾値、計測最大回数、CMP1 での比較値、及びエラー判別の閾値はユーザ設定可能値としてい

ます。

Page 18: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 18 of 64

2018. 09. 19

図 3-4 各相の電圧検出抵抗に発生する電圧値の時間差測定

3.1.4 極性判定

上記 3.1.3「停止時初期位置検出」で説明した方法は回転子位置によるインダクタンスの変化を利用し

て位置を推定している為、極性の判断が出来ません(例えば 60 度と 240 度の区別が付きません)。そこで、

極性判定を行う為にモータの磁気飽和特性を利用します。磁性体内に入り込める磁束量には限りがある

為、コイルに電流を流してコイル内のコアに磁束を発生させても、その磁束量の増加率はある値を超える

と飽和して急激に減少します。

コイル内のコアを貫く磁石磁束の向きとコイルに流れる電流よって発生する磁束の方向が同じであれ

ば、方向が逆の場合に比べて、より早く飽和が発生しインダクタンスが急激に減少します。この特性を利

用し、磁極の極性を判定します。

図 3-5 コイルを巻かれた磁極の例

図 3-5 のように磁石にコイルが巻かれているような場合にコイルに電流を流す事を考えます。一定時間パル

ス状の電圧を印加すると、図 3-6 のように電流の方向によって実際に流れる電流値に差異が生じます。

Page 19: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 19 of 64

2018. 09. 19

図 3-6 電流印加方向による電流差異

60 度毎の回転子角度推定後、図 3-7 の様にモータにパルス状電圧を印加して、シャント抵抗に流れる電流

値を A/D コンバータで読み取り、比較し、極性を判定します。実際には、これを複数回繰り返し、差分を

明確化します。

図 3-7 磁気飽和発生のための電流印加パターン(例)

測定終了は各方向での差分積分値が判別閾値を超えた時点で終了とします。但し、最大測定回数分の測定を

行っても差分積分値が判別閾値の 30%に達しなかった場合はエラーとして終了します。最大回数分の測定を

行って判別閾値の 30%以上 100%未満の差分積分値である場合は、それを示す変数

g_u1_saturation_effect_reach_max_cnts に1を設定しその状態を表示します。判別閾値、計測最大回数、及び

エラー判定閾値はユーザ設定可能値としています。また、印加パルスの幅(内部カウンタ値)もユーザ設定可

能値としています。

青、赤の各方向にそれぞれ電流を

流して、その A/D コンバータの読

み取り値の総計から判別を行う。

U U U

S

N

Page 20: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 20 of 64

2018. 09. 19

3.1.5 速度制御

本システムでのモータ回転速度は、TRX をフリーランニングさせ、ゼロクロス発生時にタイマ値を

取り込み、2π [rad]前の取り込み値との差分から演算します。

この際、コンパレータを用いたゼロクロス検出を行っている場合は TRX インプットキャプチャ機能を

用いて、CMP1 信号検出時に TRX カウンタ値の取得を行っています。

U相誘起電圧から作成したパターン

タイマカウンタ

取り込み 取り込み 取り込み 取り込み 取り込み 取り込み 取り込み

カウンタ値差分

モータ回転速度[rad/s] = (2π×タイマカウント周波数)/(カウンタ値差分)

2π2π

V相誘起電圧から作成したパターン

W相誘起電圧から作成したパターン

図 3-8 モータ回転速度の演算方法

本アプリケーションノート対象ソフトでの速度制御は、PI 制御によって行います。下記の速度 PI 制御に

よって電圧指令値を得ます。

))((* −+=

s

KKv I

P

電圧指令値:*v 速度指令値:* 回転速度:

比例ゲイン速度PI:PK 積分ゲイン速度 PI:IK ラプラス演算子:s

PI 制御の詳細については、専門書を参照してください。

Page 21: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 21 of 64

2018. 09. 19

3.1.6 PWM による電圧制御

出力電圧の制御には PWM 制御を使用しています。PWM 制御とは、図 3-9 のように、パルスの

デューティを変化させることで平均電圧を調整していく制御方式です。

平均電圧

t

VTON TOFF

TON + TOFF

TONデューティ = ×100[%]

図 3-9 PWM 制御

ここで、変調率 m を以下のように定義します。

E

Vm =

変調率:m 指令値電圧:V インバータ母線電圧:E

この変調率を、PWM デューティを決めるレジスタの設定値に反映させます。

また、本アプリケーションノート対応ソフトでは、上アームチョッピングを採用し、出力電圧及び速度の

制御を行っています。図 3-10 に上アームチョッピング時のモータ制御信号出力波形例を示します。

図 3-10 上アームチョッピング

Page 22: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 22 of 64

2018. 09. 19

3.1.7 コンパレータによるゼロクロス検出

本サンプルプログラムでは高速回転時(3000[rpm]以上)には CMP1 を用いてゼロクロスの検出を行います。

その際、入力信号の検出タイミングは PWM の ON タイミングと合わせる必要があります。そこで TAU の

チャネル 0 とチャネル 2 を用いて CMP1 の出力信号に TIMER WINDOW を掛けています。

図 3-11 コンパレータ有効区間設定

A/D コンバータによるゼロクロス検出とコンパレータによるゼロクロス検出の切り替えはその時点での

検出回転速度を元に行います。ただし、境界値(2000[rpm])での頻繁な切り替え状態を避けるため、ヒステリ

シスを設けています。(コンパレータ⇒A/D コンバータ切り替えを行う際の判断基準は 1950[rpm]で行ってい

ます。)

図 3-12 ゼロクロス検出方法の切り換え

1950 2000

2

1

Page 23: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 23 of 64

2018. 09. 19

3.1.8 状態遷移

図 3-13 にセンサレス 120 度通電制御ソフトにおける状態遷移図を示します。

SYSTEM MODE

INACTIVE

ERROR

POWER ON/ RESET

[RESET EVENT]

[ACTIVE EVENT]

[INACTIVE EVENT]

[ERROR EVENT]

RUN MODE

INIT

BOOTConfiguration

Control

Current

Speed

Posit ion

Torque

Voltage

Method

FOC

180

WIDE

120

Sensor

Less

Hall

Encoder

Resolver

Configuration

Control

Current

Speed

Posit ion

Torque

Voltage

Method Sensor

Less

Hall

Encoder

Resolver

DRIVE

ACTIVE

[MTR_DRAW_IN_FINISH == g_u1_state_draw_in]

[MTR_VOFF_SET_STATUS_FINISH == g_u1_state_v_offset]

[ERROR EVENT]

[RESET EVENT]

FOC

180

WIDE

120

INACTIVE

ACTIVE

ERROR

RESET

SYSTEM MODE

INACTIVE ACTIVE ERROR

INACTIVE

INACTIVE INACTIVE

ACTIVE

ERROR ERROR

ERROR

ERROR

ERROR

INACTIVE

ACTIVE

ERROR

[MTR_V_PI_OUTPUT == g_u2_state_voltage_ref]

EVENT

図 3-13 センサレス 120 度通電制御ソフトの状態遷移図

(1). SYSTEM MODE

システム動作状態を表します。各イベント(EVENT)の発生により状態が遷移します。システムの動作状態

は、モータ駆動停止(INACTIVE)、モータ駆動(ACTIVE)、異常状態(ERROR)があります。

(2). RUN MODE

モータの駆動状態を表します。システムの状態が ACTIVE になると、モータの駆動状態が図 3-13 の様に

遷移します。

(3). EVENT

各 SYSTEM MODE 中に EVENT が発生すると、その EVENT に従って、システム動作状態が図 3-13 中の

表の様に遷移します。各 EVENT の発生要因は下記となります。

表 3-4 EVENT 一覧

イベント名 発生条件

INACTIVE ユーザ操作により発生します

ACTIVE ユーザ操作により発生します

ERROR システムが異常を検出したときに発生します

RESET ユーザ操作により発生します

Page 24: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 24 of 64

2018. 09. 19

3.1.9 始動方法

センサレス 120 度通電制御は、永久磁石(回転子)の磁束の変化による誘起電圧を利用し、60 度毎の磁極の

位置を推定します。しかし、誘起電圧は回転することで発生するため、磁極位置の推定に十分な回転速度が

無い場合、磁極の位置を推定することが出来ません。3.1.3 で説明した初期位置検出機能はモータの突極性

や飽和特性が適していないと利用出来ません。

そういった場合の始動方法として、永久磁石の位置に関わらず、強制的に通電パターンを変化させること

で回転磁界を発生させ同期速度に引き込む方法があります。

図 3-15 ではサンプルソフトでの始動方法を示しています。”MTR_MODE_BOOT”では、磁極 (回転子)

位置の引き込みを行い、滑らかに始動出来る様にしています。初期位置検出機能を使わずにこの磁極位置の

引き込みを行うには“MTR_USE_IPD”の値を 0 に設定します。

MTR_V_OPENLOOP(3)

Voltage[V]

RUN MODE

0

0

Voltage reference status

Speed reference status MTR_SPEED_OPENLOOP_1(1)

Speed[rad/s]

MTR_MODE_DRIVE

MTR_OL_MODE1_CHANGE_RPM

MTR_SPEEDOPEN_LOOP_2(2)

MTR_SPEED_OPENLOOP3(3)

MTR_SPEED_CHANGE(4)

MTR_V_PI_OUTPUT(4)

MTR_OL_START_REFV

MTR_OL_MODE2_CHANGE_RPM

g_u2_ref_speed_rad

Openloop Speed PI control

MTR_OL_MODE3_MAX_REFV

MTR_BOOT_REF_V

MTR_V_UP(1)

MTR_V_UP(1)

MTR_V_CONST(2)

MTR_V_CONST(2)

MTR_V_ZERO_CONST(0)

MTR_SPEED_ZERO_CONST(0)

MTR_MODE_BOOTMTR_MODE_INIT

図 3-14 始動シーケンス(初期値検出無し)

Page 25: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 25 of 64

2018. 09. 19

一方、初期位置検出機能を使うには“MTR_USE_IPD”の値を 1 に設定します。この場合、上記の”

MTR_MODE_BOOT”での、磁極 (回転子) 位置の引き込みは行われません。

図 3-15 始動シーケンス(初期値検出有り)

Page 26: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 26 of 64

2018. 09. 19

3.1.10 システム保護機能

本システムは、以下のエラー状態を持ち、それぞれの場合に緊急停止機能を実現しています。システム

保護機能に関わる各設定値は表 3-5 を参照してください。

・過電流エラー

ハードウェアからの緊急停止信号(過電流検出)により、PWM 出力端子にハイインピーダンス出力します。

もしくは PGA+CMP0 により過電流を検出した時に緊急停止します。

(どちらの方法を取るかはコンパイルオプションによる選択となります。)

・過電圧エラー

過電圧監視周期でインバータ母線電圧を監視し、過電圧(過電圧リミット値を超過)を検出した時に、緊急

停止します。過電圧リミット値は検出回路の抵抗値の誤差等を考慮して設定した値です。

・低電圧エラー

低電圧監視周期でインバータ母線電圧を監視し、低電圧(低電圧リミット値を下回る)を検出した時に、

緊急停止します。低電圧リミット値は検出回路の抵抗値の誤差等を考慮して設定した値です。

・回転速度異常エラー

回転速度監視周期で速度を監視し、速度リミット値を超過した場合、緊急停止します。

・ゼロクロス検出タイムアウトエラー

誘起電圧によるゼロクロス検出での速度制御時、パターン切り替えが一定時間発生しない場合、緊急停止

します。

・仮想ホールセンサパターンエラー(位置情報)の異常検出

U、V、W 各相電圧から作る仮想ホールセンサパターン(位置情報)の異常を検出した場合、緊急停止します。

表 3-5 各システム保護機能設定値

エラー 閾値

過電流エラー 過電流リミット値 [A] 2.0

過電圧エラー 過電圧リミット値 [V] 28

監視周期 [ms] 1

低電圧エラー 低電圧リミット値 [V] 15

監視周期 [ms] 1

回転速度異常エラー 速度リミット値 [rpm] 3300

監視周期 [ms] 1

ゼロクロス検出タイムアウトエラー タイムアウト時間[ms] 50

Page 27: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 27 of 64

2018. 09. 19

3.2 120 度通電制御ソフト関数仕様

本制御プログラムの関数一覧を以下に示します。本システムで使用していない関数は記載していません。

表 3-6 “main.c”関数一覧

ファイル名 関数名 処理概要

main.c main

入力:なし

出力:なし

・ハードウェア初期化関数呼び出し

・ユーザインタフェース初期化関数呼び出し

・メイン処理使用変数初期化関数呼び出し

・状態遷移及びイベント実行関数呼び出し

・母線電圧安定待ち処理呼び出し

・メイン処理

⇒ユーザインタフェース呼び出し

⇒ウォッチドッグタイマクリア関数呼び出し

board_ui

入力:なし

出力:なし

ボードユーザインタフェース使用(H/W 操作)

・モータステータスの変更

・回転速度指令値の決定

・回転方向の決定

ics_ui

入力:なし

出力:なし

モータ制御開発支援ツールユーザインタフェース使用

(GUI 操作)

・モータステータスの変更

・回転速度指令値の決定

・回転方向の決定

software_init

入力:なし

出力:なし

メイン処理にて使用する変数の初期化

Page 28: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 28 of 64

2018. 09. 19

表 3-7 “mtr_ctrl_mrssk.c”関数一覧

ファイル名 関数名 処理概要

mtr_ctrl_mrssk.c R_MTR_ChargeCapacitor

入力:なし

出力:なし

母線電圧(VDC)安定待ち

get_vr1

入力:なし

出力:(uint16) ad_data / A/D 変換結果

VR1 の状態を取得

get_sw1

入力:なし

出力:(uint8)u1_temp / SW1 のレベル

SW1 の状態を取得

get_sw2

入力:なし

出力:(uint8)u1_temp / SW2 のレベル

SW2 の状態を取得

led1_on

入力:なし

出力:なし

LED1 の点灯

led2_on

入力:なし

出力:なし

LED2 の点灯

led3_on

入力:なし

出力:なし

LED3 の点灯

led1_off

入力:なし

出力:なし

LED1 の消灯

led2_off

入力:なし

出力:なし

LED2 の消灯

led3_off

入力:なし

出力:なし

LED3 の消灯

Page 29: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 29 of 64

2018. 09. 19

表 3-8 “mtr_ctrl_rl78g1f.c”関数一覧[1/2]

ファイル名 関数名 処理概要

mtr_ctrl_rl78g1f.c R_MTR_InitHardware

入力:なし

出力:なし

クロックと周辺機能の初期化

mtr_reinit_for_drive

入力:なし

出力:なし

初期値検出終了後の駆動用初期化

mtr_prepare_measure_ie

入力:なし

出力:なし

初期位置検出電圧上昇時間測定準備

mtr_init_clock

入力:なし

出力:なし

クロックの初期化

mtr_init_tau

入力:なし

出力:なし

タイマアレイユニット(TAU)の初期化

mtr_set_tau_window_signal

入力:(uint8)u1_signal / TIMER WINDOW 対象信号

出力:なし

CMP1 TIMER WINDOW 対象 PWM 信号設定

mtr_start_tau

入力:なし

出力:なし

CMP1 TIMER WINDOW 信号開始

mtr_set_cmp1_window

入力:(uint16)u2_delay / PWM 立ち上がりからの遅延量

(uint16)u2_width / TIMER WINDOW 幅

出力:なし

CMP1 TIMER WINDOW 信号遅延量、及び

TIMER WINDOW 幅設定

mtr_init_intp

入力:なし

出力:なし

外部割り込みの初期化

clear_wdt

入力:なし

出力:なし

ウォッチドッグタイマ(WDT)のクリア

mtr_clear_oc_flag

入力:なし

出力:なし

パルス出力強制遮断状態の解除

mtr_set_delay_timer

入力:(uint16) u2_count / ディレイカウント値

(VOID_FUNC_POINTER) ptr_func /

ディレイ割り込み予約関数ポインタ

出力:なし

ディレイタイマカウント値、及び割り込み

予約関数設定処理

mtr_start_delay_timer(void)

入力:なし

出力:なし

ディレイタイマ開始

mtr_stop_delay_timer

入力:なし

出力:なし

ディレイタイマ停止

mtr_dummy_for_delay_timer

入力:なし

出力:なし

ディレイタイマ予約関数無効化用ダミー関数

Page 30: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 30 of 64

2018. 09. 19

表 3-9 “mtr_ctrl_rl78g1f.c”関数一覧[2/2]

ファイル名 関数名 処理概要

mtr_ctrl_rl78g1f.c mtr_init_for_detect_initial_position

入力:なし

出力:なし

初期位置検出用初期化

mtr_clear_trd0_imfa

入力:なし

出力:なし

コンペアマッチフラグクリア

mtr_init_trx

入力:なし

出力:なし

タイマ RX(TRX)の初期化

mtr_start_trx

入力:なし

出力:なし

タイマ RX(TRX)カウント開始

mtr_stop_trx

入力:なし

出力:なし

タイマ RX(TRX)カウント停止

mtr_init_cmp1

入力:なし

出力:なし

コンパレータ 1(CMP1)の初期化

mtr_enable_cmp1_intr

入力:なし

出力:なし

コンパレータ 1 割り込み許可

mtr_disble_cmp1_intr

入力:なし

出力:なし

コンパレータ 1 割り込み禁止

mtr_set_cmp1_input

入力:(uint8) u1_input / コンパレータ正相入力信号

(uint8) u1_edge / 判別エッジ

(立上がり/立下り)

出力:なし

コンパレータ 1 判別信号設定

mtr_select_cmp1_input

入力:(uint8) u1_p_input / コンパレータ正相入力信号

(uint8) u1_m_input / コンパレータ逆相入力信号

出力:なし

コンパレータ 1 入力信号設定

mtr_init_cmp0_pga

入力:(uint8)u1_level / 過電流検出レベル

出力:なし

コンパレータ 0 及び PGA の初期化

mtr_init_pwmopa

入力:なし

出力:なし

PWMOPA 機能の初期化

mtr_recover_forced_shutdown

入力:なし

出力:なし

PWMOPA による出力強制遮断からの復帰処理

mtr_init_interval_timer

入力:なし

出力:なし

インターバルタイマ(1[ms]周期処理)の初期化

Page 31: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 31 of 64

2018. 09. 19

表 3-10 “mtr_ctrl_rl78g1f_mrssk.c”関数一覧

ファイル名 関数名 処理概要

mtr_ctrl_rl78g1f_mrssk.c mtr_init_trd

入力:なし

出力:なし

タイマ RD(TRD)の初期化

mtr_init_ad_converter

入力:なし

出力:なし

A/D コンバータの初期化

mtr_init_vuvw_filter

入力:なし

出力:なし

LPF フィルタ設定

init_ui

入力:なし

出力:なし

ユーザインタフェースの初期化

mtr_ctrl_start

入力:なし

出力:なし

モータ起動処理

mtr_ctrl_stop

入力:なし

出力:なし

モータ停止処理

mtr_change_pattern

入力:(uint8) u1_pattern / 通電パターン

出力:なし

・通電パターンの変更

・PWM デューティの設定

mtr_get_adc

入力:(uint8) u1_ad_ch / 取得対象 A/D チャネル

出力:(int16) s2_temp / A/D 変換値

A/D 変換値取得処理

mtr_output_UP

入力:なし

出力:なし

角度推定時 Up→Vn 電圧印加設定

mtr_output_VP

入力:なし

出力:なし

角度推定時 Vp→Wn 電圧印加設定

mtr_output_WP

入力:なし

出力:なし

角度推定時 Wp→Un 電圧印加設定

mtr_output_stop

入力:なし

出力:なし

PWM 全ポート Off

mtr_output_low_on

入力:なし

出力:なし

全下側ポート On

Page 32: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 32 of 64

2018. 09. 19

表 3-11 “mtr_driver_access.c”関数一覧

ファイル名 関数名 処理概要

mtr_driver_access.c R_MTR_SetSpeed

入力:(uint16) u2_ref_speed / 速度指令値

出力:なし

速度指令値の設定

R_MTR_SetDir

入力:(uint8) u1_dir / 回転方向

出力:なし

回転方向の設定

R_MTR_GetSpeed

入力:なし

出力:(uint16) u2_speed_rpm / 回転速度

速度演算値の取得

R_MTR_GetDir

入力:なし

出力:(uint8) g_u1_direction / 回転方向

回転方向の取得

R_MTR_GetStatus

入力:なし

出力:(uint8) g_u1_mode_system / モータステータス

モータステータスを取得

表 3-12 “mtr_feedback.c”関数一覧

ファイル名 関数名 処理概要

mtr_feedback.c mtr_pi_ctrl

入力:(MTR_PI_CTRL*) pi_ctrl / PI 制御用構造体

出力:(int16) s2_ref / PI 制御出力電圧値

PI 制御演算処理

Page 33: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 33 of 64

2018. 09. 19

表 3-13 “mtr_gmc.c”関数一覧

ファイル名 関数名 処理概要

mtr_gmc.c mtr_get_vdc

入力:なし

出力:(int16) s2_temp / 母線電圧値

母線電圧値の取得

mtr_check_over_voltage_error

入力:(int16) s2_vdc / 母線電圧値

(int16) s2_limit_voltage / 過電圧リミット値

出力:(uint16) u2_temp0 / 過電圧エラーフラグ(エラー発生時)

過電圧エラーチェック

mtr_check_under_voltage_error

入力:(int16) s2_vdc / 母線電圧値

(int16) s2_ limit_voltage / 低電圧リミット値

出力:(uint16) u2_temp0 / 低電圧エラーフラグ(エラー発生時)

低電圧エラーチェック

mtr_check_over_speed_error

入力:(uint16) u2_speed_rad / 回転速度

(uint16) u2_speed_limit / 回転速度リミット値

出力:(uint16) u2_temp0 / 過速度エラーフラグ(エラー発生時)

過速度エラーチェック

mtr_get_duty

入力:(int16) s2_v_ref / 指令電圧値

(int16) s2_vdc_ad / 母線電圧値

出力:(uint16) u2_temp / 変調率(PWM デューティ)

変調率の算出

mtr_generate_pattern

入力:(uint16) u2_vu_ad / U 相電圧値

(uint16) u2_vv_ad / V 相電圧値

(uint16) u2_vw_ad / W 相電圧値

(uint16) u2_vn_ad / 三相電圧加算値(仮想中点電圧値)

出力:(uint8) u1_temp / 仮想ホールセンサパターン

仮想ホールセンサパターンの生成

mtr_check_timeout_error

入力:(uint16) u2_cnt_timeout / タイムアウトカウンタ

(uint16) u2_timeout_limit / タイムアウトリミット値

出力:(uint16) u2_temp0 / タイムアウトエラーフラグ(エラー発生時)

タイムアウトエラーチェック

Page 34: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 34 of 64

2018. 09. 19

表 3-14 “mtr_interrupt.c”関数一覧

ファイル名 関数名 処理概要

mtr_interrupt.c mtr_over_current_interrupt

入力:なし

出力:なし

過電流検出処理 (ハード検出: INTP0 で割込み)

・INTP0 割込み禁止

・イベント処理選択関数呼び出し(Error イベント発生)

・エラーステータス変更(過電流エラーフラグセット)

mtr_carrier_interrupt

入力:なし

出力:なし

キャリア割り込み(INTTRD0)で呼び出し (周期: 50 [μs])

・母線電圧取得

・各相電圧取得・電圧オフセット除去

・中点電圧計算

・A/D コンバータによるゼロクロス検出処理

・PI 制御用初期化処理

・CMP1 割り込み許可遅延要求処理

・CMP1 割り込み許可遅延処理

・CMP1 出力 TIMER WINDOW 設定処理

・オープンループ駆動制御処理の呼び出し

・GUI 通信処理

・GUI 通信用変数の更新

・コンペアマッチフラグクリア処理呼び出し

・強制遮断処理からの復帰処理呼び出し

mtr_1ms_interrupt

入力:なし

出力:なし

周期タイマ割り込み(INTIT)で呼び出し (周期: 1 [ms])

・Run モードステート管理

⇒回転速度指令値の設定

⇒電圧指令値の設定

⇒PWM デューティの設定

・ゼロクロス検出方法切り替え処理

・エラーチェック処理の呼び出し

・モータ停止待ち処理の呼び出し

・初期位置検出

⇒インダクタンス測定(角度推定)

⇒極性判定

mtr_cmp1_interrupt

入力:なし

出力:なし

コンパレータ 1 割り込み処理

・フリーランカウンタ(TRXBUF)の取り込み

・CMP1 使用時の転極処理遅延時間設定

・CMP1 割り込みでの回転速度計算

・CMP1 による仮想ホールパターン生成

mtr_delay_interrupt

入力:なし

出力:なし

ゼロクロスからの転極遅延処理

・カウンタ停止

・割り込み情報クリア

・転極制御

・CMP1 割り込み許可遅延要求フラグセット

mtr_change_cmp1_input

入力:なし

出力:なし

CMP1 判別入力信号の切り替え

Page 35: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 35 of 64

2018. 09. 19

表 3-15 “mtr_spm_less_120.c”関数一覧[1/2]

ファイル名 関数名 処理概要

mtr_spm_less_120.c R_MTR_InitSequence

入力:(uint8) u1_id / Motor ID

出力:なし

シーケンス処理の初期化

R_MTR_ExecEvent

入力:(uint8) u1_event / 発生イベント

出力:なし

・ステータスの変更を行う

・発生イベントに対して、適切な処理の実行関数

を呼び出し

mtr_act_active

入力:(uint8) u1_state / モータステータス

出力:(uint8) u1_state / モータステータス

PWM 出力許可

mtr_act_inactive

入力:(uint8) u1_state / モータステータス

出力:(uint8) u1_state / モータステータス

PWM 出力停止

mtr_act_none

入力:(uint8) u1_state / モータステータス

出力:(uint8) u1_state / モータステータス

処理なし

mtr_act_reset

入力:(uint8) u1_state / モータステータス

出力:(uint8) u1_state / モータステータス

グローバル変数の初期化

パルス出力強制遮断状態の解除処理呼び出し

mtr_act_error

入力:(uint8) u1_state / モータステータス

出力:(uint8) u1_state / モータステータス

モータ制御終了関数呼び出し

mtr_ol_signal_set

入力:なし

出力:(uint8) u1_pattern / 強制通電パターン

オープンループ時の通電パターン設定

mtr_pattern_set

入力:(uint8) u1_pattern / 通電パターン

出力:なし

・通電パターンの設定

・通電パターンに基づいた PWM 出力

設定処理の呼び出し

mtr_speed_calc

入力:なし

出力:なし

A/D コンバータによるゼロクロス検出に基づいた

速度計測演算

mtr_start_init

入力:なし

出力:なし

モータ起動時に必要な変数を初期化

mtr_set_variables

入力:なし

出力:なし

制御層への制御パラメータの反映

R_MTR_IcsInput

入力:(MTR_ICS_INPUT*) ics_input / GUI 通信用構

造体

出力:なし

GUI から入力された変数値をバッファに格納

mtr_error_check

入力:なし

出力:なし

エラーの監視

mtr_wait_motorstop

入力:なし

出力:なし

回転停止チェック

mtr_drive_openloop

入力:なし

出力:なし

オープンループ時駆動制御

Page 36: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 36 of 64

2018. 09. 19

表 3-16 “mtr_spm_less_120.c”関数一覧[2/2]

ファイル名 関数名 処理概要

mtr_spm_less_120.c mtr_set_voltage_ref

入力:なし

出力:なし

電圧指令値の設定

mtr_set_speed_ref

入力:なし

出力:なし

速度制御用指令値の設定

mtr_measure_voltage_offset

入力:なし

出力:なし

電圧オフセット計測、及び反映処理

mtr_draw_in_signal_set

入力:なし

出力:なし

回転子引き込み時の通電パターン設定処理

mtr_set_angle_shift

入力:なし

出力:なし

・A/D コンバータによるゼロクロス検出に基づ

いたパターン設定までの遅延時間の算出

・遅延量の遅延タイマへの設定

mtr_check_pattern

入力:なし

出力:なし

A/D コンバータ検出仮想ホールパターンの正当

性判断処理

mtr_pattern_up_chopping

入力:(uint8) u1_pattern / 仮想ホールパターン

出力:なし

上アームチョッピング

mtr_measure_inductance_effect

入力:u1_crt_pattern/電流パターン

出力:u2_trx_buf /TRX カウント数

電圧上昇時間測定

mtr_detect_magnetic_pole

入力:なし

出力:なし

角度検出処理

mtr_measure_saturation_effect

入力:u1_direction/電流の方向

出力:なし

磁気飽和時電流値測定

mtr_seq_judge_polarity

入力:なし

出力:なし

極性判定

mtr_start_detect_sequence

入力:なし

出力:なし

初期位置検出シークエンス開始処理

・開始ステート設定

・エラー情報クリア

・パルス強制遮断解除処理呼び出し

mtr_seq_detect_initial_position

入力:なし

出力:なし

初期位置検出シークエンス遷移処理

Page 37: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 37 of 64

2018. 09. 19

3.3 120 度通電制御ソフト変数一覧

本制御プログラムで使用する変数一覧を次に示します。ただし、ローカル変数は記載していません。

また、本制御プログラムでは制御値を固定小数点演算で算出しているため、各値はあらかじめスケーリン

グしてから設定します。本書ではシフトする bit 数を「Qn 値」で表します。Qn では、n bit 左シフトすると

いう意味になります。以下の表では「スケール」欄に設定した Qn 値を記載しています。

表 3-17 変数一覧[1/6]

変数名 型 スケール 内容 備考

g_u2_max_speed_rpm uint16 - 速度最大値 機械角 [rpm]

g_u2_min_speed_rpm uint16 - 速度最小値 機械角 [rpm]

g_u2_margin_min_speed_rpm uint16 - モータ停止用回転速度指令最小

機械角 [rpm]

g_u2_ref_speed_rpm uint16 - 速度指令値 機械角 [rpm]

g_u1_rot_dir uint8 - ユーザ設定回転方向 0:CW

1:CCW

g_u1_motor_status uint8 - モータステータス 0:停止

1:回転中

2:エラー

g_u1_reset_req uint8 - リセット要求フラグ 0:リセット要求なし

1:リセット要求あり

g_u1_sw1_cnt uint8 - SW1 判定カウンタ チャタリング除去

g_u1_sw2_cnt uint8 - SW2 判定カウンタ チャタリング除去

g_u1_stop_req uint8 - VR1 停止指令フラグ

g_s2_sw_userif int16 - ユーザインタフェーススイッチ 0:モータ制御開発支援ツール使用

(デフォルト)

1:ボードユーザインタフェース使用

g_s2_mode_system int16 - ステート管理用変数

g_s2_enable_write int16 - 変数書き換え許可管理用変数

g_u2_speed_rpm uint16 - 現在回転数 機械角[rpm]

st_ics_input MTR_ICS

_INPUT

- GUI 通信用構造体

g_s2_v_ref int16 Q7 制御電圧指令値 速度 PI 出力値[V]

g_s2_vdc_ad int16 Q7 インバータ母線電圧 A/D 値 [V]

g_u2_pwm_duty uint16 - PWM 変調率

g_u2_ref_speed_rad uint16 Q3 回転速度指令値 電気角 [rad/s]

g_u2_adc_speed_rad uint16 Q3 A/D コンバータによる計測回転

速度値

電気角 [rad/s]

g_s2_speed_lpf_k int16 Q14 速度 LPF パラメータ

st_speed MTR_PI_

CTRL

- 速度 PI 制御用構造体

g_u2_vu_ad uint16 - U 相電圧 A/D 値

g_u2_vv_ad uint16 - V 相電圧 A/D 値

g_u2_vw_ad uint16 - W 相電圧 A/D 値

g_u2_vn_ad uint16 - 仮想中点電圧計算値

g_u2_cnt_ol_ctrl uint16 - オープンループ用カウンタ

g_u1_req_skip_set uint8 - CMP1 割り込み許可遅延設定要

求フラグ

g_u1_cnt_carrier_skip uint8 - CMP1 割り込み許可遅延設定値

g_u1_carrier_skip uint8 - CMP1 割り込み許可遅延用カウ

ンタ

Page 38: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 38 of 64

2018. 09. 19

表 3-18 変数一覧[2/6]

変数名 型 スケール 内容 備考

g_u2_cmp_signal uint16 - CMP1 判別による仮想ホールパターン

g_u2_cmp_signal_num uint16 - CMP1 判別用カウンタ

g_u2_cmp_intr_cnt; uint16 - CMP1 による速度計算開始用カウンタ

g_s2_cmp_delay_adjust; int16 - CMP1 による転極タイミング調整用

g_u2_cmp_window_delay; uint16 - CMP1 判別 TIMER WINDOW 遅延値

g_u2_cmp_window_width; uint16 - CMP1 判別 TIMER WINDOW 幅

g_u2_trx_buf_cnt; uint16 - CMP1 判別時 TRX カウンタ

g_u2_pre_trx_buf_cnt; uint16 - CMP1 判別時 TRX カウンタ前回値

g_u2_trx_cnt_diff; uint16 - CMP1 判別 TRX カウンタ差分

g_u2_trx_cnt_sum; uint16 - CPM1 判別 TRX カウンタ値 2π分

g_u2_trx_cnt_buf[6] uint16 - CMP1 判別 TRX カウンタ差分バッ

ファ

g_u2_trx_cnt_num uint16 - g_u2_trx_cnt_buf 用カウンタ

g_u2_cmp_speed_rad uint16 Q3 コンパレータ 1 による計測回転速度値 電気角 [rad/s]

g_u1_trig_enable_write uint8 - 変数書き換え許可管理用変数

g_u1_cnt_ics uint8 - GUI 通信関数呼び出し間隔カウンタ

st_ics_input_buff MTR_ICS

_INPUT

- GUI 入力変数構造体

g_u2_run_mode uint16 - 動作モード管理 0x00:Init モード

0x01:Boot モード

0x02:Drive モード

0x03:Analysis モード

0x04:Tune モード

g_u4_error_status uint32 - エラーステータス管理 0x0000:エラーなし

0x0001:過電流エラー

0x0002:過電圧エラー

0x0004:回転速度エラー

0x0008:ホールタイムアウトエラー

0x0010:誘起電圧タイムアウトエ

ラー

0x0020:ホールパターンエラー

0x0040:誘起電圧パターンエラー

0x0080:低電圧エラー

0x0100:CMP1 判別値非到達エラー

0x0200:角度推定エラー

0x0400:極性判別エラー

0x8000:未定義エラー

g_u1_mode_system uint8 - ステート管理 0x00:Inactive モード

0x01:Active モード

0x02:Error モード

g_u1_state_v_offset uint8 - 電圧オフセット処理ステート管理 0x00:無し

0x01:PWM オフ時オフセット計測

0x02:PWM オン時オフセット計測

0x03:オフセット計測終了

(オフセット値反映)

g_u1_state_draw_in uint8 - 始動時回転子引き込みステート管理 0x00:無し

0x01:引き込み 1 回目

0x02:引き込み 2 回目

0x03:引き込み終了

Page 39: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 39 of 64

2018. 09. 19

表 3-19 変数一覧[3/6]

変数名 型 スケール 内容 備考

g_u2_state_voltage_ref uint16 - 電圧設定管理 0:電圧 0

1:電圧増加

2:電圧一定

3:電圧オープンループ

4:電圧 PI 出力

g_u2_state_speed_ref uint16 - 速度設定管理 0:速度 0

1:速度オープンループ 1

2:速度オープンループ 2

3:速度オープンループ 3

4:速度変化

g_u2_sensor_conf uint16 - 使用センサ情報 0x00:センサレス

0x01:ホールセンサ

0x02:エンコーダ

0x03:レゾルバ

g_u2_method_conf uint16 - 通電制御方法情報 0x00:FOC(Field Oriented Control)

0x01:180 度通電制御

0x02:広角通電制御

0x03:120 度通電制御

g_u2_ctrl_conf uint16 - 制御対象情報 0x01:電流制御

0x02:速度制御

0x04:位置制御

0x08:トルク制御

0x10:電圧制御

g_u2_zc_detect_chg_rpm uint16 - ゼロクロス検出方法切り換え回転数

g_u2_zc_detect_method uint16 - ゼロクロス検出方法 0x00:A/D コンバータ

0x01:コンパレータ 1

g_u2_zc_cnt_speed_judge uint16 - ゼロクロス検出方法切り替え判別用

カウンタ

g_u1_cnt_speed_pi uint8 - 速度 PI 制御割り込み間引き用

カウンタ

g_u1_flg_wait_stop uint8 - モータ回転停止待ちフラグ 0x00:停止

0x01:停止待ち

g_u1_flag_charge_cap uint8 - コンデンサ蓄電完了フラグ

g_u1_flg_pictrl_change uint8 - PI 制御遷移タイミングフラグ

g_u2_speed_calc_base uint16 - 速度計算演算規定値

g_u2_ref_speed_rad_ctrl uint16 Q3 PI 制御用回転速度指令値 電気角 [rad/s]

g_s2_kp_speed int16 Q16 速度 PI 制御比例項ゲイン

g_s2_ki_speed int16 Q22 速度 PI 制御積分項ゲイン

g_s2_lim_v int16 Q7 速度 PI 制御リミット値 [V]

g_s4_ilim_v int32 Q25 速度 PI 制御積分項リミット値 [V]

g_s2_limit_speed_change int16 Q3 速度指令最大増減幅 電気角 [rad/s]

Page 40: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 40 of 64

2018. 09. 19

表 3-20 変数一覧[4/6]

変数名 型 スケール 内容 備考

g_s2_ol_freq int16 - オープンループ回転周波数管理 [Hz]

g_s2_ol_speed_rpm int16 - オープンループ回転周波数管理 機械角 [rpm]

g_u2_cnt_ol_pattern_set uint16 - オープンループ時強制転極周期設定用

カウンタ

g_u4_ol_freq_calc uint32 オープンループ回転周波数計算規定値

g_s2_ol_start_rpm int16 - オープンループ開始速度 機械角 [rpm]

g_s2_ol_mode1_change_rpm int16 - オープンループモード 1 切り替え速度 機械角 [rpm]

g_s2_ol_mode2_change_rpm int16 - オープンループモード 2 切り替え速度 機械角 [rpm]

g_s2_ol_start_refv int16 Q7 オープンループ開始電圧指令値 [V]

g_s2_ol_mode1_rate_rpm int16 - オープンループモード 1 での速度増加率 機械角 [rpm]

g_s2_ol_mode2_rate_refv int16 Q7 オープンループモード 2 での電圧増加率 [V]

g_s2_ol_mode2_rate_rpm int16 - オープンループモード 2 での速度増加率 機械角 [rpm]

g_s2_ol_mode3_rate_refv int16 Q7 オープンループモード 3 での電圧増加率 [V]

g_s2_ol_mode3_max_refv int16 Q7 オープンループモード 3 での最大電圧

(目標電圧値)

[V]

g_s2_ol_start_freq int16 - オープンループ開始周波数 [Hz]

g_s2_ol_mode1_change_freq int16 - オープンループモード 1 切り替え周波数 [Hz]

g_s2_ol_mode2_change_freq int16 - オープンループモード 2 切り替え周波数 [Hz]

g_u2_cnt_draw_in uint16 - 回転子引き込み時制御用カウンタ

g_s2_boot_ref_v int16 Q7 回転子引き込み時電圧指令値 [V]

g_u2_v_up_time uint16 - 回転子引き込み時電圧指令値加算

カウント回数

g_s2_v_up_step int16 - 回転子引き込み時電圧指令値加算値

g_u2_v_const_period uint16 - 回転子引き込み時電圧指令値一定期間 [ms]

g_u1_bemf_signal uint8 - 誘起電圧から作る A/D コンバータによる仮想

ホールパターン信号

g_u1_pre_bemf_signal uint8 - 前回の仮想ホールパターン信号

g_u1_v_pattern uint8 - 通電パターン管理

g_u1_flag_pattern_change uint8 - A/D コンバータによるゼロクロス検出フラグ

g_u2_cnt_timeout uint16 - タイムアウト検出用カウンタ

g_u1_direction uint8 - 回転方向 CW:0

CCW:1

g_u2_motor_pp uint16 - モータ極対数

g_u2_bemf_timer_cnt uint16 - フリーランタイマ計測値

g_u2_pre_bemf_timer_cnt uint16 - 前回のフリーランタイマ計測値

g_u2_timer_cnt_sum uint16 - 2π分フリーランタイマ差分値

g_u2_timer_cnt_buf[6] uint16 - フリーランタイマ差分バッファ

g_u1_timer_cnt_num uint8 - g_u2_timer_cnt_buf 用カウンタ

g_u2_bemf_delay uint16 - A/D コンバータによるゼロクロス検出からの転

極遅延値

g_s2_angle_shift_adjust int16 - パターン切り替えタイミング調整値

g_u2_cnt_carrier uint16 - 仮想パターン判別用カウンタ

g_u2_pre_cnt_carrier uint16 - 前回の仮想パターン判別用カウント値

g_u1_v_pattern_num uint8 - オープンループ時強制転極パターン管理番号

g_u2_cnt_zerocross uint16 - A/D コンバータによる速度計算開始用カウンタ

g_u1_v_pattern_open[2][7] uint8 - オープンループ時強制転極パターン配列

Page 41: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 41 of 64

2018. 09. 19

表 3-21 変数一覧[5/6]

変数名 型 スケール 内容 備考

g_u2_offset_calc_time uint16 - 電圧オフセット計測回数

g_u2_offset_calc_cnt uint16 - 電圧オフセット計測用カウンタ

g_u2_offset_vu uint16 - PWM オン時 U 相オフセット値

g_u2_offset_vv uint16 - PWM オン時 V 相オフセット値

g_u2_offset_vw uint16 - PWM オン時 W 相オフセット値

g_u2_offset_off_vu uint16 - PWM オフ時 U 相オフセット値

g_u2_offset_off_vv uint16 - PWM オフ時 V 相オフセット値

g_u2_offset_off_vw uint16 - PWM オフ時 W 相オフセット値

g_u2_sum_vu_ad uint16 - U 相電圧オフセット計測加算値

g_u2_sum_vv_ad uint16 - V 相電圧オフセット計測加算値

g_u2_sum_vw_ad uint16 - W 相電圧オフセット計測加算値

g_u4_inv_offset_calc uint32 - オフセット計算用変数 電圧オフセット計測回数

の逆数

g_ptr_delay_func VOID_FU

NC_POIN

TER

- ディレイタイマ割り込み予約処理用関数

ポインタ

g_u1_initial_position uint8 - 検出初期位置データ 0~5 で 60 度毎を表示

g_u1_max_phase uint8 - インダクタンス測定による 180 度内判定位置

g_u2_state_judge_polarity uint16 - 磁気飽和を用いた極性方向判別

ステート管理変数

g_u2_state_detection uint16 - 初期位置検出シークエンスステート変数

g_u2_sum_trx_u2v uint16 - インダクタンス測定による電圧上昇までのカウ

ンタ値総計 U→V 相通電時

g_u2_sum_trx_v2w uint16 - インダクタンス測定による電圧上昇までのカウ

ンタ値総計 V→W 相通電時

g_u2_sum_trx_w2u uint16 - インダクタンス測定による電圧上昇までのカウ

ンタ値総計 W→U 相通電時

g_u1_cmp1_vol_ref uint8 - 電圧上昇の判定値 (この値) / 255 * 5.0[V]

g_u1_measure_induct_effec

t_max_cnt

uint8 - インダクタンス測定による電圧上昇の計測回数

最大値

デフォルト:8

g_u1_inductance_effect_thsl

d

uint8 - インダクタンス測定の計測終了判定閾値 デフォルト:30

g_u2_measure_induct_effec

t_intvl

uint16 - インダクタンス測定時の寄生容量放電待ち時間 デフォルト:120

g_u1_measure_induct_effec

t_cnt

uint8 - インダクタンス測定による電圧上昇の計測回数

カウンタ

g_u2_inductance_effect_per

centage

uint16 - インダクタンス測定エラー判別閾値

g_u1_induct_effect_reach_

max_cnts

uint8 - インダクタンス測定回数最大到達フラグ

g_u1_flg_cmp1_error uint8 - CMP1 判別非到達フラグ

g_u2_sum_adc_p uint16 - 磁気飽和時シャント電流計測値総和

(positive 方向)

g_u2_sum_adc_n uint16 - 磁気飽和時シャント電流計測値総和

(negative 方向)

g_u1_saturation_effect_max

_cnt

uint8 - 磁気飽和による極性方向判別シャント電流計測

回数最大値

デフォルト:16

g_u1_saturation_effect_thsl

d

uint8 - 磁気飽和による極性方向判別終了判定閾値 デフォルト:10

g_u2_pulse_width uint16 - 極性方向判別時印加パルス幅 デフォルト:1600

Page 42: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 42 of 64

2018. 09. 19

表 3-22 変数一覧[6/6]

変数名 型 スケール 内容 備考

g_u1_saturation_effect_cnt uint8 - 磁気飽和による極性方向判別シャント電流計測

回数カウンタ

g_u2_saturation_effect_percentage uint16 - インダクタンス測定エラー判別閾値

g_u1_saturation_effect_reach_max_cnts uint8 - 磁気飽和計測回数最大到達フラグ

Page 43: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 43 of 64

2018. 09. 19

3.4 120 度通電制御ソフト構造体一覧

本制御プログラムで使用する構造体一覧を次に示します。

表 3-23 構造体一覧[1/2]

構造体 メンバ名 型 スケール 内 容 備考

MTR_PI_CTRL s2_err int16 Q3 偏差

s2_kp int16 Q16 PI 制御比例項ゲイン

s2_ki int16 Q22 PI 制御積分項ゲイン

s4_refi int32 Q7 PI 制御積分項出力値

s4_ilimit int32 Q25 PI 制御積分項リミット値

MTR_ICS_INPUT u2_ref_speed uint16 - 速度指令値 [rpm]

s2_direction int16 - 回転方向 0:CW

1:

CCW

u2_motor_pp uint16 - モータ極対数

s2_kp_speed int16 Q16 速度 PI 制御比例項ゲイン

s2_ki_speed int16 Q22 速度 PI 制御積分項ゲイン

s2_speed_lpf_k int16 Q14 速度 LPF パラメータ

s2_limit_speed_change int16 Q3 速度指令最大変更幅 [rad/s]

s2_ol_start_rpm int16 - オープンループ開始時速度 [rpm]

s2_ol_mode1_change_rpm int16 - オープンループ1切り替え速度 [rpm]

s2_ol_mode2_change_rpm int16 - オープンループ 2 切り替え速度 [rpm]

s2_ol_start_refv int16 Q7 オープンループ開始時電圧 [V]

s2_ol_mode1_rate_rpm int16 - オープンループ 1 速度加算値 [rpm]

s2_ol_mode2_rate_refv int16 Q7 オープンループ 2 電圧加算値 [V]

s2_ol_mode2_rate_rpm int16 - オープンループ 2 速度加算値 [rpm]

s2_ol_mode3_rate_refv int16 Q7 オープンループ 3 電圧加算値 [V]

s2_ol_mode3_max_refv int16 Q7 オープンループ 3 最大電圧(目標電

圧)

[V]

u2_voffset_measure_count uint16 - 電圧オフセット計測回数

s2_boot_ref_v int16 Q7 回転子引き込み時印加電圧 [V]

u2_v_up_period uint16 - 回転子引き込み時電圧加算区間

u2_v_const_period uint16 - 回転子引き込み時電圧一定区間

s2_angle_shift_adjust int16 - A/D コンバータによるゼロクロス

検出からの転極遅延量調整値

s2_cmp_delay_adjust int16 - CMP1 によるゼロクロス検出から

の転極遅延量調整値

u2_zc_detect_chg_rpm uint16 - ゼロクロス検出方法切り換え回転

数設定値

[rpm]

u1_cmp1_vol_ref uint8 - CMP1 判定電圧設定 (この

値)/255

* 5.0[V]

u1_measure_induct_effect_max_cnt uint8 - インダクタンス測定最大回数

u1_inductance_effect_thsld uint8 - インダクタンス測定終了判定閾値

Page 44: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 44 of 64

2018. 09. 19

表 3-24 構造体一覧[2/2]

構造体 メンバ名 型 スケール 内 容 備考

MTR_ICS_INPUT u2_measure_induct_effect_intvll uint16 - インダクタンス測定時の寄生容量

放電待ち時間

u1_inductance_effect_percentage uint8 - インダクタンス測定エラー判定閾

値パーセンテージ

u2_pulse_width uint16 - 極性方向判別時印加パルス幅

u1_saturation_effect_thsld uint8 - 磁気飽和による極性方向判別終了

判定閾値

u1_saturation_effect_max_cnt uint8 - 磁気飽和による極性方向判別時

シャント電流計測最大回数

u1_saturation_effect_percentage uint8 - 極性方向判別エラー判定閾値

パーセンテージ

Page 45: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 45 of 64

2018. 09. 19

3.5 120 度通電制御ソフトマクロ定義

本制御プログラムで使用するマクロ定義一覧を次に示します。

表 3-25 “motor_parameter.h”マクロ定義一覧

ファイル名 マクロ名 定義値 備考

motor_parameter.h MP_POLE_PAIRS 2 極対数

MP_MAGNETIC_FLUX 0.02159f 磁束 [Wb]

MP_RESISTANCE 6.447f 抵抗 [Ω]

MP_D_INDUCTANCE 0.0045f d 軸インダクタンス [H]

MP_Q_INDUCTANCE 0.0045f q 軸インダクタンス [H]

表 3-26 “control_parameter.h”マクロ定義一覧

ファイル名 マクロ名 定義値 備考

control_parameter.h CP_OFFSET_CALC_TIME 10000 オフセット値測定数

CP_BOOT_REF_V 5.5f * 0x80 回転子引き込み時電圧指令値[V]

スケール:Q7

CP_V_UP_TIME 180 回転子引き込み時電圧指令値加算

カウント回数

CP_V_CONST_TIME 180 回転子引き込み時電圧指令値一定時間設

定値

CP_MAX_SPEED_RPM 2650 回転速度指令最大値 (機械角) [rpm]

CP_MIN_SPEED_RPM 700 回転速度指令最小値 (機械角) [rpm]

CP_LIMIT_SPEED_CHANGE 0.3f * 0x08 速度指令値最大変更幅 (電気角)[rad/s]

スケール:Q3

CP_OL_START_RPM 200 オープンループ始動速度 (機械角)[rpm]

CP_OL_MODE1_CHANGE_RPM 400 オープンループモード 1 切り替え速度

(機械角)[rpm]

CP_OL_MODE2_CHANGE_RPM 950 オープンループモード 2 切り替え速度

(機械角)[rpm]

CP_OL_START_REFV 6.0f * 0x80 オープンループ始動電圧[V]

スケール:Q7

CP_OL_MODE1_RATE_RPM 12 オープンループモード1での速度増加率

[rpm/control period]

CP_OL_MODE2_RATE_REFV 0.012f * 0x80 オープンループモード 2 での電圧増加率

[V/control period] スケール:Q7

CP_OL_MODE2_RATE_RPM 10 オープンループモード 2 での速度増加率

[rpm/control period]

CP_OL_MODE3_RATE_REFV 0.025f * 0x80 オープンループモード 3 での電圧増加率

[V/control period] スケール:Q7

CP_OL_MODE3_MAX_REFV 6.50f * 0x80 オープンループモード目標最大電圧[V]

スケール:Q7

CP_SPEED_PI_KP 0.018f * 0x10000 速度 PI 比例ゲイン スケール:Q16

CP_SPEED_PI_KI 0.0006f * 0x400000 速度 PI 積分ゲイン スケール:Q22

CP_SPEED_LPF_K 1.00f * 0x4000 速度用 LPF パラメータ スケール:Q14

Page 46: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 46 of 64

2018. 09. 19

表 3-27 “main.h”マクロ定義一覧[1/2]

ファイル名 マクロ名 定義値 備考

main.h ICS_UI 0 モータ制御開発支援ツールモード

BOARD_UI 1 ボード UI モード

M_CW 0 ユーザ回転方向設定値:CW

M_CCW 1 ユーザ回転方向設定値:CCW

VOFFSET_MEASURE_CNT CP_OFFSET_CALC_TIME オフセット値計測回数設定値

BOOT_REF_V CP_BOOT_REF_V 回転子引き込み時電圧指令値[V]

スケール:Q7

V_UP_PERIOD CP_V_UP_TIME 回転子引き込み時電圧指令値加算

カウント回数

V_CONST_PERIOD CP_V_CONST_TIME 回転子引き込み時電圧指令値一定時間設定値

MAX_SPEED CP_MAX_SPEED_RPM 回転速度指令最大値 (機械角) [rpm]

MIN_SPEED CP_MIN_SPEED_RPM 回転速度指令最小値 (機械角) [rpm]

MARGIN_SPEED 50 停止用回転速度指令最小値作成用定数

(機械角) [rpm]

MARGIN_MIN_SPEED MIN_SPEED - MARGIN_SPEED モータ停止用回転速度指令最小値

(機械角) [rpm]

OL_START_RPM CP_OL_START_RPM オープンループ始動速度 (機械角)[rpm]

OL_MODE1_CHANGE_RPM CP_OL_MODE1_CHANGE_RPM オープンループモード 1 切り替え速度

(機械角)[rpm]

OL_MODE2_CHANGE_RPM CP_OL_MODE2_CHANGE_RPM オープンループモード 2 切り替え速度

(機械角)[rpm]

OL_START_REFV (int16)CP_OL_START_REFV オープンループ始動電圧[V] スケール:Q7

OL_MODE1_RATE_RPM CP_OL_MODE1_RATE_RPM オープンループモード 1 での速度増加率

[rpm/control period]

OL_MODE2_RATE_REFV (int16)CP_OL_MODE2_RATE_RE

FV

オープンループモード 2 での電圧増加率

[V/control period] スケール:Q7

OL_MODE2_RATE_RPM CP_OL_MODE2_RATE_RPM オープンループモード 2 での速度増加率

[rpm/control period]

OL_MODE3_RATE_REFV (int16)CP_OL_MODE3_RATE_RE

FV

オープンループモード 3 での電圧増加率

[V/control period] スケール:Q7

OL_MODE3_MAX_REFV (int16)CP_OL_MODE3_MAX_RE

FV

オープンループモード 3 での最大電圧[V]

スケール:Q7

LIMIT_SPEED_CHANGE CP_ LIMIT_SPEED_CHANGE スタートモード時の速度最大変更幅

(電気角)[rad/s] スケール:Q3

SPEED_PI_KP (int16)CP_SPEED_PI_KP 速度 PI 比例ゲイン スケール:Q16

SPEED_PI_KI (int16)CP_SPEED_PI_KI 速度 PI 積分ゲイン スケール:Q22

SPEED_LPF_K (int16)CP_SPEED_LPF_K 速度 LPF パラメータ スケール:Q14

SW_ON 0 “Low”アクティブ

SW_OFF 1

CHATTERING_CNT 10 チャタリング除去

VR1_SCALING (MAX_SPEED + 500) / 0x200 速度指令値作成用定数

ADJUST_OFFSET 0x01FF 速度指令値オフセット調整用定数

POLE_PAIRS MP_POLE_PAIRS 極対数

REQ_CLR 0 VR1 停止指令フラグクリア

REQ_SET 1 VR1 停止指令フラグセット

Page 47: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 47 of 64

2018. 09. 19

表 3-28 “main.h”マクロ定義一覧[2/2]

ファイル名 マクロ名 定義値 備考

main.h ICS_ADDR 0xFE00 ICS 用アドレス設定

ICS_INT_LEVEL 2 ICS 用割り込みレベル設定

ICS_NUM CA 0x50 ICS 通信データサイズ

CC-RL 0x40

ICS_BRR 15 ICS ビットレートレジスタ選択(CC-RL のみ)

ICS_INT_MODE 0 ICS 割り込みモード設定(CC-RL のみ)

表 3-29 “mtr_ctrl_rl78g1f.h”マクロ定義一覧

ファイル名 マクロ名 定義値 備考 mtr_ctrl_rl78g1f.h PARITYCTL_BIT CA RPECTL.7 RAM パリティエラー判別許可

ビット設定 CC-RL RPECTL_bit.no7

MTR_TAU_TIMER_UP 0x20 CMP1 TIMER WINDOW 開始

Up 選択

MTR_TAU_TIMER_UN 0x40 CMP1 TIMER WINDOW 開始

Un 選択

MTR_TAU_TIMER_VP 0x60 CMP1 TIMER WINDOW 開始

Vp 選択

MTR_TAU_TIMER_VN 0x80 CMP1 TIMER WINDOW 開始

Vn 選択

MTR_TAU_TIMER_WP 0xA0 CMP1 TIMER WINDOW 開始

Wp 選択

MTR_TAU_TIMER_WN 0xC0 CMP1 TIMER WINDOW 開始

Wn 選択

MTR_INPUT_SELECT_VN 0 CMP1 入力中点電圧選択

MTR_INPUT_SELECT_VU 1 CMP1 入力 U 相電圧選択

MTR_INPUT_SELECT_VV 2 CMP1 入力 V 相電圧選択

MTR_INPUT_SELECT_VW 3 CMP1 入力 W 相電圧選択

MTR_INPUT_SELECT_UP_EDGE 0 CMP1 判別立ち上がりエッジ選択

MTR_INPUT_SELECT_DOWN_EDGE 1 CMP1 判別立ち下がりエッジ選択

MTR_OC_USE_INTP 1 過電流検出外部回路選択

(デフォルト)

MTR_OC_USE_PGACMP0 0 過電流検出内蔵 PGA+CMP0 選択

MTR_OC_LIMIT 2 過電流検出閾値[A]

MTR_OC_DETECT_REF (uint8)(2.0f+(0.18f*MTR_OVER_

CURRENT_LIMIT))*(255/5)

過電流検出閾値変換値

表 3-30 “mtr_ctrl_rl78g1f_mrssk.h”マクロ定義一覧

Page 48: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 48 of 64

2018. 09. 19

ファイル名 マクロ名 定義値 備考

mtr_ctrl_rl78g

1f_mrssk.h

MTR_PWM_TIMER_FREQ 32.0f PWM タイマカウント周波数 [MHz]

MTR_CARRIER_FREQ 20.0f キャリア周波数 [kHz]

MTR_DEADTIME 2000 デッドタイム[ns]

MTR_DEADTIME_SET (int16)(MTR_DEADTIME *

MTR_PWM_TIMER_FREQ / 1000)

デッドタイム設定値

MTR_CARRIER_SET (MTR_PWM_TIMER_FREQ * 1000 /

MTR_CARRIER_FREQ / 2) +

MTR_DEADTIME_SET - 2

キャリア設定値

MTR_HALF_CARRIER_SE

T

MTR_CARRIER_SET / 2 キャリア設定値(中間値)

MTR_NDT_CARRIER_SET MTR_CARRIER_SET -

MTR_DEADTIME_SET

キャリア周波数からデットタイムを

引いた値

MTR_PORT_UP

CA

P1.5

CC

P1_bit.no5 U 相(正相)出力ポート

MTR_PORT_UN P1.4 P1_bit.no4 U 相(逆相)出力ポート

MTR_PORT_VP P1.3 P1_bit.no3 V 相(正相)出力ポート

MTR_PORT_VN P1.1 P1_bit.no1 V 相(逆相)出力ポート

MTR_PORT_WP P1.2 P1_bit.no2 W 相(正相)出力ポート

MTR_PORT_WN P1.0 P1_bit.no0 W 相(逆相)出力ポート

MTR_PORT_SW1 P0.5 P0_bit.no5 SW1 入力ポート

MTR_PORT_SW2 P0.6 P0_bit.no6 SW2 入力ポート

MTR_PORT_LED1 P14.1 P14_bit.no1 LED1 出力ポート

MTR_PORT_LED2 P14.0 P14_bit.no0 LED2 出力ポート

MTR_PORT_LED3 P0.4. P0_bit.no4 LED3 出力ポート

MTR_LED_ON 0 “Low”アクティブ

MTR_LED_OFF 1

MTR_INPUT_V (int16)24 * 0x80 インバータ直流入力電圧

スケール:Q7

MTR_MCU_ON_V (int16)MTR_INPUT_V * 0.8 母線電圧(VDC)安定電圧

MTR_VDC_SCALING 3555 インバータ母線電圧 A/D 変換比

MTR_RECIVDC_SCALING 64 母線電圧計算値(逆数)

MTR_OVERVOLTAGE_LIMI

T

(int16) 28 * 0x80 過電圧エラー判定値 [V]

スケール:Q7

MTR_UNDERVOLTAGE_LI

MIT

(int16) 15 * 0x80 低電圧エラー判定値 [V]

スケール:Q7

MTR_TRX_CNT TRX A/D による速度計測用

タイマカウントレジスタ

MTR_TRXBUF_CNT TRXBUF CMP1 による速度計測用

タイマカウントレジスタ

MTR_ADCCH_VR1 6 A/D チャネル VR1

MTR_ADCCH_VDC 4 A/D チャネル 母線電圧

MTR_ADCCH_VU 16 A/D チャネル U 相電圧

MTR_ADCCH_VV 0 A/D チャネル V 相電圧

MTR_ADCCH_VW 1 A/D チャネル W 相電圧

MTR_ADCCH_VN 17 A/D チャネル 中点電圧

MTR_ADDCH_IDC 25 A/D チャネル 過電流検出

MTR_OC_HW_FLG TRDSHUTS PWM 強制遮断フラグビット

MTR_OC_INTR_MASK PMK0 INTP0 割込みマスクフラグ

MTR_DISABLE_OC_INTR 1 INTP0 割込み禁止

MTR_ENABLE_OC_INTR 0 INTP0 割込み許可

Page 49: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 49 of 64

2018. 09. 19

表 3-31 “mtr_spm_less_120.h”マクロ定義一覧[1/6]

ファイル名 マクロ名 定義値 備考

mtr_spm_less

_120.h

MTR_POLE_PAIRS MP_POLE_PAIRS 極対数

MTR_TWOPI 2 * 3.14159265f 2π

MTR_RPM_RAD 13726 [rpm]→[rad/s]単位変換用定数

MTR_RAD_RPM 4889 [rad/s]→[rpm]単位変換用定数

MTR_USE_IPD 1 初期位置検出機能

0:使用しない, 1:使用する

MTR_SPEED_LIMIT_RPM 3300 速度リミット値 (機械角) [rpm]

MTR_SPEED_LIMIT MTR_SPEED_LIMIT_RPM

* MTR_TWOPI / 60

速度リミット値 (電気角) [rad/s]

MTR_SPEED_PI_DECIMATION 0 速度 PI 制御用割り込み間引き数

MTR_SPEED_PI_KP (int16)CP_SPEED_PI_KP 比例ゲイン スケール:Q16

MTR_SPEED_PI_KI (int16)CP_SPEED_PI_KI 積分ゲイン スケール:Q22

MTR_SPEED_PI_LIMIT_V 24 * 0x80 電圧 PI 制御積分項リミット値 [V]

スケール:Q7

MTR_SPEED_PI_I_LIMIT_V 24 * 0x80 * 0x40000 電圧 PI 制御微分項リミット値 [V]

スケール:Q25

MTR_SPEED_CALC_BASE 767 回転速度計測用カウンタ値の

速度[rad/s]への変換用定数

MTR_CNT_ADC_START_CALC 18 A/D コンバータによる速度計算開始

待ち用カウント数

MTR_CNT_CMP_START_CALC 18 CMP1 による速度計算開始待ち用

カウント数

MTR_SPEED_LPF_K (int16)CP_SPEED_LPF_K 速度用 LPF パラメータ

スケール:Q14

MTR_LIMIT_SPEED_CHANGE CP_LIMIT_SPEED_CHANGE 指令速度最大変更幅

(電気角)[rad/s] スケール:Q3

MTR_ZC_DETECT_CHANGE_RPM 2000 ゼロクロス検出方式切り替え回転速

度 (機械角)[rpm]

MTR_ZC_CHANGE_JUDGE_CNT 200 ゼロクロス検出方式切り替え判定時

間[ms]

MTR_ZC_CHANGE_MARGIN 50 ゼロクロス検出方式切り替え回転速

度マージン (機械角)[rpm]

MTR_MAX_DRIVE_V (int16)22 * 0x80 最大指令電圧 [V] スケール:Q7

MTR_MIN_DRIVE_V (int16)0.10f * 0x80 最小指令電圧 [V] スケール:Q7

MTR_MAX_BOOT_V 8.0f * 0x80 BOOT モード最大指令値[V]

スケール:Q7

MTR_TIMEOUT_CNT 50 停止判定時間カウンタ[ms]

MTR_TIME_WAIT_STOP 200 モータ停止判断用カウント

MTR_STOP_BEMF 61 センサレス駆動停止判定電圧値

Page 50: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 50 of 64

2018. 09. 19

表 3-32 “mtr_spm_less_120.h”マクロ定義一覧[2/6]

ファイル名 マクロ名 定義値 備考

mtr_spm_less

_120.h

MTR_OL_CTRL_PERIOD 15 オープンループ制御周期[ms]

MTR_OL_START_RPM CP_OL_START_RPM 始動速度 (機械角)[rpm]

MTR_OL_MODE1_CHANGE_RPM CP_OL_MODE1_CHANGE_RPM オープンループモード 1 切り替え

速度 (機械角)[rpm]

MTR_OL_MODE2_CHANGE_RPM CP_OL_MODE2_CHANGE_RPM オープンループモード 2 切り替え

速度 (機械角)[rpm]

MTR_OL_START_REFV (int16)CP_OL_START_REFV 始動電圧[V] スケール:Q7

MTR_OL_MODE1_RATE_RPM CP_OL_MODE1_RATE_RPM オープンループモード 1 での速度

増加率[rpm/control period]

MTR_OL_MODE2_RATE_REFV (int16)CP_OL_MODE2_RATE_REFV オープンループモード 2 での電圧

増加率[V/control period]

スケール:Q7

MTR_OL_MODE2_RATE_RPM CP_OL_MODE2_RATE_RPM オープンループモード 2 での速度

増加率[rpm/control period]

MTR_OL_MODE3_RATE_REFV (int16)CP_OL_MODE3_RATE_REFV オープンループモード 3 での電圧

増加率[V/control period]

スケール:Q7

MTR_OL_MODE3_MAX_REFV (int16)CP_OL_MODE3_MAX_REFV オープンループモード 3 での最大

電圧[V] スケール:Q7

MTR_OL_FREQ_CALC MTR_CARRIER_FREQ * 60000/6 [rpm]→[Hz]変換用定義値

MTR_OL_START_FREQ (int16)MTR_OL_FREQ_CALC

/MTR_OL_START_RPM

始動周波数[Hz]

MTR_OL_MODE1_CHANGE_FREQ (int16)MTR_OL_FREQ_CALC

/MTR_OL_MODE1_CHANGE_RPM

オープンループモード 1 切り替え

速度[Hz]

MTR_OL_MODE2_CHANGE_FREQ (int16)MTR_OL_FREQ_CALC

/MTR_OL_MODE2_CHANGE_RPM

オープンループモード 2 切り替え

速度[Hz]

MTR_DELAY_VALUE_MIN 20 ゼロクロス検出からの転極遅延量

最小値

MTR_CMP_DELAY_ADJUST 50 CMP1 ゼロクロス検出からの転極

遅延量調整値

MTR_CARRIER_SKIP_CNT 3 転極からの CMP1 割り込み許可

遅延量

CMP1_WINDOW_DELAY_OFFSET 96U CMP1 TIMER WINDOW 遅延量

CMP1_WINDOW_PULL_IN_OFFSET 96U CMP1 TIMER WINDOW 補正量

MIN_CMP1_WINDOW_WIDTH 134U CMP1 TIMER WINDOW 最小幅

MAX_CMP1_WINDOW_WIDTH 2930U CMP1 TIMER WINDOW 最大幅

Page 51: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 51 of 64

2018. 09. 19

表 3-33 “mtr_spm_less_120.h”マクロ定義一覧[3/6]

ファイル名 マクロ名 定義値 備考

mtr_spm_less_120.h MTR_PATTERN_CW_V_U 3 CW 仮想ホールセンサパターン

MTR_PATTERN_CW_W_U 1

MTR_PATTERN_CW_W_V 5

MTR_PATTERN_CW_U_V 4

MTR_PATTERN_CW_U_W 6

MTR_PATTERN_CW_V_W 2

MTR_PATTERN_CCW_V_U 2 CCW 仮想ホールセンサパターン

MTR_PATTERN_CCW_V_W 6

MTR_PATTERN_CCW_U_W 4

MTR_PATTERN_CCW_U_V 5

MTR_PATTERN_CCW_W_V 1

MTR_PATTERN_CCW_W_U 3

MTR_PATTERN_ERROR 0 通電パターン

MTR_UP_PWM_VN_ON 1

MTR_UP_PWM_WN_ON 2

MTR_VP_PWM_UN_ON 3

MTR_VP_PWM_WN_ON 4

MTR_WP_PWM_UN_ON 5

MTR_WP_PWM_VN_ON 6

MTR_UP_ON_VN_PWM 7

MTR_UP_ON_WN_PWM 8

MTR_VP_ON_UN_PWM 9

MTR_VP_ON_WN_PWM 10

MTR_WP_ON_UN_PWM 11

MTR_WP_ON_VN_PWM 12

MTR_U_PWM_VN_ON 13

MTR_U_PWM_WN_ON 14

MTR_V_PWM_UN_ON 15

MTR_V_PWM_WN_ON 16

MTR_W_PWM_UN_ON 17

MTR_W_PWM_VN_ON 18

MTR_UP_ON_V_PWM 19

MTR_UP_ON_W_PWM 20

MTR_VP_ON_U_PWM 21

MTR_VP_ON_W_PWM 22

MTR_WP_ON_U_PWM 23

MTR_WP_ON_V_PWM 24

MTR_OFFSET_CALC_TIME CP_OFFSET_CALC_TIME オフセット値計算カウント回数

Page 52: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 52 of 64

2018. 09. 19

表 3-34 “mtr_spm_less_120.h”マクロ定義一覧[4/6]

ファイル名 マクロ名 定義値 備考 mtr_spm_less_120.h MTR_BOOT_REF_V CP_BOOT_REF_V 回転子引き込み時電圧指令値[V]

スケール:Q7

MTR_V_UP_PERIOD CP_V_UP_TIME 回転子引き込み時電圧指令値加算期間

MTR_V_UP_STEP MTR_BOOT_REF_V/MTR_

V_UP_PERIOD

回転子引き込み時電圧加算ステップ

MTR_V_CONST_TIME CP_V_CONST_TIME 回転子引き込み時電圧一定期間

MTR_CW 0 回転方向

MTR_CCW 1

MTR_FLG_CLR 0 フラグ管理

MTR_FLG_SET 1

MTR_ICS_DECIMATION 4 GUI 通信用関数呼び出し間引き数

MTR_MEASURE_RX_U2V 1 インダクタンス測定時の電圧印加パター

ン MTR_MEASURE_RX_V2W 2

MTR_MEASURE_RX_W2U 3

MTR_PHASE_UNDETECT 0 インダクタンス測定による 60 度毎位置

判定値

0 は未測定

MTR_PHASE_U2V 1

MTR_PHASE_V2W 2

MTR_PHASE_W2U 3

MTR_TRX_OVER_COUNTS 3000 電圧上昇計測時の TRX カウンタ制限値

MTR_CMP1_VOL_REF 110 電圧上昇判定設定値(CMP1 リファレン

ス)

デフォルト値

MTR_MEASURE_IE_THSLD 30 インダクタンス測定終了判定閾値デフォ

ルト値

MTR_MEASURE_IE_INTERVAL 300 インダクタンス測定時の寄生容量放電待

ち時間

デフォルト値

MTR_MEASURE_IE_MAX_COUN

TS

8 インダクタンス測定回数最大値デフォル

ト値

MTR_MEASURE_IE_PERCENTA

GE

30 インダクタンス測定エラー判定閾値

パーセンテージデフォルト値

MTR_MEASURE_SATURATION_

POSITIVE

1 磁気飽和を用いた極性方向判別時の電圧

印加

パターン MTR_MEASURE_SATURATION_

NEGATIVE

0

MTR_MEASURE_SAT_PULSE_

WIDTH

1600 極性方向判別時印加パルス幅デフォルト

MTR_MEASURE_SAT_THSLD 10 磁気飽和による極性方向判別終了判定閾

デフォルト値

MTR_MEASURE_SAT_MAX_CO

UNTS

16 極性方向判別計測回数最大値デフォルト

MTR_MEASURE_SAT_PERCEN

TAGE

30 極性方向判エラー判定閾値パーセンテー

デフォルト値

MTR_CORRECT_POSITION 3 極性方向判別による判定ポジション補正

MTR_ERROR_POSITION 10 極性方向判別による判定ポジションエ

ラー設定値

Page 53: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 53 of 64

2018. 09. 19

表 3-35 “mtr_spm_less_120.h”マクロ定義一覧[5/6]

ファイル名 マクロ名 定義値 備考 mtr_spm_less_120.h MTR_STATE_NONE 0 初期位置検出シークエンス ステート定

0:非動作

1:検出開始

2:角度推定待ち

3:極性判別開始

4:極性判別中

5:検出終了

MTR_STATE_START_DETECTIO

N

1

MTR_STATE_WAIT_DETECT_M

AGNETIC_POLE

2

MTR_STATE_START_JUDGE_P

OLARITY

3

MTR_STATE_JUDGE_POLARITY 4

MTR_STATE_DETECTION_FINIS

H

5

MTR_STATE_JUDGE_POLARITY

_NONE

0 極性判別シークエンス ステート定義

0:非動作

1:正方向測定

2:負方向測定&結果判別

MTR_STATE_JUDGE_POLARITY

_POSITIVE

1

MTR_STATE_JUDGE_POLARITY

_NEGATIVE

2

MTR_MODE_INACTIVE 0x00 非アクティブモード

MTR_MODE_ACTIVE 0x01 アクティブモード

MTR_MODE_ERROR 0x02 エラーモード

MTR_SIZE_STATE 3 定義済み状態数

MTR_EVENT_INACTIVE 0x00 非アクティブイベント

MTR_EVENT_ACTIVE 0x01 アクティブイベント

MTR_EVENT_ERROR 0x02 エラーイベント

MTR_EVENT_RESET 0x03 イベントリセット

MTR_SIZE_EVENT 4 定義済みイベント数

MTR_MODE_INIT 0x00 Initialize モード

MTR_MODE_BOOT 0x01 Boot モード

MTR_MODE_DRIVE 0x02 Drive モード

MTR_MODE_ANALYSIS 0x03 Analisys モード

MTR_MODE_TUNE 0x04 Tune モード

MTR_SENSOR_LESS 0x01 センサレス

MTR_SENSOR_HALL 0x02 ホールセンサ

MTR_SENSOR_ENCD 0x04 エンコーダ

MTR_SENSOR_RESO 0x08 レゾルバ

MTR_METHOD_FOC 0x00 ベクトル制御

MTR_METHOD_180 0x01 180 度通電制御

MTR_METHOD_WIDE 0x02 広角通電制御

MTR_METHOD_120 0x03 120 度通電制御

MTR_CONTROL_CURRENT 0x01 電流制御

MTR_CONTROL_SPEED 0x02 速度制御

MTR_CONTROL_POSITION 0x04 位置制御

MTR_CONTROL_TORQUE 0x08 トルク制御

MTR_CONTROL_VOLTAGE 0x10 電圧制御

Page 54: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 54 of 64

2018. 09. 19

表 3-36 “mtr_spm_less_120.h”マクロ定義一覧[6/6]

ファイル名 マクロ名 定義値 備考 mtr_spm_less_120.h MTR_ERROR_NONE 0x00 エラーなし

MTR_ERROR_OVER_CURRENT 0x0001 過電流エラー

MTR_ERROR_OVER_VOLTAGE 0x0002 過電圧エラー

MTR_ERROR_OVER_SPEED 0x0004 過速度エラー

MTR_ERROR_HALL_TIMEOUT 0x0008 ホールタイムアウトエラー

MTR_ERROR_BEMF_TIMEOUT 0x0010 誘起電圧タイムアウトエラー

MTR_ERROR_HALL_PATTERN 0x0020 ホールパターンエラー

MTR_ERROR_BEMF_PATTERN 0x0040 誘起電圧パターンエラー

MTR_ERROR_UNDER_VOLTAGE 0x0080 低電圧エラー

MTR_ERROR_DETECT_MAGNETIC_POLE 0x0100 CMP1 判別値非到達エラー

MTR_ERROR_JUDGE_POLARITY 0x0200 角度推定エラー

MTR_ERROR_OVER_CURRENT 0x0400 極性判別エラー

MTR_ERROR_UNKNOWN 0x8000 未定義エラー

MTR_DRAW_IN_NONE 0 回転子引き込み非動作

MTR_DRAW_IN_1ST 1 回転子引き込み 1 回目

MTR_DRAW_IN_2ND 2 回転子引き込み 2 回目

MTR_DRAW_IN_FINISH 3 回転子引き込み終了

MTR_V_ZERO_CONST 0 電圧 0

MTR_V_UP 1 電圧上昇

MTR_V_CONST 2 電圧一定

MTR_V_OPENLOOP 3 電圧オープンループ

MTR_V_PI_OUTPUT 4 電圧 PI 出力

MTR_SPEED_ZERO_CONST 0 速度 0

MTR_SPEED_OPENLOOP_1 1 オープンループ 1

MTR_SPEED_OPENLOOP_2 2 オープンループ 2

MTR_SPEED_OPENLOOP_3 3 オープンループ 3

MTR_SPEED_CHANGE 4 速度変化

MTR_ZC_USE_ADC 0 A/D コンバータによるゼロクロス検出

MTR_ZC_USE_CMP1 1 CMP1 によるゼロクロス検出

MTR_VOFFSET_STATUS_NONE 0 電圧オフセット非動作

MTR_VOFFSET_STATUS_MEASURE_OFF 1 ドライブオフでの電圧オフセット計測

MTR_VOFFSET_STATUS_MEASURE_ON 2 ドライブオンでの電圧オフセット計測

MTR_VOFFSET_STATUS_FINISH 3 電圧オフセット計測終了

Page 55: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 55 of 64

2018. 09. 19

3.6 制御フロー(フローチャート)

3.6.1 メイン処理

メイン処理

周辺機能の初期化

ユーザインタフェース

の初期化

メイン使用変数の初期化

シーケンス処理の初期化

ICSの初期化

母線電圧の安定待ち

UI?[Board]

[ICS]

リセット処理

各種パラメータ入力

com_s2_mode_systemの値から

モータの動作モード変更

LED制御

回転速度指令値の設定

SWの状態から

モータの動作モードを変更

LED制御

回転速度決定

ウォッチドッグタイマクリア

図 3-16 メイン処理フローチャート

Page 56: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 56 of 64

2018. 09. 19

3.6.2 キャリア周期割り込み処理

mtr_carrier_interrupt()

システムモード

PI 制御初期設定

終了

[ACTIVE]

[INACTIVE]

[NO]

[YES]

[YES]

[No]

[NO]

[YES]

三相電圧の取得(A/D)

母線電圧Vdcの取得(A/D)

MTR_SPEED_OPENLOOP_2 ≦ g_u2_state_speed_ref

[MODE2以降]

A/Dコンバータによるゼロクロス判別

ゼロクロス検出

印加電圧遅延時間計算

速度計算

[MODE1以前]

PI 制御遷移

中間点電圧の生成

コンパレータ割り込み有効

コンパレータ入力切替

TAU0スタート

コンパレータ(CMP1) TIMER WINDOW設定

TIMER WINDOW 幅、遅延量計

オープンループ制御

オープンループ駆動処理

開発支援ツールの通信処理

変数の更新

出力強制遮断復帰処理   注

図 3-17 50 [μs]周期割り込み処理フローチャート(センサレス 120 度制御時)

【注】出力強制遮断復帰処理は過電流検出を PGA+CMP0 にて行う場合のみ動作します。

Page 57: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 57 of 64

2018. 09. 19

3.6.3 1 [ms]割り込み処理

mtr_1ms_interrupt()

引き込みパターン設定

RUNモードにDRIVE MODEを設定

[INACTIVE]初期位置検出機能有効?

電源オフセット設定完了

初期位置検出?

g_u2_run_mode

引き込み完了

速度指令モード

PI制御実施中

RUNモードにBOOT MODEを設定

ゼロクロス検出方法の切り替え

RUNモードにDRIVE MODEを設定

終了

PMM Duty値の生成

PMM Duty値の生成

指令電圧設定指令速度設定

指令電圧設定 指令速度設定

エラーチェック

回転停止判断

駆動用初期化処理駆動用初期化処理 初期位置検出処理

[ACTIVE]

[INACTIVE]

[ACTIVE]

[検出]

[未検出]

[YES]

[NO]

[オープンループ制御]

[PI制御]

[オープンループ制御]

[PI制御]

[MTR_MODE_DRIVE]

[MTR_MODE_BOOT]

[MTR_MODE_INT]

[未了]

[完了]

システムモード

図 3-18 1 [ms]割り込み処理フローチャート

3.6.4 過電流割り込み処理

過電流検出割り込み

終了

エラーイベント処理

INTP0割り込み禁止

過電流エラーフラグ設定

図 3-19 過電流検出割り込み処理フローチャート

Page 58: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 58 of 64

2018. 09. 19

3.6.5 コンパレータ1割り込み処理

コンパレータ1割り込み

コンパレータ1割り込み禁止

回転速度計算開始用カウンタ加算

TRXカウンタ値取り込み

前回値との差分計算

コンパレータ1による

ゼロクロス検出?

転極用遅延設定

コンパレータ1による速度計算

仮想ホールパターン生成

終了

[NO]

[YES]

図 3-20 コンパレータ1割り込み処理フローチャート

Page 59: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 59 of 64

2018. 09. 19

3.6.6 ディレイ割り込み処理

図 3-21 ディレイ割り込みフローチャート

Page 60: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 60 of 64

2018. 09. 19

4. モータ制御開発支援ツール「Renesas Motor Workbench」

4.1 概要

本アプリケーションノート対象サンプルプログラムでは、モータ制御開発支援ツール「Renesas Motor

Workbench」をユーザインタフェース(回転/停止指令、回転速度指令等)として使用します。使用方法などの

詳細は「Renesas Motor Workbench V.1.00 ユーザーズマニュアル」を参照してください。

モータ制御開発支援ツール「Renesas Motor Workbench」は弊社 WEB サイトより入手してください。

図 4-1 Renesas Motor Workbench 外観

モータ制御開発支援ツール「Renesas Motor Workbench」の使い方

①ツールアイコン をクリックしツールを起動する。

②Main Window の MENU バーから、[File] → [Open RMT File(O)]を選択。

サンプルソフトフォルダの”ics”フォルダ内にある RMT ファイルを読み込む。

③”Connection”の COM で接続されたキットの COM を選択する。

④右側の Select Tool の Analyzer ボタンをクリックし、Analyzer 機能を起動する。

(起動すると Analyzer Window 画面に切り替わります。)

⑤”4.3 Analyzer 操作例”を元にモータを駆動させる。

Main Window

Analyzer Window

Control Window

Scope Window

Page 61: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 61 of 64

2018. 09. 19

4.2 Analyzer 機能用変数一覧

Analyzer ユーザインタフェース使用時の入力用変数一覧を

表 4-1 に示します。

なお、これらの変数の値は com_s2_enable_write に g_s2_enable_write と同じ値を書き込んだ場合に反映先

変数へ反映されます。ただし、(*)が付けられた変数は com_s2_enable_write に依存しません。

また、本制御プログラムでは制御値を固定小数点演算で算出しているため、各値はあらかじめスケーリング

してから設定します。本書ではシフトする bit 数を「Qn 値」で表します。Qn では、n bit 左シフトするという

意味になります。以下の表では「スケール」欄に設定した Qn 値を記載しています。

スケーリングされた値を参照する場合は、Control Window 上で同じ Qn 値を選択することで、スケーリング

前の値を表示することができます。

表 4-1 Analyzer 機能入力用変数一覧[1/2]

Analyzer 機能入力用変数名 型 スケール 内容 備考

(【】:反映先変数)

com_s2_sw_userif (*) int16 Q0 ユーザインタフェーススイッチ

0:Analyzer 使用(デフォルト)

1:ボード使用

【g_s2_sw_userif】

com_s2_mode_system(*) int16 Q0 ステート管理 0:INACTIVE モード

1:ACTIVE モード

3:リセット

【g_s2_mode_system】

com_s2_direction int16 Q0 回転方向 0:CW

1:CCW

【g_u1_direction】

com_u2_ref_speed_rpm uint16 Q0 速度指令値 (機械角)[rpm] 【g_u2_ref_speed_rad】

com_u2_mortor_pp uint16 Q0 モータの極対数 【g_u2_mortor_pp】

com_s2_kp_speed int16 Q16 速度 PI 制御比例項ゲイン 【g_s2_kp_speed】

com_s2_ki_speed int16 Q22 速度 PI 制御積分項ゲイン 【g_s2_ki_speed】

com_s2_speed_lpf_k int16 Q14 速度 LPF パラメータ 【g_s2_speed_lpf_k】

com_s2_limit_speed_change int16 Q3 指令速度最大変更幅 (電気角)[rad/s] 【g_s2_limit_speed_change】

com_s2_ol_start_rpm int16 Q0 起動速度 【g_s2_ol_start_rpm】

com _s2_ol_mode1_change_rpm int16 Q0 モード1切り替え速度 【g_s2_ol_mode1_change_rpm】

com _s2_ol_mode2_change_rpm int16 Q0 モード 2 切り替え速度 【g_s2_ol_mode2_change_rpm】

com _s2_ol_start_refv int16 Q7 始動電圧 【g_s2_ol_start_refv】

com _s2_ol_mode1_rate_rpm int16 Q0 モード1での速度増加率 【g_s2_ol_mode1_rate_rpm】

com _s2_ol_mode2_rate_refv int16 Q7 モード2での電圧増加率 【g_s2_ol_mode2_rate_refv】

com _s2_ol_mode2_rate_rpm int16 Q0 モード2での速度増加率 【g_s2_ol_mode2_rate_rpm】

com _s2_ol_mode3_rate_refv int16 Q7 モード3での電圧増加率 【g_s2_ol_mode3_rate_refv】

com _s2_ol_mode3_max_refv int16 Q7 モード3での最大電圧 【g_s2_ol_mode3_max_refv】

com_u2_voffset_measure_count uint16 Q0 オフセット値計算カウント回数 【g_u2_offset_calc_time】

com_s2_boot_ref_v int16 Q7 回転子引き込み時電圧指令値 【g_s2_boot_ref_v】

com_u2_v_up_period uint16 Q0 電圧指令値加算カウント回数 【g_s2_v_up_step】

com_u2_v_const_period uint16 Q0 電圧指令値一定カウント回数 【g_u2_v_const_period】

com_s2_angle_shift_adjust int16 Q0 A/D コンバータによる転極タイミング

遅延量調整値

【g_s2_angle_shift_adjust】

com_s2_cmp_delay_adjust int16 Q0 CMP1 による転極タイミング遅延量調

整値

【g_s2_cmp_delay_adjust】

com_u2_zc_detect_chg_rpm uint16 Q0 ゼロクロス判別切り換え回転数

(機械角)[rpm]

【g_u2_zc_detect_chg_rpm】

Page 62: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 62 of 64

2018. 09. 19

表 4-2 Analyzer 機能入力用変数一覧[2/2]

Analyzer 機能入力用変数名 型 スケール 内容 備考

(【】:反映先変数)

com_u1_cmp1_vol_ref uint8 Q0 CMP1 比較電圧リファレンス 【g_u1_cmp1_vol_ref】

com_u1_measure_induct_effect_

max_cnt

uint8 Q0 インダクタンス測定の測定最大回数 【g_u1_induct_effect_reach_max

_cnts】

com_u1_inductance_effect_thsld uint8 Q0 インダクタンス測定時判別閾値 【g_u1_inductance_effect_thsld】

com_u1_inductance_effect_perce

ntage

uint8 Q0 インダクタンス測定時エラー判別閾値 【g_u2_inductance_effect_percen

tage】

com_u2_measure_induct_effect_i

ntvl

uint16 Q0 インダクタンス測時の放電間隔 【g_u2_measure_induct_effect_in

tvl】

com_u2_pulse_width uint16 Q0 極性判定時印加パルス幅 【g_u2_pulse_width】

com_u1_saturation_effect_thsld uint8 Q0 極性判定時の判別閾値 【g_u1_saturation_effect_thsld】

com_u1_saturation_effect_max_c

nt

uint8 Q0 極性判定の最大回数 【g_u1_saturation_effect_max_cn

t】

com_u1_saturation_effect_percent

age

uint8 Q0 極性判定時エラー判別閾値 【g_u2_saturation_effect_percent

age(g_u1_saturation_effect_thsld

の値と乗じて)

com_s2_enable_write int16 Q0 変数書き換え許可 【g_s2_enable_write】

Page 63: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 63 of 64

2018. 09. 19

4.3 Analyzer 操作例

Analyzer 機能を使用し、モータを操作する例を以下に示します。操作は、図 4-1 で示す“Control Window”

で行います。“Control Window”の詳細は、「Renesas Motor Workbench V.1.00 ユーザーズマニュアル」を

参照して下さい。

モータを回転させる

① “com_s2_mode_system”,“com_u2_ref_speed_rpm”, “com_s2_enable_write”の [W?] 欄に”

チェック”が入っていることを確認する。

② 指令回転速度を“com_u2_ref_speed_rpm”の [Write] 欄に入力する。

③ “Write”ボタンを押す。

④ “Read”ボタンを押して現在の“com_u2_ref_speed_rpm”,“g_s2_enable_write”の [Read] 欄を確認

する。

⑤ MCU 内の変数値へ反映させるため、“com_s2_enable_write”に④で確認した“g_s2_enable_write”と

同じ値を入力する。

⑥ “com_s2_mode_system”の [Write]欄に“1”を入力する。

⑦ “Write”ボタンを押す。

Write reference speed

Click Read button

Check

Write ( 0 or 1 )

Click Write button

Write 1

図 4-2 モータ回転の手順

モータを停止させる

① “com_s2_mode_system”の[Write]欄に“0”を入力する。

② “Write”ボタンを押す。

Click Write button

Write 0

図 4-3 モータ停止の手順

止まってしまった(エラー)場合の処理

① “com_s2_mode_system”の[Write]欄に“3”を入力する。

② “Write”ボタンを押す。

Click Write button

Write 3

図 4-4 エラー解除の手順

Page 64: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

永久磁石同期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御 RL78/G1F 実装編

R01AN4502JJ0100 Rev.1.00 Page 64 of 64

2018. 09. 19

ホームページとサポート窓口

ルネサス エレクトロニクスホームページ

http://japan.renesas.com/

お問合せ先

http://japan.renesas.com/contact/

すべての商標および登録商標は,それぞれの所有者に帰属します

Page 65: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

A-1

改訂記録

Rev. 発行日

改訂内容

ページ ポイント

1.00 2018.09.19 - 新規発行

Page 66: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

製品ご使用上の注意事項

ここでは、マイコン製品全体に適用する「使用上の注意事項」について説明します。個別の使用上の注意

事項については、本ドキュメントおよびテクニカルアップデートを参照してください。

1. 未使用端子の処理

【注意】未使用端子は、本文の「未使用端子の処理」に従って処理してください。

CMOS製品の入力端子のインピーダンスは、一般に、ハイインピーダンスとなっています。未使用

端子を開放状態で動作させると、誘導現象により、LSI周辺のノイズが印加され、LSI内部で貫通電

流が流れたり、入力信号と認識されて誤動作を起こす恐れがあります。未使用端子は、本文「未使用

端子の処理」で説明する指示に従い処理してください。

2. 電源投入時の処置

【注意】電源投入時は,製品の状態は不定です。

電源投入時には、LSIの内部回路の状態は不確定であり、レジスタの設定や各端子の状態は不定で

す。

外部リセット端子でリセットする製品の場合、電源投入からリセットが有効になるまでの期間、端子

の状態は保証できません。

同様に、内蔵パワーオンリセット機能を使用してリセットする製品の場合、電源投入からリセットの

かかる一定電圧に達するまでの期間、端子の状態は保証できません。

3. リザーブアドレス(予約領域)のアクセス禁止

【注意】リザーブアドレス(予約領域)のアクセスを禁止します。

アドレス領域には、将来の機能拡張用に割り付けられているリザーブアドレス(予約領域)がありま

す。これらのアドレスをアクセスしたときの動作については、保証できませんので、アクセスしない

ようにしてください。

4. クロックについて

【注意】リセット時は、クロックが安定した後、リセットを解除してください。

プログラム実行中のクロック切り替え時は、切り替え先クロックが安定した後に切り替えてくださ

い。

リセット時、外部発振子(または外部発振回路)を用いたクロックで動作を開始するシステムでは、

クロックが十分安定した後、リセットを解除してください。また、プログラムの途中で外部発振子

(または外部発振回路)を用いたクロックに切り替える場合は、切り替え先のクロックが十分安定し

てから切り替えてください。

5. 製品間の相違について

【注意】型名の異なる製品に変更する場合は、製品型名ごとにシステム評価試験を実施してくださ

い。

同じグループのマイコンでも型名が違うと、内部ROM、レイアウトパターンの相違などにより、電

気的特性の範囲で、特性値、動作マージン、ノイズ耐量、ノイズ輻射量などが異なる場合がありま

す。型名が違う製品に変更する場合は、個々の製品ごとにシステム評価試験を実施してください。

Page 67: 永久磁石同期モータの120度通電制御 ‐ 初期位置検 …...永久磁石期モータの 120 度通電制御 ‐ 初期位置検出機能付センサレス速度制御

■営業お問合せ窓口

■技術的なお問合せおよび資料のご請求は下記へどうぞ。 総合お問合せ窓口:https://www.renesas.com/contact/

ルネサス エレクトロニクス株式会社 〒135-0061 東京都江東区豊洲3-2-24(豊洲フォレシア)

© 2017 Renesas Electronics Corporation. All rights reserved.

Colophon 4.1

http://www.renesas.com※営業お問合せ窓口の住所は変更になることがあります。最新情報につきましては、弊社ホームページをご覧ください。

ご注意書き

1. 本資料に記載された回路、ソフトウェアおよびこれらに関連する情報は、半導体製品の動作例、応用例を説明するものです。お客様の機器・システムの設計におい

て、回路、ソフトウェアおよびこれらに関連する情報を使用する場合には、お客様の責任において行ってください。これらの使用に起因して、お客様または第三

者に生じた損害に関し、当社は、一切その責任を負いません。

2. 本資料に記載されている情報は、正確を期すため慎重に作成したものですが、誤りがないことを保証するものではありません。万一、本資料に記載されている情報

の誤りに起因する損害がお客様に生じた場合においても、当社は、一切その責任を負いません。

3. 本資料に記載された製品デ-タ、図、表、プログラム、アルゴリズム、応用回路例等の情報の使用に起因して発生した第三者の特許権、著作権その他の知的財産権

に対する侵害に関し、当社は、何らの責任を負うものではありません。当社は、本資料に基づき当社または第三者の特許権、著作権その他の知的財産権を何ら許

諾するものではありません。

4. 当社製品を改造、改変、複製等しないでください。かかる改造、改変、複製等により生じた損害に関し、当社は、一切その責任を負いません。

5. 当社は、当社製品の品質水準を「標準水準」および「高品質水準」に分類しており、

各品質水準は、以下に示す用途に製品が使用されることを意図しております。

標準水準: コンピュータ、OA機器、通信機器、計測機器、AV機器、

家電、工作機械、パーソナル機器、産業用ロボット等

高品質水準:輸送機器(自動車、電車、船舶等)、交通用信号機器、

防災・防犯装置、各種安全装置等

当社製品は、直接生命・身体に危害を及ぼす可能性のある機器・システム(生命維持装置、人体に埋め込み使用するもの等)、もしくは多大な物的損害を発生さ

せるおそれのある機器・システム(原子力制御システム、軍事機器等)に使用されることを意図しておらず、使用することはできません。たとえ、意図しない用

途に当社製品を使用したことによりお客様または第三者に損害が生じても、当社は一切その責任を負いません。なお、ご不明点がある場合は、当社営業にお問い

合わせください。

6. 当社製品をご使用の際は、当社が指定する最大定格、動作電源電圧範囲、放熱特性、実装条件その他の保証範囲内でご使用ください。当社保証範囲を超えて当社製

品をご使用された場合の故障および事故につきましては、当社は、一切その責任を負いません。

7. 当社は、当社製品の品質および信頼性の向上に努めていますが、半導体製品はある確率で故障が発生したり、使用条件によっては誤動作したりする場合がありま

す。また、当社製品は耐放射線設計については行っておりません。当社製品の故障または誤動作が生じた場合も、人身事故、火災事故、社会的損害等を生じさせ

ないよう、お客様の責任において、冗長設計、延焼対策設計、誤動作防止設計等の安全設計およびエージング処理等、お客様の機器・システムとしての出荷保証

を行ってください。特に、マイコンソフトウェアは、単独での検証は困難なため、お客様の機器・システムとしての安全検証をお客様の責任で行ってください。

8. 当社製品の環境適合性等の詳細につきましては、製品個別に必ず当社営業窓口までお問合せください。ご使用に際しては、特定の物質の含有・使用を規制する

RoHS指令等、適用される環境関連法令を十分調査のうえ、かかる法令に適合するようご使用ください。お客様がかかる法令を遵守しないことにより生じた損害に

関して、当社は、一切その責任を負いません。

9. 本資料に記載されている当社製品および技術を国内外の法令および規則により製造・使用・販売を禁止されている機器・システムに使用することはできません。ま

た、当社製品および技術を大量破壊兵器の開発等の目的、軍事利用の目的その他軍事用途に使用しないでください。当社製品または技術を輸出する場合は、「外

国為替及び外国貿易法」その他輸出関連法令を遵守し、かかる法令の定めるところにより必要な手続を行ってください。

10. お客様の転売等により、本ご注意書き記載の諸条件に抵触して当社製品が使用され、その使用から損害が生じた場合、当社は何らの責任も負わず、お客様にてご負

担して頂きますのでご了承ください。

11. 本資料の全部または一部を当社の文書による事前の承諾を得ることなく転載または複製することを禁じます。

注1. 本資料において使用されている「当社」とは、ルネサスエレクトロニクス株式会社およびルネサスエレクトロニクス株式会社がその総株主の議決権の過半数

を直接または間接に保有する会社をいいます。

注2. 本資料において使用されている「当社製品」とは、注1において定義された当社の開発、製造製品をいいます。