STEPPING ＆ SERVO MOTOR CONTROLLER'S OPTION

MPL-36-01Ｖ2.00/USBW32
MPL-37-01Ｖ2.00/USBW64
取扱説明書(設計者用)(USBシリーズ Windows用デバイスドライバ )本製品を使用する前に、この取扱説明書を良く読んで十分に理解してください。
この取扱説明書は、いつでも取り出して読めるように保管してください。

MN0260MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
はじめに
このデバイスドライバ「取扱説明書」は、 USB シリーズのステッピングモータ、サーボモータ、および I/O システムを正しく安全に使用していただくために、ステッピングモータ、あるいはサーボ
モータを使った制御装置の設計を担当される方を対象に、 Windows における標準的な機能および仕様について説明しています。
各コントローラの「取扱説明書」と同様に、本デバイスドライバ「取扱説明書」を良く読んで十分に理解してください。
このデバイスドライバ「取扱説明書」は、いつでも取り出して読めるように保管してください。

安全設計に関するお願い■本資料に記載されている製品および製品仕様は、改良などにより予告なく変更することがあります。
■本資料に記載される技術情報は、製品の代表的動作・応用を説明するためのものであり、その使用に際して当社および第三者の知的財産権その他の権利に対する保証または実施権の許諾を行うものではありません。
■本資料に記載されている回路、ソフトウェア、およびこれらに関連する情報を使用する
場合は、お客様の機器およびシステム全体で十分に評価し、お客様の責任において適用可否を判断してください。
■半導体ならびに半導体を使用した製品は、ある確率で故障が発生したり、使用条件によっては誤動作したりする場合があります。本製品の故障または誤動作により、人身事故、火災事故、
社会的な損害などを生じさせないように、お客様の責任において、お客様の機器またはシステムに必要な安全設計を行うことをお願いします。
■本製品は、一般工業向けの汎用品として設計・製造されていますので、航空機器、航空
宇宙機器、海底中継機器、原子力制御システム、輸送機器(車両、船舶等)、交通用信号
機器、防災・防犯機器、安全装置、医療機器など、人命や財産に多大な影響が予想される用途には使用しないでください。
■本製品を改造、改変、複製等しないでください。
■輸出に際しては、「外国為替および外国貿易法」など適用される輸出関連法令を遵守し、かかる法令の定めるところにより必要な手続きを行ってください。本製品または本資料に記載されている技術情報を、大量破壊兵器の開発等の目的、軍事利用の目的、その他軍事用途の目的で使用しないでください。
また、本製品を国内外の法令および規制により製造・使用・販売を禁止されている機器に使用することはできません。
■本製品の環境適合性などの詳細につきましては、必ず弊社営業窓口までお問い合わせください。ご使用に際しては、特定の物質の含有・使用を規制する RoHS 指令など適用される環境関連法令を十分調査の上、かかる法令に適合するようにご使用ください。
お客様がかかる法令を遵守しないことにより生じた損害に関して、当社は一切その責任は負いません。

-2-

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

安全に関する事項の記述方法について
本製品は正しい方法で取り扱うことが大切です。
誤った方法で使用された場合、予期しない事故を引き起こし、人身への障害や財産の損壊などの被害を被るおそれがあります。
そのような事故の多くは、危険な状況を予め知っていれば回避することができます。
そのため、このデバイスドライバ「取扱説明書」では危険な状況が予想できる場合には、注意事項
が記述してあります。
それらの記述は、次のようなシンボルマークとシグナルワードで示しています。
 警告

取り扱いを誤った場合に死亡、または重傷を負うおそれのある警告事項を示します。

 注意

取り扱いを誤った場合に、軽傷を負うおそれや物的損害が発生するおそれがある注意事項 を 示します。

御使用の前に■入出力仕様ならびに接続に関する取り扱いについては、各コントローラの｢取扱説明書｣をご覧ください。
■ USB シリーズコントローラは各軸を独立で制御できるため、各軸を以下のように呼称します。
また、本書では、 *1 の製品のことをコントローラドライバと呼称します。
製品名
UC-766
UCD-7610v1/ADB5F30
UCD-7613v1/GDB5F40

*1
*1

1 軸目
X軸
X軸
X軸

2 軸目
Y軸
Y軸
Y軸

3 軸目
Z軸
―
―

4 軸目
A軸
―
―

以降、原則として X 軸についてのみ説明します。
■応用機能については、 別冊デバイスドライバ取扱説明書 応用機能編 をご覧ください。

-3-

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ 本書の構成
本書は Windows 用デバイスドライバによる USB シリーズの制御階層(ドライバ仕様、関数仕様)と USB シリーズのコマンド仕様、機能説明で構成しています。
デバイスドライバ MPL-36-01v2.00/USBW32
デバイスドライバ MPL-37-01v2.00/USBW64

USB シリーズ対応コントローラ

1.章 概要 、 2.章 関数仕様
3.章 関数リファレンス

4.章 コマンド仕様
各機能の設定や実行、および読み出しは、

3-1. 構造体・関数の見方

5.章 機能説明
コントローラの機能を説明します。

ユニットアクセスまたはデバイス関数によって行います。

3-2. RESULT 構造体

コマンドの実行シーケンスやデータの詳細を説明します。

3-3. USB 関数
3-3-1. 環境設定 /接続確認関数
3-4. ユニット関数
3-4-1. ユニットオープン /クローズ関数
3-4-2. ユニット動作エラークリア関数

4-1.章 ドライブコマンド

5-1.章 ドライブ仕様

・入出力仕様の設定

・入出力仕様・ドライブパラメータの設定

・ドライブパラメータ・ドライブの実行

・基本ドライブ・停止コマンドの実行

・ ORIGIN ドライブ・サーボ対応機能の実行・補間ドライブ・エラー機能の設定と読み出し

・パルス出力停止機能

・速度・設定データの読み出し

・エラー出力機能

・その他

・読み出し機能3-4-3. 拡張ユニット通信関数
3-4-4. ユニットアクセス関数
4-2.章 カウンタコマンド
3-5. I/O 関数
3-5-1. I/O オープン /クローズ関数

・アドレスカウンタの設定

5-2.章 カウンタ仕様
・エンコーダパルス入力方式

・パルスカウンタの設定

・外部パルス出力機能

・パルス偏差カウンタの設定

・アドレスカウンタ機能・カウンタデータの読み出し

・パルスカウンタ機能

3-5-2. I/O アクセス関数

・パルス偏差カウンタ機能
・コンパレータ機能

3-6. デバイス関数
3-6-1. デバイスオープン /クローズ関数
3-6-2. 動作エラークリア関数

5-3.章 I/O 仕様
・汎用 I/O PORT

3-8-3. MCC PORT アクセス関数
3-6-4. WAIT 関数
3-6-5. SPEED ・ RATE 関数
3-6-6. ORIGIN 関数
3-6-7. 補間ドライブ関数
応用機能 *1
ユニット関数A/D 変換関数
デバイス関数
データ構造体関数

ドライブコマンドドライブ仕様・入出力仕様の設定(応用)・コマンド予約機能

・ドライブパラメータの設定(応用)・入力信号時定数設定機能

・ドライブの実行(応用)・入力信号論理切替機能

・多軸直線補間の設定と実行・その他応用ドライブ機能

・任意 2 軸円弧補間の設定と実行・カウントラッチデータ読み出し機能

・ドライブ CHANGE の設定と実行・ステータス外部出力機能

カウンタコマンド
コマンド予約機能関数

カウンタ仕様・リングカウンタ機能の設定

・リングカウンタ機能・カウンタラッチ・クリア機能の設定

・カウントデータのラッチ・クリア機能

その他の関数I/O 仕様・ SIGNAL I/O 機能
・ SIGNAL I/O2( A/D )機能*1 応用機能については、「デバイスドライバ取扱説明書 応用機能編 」をご覧ください。

-4-

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
はじめに
安全設計に関するお願い
安全に関する事項の記述方法について御使用の前に

目

次

PAGE

１．概要
1-1. 特徴
1-2. サポート環境
1-3. ソフト開発に必要なファイル
1-4. エラー(1) 関数エラー(2) 動作エラー
1-5. 制限事項(1) ORIGIN ドライブ中(2) ORIGIN ドライブ STATUS について
(3) ID No.の設定

10
12
12
13
13
13
14
14
14
14

２．関数仕様2-1. 関数体系(1) USB 関数(2) ユニット関数(3) デバイス関数(4) I/O PORT 関数
2-2. システムプログラミング(1) マルチプロセス(2) マルチスレッド
2-3. シーケンス(1) 全体シーケンス(2) ユニット制御シーケンス(3) デバイス制御シーケンス(4) I/O PORT 制御シーケンス(5) MCC の実行シーケンス

15
15
15
15
15
16
16
16
17
17
18
19
19
19

３．関数リファレンス
3-1. 構造体・関数の見方(1) 構造体(2) 関数(3) Visual Basic.NET でのプログラミング(4) Visual C#.NET でのプログラミング
3-2. RESULT 構造体
3-3. USB 関数
3-3-1. 環境設定 /接続確認関数
ユニット情報構造体
環境設定関数
ユニット情報読み出し関数
3-4. ユニット関数
3-4-1. ユニットオープン /クローズ関数
ユニットオープン関数
ユニットクローズ関数
3-4-2. ユニット動作エラークリア関数
ユニット動作エラークリア関数
3-4-3. 拡張ユニット通信関数
拡張ユニット通信設定関数
拡張ユニット通信制御関数
拡張ユニット通信ステータス読み出し関数
拡張ユニット通信設定読み出し関数

20
20
20
21
21
22
24
24
24
25
26
27
27
27
28
29
29
30
30
31
32
33

-5-

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

目

次

3-4-4. ユニットアクセス関数
ユニットステータス構造体
ユニットコマンド構造体
入力 PORT 構造体
出力 PORT 構造体
ユニット DRIVE COMMAND 書き込み /読み出し関数
ユニット DRIVE COMMAND ・ I/O 書き込み関数
ユニット STATUS1 ・パルスカウンタ・ I/O 読み出し関数
ユニット STATUS1 ・ I/O 読み出し関数
ユニット I/O PORT 書き込み関数
ユニット I/O PORT OR 書き込み関数
ユニット I/O PORT AND 書き込み関数
ユニット I/O PORT 読み出し関数
3-5. I/O 関数
3-5-1. I/O オープン /クローズ関数
I/O PORT オープン関数
I/O PORT クローズ関数
3-5-2. I/O アクセス関数
I/O PORT 書き込み関数
I/O PORT OR 書き込み関数
I/O PORT AND 書き込み関数
I/O PORT 読み出し関数
3-6. デバイス関数
3-6-1. デバイスオープン /クローズ関数
デバイスオープン関数
デバイスクローズ関数
3-6-2. 動作エラークリア関数
動作エラークリア関数
3-6-3. MCC PORT アクセス関数
コマンドデータ構造体
DRIVE COMMAND 32 ビット一括書き込み関数
DRIVE COMMAND PORT 書き込み関数
DRIVE DATA 32 ビット書き込み関数
DRIVE DATA1 PORT 書き込み関数
DRIVE DATA2 PORT 書き込み関数
ステータスデータ構造体
STATUS PORT バッファー読み出し関数
DRIVE STATUS1 PORT 読み出し関数
DRIVE STATUS2 PORT 読み出し関数
DRIVE STATUS3 PORT 読み出し関数
DRIVE STATUS4 PORT 読み出し関数
DRIVE STATUS5 PORT 読み出し関数
DRIVE COMMAND 32 ビット一括書き込み /読み出し関数
DRIVE DATA 32 ビット一括読み出し関数
DRIVE DATA1 PORT 読み出し関数
DRIVE DATA2 PORT 読み出し関数
3-6-4. WAIT 関数
READY WAIT 関数
WAIT 状態読み出し関数
WAIT 中止関数
3-6-5. SPEED･ RATE 関数
SPEED ･ RATE 構造体
SPEED ･ RATE セット関数
SPEED ･ RATE 読み出し関数

-6-

PAGE
34
34
35
36
37
38
39
40
41
42
43
44
45
46
46
46
47
48
48
49
50
51
53
53
53
54
55
55
56
58
59
60
61
62
63
64
65
66
69
71
72
74
76
77
78
79
80
80
81
82
83
83
84
85

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

目
3-6-6. ORIGIN 関数
ORIGIN ドライブ パラメータ構造体
ORIGIN STATUS 読み出し関数
ORIGIN SPEC SET 関数
ORIGIN MARGIN PULSE SET 関数
ORIGIN DELAY SET 関数
ORIGIN ERROR PULSE SET 関数
ORIGIN OFFSET PULSE SET 関数
ORIGIN PRESET PULSE SET 関数
ORIGIN ドライブパラメータ読み出し関数
ORIGIN FLAG RESET 関数
ORIGIN ドライブ関数
3-6-7. 補間ドライブ関数
POSITION 構造体
メインチップ 2 軸相対アドレス直線補間ドライブ関数
メインチップ 2 軸相対アドレス円弧補間ドライブ関数
円の中心点ゲット関数
相対アドレス変換関数

次

PAGE
86
86
87
89
91
92
93
94
95
96
97
98
99
99
100
101
103
104

４．コマンド仕様
4-1. ドライブコマンド
4-1-1. 入出力仕様の設定(1) SPEC INITIALIZE1(2) SPEC INITIALIZE2(3) SPEC INITIALIZE3
4-1-2. ドライブパラメータの設定(1) JSPD SET(2) JOG PULSE SET
4-1-3.ドライブの実行(1) +JOG(2) -JOG(3) +SCAN(4) -SCAN(5) INC INDEX(6) ABS INDEX
4-1-4. 停止コマンドの実行(1) SLOW STOP
(2) FAST STOP
4-1-5. サーボ対応機能の実行(1) SIGNAL OUT(2) DRST OUT
4-1-6. エラー機能の設定と読み出し(1) ERROR STATUS MASK
(2) ERROR STATUS READ
4-1-7. 速度･設定データの読み出し(1) MCC SPEED READ
(2) MCC SET DATA READ
4-1-8. その他(1) NO OPERATION
4-2. カウンタコマンド
4-2-1. アドレスカウンタの設定(1) ADDRESS COUNTER INITIALIZE1(2) ADDRESS COUNTER INITIALIZE2(3) ADDRESS COUNTER PRESET(4) ADRINT COMPARE REGISTER1,2,3 SET(5) ADRINT COMP1 ADD DATA SET

-7-

105
105
105
106
107
109
109
110
111
111
111
112
112
113
114
115
115
115
116
116
116
117
117
118
120
120
121
123
123
124
124
124
127
129
130
131

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

目
4-2-2. パルスカウンタの設定(1) PULSE COUNTER INITIALIZE1(2) PULSE COUNTER INITIALIZE2(3) PULSE COUNTER PRESET(4) CNTINT COMPARE REGISTER1,2,3 SET(5) CNTINT COMP1 ADD DATA SET
4-2-3. パルス偏差カウンタの設定(1) DFL COUNTER INITIALIZE1(2) DFL COUNTER INITIALIZE2(3) DFL COUNTER INITIALIZE3(4) DFL COUNTER PRESET(5) DFLINT COMPARE REGISTER1,2,3 SET(6) DFLINT COMP1 ADD DATA SET
4-2-4. カウントデータの読み出し(1) ADDRESS COUNTER READ
(2) PULSE COUNTER READ
(3) DFL COUNTER READ

次

PAGE
132
132
135
137
138
139
140
140
143
145
146
147
148
149
149
149
149

５．機能説明5-1. ドライブ仕様
5-1-1. 入出力仕様(1) パルス出力仕様(2) サーボ対応機能
5-1-2. ドライブパラメータ(1) 第 1 パルス出力周期(2) 加減速パラメータ(3) JOG パラメータ
5-1-3. 基本ドライブ(1) JOG ドライブ
(2) SCAN ドライブ
(3) INDEX ドライブ
5-1-4. ORIGIN ドライブ
(1) ORIGIN ドライブ仕様(2) ORG-0 ドライブ型式(3) ORG-1 ドライブ型式(4) ORG-2 ドライブ型式(5) ORG-3 ドライブ型式(6) ORG-4,ORG-5 ドライブ型式(7) ORG-10 ドライブ型式(8) ORG-11 ドライブ型式(9) ORG-12 ドライブ型式
5-1-5. 補間ドライブ(1) 補間ドライブ仕様(2) 直線補間ドライブ(3) 円弧補間ドライブ(4) 線速一定制御
5-1-6. パルス出力停止機能(1) 減速停止機能(2) 即時停止機能(3) LIMIT 停止機能
5-1-7. エラー出力機能
5-1-8. 読み出し機能(1) ステータス読み出し(2) 設定データ読み出し(3) 出力中のドライブ速度読み出し(4) エラーステータス読み出し(5) カウントデータ読み出し

150
150
150
151
152
152
153
156
157
157
157
158
159
159
163
165
167
168
169
172
173
174
175
175
175
176
178
180
180
180
180
181
183
183
183
183
183
183

-8-

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

目
5-2. カウンタ仕様
5-2-1. エンコーダパルス入力方式
5-2-2. 外部パルス出力機能
5-2-3. アドレスカウンタ機能
5-2-4. パルスカウンタ機能
5-2-5. パルス偏差カウンタ機能
5-2-6. コンパレータ機能
5-3. I/O 仕様
5-3-1. 汎用 I/O PORT
(1) I/O PORT 構成(2) アクセス方法(3) I/O 機能

次

PAGE
184
184
185
187
188
189
191
193
193
193
194
194

６． 付録
6-1. 初期仕様一覧表(1) 基本設定(2) 基本ドライブパラメータ
6-2. 関数一覧
6-3. ドライブコマンド一覧(1) 汎用コマンド(2) 特殊コマンド

196
196
197
198
201
201
202

７．トラブルシューティング

204

本版で改訂された主な箇所-9-

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

１．概要
1-1. 特徴● USB シリーズは、パソコンの小規模なシステムに最適な USB 通信によるステッピングモータ、サーボモータ、および
I/O をコントロールするシステムです。
・パソコンを選ばずに、モーションおよび I/O コントロールのシステムが容易に構築できます。
・ Windows 用デバイスドライバの関数仕様は、弊社製 PCI ボードコントローラ C-VX870 シリーズ(デバイス関数)、
および AL-Ⅱシリーズ(デバイス関数とユニット関数)間で互いに移行が容易な仕様です。

● MPL-36-01v2.00/USBW32 、および MPL-37-01v2.00/USBW64 は、 DOS/V パソコンの Windows 上で USB ポート
から弊社製ステッピング ＆ サーボモータコントローラ USB シリーズの製品を動作させるための DLL ベースのドライバ関数です。
・ Windows 32 ビット対応版が MPL-36-01v2.00/USBW32 です。
・ Windows 64 ビット対応版が MPL-37-01v2.00/USBW64 です。
MPL-37-01v2.00/USBW64 は、画像処理などの高速化を目的とした Windows 64 ビット環境のモーションおよびI/O システムを可能にします。
・ MPL-36-01v2.00/USBW32 と MPL-37-01v2.00/USBW64 の各関数は互換性があります。

● 各関数は、パルスジェネレータの MCC PORT 、または I/O PORT(制御 I/O 、汎用 I/O 、拡張 I/O およびアナログ入力)のアクセス(読み出し /書き込み)を行うためのものです。
このように、ポートをアクセスするだけのシンプルな関数構造のため、原則関数仕様によってモーション仕様が制限される
ことはありません。
MCC のコマンドの与え方によって、簡単な機能から応用的な機能に至るまで、用途に合わせた幅広いモーション制御を行うことができます。
MCC PORT/各軸
・ DRIVE COMMAND PORT

制御 I/O PORT/各軸・制御出力 0 PORT

汎用 I/O PORT
・汎用出力 PORT・ DRIVE DATA1 PORT(S.ON, A.CLR )(OUT0,OUT1

・ DRIVE DATA2 PORT

・制御入力 0 PORT

・汎用入力 PORT・ DRIVE STATUS1 PORT(S.RDY )(IN0,IN1)

・ DRIVE STATUS2 PORT

拡張 I/O PORT
・拡張出力 0 PORT(OUT00 〜 OUT0F)
・拡張出力 1 PORT(OUT10 〜 OUT1F)

・ AN1 入力・ AN2 入力・ AN3 入力

・拡張入力 0 PORT・ DRIVE STATUS3 PORT

(IN00 〜 IN0F)

・ DRIVE STATUS4 PORT

・拡張入力 1 PORT・ DRIVE STATUS5 PORT
各コントローラユニットに対応

アナログ入力(応用機能)
・ AN0 入力

(IN10 〜 IN1F)
UC-766 に対応

各コントローラユニットに対応(UCD-7613v1:CS に対応)

拡張 I/O ユニットに対応

UC-766(ユニット関数)に対応*拡張入出力 1 PORT は
CB-52/3232-MIL のみ対応

● デバイスドライバで実現する次の機能が用意されています。
SPEED パラメータ･ RATE 関数
・加減速ドライブに必要な速度パラメータおよび第 1 パルス出力周期を 1Hz 単位で設定します。
・加減速ドライブに必要な加減速時定数(ms/kHz)を RATE テーブル表から選択し設定します。
ORIGIN ドライブ・弊社製チップコントローラ MCC05v2 と同様の機械原点検出完了までの一連のシーケンスを実現します。
補間ドライブ関数
・相対アドレスで指定された目的地まで、直線補間ドライブを行います。
・相対アドレスで指定された中心点と目的地で、円弧補間ドライブを行います。
・絶対アドレスから相対アドレスに変換する関数により、絶対アドレス指定での補間ドライブを行います。
・通過点、目的地から円の中心点を求める関数により、通過点と目的地による円弧補間ドライブを行います。

- 10 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書● MPL-36-01v2.00/USBW32 および MPL-37-01v2.00/USBW64 では、従来のデバイス関数のほかに、各ユニットのMCC PORT 、 I/O PORT(制御 I/O 、汎用 I/O 、拡張 I/O およびアナログ入力)のアクセスを一括で行うことができる
ユニット関数をサポートしています。
このユニット関数は、アプリケーションから 1 回の関数実行によってユニットと USB 通信を行うことができます。
これにより、・軸や I/O PORT 毎にアクセスするデバイス関数、 I/O PORT 関数に比べてタクトアップが図れます。
・ユニット読み出し関数は、各軸 STATUS 、データ、および I/O 入力信号を取得するまで時間の差を抑えます。
・ユニット書き込み関数は、各軸に指令するまでの時間、および各 I/O 出力信号へ指令するまでの時間の差を抑えます。
・アプリケーションの負荷を低減することができます。
・従来のデバイス関数、および I/O 関数と合わせてユニット関数を使うことができます。
以下は 4 軸コントローラへアクセスしたときの例です。
デバイス関数・ I/O 関数でのアクセス例

ユニット関数でのアクセス例

読み出し

X 軸 STATUS1

X 軸 STATUS1

読み出し

Y 軸 STATUS1

Y 軸 STATUS1

読み出し

Z 軸 STATUS1

Z 軸 STATUS1

読み出し

A 軸 STATUS1

A 軸 STATUS1

読み出し

X 軸制御 I/O

読み出し

Y 軸制御 I/O

読み出し

Z 軸制御 I/O

Z 軸制御 I/O

読み出し

A 軸制御 I/O

A 軸制御 I/O

読み出し

汎用 I/O

汎用 I/O

読み出し

拡張 I/O 0ン

拡張 I/O 0

読み出し

拡張 I/O 1

ケ ー シ ョ時間差

拡張 I/O 1

時間差

一括読み出し(ユニット単位)X 軸 DATA1(軸単位)

X 軸 DATA2
X 軸 COMMAND

X 軸 DATA1
X 軸 DATA2

ア プ リ

ア プ リ

ケ ー シ ョン

Y 軸制御 I/O

時間差
一括書き込みX 軸制御 I/O

X 軸 COMMAND

一括書き込みY 軸 DATA1(軸単位)

Y 軸 DATA2Y 軸 DATA1Y 軸 DATA2Y 軸 COMMAND

Y 軸 COMMAND

一括書き込みZ 軸 DATA1(軸単位)

Z 軸 DATA2

一括書き込みZ 軸 DATA1Z 軸 DATA2Z 軸 COMMAND(ユニット単位)Z 軸 COMMAND

一括書き込みA 軸 DATA1

A 軸 DATA1(軸単位)

A 軸 DATA2A 軸 DATA2A 軸 COMMANDA 軸 COMMAND

書き込み

X 軸制御 I/O

X 軸制御 I/O

書き込み

Y 軸制御 I/O

Y 軸制御 I/O

書き込み

Z 軸制御 I/O

Z 軸制御 I/O

書き込み

A 軸制御 I/O

A 軸制御 I/O

書き込み

汎用 I/O

汎用 I/O

書き込み

拡張 I/O 0

拡張 I/O 0

書き込み

拡張 I/O 1

拡張 I/O 1

時間差- 11 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
1-2. サポート環境
項目
サポート OSMPL-36-01v2.00/USBW32
・ Microsoft Windows 8 ( x86)
・ Microsoft Windows 7 ( x86)
・ Microsoft Windows Vista ( x86)
・ Microsoft Windows XP( x86 )・ Microsoft Windows 2000 Professional SP4

サポート言語・ Visual Basic .NET 2002 〜 2012
・ Visual C# .NET
2002 〜 2012
・ Visual C++ .NET 2002 〜 2012
・ Visual C++
6.0
・ Visual Basic
6.0

サポート製品*1*2

MPL-37-01v2.00/USBW64・ Microsoft Windows 8 ( x64 )・ Microsoft Windows 7 ( x64 )・ Microsoft Windows Vista ( x64)
・ Microsoft Windows XP ( x64 )・ Visual Basic .NET・ Visual C# .NET・ Visual C++ .NET

*1

2005 〜 20122005 〜 20122005 〜 2012

《ユニット》
・ UC-766
・ UCD-7610v1/ADB5F30
・ UCD-7613v1/GDB5F40(4 軸ステッピング /サーボ対応コントローラ :エンコーダ入力あり)(コントローラドライバ :2 軸 5 相 0.75A/相)(コントローラドライバ :2 軸 5 相 1.4A/相)《拡張ユニット》
・ CB-52/3232 -MIL・ CB-53/1616 -MIL

(拡張 I/O 32/32 点)(拡張 I/O 16/16 点)

サポート機種・ IBM PC/AT 互換機
・ DOS/V 機

その他・同時使用可能数 :2 台(各ユニットに拡張ユニット 1 台)
・マルチスレッド対応
・割り込み :未使用

*2

*1 : Windows 8 環境では、デスクトップアプリのみに対応しています。
ストアアプリには対応していません。
*2 : アンマネージコード対応です。
※ MPL-36-01v2.00/USBW32 と MPL-37-01v2.00/USBW64 を同一パソコンに同時にインストールすることはできません。

1-3. ソフト開発に必要なファイル
ユーザアプリケーション開発に必要な下記のファイルは、弊社ホームページからダウンロードすることができます。
インストール時に指定する次のフォルダに格納されています。
(インストール時にパスを ¥Program Files 指定した場合)
言語
Visual Basic.NET

Visual C++.NET
Visual C++

関数定義ファイル

ヘッダファイル
ライブラリファイル

C#.NET
Visual Basic

ヘッダファイル
関数定義ファイル

ファイル¥Program Files¥Mpl36̲01v2.00¥Bin¥x86¥Vb.Net 2002¥UsbC.vb¥Program Files¥Mpl36̲01v2.00¥Bin¥x86¥Vb.Net 2005¥UsbC.vb¥Program Files¥Mpl37̲01v2.00¥Bin¥x64¥Vb.Net¥UsbC.vb¥Program Files¥Mpl36̲01v2.00¥Bin¥x86¥Vc¥UsbC.h¥Program Files¥Mpl37̲01v2.00¥Bin¥x64¥Vc¥UsbC.h¥Program Files¥Mpl36̲01v2.00¥Bin¥x86¥Vc¥VcMc07UsbC.lib¥Program Files¥Mpl37̲01v2.00¥Bin¥X64¥Vc¥VcMc07UsbC.lib¥Program Files¥Mpl36̲01v2.00¥Bin¥x86¥C#.Net¥UsbC.cs¥Program Files¥Mpl37̲01v2.00¥Bin¥x64¥C#.Net¥UsbC.cs¥Program Files¥Mpl36̲01v2.00¥Bin¥x86¥Vb¥UsbC.bas- 12 -(MPL-36,.NET 2002 〜)(MPL-36,.NET 2005 〜)(MPL-37)(MPL-36)(MPL-37)(MPL-36)(MPL-37)(MPL-36)(MPL-37)(MPL-36)

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
1-4. エラー(1) 関数エラー●通信エラー
項目

説明

エラー内容

USB 通信に失敗したときに発生するエラーです。

検出方法

関数がエラー終了し、 RESULT 構造体のメンバ MC07_Result ［ 1 ］に要因を通知します。

インターロック

環境設定関数以外の関数を禁止します。

エラークリア

環境設定関数の実行でクリアします。 *1*1 RESULT 構造体のメンバ MC07_Result ［ 1 ］が、 100 の関数エラーが発生したときは、動作エラークリア関数でエラーをクリアすることはできません。
このエラーが発生したときは、必ず環境設定関数を実行してください。
●その他のエラー
項目

説明

エラー内容

パラメータの異常や、他の様々な要因が発生したエラーです。

検出方法

関数がエラー終了し、 RESULT 構造体のメンバ MC07_Result ［ 1 ］に要因を通知します。

インターロック−(インターロックはされません)

エラークリア−(2) 動作エラー● ORIGIN ドライブのエラー
項目

説明

エラー内容

ORIGIN ドライブ関数による ORIGIN ドライブ中に発生したエラーです。

検出方法

ORIGIN STATUS に ERROR=1 および ERROR 要因を通知します。

インターロック

次の処理が実行できなくなります。
・ MCC07 ドライブコマンドの汎用コマンドの実行
・ SPEED･ RATE セット関数の実行・メインチップ 2 軸相対アドレス直線補間ドライブ関数の実行・メインチップ 2 軸相対アドレス円弧補間ドライブ関数の実行
・ ORIGIN ドライブ関数の実行

エラークリア

動作エラークリア関数またはユニット動作エラークリア関数の実行でクリアします。

● MCC07 のエラー
項目

説明

エラー内容

MCC07 で発生したエラーです。

検出方法

DRIVE STATUS1 PORT に ERROR=1 通知します。
MCC の ERROR STATUS READ COMMAND で ERROR 要因を確認することができます。

インターロック

次の処理が実行できなくなります。
・ MCC07 ドライブコマンドの汎用コマンドの実行
・ SPEED･ RATE セット関数の実行・メインチップ 2 軸相対アドレス直線補間ドライブ関数の実行・メインチップ 2 軸相対アドレス円弧補間ドライブ関数の実行
・ ORIGIN ドライブ関数の実行

エラークリア

動作エラークリア関数またはユニット動作エラークリア関数の実行でクリアします。 *2*2 動作エラークリア関数を実行したときに、エラー要因が継続しているときはエラーを再検出します。
動作エラーが検出された場合は、動作エラークリア関数を実行する前に MCC の ERROR STATUS READ
コマンドにて ERROR STATUS を読み出し、エラー要因が取り除かれていることを確認してから動作エラークリア
関数を実行してください。

- 13 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
1-5. 制限事項(1) ORIGIN ドライブ中
ORIGIN ドライブの仕様実現、またはトラブルを防止するため、次の処理を行っています。
■ ORIGIN ドライブ実行中は、次 に示すコマンドのみ受付ます。
他の汎用コマンド(コマンド予約機能を含む)および特殊コマンドは無効となります。
・ ADDRESS COUNTER READ コマンド・ ADDRESS LATCH DATA READ コマンド
・ DFL COUNTER READ コマンド
・ DFL LATCH DATA READ コマンド・ MCC SPEED READ コマンド・ SLOW STOP コマンド・ FAST STOP コマンド
■ ORIGIN ドライブ実行時に MCC に設定されている以下のコマンドによる設定内容をチェックし、次に示す設定が行われていた場合は関数エラーとなります。
・SPEC INITIALIZE2 コマンド
CWLM TYPE
即時停止信号として使用する。
CCWLM TYPE
即時停止信号として使用する。
SS0 TYPE
減速停止信号として使用する。または即時停止信号として使用する。
・SPEC INITIALIZE3 コマンド
DEND TYPE
減速停止信号として使用する。または即時停止信号として使用する。
■ ORIGIN ドライブ中、各種カウンタのコンパレータの一致による停止機能は無効となります。
ORIGIN ドライブがコンパレータの一致によって停止することはありません。
■ ORIGIN ドライブ中、 PULSE COUNTER は使用できません。
■ ORIGIN ドライブ中、ユーザアプリケーションが設定した ERROR STATUS MASK は無効となります。
ORIGIN ドライブが終了すると ERROR STATUS MASK はユーザアプリケーションが設定した状態に戻ります。

(2) ORIGIN ドライブ STATUS について
ORIGIN STATUS は、 MCC ではなくコントローラ本体で管理している STATUS です。
よって STATUS の内容は MCC の機能とは無関係です。
例 . MCC ERROR STATUS MASK COMMAND で FSEND ERROR MASK=0 に設定されている時、 ORIGIN ドライブがORIGIN STATUS FSEND=1 で終了しても、 DRIVE STATUS1 PORT ERROR=1 にならない場合がありますので御注意ください。

(3) ID No.の設定
当デバイスドライバを使用すると、最大 2 台の USB シリーズユニットを制御することができます。
USB シリーズのユニットを 2 台使用するときは、各ユニットの ID ( S1 スイッチ設定)を異なる設定にしてください。

- 14 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

２． 関数仕様
2-1. 関数体系
デバイスドライバの関数は主に、 USB 関数、デバイス関数、 I/O PORT 関数に分類されます。
ユニット関数とデバイス関数および I/O PORT 関数は、各オープン後に関数を併用して実行することができます。
・各関数仕様の詳細については、 3.章 「関数リファレンス」 をご覧ください。
一覧については、 6-2.章「関数一覧」をご覧ください。

(1) USB 関数
USB 関数は、 USB に接続されている全てのユニットを対象に、環境設定 /接続確認などを行う関数群です。
USB 関数は次のように分類されます。
分類
環境設定 /接続確認関数

説明
環境設定の実行とユニット関数の接続情報の読み出し(2) ユニット関数
ユニット関数は、ユニットオープン関数で取得したユニットハンドルにより、ユニットの制御を行うための関数群です。
ユニット関数は次のように分類されます。
分類
オープン /クローズ関数
エラークリア関数
拡張ユニット通信関数
ユニットアクセス関数
A/D 変換関数(応用機能)

説明
ユニットのオープンやクローズ
ユニットの動作エラーのクリア
拡張ユニットとの通信設定
MCC の複数軸の PORT,複数の I/O PORT の読み出しと書き込みユニットの A/D 変換されたアナログ入力信号の読み出し(3) デバイス関数
MCC の 1 軸をデバイスと呼称します。
デバイスト関数は、デバイスオープン関数で取得したデバイスハンドルにより、デバイスの制御を行うための関数群です。
デバイスト関数は次のように分類されます。
分類
オープン /クローズ関数
エラークリア関数
MCC PORT アクセス関数
WAIT 関数SPEED･ RATE 関数
補間ドライブ関数
ORIGIN ドライブ関数

説明
デバイスのオープンやクローズデバイスの動作エラーのクリア
MCC PORT の読み出しと書き込みデバイスの BUSY=0 または COMREG FULL=0 を待機SPEED パラメータと加減速時定数の設定
補間ドライブの演算と制御
ORIGIN ドライブの制御(4) I/O PORT 関数
I/O PORT 関数は、 I/O PORT オープン関数で取得した PORT ハンドルにより、 I/O PORT の制御を行うための関数群です。 I/O PORT 関数は次のように分類されます。
分類
オープン /クローズ関数
I/O PORT アクセス関数

説明
I/O PORT のオープンやクローズ
I/O PORT の読み出しと書き込み- 15 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書2-2. システムプログラミング(1)マルチプロセス
マルチプロセスには対応していません。

(2)マルチスレッド●マルチスレッド対応 1
複数のスレッドが、それぞれ異なる軸や I/O PORT などを対象に制御することができます。
＜軸を制御する例＞
プロセス
スレッド A

スレッド B軸 1 のデバイスハンドル

軸 2 のデバイスハンドル

軸1

軸2＜ I/O PORT を制御する例＞
プロセス
スレッド A

スレッド BI/O PORT1 の PORT ハンドル

I/O PORT1

I/O PORT2 の PORT ハンドル

I/O PORT2●マルチスレッド対応 2
複数のスレッドが、同一の軸や I/O PORT などを対象に制御することができます。
＜軸を制御する例＞
プロセス
スレッド A

スレッド B軸 1 のデバイスハンドル

スレッド C

軸 1 のデバイスハンドルユニット 1 のユニットハンドルと軸指定

軸1ユニット 1＜ I/O PORT を制御する例＞

プロセス
スレッド A

スレッド BI/O PORT1 の PORT ハンドルユニット 1スレッド CI/O PORT1 の PORT ハンドルユニット 1 のユニットハンドルと I/O PORT 指定

I/O PORT1＊ USB 関数実行中は、他のスレッドで MPL-36-01v2.00/USBW32 または MPL-37-01v2.00/USBW64 の一切の関数を実行することはできせん。実行したときの動作は不定です。
＊ READY WAIT 関数または COMREG NOT FULL WAIT 関数(応用機能)を実行中に、同じデバイスに対して
再度 READY WAIT 関数または COMREG NOT FULL WAIT 関数(応用機能)を実行することはできません。
＊ 1 つのデバイス、 I/O PORT 、ユニットに対しては、オープン→アクセス→クローズの流れを守ってください。
＊同一ユニットに属する軸、 I/O PORT などを対象にマルチスレッドで制御する場合は、アクセスの競合が発生しないように、ユーザアプリケーションで同期処理を行ってください。

- 16 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書2-3. シーケンス
全体シーケンス、ユニット制御シーケンス、デバイス制御シーケンス、 I/O PORT 制御シーケンスを示します。
このシーケンスには、関数エラーが発生した場合のフローは含まれていません。
エラーを検出した場合はエラー処理を行ってください。
・エラー発生要因は ERROR STUTUS READ コマンドで読み出すことができます。
・エラー発生要因は個別にマスクすることができます。詳しくは ERROR STATUS MASK コマンドをご覧ください。
・ ERROR=1 の間はドライブコマンドの書き込みが無効になり、インターロック状態になります。
・再スタート時は、エラー要因を取り除いてから、動作エラークリア関数を実行してインターロック状態を解除します。

(1) 全体シーケンス
ユーザアプリケーションの開始から終了までの全体シーケンス例を示します。

環境設定

環境設定関数で環境設定を行います。
環境設定関数(初期化)実行前は、 ユニットは他の関数に応答しません。

ユニット接続確認ユニット情報読み出し関数で、ユニットの接続情報を確認します。

接続 OK?
Yes

ユニット情報読み出し関数で、ユニットの接続情報を確認します。
No

オープン

ユニット／デバイス／ I/O PORT オープン関数で、ユニット／デバイス／ I/O PORT をオープンします。

ユニット制御デバイス制御I/O PORT 制御

ユニット／デバイス／ I/O PORT を制御します。
詳細は、ユニット制御シーケンス、デバイス制御シーケンス、
I/O PORT 制御シーケンスをご覧ください。
ユニット関数、デバイス関数、 I/O 関数は併用することができます。

動作エラー ?
Yes
エラー要因の解決

動作エラーが発生した場合は、エラー要因を ERROR STATUS READ
コマンドで確認し、エラー要因を解決してください。

動作エラークリア

ユニット動作エラークリア関数または動作エラークリア関数で動作エラーをクリアします。

終了 ?
No

No

ユニット情報読み出し関数で、ユニットの接続情報を確認します。

Yes
クローズ

ユニット／デバイス／ I/O PORT クローズ関数で、ユニット／デバイス／ I/O PORT をクローズします。

- 17 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) ユニット制御シーケンス
ユニット関数でユニットを制御するためのシーケンス例を示します。
ユニット関数で次の処理をする場合、 DRIVE STATUS1 PORT の ERROR=0 と BUSY=0 の確認が必要です。
・ MCC ドライブコマンドの汎用コマンドを実行するとき

STATUS1 PORT 読み出し

STATUS1 PORTERROR = 0?
Yes

No

DRIVE STATUS1 PORT を読み出します。

動作エラー

STATUS1 PORTBUSY = 0?
Yes

DRIVE STATUS1 PORT の BUSY = 0 を確認します。

ユニット関数実行

目的のユニット関数を実行します。
関数の実行結果は、 RESULT 構造体に格納されます。

STATUS1 PORT 読み出し

No

DRIVE STATUS1 PORT を読み出します。

STATUS1 PORTBUSY = 0?
Yes
STATUS1 PORTERROR = 0?
Yes

DRIVE STATUS1 PORT の ERROR = 0 を確認します。

No

DRIVE STATUS1 PORT の BUSY = 0 を確認します。

動作エラー

DRIVE STATUS1 PORT の ERROR = 0 を確認します。

No

正常終了

- 18 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) デバイス制御シーケンス
デバイス関数でデバイスを制御するためのシーケンス例を示します。
デバイス関数で次の処理をする場合、 DRIVE STATUS1 PORT の ERROR=0 と BUSY=0 の確認が必要です。
・ MCC ドライブコマンドの汎用コマンドを実行するとき・ SPEED･ RATE セット関数を実行するとき
・メインチップ 2 軸相対アドレス直線補間ドライブ関数を実行するとき
・メインチップ 2 軸相対アドレス円弧補間ドライブ関数を実行するとき・ ORIGIN ドライブ関数を実行するとき

STATUS1 PORT 読み出し

STATUS1 PORTERROR = 0?
Yes

No

DRIVE STATUS1 PORT を読み出します。

動作エラー

STATUS1 PORTBUSY = 0?
Yes

DRIVE STATUS1 PORT の BUSY = 0 を確認します。

デバイス関数実行

目的のデバイス関数を実行します。
関数の実行結果は、 RESULT 構造体に格納されます。

STATUS1 PORT 読み出し

No

DRIVE STATUS1 PORT を読み出します。

STATUS1 PORTBUSY = 0?
Yes
STATUS1 PORTERROR = 0?
Yes

DRIVE STATUS1 PORT の ERROR = 0 を確認します。

No

DRIVE STATUS1 PORT の BUSY = 0 を確認します。

動作エラー

No

DRIVE STATUS1 PORT の ERROR = 0 を確認します。
* ORIGIN ドライブ関数実行後は、 ORIGIN STATUS のORIGIN ERROR=0 を確認します。

正常終了
・ MCC の特殊コマンドについては、 DRIVE STATUS1 PORT BUSY=0 によらず常時実行可能です。

(4) I/O PORT 制御シーケンス
I/O PORT 関数で I/O PORT を制御するためのシーケンス例を示します。

I/O PORT 関数実行

目的の I/O PORT 関数を実行します。
関数の実行結果は、 RESULT 構造体に格納されます。

正常終了(5) MCC の実行シーケンス
MCC 実行シーケンスの詳細については、 3.章 「コマンド仕様」をご覧ください。

- 19 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

３． 関数リファレンス
3-1. 構造体・関数の見方(1) 構造体○○○○構造体 ← 構造体の名称○○○○← 構造体が対応するユニットの名称

説 明・・・・・・・・・・・・・・・・・・・・・・・・→ 構造体の説明

書 式
C言語･････････････････→ C言語(Visual C++およびVisual C++.NET)で構造体を使用するときの定義

VB･････････････････→ Visual Basicで構造体を使用するときの定義

VB.NET･････････････････→ Visual Basic.NETで構造体を使用するときの定義

C#.NET･････････････････→ Visual C#.NETで構造体を使用するときの定義

メンバ・・・・・・・・・・・・・・・・・・・・・・・・→ 構造体のメンバに格納される値の説明(2) 関数○○○○関数 ← 関数の名称○○○○← 関数が対応するユニットの名称

機 能・・・・・・・・・・・・・・・・・・・・・・・・→ 関数の機能の説明

書 式
C言語･････････････････→ C言語で、関数を使用するときの定義

VB･････････････････→ Visual Basicで関数を使用するときの定義

VB.NET･････････････････→ Visual Basic.NETで関数を使用するときの定義

C#.NET･････････････････→ C#.NETで構造体を使用するときの定義

引 数・・・・・・・・・・・・・・・・・・・・・・・・→ 関数の各引数に指定する値の説明

戻り値・・・・・・・・・・・・・・・・・・・・・・・・→ 関数の戻り値の説明●ユニット名称一覧表
名称
品名
UC‑766
ｺﾝﾄﾛｰﾗUCD‑7610v1
ｺﾝﾄﾛｰﾗﾄﾞﾗｲﾊﾞ
UCD‑7613v1
ｺﾝﾄﾛｰﾗﾄﾞﾗｲﾊﾞ
CB‑52
I/O
CB‑53
I/O

定格
UC-766
UCD-7610v1/ADB5F30
UCD-7613v1/GDB5F40
CB-52/3232-MIL
CB-53/1616-MIL- 20 -

備考
4 軸ｽﾃｯﾋﾟﾝｸﾞ/ｻｰﾎﾞ用ｺﾝﾄﾛｰﾗ(ユニット関数 ,ｴﾝｺｰﾀﾞ対応)
5 相 2 軸ﾄﾞﾗｲﾊﾞ内蔵ｺﾝﾄﾛｰﾗ :0.75A/相(ユニット関数対応)
5 相 2 軸ﾄﾞﾗｲﾊﾞ内蔵ｺﾝﾄﾛｰﾗ :1.4A/相(ユニット関数対応)
拡張 I/O 32/32 点
拡張 I/O 16/16 点

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) Visual Basic.NET でのプログラミング●構造体の初期化
配列を含む構造体は、 Initialize メソッドによ り配列を作成します。
構造体
RESULT構造体
ユニット情報 構造体
A/Dデータ構造体
コマンドバッファ 構造体
データバッファ 構造体
ステータスバッファ 構造体
データ 構造体Initializeメソッドの書式
MC07̲S̲RESULT
Public Sub Initialize()
MC07̲S̲UNIT̲INFO
MC07̲S̲AD̲DATA
MC07̲S̲COMMAND̲BUF
MC07̲S̲DATA̲BUF
MC07̲S̲STATUS̲BUF
MC07̲S̲DATA(4) Visual C#.NET でのプログラミング●構造体の初期化
配列を含む構造体は、 コンストラクタ によ り配列を作成します。
構造体
RESULT構造体
ユニット情報 構造体
A/Dデータ構造体
コマンドバッファ構造体
データバッファ構造体
スタータスバッファ構造体

データ 構造体

コンストラクタの書式
MC07̲S̲RESULT
Public MC07̲S̲RESULT(ushort dummy);MC07̲S̲UNIT̲INFO
Public MC07̲S̲UNIT̲INFO(ushort dummy);MC07̲S̲AD̲DATA
Public MC07̲S̲AD̲DATA(ushort dummy);MC07̲S̲COMMAND̲BUF Public MC07̲S̲COMMAND̲BUF(ushort dummy);MC07̲S̲DATA̲BUF
Public MC07̲S̲DATA̲BUF(ushort dummy);MC07̲S̲STATUS̲BUF Public MC07̲S̲STATUS̲BUF(ushort dummy);MC07̲S̲DATA
Public MC07̲S̲DATA̲BUF(ushort dummy);*コンストラクタの引数dummyは何を指定しても無効です。
●名前空間利用できる構造体、関数は、名前空間 MELEC にあります。
●定数
本リファレンスに示される定数 MC07_XXXX は、全て MC07.MC07_XXXX のように指定します。
(例)
リファレンスに示す定数MC07̲USB̲UNIT̲0
MC07̲SEL̲X
MC07̲GP̲IN

Visual C#.NETでの指定
MC07.MC07̲USB̲UNIT̲0
MC07.MC07̲SEL̲X
MC07.MC07̲GP̲IN- 21 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書3-2. RESULT 構造 体
RESULT構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

説 明
関数を実行した結果が格納されます。
書 式
C言語
typedef struct MC07̲TAG̲S̲RESULT {WORD MC07̲Result[4];} MC07̲S̲RESULT;VBType MC07̲S̲RESULT
MC07̲Result(1 To 4) As Integer
End Type

VB.NET

Structure MC07̲S̲RESULT<MarshalAs(UnmanagedType.ByValArray, SizeConst:=4)> Public MC07̲Result() As Short
Public Sub Initialize()
ReDim MC07̲Result(3)End Sub
End Structure

C#.NET

struct MC07̲S̲RESULT{[MarshalAs( UnmanagedType.ByValArray, SizeConst=4 )] public ushort[] MC07̲Result;public MC07̲S̲RESULT( ushort dummy ){MC07̲Result = new ushort[4];
}
}

メンバ

MC07̲Result[0]MC07̲Result[1]･･･ 0が読み出されます。
･･･ 実行結果を示します。(値は10進表記です。)

値

実行結果

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

関数の実行が正常に終了しました。
DLL内部でAPIエラーが発生しました。
NULLポインタが指定されました。
指定されたユニット番号に誤りがあります。
軸の指定またはI/O PORTの指定に誤りがあります。
デバイスハンドルまたはI/O PORTハンドルまたはユニットハンドルの内容が異常です。
デバイスハンドルで示されている軸がX/Z軸のいずれかではありません。
デバイスハンドルで示されている軸がY/A軸のいずれかではありません。
指定されたデバイスまたはI/O PORTまたはユニットはオープンされていません。
2つのデバイスハンドルで示されている軸が同一チップではありません。
指定されたデバイスまたはI/O PORTまたはユニットは既にオープンされています。
READY WAIT関数またはCOMREG NOT FULL WAIT関数がTIME OVERで終了しています。

- 22 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

値

実行結果

16
17
18
19
20
21
22
23
30
34
38
45
50
51
52
53
54

WM̲QUITメッセージを受信しました。
READY WAIT中またはCOMREG NOT FULL WAIT中にWAIT中止関数が実行されました。
同一デバイスのREADY WAITまたはCOMREG NOT FULL WAIT関数が複数同時に実行されました。

60
61
62
63
64
70
71
72
73
74
80
81
82
83
90
91
92
93
94
100

指定されたユニット番号に該当するユニットがありません。
ユニット 番号が重複しています。
MCC DRIVE STATUS1 PORTのERROR BITが1になっているため関数をエラー終了しました。
実行しようとした関数は、指定されたユニットでは実行できません。
I/O PORTに指定された操作をすることができません。
ADDRESS COUNTERがオーバーフローしているため関数が実行できません。
指定された座標の一方または両方が‑8,388,608〜8,388,607の範囲を越えています。
ドライブ方向の指定に誤りがあります。
ORG TYPEの指定に誤りがあります。
RESOL No.が設定範囲を越えています。
SPEC INITIALIZE2 COMMANDまたはSPEC INITIALIZE3 COMMANDを使用して、ORIGINドライブで許可されていない設定が行われています。
円弧の中心点座標が(0, 0)または中心点と目的地が同一座標です。
円弧補間で求めた短軸PULSE数が‑2,147,483,648〜+2,147,483,647の範囲内でありません。
通過点相対アドレスまたは目的地相対アドレスが(0, 0)です。または、通過点と目的地が同一です。
現在位置、通過点、目的地が直線上にあります。
現在位置から中心点までの相対アドレスが‑8,388,608〜8,388,607の範囲を越えています。

指定されたコマンドの個数が設定範囲を越えています。
既に他のプロセスで環境設定されています。
まだ現在のプロセスで環境設定されていません。

指定された拡張ユニットとの通信の通信レートが設定範囲を越えています。
指定された拡張ユニットとの通信のリトライ回数が設定範囲を越えています。
指定された拡張ユニットとの通信のI/O点数が設定範囲を越えています。
拡張ユニットとの通信の制御の指定に誤りがあります。
信号の指定に誤りがあります。
USB通信時にエラーが発生しました。

MC07̲Result[2]MC07̲Result[3]･･･ 0が読み出されます。
･･･ 将来の拡張用です。

・VBの MC07̲Result(1)〜(4)は、C言語の MC07̲Result［ 0］〜［3］ に対応します。
・VB.NETの MC07̲Result(0)〜(3)は、C言語の MC07̲Result［0］〜［3］ に対応します。
・C#.NETの MC07̲Result［0］〜［3］ は、C言語の MC07̲Result［0］〜［3］ に対応します。
*VB.NETでは、Initializeメソッドで構造体を作成します。
*C#.NETでは、コンストラクタで構造体を作成します。
コンストラクタの引数dummyは何を指定しても無効です。

- 23 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書3-3. USB 関数
3-3-1. 環境設定 /接続確認関数
環境設定関数で環境設定を実行し、ユニット情報読み出し関数でユニットの接続情報を読み出します。
USB シリーズのユニットは、環境設定関数を受け付けると、以降の関数に応答するようになります。
従って、ユーザアプリケーションの最初で必ず環境設定関数を実行する必要があります。

ユニット情報構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能全ユニットのタイプを格納します 。
書 式
C言語
typedef struct̲ MC07̲S̲UNIT̲INFO {WORD UnitType[10];} MC07̲S̲UNIT̲INFO;VBType MC07̲S̲UNIT̲INFO

UnitType(1 To 10) As Integer
End Type
VB.NET

Structure MC07̲S̲UNIT̲INFO<MarshalAs(UnmanagedType.ByValArray, SizeConst:=10)> Public UnitType() As Short
Public Sub Initialize()
ReDim UnitType(9)End Sub
End Structure

C#.NET

struct MC07̲S̲UNIT̲INFO{[MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)]
public ushort[] UnitType;public MC07̲S̲UNIT̲INFO(ushort dummy){
UnitType = new ushort[10];}}メンバ･･･ ユニット番号0に接続されているユニットのタイプが格納されます。
･･･ ユニット番号1に接続されているユニットのタイプが格納されます。
･･･ 将来の拡張用です。

〜

UnitType[0]UnitType[1]UnitType[2]UnitType[9] ･･･ 将来の拡張用です。
格納される値

H'10
H'30
H'31
H'FF

意味
UC‑766
UCD‑7610v1
UCD‑7613v1
未接続

・VBの UnitType(1)〜 (10)は、C言語の UnitType［0］〜［9］ に対応します。
・VB.NETの UnitType(0)〜(9)は、C言語の UnitType［0］〜［9］ に対応します。
・C#.NETの UnitType［0］〜［9］ は、C言語の UnitType［0］〜［9］ に対応します。
*VB.NETでは、Initializeメソッドで構造体を作成します。
*C#.NETでは、コンストラクタで構造体を作成します。
コンストラクタの引数dummyは何を指定しても無効です。

- 24 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

環境設定関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
USBに接続される全ユニットを対象に環境設定を行います。
書 式
C言語
BOOL MC07̲Environment(WORD UnitNo, MC07̲S̲RESULT *psResult);
VB

Function MC07̲Environment(ByVal UnitNo As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲Environment(ByVal UnitNo As Short, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.Environment(ushort UnitNo, ref MC07̲S̲RESULT psResult);

引数

UnitNopsResult･･･ 無条件にMC07̲USB̲UNIT̲0を指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 25 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニット情報読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
USBに接続される全ユニットのタイプを読み出します。
書 式
C言語
BOOL MC07̲ReadUnitInfo(WORD UnitNo, MC07̲S̲UNIT̲INFO *psUnitInfo, MC07̲S̲RESULT *psResult );VB

Function MC07̲ReadUnitInfo(ByVal UnitNo As Integer, ByRef psUnitInfo As MC07̲S̲UNIT̲INFO,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲ReadUnitInfo(ByVal UnitNo As Short, ByRef psUnitInfo As MC07̲S̲UNIT̲INFO,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.ReadUnitInfo(ushort UnitNo, ref MC07̲S̲UNIT̲INFO psUnitInfo,
ref MC07̲S̲RESULT psResult );引数

UnitNopsUnitInfo
psResult･･･ 無条件にMC07̲USB̲UNIT̲0を指定します。
･･･ ユニットのタイプが格納されるユニット情報構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 26 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書3-4. ユニット 関数
ユニットオープン関数で取得したユニットハンドルにより、ユニットの制御を行います。
・当関数の実行は、ユニット単位のアクセス、および拡張ユニットの通信設定、通信制御、ステータス読み出しを行うときに使用します。
・拡張I/Oは、ユニットオープンした後、拡張ユニット通信の設定および通信を開始した後は、I/Oオープンして
拡張I/Oをコントロールします。
ユニットオープンしている間は拡張ユニットのステータスを読み出すことで接続状態を監視することができます。

3-4-1. ユニットオープン /ユニットクローズ関数
ユーザアプリケーションは、ユニットをオープンしてユニットハンドルを受け取ります。
以降、ユニット関数を実行する際にこのユニットハンドルを引数として渡します。
このユニットハンドルは、ユニットをクローズするまで有効です。
ユーザアプリケーション終了時は、必ずユニットをクローズしてください。

ユニットオープン関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたユニット番号でユニットをオープンし、引数 phUnitで示される変数にユニットハンドルを格納します。
書 式
C言語
BOOL MC07̲UOpen(WORD UnitNo, DWORD *phUnit, MC07̲S̲RESULT *psResult);
VB

Function MC07̲UOpen(ByVal UnitNo As Integer, ByRef phUnit As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UOpen(ByVal UnitNo As Short, ByRef phUnit As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UOpen(ushort UnitNo, ref uint phUnit, ref MC07̲S̲RESULT psResult);

引数

UnitNo･･･ ユニット番号を指定します。

指定できる値意味

MC07̲USB̲UNIT̲0
MC07̲USB̲UNIT̲1

ユニット番号0
ユニット番号1

phUnitpsResult･･･ ユニットハンドルが格納される変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 27 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットクローズ関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたユニットをクローズします。
書 式
C言語
BOOL MC07̲UClose(DWORD hUnit, MC07̲S̲RESULT *psResult);
VB

Function MC07̲UClose(ByVal hUnit As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UClose(ByVal hUnit As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UClose(uint hUnit, ref MC07̲S̲RESULT psResult);

引

数

hUnit
psResult･･･ ユニットハンドルを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 28 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-4-2. ユニット動作エラークリア関数
ユニット単位で動作エラーをクリアします。
動作エラーが検出された場合は、エラー要因を確認し、その要因を取り除いてから動作エラークリア関数を実行します。
動作エラークリア関数が実行されるまで、その他の関数実行は正常に行われません。

ユニット動作エラークリア関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたユニットに対し、次の処理を一括で行います。
・指定された軸（複数指定可）の動作エラーをクリアします。
書 式
C言語
BOOL MC07̲UClrError(DWORD hUnit, WORD AxisSel, MC07̲S̲RESULT *psResult );VB

Function MC07̲UClrError(ByVal hUnit As Long, ByVal AxisSel As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UClrError(ByVal hUnit As Integer, ByVal AxisSel As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UClrError(uint hUnit, uint AxisSel, ref MC07̲S̲RESULT psResult );

引

数

hUnit
AxisSel･･･ ユニットハンドルを指定します。
･･･ 軸（ 複数指定可 ）を指定します。どの軸も指定しない場合は0を指定します。

複数の軸を指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲X
X軸
MC07̲SEL̲YY軸
MC07̲SEL̲Z
Z軸
MC07̲SEL̲A
A軸
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲X̲Y
X軸とY軸
MC07̲SEL̲X̲Z
X軸とZ軸
MC07̲SEL̲X̲A
X軸とA軸
MC07̲SEL̲Y̲Z
Y軸とZ軸
MC07̲SEL̲Y̲A
Y軸とA軸
MC07̲SEL̲Z̲A
Z軸とA軸

psResult指定できる値
MC07̲SEL̲X̲Y̲Z
MC07̲SEL̲X̲Y̲A
MC07̲SEL̲X̲Z̲A
MC07̲SEL̲Y̲Z̲A
MC07̲SEL̲X̲Y̲Z̲A

意味
X軸とY軸とZ軸
X軸とY軸とA軸
X軸とZ軸とA軸
Y軸とZ軸とA軸
X軸とY軸とZ軸とA軸･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 29 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-4-3. 拡張ユニット通信関数
ユニットと拡張ユニット間の通信設定を行います。
最初に拡張ユニットの通信を設定した後、拡張ユニットとのサイクリック通信の開始/停止をコントロールします。
拡張I/Oの読み出し/書き込みは、ユニット関数またはI/O PORT関数で行います。

拡張ユニット通信設定関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットと拡張ユニット間の通信設定を行います。
この関数は、拡張ユニット通信ステータスのPOLLING=0の状態で実行してください。
書 式
C言語
BOOL MC07̲UWExUnitCommMode(DWORD hUnit, WORD CommRate, WORD RetryCount, WORD IoBit,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲UWExUnitCommMode(ByVal hUnit As Long, ByVal CommRate As Integer,
ByVal RetryCount As Integer, ByVal IoBit As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UWExUnitCommMode(ByVal hUnit As Integer, ByVal CommRate As Short,
ByVal RetryCount As Short, ByVal IoBit As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UWExUnitCommMode(uint hUnit, ushort CommRate, ushort RetryCount, ushort IoBit,
ref MC07̲S̲RESULT psResult );

引

数

hUnit
CommRate･･･ ユニットハンドルを指定します。
･･･ 拡張ユニットとの通信の通信レートを指定します。

指定できる値意味

MC07̲EX̲UNIT̲COMM̲RATE̲5

5.0Mbps(固定)RetryCount
IoBit･･･ 拡張ユニットとの通信リトライ回数(0〜3)を指定します。初期値は0回です。
･･･ 拡張ユニットとの通信のI/O点数を指定します。

指定できる値意味

MC07̲EX̲UNIT̲COMM̲32BIT
MC07̲EX̲UNIT̲COMM̲16BIT

入力32点/出力32点
入力16点/出力16点

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 30 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

拡張ユニット通信制御関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットと拡張ユニット間の通信を制御します。
書 式
C言語
BOOL MC07̲UWExUnitCommControl(DWORD hUnit, WORD ControlSel, MC07̲S̲RESULT *psResult);
VB

Function MC07̲UWExUnitCommControl(ByVal hUnit As Long, ByVal ControlSel As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UWExUnitCommControl(ByVal hUnit As Integer, ByVal ControlSel As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UWExUnitCommControl(uint hUnit, ushort ControlSel, ref MC07̲S̲RESULT psResult );

引

数

hUnit
ControlSel･･･ ユニットハンドルを指定します。
･･･ 拡張ユニットとの通信の制御を指定します。

指定できる値意味
MC07̲EX̲UNIT̲COMM̲START
通信を開始します。
MC07̲EX̲UNIT̲COMM̲STOP
通信を停止します。
MC07̲EX̲UNIT̲COMM̲DISC̲LATCH̲CLR 拡張ユニット通信のステータスのDISCONNECT LATCHをクリアします。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 31 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

拡張ユニット通信ステータス読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットと拡張ユニット間の通信の状態を読み出します。
書 式
C言語
BOOL MC07̲URExUnitCommStatus(DWORD hUnit, WORD *pStatus, MC07̲S̲RESULT *psResult);
VB

Function MC07̲URExUnitCommStatus(ByVal hUnit As Long, ByRef pStatus As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲URExUnitCommStatus(ByVal hUnit As Integer, ByRef pStatus As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.URExUnitCommStatus(uint hUnit, ref ushort pStatus, ref MC07̲S̲RESULT psResult );

引

数

hUnit
pStatus･･･ ユニットハンドルを指定します。
･･･ 拡張ユニット通信ステータスを格納する変数のポインタを指定します。
拡張ユニット通信ステータスの内容は、次に示す通りです。

D15

D14

D13

D12

D11

D10

D9

D8

0

0

0

0

0

0

0

0

D7

D6

D5

D4

D3

D2

D1

D0

0

DIS‑
CONNECTLATCH

CONNECTPOLLING

0

0

0

0

D0 ：POLLING
ユニットハンドルで指定されたユニットの通信の状態を示します。
1：指定されたユニットが通信を開始している状態を示します。
0：指定されたユニットが通信していない状態を示します。
・拡張ユニット通信制御関数の引数 ControlSel にMC07̲EX̲UNIT̲COMM̲STARTを指定すると、
POLLING=1になります。
・拡張ユニット通信制御関数の引数 ControlSel にMC07̲EX̲UNIT̲COMM̲STOPを指定すると、
POLLING=0になります。
各USBユニットの電源投入時のステータスはPOLLING=0になります。
D1 ：CONNECT
ユニットハンドルで指定されたユニットに接続される拡張ユニットの応答の状態を示します。
1：拡張ユニットが通信に応答している状態を示します。
0：拡張ユニットが通信に応答していない状態を示します。
D2 ：DISCONNECT LATCH
ユニットハンドルで指定されたユニットと拡張ユニット間が、通信中に切断された有無を示します。
1：切断された形跡があります。
0：正常に通信しています。
・拡張ユニット通信制御関数の引数 ControlSel にMC07̲EX̲UNIT̲COMM̲DISC̲LATCH̲CLRを指定すると、DISCONNECT LATCH=0にクリアされます。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 32 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

拡張ユニット通信設定読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットと拡張ユニット間の通信設定を読み出します。
書 式
C言語
BOOL MC07̲URExUnitCommMode(DWORD hUnit, WORD *pCommRate, WORD *pRetryCount,
WORD *pIoBit, MC07̲S̲RESULT *psResult);
VB

Function MC07̲URExUnitCommMode(ByVal hUnit As Long, ByRef pCommRate As Integer,
ByRef pRetryCount As Integer, ByRef pIoBit As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲URExUnitCommMode(ByVal hUnit As Integer, ByRef pCommRate As Short,
ByRef pRetryCount As Short, ByRef pIoBit As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.URExUnitCommMode(uint hUnit, ref ushort pCommRate, ref ushort pRetryCount,
ref ushort pIoBit, ref MC07̲S̲RESULT psResult);

引

数･･･ ユニットハンドルを指定します。
hUnit
pCommRate･･･ 通信モードを格納する変数のポインタを指定します。
pRetryCount ･･･ リトライ回数を格納する変数のポインタを指定します。
pIoBit･･･ I/O点数を格納する変数のポインタを指定します。
psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。
戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 33 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-4-4. ユニットアクセス関数
複数軸のMCC PORTアクセスと、複数のI/O PORTアクセスを一括で行います。

ユニットステータス構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
ユニットのステータスの内容が格納されます。
ステータスデータ構造体は、3‑6‑3.章「MCC PORTアクセス関数」をご覧ください。
書 式
C言語
typedef struct ̲MC07̲S̲UNIT̲STATUS {MC07̲S̲STATUS̲DATA X;
MC07̲S̲STATUS̲DATA Y;
MC07̲S̲STATUS̲DATA Z;
MC07̲S̲STATUS̲DATA A;
MC07̲S̲IN̲PORT InPort;} MC07̲S̲UNIT̲STATUS;
VB

Type MC07̲S̲UNIT̲STATUS
X As MC07̲S̲STATUS̲DATAY As MC07̲S̲STATUS̲DATAZ As MC07̲S̲STATUS̲DATAA As MC07̲S̲STATUS̲DATA
InPort As MC07̲S̲IN̲PORT
End Type

VB.NET

Structure MC07̲S̲UNIT̲STATUS
Public X As MC07̲S̲STATUS̲DATA
Public Y As MC07̲S̲STATUS̲DATA
Public Z As MC07̲S̲STATUS̲DATA
Public A As MC07̲S̲STATUS̲DATA
Public InPort As MC07̲S̲IN̲PORT
End Structure

C#.NET

struct MC07̲S̲UNIT̲STATUS{
public MC07̲S̲STATUS̲DATA X;
public MC07̲S̲STATUS̲DATA Y;
public MC07̲S̲STATUS̲DATA Z;
public MC07̲S̲STATUS̲DATA A;
public MC07̲S̲IN̲PORT InPort;
}

メンバ

X
Y
Z
A
InPort･･･ X軸のステータスデータ構造体の内容が格納されます。
･･･ Y軸のステータスデータ構造体の内容が格納されます。
･･･ Z軸のステータスデータ構造体の内容が格納されます。
･･･ A軸のステータスデータ構造体の内容が格納されます。
･･･ 入力PORT構造体の内容が格納されます。

- 34 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットコマンド構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
ユニットのコマンドを格納します。
コマンドデータ構造体は、3‑6‑3.「MCC PORTアクセス関数」をご覧ください。
書 式
C言語
typedef struct ̲MC07̲S̲UNIT̲COMMAND {MC07̲S̲COMMAND̲DATA X;
MC07̲S̲COMMAND̲DATA Y;
MC07̲S̲COMMAND̲DATA Z;
MC07̲S̲COMMAND̲DATA A;
MC07̲S̲OUT̲PORT OutPort;} MC07̲S̲UNIT̲COMMAND;
VBType MC07̲S̲UNIT̲COMMANDX As MC07̲S̲COMMAND̲DATAY As MC07̲S̲COMMAND̲DATAZ As MC07̲S̲COMMAND̲DATAA As MC07̲S̲COMMAND̲DATA
OutPort As MC07̲S̲OUT̲PORT
End Type

VB.NET

Structure MC07̲S̲UNIT̲COMMAND
Public X As MC07̲S̲COMMAND̲DATA
Public Y As MC07̲S̲COMMAND̲DATA
Public Z As MC07̲S̲COMMAND̲DATA
Public A As MC07̲S̲COMMAND̲DATA
Public OutPort As MC07̲S̲OUT̲PORT
End Structure

C#.NET

struct MC07̲S̲UNIT̲COMMAND{
public MC07̲S̲COMMAND̲DATA X;
public MC07̲S̲COMMAND̲DATA Y;
public MC07̲S̲COMMAND̲DATA Z;
public MC07̲S̲COMMAND̲DATA A;
public MC07̲S̲OUT̲PORT OutPort;
}

メンバ

X
Y
Z
A
OutPort･･･ X軸のコマンドデータ構造体の内容を格納します。
･･･ Y軸のコマンドデータ構造体の内容を格納します。
･･･ Z軸のコマンドデータ構造体の内容を格納します。
･･･ A軸のコマンドデータ構造体の内容を格納します。
･･･ 出力PORT構造体の内容を格納します。

- 35 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

入力PORT構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
ユニットの入力PORTから読み出された内容が格納されます。
I/O PORTから読み出された内容については、3‑5‑2.章「I/Oアクセス関数」をご覧ください。
書 式
C言語
typedef struct ̲MC07̲S̲IN̲PORT {WORD Gpin;
WORD Gp0in;
WORD Gp1in;
WORD Exp0in;
WORD Exp1in;
WORD Ctlp0in;} MC07̲S̲IN4̲PORT;VBType MC07̲S̲IN̲PORT
Gpin As Integer
Gp0in As Integer
Gp1in As Integer
Exp0in As Integer
Exp1in As Integer
Ctlp0in As Integer
End Type

VB.NET

Structure MC07̲S̲IN̲PORT
Public Gpin As Short
Public Gp0in As Short
Public Gp1in As Short
Public Exp0in As Short
Public Exp1in As Short
Public Ctlp0in As ShortEnd Structure

C#.NET

struct MC07̲S̲IN̲PORT{
public ushort Gpin;
public ushort Gp0in;
public ushort Gp1in;
public ushort Exp0in;
public ushort Exp1in;
public ushort Ctlp0in;
}

メンバ

Gpin
Gp0in
Gp1in
Exp0inExp1inCtlp0in･･･ 汎用I/O入力PORTから読み出された内容が格納されます。
･･･ 将来の拡張用です。
･･･ 将来の拡張用です。
･･･ 拡張I/O入力0 PORTから読み出された内容が格納されます。
･･･ 拡張I/O入力1 PORTから読み出された内容が格納されます。
･･･ 制御I/O入力0 PORTから読み出された内容が格納されます。

- 36 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

出力PORT構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
ユニットの出力PORTに書き込むデータ、OR書き込みするデータ、AND書き込みするデータを格納します。
以下は3‑5‑2.章「I/Oアクセス関数」をご覧ください。
・ 書き込むデータ…I/O PORT書き込み関数
・ OR書き込みデータ …I/O PORT OR書き込み関数
・ AND書き込みデータ…I/O PORT AND書き込み関数
書 式
C言語
typedef struct ̲MC07̲S̲OUT̲PORT {WORD Gpout;
WORD Gp0out;
WORD Gp1out;
WORD Exp0out;
WORD Exp1out;
WORD Ctlp0out;} MC07̲S̲OUT̲PORT;VBType MC07̲S̲OUT̲PORT
Gpout As Integer
Gp0out As Integer
Gp1out As Integer
Exp0out As Integer
Exp1out As Integer
Ctlp0out As Integer
End Type

VB.NET

Structure MC07̲S̲OUT̲PORT
Public Gpout As Short
Public Gp0out As Short
Public Gp1out As Short
Public Exp0out As Short
Public Exp1out As Short
Public Ctlp0out As ShortEnd Structure

C#.NET

struct MC07̲S̲OUT̲PORT{
public ushort Gpout;public ushort Gp0out;
public ushort Gp1out;
public ushort Exp0out;
public ushort Exp1out;
public ushort Ctlp0out;
}

メンバ

Gpout
Gp0outGp1outExp0out
Exp1out
Ctlp0out･･･ 汎用I/O出力PORTに書き込むデータを格納します。
･･･ 将来の拡張用です。
･･･ 将来の拡張用です。
･･･ 拡張I/O出力0 PORTに書き込むデータを格納します。
･･･ 拡張I/O出力1 PORTに書き込むデータを格納します。
･･･ 制御I/O出力0 PORTに書き込むデータを格納します。

- 37 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットDRIVE COMMAND書き込み／読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたユニットに対し、次の書き込みと読み出しを書き込み→読み出しの順で一括で行います。
・指定された軸（複数指定可）のDRIVE DATA1 PORT、DRIVE DATA2 PORT、DRIVE COMMAND PORTに、軸ごとに個別のコマンドコードとデータを書き込みます。
・指定された軸（複数指定可）のDRIVE DATA1 PORT、DRIVE DATA2 PORTの内容を読み出します。
ユニット単位で下記のアクセスを1回の関数実行で処理することができます。
・設定データの読み出し
・出力中のドライブ速度の読み出し
・エラーステータスの読み出し
・各カウ ントデータの読み出し
書 式
C言語
BOOL MC07̲UWRDrive(DWORD hUnit, DWORD AxisSel, MC07̲S̲UNIT̲COMMAND *psUnitCmd,
MC07̲S̲UNIT̲STATUS *psUnitStatus, MC07̲S̲RESULT *psResult);
VB

Function MC07̲UWRDrive(ByVal hUnit As Long, ByVal AxisSel As Long,
ByRef psUnitCmd As MC07̲S̲UNIT̲COMMAND, ByRef psUnitStatus As MC07̲S̲UNIT̲STATUS,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UWRDrive(ByVal hUnit As Integer, ByVal AxisSel As Integer,
ByRef psUnitCmd As MC07̲S̲UNIT̲COMMAND, ByRef psUnitStatus As MC07̲S̲UNIT̲STATUS,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UWRDrive(uint hUnit, uint AxisSel, ref MC07̲S̲UNIT̲COMMAND psUnitCmd,
ref MC07̲S̲UNIT̲STATUS psUnitStatus, ref MC07̲S̲RESULT psResult);

引

数

hUnit
AxisSel･･･ ユニットハンドルを指定します。
･･･ 軸（複数指定可）を指定します。どの軸も指定しない場合は0を指定します。

複数の軸を指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲X
X軸
MC07̲SEL̲YY軸
MC07̲SEL̲Z
Z軸
MC07̲SEL̲A
A軸
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲X̲Y
X軸とY軸
MC07̲SEL̲X̲Z
X軸とZ軸
MC07̲SEL̲X̲A
X軸とA軸
MC07̲SEL̲Y̲Z
Y軸とZ軸
MC07̲SEL̲Y̲A
Y軸とA軸
MC07̲SEL̲Z̲A
Z軸とA軸指定できる値
MC07̲SEL̲X̲Y̲Z
MC07̲SEL̲X̲Y̲A
MC07̲SEL̲X̲Z̲A
MC07̲SEL̲Y̲Z̲A
MC07̲SEL̲X̲Y̲Z̲A

意味
X軸とY軸とZ軸
X軸とY軸とA軸
X軸とZ軸とA軸
Y軸とZ軸とA軸
X軸とY軸とZ軸とA軸

psUnitCmd･･･ 書き込むデータが格納されているユニットコマンド構造体のポインタを指定します。
psUnitStatus ･･･ 読み出した内容が格納されるユニットステータス構造体のポインタを指定します。
psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。
戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 38 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットDRIVE COMMAND・I/O書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットに対し、次の書き込みを一括で行います。
・指定された軸（複数指定可）のDRIVE DATA1 PORT、DRIVE DATA2 PORT、DRIVE COMMAND PORTに、軸ごとに個別のコマンドコードとデータを書き込みます。
・指定されたI/O PORT（複数指定可）に、I/O PORTごとに個別のデータを書き込みます。
書 式
C言語
BOOL MC07̲UWDriveIo(DWORD hUnit, DWORD AxisSel, DWORD IoPortSel,
MC07̲S̲UNIT̲COMMAND *psUnitCmd, MC07̲S̲RESULT *psResult);
VB

Function MC07̲UWDriveIo(ByVal hUnit As Long, ByVal AxisSel As Long, ByVal IoPortSel As Long,
ByRef psUnitCmd As MC07̲S̲UNIT̲COMMAND, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UWDriveIo(ByVal hUnit As Integer, ByVal AxisSel As Integer,
ByVal IoPortSel As Integer, ByRef psUnitCmd As MC07̲S̲UNIT̲COMMAND,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UWDriveIo(uint hUnit, uint AxisSel, uint IoPortSel,
ref MC07̲S̲UNIT̲COMMAND psUnitCmd, ref MC07̲S̲RESULT psResult);

引

数

hUnit
AxisSel･･･ ユニットハンドルを指定します。
･･･ 軸（複数指定可）を指定します。どの軸も指定しない場合は0を指定します。

複数の軸を指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲X
X軸
MC07̲SEL̲YY軸
MC07̲SEL̲Z
Z軸
MC07̲SEL̲A
A軸
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲X̲Y
X軸とY軸
MC07̲SEL̲X̲Z
X軸とZ軸
MC07̲SEL̲X̲A
X軸とA軸
MC07̲SEL̲Y̲Z
Y軸とZ軸
MC07̲SEL̲Y̲A
Y軸とA軸
MC07̲SEL̲Z̲A
Z軸とA軸

IoPortSel

指定できる値
MC07̲SEL̲X̲Y̲Z
MC07̲SEL̲X̲Y̲A
MC07̲SEL̲X̲Z̲A
MC07̲SEL̲Y̲Z̲A
MC07̲SEL̲X̲Y̲Z̲A

意味
X軸とY軸とZ軸
X軸とY軸とA軸
X軸とZ軸とA軸
Y軸とZ軸とA軸
X軸とY軸とZ軸とA軸･･･ I/O PORT（複数指定可）の組み合わせを指定します。
どのI/O PORTも指定しない場合は0を指定します。

複数のI/O PORTを指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲GP̲OUT
汎用I/O出力 PORT
MC07̲SEL̲EXP0̲OUT
拡張I/O出力0 PORT
MC07̲SEL̲EXP1̲OUT
拡張I/O出力1 PORT
MC07̲SEL̲CTLP0̲OUT
制御I/O出力0 PORT
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲EXP0̲EXP1̲OUT
拡張I/O出力0 PORTと拡張I/O出力1 PORT

psUnitCmd
psResult･･･ 書き込むデータが格納されているユニットコマンド構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 39 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットSTATUS1・パルスカウンタ・I/O読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットに対し、次の読み出しを一括で行います。
・指定された軸（複数指定可）のSTATUS1 PORTの内容を読み出します。
・指定された軸（複数指定可）のDRIVE DATA1 PORT、DRIVE DATA2 PORTからパルスカウンタの内容を読み出します。
・指定されたI/O PORT（複数指定可）の内容を読み出します。
書 式
C言語
BOOL MC07̲URStatus1PcntIo(DWORD hUnit, DWORD AxisSel, DWORD IoPortSel,
MC07̲S̲UNIT̲STATUS *psUnitStatus, MC07̲S̲RESULT *psResult);
VB

Function MC07̲URStatus1PcntIo(ByVal hUnit As Long, ByVal AxisSel As Long,
ByVal IoPortSel As Long, ByRef psUnitStatus As MC07̲S̲UNIT̲STATUS,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲URStatus1PcntIo(ByVal hUnit As Integer, ByVal AxisSel As Integer,
ByVal IoPortSel As Integer, ByRef psUnitStatus As MC07̲S̲UNIT̲STATUS,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.URStatus1PcntIo(uint hUnit, uint AxisSel, uint IoPortSel,
ref MC07̲S̲UNIT̲STATUS psUnitStatus, ref MC07̲S̲RESULT psResult);

引

数

hUnit
AxisSel･･･ ユニットハンドルを指定します。
･･･ 軸（複数指定可）を指定します。どの軸も指定しない場合は0を指定します。

複数の軸を指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲X
X軸
MC07̲SEL̲YY軸
MC07̲SEL̲Z
Z軸
MC07̲SEL̲A
A軸
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲X̲Y
X軸とY軸
MC07̲SEL̲X̲Z
X軸とZ軸
MC07̲SEL̲X̲A
X軸とA軸
MC07̲SEL̲Y̲Z
Y軸とZ軸
MC07̲SEL̲Y̲A
Y軸とA軸
MC07̲SEL̲Z̲A
Z軸とA軸

IoPortSel

指定できる値
MC07̲SEL̲X̲Y̲Z
MC07̲SEL̲X̲Y̲A
MC07̲SEL̲X̲Z̲A
MC07̲SEL̲Y̲Z̲A
MC07̲SEL̲X̲Y̲Z̲A

意味
X軸とY軸とZ軸
X軸とY軸とA軸
X軸とZ軸とA軸
Y軸とZ軸とA軸
X軸とY軸とZ軸とA軸･･･ I/O PORT（複数指定可）の組み合わせを指定します。
どのI/O PORTも指定しない場合は0を指定します。

複数のI/O PORTを指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲GP̲IN
汎用I/O入力 PORT
MC07̲SEL̲EXP0̲IN
拡張I/O入力0 PORT
MC07̲SEL̲EXP1̲IN
拡張I/O入力1 PORT
MC07̲SEL̲CTLP0̲IN
制御I/O入力0 PORT
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲EXP0̲EXP1̲IN
拡張I/O入力0 PORTと拡張I/O入力1 PORT

psUnitStatus ･･･ 読み出した内容が格納されるユニットステータス構造体のポインタを指定します。
psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。
戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。
- 40 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットSTATUS1・I/O読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットに対し、次の読み出しを一括で行います。
・指定された軸（複数指定可）のSTATUS1 PORTの内容を読み出します。
・指定されたI/O PORT（複数指定可）の内容を読み出します。
書 式
C言語
BOOL MC07̲URStatus1Io(DWORD hUnit, DWORD AxisSel, DWORD IoPortSel,
MC07̲S̲UNIT̲STATUS *psUnitStatus, MC07̲S̲RESULT *psResult);
VB

Function MC07̲URStatus1Io(ByVal hUnit As Long, ByVal AxisSel As Long,
ByVal IoPortSel As Long, ByRef psUnitStatus As MC07̲S̲UNIT̲STATUS,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲URStatus1Io(ByVal hUnit As Integer, ByVal AxisSel As Integer,
ByVal IoPortSel As Integer, ByRef psUnitStatus As MC07̲S̲UNIT̲STATUS,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.URStatus1Io(uint hUnit, uint AxisSel, uint IoPortSel,
ref MC07̲S̲UNIT̲STATUS psUnitStatus, ref MC07̲S̲RESULT psResult);

引

数

hUnit
AxisSel･･･ユニットハンドルを指定します。
･･･軸（複数指定可）を指定します。どの軸も指定しない場合は0を指定します。

複数の軸を指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲X
X軸
MC07̲SEL̲YY軸
MC07̲SEL̲Z
Z軸
MC07̲SEL̲A
A軸
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲X̲Y
X軸とY軸
MC07̲SEL̲X̲Z
X軸とZ軸
MC07̲SEL̲X̲A
X軸とA軸
MC07̲SEL̲Y̲Z
Y軸とZ軸
MC07̲SEL̲Y̲A
Y軸とA軸
MC07̲SEL̲Z̲A
Z軸とA軸

IoPortSel

指定できる値
MC07̲SEL̲X̲Y̲Z
MC07̲SEL̲X̲Y̲A
MC07̲SEL̲X̲Z̲A
MC07̲SEL̲Y̲Z̲A
MC07̲SEL̲X̲Y̲Z̲A

意味
X軸とY軸とZ軸
X軸とY軸とA軸
X軸とZ軸とA軸
Y軸とZ軸とA軸
X軸とY軸とZ軸とA軸･･･ I/O PORT（複数指定可）の組み合わせを指定します。
どのI/O PORTも指定しない場合は0を指定します。

複数のI/O PORTを指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲GP̲IN
汎用I/O入力 PORT
MC07̲SEL̲EXP0̲IN
拡張I/O入力0 PORT
MC07̲SEL̲EXP1̲IN
拡張I/O入力1 PORT
MC07̲SEL̲CTLP0̲IN
制御I/O入力0 PORT
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲EXP0̲EXP1̲IN
拡張I/O入力0 PORTと拡張I/O入力1 PORT

psUnitStatus ･･･ 読み出した内容が格納されるユニットステータス構造体のポインタを指定します。
psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。
戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 41 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットI/O PORT書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットに対し、次の書き込みを一括で行います。
・指定されたI/O PORT（複数指定可）に、I/O PORTごとに個別のデータを書き込みます。
書 式
C言語
BOOL MC07̲UPortOut(DWORD hUnit, DWORD IoPortSel, MC07̲S̲OUT̲PORT *psOutPort,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲UPortOut(ByVal hUnit As Long, ByVal IoPortSel As Long,
ByRef psOutPort As MC07̲S̲OUT̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UPortOut(ByVal hUnit As Integer, ByVal IoPortSel As Integer,
ByRef psOutPort As MC07̲S̲OUT̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UPortOut(uint hUnit, uint IoPortSel, ref MC07̲S̲OUT̲PORT psOutPort,
ref MC07̲S̲RESULT psResult);

引

数

hUnit
IoPortSel･･･ ユニットハンドルを指定します。
･･･ I/O PORT（複数指定可）を指定します。どのI/O PORTも指定しない場合は0を指定します。

複数のI/O PORTを指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲GP̲OUT
汎用I/O出力 PORT
MC07̲SEL̲EXP0̲OUT
拡張I/O出力0 PORT
MC07̲SEL̲EXP1̲OUT
拡張I/O出力1 PORT
MC07̲SEL̲CTLP0̲OUT
制御I/O出力0 PORT
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲EXP0̲EXP1̲OUT
拡張I/O出力0 PORTと拡張I/O出力1 PORT

psOutPort
psResult･･･ 書き込むデータが格納されている出力PORT構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 42 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットI/O PORT OR書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットに対し、次の書き込みを一括で行います。
・指定されたI/O PORT（複数指定可）に、I/O PORTごとに個別のデータをOR書き込みします。
書 式
C言語
BOOL MC07̲UPortOrOut(DWORD hUnit, DWORD IoPortSel, MC07̲S̲OUT̲PORT *psOutPort,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲UPortOrOut(ByVal hUnit As Long, ByVal IoPortSel As Long,
ByRef psOutPort As MC07̲S̲OUT̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UPortOrOut(ByVal hUnit As Integer, ByVal IoPortSel As Integer,
ByRef psOutPort As MC07̲S̲OUT̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UPortOrOut(uint hUnit, uint IoPortSel, ref MC07̲S̲OUT̲PORT psOutPort,
ref MC07̲S̲RESULT psResult);

引

数

hUnit
IoPortSel･･･ ユニットハンドルを指定します。
･･･ I/O PORT（複数指定可）を指定します。どのI/O PORTも指定しない場合は0を指定します。

複数のI/O PORTを指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲GP̲OUT
汎用I/O出力 PORT
MC07̲SEL̲EXP0̲OUT
拡張I/O出力0 PORT
MC07̲SEL̲EXP1̲OUT
拡張I/O出力1 PORT
MC07̲SEL̲CTLP0̲OUT
制御I/O出力0 PORT
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲EXP0̲EXP1̲OUT
拡張I/O出力0 PORTと拡張I/O出力1 PORT

psOutPort
psResult･･･ OR書き込みするデータが格納されている出力PORT構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 43 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットI/O PORT AND書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットに対し、次の書き込みを一括で行います。
・指定されたI/O PORT（複数指定可）に、I/O PORTごとに個別のデータをAND書き込みします。
書 式
C言語
BOOL MC07̲UPortAndOut(DWORD hUnit, DWORD IoPortSel, MC07̲S̲OUT̲PORT *psOutPort,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲UPortAndOut(ByVal hUnit As Long, ByVal IoPortSel As Long,
ByRef psOutPort As MC07̲S̲OUT̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UPortAndOut(ByVal hUnit As Integer, ByVal IoPortSel As Integer,
ByRef psOutPort As MC07̲S̲OUT̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UPortAndOut(uint hUnit, uint IoPortSel, ref MC07̲S̲OUT̲PORT psOutPort,
ref MC07̲S̲RESULT psResult);

引

数

hUnit
IoPortSel･･･ ユニットハンドルを指定します。
･･･ I/O PORT（複数指定可）を指定します。どのI/O PORTも指定しない場合は0を指定します。

複数のI/O PORTを指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲GP̲OUT
汎用I/O出力 PORT
MC07̲SEL̲EXP0̲OUT
拡張I/O出力0 PORT
MC07̲SEL̲EXP1̲OUT
拡張I/O出力1 PORT
MC07̲SEL̲CTLP0̲OUT
制御I/O出力0 PORT
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲EXP0̲EXP1̲OUT
拡張I/O出力0 PORTと拡張I/O出力1 PORT

psOutPort
psResult･･･ AND書き込みするデータが格納されている出力PORT構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 44 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ユニットI/O PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニットに対し、次の読み出しを一括で行います。
・指定されたI/O PORT（複数指定可）の内容を読み出します。
書 式
C言語
BOOL MC07̲UPortIn(DWORD hUnit, DWORD IoPortSel, MC07̲S̲IN̲PORT *psInPort,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲UPortIn(ByVal hUnit As Long, ByVal IoPortSel As Long,
ByRef psInPort As MC07̲S̲IN̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲UPortIn(ByVal hUnit As Integer, ByVal IoPortSel As Integer,
ByRef psInPort As MC07̲S̲IN̲PORT, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.UPortIn(uint hUnit, uint IoPortSel, ref MC07̲S̲IN̲PORT psInPort,
ref MC07̲S̲RESULT psResult);

引

数

hUnit
IoPortSel･･･ ユニットハンドルを指定します。
･･･ I/O PORT（複数指定可）を指定します。どのI/O PORTも指定しない場合は0を指定します。

複数のI/O PORTを指定する場合は、論理和を指定します
指定できる値意味
MC07̲SEL̲GP̲IN
汎用I/O入力 PORT
MC07̲SEL̲EXP0̲IN
拡張I/O入力0 PORT
MC07̲SEL̲EXP1̲IN
拡張I/O入力1 PORT
MC07̲SEL̲CTLP0̲IN
制御I/O入力0 PORT
論理和による指定以外に、次の指定も可能です
指定できる値意味
MC07̲SEL̲EXP0̲EXP1̲IN
拡張I/O入力0 PORTと拡張I/O入力1 PORTpsInPort
psResult･･･ 読み出した内容が格納される入力PORT構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 45 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書3-5. I/O 関数
I/O PORT オープン関数で取得した I/O PORT ハンドルにより、 I/O PORT を 制御します。

3-5-1. I/O オープン /クローズ関数
ユーザアプリケーションは、I/O PORTをオープンし、PORTハンドルを受け取ります。
以降、I/O PORT関数を実行する際に、このPORTハンドルを引数として渡します。
このPORTハンドルは、I/O PORTをクローズするまで有効です。
ユーザアプリケーション終了時は、必ずI/O PORTをクローズしてください。

I/O PORTオープン関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定されたユニット 番号、汎用・制御・拡張I/O PORTを指定してI/O PORTをオープンし、引数 phPortで示される変数にPORTハンドルを格納します。
書 式
C言語
BOOL MC07̲BPortOpen(WORD UnitNo, WORD IoPort, DWORD *phPort, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BPortOpen(ByVal UnitNo As Integer, ByVal IoPort As Integer,
ByRef phPort As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BPortOpen(ByVal UnitNo As Integer, ByVal IoPort As Short,
ByRef phPort As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BPortOpen(ushort UnitNo, ushort IoPort, ref uint phPort,
ref MC07̲S̲RESULT psResult);

引数

UnitNo･･･ ユニット番号を指定します。

指定できる値意味

MC07̲USB̲UNIT̲0
MC07̲USB̲UNIT̲1

ユニット番号0
ユニット番号1

IoPort･･･ I/O PORTを指定します。

指定できる値
MC07̲GP̲IN
MC07̲EXP0̲IN

意味
汎用I/O 入力 PORT
拡張I/O 入力0 PORT

MC07̲EXP1̲IN

拡張I/O 入力1 PORT

MC07̲CTLP0̲IN

制御I/O 入力0 PORT

指定できる値
MC07̲GP̲OUT
MC07̲EXP0̲OUT

意味
汎用I/O 出力 PORT
拡張I/O 出力0 PORT

MC07̲EXP1̲OUT

拡張I/O 出力1 PORT

MC07̲CTLP0̲OUT

制御I/O 出力0 PORT

phPortpsResult･･･ PORTハンドルが格納される変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 46 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

I/O PORTクローズ関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定された汎用・制御・拡張I/O PORTをクローズします。
書 式
C言語
BOOL MC07̲BPortClose(DWORD hPort, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BPortClose(ByVal hPort As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BPortClose(ByVal hPort As Integer,ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BPortClose(uint hPort, ref MC07̲S̲RESULT psResult);

引

数

hPort
psResult･･･ PORTハンドルを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 47 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-5-2. I/O アクセス関数
I/O PORT書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定された汎用・制御・拡張I/O PORTにデータを書き込みます。
書 式
C言語
BOOL MC07̲BPortOut(DWORD hPort, WORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BPortOut(ByVal hPort As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BPortOut(ByVal hPort As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BPortOut(uint hPort, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hPort
pData

･･･ PORTハンドルを指定します。
･･･ 書き込むデータが格納されている変数のポインタを指定します。

・汎用I/O出力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

OUT1

OUT0

・拡張I/O出力0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT0F

OUT0E

OUT0D

OUT0C

OUT0B

OUT0A

OUT09

OUT08

OUT07

OUT06

OUT05

OUT04

OUT03

OUT02

OUT01

OUT00

・拡張I/O出力1 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT1F

OUT1E

OUT1D

OUT1C

OUT1B

OUT1A

OUT19

OUT18

OUT17

OUT16

OUT15

OUT14

OUT13

OUT12

OUT11

OUT10

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

YACLR

YS.ON
/YC.S

XACLR

XS.ON
/XC.S

・制御I/O出力0 PORT
D15
0

D14
0

D13
AACLR

AS.ON

0

0

ZACLR

ZS.ON

0

0

0

0

＊UCD‑7613v1/GDB5F40は、X軸,Y軸のS.ONでC.S信号 が制御できます。
0でノットアクティブになります。
1でアクティブになります。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 48 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

I/O PORT OR 書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定された汎用・制御・拡張I/O PORTにデータをOR書き込みします。
書 式
C言語
BOOL MC07̲BPortOrOut(DWORD hPort, WORD *pData, MC07̲S̲RESULT *psResult );VB

Function MC07̲BPortOrOut(ByVal hPort As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BPortOrOut(ByVal hPort As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BPortOrOut(uint hPort, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hPort
pData

･･･ PORTハンドルを指定します。
･･･ OR書き込みするデータが格納されている変数のポインタを指定します。

・汎用I/O出力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

OUT1

OUT0

・拡張I/O出力0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT0F

OUT0E

OUT0D

OUT0C

OUT0B

OUT0A

OUT09

OUT08

OUT07

OUT06

OUT05

OUT04

OUT03

OUT02

OUT01

OUT00

・拡張I/O出力1 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT1F

OUT1E

OUT1D

OUT1C

OUT1B

OUT1A

OUT19

OUT18

OUT17

OUT16

OUT15

OUT14

OUT13

OUT12

OUT11

OUT10

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

YACLR

YS.ON
/YC.S

XACLR

XS.ON
/XC.S

・制御I/O出力0 PORT
D15
0

D14
0

D13
AACLR

AS.ON

0

0

ZACLR

ZS.ON

0

0

0

0

＊UCD‑7613v1/GDB5F40は、X軸,Y軸のS.ONでC.S信号 が制御できます。
0で現在の出力状態を維持します。(0は0のまま、1は1のまま)
1で現在の出力状態に係わらず、必ずアクティブになります。(0は1に、1は1に)psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 49 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

I/O PORT AND 書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定された汎用・制御・拡張I/O PORTにデータをAND書き込みします。
書 式
C言語
BOOL MC07̲BPortAndOut(DWORD hPort, WORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BPortAndOut(ByVal hPort As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BPortAndOut(ByVal hPort As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BPortAndOut(uint hPort, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hPort
pData

･･･ PORTハンドルを指定します。
･･･ AND書き込みするデータが格納されている変数のポインタを指定します。

・汎用I/O出力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

OUT1

OUT0

・拡張I/O出力0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT0F

OUT0E

OUT0D

OUT0C

OUT0B

OUT0A

OUT09

OUT08

OUT07

OUT06

OUT05

OUT04

OUT03

OUT02

OUT01

OUT00

・拡張I/O出力1 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT1F

OUT1E

OUT1D

OUT1C

OUT1B

OUT1A

OUT19

OUT18

OUT17

OUT16

OUT15

OUT14

OUT13

OUT12

OUT11

OUT10

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

YACLR

YS.ON
/YC.S

XACLR

XS.ON
/XC.S

・制御I/O出力0 PORT
D15
0

D14
0

D13
AACLR

AS.ON

0

0

ZACLR

ZS.ON

0

0

0

0

＊UCD‑7613v1/GDB5F40は、X軸,Y軸のS.ONでC.S信号 が制御できます。
0で現在の出力状態に係わらず、必ずノットアクティブになります。(0は0に、1は0に)1で現在の出力状態を維持します。(0は0のまま、1は1のまま)

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 50 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

I/O PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

CB‑52

CB‑53

機 能
指定された汎用・制御・拡張I/O PORTのデータを読み出します。
書 式
C言語
BOOL MC07̲BPortIn(DWORD hPort, WORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BPortIn(ByVal hPort As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BPortIn(ByVal hPort As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BPortIn(uint hPort, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hPort
pData

･･･ PORTハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。

・汎用I/O 入力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

IN1

IN0

・拡張I/O 入力0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

IN0F

IN0E

IN0D

IN0C

IN0B

IN0A

IN09

IN08

IN07

IN06

IN05

IN04

IN03

IN02

IN01

IN00

・拡張I/O 入力1 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

IN1F

IN1E

IN1D

IN1C

IN1B

IN1A

IN19

IN18

IN17

IN16

IN15

IN14

IN13

IN12

IN11

IN10

・制御I/O入力0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

A.SRDY

00

0

Z.SRDY00

0

Y.SRDY

00

0

X.SRDY・汎用I/O出力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

OUT1

OUT0

・拡張I/O出力0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT0F

OUT0E

OUT0D

OUT0C

OUT0B

OUT0A

OUT09

OUT08

OUT07

OUT06

OUT05

OUT04

OUT03

OUT02

OUT01

OUT00

・拡張I/O出力1 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT1F

OUT1E

OUT1D

OUT1C

OUT1B

OUT1A

OUT19

OUT18

OUT17

OUT16

OUT15

OUT14

OUT13

OUT12

OUT11

OUT10

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

YACLR

YS.ON
/YC.S

XACLR

XS.ON
/XC.S

・制御I/O出力0 PORT
D15
0

D14
0

D13
AACLR

AS.ON

0

0

ZACLR

ZS.ON

0

0

0

＊UCD‑7613v1/GDB5F40は、X軸,Y軸のS.ONからC.S信号の状態が読み出し できます。

- 51 -0MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

0 ･･･ ノットアクティブであることを示す。
1 ･･･ アクティブであることを示す。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 52 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書3-6. デバイス関数
MCC の 1 軸をデバイスと呼称します。
デバイスオープン関数で取得したデバイスハンドルにより、デバイスを制御します。

3-6-1. デバイスオープン /クローズ関数
ユーザアプリケーションは、デバイスオープンし、デバイスハンドルを受け取ります。
以後、デバイス関数を実行する際に、このデバイスハンドルを引数として渡します。
このデバイスハンドルは、デバイスをクローズするまで有効です。
ユーザアプリケーション終了時は、必ずデバイスをクローズしてください。

デバイスオープン関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたユニット番号、軸でデバイスをオープンし、引数 phDevで示される変数にデバイスハンドルを格納します。
書 式
C言語
BOOL MC07̲BOpen(WORD UnitNo, WORD Axis, DWORD *phDev, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BOpen(ByVal UnitNo As Integer, ByVal Axis As Integer, ByRef phDev As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BOpen(ByVal UnitNo As Short, ByVal Axis As Short, ByRef phDev As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BOpen(ushort UnitNo , ushort Axis, ref uint phDev, ref MC07̲S̲RESULT psResult);

引数

UnitNo･･･ ユニット番号を指定します。

指定できる値意味

MC07̲USB̲UNIT̲0
MC07̲USB̲UNIT̲1

ユニット番号0
ユニット番号1

Axis･･･ 軸を指定します。
指定できる値
MC07̲X
MC07̲Y
MC07̲Z
MC07̲A

phDev
psResult

意味
X軸
Y軸
Z軸
A軸

･･･ デバイスハンドルが格納される変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 53 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

デバイスクローズ関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスをクローズします。
書 式
C言語
BOOL MC07̲BClose(DWORD hDev, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BClose(ByVal hDev As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BClose(ByVal hDev As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BClose(uint hDev, ref MC07̲S̲RESULT psResult);

引

数

hDev
psResult･･･ デバイスハンドルを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 54 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-6-2. 動作エラークリア関数
デバイス単位で動作エラーをクリアします。
動作エラーが検出された場合は、エラー要因を確認し、その要因を取り除いてから動作エラークリア関数を実行します。
動作エラークリア関数が実行されるまで、その他の関数実行は正常に行われません。

動作エラークリア関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスの 動作エラーをクリアします。
書 式
C言語
BOOL MC07̲ClrError(DWORD hDev, MC07̲S̲RESULT *psResult);
VB

Function MC07̲ClrError(ByVal hDev As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲ClrError(ByVal hDev As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.ClrError(uint hDev, ref MC07̲S̲RESULT psResult);

引

数

hDev
psResult･･･ デバイスハンドルを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 55 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-6-3. MCC PORT アクセス関数
MCC PORT の読み出しと書き込みを行います。

■ DRIVE COMMAND PORT
DRIVE COMMAND を書き込む PORT です。この PORT に DRIVE COMMAND を書き込むと、データの設定
またはドライブの実行を行います。
書き込む DRIVE COMMAND は下位 8 ビットのみ有効です。上位 8 ビットは無視します。
DRIVE COMMAND には、汎用コマンド（ H'00 〜 H'7F ）と特殊コマンド（ H'80 〜 H'FF ）があります。
● 汎用コマンドの書き込み
汎用コマンドは DRIVE STATUS1 PORT の BUSY=0 、 ERROR=0 の時に書き込むことができます。
汎用コマンドの内、補間ドライブの 2 軸相関コマンドについては、相関軸両軸の BUSY=0 、 ERROR=0 の時に書き込むことができます。
当製品での相関軸は以下の通りです。
UC-776

UCD-7610v1
UCD-7613v1

MCC
MCC

X軸
Y軸
Z軸
A軸

相関軸

MCC

X軸
Y軸

相関軸

相関軸

汎用コマンドはコマンド予約機能でコマンド実行を予約することができます。(応用機能)
汎用コマンドを予約する場合、 DRIVE STATUS1 PORT の COMREG FL=0 、 ERROR=0 の時に汎用コマンドを書き込むことができます。
2 軸相関コマンドを予約する場合、相関軸両軸の COMREG FL=0 、 ERROR=0 の時に書き込むことができます。
予約コマンドの連続書き込み
アプリケーションから最大 8 個までのコマンドをスレーブに送信可能な関数を用意しています。
詳細は、「デバイスドライバ取扱説明書 応用機能編 」の DRIVE COMMAND バッファー書き込み関数をご覧ください。

● 特殊コマンドの書き込み
特殊コマンドの書き込みはドライブ CHANGE コマンド(応用機能)を除き、常時可能です。
特殊コマンドのドライブ CHANGE コマンドは、 DRIVE STATUS5 PORT の各フラグを確認して書き込みます。
・スピード系のドライブ CHANGE 設定コマンドは SPEED CSET=0 の時に書き込むことができます。
・スピード系のドライブ CHANGE 実行コマンドは SPEED CBUSY=0 の時に書き込むことができます。
・ INDEX CHANGE 設定コマンドは INDEX CSET=0 の時に書き込むことができます。
・ INDEX CHANGE 実行コマンドは INDEX CBUSY=0 の時に書き込むことができます。

■ DRIVE DATA PORT(書き込み)
DRIVE COMMAND の設定データ、または指定したドライブの動作データを書き込む PORT です。
この PORT への書き込みは常時可能です。

- 56 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ DRIVE STATUS PORT● DRIVE STATUS1 PORT
ドライブコントロールの現在の状態を表示する PORT です。読み出しは常時可能です。
詳細は「 DRIVE STATUS1 PORT 読み出し関数」をご覧ください。
● DRIVE STATUS2 PORT
外部入出力信号の状態を表示する PORT です。読み出しは常時可能です。
詳細は「 DRIVE STATUS2 PORT 読み出し関数」をご覧ください。
● DRIVE STATUS3 PORT
割り込み要求出力とステータス信号の状態を表示する PORT です。読み出しは常時可能です。
詳細は「 DRIVE STATUS3 PORT 読み出し関数」をご覧ください。
● DRIVE STATUS4 PORT
カウンタのコンパレータ出力状態とオーバーフローを表示する PORT です。読み出しは常時可能です。
詳細は「 DRIVE STATUS4 PORT 読み出し関数」をご覧ください。
● DRIVE STATUS5 PORT
入力信号とドライブ CHANGE 指令の現在の状態を表示する PORT です。読み出しは常時可能です。
詳細は「 DRIVE STATUS5 PORT 読み出し関数」をご覧ください。
● DRIVE STATUS バッファー
上記 DRIVE STATUS1 PORT から DRIVE STATUS5 PORT までと ORIGIN STATUS を一括で読み出す関数を用意しています。この関数の実行は常時可能です。
詳細は「 DRIVE STATUS バッファー読み出し関数」をご覧ください。
ORIGIN ドライブ STATUS の内容については、「 ORIGIN STATUS 読み出し関数」をご覧ください。

■ DRIVE DATA PORT(読み出し)
各種データを読み出す PORT です。読み出しは常時可能です。
READ コマンドを DRIVE COMMAND PORT に書き込むと、該当データを DRIVE DATA1,2 PORT にセットします。
DRIVE DATA1,2 PORT にセットしたデータは次の READ コマンドの書き込みまで保持します。
新しいデータを読み出す場合は、都度 READ コマンドを実行してから読み出します。

- 57 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

コマンドデータ構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能DRIVE COMMAND PORT、DRIVE DATA1 PORT、DRIVE DATA2 PORTに書き込むデータを格納します。
書 式
C言語
typedef struct MC07̲S̲COMMAND̲DATA{WORD Command;
DWORD Data;} MC07̲S̲COMMAND̲DATA
VB.NET

Structure MC07̲S̲COMMAND̲DATA
Public Command As Short
Public Data As Integer
End Structure

C#.NET

struct MC07̲S̲COMMAND̲DATA{
public ushort Command;
public uint Data;}

メンバ

Command ･･･ DRIVE COMMAND PORTに書き込む内容を格納します。
Data･･･ DRIVE DATA1 PORT、DRIVE DATA2 PORTに書き込む内容を格納します。
上位16ビットをDRIVE DATA2 PORTに、下位16ビットをDRIVE DATA1 PORTに格納します。

- 58 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE COMMAND 32ビット一括 書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE DATA1 PORT、DRIVE DATA2 PORTにデータを書き込んだ後、コマンドを書き込みます。
書 式
C言語
BOOL MC07̲LWDrive(DWORD hDev, WORD Cmd, DWORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲LWDrive(ByVal hDev As Long, ByVal Cmd As Integer, ByRef pData As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲LWDrive(ByVal hDev As Integer, ByVal Cmd As Short, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.LWDrive(uint hDev, ushort Cmd, ref uint pData, ref MC07̲S̲RESULT psResult);

引

数

hDev
Cmd
pData

psResult･･･ デバイスハンドルを指定します。
･･･ 書き込むコマンドコードを指定します。
･･･ 書き込むデータが格納されている変数のポインタを指定します。
書き込むデータの上位16ビットは、DRIVE DATA2 PORTに書き込まれます。
書き込むデータの 下位 16ビットは、DRIVE DATA1 PORTに書き込まれます。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 59 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE COMMAND PORT書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE COMMAND PORTにコマンドコードを書き込みます。
書 式
C言語
BOOL MC07̲BWDriveCommand(DWORD hDev, WORD *pCmd, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BWDriveCommand(ByVal hDev As Long, ByRef pCmd As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BWDriveCommand(ByVal hDev As Integer, ByRef pCmd As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BWDriveCommand(uint hDev, ref ushort pCmd, ref MC07̲S̲RESULT psResult);

引

数

hDev
pCmd
psResult･･･ デバイスハンドルを指定します。
･･･ 書き込むコマンドコードが格納されている変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 60 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE DATA 32ビット書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE DATA1 PORT、DRIVE DATA2 PORTにデータを書き込みます。
書 式
C言語
BOOL MC07̲LWData(DWORD hDev, DWORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲LWData(ByVal hDev As Long, ByRef pData As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲LWData(ByVal hDev As Integer, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.LWData(uint hDev, ref uint pData, ref MC07̲S̲RESULT psResult );

引

数

hDev
pData

psResult･･･ デバイスハンドルを指定します。
･･･ 書き込むデータが格納されている変数のポインタを指定します。
書き込むデータの上位16ビットは、DRIVE DATA2 PORTに書き込まれます。
書き込むデータの下位16ビットは、DRIVE DATA1 PORTに書き込まれます。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 61 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE DATA1 PORT書き込み関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE DATA1 PORTにデータを書き込みます。
書 式
C言語
BOOL MC07̲BWDriveData1(DWORD hDev, WORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BWDriveData1(ByVal hDev As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BWDriveData1(ByVal hDev As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BWDriveData1(uint hDev, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hDev
pData
psResult･･･ デバイスハンドルを指定します。
･･･ 書き込むデータが格納されている変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 62 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE DATA2 PORT書き込み関数
UC‑766

UCD‑7610(v1)UCD‑7613(v1)

機 能
指定されたデバイスのDRIVE DATA2 PORTにデータを書き込みます。
書 式
C言語
BOOL MC07̲BWDriveData2(DWORD hDev, WORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BWDriveData2(ByVal hDev As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BWDriveData2(ByVal hDev As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BWDriveData2(uint hDev, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hDev
pData
psResult･･･ デバイスハンドルを指定します。
･･･ 書き込むデータが格納されている変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 63 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ステータスデータ構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能DRIVE STATUS1 PORT、DRIVE DATA1 PORT、DRIVE DATA2 PORTから読み出した内容を格納します。
書 式
C言語
typedef struct ̲MC07̲S̲STATUS̲DATA {WORD Status1;
DWORD Data;} MC07̲S̲STATUS̲DATA;VBType MC07̲S̲STATUS̲DATA
Status1 As Integer
Data As LongEnd Type

VB.NET

Structure MC07̲S̲STATUS̲DATA
Public Status1 As Short
Public Data As Integer
End Structure

C#.NET

public struct MC07̲S̲STATUS̲DATA{
public ushort Status1;
public uint Data;}

メンバ

Status1
Data･･･ STATUS1 PORTから読み出した内容を格納します。
･･･ DRIVE DATA1 PORT、DRIVE DATA2 PORTから読み出した内容を格納します。
DRIVE DATA2 PORTを上位16ビットに、DRIVE DATA1 PORTを下位16ビットに格納します。

- 64 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

STATUS PORT バッファー読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE STATUS1 PORT、DRIVE STATUS2 PORT、DRIVE STATUS3 PORT、DRIVE STATUS4 PORT、DRIVE STATUS5 PORT、ORG STATUSの内容を読み出します。
書 式
C言語
BOOL MC07̲BRStatusBuf(DWORD hDev, WORD StatusBuf[], MC07̲S̲RESULT *psResult);
VB

Function MC07̲BRStatusBuf(ByVal hDev As Long, ByRef StatusBuf As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BRStatusBuf(ByVal hDev As Integer, ByVal StatusBuf() As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRStatusBuf(uint hDev, ushort[] StatusBuf, ref MC07̲S̲RESULT psResult);

引

数

hDev
StatusBuf

psResult･･･ デバイスハンドルを指定します。
･･･ ステータスの配列を指定します。(16要素、32バイトで領域確保されたもの)
StatusBuf[MC07̲STATUS1]･･･ DRIVE STATUS1 PORTの内容が格納されます。
StatusBuf[MC07̲STATUS2]･･･ DRIVE STATUS2 PORTの内容が格納されます。
StatusBuf[MC07̲STATUS3]･･･ DRIVE STATUS3 PORTの内容が格納されます。
StatusBuf[MC07̲STATUS4]･･･ DRIVE STATUS4 PORTの内容が格納されます。
StatusBuf[MC07̲STATUS5]･･･ DRIVE STATUS5 PORTの内容が格納されます。
StatusBuf[MC07̲ORG̲STATUS]･･･ ORG STATUSの内容が格納されます。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

・ステータスの詳細は、各STATUS PORTの読み出し関数をご覧ください 。

- 65 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE STATUS1 PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE STATUS1 PORTを読み出します。
ドライブコントロールの現在の状態を表示する PORTです。読み出しは常時可能です。
書 式
C言語
BOOL MC07̲BRStatus1(DWORD hDev, WORD *pStatus, MC07̲S̲RESULT *psResult );VB

Function MC07̲BRStatus1(ByVal hDev As Long, ByRef pStatus As Integer,
ByRef psResult As MC07̲S̲RESULT)As Boolean

VB.NET

Function MC07̲BRStatus1(ByVal hDev As Integer, ByRef pStatus As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRStatus1(uint hDev, ref ushort pStatus, ref MC07̲S̲RESULT psResult);

引

数

hDev
pStatus･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
DRIVE STATUS1 PORTの内容は、次に示す通りです。

D15

D14

COMREG

COMREG

FL

EP

D7
FSEND

D13

D12

D11
EXT

D10

D9

D8

CONST

DOWN

UP

PAUSE

0

D6

D5

D4

D3

D2

D1

D0

SSEND

LSEND

ERROR

DRVEND

DRIVE

STBY

BUSY

PULSE

D0 ：BUSY
1：コマンド処理中、またはドライブ実行中を示します。
0：コマンド入力待ちの状態を示します。
・2軸相関コマンド実行中は相関軸2軸ともBUSY=1となります。
・EXT PULSE=1の時はBUSY=1となります。
D1 ：STBY
1：パルス出力の準備が完了した状態を示します。
・PAUSE=0でSTBYをクリアしパルス出力を開始します。
・STBY=1中に停止指令を検出した場合、パルス出力は行わずドライブを終了し、STBYをクリアします。
D2 ：DRIVE
1：パルス出力中の状態を示します。
0：パルス出力停止中の状態を示します。
D3 ：DRVEND
1：パルス出力を伴う汎用コマンドが終了した状態を示します。
・停止指令の検出やエラーの発生により、パルス出力を行わずドライブを終了した場合でも
DRVEND=1とします。
・次の汎用コマンドの実行でクリアします。

- 66 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D4 ：ERROR
1：エラーが発生した状態を示します。
・ERRORはERROR STATUSのOR(論理和)出力です。出力するERROR STATUSはERROR STATUS MASKコマンドで個別にマスクすることができます。
ERROR STATUSはERROR STATUS READコマンドで読み出すことができます。
・ERROR=1の間はCOMREG FL=1、COMREG=1となり汎用コマンドの書き込みが無効となります。
・ERRORは動作エラークリア関数でクリアします。但しERROR STATUSの検出条件が一致している
間はクリアされません。
・補間ドライブでエラーが発生した場合、エラー該当軸がERROR=1となります。
D5 ：LSEND
1：LIMIT停止指令を検出した状態を示します。
・次のパルス出力を伴うコマンドの実行でクリアします。
・2軸補間ドライブでLIMIT停止指令を検出した場合、相関軸両軸がLSEND=1となります。
D6 ：SSEND
1：減速停止指令を検出した状態を示します。
・次のパルス出力を伴うコマンドの実行でクリアします。
・2軸補間ドライブで減速停止指令を検出した場合、相関軸両軸がSSEND=1となります。
D7 ：FSEND
1：即時停止指令を検出した状態を示します。
・次のパルス出力を伴うコマンドの実行でクリアします。
・2軸補間ドライブで即時停止指令を検出した場合、相関軸両軸がFSEND=1となります。
D8 ：UP
1：出力中のパルス速度が加速中であることを示します。
0：出力パルスが減速中または一定速中または停止中であることを示します。
D9 ：DOWN
1：出力中のパルス速度が減速中であることを示します。
0：出力パルスが加速中または一定速中または停止中であることを示します。
D10：CONST
1：出力中のパルス速度が一定速中であることを示します。
0：出力パルスが加速中または減速中または停止中であることを示します。
D11：EXT PULSE
1：出力パルスを「外部パルス信号」に設定している状態を示す。
0：出力パルスを「自軸発生パルス」に設定している状態を示す。
・出力パルスの設定はADDRESS COUNTER INITIALIZE1コマンドのCOUNT PULSE SELで行います。
なお、 コントローラドライバは、外部パルス出力機能はありません。
D13：PAUSE(応用機能)
1：待機指令中であることを示します。
・待機指令中はパルス出力の準備が完了してもパルス出力を行わずSTBY=1を保持し待機します。
待機指令が解除されるとパルス出力を開始します。
・PAUSE信号はHARD INITIALIZE7の入力論理のアクティブ設定を切り替えることで操作できます。

- 67 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D14：COMREG EP(応用機能)
1：予約レジスタが空(EMPTY)の状態を示します。
0：予約レジスタに1命令以上のコマンドを格納している状態を示します。
D15：COMREG FL(応用機能)
1：予約レジスタに10命令分のコマンドを格納している状態を示します。
0：予約レジスタに9命令以下のコマンドを格納している状態状態を示します。
・COMREG EPとCOMREG FLの関係は以下の状態を表します。

psResult

COMREG FL

COMREG EP

01

予約レジスタが空の状態(EMPTY)

状態

0

0

予約レジスタに1〜9命令のコマンドを格納している状態

10

予約レジスタに10命令分のコマンドを格納している状態(FULL)

1

1

RESET中またはERROR=1の状態･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 68 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE STATUS2 PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE STATUS2 PORTを読み出します。
外部入出力信号の状態を表示する PORTです。読み出しは常時可能です。
書 式
C言語
BOOL MC07̲BRStatus2(DWORD hDev, WORD *pStatus, MC07̲S̲RESULT *psResult );VB

Function MC07̲BRStatus2(ByVal hDev As Long, ByRef pStatus As Integer,
ByRef psResult As MC07̲S̲RESULT)As Boolean

VB.NET

Function MC07̲BRStatus2(ByVal hDev As Integer, ByRef pStatus As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRStatus2(uint hDev, ref ushort pStatus, ref MC07̲S̲RESULT psResult);

引

数

hDev
pStatus･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。

戻り値
この関数を実行した結果、正常終了したときはTRUE(1)、エラー(0)が発生したときはFALSEを返します。
引

数

hDev
pStatus･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
DRIVE STATUS2 PORTの内容は、次に示す通りです。

D15

D14

D13

D12

D11

D10

D9

D8

DEND BUSYDALM

DEND/PO

DRST/MF

0

NORG

ZORG

ORG

D7

D6

D5

D4

D3

D2

D1

D0

CCWLM

CWLM

FSSTOP

00

0

0RG SIGNAL

PULSE
MASK

D1 ：FSSTOP
1：FSSTOP入力信号がアクティブレベルであることを示します。
D2 ：CWLM
1：CWLM入力信号がアクティブレベルであることを示します。
D3 ：CCWLM
1：CCWLM入力信号がアクティブレベルであることを示します。
D4 ：PULSE MASK
1：PULSE OUTPUT MASK = 1に設定している状態
・SPEC INITIALIZE1コマンドで、PULSE OUTPUT MASK = 1に設定している状態です。
D5 ：ORG SIGNAL
1：ORG合成信号がアクティブレベルであることを示します。
・ORIGIN SPEC SET関数のORG SIGNAL TYPEで設定している合成信号の状態です。
D8 ：ORG
1：ORG入力信号がアクティブレベルであることを示します。

- 69 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

D9 ：ZORG
1：±ZORG入力信号がアクティブレベルであることを示します。
D10：NORG
1：NORG入力信号がアクティブレベルであることを示します。
D12：DRST/MF
1：DRST/MF出力信号がアクティブレベルであることを示します。
D13：DEND/PO
1：DEND/PO入力信号がアクティブレベルであることを示します。
D14：DALM
1：DALM入力信号がアクティブレベルであることを示します。
・SPEC INITIALIZE3コマンドでDALM入力信号を停止機能に設定することができます。
・DALM入力信号のアクティブ論理を切り替えることができます。(応用機能)
D15：DEND BUSY
1：パルス出力完了後、DEND/PO入力信号のアクティブレベル検出待ちの状態を示します。
・SPEC INITIALIZE3コマンドでDEND/PO入力信号を<サーボ対応>に設定している場合に有効です。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 70 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE STATUS3 PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE STATUS3 PORTを読み出します。
ステータス信号の状態を表示する PORTです。読み出しは常時可能です。
書 式
C言語
BOOL MC07̲BRStatus3(DWORD hDev, WORD *pStatus, MC07̲S̲RESULT *psResult );VB

Function MC07̲BRStatus3(ByVal hDev As Long, ByRef pStatus As Integer,
ByRef psResult As MC07̲S̲RESULT)As Boolean

VB.NET

Function MC07̲BRStatus3(ByVal hDev As Integer, ByRef pStatus As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRStatus3(uint hDev, ref ushort pStatus, ref MC07̲S̲RESULT psResult);

引

数

hDev
pStatus･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
DRIVE STATUS3 PORTの内容は、次に示す通りです。

D15

D14

D13

D12

D11

D10

D9

D8

(不定)

(不定)

(不定)

(不定)

(不定)

0

0

FSSTOP

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

SOUT

0

0

0

(不定)

D4 ：SOUT(応用機能)
1：選択したステータスがアクティブレベルを出力中であることを示します。
・SOUT信 号の対応有無については、各ユニットの取扱説明書をご覧ください。
・SOUT信号にはHARD INITIALIZE1コマンドによりそれぞれカウンタ一致検出やドライブコントロールの状態など15のステータスから1つを選択して出力することができます。
・SOUT信号はX軸とY軸のみステータス外部出力できます。
X軸のSOUTはSOUT0信号、Y軸のSOUTはSOUT1信号に割り付いています。
D8 ：FSSTOP
1：FSSTOP入力信号がアクティブレベルであることを示します。
・DRIVE STATUS2 PORTのD1ビットと同じです。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 71 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE STATUS4 PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE STATUS4 PORTを読み出します。
カウンタのコンパレータ出力状態とオーバーフローを表示する PORTです。読み出しは常時可能です。
書 式
C言語
BOOL MC07̲BRStatus4(DWORD hDev, WORD *pStatus, MC07̲S̲RESULT *psResult );VB

Function MC07̲BRStatus4(ByVal hDev As Long, ByRef pStatus As Integer,
ByRef psResult As MC07̲S̲RESULT)As Boolean

VB.NET

Function MC07̲BRStatus4(ByVal hDev As Integer, ByRef pStatus As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRStatus4(uint hDev, ref ushort pStatus, ref MC07̲S̲RESULT psResult);

引

数

hDev
pStatus･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
DRIVE STATUS4 PORTの内容は、次に示す通りです。

D15
0

D14
0

D13
0

D12
0

D11

D10

D9

D8

DFL

DFLINTDFLINTDFLINT

OVF

COMP3

COMP2

COMP1

D7

D6

D5

D4

D3

D2

D1

D0

PULSE

CNTINT

CNTINT

CNTINT

ADDRESSADRINTADRINTADRINT

OVF

COMP3

COMP2

COMP1

OVF

COMP3

COMP2

COMP1

D0 ：ADRINT COMP1
1：アドレスカウンタの値がCOMPARE REGISTER1の検出条件と一致したことを示します。
D1 ：ADRINT COMP2
1：アドレスカウンタの値がCOMPARE REGISTER2の検出条件と一致したことを示します。
D2 ：ADRINT COMP3
1：アドレスカウンタの値がCOMPARE REGISTER3の検出条件と一致したことを示します。
・ADRINT COMP1,2,3の検出条件、およびクリア条件はADDRESS COUNTER INITIALIZE1,2コマンドで設定します。
D3 ：ADDRESS OVF
1：アドレスカウンタの値がオーバーフローしたことを示します。
・ADDRESS OVFはADDRESS COUNTER PRESETコマンドの実行でクリアします。
D4 ：CNTINT COMP1
1：パルスカウンタの値がCOMPARE REGISTER1の検出条件と一致したことを示します。
D5 ：CNTINT COMP2
1：パルスカウンタの値がCOMPARE REGISTER2の検出条件と一致したことを示します。
D6 ：CNTINT COMP3
1：パルスカウンタの値がCOMPARE REGISTER3の検出条件と一致したことを示します。
・CNTINT COMP1,2,3の検出条件、およびクリア条件はPULSE COUNTER INITIALIZE1,2コマンドで設定します。

- 72 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D7 ：PULSE OVF
1：パルスカウンタの値がオーバーフローしたことを示します。
・PULSE OVFはPULSE COUNTER PRESETコマンドの実行でクリアします。
D8 ：DFLINT COMP1
1：パルス偏差カウンタの値がCOMPARE REGISTER1の検出条件と一致したことを示します。
D9 ：DFLINT COMP2
1：パルス偏差カウンタの値がCOMPARE REGISTER2の検出条件と一致したことを示します。
D10：DFLINT COMP3
1：パルス偏差カウンタの値がCOMPARE REGISTER3の検出条件と一致したことを示します。
・DFLINT COMP1,2,3の検出条件、およびクリア条件はDFL COUNTER INITIALIZE1,2コマンドで設定します。
・DFLINTカウンタは、16ビットのハードカウンタとして応用できます。
ハードカウンタのCOMPARE REGISTER検出条件を取ることができます。
D11：DFL OVF
1：パルス偏差カウンタの値がオーバーフローしたことを示します。
・DFL OVFはDFL COUNTER PRESETコマンドの実行でクリアします。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 73 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE STATUS5 PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE STATUS5 PORTを読み出します。
入 力信号とドライブCHANGE指令の現在の状態を表示するPORTです。 読み出しは常時可能です。
書 式
C言語
BOOL MC07̲BRStatus5(DWORD hDev, WORD *pStatus, MC07̲S̲RESULT *psResult );VB

Function MC07̲BRStatus5(ByVal hDev As Long, ByRef pStatus As Integer,
ByRef psResult As MC07̲S̲RESULT)As Boolean

VB.NET

Function MC07̲BRStatus5(ByVal hDev As Integer, ByRef pStatus As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRStatus5(uint hDev, ref ushort pStatus, ref MC07̲S̲RESULT psResult);

引

数

hDev
pStatus･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
DRIVE STATUS5 PORTの内容は、次に示す通りです。

D15

D14

D13

D12

D11

D10

INDEX

INDEX

SPEED

SPEED

RATE

CPP

D9

D8

CSET

CBUSY

CSET

CBUSY

CSET

MASK

CPPOUT

CPPIN

D7

D6

D5

D4

D3

D2

D1

D0

EB1 *1EA1 *1EB0 *1EA0 *1

0

0

(不定)

SS0

D0 ：SS0(応用機能)
1：センサ入力SS0がアクティブレベルであることを示します。
・SS0信号によるセンサ機能は、X軸とY軸のみ使用できます。
X軸のSS0は汎用入力IN0信号、Y軸のSS0は汎用入力IN1信号から操作することができます。
D4 ：EA0 *1
1：±EA入力信号がアクティブレベルであることを示します。
D5 ：EB0 *1
1：±EB入力信号がアクティブレベルであることを示します。
・X軸,Z軸の場合、EA0,EB0に各軸±EA,±EB入力状態を示します。
なお、UC‑766以外の製品は、±EA,±EB入力はありません。
D6 ：EA1 *1
1：±EA入力信号がアクティブレベルであることを示します。
D7 ：EB1 *1
1：±EB入力信号がアクティブレベルであることを示します。
・Y軸,A軸の場合、EA1,EB1に各軸±EA,±EB入力状態を示します。
なお、UC‑766以外の製品は、±EA,±EB入力はありません。
D8 ：CPPIN(応用機能)
1：CPPIN信号の現在の入力状態がハイレベル入力中の状態
D9 ：CPPOUT(応用機能)
1：CPPOUT信号の現在の出力状態がハイレベル出力中の状態- 74 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

D10：CPP MASK(応用機能)
1：CPPIN入力のマスク状態がマスクしている状態
0：DRIVE STATUS1 PORTのERROR = 1→0でクリアします・サブ軸補間ドライブのCPPINマスク機能が動作すると、CPP MASK = 1になります。
CPPIN入力は、X, Y軸のCPP MASK = 1 のOR（論理和）でマスクします。
D11：RATE CSET(応用機能)
1：RATE CHANGE指令が待機中の状態を示します。
0：RATE CHANGE指令なしの状態を示します。
・待機中のCHANGE指令はスピード系ドライブCHANGE機能の変更動作点の検出で実行します。
RATE CHANGEコマンドはSPEED CBUSY=0を確認してから実行してください。
D12：SPEED CBUSY(応用機能)
1：スピード系ドライブCHANGEの実行処理中を示します。
0：スピード系ドライブCHANGEの実行可能な状態を示します。
・ドライブCHANGEコマンドはSPEED CBUSY=0を確認してから実行してください。
D13：SPEED CSET(応用機能)
1：スピード系ドライブCHANGE指令が待機中の状態を示します。
0：スピード系ドライブCHANGE指令なしの状態を示します。
・待機中のCHANGE指令は各CHANGE機能の変更動作点の検出で実行します。
ドライブCHANGE設定コマンドはSPEED CSET=0を確認してから実行してください。
D14：INDEX CBUSY(応用機能)
1：INDEX CHANGEコマンドの実行処理中を示します。
0：INDEX CHANGEコマンドの実行可能な状態を示します。
・INDEX CHANGEコマンドはINDEX CBUSY=0を確認してから実行してください。
D15：INDEX CSET(応用機能)
1：INDEX CHANGE指令が待機中の状態を示します。
0：INDEX CHANGE指令なしの状態を示します。
・待機中のCHANGE指令はINDEX CHANGE機能の変更動作点の検出で実行します。
INDEX CHANGE設定コマンドはINDEX CSET=0を確認してから実行してください。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 75 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE COMMAND 32ビット一括 書き込み関数／読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE DATA1 PORT、DRIVE DATA2 PORT、DRIVE COMMAND PORTにデータ、コマンドを書き込んだ後、DRIVE DATA1 PORT、DRIVE DATA2 PORTの内容を読み出します。
デバイス毎のアクセスを1回の関数実行で処理することができます。
・設定データの読み出し
・出力中のドライブ速度の読み出し
・エラーステータスの読み出し
・各カウ ントデータの読み出し
書 式
C言語
BOOL MC07̲LWRDrive( DWORD hDev, WORD Cmd, DWORD *pWriteData, DWORD *pReadData,
MC07̲S̲RESULT *psResult );VB

Function MC07̲LWRDrive(ByVal hDev As Long, ByVal Cmd As Integer, ByRef pWriteData As Long,
ByRef pReadData As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲LWRDrive(ByVal hDev As Integer, ByVal Cmd As Short, ByRef pWriteData As Integer,
ByRef pReadData As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.LWRDrive( uint hDev, ushort Cmd, ref uint pWriteData, ref uint pReadData,ref MC07̲S̲RESULT psResult );

引

数

hDev
Cmd
pWriteDatapReadData

psResult･･･ デバイスハンドルを指定します。
･･･ 書き込むコマンドコードを指定します。
･･･ 書き込むデータが格納されている変数のポインタを指定します。
書き込むデータの上位16ビットは、DRIVE DATA2 PORTに書き込まれます。
書き込むデータの下位16ビットは、DRIVE DATA1 PORTに書き込まれます。
･･･ 読み出した内容が格納される変数のポインタを指定します。
DRIVE DATA2 PORTの内容が変数の上位16ビットに格納されます。
DRIVE DATA1 PORTの内容が変数の下位16ビットに格納されます。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 76 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE DATA 32ビット 一括読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE DATA1 PORT、DRIVE DATA2 PORTを一括読み出しします。
書 式
C言語
BOOL MC07̲LRDrive(DWORD hDev, DWORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲LRDrive(ByVal hDev As Long, ByRef pData As Long,
ByRef psResult As MC07̲S̲RESULT)As Boolean

VB.NET

Function MC07̲LRDrive(ByVal hDev As Integer, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.LRDrive(uint hDev, ref uint pData, ref MC07̲S̲RESULT psResult);

引

数

hDev
pData

psResult･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
DRIVE DATA2 PORTの内容が変数の上位16ビットに格納されます。
DRIVE DATA1 PORTの内容が変数の下位16ビットに格納されます。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 77 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE DATA1 PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE DATA1 PORTを読み出します。
書 式
C言語
BOOL MC07̲BRDriveData1(DWORD hDev, WORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BRDriveData1(ByVal hDev As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BRDriveData1(ByVal hDev As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRDriveData1(uint hDev, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hDev
pData
psResult･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 78 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

DRIVE DATA2 PORT読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのDRIVE DATA2 PORTを読み出します。
書 式
C言語
BOOL MC07̲BRDriveData2(DWORD hDev, WORD *pData, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BRDriveData2(ByVal hDev As Long, ByRef pData As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BRDriveData2(ByVal hDev As Integer, ByRef pData As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BRDriveData2(uint hDev, ref ushort pData, ref MC07̲S̲RESULT psResult);

引

数

hDev
pData
psResult･･･ デバイスハンドルを指定します。
･･･ 読み出した内容が格納される変数のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 79 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-6-4. WAIT 関数
MCC はコマンドの処理中またはドライブ実行中のとき、 DRIVE STATUS1 PORT BUSY=1 になります。
また、 MCC 上でエラーがあるときは、 DRIVE STATUS1 PORT ERROR=1 になります。
MCC に汎用コマンドを書き込むときは、 DRIVE STATUS1 PORT 内の ERROR=0 および BUSY BIT=0 を
DRIVE STATUS1 PORT 読み出し関数で確認してからコマンドを書き込みます。
また、汎用コマンドを書き込みした後に、終了待ちを行います。
WAIT 関数は、この汎用コマンドを書き込みした後の終了待ちするときに用いる関数です。

READY WAIT関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスがREADY(DRIVE STATUS1 PORT BUSY BIT = 0）になるまで待機します。
最大待ち時間を超えるとエラー終了します。
書 式
C言語
BOOL MC07̲BWaitDriveCommand(DWORD hDev, WORD WaitTime, MC07̲S̲RESULT * psResult);
VB

Function MC07̲BWaitDriveCommand(ByVal hDev As Long, ByVal WaitTime As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BWaitDriveCommand(ByVal hDev As Integer, ByVal WaitTime As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BWaitDriveCommand(uint hDev, ushort WaitTime, ref MC07̲S̲RESULT psResult);

引

数

hDev
WaitTime
psResult･･･ デバイスハンドルを指定します。
･･･ 最大待ち時間を1ms単位で設定します。0を指定するとREADYになるまで無限に待機します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 80 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

WAIT状態読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのWAIT状態を返します。
書 式
C言語
BOOL MC07̲BIsWait(DWORD hDev, WORD *pWaitSts, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BIsWait(ByVal hDev As Long, ByRef pWaitSts As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BIsWait(ByVal hDev As Integer, ByRef pWaitSts As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BIsWait(uint hDev, ref ushort pWaitSts, ref MC07̲S̲RESULT psResult);

引

数

hDev
pWaitSts･･･ デバイスハンドルを指定します。
･･･ WAIT関数の状態が格納される変数のポインタを指定します。

格納される値
01

psResult

意味
WAIT関数の実行中ではありません。
READY WAIT関数または、NOT COMREG FULL WAIT関数の実行中です。

･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 81 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

WAIT中止関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスのREADY WAIT関数または、NOT COMREG FULL WAIT関数の実行を中止します。
書 式
C言語
BOOL MC07̲BBreakWait(DWORD hDev, MC07̲S̲RESULT *psResult);
VB

Function MC07̲BBreakWait(ByVal hDev As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲BBreakWait(ByVal hDev As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.BBreakWait(uint hDev, ref MC07̲S̲RESULT psResult);

引

数

hDev
psResult･･･ デバイスハンドルを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 82 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-6-5. SPEED ・ RATE 関数■ SPEED パラメータ設定機能
SPEED･ RATE セット関数により、加減速ドライブに必要な速度パラメータおよび第 1 パルス周期を 1Hz 単位で設定します。
設定されたパラメータは、速度データと RESOL (速度倍率)に分解後、 MCC07 に設定されます。

■加減速時定数(RATE)設定機能
SPEED･ RATE セット関数により、加減速に必要な加減速時定数( ms/kHz)を RATE TABLE 表から選択し、設定します。
設定された加減速時定数は、変速周期データ( UCYCLE)、減速カーブの変速周期データ( DCYCLE)に変換後、MCC07 に設定されます。
・ FSPD は、そのまま MCC に Hz 単位で設定します。
・ RESOL No.、 URATE No.、 DRATE No.が設定範囲を越えてい た場合、関数エラーとなります。

SPEED・RATE構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

説 明SPEED・RATEセット関数で使用します。
書 式
C言語
typedef struct ̲MC07̲S̲SPEED̲RATE {DWORD FSpd;
DWORD HighSpeed;
DWORD LowSpeed;
DWORD EndLowSpeed;
DWORD SUArea;
DWORD SDArea;
DWORD URateNo;
DWORD DRateNo;} MC07̲S̲SPEED̲RATE;VB.NET

Structure MC07̲S̲SPEED̲RATE {Public FSpd As Integer
Public HighSpeed As Integer
Public LowSpeed As Integer
Public EndLowSpeed As Integer
Public SUArea As Integer
Public SDArea As Integer
Public URateNo As Integer
Public DRateNo As Integer
End Structure

VB

Type MC07̲S̲SPEED̲RATE
FSpd As LongHighSpeed As Long
LowSpeed As Long
EndLowSpeed As Long
SUArea As Long
SDArea As Long
URateNo As Long
DRateNo As LongEnd Type

C#.NET

struct MC07̲S̲SPEED̲RATE{
public int FSpd;
public int HighSpeed;
public int LowSpeed;
public int EndLowSpeed;
public int SUArea;
public int SDArea;
public int URateNo;public int DRateNo;
}

メンバ

FSpd
HighSpeed
LowSpeed
EndLowSpeed
SUAarea
SDAarea
URateNo
DRateNo

･･･ 第一パルスのパルス速度(×1Hz)･･･ 最高速度(×1Hz)･･･ 開始速度(×1Hz)･･･ 終了速度(×1Hz)･･･ SUAREA(×1Hz)･･･ SDAREA(×1Hz)･･･ URATE No. (5‑1‑2. 章ドライブパラメータ RATEテーブル表のRATE No.を参照してください。)･･･ DRATE No. (5‑1‑2. 章ドライブパラメータ RATEテーブル表のRATE No.を参照してください。)- 83 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

SPEED・RATEセット関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたRESOL No. とSPEED・RATE構造体をもとに、SPEEDパラメータ設定機能および加減速時定数(RATE)設定
機能を実行します。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL MC07̲SetSpeedRate(DWORD hDev, WORD ResolNo, MC07̲S̲SPEED̲RATE *psSpeedRate,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲SetSpeedRate(ByVal hDev As Long, ByVal ResolNo As Integer,
ByRef psSpeedRate As MC07̲S̲SPEED̲RATE, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲SetSpeedRate(ByVal hDev As Integer, ByVal ResolNo As Short,
ByRef psSpeedRate As MC07̲S̲SPEED̲RATE, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.SetSpeedRate(uint hDev, ushort ResolNo, ref MC07̲S̲SPEED̲RATE psSpeedRate,
ref MC07̲S̲RESULT psResult);

引

数

hDev
ResolNo
psSpeedRate
psResult･･･ デバイスハンドルを指定します。
･･･ RESOL No. (0〜10)
5‑1‑2. 章ドライブパラメータ の RATEテーブル表のRESOL No.を参照してください。
･･･ 第一パルスのパルス速度、最高速度、開始速度、終了速度、SUAREA、SDAREA、URATE No.、DRATE No.が格納されているSPEED・RATE構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 84 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

SPEED・RATE読み出し関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定されたデバイスからSPEEDパラメータ設定および加減速時定数(RATE)設定の値を読み出し、SPEED・RATE構造体に格納します。
書 式
C言語
BOOL MC07̲ReadSpeedRate(DWORD hDev, WORD *pResolNo, MC07̲S̲SPEED̲RATE *psSpeedRate,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲ReadSpeedRate(ByVal hDev As Long, ByRef pResolNo As Integer,
ByRef psSpeedRate As MC07̲S̲SPEED̲RATE, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲ReadSpeedRate(ByVal hDev As Integer, ByRef pResolNo As Short,
ByRef psSpeedRate As MC07̲S̲SPEED̲RATE, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.ReadSpeedRate(uint hDev, ref ushort pResolNo, ref MC07̲S̲SPEED̲RATE psSpeedRate,
ref MC07̲S̲RESULT psResult);

引

数

hDev
pResolNo
psSpeedRate
psResult･･･ デバイスハンドルを指定します。
･･･ 読み出した RESOL No. (0〜10)が格納されている変数のポインタを指定します。
5‑1‑2. 章ドライブパラメータ の RATEテーブル表のRESOL No.を参照してください。
･･･ 読み出したSPEED・RATEが格納されているSPEED・RATE構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。
・SPEED・RATE構造体のメンバFspd,HighSpeed,LowSpeed,EndLowSpeed,SUArea,SDAreaは、
1Hz未満の速度を切り捨てて格納します。
・U/D CYCLEがRATEテーブル表に存在しない場合、SPEED･RATE構造体のメンバURATE No. , DRATE No.
は隣接する2つのRATE No.のうち、大きい側に補正されます。

- 85 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-6-6. ORIGIN 関数
ORIGIN ドライブは、 MCC が持っている ORIGIN ドライブのセンサー検出機能を組み合わせ、コントローラが自動的にセンサー検出工程を順次行って、機械原点検出を完了させるドライブです。
ORIGIN ドライブには、 ORG-0 〜 5, 10,11,12 の 9 種類のドライブ型式があります。
ORIGIN ドライブ機能の詳細は、 5-1-4.章「 ORIGIN ドライブ」をご覧ください。

ORIGINドライブ パラメータ構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

説 明
ORIGINドライブ パラメータ読み出し関数で読み出した内容を格納する構造体です。
書 式
C言語
typedef struct MC07̲TAG̲S̲ORG̲PARAM {DWORD Spec;
DWORD MarginPulse;
DWORD LimitDelay;
DWORD ScanDelay;
DWORD PulseDelay;
DWORD CScanErrorPulse;
DWORD PulseErrorPulse;
DWORD OffsetPulse;
LONG PresetPulse;} MC07̲S̲ORG̲PARAM;
VB.NET

Structure MC07̲S̲ORG̲PARAM
Public Spec As Integer
Public MarginPulse As Integer
Public LimitDelay As Integer
Public ScanDelay As Integer
Public PulseDelay As Integer
Public CScanErrorPulse As Integer
Public PulseErrorPulse As Integer
Public OffsetPulse As Integer
Public PresetPulse As Integer
End Structure

VB

Type MC07̲S̲ORG̲PARAMSpec As Long
MarginPulse As Long
LimitDelay As Long
ScanDelay As Long
PulseDelay As Long
CScanErrorPulse As Long
PulseErrorPulse As Long
OffsetPulse As Long
PresetPulse As LongEnd Type

C#.NET

struct MC07̲S̲ORG̲PARAM{
public uint Spec;
public uint MarginPulse;
public uint LimitDelay;
public uint ScanDelay;
public uint PulseDelay;
public uint CScanErrorPulse;
public uint PulseErrorPulse;
public uint OffsetPulse;
public int PresetPulse;
}

メンバ

Spec
MarginPulse
LimitDelay
ScanDelay
PulseDelay
CScanErrorPulse
PulseErrorPulse
OffsetPulse
PresetPulse･･･ ORIGINドライブの動作仕様･･･ MARGIN PULSE数･･･ LIMIT DELAY TIME･･･ SCAN DELAY TIME･･･ PULSE DELAY TIME･･･ CONSTANT SCAN工程時のエラー判定PULSE数･･･ 1PULSE送り工程時のエラー判定PULSE数･･･ 機械原点近傍アドレスのOFFSET PULSE数･･･ 機械原点検出後に実行するドライブのPULSE数- 86 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN STATUS読み出し関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
ORIGIN STATUSの内容を読み出します。
STATUS PORT ALL読み出し関数では、各DRIVE STATUSと一緒にORIGIN STATUSを読み出しすることもできます。
書 式
C言語
BOOL MC07̲ReadOrgStatus(DWORD hDev, WORD *pStatus, MC07̲S̲RESULT *psResult);
VB

Function MC07̲ReadOrgStatus(ByVal hDev As Long, ByRef pStatus As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲ReadOrgStatus(ByVal hDev As Integer, ByRef pStatus As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.ReadOrgStatus(uint hDev, ref ushort pStatus, ref MC07̲S̲RESULT psResult);

引

数

hDev
pStatus･･･ デバイスハンドルを指定します。
･･･ 読み出したORIGIN STATUSの内容が格納される変数のポインタ
ORIGIN STATUSの内容は、次に示す通りです。

D15
ADDRESS
ERROR

D14
ERROR
PULSE
ERROR

D13
SENSOR
ERROR

D7

D6

D5

FSEND

SSEND

LSEND

D12

D11

D10

D9

D8

0

0

0

0

0

D4

D3

D2

D1

D0

0

0

0

ORIGINERRORORIGINFLAG

D0: ORIGIN FLAG
ORIGINドライブの機械原点アドレスの記憶状態を示します。
1:機械原点の絶対アドレスを記憶している状態
0:機械原点の絶対アドレスを記憶していない状態

D4: ORIGIN ERRORSENSOR ERROR、ERROR PULSE ERROR、ADDRESS ERRORのいずれかを検出したことを示します。
1:エラーが発生した状態
0:動作エラークリア関数を実行してクリアします。

D5: LSEND
ORIGINドライブ中にLIMIT減速停止指令またはLIMIT即時停止指令を検出したことを示します。
1:LIMIT減速停止指令またはLIMIT即時停止指令を検出した状態
0:次のORIGINドライブの実行でクリアされます。
● LIMIT減速停止指令
入力機能をLIMIT減速停止に設定したCWLM、CCWLM信号● LIMIT即時停止指令
入力機能をLIMIT即時停止に設定したCWLM、CCWLM信号

D6: SSEND
ORIGINドライブ中に減速停止指令を検出したことを示します。
1:減速停止指令を検出した状態
0:次のORIGINドライブの実行でクリアされます。
● 減速停止指令・SLOW STOPコマンド・入力機能を減速停止に設定したDALM信号- 87 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

D7

: FSEND
ORIGINドライブ中に即時停止指令を検出したことを示します。
1:即時停止指令を検出した状態
0:次のORIGINドライブの実行でクリアされます。
● 即時停止指令・FAST STOPコマンド・入力機能を即時停止に設定したDALM信号・FSSTOP信号

D13 : SENSOR ERRORORIGINドライブ中にSENSOR ERRORを検出したことを示します。
1:SENSOR ERRORを検出した状態
0:動作エラークリア関数を実行してクリアします。注1.
D14 : ERROR PULSE ERRORORIGINドライブ中にERROR PULSE ERROR検出機能でERROR PULSE ERRORを検出したことを示します。
1:ERROR PULSE ERRORを検出した状態
0:動作エラークリア関数を実行してクリアします。注1.
D15 : ADDRESS ERRORORIGINドライブの機械原点近傍ADDRESSの計算結果が‑2,147,483,647〜2,147,483,647の範囲を越えていることを示します。
1:ADDRESS ERRORを検出した状態
0:動作エラークリア関数を実行してクリアします。注1.
注1.エラーを検出した場合は、必ず動作エラークリア関数を実行してエラーをクリアしてください。
エラーがクリアされていない場合、ORIGINドライブ関数の実行、およびMCCに汎用コマンドを書き込むことができません。
戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 88 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN SPEC SET関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
ORIGINドライブの動作仕様を設定します。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL

MC07̲SetOrgSpec(DWORD hDev, WORD Spec, MC07̲S̲RESULT *psResult);

VB

Function MC07̲SetOrgSpec(ByVal hDev As Long, ByVal Spec As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲SetOrgSpec(ByVal hDev As Integer, ByVal Spec As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.SetOrgSpec(uint hDev, ushort Spec, ref MC07̲S̲RESULT psResult);

引

hDev
Spec

数
･･･ デバイスハンドルを指定します。
･･･ ORIGINドライブの動作仕様を指定します。
D15
D14
D13
D12
NORG
NORG
NORG
NORG
SIGNALSIGNALSIGNALSIGNAL
TYPE3
TYPE2
TYPE1
TYPE0
D7
D6
D5
D4
SCAN
AUTO
ERROR
MARGINDRSTPULSE
0ENABLEENABLEENABLE

D11
ORG
SIGNALTYPE3
D3
SENSOR
ERROR
TYPE1

D10
ORG
SIGNALTYPE2
D2
SENSOR
ERROR
TYPE0

D9
ORG
SIGNAL
TYPE1
D1
PULSE
SENSOR
TYPE

D8
ORG
SIGNAL
TYPE0
D0
ORIGIN
START
DIR

電源投入時の初期値は、アンダーライン側です。
D0 : ORIGIN START DIR
ORIGINドライブの起動方向 を選択します。
0 : ‑(CCW)方向に起動する。
1 : +(CW)方向に起動する。
D1 : PULSE SENSOR TYPE
最終工程となる1PULSE送り工程での機械原点信号の検出方法を 選択します。
0 : 機械原点信号のエッジを検出して工程を終了する。
1 : 機械原点信号のレベルを検出して工程を終了する。
D2 : SENSOR ERROR TYPE0
D3 : SENSOR ERROR TYPE1
機械原点信号のレベルエラー発生時の動作仕様を選択します。
CONSTANT SCAN工程終了後のDELAY TIME経過後に機械原点信号のレベルをチェックします。
信号のレベルが検出時のレベルと異なる場合には、選択した動作仕様の実行します。
TYPE0 TYPE1 機械原点信号のレベルエラー発生時の動作仕様
0
0
ORIGINドライブをエラー終了する。
0
1
現在位置からCONSTANT SCAN工程を開始する。
1
0
現在位置からSCAN工程を開始する。
1
1
レベルエラーを無視して次の工程に進む。
原点センサに検出幅が狭 いZ 相を用いる場合、レベルエラーになる場合があります。
このようなときは、「レベルエラーを無視して次工程に進む」の設定にしてください。
ORIGINドライブ型式により、レベルをチェックする機械原点信号が異なります。
･ORG0〜5では、ORG SIGNAL TYPEで選択したORG検出信号･ORG‑11,12では、CWLMまたはCCWLM信号
最終工程終了時とORG‑10では、レベルチェックによるエラー判定を行いません。

- 89 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

D5 : ERROR PULSE ERROR ENABLE
ERROR PULSE ERROR検出機能を『有効にする/無効にする』を選択します。
0 : ERROR PULSE ERROR検出機能を無効にする。
1 : ERROR PULSE ERROR検出機能を有効にする。
● ERROR PULSE ERROR検出機能
CONSTANT SCAN工程および、1PULSE送り工程実行中に検出信号を検出出来ずに出力パルス数
がエラー判定するパルス数に達したらORIGINドライブを強制終了します。
エラー判定するパルス数、ORIGIN ERROR PULSE SET関数で設定します。
コントローラ内でERROR PULSE ERROR検出のためにMCCのPULSE COUNTERを使用します。
このため、ユーザアプリケーションでMCCのPULSE COUNTERは使用できなくなりますので御注意ください。
D6 : AUTO DRST ENABLE
SPEC INITIALIZE3 COMMANDでDRST信号を<サーボ対応>に設定にしている場合に有効です。
機械原点信号の検出完了時にDRST信号を『出力する/出力しない』を選択します。
0 : DRST信号を出力しない。
1 : DRST信号を出力する。(10ms間ハイレベルにする)
AUTO DRST ENABLE=1のときは、SPEC INITIALIZE3 COMMANDでDEND信号を<サーボ対応>に設定にしている場合でも、最終工程となるCONSTANT SCAN工程または、1PULSE送り工程ではDEND
信号の確認を行いません。
D7 : SCAN MARGIN ENABLE
SCAN工程時にMARGIN PULSEを入れる/入れないを選択します。
0 : SCAN工程時にMARGIN PULSEをいれない。
1 : SCAN工程時にMARGIN PULSEをいれる。
D8 : ORG SIGNAL TYPE0
D9 : ORG SIGNAL TYPE1
D10: ORG SIGNAL TYPE2
D11: ORG SIGNAL TYPE3

D12: NORG SIGNAL TYPE0
D13: NORG SIGNAL TYPE1
D14: NORG SIGNAL TYPE2
D15: NORG SIGNAL TYPE3

psResult

･･･

TYPE3
0
0
0
0
0
0
0

ORG SIGNAL TYPE
TYPE2 TYPE1 TYPE0
0
0
0
0
0
1
0
1
0
0
1
1
1
0
1
1
1
0
1
1
1

ORG検出信号
ORG信号(初期値)±ZORG信号
ORG信号と±ZORG信号のAND
ORG信号と±ZORG信号のOR
PO/DEND信号
ORG信号とPO/DEND信号のAND
ORG信号とPO/DEND信号のOR

TYPE3
1
1
1
1

NORG SIGNAL TYPE
TYPE2 TYPE1 TYPE0
0
0
0
0
0
1
0
1
0
0
1
1

NORG検出信号NORG信号(初期値)
ZORG信号
NORG信号と±ZORG信号のANDNORG信号と ± ZORG信号のOR

この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 90 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN MARGIN PULSE SET関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
ORIGINドライブの機械原点信号検出後のMARGINパルス数を設定します。
SCAN工程およびCSCAN工程の時にMARGINパルスを挿入します。
NORG検出工程およびORIGINドライブの最終工程では、MARGIN PULSEを挿入しません。
・CONSTANT SCAN工程では、機械原点信号を検出すると進行方向へMARGINパルス分の進入を行ってから停止します。
・SCAN工程では機械原点信号を検出し、ドライブを減速停止した後、MARGINパルス数分の進入を行います。
電源投入時の初期値は、5パルスです。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL

MC07̲SetOrgMarginPulse(DWORD hDev, DWORD MarginPulse, MC07̲S̲RESULT *psResult);

VB

Function MC07̲SetOrgMarginPulse(ByVal hDev As Long, ByVal MarginPulse As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲SetOrgMarginPulse(ByVal hDev As Integer, ByVal MarginPulse As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.SetOrgMarginPulse(uint hDev, uint MarginPulse, ref MC07̲S̲RESULT psResult);

引

数

hDev
MarginPulse

psResult･･･ デバイスハンドルを指定します。
･･･ MARGINパルスを設定します。(0〜65,535パルス)
65,535パルスより大きい値が設定された場合は、65,535パルスに補正されます。
また、MARGINパルスは、必ずCONSTANT SCAN工程時にエラー判定する最大パルス数(ORIGIN ERROR PULSE SET関数を参照)よりも小さいパルス数に設定してください。
小さくない場合は、ORIGINドライブ実行時にエラー判定する最大パルス ‑1がMARGINパルスとなります。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 91 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN DELAY SET関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
ORIGINドライブの各工程後で挿入するDELAYを設定します。
SPEC INITIALIZE3 COMMANDでDEND信号を<サーボ対応>に設定している場合には、各工程で工程終了後、
DEND信号の<サーボ対応>完了後にDELAY TIMEを挿入します。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
● LIMIT DELAY TIME
LIMIT停止信号を検出して停止したときにLIMIT DELAY TIMEを挿入します。
SPEC INITIALIZE3 COMMANDでDRST信号を<サーボ対応>に設定している場合には、DRST信号出力完了後、
LIMIT DELAY TIMEを挿入します。
電源投入時の初期値は、300msです。
● SCAN DELAY TIME
･SCAN工程で検出信号を検出して停止したときにSCAN DELAY TIMEを挿入します。
･CONSTANT SCAN工程で検出信号を検出して停止したときにSCAN DELAY TIMEを挿入します。
･機械原点近傍アドレスまでのINDEXドライブ終了後にSCAN DELAY TIMEを挿入します。
･機械原点検出終了後、PRESETパルスのドライブ開始までの間にSCAN DELAY TIMEを挿入します。
電源投入時の初期値は、50msです。
● PULSE DELAY TIME
･1PULSE送り工程では、PULSE DELAY TIMEで設定した時間間隔で1PULSE送りドライブを繰り返し行います。
検出信号は、PULSE DELAY TIME経過後にチェックします。
電源投入時の初期値は、20msです。
書 式
C言語
BOOL MC07̲SetOrgDelay(DWORD hDev, WORD LimitDelay, WORD ScanDelay,
WORD PulseDelay, MC07̲S̲RESULT *psResult);
VB

Function MC07̲SetOrgDelay(ByVal hDev As Long, ByVal LimitDelay As Integer,
ByVal ScanDelay As Integer, ByVal PulseDelay As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲SetOrgDelay(ByVal hDev As Integer, ByVal LimitDelay As Short,
ByVal ScanDelay As Short, ByVal PulseDelay As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.SetOrgDelay(uint hDev, ushort LimitDelay, ushort ScanDelay,ushort PulseDelay, ref MC07̲S̲RESULT psResult);

引

数

hDev
LimitDelay
ScanDelay
PulseDelay
psResult･･･ デバイスハンドルを指定します。
･･･ LIMIT DELAY TIME(×5ms)を設定します。(0〜1,275ms)
1,275msより大きい値が設定された場合は、1,275msに補正されます。
･･･ SCAN DELAY TIME(×5ms)を設定します。(0〜1,275ms)
1,275msより大きい値が設定された場合は、1,275msに補正されます。
･･･ PULSE DELAY TIME(×5ms)を設定します。(0〜1,275ms)
1,275msより大きい値が設定された場合は、1,275msに補正されます。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 92 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN ERROR PULSE SET関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能CONSTANT SCAN工程時にエラー判定する最大パルス数および、1PULSE送り工程時にエラー判定する最大パルス数を設定します。ORIGIN SPEC SET関数でERROR PULSE ERROR ENABLE=1に設定している場合に有効です。
電源投入時の初期値は、CONSTANT SCAN工程時にエラー判定する最大パルス数、1PULSE送り工程時にエラー判定
する最大パルス数ともに2,147,483,647パルスです。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL MC07̲SetOrgErrorPulse(DWORD hDev, DWORD CScanErrorPulse, DWORD PulseErrorPulse,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲SetOrgErrorPulse(ByVal hDev As Long, ByVal CScanErrorPulse As Long,
ByVal PulseErrorPulse As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲SetOrgErrorPulse(ByVal hDev As Integer, ByVal CScanErrorPulse As Integer,
ByVal PulseErrorPulse As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.SetOrgErrorPulse(uint hDev, uint CScanErrorPulse, uint PulseErrorPulse,
ref MC07̲S̲RESULT psResult);

引

数

hDev
･･･ デバイスハンドルを指定します。
CScanErrorPulse ･･･ CONSTANT SCAN工程時にエラー判定するパルス数を設定します。(1〜2,147,483,647パルス)
1〜2,147,483,647パルス以外が設定された場合は、1パルスに補正されます。

PulseErrorPulse ･･･ 1PULSE送り工程時にエラー判定する最大パルス数を設定します。(1〜2,147,483,647パルス)
psResult

1〜2,147,483,647パルス以外が設定された場合は、1パルスに補正されます。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 93 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN OFFSET PULSE SET関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
ORIGIN SPEC SET関数でORIGIN FLAG ENABLE=1に設定している場合に有効です。
機械原点近傍アドレスのOFFSETパルス数を設定します。
電源投入時の初期値は、100パルスです。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL MC07̲SetOrgOffsetPulse(DWORD hDev, DWORD OffsetPulse, MC07̲S̲RESULT *psResult);
VB

Function MC07̲SetOrgOffsetPulse(ByVal hDev As Long, ByVal OffsetPulse As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲SetOrgOffsetPulse(ByVal hDev As Integer, ByVal OffsetPulse As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.SetOrgOffsetPulse(uint hDev, uint OffsetPulse, ref MC07̲S̲RESULT psResult);

引

数

hDev
OffsetPulse
psResult･･･ デバイスハンドルを指定します。
･･･ 機械原点近傍アドレスのOFFSETパルス数を設定します。(0〜2,147,483,647パルス)･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 94 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN PRESET PULSE SET関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
機械原点検出終了後に実行するORIGINドライブのPRESETパルスを設定します。
電源投入時の初期値は、0パルスです。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL MC07̲SetOrgPresetPulse(DWORD hDev, LONG PresetPulse, MC07̲S̲RESULT *psResult);
VB

Function MC07̲SetOrgPresetPulse(ByVal hDev As Long, ByVal PresetPulse As Long,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲SetOrgPresetPulse(ByVal hDev As Integer, ByVal PresetPulse As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.SetOrgPresetPulse(uint hDev, int PresetPulse, ref MC07̲S̲RESULT psResult);

引

数

hDev
PresetPulse
psResult･･･ デバイスハンドルを指定します。
･･･ PRESETパルス数を設定します。(‑2,147,483,648〜+2,147,483,647パルス)･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 95 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGINドライブ パラメータ読み出し 関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能設定されたORIGINドライブパラメータを読み出し、ORIGINドライブパラメータ構造体に格納します。
書 式
C言語
BOOL MC07̲ReadOrgParam(DWORD hDev, MC07̲S̲ORG̲PARAM *psOrgParam,
MC07̲S̲RESULT *psResult);
VB

Function MC07̲ReadOrgParam(ByVal hDev As Long, ByRef psOrgParam As MC07̲S̲ORG̲PARAM,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲ReadOrgParam(ByVal hDev As Integer, ByRef psOrgParam As MC07̲S̲ORG̲PARAM,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.ReadOrgParam(uint hDev, ref MC07̲S̲ORG̲PARAM psOrgParam,ref MC07̲S̲RESULT psResult);

引

数

hDev
psOrgParam
psResult･･･ デバイスハンドルを指定します。
･･･ ORIGINドライブパラメータ構造体のポインタを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 96 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGIN FLAG RESET 関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
ORIGIN FLAGをRESETします。
以下の場合は、ORIGIN FLAGをRESETした後にORIGNドライブを行ってください。
・回転系で絶対アドレスに意味がないとき
・1回目の機械原点検出完了後に、強制的に装置上の実位置をずらしたとき
ORIGIN FLAGをRESEすると 、機械原点近傍までの高速ドライブを行わずに、センサ検出で停止する原点検出になります。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL MC07̲ResetOrgFlag(DWORD hDev, MC07̲S̲RESULT *psResult);
VB

Function MC07̲ResetOrgFlag(ByVal hDev As Long, ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲ResetOrgFlag(ByVal hDev As Integer, ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.ResetOrgFlag(uint hDev, ref MC07̲S̲RESULT psResult);

引

数

hDev
psResult･･･ デバイスハンドルを指定します。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 97 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

ORIGINドライブ 関 数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定された機械原点の型式に従いORIGINドライブを行います。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語
BOOL MC07̲Org(DWORD hDev, WORD OrgType, MC07̲S̲RESULT *psResult);
VB

Function MC07̲Org(ByVal hDev As Long, ByVal OrgType As Integer,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲Org(ByVal hDev As Integer, ByVal OrgType As Short,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.Org(uint hDev, ushort OrgType, ref MC07̲S̲RESULT psResult);

引

数

hDev
OrgTypepsResult･･･ 対象とするモータコントローラボードのいずれかの軸のデバイスハンドルを指定します。
･･･ 機械原点の型式を指定します。
ORG‑0 : MC07̲ORG0
ORG‑5 : MC07̲ORG5
ORG‑1 : MC07̲ORG1
ORG‑10 : MC07̲ORG10
ORG‑2 : MC07̲ORG2
ORG‑11 : MC07̲ORG11
ORG‑3 : MC07̲ORG3
ORG‑12 : MC07̲ORG12
ORG‑4 : MC07̲ORG4･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 98 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
3-6-7. 補間ドライブ関数
次の補間ドライブ関数を用意しています。
・メインチップ 2 軸相対アドレス直線補間ドライブ関数( 2 軸相関軸の直線補間ドライブ)・メインチップ 2 軸相対アドレス円弧補間ドライブ関数 ( 2 軸相関軸の円弧補間ドライブ)
メインチップ 2 軸相対アドレス直線補間ドライブ、メインチップ 2 軸相対アドレス円弧補間ドライブは、
ドライブが実行される軸の加減速パラメータで補間ドライバの基本 PULSE を発生します。
補間は、発生した基本 PULSE を補間演算して補間 PULSE を出力します。

POSITION構造体
UC‑766

UCD‑7610v1

UCD‑7613v1

説 明
補間ドライブで X･Y座標を指定するときに使用します。
書 式
C言語
typedef struct ̲MC07̲S̲XY̲POSITION {LONG X;LONG Y;} MC07̲S̲XY̲POSITION;
VBType MC07̲S̲XY̲POSITIONX As LongY As LongEnd Type

VB.NET

Structure MC07̲S̲XY̲POSITION
Public X As Integer
Public Y As Integer
End Structure

C#.NET

struct MC07̲S̲XY̲POSITION{
public int X;
public int Y;
}

X
Y

メンバ
･･･ X座標･･･ Y座標- 99 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

メインチップ2軸相対アドレス直線補間ドライブ関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能
MCCのLONG POSITION SET COMMAND,SHORT POSITION COMMAND,MAIN XY STRAIGHT CP COMMANDを使用して、相対アドレスで指定された目的地まで2軸直線補間ドライブを実行します。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
書 式
C言語 BOOL MC07̲McIncStrCp(DWORD hDevX, DWORD hDevY, WORD DrvSpec,
MC07̲S̲XY̲POSITION *psTargetPosition, MC07̲S̲RESULT *psResult);
Function MC07̲McIncStrCp(ByVal hDevX As Long, ByVal hDevY As Long,
ByVal DrvSpec As Integer, ByRef psTargetPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB

VB.NET Function MC07̲McIncStrCp(ByVal hDevX As Integer, ByVal hDevY As Integer,
ByVal DrvSpec As Short, ByRef psTargetPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT) As Booleanbool MC07.McIncStrCp(uint hDevX, uint hDevY, ushort DrvSpec,ref MC07̲S̲XY̲POSITION psTargetPosition, ref MC07̲S̲RESULT psResult);

C#.NET

引

数

hDevX
hDevY
DrvSpec

･･･
･･･
･･･

X/Z軸のデバイスハンドルを指定します。
Y/A軸のデバイスハンドルを指定します。
ドライブ仕様を指定します。
D15
D14
D13
D12

D7

D6

D5

D4

D11

D10

D9

D8

D3

D2

D1
CONST CPENABLE

D0
DRIVE
MODE

0

D0 : DRIVE MODE
直線補間ドライブを 『連続ドライブにする/位置決めドライブにする』を選択します。
0 : 連続ドライブにする (SCANドライブ)
1 : 位置決めドライブにする (INDEXドライブ)
D1 : CONST CP ENABLE
線速一定制御を 『無効にする/有効にする』を選択します。
0 : 線速一定制御を 無効にする。
1 : 線速一定制御を有効 にする。

psTargetPosition･･･ 目的地のX･Y座標(‑2,147,483,648〜+2,147,483,647)が格納されている
POSITION構造体のポインタを指定します。
目的地のX･Y座標は、現在位置を座標の中心(0,0)とした相対座標です。

psResult･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 100 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

メインチップ2軸相対アドレス円弧補間ドライブ関数
UC‑766機 能デバイスドライバで目的点の短軸座標までのPULSE数を求め、MCCのCIRCULAR XPOSITION SET COMMAND,CIRCULAR YPOSITION SET COMMAND,CIRCULAR PULSE SET COMMAND,MAIN XY CIRCULAR CP COMMANDを使用して相対アドレスで指定された目的地まで中心点指定の2軸円弧補間ドライブを実行します。
当関数を実行する前にDRIVE STATUS1 PORT ERROR=0、およびDRIVE STATUS1 PORT BUSY=0を確認してください。
次の場合、関数がエラー終了します。
・円弧の中心点座標が(0, 0)、または中心点と目的地が同一座標の場合
・円弧補間で求めた短軸PULSE数が‑2,147,483,648〜+2,147,483,647の範囲内でない場合
・円弧補間で指定出来ない目的地座標が指定された場合
書 式
C言語
BOOL

MC07̲McIncCirCp(DWORD hDevX, DWORD hDevY, WORD DrvSpec, WORD Dir ,MC07̲S̲XY̲POSITION *psCenterPosition,
MC07̲S̲XY̲POSITION *psTargetPosition, MC07̲S̲RESULT *psResult) As Boolean

VB

Function MC07̲McIncCirCp(ByVal hDevX As Long, ByVal hDevY As Long,ByVal DrvSpec As Integer,
ByVal Dir As Integer, ByRef psCenterPosition As MC07̲S̲XY̲POSITION,
ByRef psTargetPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲McIncCirCp(ByVal hDevX As Integer, ByVal hDevY As Integer,
ByVal DrvSpec As Short, ByVal Dir As Short,
ByRef psCenterPosition As MC07̲S̲XY̲POSITION,
ByRef psTargetPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.McIncCirCp(uint hDevX, uint hDevY, ushort DrvSpec, ushort Dir,
ref MC07̲S̲XY̲POSITION psCenterPosition, ref MC07̲S̲XY̲POSITION psTargetPosition,
ref MC07̲S̲RESULT psResult);

引

数

hDevX
hDevY
DrvSpec

･･･
･･･
･･･

X/Z軸のデバイスハンドルを指定します。
Y/A軸のデバイスハンドルを指定します。
ドライブ仕様を指定します。
D15
D14
D13
D12

D7

D6

D5
YPULSESEL

D4XPULSE
SEL

D11

D10

D9

D8

D3

D2

D1
CONST CPENABLE

D0
DRIVE
MODE

0

D0 : DRIVE MODE
円弧補間ドライブを 『連続ドライブにする/位置決めドライブにする』を選択します。
0 : 連続ドライブにする (SCANドライブ)
1 : 位置決めドライブにする (INDEXドライブ)
D1 : CONST CP ENABLE
線速一定制御を 『無効にする/有効にする』を選択します。
0 : 線速一定制御を 無効にする。
1 : 線速一定制御を有効 にする。

- 101 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D4 : XPULSE SEL
X軸に出力する補間パルスを選択します 。
0 : X軸に円弧補間演算のX座標アドレスの補間パルス(XCP)を出力する。
1 : X軸に円弧補間演算のY座標アドレスの補間パルス(YCP)を出力する。
D5 : YPULSE SEL
Y軸に出力する補間パルスを選択します。
0 : Y軸に円弧補間演算のX座標アドレスの補間パルス(XCP)を出力する。
1 : Y軸に円弧補間演算のY座標アドレスの補間パルス(YCP)を出力する。

Dir

psCenterPosition

psTargetPosition

psResult･･･ 回転方向を指定します。
MC07̲CCW : ‑(CCW)方向

MC07̲CW : +(CW)方向･･･ 中心点のX･Y相対座標(‑8,388,607〜+8,388,607)が格納されている
POSITION構造体のポインタを指定します。
中心点のX･Y座標は、現在位置を座標の中心(0,0)とした相対座標です。
･･･ 目的地のX･Y相対座標(‑16,777,214〜+16,777,214)が格納されている
POSITION構造体のポインタを指定します。
目的地のX･Y座標は、現在位置を座標の中心(0,0)とした相対座標です。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 102 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

円の中心点ゲット関数
UC‑766機 能指定された円弧の通過点相対アドレス、目的地相対アドレスをもとに中心点相対アドレス、回転方向を求めます。
注. 次の場合、関数がエラー終了します。
・通過点相対アドレスまたは目的地相対アドレスが(0, 0)の場合
・通過点相対アドレスと目的地相対アドレスが同一の場合
書 式
C言語
BOOL MC07̲GetCirCenterPosition(MC07̲S̲XY̲POSITION *psPassPosition,
MC07̲S̲XY̲POSITION *psTargetPosition,
WORD *pDir, MC07̲S̲XY̲POSITION *psCenterPosition, MC07̲S̲RESULT *psResult );VB

Function MC07̲GetCirCenterPosition(ByRef psPassPosition As MC07̲S̲XY̲POSITION,
ByRef psTargetPosition As MC07̲S̲XY̲POSITION, ByRef pDir As Integer,
ByRef psCenterPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT) As Boolean

VB.NET

Function MC07̲GetCirCenterPosition(ByRef psPassPosition As MC07̲S̲XY̲POSITION,
ByRef psTargetPosition As MC07̲S̲XY̲POSITION, ByRef pDir As Short,
ByRef psCenterPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.GetCirCenterPosition(ref MC07̲S̲XY̲POSITION psPassPosition,
ref MC07̲S̲XY̲POSITION psTargetPosition, ref ushort pDir,
ref MC07̲S̲XY̲POSITION psCenterPosition,
ref MC07̲S̲RESULT psResult);

引数

psPassPosition

psTargetPosition

pDir
psCenterPosition

psResult･･･ 通過点のX･Y相対座標(16,777,214〜+16,777,214)が格納されている
POSITION構造体のポインタを指定します。
通過点のX･Y座標は、現在位置を座標の中心(0,0)とした相対座標です。
･･･ 目的地のX･Y相対座標(‑16,777,214〜+16,777,214)が格納されている
POSITION構造体のポインタを指定します。
目的地のX･Y座標は、現在位置を座標の中心(0,0)とした相対座標です。
･･･ 円弧の回転方向が格納される変数のポインタです。
MC07̲CCW : ‑(CCW)方向
MC07̲CW : +(CW)方向･･･ 中心点のX･Y相対座標(‑8,388,607〜+8,388,607)が格納されるPOSITION構造体のポインタを指定します。
中心点のX･Y座標は、現在位置を座標の中心(0,0)とした相対座標です。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 103 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

相対アドレス変換関数
UC‑766

UCD‑7610v1

UCD‑7613v1

機 能指定された絶対アドレスを相対アドレスに変換(絶対アドレス ‑ 現在位置(MCCのADDRESS COUNTERの内容))します。
次の場合、関数がエラー終了します。
・ADDRESS COUNTERがOVER FLOWしている場合
書 式
C言語
BOOL MC07̲IncFromAbs(DWORD hDevX, DWORD hDevY, MC07̲S̲XY̲POSITION *psAbsPosition,
MC07̲S̲XY̲POSITION *psIncPosition, MC07̲S̲RESULT *psResult );VB

Function MC07̲IncFromAbs(ByVal hDevX As Long, ByVal hDevY As Long,
ByRef psAbsPosition As MC07̲S̲XY̲POSITION,
ByRef psIncPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT ) As Boolean

VB.NET

Function MC07̲IncFromAbs(ByVal hDevX As Integer, ByVal hDevY As Integer,
ByRef psAbsPosition As MC07̲S̲XY̲POSITION,
ByRef psIncPosition As MC07̲S̲XY̲POSITION,
ByRef psResult As MC07̲S̲RESULT) As Boolean

C#.NETbool MC07.IncFromAbs(uint hDevX, uint hDevY,
ref MC07̲S̲XY̲POSITION psAbsPosition,
ref MC07̲S̲XY̲POSITION psIncPosition,
ref MC07̲S̲RESULT psResult);

引

数

hDevX
hDevY
psAbsPosition
psIncPosition
psResult･･･ X/Z軸のデバイスハンドルを指定します。
･･･ Y/A軸のデバイスハンドルを指定します。
･･･ X･Y絶対座標が格納されているPOSITION構造体のポインタを指定します。
･･･ 変換されたX･Y相対座標が格納されるPOSITION構造体のポインタを指定します。
X･Y座標は、現在位置を座標の中心(0,0)とした相対座標です。
･･･ この関数を実行した結果が格納されるRESULT構造体のポインタを指定します。
NULLポインタまたは0が指定されると、実行結果が格納されません。

戻り値
この関数を実行した結果、正常終了したときはTRUE、エラーが発生したときはFALSEを返します。

- 104 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

４．コマンド仕様
4-1. ドライブコマンド
4-1-1. 入出力仕様の設定(1) SPEC INITIALIZE1
ドライブパルスの出力仕様を設定します。
<実行シーケンス>
STATUS1 PORTCOMMAND H'01
N

ERROR = 0 ?

SPEC INITIALIZE1 COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORT

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。

BUSY = 0 ?

推奨 :MC07_BRStatus1 関数

Y
DATA1 PORT

③ DRIVE DATA1 PORT に設定データを書き込みます。

WRITE
COMMAND PORTWRITE

④ DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

−

−

−

−

−

−

−

−

D7

D6

D5

D4

D3

D2

D1

D0

−

PULSE
OUTPUTMASKPULSE
OUTPUT
TYPE1

PULSE
OUTPUT
TYPE0

−

−

−

−

● 出荷時の値は H'0000 (アンダーライン側) です。
D0 ： PULSE OUTPUT TYPE0
D1 ： PULSE OUTPUT TYPE1
CWP, CCWP 信号出力のドライブパルス出力方式を選択します。
TYPE1

TYPE0

パルス出力方式

CWP 信号出力

CCWP 信号出力00

独立方向出力＋方向のパルス出力−方向のパルス出力01

方向指定出力

パルス出力

方向出力

1

0

２逓倍の位相差信号

A 相出力

B 相出力

1

1

４逓倍の位相差信号

A 相出力

B 相出力

・コントローラドライバ製品のドライブパルス出力方式の設定は禁止です。
・方向出力の場合、 CCWP 信号 = HIGH で +(CW)方向 , CCWP 信号 = LOW で -( CCW)方向を示します。
D2 ： PULSE OUTPUT MASKCWP, CCWP 信号出力のドライブパルス出力を「マスクする／マスクしない」を選択します。
0 ：ドライブパルス出力をマスクしない （パルスを出力する）
1 ：ドライブパルス出力をマスクする（パルスを出力しない）
パルス出力をマスクしたドライブの実行時間は、タイマとして使用できます。
・「マスクする」を選択した場合は、 CWP, CCWP 信号の出力を OFF レベルに固定します。
アドレスカウンタは、カウントパルスのカウントを停止し、カウントパルス選択部の出力も停止します。
パルスカウンタとパルス偏差カウンタは発生パルスをカウントすることができません。
アドレスカウンタが停止するため、 ABS INDEX ドライブを実行すると自動停止できません。
その他の機能は「マスクしない」を選択した場合と同様です。
・「マスクする」に設定すると、 DRIVE STATUS2 PORT の PULSE MASK = 1 になります。

- 105 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) SPEC INITIALIZE2CWLM, CCWLM 信号の入力機能を設定します。 SS0 信号の入力機能を設定します。
<実行シーケンス>
STATUS1 PORTERROR = 0 ?

COMMAND H'02
N

SPEC INITIALIZE2 COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORTBUSY = 0 ?

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。
推奨 :MC07_BRStatus1 関数

Y
DATA1 PORTWRITECOMMAND PORTWRITE

③ DRIVE DATA1 PORT に設定データを書き込みます。

④ DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

−

−

−

−

D7

D6

D5

D4

0

0

1

D11

D10

1

1

1

D9

D8

SS0

SS0

TYPE1

TYPE0

D3

D2

D1

D0

CCWLM

CCWLM

CWLM

CWLM

TYPE1

TYPE0

TYPE1

TYPE0

●出荷時の値は H'F30 (アンダーライン側) です。
D0 ： CWLM TYPE0
D1 ： CWLM TYPE1CWLM 信号入力のアクティブレベル検出時の入力機能を選択します。
TYPE1

TYPE0

CWLM 信号の入力機能

00＋方向の LIMIT 即時停止信号として使用する

01＋方向の LIMIT 減速停止信号として使用する

1

0

即時停止信号として使用する

1

1

汎用入力として使用する

D2 ： CCWLM TYPE0
D3 ： CCWLM TYPE1
CCWLM 信号入力のアクティブレベル検出時の入力機能を選択します。
TYPE1

TYPE0

CCWLM 信号の入力機能

00−方向の LIMIT 即時停止信号として使用する

01−方向の LIMIT 減速停止信号として使用する

1

0

即時停止信号として使用する

1

1

汎用入力として使用する

D4 ： SS0 TYPE0
D5 ： SS0 TYPE1
SS0 信号入力のアクティブレベル検出時の入力機能を選択します。
SS0 信号 の入力機能

TYPE1

TYPE0

0

0

設定禁止

0

1

減速停止信号として使用する

1

0

即時停止信号として使用する

1

1

外部トリガ信号として使用する

・ 汎用入力 IN0 信号から X 軸 SS0 、 IN1 信号から Y 軸 SS0 が操作できます。
Z 軸と A 軸の SS0 は操作できません。
・ SS0 信号の外部トリガ信号機能により、各種カウンタのカウントデータのラッチおよびカウンタのクリアが可能です。
SS0 信号によるカウンタラッチ設定は、 COUNT LATCH SPEC SET コマンドで設定します。

- 106 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) SPEC INITIALIZE3
DRST/MF 信号の出力機能、 DEND/PO, DALM 信号の入力機能を設定します。
<実行シーケンス>
STATUS1 PORTERROR = 0 ?

COMMAND H'03
N

SPEC INITIALIZE3 COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORTBUSY = 0 ?

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。
推奨 :MC07_BRStatus1 関数

Y
DATA1 PORTWRITECOMMAND PORTWRITE

③ DRIVE DATA1 PORT に設定データを書き込みます。

④ DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

−

−

D7

D6

−

−

D13

D12

D11

D10

D9

D8

−

DOWN
PULSE
MASK

−

−

−

−

D5

D4

D3

D2

D1

D0

DALM

DALM

DEND/PO

DEND/PO

DRST

DRST

TYPE1

TYPE0

TYPE1

TYPE0

TYPE1

TYPE0

●出荷時の値は H'003F (アンダーライン側) です。
D0 ： DRST TYPE0
D1 ： DRST TYPE1
DRST/MF 信号の出力機能を選択します。
TYPE1

TYPE0

DRST 信号の出力機能

サーボ対応

0

0

停止時に 10 ms 間アクティブ レベル を出力する<サーボ対応>

0

1

設定禁止

ー

1

0

設定禁止

ー

1

1

汎用出力として使用するー・「 00 」を選択した場合は、即時停止による DRST 機能が有効になります。
コントローラドライバ製品は、「 00 」の設定は禁止です。(初期値の汎用出力としてください。)
DRST OUT コマンドによる DRST/MF 信号からの出力は、 10ms 間のワンショット信号を出力します。
SIGNAL OUT コマンドによる DRST/MF 信号からの出力は、設定された出力レベルを出力します。
・「 11 」を選択した場合は、即時停止による DRST 機能が無効になります。
DRST OUT コマンドによる DRST/MF 信号からの出力は、 10ms 間のワンショット信号を出力します。
SIGNAL OUT コマンドによる DRST/MF 信号からの出力は、設定された出力レベルを出力します。
コントローラドライバ製品は、汎用出力(初期値)の設定とし、 SIGNAL OUT コマンドによってモータの励磁電流をON/OFF することができます。
D2 ： DEND/PO TYPE0
D3 ： DEND/PO TYPE1
DEND/PO 信号の入力機能を選択します。
TYPE1

TYPE0

DEND/PO 信号の入力機能

サーボ対応

0

0

DEND/PO のアクティブを検出するまでドライブを終了しない<サーボ対応>01

減速停止信号として使用する

ー

1

0

即時停止信号として使用する

ー

1

1

汎用入力として使用するー・「 00 」を選択した場合は、パルス出力停止後に DEND/PO 信号にサーボからの位置決め完了信号が検出されるまでドライブ終了とせずに DRIVE STATUS1 PORT の BUSY=1 とします。
・コントローラドライバ製品の DEND/PO 入力機能は設定禁止です。(初期値の汎用入力としてください。)- 107 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D4 ： DALM TYPE0
D5 ： DALM TYPE1
DALM 信号のアクティブレベル検出時の入力機能を選択します。
TYPE1

TYPE0

DALM 信号の入力機能

サーボ対応

0

0

機能はありません (汎用入力)

ー

0

1

減速停止信号として使用する

ー

1

0

即時停止信号として使用する

ー

1

1

汎用入力として使用する

ー・ DALM 信号の入力状態は DRIVE STATUS2 PORT の DALM フラグから読み出すことができます。
DALM 信号の検出(サーボ異常やステピングモータドライバの過熱警告信号など)により、即時停止または減速停止
させることができます。

D12 ： DOWN PULSE MASKINDEX ドライブの自動減速停止機能を「マスクする／マスクしない」を選択します。(応用機能)
0 ：自動減速停止機能をマスクしない （自動減速停止機能で停止する）
1 ：自動減速停止機能をマスクする（減速パルス数 "0" で即時停止する）
・「マスクしない」を選択した場合は、「加減速ドライブ」および「減速ドライブ」の INDEX ドライブ中に、パルス速度を自動減速して指定アドレスで停止します。
・「マスクする」を選択した場合は、自動減速停止機能は動作しません。
INDEX ドライブの指定アドレスに達すると、減速パルス数なしで即時停止します。
ドライブ形状を「加減速ドライブ」に設定している場合は、「加速ドライブ」の形状でドライブを終了します。この場合の終了速度は、 HSPD x RESOL です。
ドライブ形状を「減速ドライブ」に設定している場合は、「一定速ドライブ」の形状でドライブを終了します。この場合の終了速度は、 HSPD x RESOL です。
S 字加減速 INDEX ドライブの三角駆動回避機能も無効になります。
ドライブ中に減速停止指令を検出した場合は、終了速度まで減速してからドライブを終了します。
S 字加速中の減速停止指令検出時の三角駆動回避機能も有効です。
但し、減速中に指定アドレスに達した場合は、指定アドレスで即時停止します。

- 108 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-1-2. ドライブ パラメータの設定
ドライブパラメータには、デバイスドライバの SPEED･ RATE 関数で設定するパラメータとドライブコマンドで直接設定するパラメータがあります。
●デバイスドライバの関数で設定するパラメータ
・第 1 パルス出力周期・加減速パラメータ●ドライブコマンドで直接設定するパラメータ・ JOG パラメータ
ここではドライブコマンドで直接設定するパラメータのコマンド仕様を示します。
デバイスドライバの関数で実行するパラメータについては SPEED･ RATE 関数仕様をご覧ください。

(1) JSPD SET
JOG コマンドによる複数パルスの動作を行うときに JOG 速度を設定します。
JOG パルス速度を設定します。
<実行シーケンス >STATUS1 PORTCOMMAND H'0C
N

JSPD SET COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

ERROR = 0 ?
Y
NSTATUS1 PORT

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。

BUSY = 0 ?

推奨 :MC07_BRStatus1 関数

Y③ DRIVE DATA1 PORT に JOG パルス速度 D15--D0 を書き込みます。

DATA1 PORTWRITE

④ DRIVE DATA2 PORT に JOG パルス速度 D21--D16 を書き込みます。
設定範囲は、 0 〜 4,194,303 （ H'00_0000 〜 H'3F_FFFF ）です。

DATA2 PORTWRITECOMMAND PORT

⑤ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D15

D7

D6

D5

D4

D3

D2

D1

D0

JSPD

D0

DRIVE DATA2 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

−

−

−

−

−

−

−

−

−

−

D21

D4

D3

D2

D1

JSPD

D0
D16

●出荷時の値は H'00_012C ( 300 Hz) です。
・ JSPD の設定値は "0"以外の値を設定してください。 "0" の場合は、 "1" に補正します。
・ JOG ドライブと CONSTANT SCAN ドライブの 1 パルス目は、 FSPD の第 1 パルスです。
2 パルス目から JSPD になります。

- 109 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) JOG PULSE SET
JOG コマンドによる複数パルスの JOG 動作を行うときに設定します。
JOG パルス数を設定します。
<実行シーケンス >STATUS1 PORTERROR = 0 ?

COMMAND H'0D

JOG PULSE SET COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

NY
N

STATUS1 PORT

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。

BUSY = 0 ?

推奨 :MC07_BRStatus1 関数

Y
DATA1 PORT

③ DRIVE DATA1 PORT に JOG パルス数 D15--D0 を書き込みます。
設定範囲は、 0 〜 65,535 （ H'0000 〜 H'FFFF ）です。

WRITE
COMMAND PORT

④ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

JOG PULSE

D1

D0
D0

●電源投入時の初期値は H'0001 ( 1 パルス) です。
・ JOG PULSE が "0" の場合は、パルス出力なしで、 JOG ドライブを終了します。

- 110 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-1-3. ドライブの実行
ドライブの実行には、ドライブコマンドで直接実行するドライブとデバイスドライバの関数で実行するドライブがあります。
●ドライブコマンドで直接実行するドライブ
・ JOG ドライブ
・ SCAN ドライブ・ INC INDEX ドライブ・ ABS INDEX ドライブ
●デバイスドライバの関数で実行するドライブ
・ ORIGIN ドライブ(機械原点検出はコントローラ側で各工程を自動的に実行します。)
・メインチップ 2 軸相対アドレス直線補間ドライブ関数
・メインチップ 2 軸相対アドレス円弧補間ドライブ関数
ここではドライブコマンドで直接実行するドライブのコマンド仕様を示します。
デバイスドライバの関数で実行するドライブについては各ドライブの関数仕様をご覧ください。

■ JOG ドライブの実行シーケンス① JOG ドライブに必要なパラメータを設定します。
・第 1 パルス出力周期・ JOG パルス速度
・ JOG パルス数

ドライブ
パラメータ設定

ドライブ実行②ドライブを実行します。
初期値および設定値に対して変更が必要な場合に設定します。

(1) +JOG＋(CW)方向の JOG ドライブを実行します。
<実行シーケンス >STATUS1 PORTCOMMAND H'10
N

ERROR = 0 ?

+JOG COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORT

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。

BUSY = 0 ?

推奨 :MC07_BRStatus1 関数

Y
COMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_BWDriveCommand 関数(2) -JOG−(CCW)方向の JOG ドライブを実行します。
<実行シーケンス >STATUS1 PORTERROR = 0 ?

COMMAND H'11
N

-JOG COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORTBUSY = 0 ?
YCOMMAND PORTWRITE

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。
推奨 :MC07_BRStatus1 関数③ DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_BWDriveCommand 関数- 111 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ 加減速ドライブの実行シーケンス①加減速ドライブに必要なパラメータを設定します。
・第 1 パルス出力周期・加減速パラメータ
SPEED･ RATE 関数を使用します。

ドライブ
パラメータ設定

ドライブ実行②ドライブを実行します。

初期値および設定値に対して変更が必要な場合に設定します。

(3) +SCAN
停止指令を検出するまで、＋(CW)方向のパルスを連続して出力します。
<実行シーケンス >STATUS1 PORTCOMMAND H'12

N

ERROR = 0 ?

+SCAN COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORT

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。

BUSY = 0 ?

推奨 :MC07_BRStatus1 関数

Y
COMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_BWDriveCommand 関数(4) -SCAN
停止指令を検出するまで、−(CCW)方向のパルスを連続して出力します。
<実行シーケンス >STATUS1 PORTERROR = 0 ?

COMMAND H'13

N

-SCAN COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORTBUSY = 0 ?
YCOMMAND PORTWRITE

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。
推奨 :MC07_BRStatus1 関数③ DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_BWDriveCommand 関数- 112 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(5) INC INDEX
指定の相対アドレスに達するまで、＋( CW)方向、または −( CCW)方向のパルスを出力します。
<実行シーケンス >STATUS1 PORTCOMMAND H'14
N

INC INDEX COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

ERROR = 0 ?
Y
NSTATUS1 PORT

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。

BUSY = 0 ?

推奨 :MC07_BRStatus1 関数

Y③ DRIVE DATA1 PORT に目的地の相対アドレス D15--D0 を書き込みます。

DATA1 PORTWRITE

④ DRIVE DATA2 PORT に目的地の相対アドレス D31--D16 を書き込みます。
設定範囲は、-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）です。
正数が CW 、負数が CCW 方向です。負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

⑤ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

目的地の相対アドレス

D15

D0
D0

DRIVE DATA2 PORT の設定データ
D15
D31

D14

D13

D12

D11

D10

D9

D8

D7

D6

目的地の相対アドレス

D5

D4

D3

D2

D1

D0
D16

・指定する相対アドレスは、起動位置から停止位置までのパルス数を、起動位置を原点として符号付きで表現した値です。
・相対アドレスがオーバフローしているときに、 INC INDEX CHANGE 指令を検出した場合はエラーになり、
ERROR STATUS の INC INDEX ERROR = 1 にします。

- 113 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(6) ABS INDEX
指定の絶対アドレスに達するまで、＋( CW)方向、または −( CCW)方向のパルスを出力します。
<実行シーケンス >STATUS1 PORTCOMMAND H'15
N

ABS INDEX COMMAND① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

ERROR = 0 ?
Y
NSTATUS1 PORT

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。

BUSY = 0 ?

推奨 :MC07_BRStatus1 関数

Y
DATA1 PORT

③ DRIVE DATA1 PORT に目的地の絶対アドレス A15--A0 を書き込みます。

WRITE④ DRIVE DATA2 PORT に目的地の絶対アドレス A31--A16 を書き込みます。
設定範囲は、-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）です。
負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

⑤ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

目的地の絶対アドレス

A15

D0
A0

DRIVE DATA2 PORT の設定データ
D15
A31

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

目的地の絶対アドレス

D1

D0
A16

・指定する絶対アドレスは、アドレスカウンタで管理している絶対アドレスです。
・以下の場合は、エラーになり、 ERROR STATUS の ABS INDEX ERROR = 1 にします。
ABS INDEX ドライブ実行中に、アドレスカウンタのオーバフローを検出したとき。
アドレスカウンタがオーバフローしているときに、 ABS INDEX CHANGE 指令を検出したとき。

- 114 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-1-4. 停止コマンドの実行
パルス出力停止機能を実行して、ドライブを終了します。
停止コマンドには、減速停止コマンドと即時停止コマンドがあります。

(1) SLOW STOP
コマンドによる減速停止機能を実行します。
このコマンドの実行は常時可能です。
<実行シーケンス >COMMAND H'FE

COMMAND PORT

① DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

SLOW STOP COMMAND

推奨 :MC07_BWDriveCommand 関数

・ DRIVE STATUS1 PORT の STBY = 1 または DRIVE = 1 のときに有効です。

(2) FAST STOP
コマンドによる即時停止機能を実行します。
このコマンドの実行は常時可能です 。
<実行シーケンス>

COMMAND H'FF

COMMAND PORT

① DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

FAST STOP COMMAND

推奨 :MC07_BWDriveCommand 関数

・ DRIVE STATUS1 PORT の BUSY = 1 のときに有効です。
・ FAST STOP コマンドを検出すると、 BUSY = 0 になるまで、即時停止機能が有効状態になります。

■ コマンド予約機能(応用機能)時の停止コマンド
SLOW STOP コマンドを受け付けると、 DRIVE STATUS1 PORT の SSEND=1 になります。
FAST STOP コマンドを受け付けると、 DRIVE STATUS1 PORT の FSEND=1 になります。
この停止コマンドにより停止した各 DRIVE STATUS1 PORT のフラグを ERROR STATUS MASK コマンドの設定によって、 DRIVE STATUS1 PORT の ERROR=1 にする /しないの設定ができます。
DRIVE STATUS1 PORT の ERROR=1 になると、予約されているコマンドをキャンセルすることができます。
● SLOW STOP コマンド
ERROR STATUS MASK コマンドで SSEND=1 で ERROR にしないとき(初期値)
・予約されている汎用コマンドの内、速度パラメータの設定は実行されます。
・実行しているドライブは減速停止した後に、次に予約されているドライブを実行します。
ERROR STATUS MASK コマンドで SSEND=1 で ERROR にしたとき・予約されている汎用コマンドを全てキャンセルします。
・動作エラークリア関数が実行されるまで、 ERROR=1 となります。
● FAST STOP コマンド
ERROR STATUS MASK コマンドで FSEND=1 で ERROR にするとき（初期値）
・予約されている全ての汎用コマンドはキャンセルされます。
・動作エラークリア関数が実行されるまで、 ERROR=1 となります。
ERROR STATUS MASK コマンドで FSEND=1 で ERROR にしないとき・予約されている汎用コマンドの内、速度パラメータの設定は実行されます。
・実行しているドライブは即時停止した後に、次に予約されているドライブを実行します。

- 115 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-1-5. サーボ対応機能の実行(1) SIGNAL OUT
DRST/MF 信号から汎用出力信号として設定された出力レベルを出力します。
このコマンドの実行は常時可能です。
・ UC-766,UCD-7613v1/GDB5F40 では、 SOUT0 信号から X 軸の SOUT を、 SOUT1 信号から Y 軸の SOUT を
汎用出力信号として設定された出力レベルを出力することができます。
・コントローラドライバは、 DRST/MF OUT をコマンド操作することで、モータの励磁電流を ON/OFF することができます。
<実行シーケンス >DATA1 PORTCOMMAND H'FC

SIGNAL OUT COMMAND① DRIVE DATA1 PORT に出力レベルの設定を書き込みます。

WRITE
COMMAND PORTWRITE

② DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

0

0

0

0

0

0

0

0

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

DRST/MF
OUT

−

−

SOUT
OUT

●電源投入後の初期値は H'0000 (すべて OFF レベル出力) です。
D4 ： SOUT OUT
SOUT 信号が出力するレベルを選択します。( X 軸と Y 軸のみ出力可能です。)
0 ： OFF レベル出力
1 ：アクティブレベル出力
・ SOUT OUT はステータス外部出力機能(応用機能)を「汎用出力」に設定している場合に有効です。
SOUT 信号の出力機能は HARD INITIALIZE1 コマンドで設定します。
D7 ： DRST/MF OUT
出力信号が出力するレベルを選択します。
0 ： OFF レベル出力(HIGH レベル)
1 ：アクティブレベル出力(LOW レベル)・ DRST/MF OUT は DRST/MF 信号の出力機能を「汎用出力」に設定している場合に有効です。
DRST/MF 信号の出力機能は SPEC INITIALIZE3 コマンドで設定します。

(2) DRST OUT
DRST/MF 信号から、サーボの偏差クリア信号として 10 ms 間アクティブレベルを出力します。
このコマンドの実行は常時可能です。
<実行シーケンス >COMMAND H'FD

COMMAND PORT

① DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

DRST OUT COMMAND

推奨 :MC07_BWDriveCommand 関数

・ DRST/MF 信号の出力機能を「停止時に 10ms 間アクティブレベル出力」または「汎用出力」に設定している場合に有効です。 DRST/MF 信号の出力機能は SPEC INITIALIZE3 コマンドで設定します。
・ 10 ms 以内に連続してコマンドを実行すると、 DRST/MF 信号のアクティブレベル出力を保持します 。
最後にコマンドを実行した時点から、 10 ms 間アクティブレベルを出力して終了します。
・コントローラドライバでは、 DRST OUT コマンドでなく、 SIGNAL OUT コマンドで MF 信号を操作してください。

- 116 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-1-6. エラー機能の設定と読み出し(1) ERROR STATUS MASKERROR に出力する ERROR STATUS を個別にマスクします。
マスクする設定にすると、マスクされた要因による DRIVE STATUS1 PORT の ERROR=1 をマスクします。
このコマンドの実行は常時可能です。
<実行シーケンス >DATA1 PORTWRITECOMMAND PORTWRITECOMMAND H'E5

ERROR STATUS MASK COMMAND① DRIVE DATA1 PORT にマスクデータを書き込みます。

② DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

1

D7

D14

D13

FSSTOP

DALM

ERROR

ERROR

MASK

MASK

D6

EXT PULSECPP STOP

ERROR

ERROR

MASK

MASK

D5

D12

D11

PULSE

ADDRESS

D10

OVF

OVF

ERROR

ERROR

MASK

MASK

D4

D3

D9

SSEND

LSEND

FSEND

ERROR

ERROR

ERROR

MASK

MASK

MASK

D1

D0

D2

CHANGE

COMREG

CLR

0

ERROR

0

D8

0

MASK

CLR
ERROR
MASK

COMMAND
ERROR
MASK●電源投入後の初期値は H'FE00 です。
D15-D0 ：マスクデータ
ERROR に出力する ERROR STATUS のマスクデータを選択します。
0 ：マスクしない
1 ：マスクする・ ERROR 出力は、 ERROR に出力する ERROR STATUS の OR （論理和）出力です。
マスクした ERROR STATUS の出力は、 "0" になります。
・マスクしても、 ERROR STATUS はクリアされません。
ERROR STATUS をクリアするときは、動作エラークリア関数を実行してください。
・ D4,D3,D2 の ERROR STATUS は、マスクできません。
D14-D9 の ERROR STATUS は、電源投入後の初期状態では「マスクする」です。

※ ORIGIN ドライブ中は、ユーザが設定した ERROR STATUS MASK は無効となり、以下の MASK 状態になります。
ORIGIN ドライブが終了すると ERROR STATUS MASK は、ユーザアプリケーションが設定した状態に戻ります。
・−・ FSSTOP ERROR MASK・ DALM ERROR MASK・ PULSE OVF ERROR MASK・ ADDRESS OVF ERROR MASK・ SSEND ERROR MASK・ LSEND ERROR MASK・ FSEND ERROR MASK

: 1(マスクする): 0(マスクしない): 0(マスクしない): 1(マスクする): 1(マスクする): 0(マスクしない): 0(マスクしない): 0(マスクしない)・ EXT PULSE ERROR MASK・ CPP STOP ERROR MASK・ CHANGE CLR ERROR MASK・−・−・−・ COMREG CLR ERROR MASK・ COMMAND ERROR MASK

- 117 -: 1(マスクする): 1(マスクする): 1(マスクする): 0(マスクしない): 0(マスクしない): 0(マスクしない): 0(マスクしない): 0(マスクしない)MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2 ) ERROR STATUS READ
15 個の ERROR STATUS を読み出します。
ERROR STATUS MASK されていても ERROR STATUS はクリアされずに ERROR 要因を読み出しできます。
このコマンドの実行は常時可能です。
<実行シーケンス >COMMAND PORTWRITECOMMAND H'D1

ERROR STATUS READ COMMAND① DRIVE COMMAND PORT に COMMAND を書き込みます。
(DATA1,2 PORT は、 H'0000 にして COMMAND を書き込み)

DATA1 PORTREAD

② DRIVE DATA1 PORT から ERROR STATUS を読み出します。
推奨 :MC07_LWRDrive 関数(DATA2 PORT は、ユーザ側でマスクします。)

DRIVE DATA1 PORT の読み出しデータ（ ERROR STATUS）
D15
0

D7
EXT
PULSE
ERROR

D14

D13

FSSTOP

DALM

ERROR

ERROR

D6
CPP STOP
ERROR

D12

D11

PULSE

ADDRESS

OVF

OVF

ERROR

ERROR

D10

D9

D8

SSEND

LSEND

FSEND

ERROR

ERROR

ERROR

D0

D5

D4

D3

D2

D1

CHANGE

INDEX

ABS

INC

COMREG

CLR

CHANGE

INDEX

INDEX

CLR

ERROR

ERROR

ERROR

ERROR

ERROR

COMMANDERROR

各 ERROR STATUS は、 "1" でエラーが発生したことを示します。
D0 ： COMMAND ERROR
未定義の汎用コマンドを実行したことを示します。
以下の場合は、エラーになりません。
・未定義の特殊コマンドを実行した・ SPEED CSET
= 1 のときに、スピード系のドライブ CHANGE 設定コマンドを実行した・ SPEED CBUSY= 1 のときに、スピード系のドライブ CHANGE 実行コマンドを実行した
・ INDEX CSET
= 1 のときに、 INDEX CHANGE 設定コマンドを実行した
・ INDEX CBUSY= 1 のときに、 INDEX CHANGE 実行コマンドを実行した
・ COMREG FL= 1 のときに、汎用コマンドを実行した
D1 ： COMREG CLR ERROR(応用機能)
コマンド予約機能で格納している実行待ちの予約コマンドをクリアしたことを示します。
D2 ： INC INDEX ERROR
相対アドレスのオーバフローで、 INC INDEX ドライブを終了したことを示します。
・相対アドレスがオーバフローしているときに、 INC INDEX CHANGE 指令を検出した
D3 ： ABS INDEX ERROR
アドレスカウンタのオーバフローで、 ABS INDEX ドライブを終了したことを示します。
・ ABS INDEX ドライブ実行中に、アドレスカウンタのオーバフローを検出した・アドレスカウンタがオーバフローしているときに、 ABS INDEX CHANGE 指令を検出した
D4 ： INDEX CHANGE ERROR(応用機能)
反転動作が必要な INDEX CHANGE 指令を検出したことを示します。
・反転動作が必要な INDEX CHANGE 指令を検出した
・ ABS INDEX ドライブ中に、アドレスカウンタの現在位置が変更され、反転動作が必要になった
D5 ： CHANGE CLR ERROR(応用機能)
実行待ちの INDEX CHANGE 指令を無効にしたことを示します。

- 118 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D6 ： CPP STOP ERROR(応用機能)
補間ドライブのメイン軸の CPP STOP 機能でドライブを終了したことを示します。
D7 ： EXT PULSE ERROR
外部パルス出力機能を実行中に、正常な外部パルス出力ができなかったことを示します。
なお、コントローラドライバには外部パルス出力機能はありません。
・アクティブ幅の２倍の時間内に、次のカウントタイミングが入力した
D8 ： FSEND ERROR
BUSY = 1 のときに、 DRIVE STATUS1 PORT の FSEND = 1 を検出したことを示します。
D9 ： LSEND ERROR
BUSY = 1 のときに、 DRIVE STATUS1 PORT の LSEND = 1 を検出したことを示します。
D10 ： SSEND ERROR
BUSY = 1 のときに、 DRIVE STATUS1 PORT の SSEND = 1 を検出したことを示します。
D11 ： ADDRESS OVF ERROR
BUSY = 1 のときに、 DRIVE STATUS4 PORT の ADDRESS OVF = 1 を検出したことを示します。
D12 ： PULSE OVF ERRORDRIVE STATUS4 PORT の PULSE OVF = 1 を検出したことを示します。
D13 ： DALM ERRORDRIVE STATUS2 PORT の DALM = 1 を検出したことを示します。
D14 ： FSSTOP ERRORDRIVE STATUS2 PORT の FSSTOP = 1 を検出したことを示します。
・ ERROR STATUS READ コマンドを実行すると、 ERROR STATUS D15--D0 を DRIVE DATA1 PORT(READ)にセットします。
・ FSEND, LSEND, SSEND フラグが "1" でも、次の BUSY = 0 → 1 ではエラー検出されません。
BUSY = 0 → 1 と同時に、 FSEND, LSEND, SSEND = 1 → 0 になります。

- 119 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-1-7. 速度･設定データの読み出し(1) MCC SPEED READ
MCC が現在出力しているドライブパルス速度を読み出します。
このコマンドの実行は常時可能です 。
<実行シーケンス>

COMMAND H'D4

COMMAND PORT

① DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

MCC SPEED READ COMMAND(DATA1,2 PORT は、 H'0000 にして COMMAND を書き込み)

DATA1 PORT

② DRIVE DATA1 PORT からパルス速度データ D15--D0 を読み出します。

READ
DATA2 PORT

③ DRIVE DATA2 PORT からパルス速度データ D31--D16 を読み出します。

READ

推奨 :MC07_LWRDrive 関数

DRIVE DATA1 PORT の読み出しデータ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

パルス速度データ

D15

D0
D0

DRIVE DATA2 PORT の設定データ
D15
D31

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

パルス速度データ

D0
D16

・読み出すデータは、「ドライブパルス速度（ Hz ）の 10 倍」のパルス速度データです。
ドライブパルス速度（ Hz ）＝ パルス速度データ／ 10・ MCC SPEED READ コマンドを実行すると、 MCC が現在出力しているドライブパルス速度の10 倍のデータを DRIVE DATA1, 2 PORT （ READ ）にセットします。
・補間ドライブ実行中は、メイン軸のパルス速度の読み出しのみ有効です。
メイン軸から読み出すデータは、補間ドライブの基本となる加減速パルスの速度です。
・以下の場合は、パルス速度の読み出しは無効です。
DRIVE STATUS1 PORT の DRIVE = 0 のとき
DRIVE STATUS1 PORT の EXT PULSE = 1 のとき（外部パルス出力機能の実行中）- 120 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) MCC SET DATA READ
MCC に設定した設定データを読み出します。
このコマンドの実行は常時可能です。
<実行シーケンス >DATA1 PORTWRITECOMMAND H'D5

MCC SET DATA READ COMMAND① DRIVE DATA1 PORT に読み出すデータの COMMAND CODE を
書き込みます。
(DATA2 PORT は、 H'0000 にして COMMAND を書き込み)

COMMAND PORTWRITE
DATA1 PORTREAD
DATA2 PORTREAD

② DRIVE COMMAND PORT に COMMAND を書き込みます。
③ DRIVE DATA1 PORT から指定した COMMAND CODE の DATA1 PORT の設定データを読み出します。
④ DRIVE DATA2 PORT から指定した COMMAND CODE の DATA2 PORT の設定データを読み出します。
推奨 :MC07_LWRDrive 関数

・読み出すデータは、 MCC 内部で範囲補正していない設定データです。
・電源投入後は、各機能の設定データの初期値が読み出されます。
・ SET DATA READ コマンドを実行すると指定したコマンドの設定データを DRIVE DATA1, 2 PORT ( READ)にセットします。
コマンドで書き込みが不要な DATA PORT のデータは、 "0" になります。

● 読み出しできるドライブパラメータと各機能の設定データ
COMMAND
汎用コマンド名称

CODE
H'01

機能
ドライブパルスの出力仕様の設定

SPEC INITIALIZE1

H'02

SPEC INITIALIZE2CWLM, CCWLM, SS0 の設定

H'03

SPEC INITIALIZE3

DRST, DEND, DALM, STBY, 自動減速の設定

H'05

FSPD SET(応用機能) 第１パルスのパルス周期の設定

H'06

HIGH SPEED SET(応用機能) 加減速ドライブの速度倍率と最高速度の設定

H'07

LOW SPEED SET(応用機能) 加減速ドライブの開始速度と終了速度の設定

H'08

RATE SET(応用機能) 加減速カーブの変速周期の設定

H'09

SCAREA SET(応用機能) 加減速カーブのＳ字変速領域の設定

H'0A

DOWN PULSE ADJUST(応用機能) 減速パルス数のオフセット設定

H'0C

JSPD SET(応用機能) JOG ドライブのパルス速度の設定

H'0D

JOG PULSE SET(応用機能) JOG ドライブのパルス数の設定

H'0F

ORIGIN SPEC SET(応用機能) ORIGIN ドライブの動作仕様の設定

H'20

CP SPEC SET(応用機能) CPPOUT 出力の設定

H'22

LONG POSITION SET(応用機能) 直線補間ドライブの長軸アドレスの設定

H'23

SHORT POSITION SET(応用機能) 直線補間ドライブの短軸アドレスの設定

H'28

CIRCULAR XPOSITION SET(応用機能) 円弧補間ドライブの X 座標アドレスの設定

H'29

CIRCULAR YPOSITION SET(応用機能) 円弧補間ドライブの Y 座標アドレスの設定

H'2A

CIRCULAR PULSE SET(応用機能) 円弧補間ドライブの短軸パルス数の設定- 121 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書● 読み出しできる各機能の設定データ
COMMAND
汎用コマンド名称

CODE

機能
アドレスカウンタの各機能の設定

H'81

ADDRESS COUNTER INITIALIZE1

H'82

ADDRESS COUNTER INITIALIZE2

H'87

ADDRESS COUNTER MAX COUNT SET

H'88

ADRINT COMPARE REGISTER1 SETADRINT のコンペアレジスタ１の設定

H'89

ADRINT COMPARE REGISTER2 SETADRINT のコンペアレジスタ２の設定

H'8A

ADRINT COMPARE REGISTER3 SETADRINT のコンペアレジスタ３の設定

H'8C

ADRINT COMP1 ADD DATA SETADRINT の COMP1 ADD データの設定

H'91

PULSE COUNTER INITIALIZE1

パルスカウンタの各機能の設定

H'92

PULSE COUNTER INITIALIZE2

H'97

PULSE COUNTER MAX COUNT SET

H'98

CNTINT COMPARE REGISTER1 SET

H'99

CNTINT COMPARE REGISTER2 SET

CNTINT のコンペアレジスタ２の設定

H'9A

CNTINT COMPARE REGISTER3 SET

CNTINT のコンペアレジスタ３の設定

H'9C

CNTINT COMP1 ADD DATA SET

CNTINT の COMP1 ADD データの設定

H'A1

DFL COUNTER INITIALIZE1

パルス偏差カウンタの各機能の設定

H'A2

DFL COUNTER INITIALIZE2

パルス偏差カウンタの各機能の設定

H'A3

DFL COUNTER INITIALIZE3

パルス偏差カウンタの各機能の設定

H'A8

DFLINT COMPARE REGISTER1 SETDFLINT のコンペアレジスタ１の設定

H'A9

DFLINT COMPARE REGISTER2 SETDFLINT のコンペアレジスタ２の設定

H'AA

DFLINT COMPARE REGISTER3 SETDFLINT のコンペアレジスタ３の設定

H'AC

DFLINT COMP1 ADD DATA SETDFLINT の COMP1 ADD データの設定

アドレスカウンタの各機能の設定(応用機能) アドレスカウンタの最大カウント数の設定

パルスカウンタの各機能の設定(応用機能) パルスカウンタの最大カウント数の設定
CNTINT のコンペアレジスタ１の設定

H'C0

UDC SPEC SET(応用機能) UP/DOWN/CONST の変更動作点の設定

H'C1

SPEED CHANGE SPEC SET(応用機能) SPEED CHANGE の変更動作点の設定

H'C3

INDEX CHANGE SPEC SET(応用機能) INDEX CHANGE の変更動作点の設定
ERROR に出力する ERROR STATUS のマスク

H'E5

ERROR STATUS MASK

H'E8

COUNT LATCH SPEC SET(応用機能) カウントデータのラッチタイミングの設定

H'F1

HARD INITIALIZE1(応用機能) SOUT の設定

H'F4

HARD INITIALIZE4(応用機能) 軸制御部のデジタルフィルタの設定

H'F5

HARD INITIALIZE5(応用機能) 軸制御部のデジタルフィルタの設定

H'F6

HARD INITIALIZE6(応用機能) 外部パルスのデジタルフィルタの設定

H'F7

HARD INITIALIZE7(応用機能) 入力信号のアクティブ論理の選択

H'FC

SIGNAL OUT

汎用出力信号の操作＊ COMMAND CODE H'88, H'98 HA8 の COMPARE REGISTER1 SET コマンドのデータは、
自動加算機能で加算された現在値が読み出されます。

- 122 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-1-8. その他(1) NO OPERATION
機能はありません。
<実行シーケンス>

STATUS1 PORTERROR = 0 ?

COMMAND H'00

NO OPERATION COMMANDN① DRIVE STATUS1 PORT の ERROR フラグが "0" であることを確認します。

Y
N

STATUS1 PORTBUSY = 0 ?
YCOMMAND PORTWRITE

② DRIVE STATUS1 PORT の BUSY フラグが "0" であることを確認します。
推奨 :MC07_BRStatus1 関数③ DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_BWDriveCommand 関数

このコマンドの実行により、以下の STATUS フラグがクリアされます。
・ DRIVE STATUS1 PORT の DRVEND フラグ
・ DRIVE STATUS1 PORT の LSEND フラグ
・ DRIVE STATUS1 PORT の SSEND フラグ
・ DRIVE STATUS1 PORT の FSEND フラグ- 123 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書4-2. カウンタコマンド
4-2-1. アドレスカウンタの設定(1) ADDRESS COUNTER INITIALIZE1
アドレスカウンタの各機能を設定します。
このコマンドの実行は常時可能です。
<実行シーケンス>

DATA1 PORTWRITECOMMAND PORTWRITECOMMAND H'81

ADDRESS COUNTER INITIALIZE1 COMMAND① DRIVE DATA1 PORT に設定データを書き込みます。

② DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

AUTO

AUTO

COMP

COMP

ADRINTADRINT

ADD

CLEAR

GATE

GATE

PULSE

PULSE

ENABLEENABLE

TYPE1

TYPE0

TYPE1

TYPE0

D9

D8

ADRINTADRINT

TYPE1

TYPE0

D7

D6

D5

D4

D3

D2

D1

D0

EXT

EXT

EXT

EXT

EXT

EXT

COUNT

COUNT

COUNT

PULSE

PULSE

PULSE

COUNT

COUNT

PULSE

PULSE

DIRECTION

TYPE2

TYPE1

TYPE0

TYPE1

TYPE0

SEL1

SEL0

●電源投入時の初期値は H'0030 (アンダーライン側) です。

D0 ： COUNT PULSE SEL0
D1 ： COUNT PULSE SEL1
カウンタのカウントパルスを選択します。
選択したカウントパルスは、 CWP, CCWP 端子から出力するドライブパルスになります。
＜ X 軸 , Z 軸に設定する場合＞
SEL1

SEL0

カウントパルス

カウント方向00

自軸(X,Z 軸)の発生パルスをカウントする

0

1

他軸(Y,A 軸)の発生パルスをカウントする

1

0

自軸(X,Z 軸)の外部パルス信号をカウントする

1

1

他軸(Y,A 軸)の外部パルス信号をカウントする＋方向出力でカウントアップ−方向出力でカウントダウン

EXT COUNT DIRECTION
で選択＜ Y 軸 , A 軸に設定する場合＞
SEL1

SEL0

カウントパルス

カウント方向00

自軸(Y,A 軸)の発生パルスでカウントする

01

他軸(X,Z 軸)の発生パルスをカウントする

10

他軸(X,Z 軸)の外部パルス信号をカウントする

1

1

自軸(Y,A 軸)の外部パルス信号でカウントする＋方向出力でカウントアップ−方向出力でカウントダウン

EXT COUNT DIRECTION
で選択

・ DRIVE STATUS1 PORT の EXT PULSE = 0 、 BUSY = 1 のときに「 "10", "11"」を選択した場合は、実行中の処理を終了した後（ BUSY = 0 ）に、 EXT PULSE = 1 、 BUSY = 1 になります。
・ UC-766 以外の製品は、外部パルスをカウントすることはできません。

- 124 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D2 ： EXT COUNT TYPE0
D3 ： EXT COUNT TYPE1
外部パルス信号入力のカウント方法を選択します。
TYPE1

TYPE0

カウント方法00

EA, EB を１逓倍でカウントする

パルス入力方式

01

EA, EB を２逓倍でカウントする

1

0

EA, EB を４逓倍でカウントする

1

1

EA で＋方向のカウント、 EB で−方向のカウント

位相差信号入力
独立方向パルス入力

D4 ： EXT PULSE TYPE0
D5 ： EXT PULSE TYPE1
D6 ： EXT PULSE TYPE2
外部パルス信号のカウントタイミングのアクティブ幅を選択します。
TYPE2 TYPE1 TYPE0
0
0
0
0
0
1
0
1
0
0
1
1

アクティブ幅100 ns200 ns
500 ns1.0 µsTYPE2 TYPE1 TYPE0
1
0
0
1
0
1
1
1
0
1
1
1

アクティブ幅
2.0 µs
5.0 µs
10 µs
20 µs

・外部パルス信号は、逓倍したカウントタイミングを、選択したアクティブ幅のパルスに変換してアドレスカウンタの COUNT PULSE SEL ブロックに入力します。
・カウンタのカウントパルスを「外部パルス信号」に設定した場合は、選択したアクティブ幅のパルスが、カウンタのカウントパルスおよび CWP, CCWP 端子の出力パルスになります。

D7 ： EXT COUNT DIRECTION
外部パルス入力 EA, EB のカウント方向を選択します。
0 ：外部パルス信号の入力方向と同じ方向にカウントする
1 ：外部パルス信号の入力方向と逆の方向にカウントする
・「 0 ：同じ方向」の場合は、＋方向入力で、＋方向カウント（＋方向パルス出力）、−方向入力で、−方向カウント（−方向パルス出力）になります。

・「 1 ：逆の方向」の場合は、 ＋方向入力で、−方向カウント（−方向パルス出力）、−方向入力で、＋方向カウント（＋方向パルス出力）になります。
・カウンタのカウントパルスを「外部パルス信号」に設定した場合は、選択したカウント方向がカウンタのカウント方向、およびドライブパルスの出力方向になります。

D8 ： ADRINT TYPE0
D9 ： ADRINT TYPE1
DRIVE STATUS4 PORT と ADRINT に出力する COMP1, 2, 3 の一致出力の、出力仕様を選択します。
TYPE1

TYPE0

COMP1, 2, 3 の一致出力の出力仕様

クリア条件
検出条件が不一致のときに00

一致出力をレベルラッチして出力する

DRIVE STATUS4 PORTのリード終了でクリア

0

1

一致出力をエッジラッチして出力する

10

一致出力をそのままスルーで出力する

DRIVE STATUS4 PORT のリード終了でクリア
検出条件の不一致でクリア

・レベルラッチの場合は、検出条件が一致している間はクリアできません。
スルー出力の場合は、 ADRINT PULSE TYPE で最小出力幅を選択します。

- 125 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D10 ： ADRINT PULSE TYPE0
D11 ： ADRINT PULSE TYPE1
COMP1, 2, 3 の一致出力をスルー出力に選択したときの、最小出力幅を選択します。
TYPE1

TYPE0

一致出力の最小出力幅00200 ns

0

1

10 µs

1

0

100 µs111,000 µs

・スルー出力にオートクリア機能または自動加算機能を併用した場合は、この最小出力幅を出力します。
この最小出力幅はリトリガ出力です。

D12 ： COMP GATE TYPE0
D13 ： COMP GATE TYPE1ADRINT に出力する COMP1, 2, 3 の一致出力の、合成出力を選択します。
一致出力の合成出力

TYPE1

TYPE0

0

0

COMP1

OR

(COMP2

ORCOMP3)

0

1

COMP1

OR

(COMP2

AND

COMP3)

1

0

COMP1

AND

(COMP2

ORCOMP3)

1

1

COMP1

AND

(COMP2

AND

COMP3)

OR ：論理和、 AND ：論理積

D14 ： AUTO CLEAR ENABLE
COMP1 のオートクリア機能で、カウンタを「クリアする／クリアしない」を選択します。
0 ： COMP1 の一致出力でカウンタをクリアしない
1 ： COMP1 の一致出力でカウンタをクリアする■オートクリア機能
COMP1 の一致検出と同時に、アドレスカウンタのデータを "0" にクリアします。
COMP1 の一致出力がスルー出力のときは、一致出力の最小出力幅を出力します。

D15 ： AUTO ADD ENABLE
COMP1 の自動加算機能で、検出データを「再設定する／再設定しない」を選択します。
0 ： COMP1 の一致出力でデータを再設定しない
1 ： COMP1 の一致出力でデータを再設定する■自動加算機能COMP1 の一致検出と同時に、 COMP1 ADD データに設定されているデータを、COMPARE REGISTER1 のデータに加算して、 COMPARE REGISTER1 を再設定します。
COMPARE REGISTER1 < = COMPARE REGISTER1 ＋ COMP1 ADD データ
COMP1 の一致出力がスルー出力のときは、一致出力の最小出力幅を出力します。

- 126 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) ADDRESS COUNTER INITIALIZE2
アドレスカウンタの各機能を設定します。
このコマンドの実行は常時可能です。
<実行シーケンス>

DATA1 PORTWRITECOMMAND PORTWRITECOMMAND H'82

ADDRESS COUNTER INITIALIZE2 COMMAND① DRIVE DATA1 PORT に設定データを書き込みます。

② DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

COMP3

COMP3

COMP2

COMP2

TYPE1

TYPE0

TYPE1

TYPE0

D7

D6

D5

D4

COMP2

COMP2

COMP2

COMP2

STOP

STOP

STOP

INT

TYPE1

TYPE0

ENABLEENABLE

D11

D10

D9

D8

COMP3

COMP3

COMP3

COMP3

STOP

STOP

STOP

INT

TYPE1

TYPE0

ENABLEENABLE

D3
−

D2

D1

D0

COMP1

COMP1

COMP1

STOP

STOP

INT

TYPE

ENABLEENABLE●電源投入後の初期値は H'0000 (アンダーライン側) です。

D0 ： COMP1 INT ENABLE
COMP1 の一致出力を、 ADRINT に「出力する／出力しない」を選択します。
0 ： COMP1 の一致出力を ADRINT に出力しない
1 ： COMP1 の一致出力を ADRINT に出力する

D1 ： COMP1 STOP ENABLE
COMP1 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP1 の一致出力の停止機能を実行しない
1 ： COMP1 の一致出力の停止機能を実行する

D2 ： COMP1 STOP TYPECOMP1 の一致出力による停止機能を選択します。
0 ：一致出力でパルス出力を即時停止する
1 ：一致出力でパルス出力を減速停止する
・ COMP1 の検出条件は、「カウンタの値 ＝ COMPARE REGISTER1 の値」です。

D4 ： COMP2 INT ENABLE
COMP2 の一致出力を、 ADRINT に「出力する／出力しない」を選択します。
0 ： COMP2 の一致出力を ADRINT に出力しない
1 ： COMP2 の一致出力を ADRINT に出力する

D5 ： COMP2 STOP ENABLE
COMP2 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP2 の一致出力の停止機能を実行しない
1 ： COMP2 の一致出力の停止機能を実行する- 127 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D6 ： COMP2 STOP TYPE0
D7 ： COMP2 STOP TYPE1
COMP2 の一致出力による停止機能を選択します。
TYPE1

TYPE0

COMP2 の停止機能

00

一致出力でパルス出力を即時停止する

01

一致出力でパルス出力を減速停止する

10

一致出力で、＋(CW)方向のパルス出力を即時停止する

1

1

一致出力で、＋(CW)方向のパルス出力を減速停止する

D8 ： COMP3 INT ENABLE
COMP3 の一致出力を、 ADRINT に「出力する／出力しない」を選択します。
0 ： COMP3 の一致出力を ADRINT に出力しない
1 ： COMP3 の一致出力を ADRINT に出力する

D9 ： COMP3 STOP ENABLE
COMP3 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP3 の一致出力の停止機能を実行しない
1 ： COMP3 の一致出力の停止機能を実行する

D10 ： COMP3 STOP TYPE0
D11 ： COMP3 STOP TYPE1
COMP3 の一致出力による停止機能を選択します。
TYPE1

TYPE0

COMP3 の停止機能

00

一致出力でパルス出力を即時停止する

01

一致出力でパルス出力を減速停止する

10

一致出力で、−(CCW)方向のパルス出力を即時停止する

1

1

一致出力で、−(CCW)方向のパルス出力を減速停止する

D12 ： COMP2 TYPE0
D13 ： COMP2 TYPE1
COMP2 の検出条件を選択します。
TYPE1

TYPE0

COMP2 の検出条件

00

カウンタの値 ＝ COMPARE REGISTER2 の値

01

カウンタの値 ≧ COMPARE REGISTER2 の値

10

カウンタの値 ≦ COMPARE REGISTER2 の値

1

1

設定禁止

D14 ： COMP3 TYPE0
D15 ： COMP3 TYPE1
COMP3 の検出条件を選択します。
TYPE1

TYPE0

COMP3 の検出条件

00

カウンタの値 ＝ COMPARE REGISTER3 の値

01

カウンタの値 ≧ COMPARE REGISTER3 の値

10

カウンタの値 ≦ COMPARE REGISTER3 の値

1

1

設定禁止

- 128 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) ADDRESS COUNTER PRESET
アドレスカウンタの現在位置を設定します。
このコマンドは常時実行可能です。
<実行シーケンス>

COMMAND H'80

ADDRESS COUNTER PRESET COMMAND① DRIVE DATA1 PORT に現在位置 A15--A0 を書き込みます。

DATA1 PORTWRITE

② DRIVE DATA2 PORT に現在位置 A31--A16 を書き込みます。
設定範囲は、アドレスカウンタで管理している絶対アドレスの範囲です。
-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

現在位置

A15

D0
A0

DRIVE DATA2 PORT の設定データ
D15
A31

D14

D13

D12

D11

D10

D9

D8

D7

D6

現在位置

D5

D4

D3

D2

D1

D0
A16

●電源投入後の初期値は H'0000_0000 です。
・現在位置には、 H'8000_0000 を設定することもできます。
ただし、 H'8000_0000 を設定すると、 DRIVE STATUS4 PORT の ADDRESS OVF = 1 になります。
・以下の場合は、エラーになり、 ERROR STATUS の INDEX CHANGE ERROR = 1 にします。
ABS INDEX ドライブ中に、 ADDRESS COUNTER PRESET コマンドの実行で現在位置が変更され、反転動作が必要な状態になったとき。

- 129 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(4) ADRINT COMPARE REGISTER1,2,3 SET
アドレスカウンタの COMPARE REGISTER1, 2, 3 に検出位置を設定します。
このコマンドの実行は常時可能です。

<実行シーケンス >COMMAND H'88

ADRINT COMPARE REGISTER1 SET COMMAND

COMMAND H'89

ADRINT COMPARE REGISTER2 SET COMMAND

COMMAND H'8A

ADRINT COMPARE REGISTER3 SET COMMAND① DRIVE DATA1 PORT に検出位置 A15--A0 を書き込みます。

DATA1 PORTWRITE

② DRIVE DATA2 PORT に検出位置 A31--A16 を書き込みます。
設定範囲は、アドレスカウンタで管理している絶対アドレスの範囲です。
-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

検出位置

A15

D0
A0

DRIVE DATA2 PORT の設定データ
D15
A31

D14

D13

D12

D11

D10

D9

D8

D7

D6

検出位置

D5

D4

D3

D2

D1

D0
A16

●電源投入後の初期値は H'8000_0000 です。

- 130 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(5) ADRINT COMP1 ADD DATA SET
アドレスカウンタの COMP1 の加算データを設定します。
このコマンドは常時実行可能です。
<実行シーケンス >COMMAND H'8C

DATA1 PORTADRINT COMP1 ADD DATA SET COMMAND① DRIVE DATA1 PORT に COMP1 ADD データ A15--A0 を書き込みます。

WRITE② DRIVE DATA2 PORT に COMP1 ADD データ A31--A16 を書き込みます。
設定範囲は、アドレスカウンタで管理している絶対アドレスの範囲です。
-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

COMP1 ADD データ

A15

D0
A0

DRIVE DATA2 PORT の設定データ
D15
A31

D14

D13

D12

D11

D10

D9

D8

D7

D6

COMP1 ADD データ●電源投入後の初期値は H'0000_0000 です。

- 131 -

D5

D4

D3

D2

D1

D0
A16

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-2-2. パルスカウンタの設定(1) PULSE COUNTER INITIALIZE1※ ORIGIN ドライブ中は、パルスカウンタを使用することはできません。
パルスカウンタの各機能を設定します。このコマンドの実行は常時可能です。
<実行シーケンス >COMMAND H'91

DATA1 PORTPULSE COUNTER INITIALIZE1 COMMAND① DRIVE DATA1 PORT に設定データを書き込みます。

WRITE
COMMAND PORT

② DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

AUTO

AUTO

COMP

COMP

CNTINT

CNTINT

ADD

CLEAR

GATE

GATE

PULSE

PULSE

ENABLEENABLE

TYPE1

TYPE0

TYPE1

TYPE0

D7

D6

D5

D4

−

−

−

D8

CNTINT

CNTINT

TYPE1

TYPE0

D3

D2

D1

D0

EXT

EXT

COUNT

COUNT

COUNT

COUNT

PULSE

PULSE

TYPE1

TYPE0

SEL1

SEL0

EXT
COUNT

D9

DIRECTION●電源投入後の初期値は H'0000 (アンダーライン側) です。
D0 ： COUNT PULSE SEL0
D1 ： COUNT PULSE SEL1
カウンタのカウントパルスを選択します。
＜ X 軸 , Z 軸に設定する場合＞
SEL1

SEL0

カウントパルス

カウント方向00

自軸 (X,Z 軸)の出力パルスをカウントする＋方向出力でカウントアップ

0

1

他軸(Y,A 軸)の出力パルスをカウントする

1

0

自軸 (X,Z 軸)の外部パルス信号をカウントする

1

1

他軸(Y,A 軸)の外部パルス信号をカウントする−方向出力でカウントダウン

EXT COUNT DIRECTION
で選択＜ Y 軸 , A 軸 に設定する場合＞
SEL1

SEL0

カウントパルス

カウント方向00

自軸 (Y,A 軸)の出力パルスをカウントする＋方向出力でカウントアップ

01

他軸(X,Z 軸)の出力パルスをカウントする

10

他軸(X,Z 軸)の外部パルス信号をカウントする

1

1

自軸 (Y,A 軸)の外部パルス信号をカウントする−方向出力でカウントダウン

EXT COUNT DIRECTION
で選択

・ UC-766 以外の製品は、外部パルスをカウントすることはできません。

D2 ： EXT COUNT TYPE0
D3 ： EXT COUNT TYPE1
外部パルス信号入力のカウント方法を選択します。
TYPE1

TYPE0

カウント方法00

EA, EB を１逓倍でカウントする

パルス入力方式

01

EA, EB を２逓倍でカウントする

1

0

EA, EB を４逓倍でカウントする

1

1

EA で＋方向のカウント、 EB で−方向のカウント- 132 -

位相差信号入力
独立方向パルス入力

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

D7 ： EXT COUNT DIRECTION
外部パルス信号入力 EA, EB のカウント方向を選択します。
0 ：外部パルス信号の入力方向と同じ方向にカウントする
1 ：外部パルス信号の入力方向と逆の方向にカウントする
・「 0 ：同じ方向」の場合は、＋方向入力で、＋方向カウント（＋方向パルス出力）、−方向入力で、−方向カウント（−方向パルス出力）になります。

・「 1 ：逆の方向」の場合は、 ＋方向入力で、−方向カウント（−方向パルス出力）、−方向入力で、＋方向カウント（＋方向パルス出力）になります。
・カウンタのカウントパルスを「外部パルス信号」に設定した場合は、選択したカウント方向がカウンタのカウント方向になります。

D8 ： CNTINT TYPE0
D9 ： CNTINT TYPE1
DRIVE STATUS4 PORT と CNTINT に出力する COMP1, 2, 3 の一致出力の、出力仕様を選択します。
TYPE1

TYPE0

COMP1, 2, 3 の一致出力の出力仕様

クリア条件
検出条件が不一致のときに00

一致出力をレベルラッチして出力する

DRIVE STATUS4 PORTのリード終了でクリア

0

1

一致出力をエッジラッチして出力する

10

一致出力をそのままスルーで出力する

DRIVE STATUS4 PORTのリード終了でクリア検出条件の不一致でクリア

・レベルラッチの場合は、検出条件が一致している間はクリアできません。
スルー出力の場合は、 CNTINT PULSE TYPE で最小出力幅を選択します。

D10 ： CNTINT PULSE TYPE0
D11 ： CNTINT PULSE TYPE1
COMP1, 2, 3 の一致出力をスルー出力に選択したときの、最小出力幅を選択します。
TYPE1

TYPE0

一致出力の最小出力幅00200 ns

0

1

10 µs

1

0

100 µs111,000 µs

・スルー出力にオートクリア機能または自動加算機能を併用した場合は、この最小出力幅を出力します。
この最小出力幅はリトリガ出力です。

D12 ： COMP GATE TYPE0
D13 ： COMP GATE TYPE1
CNTINT に出力する COMP1, 2, 3 の一致出力の、合成出力を選択します。
一致出力の合成出力

TYPE1

TYPE0

0

0

COMP1

OR

(COMP2

ORCOMP3)

0

1

COMP1

OR

(COMP2

AND

COMP3)

1

0

COMP1

AND

(COMP2

ORCOMP3)

1

1

COMP1

AND

(COMP2

AND

COMP3)- 133 -

OR ：論理和、 AND ：論理積

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D14 ： AUTO CLEAR ENABLE
COMP1 のオートクリア機能で、カウンタを「クリアする／クリアしない」を選択します。
0 ： COMP1 の一致出力でカウンタをクリアしない
1 ： COMP1 の一致出力でカウンタをクリアする■オートクリア機能
COMP1 の一致検出と同時に、パルスカウンタのデータを "0" にクリアします。
COMP1 の一致出力がスルー出力のときは、一致出力の最小出力幅を出力します。

D15 ： AUTO ADD ENABLE
COMP1 の自動加算機能で、検出データを「再設定する／再設定しない」を選択します。
0 ： COMP1 の一致出力でデータを再設定しない
1 ： COMP1 の一致出力でデータを再設定する■自動加算機能COMP1 の一致検出と同時に、 COMP1 ADD データに設定されているデータを、COMPARE REGISTER1 のデータに加算して、 COMPARE REGISTER1 を再設定します。
COMPARE REGISTER1 < = COMPARE REGISTER1 ＋ COMP1 ADD データ
COMP1 の一致出力がスルー出力のときは、一致出力の最小出力幅を出力します。

- 134 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) PULSE COUNTER INITIALIZE2
パルスカウンタの各機能を設定します。
このコマンドの実行は常時可能です。
<実行シーケンス>

DATA1 PORTWRITECOMMAND PORTWRITECOMMAND H'92

PULSE COUNTER INITIALIZE2 COMMAND① DRIVE DATA1 PORT に設定データを書き込みます。

② DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

COMP3

COMP3

COMP2

COMP2

TYPE1

TYPE0

TYPE1

TYPE0

D7

D6

D5

D4

COMP2

COMP2

COMP2

COMP2

STOP

STOP

STOP

INT

TYPE1

TYPE0

ENABLEENABLE

D11

D10

D9

D8

COMP3

COMP3

COMP3

COMP3

STOP

STOP

STOP

INT

TYPE1

TYPE0

ENABLEENABLE

D3
−

D2

D1

D0

COMP1

COMP1

COMP1

STOP

STOP

INT

TYPE

ENABLEENABLE●電源投入後の初期値は H'0000 (アンダーライン側) です。

D0 ： COMP1 INT ENABLE
COMP1 の一致出力を、 CNTINT に「出力する／出力しない」を選択します。
0 ： COMP1 の一致出力を CNTINT に出力しない
1 ： COMP1 の一致出力を CNTINT に出力する

D1 ： COMP1 STOP ENABLE
COMP1 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP1 の一致出力の停止機能を実行しない
1 ： COMP1 の一致出力の停止機能を実行する

D2 ： COMP1 STOP TYPECOMP1 の一致出力による停止機能を選択します。
0 ：一致出力でパルス出力を即時停止する
1 ：一致出力でパルス出力を減速停止する
・ COMP1 の検出条件は、「カウンタの値 ＝ COMPARE REGISTER1 の値」です。

D4 ： COMP2 INT ENABLE
COMP2 の一致出力を、 CNTINT に「出力する／出力しない」を選択します。
0 ： COMP2 の一致出力を CNTINT に出力しない
1 ： COMP2 の一致出力を CNTINT に出力する

D5 ： COMP2 STOP ENABLE
COMP2 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP2 の一致出力の停止機能を実行しない
1 ： COMP2 の一致出力の停止機能を実行する- 135 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D6 ： COMP2 STOP TYPE0
D7 ： COMP2 STOP TYPE1
COMP2 の一致出力による停止機能を選択します。
TYPE1

TYPE0

COMP2 の停止機能

00

一致出力でパルス出力を即時停止する

01

一致出力でパルス出力を減速停止する

10

一致出力で、＋(CW)方向のパルス出力を即時停止する

1

1

一致出力で、＋(CW)方向のパルス出力を減速停止する

D8 ： COMP3 INT ENABLE
COMP3 の一致出力を、 CNTINT に「出力する／出力しない」を選択します。
0 ： COMP3 の一致出力を CNTINT に出力しない
1 ： COMP3 の一致出力を CNTINT に出力する

D9 ： COMP3 STOP ENABLE
COMP3 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP3 の一致出力の停止機能を実行しない
1 ： COMP3 の一致出力の停止機能を実行する

D10 ： COMP3 STOP TYPE0
D11 ： COMP3 STOP TYPE1
COMP3 の一致出力による停止機能を選択します。
TYPE1

TYPE0

COMP3 の停止機能

00

一致出力でパルス出力を即時停止する

01

一致出力でパルス出力を減速停止する

10

一致出力で、−(CCW)方向のパルス出力を即時停止する

1

1

一致出力で、−(CCW)方向のパルス出力を減速停止する

D12 ： COMP2 TYPE0
D13 ： COMP2 TYPE1
COMP2 の検出条件を選択します。
TYPE1

TYPE0

COMP2 の検出条件

00

カウンタの値 ＝ COMPARE REGISTER2 の値

01

カウンタの値 ≧ COMPARE REGISTER2 の値

10

カウンタの値 ≦ COMPARE REGISTER2 の値

1

1

設定禁止

D14 ： COMP3 TYPE0
D15 ： COMP3 TYPE1
COMP3 の検出条件を選択します。
TYPE1

TYPE0

COMP3 の検出条件

00

カウンタの値 ＝ COMPARE REGISTER3 の値

01

カウンタの値 ≧ COMPARE REGISTER3 の値

10

カウンタの値 ≦ COMPARE REGISTER3 の値

1

1

設定禁止

- 136 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) PULSE COUNTER PRESET
パルスカウンタのカウント初期値を設定します。
このコマンドは常時実行可能です。
<実行シーケンス>

COMMAND H'90

PULSE COUNTER PRESET COMMAND① DRIVE DATA1 PORT にカウント初期値 D15--D0 を書き込みます。

DATA1 PORTWRITE

② DRIVE DATA2 PORT にカウント初期値 D31--D16 を書き込みます。
設定範囲は、-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）です。
負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

カウント初期値

D15

D0
D0

DRIVE DATA2 PORT の設定データ
D15
D31

D14

D13

D12

D11

D10

D9

D8

D7

D6

カウント初期値

D5

D4

D3

D2

D1

D0
D16

●電源投入後の初期値は H'0000_0000 です。
・現在位置には、 H'8000_0000 を設定することもできます。
ただし、 H'8000_0000 を設定すると、 DRIVE STATUS4 PORT の PULSE OVF = 1 になります。

- 137 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(4) CNTINT COMPARE REGISTER1,2,3 SET
パルスカウンタの COMPARE REGISTER1, 2, 3 に検出値を設定します。
このコマンドの実行は常時可能です。

<実行シーケンス>

COMMAND H'98

CNTINT COMPARE REGISTER1 SET COMMAND

COMMAND H'99

CNTINT COMPARE REGISTER2 SET COMMAND

COMMAND H'9A

CNTINT COMPARE REGISTER3 SET COMMAND① DRIVE DATA1 PORT に検出値 D15--D0 を書き込みます。

DATA1 PORTWRITE

② DRIVE DATA2 PORT に検出値 D31--D16 を書き込みます。
設定範囲は、-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）です。
負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

検出値

D15

D0
D0

DRIVE DATA2 PORT の設定データ
D15
D31

D14

D13

D12

D11

D10

D9

D8

D7

D6

検出値

D5

D4

D3

D2

D1

D0
D16

●電源投入後の初期値は H'8000_0000 です。

- 138 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(5) CNTINT COMP1 ADD DATA SET
パルスカウンタの COMP1 の加算データを設定します。
このコマンドは常時実行可能です。
<実行シーケンス>

COMMAND H'9C

DATA1 PORT

CNTINT COMP1 ADD DATA SET COMMAND① DRIVE DATA1 PORT に COMP1 ADD データ D15--D0 を書き込みます。

WRITE② DRIVE DATA2 PORT に COMP1 ADD データ D31--D16 を書き込みます。
設定範囲は、-2,147,483,648 〜 +2,147,483,647 （ H'8000_0000 〜 H'7FFF_FFFF ）です。
負数の場合は 2 の補数表現にします。

DATA2 PORTWRITECOMMAND PORT

③ DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

COMP1 ADD データ

D15

D0
D0

DRIVE DATA2 PORT の設定データ
D15
D31

D14

D13

D12

D11

D10

D9

D8

D7

D6

COMP1 ADD データ●電源投入後の初期値は H'0000_0000 です。

- 139 -

D5

D4

D3

D2

D1

D0
D16

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-2-3. パルス偏差カウンタの設定(1) DFL COUNTER INITIALIZE1
パルス偏差カウンタの各機能を設定します。
このコマンドの実行は常時可能です。
<実行シーケンス>

COMMAND H'A1

DATA1 PORTDFL COUNTER INITIALIZE1 COMMAND① DRIVE DATA1 PORT に設定データを書き込みます。

WRITE

COMMAND PORT

② DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

AUTO

AUTO

COMP

COMP

DFLINTDFLINT

ADD

CLEAR

GATE

GATE

PULSE

PULSE

ENABLEENABLE

TYPE1

TYPE0

TYPE1

TYPE0

D7
DIVISION
TYPE

D9

D8

DFLINTDFLINT

TYPE1

TYPE0

D6

D5

D4

D3

D2

D1

D0

TIMER

TIMER

TIMER

EXT

EXT

COUNT

COUNT

START

START

START

COUNT

COUNT

PULSE

PULSE

TYPE2

TYPE1

TYPE0

TYPE1

TYPE0

SEL1

SEL0

●電源投入後の初期値は H'0000 (アンダーライン側) です。
D0 ： COUNT PULSE SEL0
D1 ： COUNT PULSE SEL1
カウンタのカウントパルスを選択します。
＜ X 軸 , Z 軸に設定する場合＞
SEL1

SEL0

カウントパルス１

カウントパルス２

00

自軸(X,Z 軸)の外部パルス信号

自軸(X,Z 軸)の出力パルス01

他軸(Y,A 軸)の外部パルス信号

自軸(X,Z 軸)の出力パルス

10

他軸(Y,A 軸)の外部パルス信号

自軸(X,Z 軸)の外部パルス信号

1

1

20 MHz クロック− (なし)＜ Y 軸 , A 軸に設定する場合＞
SEL1

SEL0

カウントパルス１

カウントパルス２

00

自軸(Y,A 軸)の外部パルス信号

自軸(Y,A 軸)の出力パルス01

他軸(X,Z 軸)の外部パルス信号

自軸(Y,A 軸)の出力パルス

10

他軸(X,Z 軸)の外部パルス信号

自軸(Y,A 軸)の外部パルス信号

1

1

20 MHz クロック− (なし)

・ UC-766 以外の製品は、外部パルスをカウントすることはできません。
■ カウント方向・カウントパルス１ ：＋方向入力でカウントアップ、−方向入力でカウントダウン
・カウントパルス２ ：−方向入力でカウントアップ、＋方向入力でカウントダウン■ タイマ機能"11" に設定すると、カウントパルス１を、＋方向にカウントアップします。
カウントパルス１の 20 MHz クロックは、 1/1 〜 1/256 に分周してカウントできます。

D2 ： EXT COUNT TYPE0
D3 ： EXT COUNT TYPE1
外部パルス信号入力のカウント方法を選択します。
TYPE1

TYPE0

カウント方法00

EA, EB を１逓倍でカウントする

パルス入力方式

01

EA, EB を２逓倍でカウントする

1

0

EA, EB を４逓倍でカウントする

1

1

EA で＋方向のカウント、 EB で−方向のカウント- 140 -

位相差信号入力
独立方向パルス入力

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D4 ： TIMER START TYPE0
D5 ： TIMER START TYPE1
D6 ： TIMER START TYPE2
COUNT PULSE SEL を "11" に設定している場合に有効です。
タイマ機能のカウントパルス１のカウントを開始するタイミングを選択します。
TYPE2

TYPE1

TYPE0

カウント開始タイミング <レベル検出>

0

0

0

カウントしない (カウントを終了する)

0

0

1

設定禁止

0

1

0

DRIVE STATUS5 PORT の SS0 = 1 でカウントを開始する

0

1

1

DFL COUNTER INITIALIZE1 コマンドの実行でカウントを開始する

1

0

0

設定禁止

1

0

1

設定禁止

1

1

0

設定禁止

1

1

1

設定禁止

・ 汎用入力 IN0 信号から X 軸 SS0 、 IN1 信号から Y 軸 SS0 が操作できます。
Z 軸と A 軸の SS0 は操作できません。

D7 ： DIVISION TYPE
分周するカウントパルスを選択します。
0 ：カウントパルス１を分周する
1 ：カウントパルス２を分周する

D8 ： DFLINT TYPE0
D9 ： DFLINT TYPE1
DRIVE STATUS4 PORT と DFLINT に出力する COMP1, 2, 3 の一致出力の、出力仕様を選択します。
TYPE1

TYPE0

COMP1, 2, 3 の一致出力の出力仕様

クリア条件
検出条件が不一致のときに00

一致出力をレベルラッチして出力する

DRIVE STATUS4 PORTのリード終了でクリア
0

1

一致出力をエッジラッチして出力する

10

一致出力をそのままスルーで出力する

DRIVE STATUS4 PORTのリード終了でクリア検出条件の不一致でクリア

・レベルラッチの場合は、検出条件が一致している間はクリアできません。
スルー出力の場合は、 DFLINT PULSE TYPE で最小出力幅を選択します。

D10 ： DFLINT PULSE TYPE0
D11 ： DFLINT PULSE TYPE1
COMP1, 2, 3 の一致出力をスルー出力に選択したときの、最小出力幅を選択します。
TYPE1

TYPE0

一致出力の最小出力幅00200 ns

0

1

10 µs

1

0

100 µs111,000 µs

・スルー出力にオートクリア機能または自動加算機能を併用した場合は、この最小出力幅を出力します。
この最小出力幅はリトリガ出力です。

- 141 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D12 ： COMP GATE TYPE0
D13 ： COMP GATE TYPE1
DFLINT に出力する COMP1, 2, 3 の一致出力の、合成出力を選択します。
一致出力の合成出力

TYPE1

TYPE0

0

0

COMP1

OR

(COMP2

ORCOMP3)

0

1

COMP1

OR

(COMP2

AND

COMP3)

1

0

COMP1

AND

(COMP2

ORCOMP3)

1

1

COMP1

AND

(COMP2

AND

COMP3)

OR ：論理和、 AND ：論理積

D14 ： AUTO CLEAR ENABLE
COMP1 のオートクリア機能で、カウンタを「クリアする／クリアしない」を選択します。
0 ： COMP1 の一致出力でカウンタをクリアしない
1 ： COMP1 の一致出力でカウンタをクリアする■オートクリア機能
COMP1 の一致検出と同時に、パルス偏差カウンタのデータを "0" にクリアします。
COMP1 の一致出力がスルー出力のときは、一致出力の最小出力幅を出力します。

D15 ： AUTO ADD ENABLE
COMP1 の自動加算機能で、検出データを「再設定する／再設定しない」を選択します。
0 ： COMP1 の一致出力でデータを再設定しない
1 ： COMP1 の一致出力でデータを再設定する■自動加算機能COMP1 の一致検出と同時に、 COMP1 ADD データに設定されているデータを、COMPARE REGISTER1 のデータに加算して、 COMPARE REGISTER1 を再設定します。
COMPARE REGISTER1 < = COMPARE REGISTER1 ＋ COMP1 ADD データ
COMP1 の一致出力がスルー出力のときは、一致出力の最小出力幅を出力します。

- 142 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) DFL COUNTER INITIALIZE2
パルス偏差カウンタの各機能を設定します。
このコマンドの実行は常時可能です。
<実行シーケンス>

DATA1 PORTWRITECOMMAND PORTWRITECOMMAND H'A2

DFL COUNTER INITIALIZE2 COMMAND① DRIVE DATA1 PORT に設定データを書き込みます。

② DRIVE COMMAND PORT に COMMAND を書き込みます。
推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

COMP3

COMP3

COMP2

COMP2

TYPE1

TYPE0

TYPE1

TYPE0

D11

D10

D9

D8

COMP3

COMP3

COMP3

COMP3

DETECT

STOP

STOP

INT

TYPE

TYPE

ENABLEENABLE

D7

D6

D5

D4

D3

D2

D1

D0

COMP2

COMP2

COMP2

COMP2

COMP1

COMP1

COMP1

COMP1

DETECT

STOP

STOP

INT

DETECT

STOP

STOP

INT

TYPE

TYPE

ENABLEENABLE

TYPE

TYPE

ENABLEENABLE●電源投入後の初期値は H'9000 (アンダーライン側) です。
D0 ： COMP1 INT ENABLE
COMP1 の一致出力を、 DFLINT に「出力する／出力しない」を選択します。
0 ： COMP1 の一致出力を DFLINT に出力しない
1 ： COMP1 の一致出力を DFLINT に出力する

D1 ： COMP1 STOP ENABLE
COMP1 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP1 の一致出力の停止機能を実行しない
1 ： COMP1 の一致出力の停止機能を実行する

D2 ： COMP1 STOP TYPECOMP1 の一致出力による停止機能を選択します。
0 ：一致出力でパルス出力を即時停止する
1 ：一致出力でパルス出力を減速停止する

D3 ： COMP1 DETECT TYPECOMP1 が比較するカウンタ値の、検出方法を選択します。
0 ：カウンタ値を絶対値に変換して比較する
1 ：カウンタ値を符号付きのまま比較する
・ COMP1 の検出条件は、「カウンタの値 ＝ COMPARE REGISTER1 の値」です。

D4 ： COMP2 INT ENABLE
COMP2 の一致出力を、 DFLINT に「出力する／出力しない」を選択します。
0 ： COMP2 の一致出力を DFLINT に出力しない
1 ： COMP2 の一致出力を DFLINT に出力する

D5 ： COMP2 STOP ENABLE
COMP2 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP2 の一致出力の停止機能を実行しない
1 ： COMP2 の一致出力の停止機能を実行する- 143 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
D6 ： COMP2 STOP TYPECOMP2 の一致出力による停止機能を選択します。
0 ：一致出力でパルス出力を即時停止する
1 ：一致出力でパルス出力を減速停止する

D7 ： COMP2 DETECT TYPECOMP2 が比較するカウンタ値の、検出方法を選択します。
0 ：カウンタ値を絶対値に変換して比較する
1 ：カウンタ値を符号付きのまま比較する

D8 ： COMP3 INT ENABLE
COMP3 の一致出力を、 DFLINT に「出力する／出力しない」を選択します。
0 ： COMP3 の一致出力を DFLINT に出力しない
1 ： COMP3 の一致出力を DFLINT に出力する

D9 ： COMP3 STOP ENABLE
COMP3 の一致出力による停止機能を「実行する／実行しない」を選択します。
0 ： COMP3 の一致出力の停止機能を実行しない
1 ： COMP3 の一致出力の停止機能を実行する

D10 ： COMP3 STOP TYPECOMP3 の一致出力による停止機能を選択します。
0 ：一致出力でパルス出力を即時停止する
1 ：一致出力でパルス出力を減速停止する

D11 ： COMP3 DETECT TYPECOMP3 が比較するカウンタ値の、検出方法を選択します。
0 ：カウンタ値を絶対値に変換して比較する
1 ：カウンタ値を符号付きのまま比較する

D12 ： COMP2 TYPE0
D13 ： COMP2 TYPE1
COMP2 の検出条件を選択します。
TYPE1

TYPE0

COMP2 の検出条件

00

カウンタの値 ＝ COMPARE REGISTER2 の値

01

カウンタの値 ≧ COMPARE REGISTER2 の値

10

カウンタの値 ≦ COMPARE REGISTER2 の値

1

1

設定禁止

D14 ： COMP3 TYPE0
D15 ： COMP3 TYPE1
COMP3 の検出条件を選択します。
TYPE1

TYPE0

COMP3 の検出条件

00

カウンタの値 ＝ COMPARE REGISTER3 の値

01

カウンタの値 ≧ COMPARE REGISTER3 の値

10

カウンタの値 ≦ COMPARE REGISTER3 の値

1

1

設定禁止

- 144 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) DFL COUNTER INITIALIZE3
パルス偏差カウンタの各機能を設定します。
このコマンドの実行は常時可能です。
<実行シーケンス>

COMMAND H'A3

DATA1 PORTDFL COUNTER INITIALIZE3 COMMAND① DRIVE DATA1 PORT に設定データを書き込みます。

WRITE

COMMAND PORT

② DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D8

−

−

−

−

−

−

−

−

D7

D6

D5

D4

D3

D2

D1

D0

DIVISION

DIVISION

DIVISION

DIVISION

DIVISION

DIVISION

DIVISION

DIVISION

D7

D6

D5

D4

D3

D2

D1

D0

●電源投入後の初期値は H'00 です。
D7--D0 ： DIVISION D7--D0
DIVISION TYPE で選択したカウントパルスのカウントタイミングの分周数を選択します。
D7--D0

H'FF

H'FE

H'FD

〜

H'03

H'02

H'01

H'00

分周数

256

255

254

〜

4

3

2

1 (分周なし)

・分周したカウントタイミングが、カウンタのカウントパルスになります。
外部パルス信号の分周機能は、 COUNT TYPE の逓倍機能と組み合わせて使用できます。
・ UC-766 以外の製品は、外部パルスをカウントすることはできません。
■分周機能（分周数４の場合）
・ COUNT PULSE SEL と DIVISION TYPE で選択したカウントパルスのカウントタイミングを分周します。
外部パルス信号の場合は、 COUNT TYPE で逓倍したカウントタイミングを分周します。
分周したカウントタイミングで、カウンタをアップダウンカウントします。
・ DFL COUNTER INITIALIZE3 コマンドを実行すると、分周中の分周カウント値をクリアします。
<カウントパルスの入力>
アップタイミング
0

1

2

3

0

1

クリア

2

ダウンタイミング
2

1

0

3

2

1

0

3

2

0

7

<分周後のカウントタイミング>
カウントアップ
1
カウントダウン
1

0

DFL COUNTER INITIALIZE3 コマンドの実行（分周数８に変更）- 145 -

-1

-2

6

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(4) DFL COUNTER PRESET
パルス偏差カウンタのカウント初期値を設定します。このコマンドは常時実行可能です。
<実行シーケンス>

COMMAND H'A0

DFL COUNTER PRESET COMMAND① DRIVE DATA1 PORT にカウント初期値 D15--D0 を書き込みます。
設定範囲は、-32,767 〜 +32,767 （ H'8001 〜 H'7FFF ）です。
負数の場合は 2 の補数表現にします。

DATA1 PORTWRITECOMMAND PORT

② DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15

D14

D13

D12

D11

D10

D9

D15

D8

D7

D6

D5

D4

D3

D2

D1

カウント初期値●電源投入後の初期値は H'0000 です。
・現在位置には、 H'8000 を設定することもできます。
但し、 H'8000 を設定すると、 DRIVE STATUS4 PORT の DFL OVF = 1 になります。

- 146 -D0
D0

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(5) DFLINT COMPARE REGISTER1,2,3 SET
パルス偏差カウンタの COMPARE REGISTER1, 2, 3 に検出値を設定します。
このコマンドの実行は常時可能です。

<実行シーケンス>

COMMAND H'A8DFLINT COMPARE REGISTER1 SET COMMAND

COMMAND H'A9

DFLINT COMPARE REGISTER2 SET COMMAND

COMMAND H'AADFLINT COMPARE REGISTER3 SET COMMAND① DRIVE DATA1 PORT に検出値 D15--D0 を書き込みます。
設定範囲は、-32,767 〜 +32,767 （ H'8001 〜 H'7FFF ）です。
負数の場合は 2 の補数表現にします。

DATA1 PORTWRITECOMMAND PORT

② DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

検出値

D2

D1

D0
D0

●電源投入後の初期値は H'8000_0000 です。

・検出値は、 DFL COUNTER INITIALIZE2 コマンドの COMP1, 2, 3 の各 COMP DETECT TYPE の設定により、絶対値検出または符号付き検出の比較データになります。
・ COMP DETECT TYPE = 0 の場合（絶対値検出）
検出値を絶対値に変換して、絶対値に変換したカウンタ値と比較します。
|H'8001 〜 H'FFFF| = +32,767 〜 +1になります。
|H'0000 〜 H'7FFF| = 0 〜 +32,767になります。
・ COMP DETECT TYPE = 1 の場合（符号付き検出）
検出値はそのまま符号付きの値で、符号付きのカウンタ値と比較します。
H'8001 〜 H'7FFF = -32,767 〜 +32,767 です。

- 147 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(6) DFLINT COMP1 ADD DATA SET
パルス偏差カウンタの COMP1 の加算データを設定します。
このコマンドは常時実行可能です。
<実行シーケンス>

COMMAND H'ACDFLINT COMP1 ADD DATA SET COMMAND① DRIVE DATA1 PORT に COMP1 ADD データ D15--D0 を書き込みます。
設定範囲は、-32,767 〜 +32,767 （ H'8001 〜 H'7FFF ）です。
負数の場合は 2 の補数表現にします。

DATA1 PORTWRITECOMMAND PORT

② DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE

推奨 :MC07_LWDrive 関数(DATA2 PORT は、 H'0000 を書き込み)

DRIVE DATA1 PORT の設定データ
D15
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

COMP1 ADD データ●電源投入後の初期値は H'0000 です。

- 148 -

D5

D4

D3

D2

D1

D0
D0

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
4-2-4. カウントデータの読み出し■ カウントデータの読み出しシーケンス<実行シーケンス>
COMMAND PORT

① DRIVE COMMAND PORT に COMMAND を書き込みます。

WRITE(DATA1,2 PORT は、 H'0000 にして COMMAND を書き込み)

DATA1 PORT

② DRIVE DATA1 PORT からカウントデータ D15--D0 を読み出します。

READ
DATA2 PORT

③ DRIVE DATA2 PORT からカウントデータ D31--D16 を読み出します。

READ

推奨 :MC07_LWRDrive 関数

DRIVE DATA1 PORT の読み出しデータ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

カウントデータ

D15

D0

DRIVE DATA2 PORT の読み出しデータ
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

カウントデータ

D31

D0
D16

・各 COUNTER READ コマンドを実行すると、カウンタのカウントデータを DRIVE DATA1, 2 PORT(READ)にセットします。

(1) ADDRESS COUNTER READ
アドレスカウンタのカウントデータを読み出します。
このコマンドの実行は常時可能です。
COMMAND H'D8

ADDRESS COUNTER READ COMMAND(2) PULSE COUNTER READ
パルスカウンタのカウントデータを読み出します。
このコマンドの実行は常時可能です。
COMMAND H'D9

PULSE COUNTER READ COMMAND(3) DFL COUNTER READ
パルス偏差カウンタのカウントデータを読み出します。
このコマンドの実行は常時可能です。
COMMAND H'DADFL COUNTER READ COMMAND- 149 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

５．機能説明5-1. ドライブ仕様
5-1-1. 入出力仕様(1)パルス出力仕様
CWP,CCWP 信号から出力するパルスの出力方式を以下の 4 種類の中から選択できます。
各軸のパルス出力方式は、対象の軸に SPEC INITIALIZE1 コマンドで設定します。
コントローラドライバは、パルス出力仕様を設定することはできません。(初期値の独立方向出力で動作します。)<＋方向パルス出力><−方向パルス出力>●独立方向出力
CWP:パルス出力CCWP :パルス出力●方向指定出力
CWP:パルス出力CCWP :方向出力● 2 逓倍の位相差信号出力
CWP:A 相出力CCWP :B 相出力● 4 逓倍の位相差信号出力
CWP:A 相出力CCWP :B 相出力・矢印はパルス出力の終了エッジ(アドレスカウンタのカウントエッジ)です。
・方向指定出力の方向出力は、出力するパルスの方向が確定すると変化します。
JOG, SCAN, INDEX, ORIGIN, 直線補間ドライブでは、 STBY = 1 で方向が確定します。
円弧補間ドライブでは、 STBY = 1 で方向確定し、パルス出力直後に次のパルスの方向が確定します。
外部パルス出力では、出力する外部パルスの検出で方向が確定します。
・位相差信号出力は、独立方向出力のパルス終了エッジのタイミングで変化します。

- 150 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2)サーボ対応機能
各軸にはサーボドライバに対応する信号として以下の信号があります。
信号名

機能

読み書きするポート

関数(コマンド)

DRST 信号出力

サーボリセット出力

DRIVE COMMAND PORT DRIVE COMMAND 書き込み関数(DRST OUT または SIGNAL OUT)

DEND 信号入力

サーボ位置決め完了入力 DRIVE STATUS2 PORT

DRIVE STATUS2 読み出し関数

DALM 信号入力

ドライバアラーム入力

DRIVE STATUS2 PORT

DRIVE STATUS2 読み出し関数

S.ON 信号出力

サーボ ON

制御 I/O 出力 PORTI/O PORT 書き込み関数

A.CLR 信号出力

サーボアラームクリア

制御 I/O 出力 PORTI/O PORT 書き込み関数

S.RDY 信号入力

サーボレディー

制御 I/O 入力 PORTI/O PORT 読み出し関数■ DRST 信号
サーボ対応無効時は、汎用出力としてステッピングモータドライバの M.F 信号(モータ励磁電流の ON/OFF)などに使用できます。
サーボ対応有効時は、ドライブ中に即時停止指令、または LIMIT 即時停止指令を検出すると、 DRST 信号が10 ms 間アクティブレベルを出力します。
また、 ORIGIN SPEC SET 関数の AUTO DRST ENABLE=1 の時は、 ORIGIN ドライブ終了時に 10ms 間
アクティブレベルを出力します。初期設定はサーボ対応無効です。
・ DRST 信号がサーボ対応でアクティブレベルを出力中は DRIVE STATUS1 PORT の BUSY=1 となります。
DRST 信号および DEND 信号の<サーボ対応>終了後に、ドライブを終了します。
・ DRST 信号はサーボ対応の有効 /無効に関わらず DRST OUT コマンドで 10 ms 間アクティブレベルを出力することができます。
また、 SIGNAL OUT コマンドで ON/OFF レベルを出力することができます。
・ DRST 信号のサーボ対応は SPEC INITIALIZE3 コマンドで設定します。

■ DEND/PO 信号
サーボ対応無効時は、ステッピングモータドライバの PO 信号入力、または汎用入力として使用できます。
サーボ対応有効時は、ドライブ実行時にパルス出力が終了しても、 DEND/PO 信号のアクティブレベルを検出するまでドライブを終了しません。初期設定はサーボ対応無効です。
DEND 信号の状態は、 MCC の DRIVE STATUS2 PORT から確認することができます。
・ DEND/PO 信号がサーボ対応でアクティブレベルの検出待ちの間は、 DRIVE STATUS1 PORT の BUSY = 1 、DRIVE STATUS2 PORT の DEND BUSY ＝ 1 になります。
・即時停止指令を検出した場合は、サーボ対応を中止してドライブを終了します。
即時停止指令の検出で、 BUSY = 0 、 DEND BUSY = 0 になります。
・ DEND/PO 信号のサーボ対応は SPEC INITIALIZE3 コマンドで設定します。

■ DALM 信号
MCC の入力機能を選択すると、ドライバからのアラーム信号入力によって、減速停止、または即時停止させることができます。初期設定は汎用入力です。
DALM 信号の状態は、 MCC の DRIVE STATUS2 PORT から確認することができます。
また、 DALM 信号によって、 ERROR とすることができます。
・ DALM 入力機能は SPEC INITIALIZE3 コマンドで設定します。
・ ERROR の設定は ERROR STATUS MASK コマンドで設定します。

■ S.ON, A.CLR, S.RDY 信号
制御 I/O PORT からサーボオン信号、アラームクリア信号の操作、サーボレディー信号の確認ができます。
また、 UCD-7613v1/GDB5F40 では、サーボオン(S.ON )信号は各軸 C.S 信号になります。
・制御 I/O PORT は、ユニットアクセス関数または I/O 関数で操作できます。

- 151 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-1-2. ドライブパラメータ(1) 第 1 パルス出力周期
ドライブ開始時の第 1 パルス目は FSPD で設定したパルス周期を必ず出力します。
FSPD を調整することにより、パルス出力の指令を与えてからパルス出力開始までの時間を速くすることができます。
・初期値は 5kHz (1 周期 200 μ s )です。
・駆動するドライバ側の入力応答周波数の範囲内で調整してください。
コマンド予約機能と第 1 パルス出力周期を組み合わせることで、連続したドライブを作ることができます。
FSPD は SPEED･ RATE 関数で設定します。
FSPD

･･･

ドライブ開始時の第 1 パルスの出力周期 を 1Hz 単位で設定します。
( 0 〜 8,388,607Hz )DRIVE STATUS1 の DRIVE
CWP
パルス出力
CCWP

1 パルス目OFF 周期

2 パルス目ON 周期

第 1 パルス出力周期(FSPD)

一定速度又は 加速開始速度

・ FSPD の設定値と実際に出力する周期は以下の通りとなります。
設定値
8,388,607 〜 6,666,667 Hz
6,666,666 〜 5,000,001 Hz
5,000,000 〜 4,000,001 Hz
4,000,000 〜 3,333,334 Hz
3,333,333 〜 2,857,143 Hz

OFF 周期 = 50 ns
OFF 周期 = 50 ns
OFF 周期 = 100 ns
OFF 周期 = 100 ns
OFF 周期 = 150 ns

実際に出力する周期(周波数)ON 周期 = 50 ns(10,000,000 Hz)
ON 周期 = 100 ns(6,666,666 Hz)
ON 周期 = 100 ns(5,000,000 Hz)
ON 周期 = 150 ns(4,000,000 Hz)
ON 周期 = 150 ns(3,333,333 Hz)■ FSPD による DELAY TIME の挿入
コマンド予約機能(応用機能)で連続ドライブを行う場合には、次のドライブの FSPD の周期を調整することにより、 FSPD を連続ドライブ時の DELAY TIME として利用できます。
● FSPD で停止しない連続ドライブを行う
現在のドライブ → 次の連続ドライブ間を、開始速度のパルス周期でつなげます。
・最初のドライブ実行中に、予約コマンドで「次の連続ドライブ」を設定します。
「次の連続ドライブ」の FSPD を、「次の連続ドライブ」の開始速度に設定します。
・ MCC は、現在のドライブ終了後に予約コマンドの処理を行います。
「次の連続ドライブ」の１パルス目（ FSPD ）に「次の連続ドライブ」の開始速度を１周期出力します。
２パルス目以降は、「次の連続ドライブ」の開始速度からパルス出力します。
● FSPD で反転ドライブの停止時間を挿入する
現在のドライブ → 次の反転ドライブ間に、 DELAY TIME （例： 50 ms （ 20 Hz ））を挿入します。
・最初のドライブ実行中に、予約コマンドで「次の反転ドライブ」を設定します。
「次の反転ドライブ」の FSPD を、 20 Hz に設定します。
・ MCC は、現在のドライブ終了後に予約コマンドの処理を行います。
「次の反転ドライブ」の１パルス目（ FSPD ）に 20 Hz を１周期出力します。
２パルス目以降は、「次の反転ドライブ」の開始速度からパルス出力します。
DELAY TIME の挿入としては、 SPEC INITIALIZE1 コマンドの PULSE OUTPUT MASK の機能を使用して、「パルス出力をマスクしたドライブの実行時間」を DELAY TIME として利用することもできます。

- 152 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) 加減速パラメータ
加減速ドライブは、加速カーブと減速カーブで加減速を行うドライブです。
加減速ドライブには以下の加減速パラメータの設定が必要です。
SPEED･ RATE 関数で以下の加減速パラメータを設定します。
最高速度
開始速度
終了速度
SUAREA
SDAREA
URATE
DRATE
速度倍率

･･･
･･･
･･･
･･･
･･･
･･･
･･･
･･･

加減速ドライブの最高速時の PULSE 速度を 1Hz 単位で設定します。
加減速ドライブの加速開始時の PULSE 速度を 1Hz 単位で設定します。
加減速ドライブの減速終了時の PULSE 速度を 1Hz 単位で設定します。
加速カーブの S 字変速領域を 1Hz 単位で設定します。
減速カーブの S 字変速領域を 1Hz 単位で設定します。
加速時定数を設定します。(RATE テーブル表の RATE No.で指定してください。)
減速時定数を設定します。(RATE テーブル表の RATE No.で指定してください。)
速度倍率を設定します。 (RATE テーブル表の RESOL No.で指定してください。)

・設定した SPEED の値が設定範囲を越えていた場合は、最大値に補正します。
・設定した RESOL No.、 URATE No.、 DRATE No.が設定範囲を越えていた場合、関数エラーとなります。

■最高速度、開始速度、終了速度、SUAREA、SDAREAの設定範囲
RESO RESOL
No. (速度倍率)
0
0.1
1
0.2
2
0.5
3
1
4
2
5
5

HSPD,LSPD,ELSPDの設定範囲
0 〜 3,276Hz
0 〜 6,553Hz
0 〜 16,383Hz
0 〜 32,767Hz
0 〜 65,534Hz
0 〜 163,835Hz

SUAREA,SDAREAの設定範囲
0 〜 1,638Hz
0 〜 3,276Hz
0 〜 8,191Hz
0 〜 16,383Hz
0 〜 32,767Hz
0 〜 81,950Hz

RESO RESOL
No. (速度倍率)
6
10
7
20
8
50
9
100
10
200
−
−

HSPD,LSPD,ELSPDの設定範囲
0 〜 327,670Hz
0 〜 655,340Hz
0 〜 1,638,350Hz
0 〜 3,276,700Hz
0 〜 6,553,400Hz

SUAREA,SDAREAの設定範囲
0 〜 163,830Hz
0 〜 327,660Hz
0 〜 819,150Hz
0 〜 1,638,300Hz
0 〜 3,276,600Hz■ RATE テーブル表
RATE
No.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

RATE
(ms/kHz)
5,000
3,000
2,000
1,000
500
300
200
100
50
30
20
10
5
3
2
1
0.5
0.3
0.2
0.1
0.05
0.03
0.02
0.01
0.005
0.0025RESOL No.0
RESOL=0.1
U/D CYCLE
1,000
600
400
200
100
60
40
20
10
6
4
2
1

RESOL No.1
RESOL=0.2
U/D CYCLE
2,000
1,200
800
400
200
120
80
40
20
12
8
4
2
1

RESOL No.2
RESOL=0.5
U/D CYCLE
5,000
3,000
2,000
1,000
500
300
200
100
50
30
20
10
5
3
2
1

- 153 -RESOL No.3
RESOL=1
U/D CYCLE
10,000
6,000
4,000
2,000
1,000
600
400
200
100
60
40
20
10
6
4
2
1

RESOL No.4
RESOL=2
U/D CYCLE
12,000
8,000
4,000
2,000
1,200
800
400
200
120
80
40
20
12
8
4
2
1

RESOL No.5
RESOL=5
U/D CYCLE

10,000
5,000
3,000
2,000
1,000
500
300
200
100
50
30
20
10
5
3
2
1

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ RATE テーブル表(続き)
RATE
No.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

RESOL No.6
RESOL=10
U/D CYCLE

RATE(ms/kHz)
5,000
3,000
2,000
1,000
500
300
200
100
50
30
20
10
5
3
2
1
0.5
0.3
0.2
0.1
0.05
0.03
0.02
0.01
0.005
0.0025

10,000
6,000
4,000
2,000
1,000
600
400
200
100
60
40
20
10
6
4
2
1

RESOL No.7
RESOL=20
U/D CYCLE

12,000
8,000
4,000
2,000
1,200
800
400
200
120
80
40
20
12
8
4
2
1

RESOL No.8
RESOL=50
U/D CYCLE

10,000
5,000
3,000
2,000
1,000
500
300
200
100
50
30
20
10
5
3
2
1

RESOL No.9
RESOL=100
U/D CYCLE

10,000
6,000
4,000
2,000
1,000
600
400
200
100
60
40
20
10
6
4
2
1

RESOL No.10
RESOL=200
U/D CYCLE

12,000
8,000
4,000
2,000
1,200
800
400
200
120
80
40
20
12
8
4
2
1

■直線加減速動作
直線加減速ドライブは、 S 字加速の変速領域を "0" に設定した加速カーブと、 S 字減速の変速領域を "0" に設定した減速カーブで加減速を行うドライブです。
開始速度から最高速度まで、 S 字変速領域がない直線加速カーブで加速し、最高速度から終了速度まで、
S 字変速領域がない直線減速カーブで減速します。
速度
最高速度
直線加速カーブ

直線減速カーブ

開始速度
FSPD

終了速度
第１パルス

オフセットパルス数
時間- 154 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ S 字加減速動作
S 字加減速ドライブは、 S 字加速の変速領域を設定した加速カーブとＳ字減速の変速領域を設定した減速カーブ
で加減速を行うドライブです。
加速開始時の S 字変速領域と加速終了時の S 字変速領域を、放物線に近似したＳ字加速カーブで加速し、減速開始時の S 字変速領域と減速終了時の S 字変速領域を、放物線に近似したＳ字減速カーブで減速します。
速度
最高速度

Ｓ字加速終了部

Ｓ字減速開始部

の変速領域

の変速領域

(SUAREA)(SDAREA)

直線加速カーブ
Ｓ字加速開始部

開始速度
FSPD

直線減速カーブ
Ｓ字減速終了部

の変速領域

の変速領域

( SUAREA)(SDAREA)

終了速度

第１パルス

オフセットパルス数時間■ S 字加減速 INDEX ドライブの三角駆動回避動作
S 字加減速の INDEX ドライブで、停止位置までのパルス数が少なくて最高速度（目標速度）に達しない場合は自動的に最高速度を引き下げて、滑らかな S 字加減速カーブで INDEX ドライブを停止します。
この機能は常時有効です。
速度
最高速度(目標速度 )

最高速度を補正して滑らかな S 字加減速カーブにします
自動減速開始
開始速度

終了速度
時間

INDEX 指令

指定位置で停止■減速停止指令検出時の三角駆動回避動作
S 字加速中に減速停止指令を検出した場合は、 SUAREA の S 字加速終了カーブで滑らかに加速を終了し、S 字減速カーブで減速停止します。この機能は常時有効です。
速度
最高速度

滑らかに加速を終了してＳ字減速カーブで停止します

開始速度

終了速度
時間

加減速ドライブ指令

減速停止指令- 155 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) JOG パラメータ■ JOG パルス速度
JOG ドライブを実行すると設定した JOG パルス速度の一定速でドライブを行います。
JOG パルス速度の設定範囲は 1 〜 4,194,303Hz( 1Hz 単位)です。
速度
JOG パルス速度
第 1 パルス出力周期

JOG PULSE 数
時間

JOG 指令・ JOG パルス速度は JSPD SET コマンドで設定します。
・ JOG パルス速度は ORIGIN ドライブ工程の CONSTANT SCAN ドライブのパルス速度にも適用します。

■ JOG パルス数
JOG ドライブを実行すると設定した JOG パルス数のパルスを出力します。
JOG パルス数設定範囲は、 0 〜 65,535 （ H'0000 〜 H'FFFF ）です。
・ JOG ドライブパルス数は JOG PULSE SET コマンドで設定します。

- 156 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-1-3. 基本ドライブ(1) JOG ドライブ+/- JOG コマンドを実行すると、 JOG パルス速度の一定速で JOG パルス数のパルスを出力します。
減速停止指令を検出すると、パルス出力を即時停止してドライブを終了します。
即時停止指令を検出すると、パルス出力を即時停止してドライブを終了します。
速度
JOG パルス
速度

JOG パルス 数
時間

JOG 指令(2) SCAN ドライブ+/- SCAN コマンドを実行すると、停止指令を検出するまで連続してパルスを出力します。
減速停止指令を検出すると、パルス出力を減速停止してドライブを終了します。
即時停止指令を検出すると、パルス出力を即時停止してドライブを終了します。
● 減速停止指令による停止動作
速度
最高速度
加速カーブ

減速カーブ

減速カーブ
開始速度

終了速度

時間
減速して終了速度で停止

減速して終了速度で停止

SCAN 指令
減速停止指令減速停止指令●即時停止指令による停止動作
速度
最高速度
加速カーブ
加速中のドライブ速度で停止

ドライブ中の最高速度で停止

開始速度

時間
SCAN 指令
即時停止指令即時停止指令- 157 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) INDEX ドライブ
INC INDEX コマンドを実行すると、指定した相対アドレスに達するまでパルスを出力します。
ABS INDEX コマンドを実行すると、指定した絶対アドレスに達するまでパルスを出力します。
加減速ドライブ中には、パルス速度を自動減速して指定位置で停止します。
減速停止指令を検出すると、パルス出力を減速停止してドライブを終了します。
即時停止指令を検出すると、パルス出力を即時停止してドライブを終了します。
●自動減速機能による停止動作
速度

自動減速

自動減速

最高速度
加速カーブ

減速カーブ

減速カーブ

終了速度

開始速度
パルス数が少なくて最高速度に達しないとき
時間
自動減速して指定位置で停止

自動減速して指定位置で停止

INDEX 指令・現在速度が終了速度以下の場合は、減速停止指令を検出すると終了速度に向かって加速します。
自動減速地点を検出すると終了速度に向かって加速し、指定位置でパルス出力を停止します。

- 158 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-1-4. ORIGIN ドライブ
(1) ORIGIN ドライブ仕様
ORIGIN ドライブは、センサを検出する各種ドライブ工程を順次行い、機械原点信号を検出してドライブを終了します。
ORIGIN ドライブは、 MCC が持っている ORIGIN ドライブを組み合わせて、コントローラが ORIGIN ドライブを実現する機能です。
ORIGIN ドライブには、 ORG-0 〜 5, 10,11,12 の 9 種類のドライブ型式があります。
■ドライブ型式の特徴
ドライブ

検出する

検出完了時の

ドライブ

型式

センサ数

センサの状態

工程数

所要時間

精度

ORG‑0

1

OFF

2

短

低

＋方向のLIMIT−方向のLIMIT

ORG‑1

1

ON

2

短

低

＋方向のLIMIT−方向のLIMIT

ORG‑2

1

OFF

4

長

中

＋方向のLIMIT−方向のLIMIT

ORG‑3

1

ON

4

長

中

＋方向のLIMIT−方向のLIMIT

ORG‑4

2

OFF

4/5

最長

高

＋方向のLIMIT−方向のLIMIT

ORG‑5

2

ON

4/5

最長

高

＋方向のLIMIT−方向のLIMIT

ORG‑10

2

ON

2

最短

低

＋方向のLIMIT−方向のLIMIT

ORG‑11

1

OFF

2

短

低

ORG‑12

1

OFF

4

長

中

CWLM信号のCCWLM信号の

入力機能

入力機能

＋方向のLIMIT
検出信号＋方向のLIMIT
検出信号

検出信号
−方向のLIMIT
検出信号−方向のLIMIT

ORG-0 〜 5,10 で検出するセンサ信号は、 ORG, NORG, ZPO 信号入力を合成した ORG, NORG 検出信号です。
・ NORG 検出信号は、 ORIGIN SPEC SET 関数の NORG SIGNAL TYPE で選択します。
・ ORG 検出信号は、 ORIGIN SPEC SET 関数の ORG SIGNAL TYPE で選択します。
また、 ORG-0 〜 5,10,11,12 の各工程では 1 度検出された機械原点の ADDRESS を記憶し、以後の機械原点検出を短時間で行う機能が付加されています。このため内部に検出 FLAG を用意しており、この FLAG が ON の場合は、機械原点近傍 (機械原点 +OFFSET PULSE)まで INDEX ドライブで移動し、その後に原点検出の工程を行います。 FLAG が OFF の場合は INDEX ドライブを行わず各原点検出工程の DRIVE から行います。
※ 1 度機械原点検出した後に、機械側だけを手動で動かした場合は、実際の機械の位置とコントローラ側で管理しているアドレスが異なる可能性があります。
このような状態で 2 回目の ORIGIN ドライブを起動すると、正しく機械原点が検出できない場合があります。
一度 ORIGIN FLAG RESET 関数により ORIGIN FLAG をリセットしてください。
これにより、電源投入時の最初の 1 回目と同じように、 ORIGIN センサを検出する ORIGIN ドライブとなります。
●検出 FALG ON 条件
ORIGIN ドライブで正常に機械原点が検出された時。
●検出 FALG OFF 条件
電源投入時。
ORIGIN FLAG RESET 関数実行時。
ORIGIN SPEC SET 関数実行時。
ドライブが即時停止(ORIGIN STATUS の FSEND BIT=1)した時。
･ FAST STOP コマンド･ FSSTOP 信号･入力機能を即時停止に設定した DALM 信号･停止機能を即時停止に設定した各種カウンタのコンパレータ出力
ドライブが LIMIT 停止(ORIGIN STATUS の LSEND BIT=1)した時。
･ CWLM, CCWLM 信号
CPP STOP した時。
ADDRESS COUNTER がオーバフローした時。
ORIGIN ドライブのエラーが発生した時。
前回の ORIGIN ドライブと異なる型式の ORIGIN ドライブを起動した時。
ADDRESS COUNTER MAX COUNT SET コマンドを実行した時。
ADDRESS COUNTER の最大カウント数を FFFFFFFF 以外に設定している場合。
DRST OUT コマンドを実行した時。
AUTO DRST ENABLE=1 にして、 ORIGIN ドライブを起動した場合。
ADDRESS COUNTER PRESET COMMAND が実行され、機械原点 ADDRESS が更新された結果、機械原点 ADDRESS が± 2,147,483,647 の範囲を超えた時。

- 159 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

・検出 FLAG が ON の時に戻る機械原点 ADDRESS は内部で管理されておりユーザは何も考慮する必要はありません。また、 MCC ADDRESS COUNTER PRESET COMMAND により ADDRESS を更新しても、機械原点 ADDRESS も同時に更新されるので物理的な位置は保存されます。
・機械原点 ADDRESS は、次のように機械原点検出型式により異なります。
ORG-0 〜 3 の場合は、機械原点検出終了位置の位置が機械原点近傍 ADDRESS となります。
ORG-4,5 の場合は、 NORG 信号検出位置が機械原点 ADDRESS となります。
尚、 OFFSET PULSE は、 ORIGIN OFFSET PULSE SET 関数で設定します。
・回転系等のような絶対 ADDRESS が無意味となるシステムの場合、 ORIGIN FLAG RESET 関数により、FLAG をクリアしてください。

■ ORIGIN ドライブの各種ドライブ工程
ORIGIN ドライブには、 SCAN 工程、 CONSTANT SCAN 工程、 1PULSE 送り工程の３つの工程があります。
● SCAN 工程
加減速ドライブのパラメータで ORIGIN SCAN ドライブを行います。センサ信号を検出すると減速停止します。
● CONSTANT SCAN 工程
JSPD 速度で ORIGIN CSCAN ドライブ(一定速ドライブ)を行います。センサ信号を検出すると停止します。
● 1PULSE 送り工程
ORIGIN SPEC SET 関数の PULSE SENSOR TYPE 設定と AUTO DRST ENABLE 設定により、次の示すように動作が異なります。
・ PULSE SENSOR TYPE =0 (機械原点のエッジを検出して工程を終了する)、または AUTO DRST ENABLE=1(DRST 信号出力する)のときは、 PULSE DELAY TIME を SPEED 換算して、 ORIGIN CSCAN ドライブ(一定速ドライブ)を行います。
例) PULSE DELAY TIME=20ms のとき、 50Hz でドライブします。
AUTO DRST ENABLE=1 のとき、 PULSE SENSOR TYPE の設定にかかわらず、機械原点検出のエッジを検出して工程を終了します。
・ PULSE SENSOR TYPE=1(機械原点のレベルを検出して工程を終了する)のときは、 PULSE DELAY TIME で設定した時間間隔で 1PULSE ドライブを繰り返し行います。 センサ信号を検出すると終了します。

PULSE DELAY TIME

PULSE DELAY TIME

PULSE DELAY TIME

尚、 PULSE DELAY TIME は、 ORIGIN DELAY SET 関数で設定します。

■ ORIGIN ドライブの LIMIT 信号について
ORIGIN ドライブでは、 CWLM, CCWLM 信号を LIMIT 信号として使用します。
CWLM, CCWLM 信号にはシステムの LIMIT センサ信号を入力してください。
ORIGIN ドライブ(SCAN 工程、 CONSTANT SCAN 工程、 1PULSE 送り工程)では CWLM 信号を＋方向、
CCWLM 信号を−方向の LIMIT 停止信号として検出します。
ORG-11,ORG-12 では、 CWLM,CCWLM 信号の一方が機械原点信号になります。
ORIGIN ドライブの起動方向が CCW 方向の場合は、 CCWLM 信号が機械原点になり、 CWLM 信号は LIMIT
停止信号になります。
ORIGIN ドライブの起動方向が CW 方向の場合は、 CWLM 信号が機械原点になり、 CCWLM 信号は LIMIT
停止信号になります。
ORIGIN ドライブに付属したドライブ機能の、機械原点近傍アドレスまでの INDEX ドライブ、および、
PRESET パルス数の INDEX ドライブは、 ORIGIN ドライブ以外のドライブとして扱います。
これらの INDEX ドライブ実行中には、 CWLM, CCWLM 信号は以下のように機能します。
・ CWLM, CCWLM 信号は、 SPEC INITIALIZE2 コマンドで設定されている「 CWLM TYPE 」と、「 CCWLM TYPE 」で機能します。
・入力機能が LIMIT 停止機能の場合は、 LIMIT 停止後に ORIGIN ドライブを終了します。

- 160 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ ORIGIN ドライブパラメータ
ORIGIN SPEC 関数により、次に示す ORIGIN ドライブの動作仕様の選択が可能です。
・ ORIGIN ドライブの起動方向
・最終工程となる 1PULSE 送り工程での機械原点信号の検出方法
・機械原点信号のレベルエラー発生時の動作仕様
・ ERROR PULSE ENABLE 機能の『有効にする /無効にする』
・機械原点信号の検出完了時に DRST 信号を『出力する /出力しない』
・ SCAN 工程時に MARGIN PULSE を入れる /入れない。
・ ORG 検出信号
・ NORG 検出信号

■プリセットドライブ
機械原点検出ドライブが正常終了後、 PRESET PULSE 数で設定された位置までドライブを行います。
PRESET PULSE 数は、 ORIGIN PRESET PULSE SET 関数で設定します。

■ ERROR PULSE 検出機能
CONSTANT SCAN 工程、 1PULSE 送り工程実行中に検出信号を検出できずに出力した PULSE 数がエラー判定
PULSE 数に達し場合、 ORIGIN STATUS の ERROR PULSE ERROR=1 で ORIGIN ドライブエラーとなりドライブが終了します。
エラーパルス検出機能は、 ORIGIN SPEC 関数で ERROR PULSE ENABLE=1 にした場合のみ機能します。
エラー判定 PULSE 数は、 ORIGIN ERROR PULSE SET 関数で設定します。

■ MARGIN パルス機能
SCAN 工程および CSCAN 工程のときに MARGIN パルスを挿入します。
NORG 検出工程および ORIGIN ドライブの最終工程では、 MARGIN PULSE を挿入しません。
・ CONSTANT SCAN 工程では、機械原点信号を検出すると進行方向へ MARGIN パルス分の進入を行ってから停止します。
・ SCAN 工程では機械原点信号を検出し、ドライブを減速停止した後、 MARGIN パルス数分の進入を行います。
MARGIN パルスは、 MARGIN PULSE SET 関数で設定します。
SCAN 工程では ORIGIN SPEC SET 関数の SCAN MARGIN PULSE ENABLE=1 場合のみ MARGIN パルス数分の進入を行います。

■ DELAY TIME・ SCAN 工程、および CSCAN 工程の動作反転時に SCAN DELAY TIME を挿入します。
・ SCAN 工程に LIMIT 停止し、反転する場合に LIMIT DELAY TIME を挿入します。
尚、 SCAN DELAY TIME 、 LIMIT DELAY TIME は、 ORIGIN DELAY SET 関数で設定します。

- 161 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ ORIGIN ドライブの設定と実行
直線加減速ドライブ、または S 字加減速のパラメータを設定とます。
ORIGIN ドライブの SCAN 工程と ORIGIN ドライブに付属したドライブの機械原点近傍アドレスまでの
INDEX ドライブ、および PRESET パルス数の INDEX ドライブは、加減速ドライブのパラメータで動作します。
ORIGIN ドライブの動作仕様と各種ドライブ工程の機能を設定して、 ORIGIN ドライブを実行します。
各設定は、変更が必要な場合に設定します。
■ ORIGIN ドライブの実行シーケンス

SPEED･RATE関数①加減速ドライブに必要なパラメータを設定します。

MCC JSPD SETコマンド② CONSTANT SCAN 工程の PULSE 速度を設定します。

ORIGIN SPEC SET関数③ ORIGIN ドライブの動作仕様を設定します。

ORIGIN DELAY SET関数④各種ドライブ工程間の DELAY TIME を設定します。

ORIGIN MARGIN PULSE SET関数⑤機械原点検出後の MARGIN PULSE 数を設定します。

ORIGIN OFFSET PULSE SET関数⑥機械原点近傍 ADDRESS の OFFSET PULSE 数を設定します。

ORIGIN PRESET PULSE SET関数⑦ PRESET PULSE 数を設定します。

ORIGIN ERROR PULSE SET関数

ORIGINドライブ 関数⑧ CONSTANT SCAN 工程時にエラー判定する最大 PULSE 数、
1PULSE 送り工程時にエラー判定する最大 PULSE 数を設定します。
ORIGIN SPEC SET 関数で ERROR PULSE ENABLE=1 のときに設定します。
⑨ ORIGIN ドライブを実行します。

- 162 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) ORG-0 ドライブ型式
ORIGIN ドライブの起動方向が −( CCW)方向の場合
CCW 方向の ORG-0 型式は、 ORG 検出信号の CW 側エッジ検出で機械原点を検出します。
ORG 検出信号には、１つのパルス、または −( CCW)側レベル保持のセンサ信号を入力します。
最高速度でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT
開始位置
終了位置

検出信号

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します(MP)② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します

SDLY● 開始位置がCCW側のとき① SCAN工程を行います
CCWLM信号の検出で停止します② LIMIT DELAY TIMEを挿入します

LDLY
(MP)
SDLY
(MP)

(LE)

(MP)
SDLY

SDLY
(LE)

④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します

SDLY

(MP)

③ SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します● 開始位置がセンサ内／CCW LIMIT内のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します- 163 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ ORIGIN ドライブの起動方向が ＋( CW)方向の場合
起動方向が CW 方向の場合は、 CCW 方向と対称の動作で、対称方向のエッジを検出します。
CW 方向の ORG-0 型式は、 ORG 検出信号の CCW 側エッジ検出で機械原点を検出します。
ORG 検出信号には、１つのパルス、または ＋( CW)側レベル保持のセンサ信号を入力します。
最高速度でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT

検出信号

(MP)
SDLY

開始位置
終了位置

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY● 開始位置がCCW側のとき① SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します● 開始位置がCW側のとき① SCAN工程を行います
CWLM信号の検出で停止しますLDLY ② LIMIT DELAY TIMEを挿入します③ SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します

(MP)
SDLY
(MP)
SDLY
(LE)

④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します● 開始位置がセンサ内／CW LIMIT内のとき① SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します

(MP)
SDLY
(MP)
SDLY
(LE)

② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します- 164 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) ORG-1 ドライブ型式
ORIGIN ドライブの起動方向が −( CCW)方向の場合
CCW 方向の ORG-1 型式は、 ORG 検出信号の CCW 側エッジ検出で機械原点を検出します。
ORG 検出信号には、１つのパルス、または ＋(CW)側レベル保持のセンサ信号を入力します。
最高速度でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT

検出信号

開始位置
終了位置

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します(MP)② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します

SDLY● 開始位置がCCW側のとき① SCAN工程を行います
CCWLM信号の検出で停止します② LIMIT DELAY TIMEを挿入します

LDLY
(MP)
SDLY
(MP)

(LE)

(MP)
SDLY

SDLY
(LE)

④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します

SDLY

(MP)

③ SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します● 開始位置がCCW LIMIT内のとき① SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します- 165 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ ORIGIN ドライブの起動方向が ＋( CW)方向の場合
起動方向が CW 方向の場合は、 CCW 方向と対称の動作で、対称方向のエッジを検出します。
CW 方向の ORG-1 型式は、 ORG 検出信号の CW 側エッジ検出で機械原点を検出します。
ORG 検出信号には、１つのパルス、または −(CCW)側レベル保持のセンサ信号を入力します。
最高速度でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT
開始位置
終了位置

検出信号

(MP)
SDLY

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY● 開始位置がCCW側のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がCW側のとき① SCAN工程を行います
CWLM信号の検出で停止しますLDLY ② LIMIT DELAY TIMEを挿入します③ SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します

(MP)
SDLY
(MP)
SDLY
(LE)

④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がCW LIMIT内のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します

(MP)
SDLY
(MP)
SDLY
(LE)

② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します- 166 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(4) ORG-2 ドライブ型式
ORIGIN ドライブの起動方向を、−( CCW)方向として説明します。
ORG-2 型式は、 ORG-0 型式に 1PULSE 送り工程を付加して精度を高めた型式です。
−(CCW)LIMIT＋(CW)LIMIT
開始位置
終了位置

検出信号

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY
PDLY: PULSE DELAY● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します

(MP)
SDLY
(MP)
SDLY
(MP)

(LE)

SDLY
(LE)

PDLY

② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ 1PULSE送り工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がCCW側のとき① SCAN工程を行います
CCWLM信号の検出で停止します② LIMIT DELAY TIMEを挿入します

LDLY
(MP)
SDLY
(MP)
SDLY
(LE)

PDLY

(MP)
SDLY
(MP)
SDLY
(LE)

PDLY

③ SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ 1PULSE送り工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がセンサ内／CCW LIMIT内のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ 1PULSE送り工程を行います
検出信号のCW側エッジ検出で停止します- 167 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(5) ORG-3 ドライブ型式
ORIGIN ドライブの起動方向を、−( CCW)方向として説明します。
ORG-3 型式は、 ORG-1 型式に JOG 工程を付加して精度を高めた型式です。
−(CCW)LIMIT＋(CW)LIMIT

検出信号

開始位置
終了位置

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY
PDLY: PULSE DELAY● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCCW側エッジ検出で停止します

(MP)
SDLY

② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します
SDLY
(MP)

(LE)

SDLY
(LE)

PDLY

④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ 1PULSE送り工程を行います
検出信号のCCW側エッジ検出で停止します● 開始位置がCCW側のとき① SCAN工程を行います
CCWLM信号の検出で停止します② LIMIT DELAY TIMEを挿入します

LDLY
(MP)
SDLY
(MP)
SDLY
(LE)

PDLY

(MP)
SDLY
(MP)
SDLY
(LE)

PDLY

③ SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ 1PULSE送り工程を行います
検出信号のCCW側エッジ検出で停止します● 開始位置がCCW LIMIT内のとき① SCAN工程を行います
検出信号のCCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ 1PULSE送り工程を行います
検出信号のCCW側エッジ検出で停止します- 168 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(6) ORG-4,ORG-5 ドライブ型式
ORG-4, ORG-5 型式は、 NORG 検出信号と ORG 検出信号で機械原点を検出します。
ORG-4, ORG-5 型式は、最初に NEAR ORIGIN 工程を実行します。次に ORIGIN 工程を実行します。
■ ORG-4 、 ORG-5 型式の NEAR ORIGIN 工程
ORIGIN ドライブの起動方向を、−( CCW)方向として説明します。
起動方向が CW 方向の場合は、対称の動作で、対称方向のエッジを検出します。
NORG 検出信号には、１つのパルス、または −(CCW)側レベル保持のセンサ信号を入力します。
最高速度でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT
開始位置
終了位置

NORG

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します

SDLY● 開始位置がCCW側のとき① SCAN工程を行います
CCWLM信号の検出で停止します② LIMIT DELAY TIMEを挿入します

LDLY③ SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します
SDLY④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がセンサ内／CCW LIMIT内のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します

SDLY② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します- 169 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ ORG-4 型式の ORIGIN 工程
ORIGIN ドライブの起動方向を、−( CCW)方向として説明します。
起動方向が CW 方向の場合は、対称の動作で対称方向のエッジを検出します。
ORG 検出信号には、回転軸のスリットなど周期的に信号を発生するセンサ信号を入力します。
CONSTANT SCAN 工程の速度（ CSPD ）でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT
開始位置
終了位置

NORG
ORG

ORG

● NORG検出時にORGがハイレベルのとき① SCAN DELAY TIMEを挿入します② CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します

SDLY
(MP)
SDLY
(LE)

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY
PDLY: PULSE DELAY③ SCAN DELAY TIMEを挿入します④ 1PULSE送り工程を行います
検出信号のCW側エッジ検出で停止します

PDLY

NORG
ORG
SDLY
(MP)
SDLY
(MP)

(LE)

SDLY
(LE)

PDLY

● NORG検出時にORGがローレベルのとき① SCAN DELAY TIMEを挿入します② CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します③ SCAN DELAY TIMEを挿入します④ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します⑤ SCAN DELAY TIMEを挿入します⑥ 1PULSE送り工程を行います
検出信号のCW側エッジ検出で停止します＊ 原点センサに検出幅が狭い Z 相を用いる場合、レベルエラーになる場合があります。
このようなときは、 ORIGIN SPEC SET 関数の SENSOR ERROR TYPE を「レベルエラーを無視して次工程に進む」の設定にしてください。

- 170 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ ORG-5 型式の ORIGIN 工程
ORIGIN ドライブの起動方向を、−( CCW)方向として説明します。
起動方向が CW 方向の場合は、対称の動作で、対称方向のエッジを検出します。
ORG 検出信号には、回転軸のスリットなど周期的に信号を発生するセンサ信号を入力します。
CONSTANT SCAN 工程の速度（ CSPD ）でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT
開始位置
終了位置

NORG
ORG

ORG
SDLY
(MP)
SDLY
(MP)

(LE)

SDLY
(LE)

PDLY

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY
LDLY: LIMIT DELAY
PDLY: PULSE DELAY● NORG検出時にORGがハイレベルのとき① SCAN DELAY TIMEを挿入します② CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します③ SCAN DELAY TIMEを挿入します④ CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します⑤ SCAN DELAY TIMEを挿入します⑥ 1PULSE送り工程を行います
検出信号のCCW側エッジ検出で停止します

NORG
ORG
SDLY
(MP)
SDLY
(LE)

PDLY

● NORG検出時にORGがローレベルのとき① SCAN DELAY TIMEを挿入します② CONSTANT SCAN工程を行います
検出信号のCCW側エッジ検出で停止します③ SCAN DELAY TIMEを挿入します④ 1PULSE送り工程を行います
検出信号のCCW側エッジ検出で停止します＊ 原点センサに検出幅が狭い Z 相を用いる場合、レベルエラーになる場合があります。
このようなときは、 ORIGIN SPEC SET 関数の SENSOR ERROR TYPE を「レベルエラーを無視して次工程に進む」の設定にしてください。

- 171 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(7) ORG-10 ドライブ型式
ORIGIN ドライブの起動方向を、−( CCW)方向として説明します。
起動方向が ＋(CW)方向の場合は、対称の動作で、対称方向のエッジを検出します。
ORG-10 型式は、 NORG 検出信号と ORG 検出信号で機械原点を検出します。
検出信号には、１つのパルス、または −(CCW)側レベル保持のセンサ信号を入力します。
最高速度でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
−(CCW)LIMIT＋(CW)LIMIT

NORG

開始位置
終了位置

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY

LDLY: LIMIT DELAY

ORG● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します
連続② DELAY TIMEは挿入しません③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がNORGセンサ内のとき① CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します

(MP)
SDLY

● 開始位置がORGセンサ内のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がCCW側のORGセンサ外のとき① SCAN工程を行います
CCWLM信号の検出で停止します② LIMIT DELAY TIMEを挿入します

LDLY
(MP)
SDLY

③ SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します- 172 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
メカ限界点へぶつかり、メカや加工品などを破損させるおそれがあります。

 注意

RATE,HSPD などを変更した場合、停止点が変化するのでメカ限界点までの距離を確認し直してください。
ORG-11,12 型式では ORG 検出中での LIMIT 停止は減速停止になります。

(8) ORG-11 ドライブ型式
起動方向が CCW 方向の場合は、 CCWLM 信号の CW 側エッジ検出で機械原点を検出します。
起動方向が CW 方向の場合は、 CWLM 信号の CCW 側エッジ検出で機械原点を検出します。
ORIGIN ドライブの起動方向を、 -( CCW)方向として説明します。
起動方向が +(CW)方向の場合は、対称の動作で、機械原点を検出します。
CCWLM 信号には、 1 つのパルス、または −(CCW)側レベル保持のセンサ信号を入力します。
最高速度でセンサを通過したときに、 1ms 以上の幅の信号が検出されるようにします。
SCAN 工程では、 CCWLM 信号検出後の停止機能は減速停止になります。
CCWLM 信号からシステムの -( CCW)方向の限界までの距離は、減速停止するのに十分な距離にします。

−(CCW)LIMIT

開始位置
終了位置

CCWLM

● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します

SDLY

(MP)
SDLY

SDLY
(LE)

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY

(MP)

(MP)

＋(CW)LIMIT(LE)● 開始位置がCCW LIMIT内のとき① SCAN工程を行います
検出信号のCW側エッジ検出で停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します- 173 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(9) ORG-12 ドライブ型式
起動方向が CCW 方向の場合は、 CCWLM 信号の CW 側エッジ検出で機械原点を検出します。
起動方向が CW 方向の場合は、 CWLM 信号の CCW 側エッジ検出で機械原点を検出します。
ORIGIN ドライブの起動方向を、 -( CCW)方向として説明します。
ORG-12 型式は、 ORG-11 型式に JOG 工程を付加して精度を高めた型式です。

−(CCW)LIMIT

開始位置
終了位置

CCWLM

(MP)
SDLY
(LE)

SDLY
PDLY

(MP)

④ SCAN DELAY TIMEを挿入します⑤ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します⑥ SCAN DELAY TIMEを挿入します⑦ JOG工程を行います
検出信号のCW側エッジ検出で停止します● 開始位置がCCW LIMIT内のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します

(LE)

PDLY

④ SCAN DELAY TIMEを挿入します⑤ JOG工程を行います
検出信号のCW側エッジ検出で停止します

SDLY
(LE)

② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します② SCAN DELAY TIMEを挿入します③ CONSTANT SCAN工程を行います
検出信号のCW側エッジ検出で停止します

SDLY
(MP)

PDLY: PULSE DELAY● 開始位置がCW側のとき① SCAN工程を行います
検出信号のCW側エッジ検出で減速停止します

SDLY

(LE)

(MP)：MARGINパルス挿入(LE)：レベルエラーチェック
SDLY: SCAN DELAY

(MP)

(MP)

＋(CW)LIMIT- 174 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-1-5. 補間ドライブ(1) 補間ドライブ仕様
デバイスドライバでは、次の補間ドライブ関数を用意しています。
・メインチップ 2 軸相対アドレス直線補間ドライブ関数(2 軸相関直線補間ドライブ)・メインチップ 2 軸相対アドレス円弧補間ドライブ関数 ( 2 軸相関円弧補間ドライブ)・円の中心点ゲット関数
・相対アドレス変換関数●メインチップ 2 軸相対アドレス直線補間ドライブでは、相対アドレスで指定された目的地まで、
メインチップ 2 軸直線補間ドライブを行います。
●メインチップ 2 軸相対アドレス円弧補間ドライブでは、相対アドレスで指定された中心点と目的地で、メインチップ 2 軸円弧補間ドライブを行います。
・メインチップ 2 軸直線補間ドライブおよびメインチップ 2 軸円弧補間ドライブは、
X-Y 軸または Z-A 軸の 2 軸で行う補間ドライブです。
X 軸または Z 軸の加減速パラメータで補間ドライバの基本 PULSE を発生し、発生した基本 PULSE を補間演算して補間 PULSE を出力します。
●円の中心点ゲット関数では、通過点、目的地から中心点を演算します。
この関数により、通過点と目的地による円弧補間ドライブが容易に実現できます。
●相対アドレス変換関数では、絶対アドレスから相対アドレスへの変換を行います。
この関数により、絶対アドレス指定での補間ドライブが容易に実現できます。

(2) 直線補間ドライブ
相対アドレスで指定された目的地までメインチップ 2 軸直線補間ドライブを行います。
・指定直線に対する位置誤差は、± 0.5LSB です。
・座標指定出来る相対アドレス範囲は、 -2,147,483,648 〜 +2,147,483,647( 32 ビット)です。
・長軸のパルス出力が INDEX ドライブと同様の加減速ドライブとなります。
直線補間ドライブの軌跡(長軸 20:短軸 9 の例)
短軸

9

5

0

5

10

15

20 長軸

直線補間ドライブの軌跡は、現在位置と目的地を結ぶ直線に沿います。
直線補間 SCAN ドライブの場合は、停止指令を検出するまで目的地の指定方向にパルス出力を続けます。
直線補間 INDEX ドライブの場合は、長軸のパルス数が目的地のパルス数になるとドライブを終了します。
●直線補間の長軸と短軸補間パルス数が大きい方の軸が長軸、小さい方の軸が短軸になります。

■ メインチップ 2 軸相対アドレス直線補間ドライブの実行シーケンス
SPEED･RATE関数

メインチップ2軸相対アドレス
直線補間ドライブ関数の実行①ドライブ実行軸に加減速ドライブに必要なパラメータを設定します。

②ドライブ仕様を指定して、メインチップ 2 軸相対アドレス直線補間ドライブを実行します。

- 175 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(3) 円弧補間ドライブ
相対アドレスで指定された中心点と目的地で、メインチップ 2 軸円弧補間ドライブを行います。
・円弧曲線に対する位置誤差は、± 1LSB です。
・座標指定出来る相対アドレス範囲は、 -8,388,608 〜 +8,388,607( 24 ビット)です。
円弧補間ドライブの軌跡(CCW 回転の例)

CCW
現在位置

停止位置

Y
円弧補間ドライブの軌跡は、現在位置と円弧の中心点の距離を半径とした円周に沿います。
目的地が円周上に存在しない場合は、目的地と同じ象限内の短軸が一致した位置でドライブを終了します。
● 円弧補間の短軸 : 円弧補間の中心点( 0, 0 )としたときに補間座標(X, Y )の絶対値が小さい方の軸が短軸になります。

象限2

象限1

象限3

象限0

象限4

象限7

X

象限5

象限6

目的地が円周上に存在しない場合は、目的地と同じ象限内の短軸が一致した位置でドライブが終了しますが目的地を下図の斜線部分に指定した場合は、各斜線部分と円周が接した点でドライブが終了します。
XY- 176 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ メインチップ 2 軸相対アドレス円弧補間ドライブの実行シーケンス

SPEED･RATE関数

メインチップ2軸相対アドレス
円弧補間ドライブ関数の実行①ドライブ実行軸に加減速ドライブに必要なパラメータを設定します。

②ドライブ仕様を指定して、メインチップ 2 軸相対アドレス円弧補間ドライブを実行します。

- 177 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(4) 線速一定制御
補間ドライブする 2 軸の合成速度を一定にする制御です。
・補間ドライブの基本パルスを線速一定制御します。
・設定された速度が合成速度に反映されます。
2 軸同時にパルス出力したときに、次の基本パルスの出力周期を 1.414 倍にします。

■線速一定の補間パルス出力 (2 軸直線補間ドライブの例)
ON 周期の幅はそのままで、 OFF 周期の幅が長くなります。
1

1.414

1

1.414

1

長軸の補間パルス
0.5

0.5

0.914

0.5

短軸の補間パルス・直線補間ドライブでは、補間実行軸の長軸と短軸の２軸間で、線速一定制御します。
・円弧補間ドライブでは、 X 座標軸と Y 座標軸の２軸間で、線速一定制御します。
・線速一定制御は各補間関数の実行時に設定します。

直線補間ドライブの軌跡(長軸 10:短軸 10 の例)<線速一定制御なしのとき>
短軸<線速一定制御ありのとき>
短軸

10
合成速度 =√ 2 × 1000 Hz

長軸の設定速度 =1000 Hz

10
合成速度 =1000 Hz

10 長軸

10 長軸

長軸の設定速度 =1000 Hz

長軸の速度を一定速の 1000Hz とすると、
2 軸直線補間で描かれる軌跡の合成速度は√ 2 × 1000Hz でドライブします。

コマンド実行軸の速度を一定速の 1000Hz として
線速一定制御を設定すると、 2 軸直線補間で描かれる軌跡の合成速度が 1000Hz となるようにドライブします。

※線速一定で加減速ドライブを行うと、減速後の終了速度でのドライブが長くなります。
速度
設定された最高速度

最高速度

線速一定制御で加減速ドライブすると、パルス出力

補間演算による線速一定の速度
加速カーブ

減速カーブ

開始速度
FSPD

できなかったパルス分は終了速度で出力します。

終了速度
第１パルス
時間

- 178 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書【注意事項】
線速一定制御には注意事項があります。
線速一定制御有効の円弧補間ドライブが、 2 軸同時にパルス出力した位置で終了した場合に、以降に実行する線速一定制御有効の直線補間ドライブのパルス出力が、常に設定値の 1.414 倍の周期（常に線速一定制御される）になります。
・ 1 軸のみパルス出力する位置(例 : 0 ° ,90 ° ,180 ° ,270 °)で終了した場合は正常です。
・ 2 軸同時にパルス出力する位置(例 :45 ° ,135 ° ,225 ° ,315 °)で終了した場合に不具合が発生します。
線速一定制御有効の円弧補間ドライブ終了後は、以下の円弧補間ドライブ（ 0 パルス、終了位置 0 °）を実行して、正常終了にしてください。
・ CIRCULAR XPOSITION SET コマンド (H'28 ) ： H'00_0000 に設定
・ CIRCULAR YPOSITION SET コマンド (H'29 ) ： H'00_0000 に設定
・ CIRCULAR PULSE SET コマンド (H'2A) ： H'0000_0000 に設定
・ MAIN CIRCULAR CP コマンド ( H'38) ： DATA1=H'0001 で実行- 179 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-1-6. パルス出力停止機能
パルス出力停止機能は、実行中のドライブを終了させる機能です。
パルス出力停止機能には、減速停止機能、即時停止機能、 LIMIT 減速停止機能、 LIMIT 即時停止機能があります。
※ ORIGIN ドライブ中の停止機能には、以下の制限があります。
・センサ信号( SS0)による減速停止、および即時停止は無効です。
・各種カウンタのコンパレータの一致による減速停止、および即時停止は無効です。

(1) 減速停止機能
減速停止指令のアクティブを検出すると、実行中のドライブパルス出力を終了速度まで減速してから、パルス出力を停止後にドライブを終了します。減速停止機能には、以下の減速停止指令があります。
・ SLOW STOP コマンド・停止機能を減速停止に設定した各種カウンタのコンパレータ出力
・入力機能を減速停止に設定した DALM 信号・入力機能を減速停止に設定したセンサ信号(SS0)
減速停止機能は DRIVE STATUS1 PORT の STBY = 1 または DRIVE = 1 のときに有効になる停止機能です。
減速停止指令のアクティブ検出と同時に、 DRIVE STATUS1 PORT の SSEND = 1 になります。

(2) 即時停止機能
即時停止指令のアクティブを検出すると、実行中のドライブを強制終了します。
即時停止機能には、以下の即時停止指令があります。
・ FAST STOP コマンド・停止機能を即時停止に設定した各種カウンタのコンパレータ出力
・入力機能を即時停止に設定した DALM 信号・入力機能を即時停止に設定したセンサ信号(SS0)・ FSSTOP 信号
即時停止機能は DRIVE STATUS1 PORT の BUSY = 1 のときに有効になる停止機能です。
即時停止指令のアクティブ検出と同時に、 DRIVE STATUS1 PORT の FSEND = 1 になります。
データ設定コマンド実行中は、即時停止指令を検出しても強制終了しません。 FSEND フラグも変化しません。

(3) LIMIT 停止機能
LIMIT 停止機能は方向別のドライブ停止機能です。減速停止か即時停止を選択できます。
減速停止の場合、 LIMIT 停止指令のアクティブを検出すると、実行中のドライブパルス出力を終了速度まで減速してから、パルス出力を停止後にドライブを終了します。
即時停止の場合、 LIMIT 停止指令のアクティブを検出すると、実行中のドライブを強制終了します。
LIMIT 停止機能は、 SPEC INITIALIZE2 コマンドで設定します。
LIMIT 停止機能には以下の LIMIT 停止指令があります。
・+方向ドライブ中の LIMIT 停止指令
CWLM 信号各カウンタの COMP2 コンパレータ出力・‑方向ドライブ中の LIMIT 停止指令
CCWLM 信号各カウンタの COMP3 コンパレータ出力
DRIVE STATUS1 PORT の DRIVE = 1 のときに有効になる停止機能です。
また、 DRIVE STATUS2 PORT の DEND BUSY = 1 のときには、 LIMIT 停止機能の検出のみ行います。
LIMIT 停止指令検出と同時に、 DRIVE STATUS1 PORT の LSEND = 1 になります。

■停止によるエラー出力
各停止機能の停止ステータスの発生 または 停止信号のアクティブ入力検出でエラー出力することができます。
詳しくは 5-1-7.章「エラー出力機能」を参照してください。
【エラー出力できる停止ステータス】
・DRIVE STATUS1 PORT の FSEND・DRIVE STATUS1 PORT の LSEND・ DRIVE STATUS1 PORT の SSEND【 エラー出力できる停止信号】
・ FSSTOP 信号
・ DALM 信号- 180 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-1-7. エラー出力機能
以下の 15 個の ERROR STATUS の内、設定した ERROR STATUS を検出すると、 DRIVE STATUS1 PORT のERROR フラグを出力します。
ERROR フラグ =1 の間は汎用コマンドの書き込みが無効になり、インターロック状態になります。
ERROR フラグ =1 は発生した ERROR STATUS をクリアすることで ERROR フラグ =0 に戻ります。
・コマンド予約機能(応用機能)によりコマンドを予約している状態で ERROR フラグ =1 になると、予約コマンドを全てクリアしてインターロック状態になります。
・ ERROR フラグ =1 の間は COMREG FL=1, COMREG EP=1 になります。

■ ERROR STATUS
エラー内容

ERROR STATUS
COMMAND ERROR

未定義の汎用コマンドを実行した。

COMREG CLR ERROR

コマンド予約機能で格納している実行待ちの予約コマンドをクリアした。

INC INDEX ERROR

相対アドレスのオーバフローで、 INC INDEX ドライブを終了した。

ABS INDEX ERROR

アドレスカウンタのオーバフローで、 ABS INDEX ドライブを終了した。

INDEX CHANGE ERROR

反転動作が必要な INDEX CHANGE 指令を検出した。

CHANGE CLR ERROR

実行待ちの INDEX CHANGE 指令を無効にした。

CPP STOP ERROR

補間ドライブのメイン軸の CPP STOP 機能でドライブを終了した。

EXT PULSE ERROR

外部パルス出力機能を実行中に正常な外部パルス出力ができなかった。

FSEND ERROR

BUSY = 1 のときに、 DRIVE STATUS1 PORT の FSEND = 1 を検出した。

LSEND ERROR

BUSY = 1 のときに、 DRIVE STATUS1 PORT の LSEND = 1 を検出した。

SSEND ERROR

BUSY = 1 のときに、 DRIVE STATUS1 PORT の SSEND = 1 を検出した。

ADDRESS OVF ERROR

BUSY = 1 のと きに、 DRIVE STATUS4 PORT の ADDRESS OVF = 1 を検出した。

PULSE OVF ERRORDRIVE STATUS4 PORT の PULSE OVF = 1 を検出した。

DALM ERRORDALM 信号のアクティブ入力を検出した。

FSSTOP ERRORFSSTOP 信号のアクティブ入力を検出した。

・ ERROR STATUS は、 ERROR STATUS READ コマンドで読み出すことができます。
・ ERROR STATUS は、動作エラークリア関数でクリアします。

■エラー発生要因と ERROR 出力の構成
ERROR STATUS
MASK

ERROR STATUS
READ

<ラッチ>

ERROR STATUS 出力
エラー発生要因の検出
<ラッチ>
<クリア>

ERROR STATUS <トリガ>
CLR(動作エラークリア関数にて)- 181 -

<マスク>
ERROR
STATUSMASKERRORSTATUSOR 出力

ERROR フラグ 出力

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ ERROR フラグ
DRIVE STATUS1 PORT の ERROR フラグは、 ERROR STATUS の論理和(OR)出力です。
ERROR フラグに出力する ERROR STATUS は、 ERROR STATUS MASK コマンドで個別にマスクすることができます。
但し、以下の ERROR STATUS はマスクすることはできません。
・ COMMAND ERROR・ COMREG CLR ERROR
・ INC INDEX ERROR・ ABS INDEX ERROR
・ INDEX CHANGE ERROR

電源投入後の初期値は、以下の ERROR STATUS がマスクされています。
・ LSEND ERROR
・ SSEND ERROR・ ADDRESS OVF ERROR・ PULSE OVF ERROR・ DALM ERROR・ FSSTOP ERROR【注意】
停止機能を ERROR=1 の発生要因に設定している場合で、予約コマンドを格納したドライブを実行して、 ERROR=1 が発生した場合は、
STATUS1 PORT の DRVEND, LSEND, SSEND フラグが "1"にならない場合があります。
予約コマンドを格納したドライブを実行して ERROR=1 が発生した場合は、以下のフラグで停止・終了を確認してください。
・停止要因は、 ERROR STATUS の FSEND ERROR, LSEND ERROR, SSEND ERROR で確認する。
・ドライブの終了は、 STATUS1 PORT の BUSY=0 で確認する。

- 182 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-1-8. 読み出し機能
各読み出しは、下記の関数にて、コマンドの書き込みと、データの読み出しを一括で処理することができます。
・ユニット単位 … ユニット DRIVE COMMAND 書き込み /読み出し関数
・デバイス単位 … DRIVE COMMAND 32 ビット一括書き込み /読み出し関数(1) ステータス読み出し
各 STATUS 読み出し関数にて、 MCC の DRIVE STATUS PORT を読み出すことで、各軸のドライブコントロール、
入出力信号、カウンタのコンパレータ出力の現在の状態などが読み出せます。

(2) 設定データ読み出し
MCC に SET DATA READ コマンドを実行すると、設定したデータが読み出せます。

(3) 出力中のドライブ速度読み出し
MCC に MCC SPEED READ コマンドを実行すると、現在出力中のドライブパルス速度が読み出せます。

(4) エラーステータス読み出し
MCC に ERROR STATUS READ コマンドを実行すると、現在発生しているエラーの状態が読み出せます。

(5) カウントデータ読み出し
MCC に各カウンタ READ コマンドを実行すると、現在のカウントデータが読み出せます。

- 183 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書5-2. カウンタ仕様
5-2-1. エンコーダパルス入力方式
EA, EB 信号に 外部パルス信号を入力して各カウンタで カウントできます。
カウント方法はカウンタ毎に以下の 4 種類の中から選択できます。
なお、 UC-766 以外の製品は、外部パルス(エンコーダパルス)入力機能はありません。
<＋方向パルス出力><−方向パルス出力>● 1 逓倍の位相差信号入力
EA:A 相入力EB:B 相入力● 2 逓倍の位相差信号入力
EA:A 相入力EB:B 相入力● 4 逓倍の位相差信号入力
EA:A 相入力EB:B 相入力●独立方向パルス入力
EA:パルス入力EB:パルス入力・矢印は入力パルスのカウントエッジです。
・各カウンタのパルスカウント方法は各 COUNTER INITIALIZE1 コマンドで行います。
【位相差信号入力タイミング】
・アドレスカウンタの場合
2 逓倍のとき t1, t2, t3, t4 ＞ 50 ns
t1 ＋ t2 ≧ 200 ns
t3 ＋ t4 ≧ 200 ns

EA 入力
EB 入力

4 逓倍のとき t1, t2, t3, t4 ≧ 200 ns
t1

t2

t3

・その他のカウンタの場合
t1, t2, t3, t4 ＞ 50 ns

t4【独立方向パルス入力タイミング】
EA 入力

・アドレスカウンタの場合
t1, t2, t4 ＞ 50 ns
t3 ≧ 200 ns

EB 入力
t1

t2

t4

t1

t3

t2
t3

- 184 -

・その他のカウンタの場合
t1, t2, t4 ＞ 50 ns
t3 ＞ 100 ns

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-2-2. 外部パルス出力機能
アドレスカウンタのカウントパルスを「外部パルス」に設定すると、 EA, EB 信号に入力されるパルスのカウントタイミングを選択したアクティブ幅のパルスに変換して、 CWP, CCWP 信号から出力します。
なお、 UC-766 以外の製品は、外部パルス出力機能はありません。
<入力パルス>● 2 逓倍の位相差信号入力
EA:A 相入力EB:B 相入力<出力パルス>●独立方向出力
CWP:パルス出力CCWP :パルス出力
選択したアクティブ幅● 2 逓倍の位相差信号出力
CWP:A 相出力CCWP :B 相出力

・アドレスカウンタのカウントパルスの設定は ADDRESS COUNTER INITIALIZE1 コマンドで行います。
・選択したアクティブ幅の 2 倍の時間内に、次の外部パルスのカウントタイミングが入力した場合は、正常なパルス出力ができません。この場合は、エラーになります。
(ERROR STATUS の EXT PULSE ERROR = 1 にします。)
・ LIMIT 停止指令を検出すると、検出方向の外部パルス出力を停止して、 STBY 状態にします。
・減速停止指令、即時停止指令または DRIVE STATUS1 PORT の ERROR = 1 を検出すると、外部パルス出力を停止して、外部パルス出力機能を無効状態にします。
・外部パルス出力機能が有効状態でもコマンド予約機能、同期スタート機能、 DEND, DRST 信号のサーボ
対応機能が有効です。
また、 DRIVE STATUS1, 2 PORT の以下のフラグが有効です。
DRIVE STATUS1 … BUSY 、 STBY 、 DRIVE 、 ERROR 、 LSEND 、 SSEND 、
FSEND 、 PAUSE 、 COMREG EP 、 COMREG FL
DRIVE STATUS2 … DEND BUSY
・方向指定出力の場合は、カウントタイミングの入力でパルスの出力方向が確定するため、方向出力信号の変化とアクティブ幅の立ち下がりエッジ出力が同時になります。
・ 2 逓倍の位相差信号出力の場合は、 EXT PULSE TYPE で選択したアクティブ幅が、出力信号の位相差になります。

- 185 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■ 外部パルス出力中のステータスと停止機能
外部パルス出力がアクティブレベルを出力中に、外部パルス出力の停止要因を検出した場合は、 出力中のパルスのアクティブ幅を確保した後にパルス出力を停止します。
外部パルス出力中のステータスフラグは、以下のように変化します。
●外部パルス出力の開始と終了
・ EXT PULSE = 0 、 BUSY = 0 、 ERROR = 0 のときに、
COUNT PULSE SEL の「 01, 10, 11 」（他軸の発生パルス、外部パルス信号）設定を検出すると、
EXT PULSE = 1 、 BUSY = 1 、 STBY = 1 、 DRIVE = 0 になります。
・ EXT PULSE = 0 、 BUSY = 1 のときに、 COUNT PULSE SEL を「 01, 10, 11 」に設定すると、現在の BUSY = 1 状態終了後に、 EXT PULSE = 1 、 BUSY = 1 になります。
・ EXT PULSE = 1 、 STBY = 1 の状態は、出力する外部パルス信号の入力待ちの状態です。
・ 出力する外部パルス信号を検出すると、外部パルス出力を開始して、EXT PULSE = 1 、 BUSY = 1 、 STBY = 0 、 DRIVE = 1 になります。
EXT PULSE = 1 、 DRIVE = 1 の状態は、外部パルス出力中の状態です。
・ EXT PULSE = 1 のときに、 COUNT PULSE SEL の「 00 」（自軸の発生パルス）設定を検出すると、
EXT PULSE = 0 、 BUSY = 0 になります。
EXT PULSE = 0 、 BUSY = 0 の状態は、外部パルス出力を終了した状態です。
・ STBY = 1 または DRIVE = 1 のときに COUNT PULSE SEL の「 00 」を検出した場合は、
DEND 信号の<サーボ対応>も実行します。
DEND 信号の<サーボ対応>中は、 BUSY = 1 になります。
● LIMIT 停止機能による外部パルス出力の停止
・ EXT PULSE = 1 のときに、 LIMIT 停止指令を検出すると、外部パルス出力を停止して、
EXT PULSE = 1 、 BUSY = 1 、 STBY = 1 、 DRIVE = 0 になります。
EXT PULSE = 1 、 STBY = 1 の状態は、出力する外部パルス信号の入力待ちの状態です。
LIMIT 停止指令がアクティブ状態でも、 LIMIT 停止指令と反対方向の外部パルスが出力できます。
・ LSEND フラグも変化します。 DEND 信号または DRST 信号の<サーボ対応>も実行します。
DEND 信号または DRST 信号の<サーボ対応>中は、 STBY = 0 になります。
・ LIMIT 減速停止指令は、 DRIVE = 0 → 1 の直前と DRIVE = 1 、 DEND BUSY = 1 のときに検出します。
LIMIT 即時停止指令は、 DRIVE = 0 → 1 の直前と DRIVE = 1 、 DEND BUSY = 1 のときに検出します。
●その他の停止機能による外部パルス出力機能の無効
・ EXT PULSE = 1 のときに、減速停止指令、即時停止指令または ERROR = 1 を検出すると、外部パルス出力を停止して、 EXT PULSE = 1 、 BUSY = 1 、 STBY = 0 、 DRIVE = 0 になります。
EXT PULSE = 1 、 BUSY = 1 、 STBY = 0 、 DRIVE = 0 の状態は、外部パルス出力機能が無効の状態です。
・ SSEND 、 FSEND フラグも変化します。
DEND 信号または DRST 信号の<サーボ対応>も実行します。
・ 減速停止指令は、 STBY = 1 または DRIVE = 1 のときに検出します。
即時停止指令および ERROR = 1 は、 BUSY = 1 のときに検出します。
・ SSEND = 1 、 FSEND = 1 または ERROR = 1 で外部パルス出力を停止した場合は、
COUNT PULSE SEL を「 00 」に設定して、外部パルス出力を終了させてください。

- 186 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-2-3. アドレスカウンタ機能
アドレスカウンタは CWP, CCWP 信号に出力するドライブパルスをカウントして、絶対アドレスを管理する
32 ビットのカウンタです。
・ +(CW)方向のパルスでカウントアップ、 -( CCW)方向のパルスでカウントダウンします。
・カウンタの有効範囲は、 -2,147,483,647 〜 +2,147,483,647 （ H'8000_0001 〜 H'7FFF_FFFF ）です。
負数の場合は、 2 の補数表現になります。

■アドレスカウンタのパルス選択部
外部パルス
EA, EBEXT COUNTTYPE

EXT PULSE
TYPE

発生パルス

COUNT
PULSE
SEL

出力パルス

カウントパルス・アドレスカウンタのパルス選択機能は ADDRESS COUNTER INITIALIZE1 コマンドで設定します。
・アドレスカウンタのパルス選択機能で外部パルスを選択した場合、 CWP, CCWP から出力するパルスは
外部パルスのタイミングで発生します。詳細は 5-2-2.章「外部パルス出力機能」を参照してください。
・ UC-766 以外の製品は、外部パルスの選択はできません。

■アドレスカウンタとコンパレータの構成

ADDRESS
CLR
ENABLE

カウントパルス

DRIVE DATA1, 2 PORT
データリードDRIVE DATA1, 2 PORT
データライト32BIT
アドレス カウンタ

カウントデータADRINT
COMPARE REGISTER1
COMP1 ADD DATA

<ラッチ信号によるクリア>
COUNT LATCH SPEC SET
コマンドの設定

AUTO CLEARENABLE

<比較>
COMP1
＝

COMP1 の出力

AUTO ADDENABLEADRINT
COMPARE REGISTER2

<比較>
COMP2
TYPE

COMP2 の出力

ADRINT
COMPARE REGISTER3

<比較>
COMP3
TYPE

COMP3 の出力・アドレスカウンタとコンパレータの機能は ADDRESS COUNTER INITIALIZE1 コマンドで設定します。
・アドレスカウンタの現在値は ADDRESS COUNTER PRESET コマンドで設定します。
・アドレスカウンタの現在値は ADDRESS COUNTER READ コマンドで読み出せます。

- 187 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-2-4. パルスカウンタ機能
パルスカウンタは、外部パルス(エンコーダパルス)をカウントして、実位置を管理する 32 ビットのカウンタです。
ドライブ出力パルスのカウントもできます。
・ +(CW)方向のパルスでカウントアップ、 -( CCW)方向のパルスでカウントダウンします。
・カウンタの有効範囲は、 -2,147,483,647 〜 +2,147,483,647 （ H'8000_0001 〜 H'7FFF_FFFF ）です。
負数の場合は、 2 の補数表現になります。

■パルスカウンタのパルス選択部
外部パルス
EA, EBEXT COUNT
TYPE

COUNT
PULSE
SEL

出力パルス

カウントパルス・パルスカウンタのパルス選択機能は PULSE COUNTER INITIALIZE1 コマンドで設定します。
・ UC-766 以外の製品は、外部パルスの選択はできません。

■パルスカウンタとコンパレータの構成
PULSE
CLR
ENABLE

カウントパルス

DRIVE DATA1, 2 PORT
データリードDRIVE DATA1, 2 PORT
データライト32BIT
パルス カウンタ<ラッチ信号によるクリア>
COUNT LATCH SPEC SET
コマンドの設定

AUTO CLEARENABLE

カウントデータ

CNTINT
COMPARE REGISTER1
COMP1 ADD DATA

<比較>
COMP1
＝

COMP1 の出力

AUTO ADDENABLE

CNTINT
COMPARE REGISTER2

<比較>
COMP2
TYPE

COMP2 の出力

CNTINT
COMPARE REGISTER3

<比較>
COMP3
TYPE

COMP3 の出力

・パルスカウンタとコンパレータの機能は PULSE COUNTER INITIALIZE1 コマンドで設定します。
・アドレスカウンタの現在値は PULSE COUNTER PRESET コマンドで設定します。
・アドレスカウンタの現在値は PULSE COUNTER READ コマンドで読み出せます。

- 188 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-2-5. パルス偏差カウンタ機能
パルス偏差カウンタは外部パルス(エンコーダパルス)とドライブ出力パルスをカウントして、パルス数の偏差を検出する
16 ビットのカウンタです。
システムクロック(20MHz)のみをカウントしてタイマとして使用することもできます。
・外部入力パルスは +(CW)方向のパルスでカウントアップ、 -(CCW)方向のパルスでカウントダウンします。
・ドライブ出力パルスは -( CCW)方向のパルスでカウントアップ、 +( CW)方向のパルスでカウントダウンします。
・カウンタの有効範囲は、 -32,767 〜 +32,767 （ H'8001 〜 H'7FFF ）です。
負数の場合は、 2 の補数表現になります。

■パルス偏差カウンタのパルス選択部
外部パルス
EA, EBEXT COUNT
TYPE
COUNT
PULSE
SEL

出力パルス

DIVISION
DIVISION
TYPE
DIVISION

カウントパルス 1

カウントパルス 2

システムクロック(20MHz)・パルス偏差カウンタのパルス選択機能は DFL COUNTER INITIALIZE1 コマンドで設定します。
・ UC-766 以外の製品は、外部パルスの選択はできません。

■パルス偏差カウンタとコンパレータの構成
カウントパルス 1

DFL
CLR
ENABLE

カウントパルス 2
16BIT

DRIVE DATA1, 2 PORT
データリードパルス偏差 カウンタ

DRIVE DATA1, 2 PORT
データライト

カウントデータ

DFLINT
COMPARE REGISTER1
COMP1 ADD DATA

<ラッチ信号によるクリア>
COUNT LATCH SPEC SET
コマンドの設定

AUTO CLEARENABLE

<比較>
COMP1
＝

COMP1 の出力

AUTO ADDENABLEDFLINT
COMPARE REGISTER2

<比較>
COMP2
TYPE

COMP2 の出力

DFLINT
COMPARE REGISTER3

<比較>
COMP3
TYPE

COMP3 の出力・パルス偏差カウンタとコンパレータの機能は DFL COUNTER INITIALIZE1 コマンドで設定します。
・パルス偏差カウンタの現在値は DFL COUNTER PRESET コマンドで設定します。
・パルス偏差カウンタの現在値は DFL COUNTER READ コマンドで読み出せます。

- 189 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
■分周機能
パルス偏差カウンタでは COUNT PULSE SEL で選択したカウントパルスのカウントタイミングを分周することができます。
カウンタは分周したカウントタイミングでカウントアップ、またはカウントダウンします。

● カウントタイミングを 4 分周する場合<カウントパルスの入力>
アップタイミング
0

1

2

3

0

1

クリア

2

ダウンタイミング
2

1

0

3

2

1

0

3

2

0

7

<分周後のカウントタイミング>
カウントアップ
1
カウントダウン
10-1

DFL COUNTER INITIALIZE3 コマンドの実行（分周数８に変更）

・パルス偏差カウンタの分周機能は DFL COUNTER INITIALIZE3 コマンドで設定します。
・ DFL COUNTER INITIALIZE3 コマンドを実行すると分周中の分周カウント値をクリアします。

- 190 -

-2

6

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
5-2-6. コンパレータ機能
各カウンタには 3 個の専用コンパレータが付いており、カウンタ値と COMPARE REGISTER1, 2, 3 の値を比較して、検出条件が一致すると停止指令またはカウンタ割り込み要求(応用機能)を出力します。
各カウンタ割り込み要求の出力状態は DRIVE STATUS4 PORT で確認できます。

■コンパレータ出力の構成
COMP1 の出力

COMP2 の出力

COMP3 の出力

COMP1
STOP
TYPE

COMP1
STOP
ENABLE

停止指令出力

INT
PULSE
TYPE
INT
TYPE

COMP1
INT
ENABLEDRIVE STATUS4 出力

COMP2
STOP
TYPE

COMP2
STOP
ENABLE

停止指令出力

INT
PULSE
TYPE
INT
TYPE

COMP2
INT
ENABLEDRIVE STATUS4
出力

COMP
GATE
TYPE

カウンタ
割り込み要求SOUT0:X 軸 CNTINT

COMP3
STOP
TYPE

COMP3
STOP
ENABLE

停止指令出力

INT
PULSE
TYPE
INT
TYPE

COMP3
INT
ENABLEDRIVE STATUS4

SOUT1:Y 軸 CNTINT

出力・コンパレータ出力機能は各カウンタ COUNTER INITIALIZE1, 2 コマンドで設定します。
・ UC-766 と UCD-7613v1/GDB5F40 の製品で、カウンタ割り込み要求(SOUT )機能をサポートしています。

■ COMP GATE TYPE の構成
COMP GATE TYPECOMP1 INT ENABLE
COMP2 INT ENABLE
COMP3 INT ENABLE

OR
選択
AND

OR
選択
AND

カウンタ割り込み要求(SOUT)

・ COMP GATE TYPE は各カウンタ COUNTER INITIALIZE1 コマンドで設定します。

- 191 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書■コンパレータ出力仕様とクリア方法( INT TYPE)
コンパレータの出力仕様を以下の内から選択できます。
COMP1, 2, 3 の一致出力の出力仕様

クリア条件
検出条件が不一致のときにDRIVE STATUS4 PORTのリード終了でクリア

一致出力をレベルラッチして出力する

一致出力をエッジラッチして出力する

DRIVE STATUS4 PORTのリード終了でクリア

一致出力をそのままスルーで出力する

検出条件の不一致でクリア

・コンパレータ出力仕様とクリア方法( INT TYPE)は各カウンタ COUNTER INITIALIZE1 コマンドで設定します。
・レベルラッチ出力の場合は、検出条件が一致している間はクリアできません。
・スルー出力の場合は、最小出力幅が選択できます。

■オートクリア機能
COMP1 の一致検出と同時に各カウンタの値を "0" にクリアします。
・オートクリア機能は各カウンタ COUNTER INITIALIZE1 コマンドで設定します。

■自動加算機能COMP1 の一致検出と同時に、 COMP1 ADD データに設定されている値を COMPARE REGISTER1 に加算して、COMPARE REGISTER1 を再設定します。
COMPARE REGISTER1 <= COMPARE REGISTER1 ＋ COMP1 ADD データ
・自動加算機能は各カウンタ COUNTER INITIALIZE1 コマンドで設定します。

- 192 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書5-3. I/0 仕様
5-3-1. 汎用 I/O PORT
(1) I/O PORT 構成
USB シリーズは、以下の汎用入出力を使用することができます。
別な USB ポートを占有したり、他の USB I/O 機器を用いずにシンプルなモーションと I/O のシステムが構築できます。
・各ユニットに標準装備している汎用入出力各 2 点
・各ユニットに標準装備している拡張ポートから 1 台接続できる 16/16 点または 32/32 点の拡張入出力ユニット
・ UC-766 のドライバインターフェース用として用意している制御 I/O (汎用 I/O としても使えます。)●出力 PORT
汎用 I/O 出力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

OUT1

OUT0

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

拡張 I/O 出力 0 PORT
D15

D14

D13

OUT0F OUT0E OUT0D OUT0C OUT0B OUT0A OUT09 OUT08 OUT07 OUT06 OUT05 OUT04 OUT03 OUT02 OUT01 OUT00

拡張 I/O 出力 1 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT1F OUT1E OUT1D OUT1C OUT1B OUT1A OUT19 OUT18 OUT17 OUT16 OUT15 OUT14 OUT13 OUT12 OUT11 OUT10制御 I/O 出力 0 PORT
D15
0

D14
0

D13

D12

AACLR AS.ON

D11
0

D10
0

D9

D8

ZACLR ZS.ON

D7
0

D6
0

D5

D4

YS.ON
YACLR
/YC.S

D3

D2

0

0

D1

D0

XS.ON
XACLR
/XC.S

・ UCD-7613v1/GDB5F40 は、 X 軸 ,Y 軸の S.ON で C.S 信号が制御できます。
●入力 PORT
汎用 I/O 入力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

IN1

IN0

拡張 I/O 入力 0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

IN0F

IN0E

IN0D

IN0C

IN0B

IN0A

IN09

IN08

IN07

IN06

IN05

IN04

IN03

IN02

IN01

IN00

拡張 I/O 入力 1 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

IN1F

IN1E

IN1D

IN1C

IN1B

IN1A

IN19

IN18

IN17

IN16

IN15

IN14

IN13

IN12

IN11

IN10

制御 I/O 入力 0 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

A.SRDY

00

0

Z.SRDY00

0

Y.SRDY

00

0

X.SRDY

汎用 I/O 出力 PORT
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

OUT1

OUT0

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

拡張 I/O 出力 0 PORT の場合
D15

D14

D13

D12

OUT0F OUT0E OUT0D OUT0C OUT0B OUT0A OUT09 OUT08 OUT07 OUT06 OUT05 OUT04 OUT03 OUT02 OUT01 OUT00

拡張 I/O 出力 1 PORT の場合
D15

D14

D13

D12

D11

D10

D9

D8

D7

D6

D5

D4

D3

D2

D1

D0

OUT1F OUT1E OUT1D OUT1C OUT1B OUT1A OUT19 OUT18 OUT17 OUT16 OUT15 OUT14 OUT13 OUT12 OUT11 OUT10制御 I/O 出力 0 PORT の場合
D15
0

D14
0

D13

D12

AACLR AS.ON

D11
0

D10
0

D9

D8

ZACLR ZS.ON

D7
0

D6
0

D5

D4

YS.ON
YACLR
/YC.S

D3
0

D2
0

・ UCD-7613v1/GDB5F40 は、 X 軸 ,Y 軸の S.ON から C.S 信号の状態が読み出しできます。
・現在の出力ポートの状態を入力データとして読み出すことができます。

- 193 -

D1

D0

XS.ON
XACLR
/XC.S

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) アクセス方法
汎用 I/O 、拡張 I/O 、制御 I/O の各ポートは、以下の方法で各ポートをアクセスすることができます。
●ユニット関数 … 指定したポート(複数ポート選択可能)にアクセスします。
関数

アクセス方法

MC07_UWDriveIo

DRIVE COMMAND と汎用 I/O,拡張 I/O,制御 I/O PORT に個別データを一緒に書き込む

MC07_URStatus1Io

DRIVE STATUS1 PORT と汎用 I/O,拡張 I/O,制御 I/O PORT から個別データを一緒に読み出す

MC07_URStatus1PcntIo DRIVE STATUS1 PORT とパルスカウンタおよび汎用 I/O,拡張 I/O,制御 I/O PORT から個別データを一緒に読み出す
MC07_UPortOut

汎用 I/O,拡張 I/O,制御 I/O PORT に個別データを一緒に書き込む

MC07_UPortOrOut

汎用 I/O,拡張 I/O,制御 I/O PORT に個別 OR データを一緒に書き込む

MC07_UPortAndOut

汎用 I/O,拡張 I/O,制御 I/O PORT に個別 AND データを一緒に書き込む

MC07_UPortIn

汎用 I/O,拡張 I/O,制御 I/O PORT から個別データを一緒に読み出す● I/O 関数

… 指定したポート単位にアクセスします。

関数

アクセス方法

MC07_BPortOut

指定された汎用 I/O,拡張 I/O,制御 I/O PORT にデータを書き込む

MC07_BPortOrOut指定された汎用 I/O,拡張 I/O,制御 I/O PORT に OR データを書き込む

MC07_BPortAndOut

指定された汎用 I/O,拡張 I/O,制御 I/O PORT に AND データを書き込む

MC07_BPortIn指定された汎用 I/O,拡張 I/O,制御 I/O PORT からデータを読み出す(3) I/O 機能●入力 PORT
各ユニットに標準装備している汎用入力の IN0 信号および IN1 信号は、汎用 I/O 機能の他に、他の機能を割り付けることができます。

汎用 I/O 部
汎用 I/O 入力ポートから IN0,IN1 信号

IN0

IN0 信号を同時に確認できます。

IN1

IN1 信号

MCC
各軸の DRIVE STATUS5 PORT から

X 軸 SS0

SS0 信号を確認できます。

Y 軸 SS0

・ X 軸と Y 軸の SS0 信号は、 SPEC INITIALIZE2 コマンドにより、各軸に次の機能を設定することができます。
外部トリガ信号として使用する
減速停止信号として使用する
即時停止信号として使用する・各 COUNTER INITIALIZE1 コマンドにより、外部トリガ信号(SS0 信号)を次の機能として使うことができます。
アドレスカウンタのラッチ信号
パルスカウンタのラッチ信号
パルス偏差カウンタのラッチ信号
パルス偏差カウンタをハードタイマとしたときのカウント開始信号
各カウンタには、ラッチタイミングによるカウンタクリア機能があります。
この SS0 信号のラッチ・クリア機能を使うことで、パソコンの OS や USB 通信などの遅れに影響を受けない、
センサ入力(INx 信号)を起点とした位置決め(自動停止)の応用が可能です。
・各 SPEED CHANGE 系の SPEC SET コマンド(応用機能)により、外部トリガ信号(SS0 信号)を次の機能として使用できます。
UP/DOWN/CONST ドライブのドライブ CHANGE 変更動作点
SPEED CHANGE の変更動作点
INDEX CHANGE の変更動作点- 194 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書●出力 PORT
データ書き込みは、現在出力しているビットのアクティブレベルに影響を与えないような条件をアプリケーション側で管理しなければならない場合があります。
このような場合、 AND 書き込みまたは OR 書き込みで設定すると、アプリケーション側では現在の出力状態を気にせず、変化さたいビットだけ指定しながらデータを設定することができます。
使い分けについては、下記のアンダーラインをご覧ください。
■ 出力信号の AND 書き込み機能
現在出力ポートで出力しているデータを AND データで書き込み、出力を ON/OFF することができます。
・あるビットの出力を OFF にする場合、 AND で 0 を書き込みます。
・あるビットの出力を変化させない場合、 AND で 1 を書き込みます。
①前データ
0
1
0
1

AND データ
00
1
1②出力データ0001

備考
AND データ 0 は、前回の出力データ に関係なく、出力を OFF にします。
AND データ 1 は、前回の出力データに関係なく、①→②は変化しません。

■ 出力信号の OR 書き込み機能
現在出力ポートで出力しているデータを OR データで書き込み、出力を ON/OFF することができます。
・あるビットの出力を変化させない場合、 OR で 0 を書き込みます。
・あるビットの出力を ON にする場合、 OR で 1 を書き込みます。
①前データ
0
1
0
1

OR データ001
1②出力データ0
1
1
1

備考
OR データ 0 は、前回の出力データ に関係なく、①→②は変化しません。
OR データ 1 は、前回の出力データに関係なく、出力を ON にします。

- 195 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

６．付録
6-1. 初期仕様一覧表(1) 基本設定
項

目

初期仕様

対応関数 /コマンド■ パルス出力機能
パルス出力方式

独立方向出力

パルス出力マスク

マスクしないSPEC INITIALIZE1 コマンド

■ LIMIT 停止機能
CWLM 信号入力機能+方向の LIMIT 即時停止入力

CCWLM 信号入力機能-方向の LIMIT 即時停止入力

SPEC INITIALIZE2 コマンド■ センサ機能(応用)
センサ(SS0)機能

汎用入力、各種機能のトリガ入力

SPEC INITIALIZE2 コマンド■ サーボ対応機能
DRST 信号出力機能

汎用出力

DEND/PO 信号入力機能

汎用入力

DALM 信号入力機能

汎用入力

SPEC INITIALIZE3 コマンド■ 自動減速停止機能(応用)
DOWN PULSE マスク

マスクしないSPEC INITIALIZE3 コマンド

■エラー出力要因
COMMAND ERROR

マスクしないCOMREG CLR ERROR

マスクしないINC INDEX ERROR

マスクしない(変更できません)

ABS INDEX ERROR

マスクしない(変更できません)

INDEX CHANGE ERROR

マスクしない(変更できません)

CHANGE CLR ERROR

マスクしないCPP ST ERROR

マスクしないEXT PULSE ERROR

マスクしないFSEND ERROR

マスクしないLSEND ERROR

マスクするSSEND ERROR

マスクする

ADDRESS OVF ERROR

マスクする

PULSE OVF ERROR

マスクする

DALM ERROR

マスクするFSSTOP ERROR

マスクする

ERROR STATUS MASK コマンド■ アドレスカウンタ
カウントパルス

発生パルス

エンコーダ入力パルスカウント方法

1 逓倍

外部パルス出力のアクティブ幅

1μs

ADRINT 出力仕様

レベルラッチADDRESS COUNTER INITIALIZE1ADRINT スルー時最小出力幅

200ns

コマンド

COMP 合成出力選択

論理和(OR)COMP1 クリア機能

クリアしないCOMP1 自動加算機能

加算再設定しない

COMP1,2,3 INT ENABLE

出力しない

COMP1,2,3 STOP ENABLE

停止しない

ADDRESS COUNTER INITIALIZE2

COMP1,2,3 STOP TYPE

即時停止

コマンド

COMP2,3 検出条件

＝(一致)

カウンタ値

H'0000_0000

ADDRESS COUNTER PRESET コマンド

COMPA REGISTER 値(1,2,3)

H'8000_0000

ADRINT COMPARE REGISTER1,2,3 SET

COMP1 自動加算値

H'0000_0000

ADRINT COMP ADD DATA SET コマンド■ パルスカウンタ
カウントパルス

出力パルス

エンコーダ入力パルスカウント方法

1 逓倍

CNTINT 出力仕様

レベルラッチCNTINT スルー時最小出力幅

200ns

COMP 合成出力選択

論理和(OR)COMP1 クリア機能

クリアしないCOMP1 自動加算機能

加算再設定しない

PULSE COUNTER INITIALIZE1 コマンド- 196 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

項

目

初期仕様

COMP1,2,3 INT ENABLE

出力しない

COMP1,2,3 STOP ENABLE

停止しない

COMP1,2,3 STOP TYPE

即時停止

対応関数 /コマンド

PULSE COUNTER INITIALIZE2 コマンド

COMP2,3 検出条件

＝(一致)

カウンタ値

H'0000_0000

PULSE COUNTER PRESET コマンド

COMPA REGISTER 値(1,2,3)

H'8000_0000

CNTINT COMPARE REGISTER1,2,3 SET

COMP1 自動加算値

H'0000_0000

CNTINT COMP ADD DATA SET コマンド■ パルス偏差カウンタ
カウントパルス 1

エンコーダ入力パルス

カウントパルス 2

出力パルス

エンコーダ入力パルスカウント方法

1 逓倍

基準クロックカウント開始タイミング

カウントしない

分周するカウントパルス

カウントパルス 1

DFLINT 出力仕様

レベルラッチDFLINT スルー時最小出力幅

200ns

COMP 合成出力選択

論理和(OR)COMP1 クリア機能

クリアしないCOMP1 自動加算機能

加算再設定しない

COMP1,2,3 INT ENABLE

出力しない

COMP1,2,3 STOP ENABLE

停止しない

DFL COUNTER INITIALIZE1 コマンド

COMP1,2,3 STOP TYPE

即時停止

COMP1,2,3 比較方法

カウンタ値を絶対値に変換して比較する

COMP2 検出条件

≧ COMP2

DFL COUNTER INITIALIZE2 コマンド

COMP3 検出条件

≦ COMP3

カウントパルス分周数

0 (分周なし)DFL COUNTER INITIALIZE3 コマンド

カウンタ値

H'0000DFL COUNTER PRESET コマンド

COMPA REGISTER 値(1,2,3)

H'8000DFLINT COMPARE REGISTER1,2,3 SET

COMP1 自動加算値

H'0000DFLINT COMP ADD DATA SET コマンド(2) 基本ドライブパラメータ項目■ 第 1 パルス出力周期

初期仕様(FSPD)

5,000Hz(200 μ s)

対応関数 /コマンド
SPEED ・ RATE 関数■ 加減速パラメータ
最高速度3,000Hz

開始速度

300Hz

終了速度

300Hz

加速カーブ S 字変速領域(SUAREA)

変速領域なし減速カーブ S 字変速領域(SDAREA)

変速領域なし

加速時定数(URATE)

100ms/kHz

減速時定数(DRATE)

100ms/kHz

速度倍率(RESOL)

1 (No.3)

SPEED ・ RATE 関数■ JOG パラメータ
JOG パルス速度

300Hz

JSPD SET コマンド

JOG パルス数

1PULSEJOG PULSE SET コマンド

■ ORIGIN パラメータ
ORG START DIR-(CCW)方向 ORG 信号と± ZORG 信号の論理和(OR)PULSE SENSOR TYPE

機械原点信号のエッジを検出して工程を終了する

SENSOR ERROR TYPE

エラー終了する

ERROR PULSE ERROR ENABLE

ERROR PULSE ERROR 検出機能 無効

AUTO DRST ENABLE

DRST 信号を出力しない

SCAN MARGIN ENABLE

SCAN 工程時に MARGIN PULSE を入れない

ORG SIGNAL TYPE

ORG 信号ORIGIN SPEC SET 関数

NORG SIGNAL TYPENORG 信号MARGIN PULSE

5 パルス

LIMIT DELAY TIME

300ms

SCAN DELAY TIME

50ms

PULSE DELAY TIME

20ms

CSCAN ERROR PULSE

2,147,483,647 パルス

PULSE ERROR PULSE

2,147,483,647 パルス

OFFSET PULSE

100 パルス

ORIGIN OFFSET PULSE SET 関数

PRESET PULSE

0 パルス

ORIGIN PRESET PULSE SET 関数

ORIGIN MARGIN PULSE SET 関数
ORIGIN DELAY SET 関数

ORIGIN ERROR PULSE SET 関数- 197 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書6-2. 関数一覧

ユ ニ ッ ト 関 数

U S B 関 数

種 名称
記号
別
説明
RESULT構造体
MC07̲S̲RESULT
関数を実行した結果を格納する。
ユニット情報構造体MC07̲S̲UNIT̲INFO
USBに接続される全ユニットのタイプを格納する。
環境設定関数MC07̲Environment
USBに接続されている全ユニットを対象に環境設定を行う。
ユニット情報読み出し関数
MC07̲ReadUnitInfo
USBに接続されている全ユニットのタイプを読み出す。
ユニットオープン関数
MC07̲UOpen
指定ユニット番号でユニットオープンし､引数 phUnitの変数にユニットハンドルを格納する。
ユニットクローズ関数
MC07̲UClose
指定されたユニットをクローズする。
ユニット動作エラークリア関数
MC07̲UClrError
指定ユニットに対し、指定された軸の動作エラークリア処理を一括で行う。
拡張ユニット通信設定関数
MC07̲UWExUnitCommMode指定されたユニットと拡張ユニット間の通信設定を行う。
拡張ユニット通信制御関数
MC07̲UWExUnitCommControl
指定されたユニットと拡張ユニット間の通信を制御する。
拡張ユニット通信ステータス読み出し関数
MC07̲URExUnitCommStatus
指定されたユニットと拡張ユニット間の通信の状態を読み出す。
拡張ユニット通信設定読み出し関数
MC07̲URExUnitCommMode指定されたユニットと拡張ユニット間の通信設定を読み出す。
ユニットステータス構造体
MC07̲S̲UNIT̲STATUS
ユニットのステータスの内容を格納する。
ユニットコマンド構造体
MC07̲S̲UNIT̲COMMAND
ユニットのコマンドを格納する。
入力PORT構造体
MC07̲S̲IN̲PORT
ユニットの入力PORTから読み出された内容を格納する。
出力PORT構造体
MC07̲S̲OUT̲PORT
ユニットの出力PORTに書き込むデータ,OR書き込みデータ,AND書き込みデータを格納する。
ユニットDRIVE COMMAND書き込み/読み出し関数
MC07̲UWRDrive
指定されたユニットに対し､各軸のDATA,COMMANDを書き込み､読み出しする順の処理を一括で行う。
ユニットDRIVE COMMAND･I/O書き込み関数
MC07̲UWDriveIo指定されたユニットに対し､各軸のDATA,COMMAND,各I/O PORTデータの書き込みを一括で行う。
ユニットSTATUS1･パルスカウンタ･I/O読み出し関数
MC07̲URStatus1PcntIo指定されたユニットに対し､各軸のSTATUS1 PORT､パルスカウンタ値､I/O PORTの読み出しを一括で行う。
ユニットSTATUS1･I/O読み出し関数
MC07̲URStatus1Io指定されたユニットに対し、各軸のSTATUS1 PORT､I/O PORTの読み出しを一括で行う。
ユニットI/O PORT書き込み関数
MC07̲UPortOUT
指定されたユニットに対し、各I/O PORT毎の個別データを書き込む。
ユニットI/O PORT OR書き込み関数
MC07̲UPortOrOUT指定されたユニットに対し、各I/O PORT毎の個別データをOR書き込む。
ユニットI/O PORT AND書き込み関数
MC07̲UPortAndOUT
指定されたユニットに対し、各I/O PORT毎の個別データをAND書き込む。
ユニットI/O PORT読み出し関数
MC07̲UPortIn指定されたユニットに対し、各I/O PORTの内容を一括で読み出す。

- 198 -

○ ○ ○ ○ ○

22

○ ○ ○

24

○ ○ ○

25

○ ○ ○

26

○ ○ ○

27

○ ○ ○

28

○ ○ ○

29

○ ○ ○ ○ ○30

○ ○ ○ ○ ○31

○ ○ ○ ○ ○32

○ ○ ○ ○ ○

33

○ ○ ○

34

○ ○ ○

35

○ ○ ○ ○ ○36

○ ○ ○ ○ ○

37

○ ○ ○

38

○ ○ ○ ○ ○39

○ ○ ○ ○ ○40

○ ○ ○ ○ ○41

○ ○ ○ ○ ○42

○ ○ ○ ○ ○43

○ ○ ○ ○ ○44

○ ○ ○ ○ ○45

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

デ バ イ ス 関 数

I / O

P O R T 関 数

種 名称
記号
別
説明
I/O PORTオープン関数
MC07̲BPortOpen
拡張･汎用･制御I/O PORTをオープンし､引数 phPort の変数にPORTハンドルを格納する。
I/O PORTクローズ関数
MC07̲BPortClose
指定された拡張･汎用･制御I/O PORTをクローズする。
I/O PORT書き込み関数
MC07̲BPortOut
指定された拡張･汎用･制御I/O PORTにデータを書き込む。
I/O PORT OR書き込み関数
MC07̲BPortOrOut指定された拡張･汎用･制御I/O PORTにORデータを書き込む。
I/O PORT AND書き込み関数
MC07̲BPortAndOut
指定された拡張･汎用･制御I/O PORTにANDデータを書き込む。
I/O PORT 読み出し関数
MC07̲BPortIn指定された拡張･汎用･制御I/O PORTのデータを読み出す。
デバイスオープン関数
MC07̲BOpen
指定ユニット番号､軸でデバイスオープンし､引数 phDevの変数にデバイスハンドルを格納する。
デバイスクローズ関数
MC07̲BClose
指定されたデバイスをクローズする。
動作エラークリア関数
MC07̲ClrError
指定されたデバイスの動作エラーをクリアする。
コマンドデータ構造体
MC07̲S̲COMMAND̲DATA
DRIVE COMMAND PORT､DRIVE DATA1 PORT｡DRIVE DATA2 PORTに書き込むデータを格納する。
DRIVE COMMAND 32ビット一括書き込み関数
MC07̲LWDrive
指定デバイスのDRIVE DATA1 PORT､DRIVE DATA2 PORTにデータを書き込んだ後コマンドを書きむ。
DRIVE COMMAND PORT書き込み関数
MC07̲BWDriveCommand
指定デバイスのDRIVE COMMAND PORTにコマンドコードを書き込む。
DRIVE DATA 32ビット書き込み関数
MC07̲LWDATA
指定デバイスのDRIVE DATA1 PORT､DRIVE DATA2 PORTにデータを書き込む。
DRIVE DATA1 PORT書き込み関数
MC07̲BWDriveData1
指定デバイスのDRIVE DATA1 PORTにデータを書き込む。
DRIVE DATA2 PORT書き込み関数
MC07̲BWDriveData2
指定デバイスのDRIVE DATA2 PORTにデータを書き込む。
ステータスデータ構造体
MC07̲S̲STATUS̲DATA
DRIVE STATUS1 PORT、DRIVE DATA1 PORT、DRIVE DATA2 PORTから読み出した内容を格納する。
DRIVE STATUSバッファー読み出し関数
MC07̲BRStatusBuf
指定デバイスのDRIVE STATUS1,STATUS2,STATUS3,STATUS4,STATUS5 PORT,ORIGIN STATUSを読み出す。
DRIVE STATUS1 PORT読み出し関数
MC07̲BRStatus1
指定デバイスのDRIVE STATUS1 PORTを読み出す。
DRIVE STATUS2 PORT読み出し関数
MC07̲BRStatus2
指定デバイスのDRIVE STATUS2 PORTを読み出す。
DRIVE STATUS3 PORT読み出し関数
MC07̲BRStatus3
指定デバイスのDRIVE STATUS3 PORTを読み出す。
DRIVE STATUS4 PORT読み出し関数
MC07̲BRStatus4
指定デバイスのDRIVE STATUS4 PORTを読み出す。
DRIVE STATUS5 PORT読み出し関数
MC07̲BRStatus5
指定デバイスのDRIVE STATUS5 PORTを読み出す。
DRIVE COMMAND 32ビット一括書き込み/読み出し関数 MC07̲LWRDrive
指定デバイスのDRIVE DATA,COMMAND PORTにデータ､コマンドを書き込み､DRIVE DATA PORTを読み出す。
DRIVE DATA 32ビット一括読み出し関数
MC07̲LRDrive
指定デバイスのDRIVE DATA1 PORT、DRIVE DATA2 PORTを一括で読み出す。
DRIVE DATA1 PORT読み出し関数
MC07̲BRDriveData1
指定デバイスのDRIVE DATA1 PORTを読み出す。
DRIVE DATA2 PORT読み出し関数
MC07̲BRDriveData2
指定デバイスのDRIVE DATA2 PORTを読み出す。

- 199 -

○ ○ ○ ○ ○46

○ ○ ○ ○ ○47

○ ○ ○ ○ ○48

○ ○ ○ ○ ○49

○ ○ ○ ○ ○50

○ ○ ○ ○ ○

51

○ ○ ○

53

○ ○ ○

54

○ ○ ○

55

○ ○ ○

58

○ ○ ○

59

○ ○ ○

60

○ ○ ○

61

○ ○ ○

62

○ ○ ○

63

○ ○ ○

64

○ ○ ○

65

○ ○ ○

66

○ ○ ○

69

○ ○ ○

71

○ ○ ○

72

○ ○ ○

74

○ ○ ○

76

○ ○ ○

77

○ ○ ○

78

○ ○ ○

79

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

デ バ イ ス 関 数

種 名称
記号
別
説明
READY WAIT関数
MC07̲BWaitDriveCommand
指定デバイスがREADY(STATUS1 BUSY BIT=0)まで待機し、最大待ち時間を超えるとエラー終了する｡
WAIT状態読み出し関数
MC07̲BIsWait
指定デバイスのWAIT状態を返す。
WAIT中止関数
MC07̲BBreakWait
指定デバイスのREADY WAIT関数またはCOMREG NOT FULL WAIT関数の実行を中止する。
SPEED・RATE構造体
MC07̲S̲SPEED̲RATESPEED・RATEセット関数で使用する。
SPEED・RATEセット関数
MC07̲SetSpeedRate
指定のRESOL No.とSPEED･RATE構造体を元にSPEEDパラメータ設定､加減速時定数(RATE)設定を実行する。
SPEED・RATE読み出し関数
MC07̲ReadSpeedRate
指定デバイスからSPEEDパラメータ､加減速時定数設定を読み出し､SPEED･RATE構造体に格納する。
ORIGINドライブパラメータ構造体
MC07̲TAG̲S̲ORG̲PARAM
ORIGINドライブ パラメータ読み出し関数で読み出した内容を格納する。
ORIGINドライブステータス読み出し関数
MC07̲ReadOrgStatus
ORIGIN STATUSの内容を読み出す。
ORIGIN SPEC SET関数
MC07̲SetOrgSpec
ORIGINドライブの動作仕様を設定する。
ORIGIN MARGIN PULSE SET関数
MC07̲SetOrgMarginPulse
ORIGINドライブの機械原点信号検出後のMARGINパルス数を設定する。
ORIGIN DELAY SET関数
MC07̲SetOrgDelay
ORIGINドライブの各工程後で挿入するDELAYを設定する。
ORIGIN ERROR PULSE SET関数
MC07̲SetOrgErrorPulse
CONSTANT SCAN工程時および1PULSE送り工程時にエラー判定する各最大パルス数を設定する。
ORIGIN OFFSET PULSE SET関数
MC07̲SetOrgOffsetPulse
機械原点近傍アドレスのOFFSETパルス数を設定する。
ORIGIN PRESET PULSE SET関数
MC07̲SetOrgPresetPulse
機械原点検出終了後に実行するORIGINドライブのPRESETパルスを設定する。
ORIGINドライブパラメータ読み出し関数
MC07̲ReadOrgParam
設定されたORIGINドライブパラメータを読み出し､ORIGINドライブパラメータ構造体に格納する。
ORIGIN FLAG RESET関数
MC07̲ResetOrgFlag
ORIGIN FLAGをRESETする。
ORIGINドライブ関数
MC07̲Org指定された機械原点の型式に従いORIGINドライブを行う。
POSITION構造体
MC07̲S̲XY̲POSITIONX･Y座標を指定するときに使用する。
メインチップ2軸相対アドレス直線補間ドライブ関数 MC07̲McIncStrCp
相対アドレスで指定された目的地までメインチップ2軸直線補間ドライブを行う。
メインチップ2軸相対アドレス円弧補間ドライブ関数 MC07̲McIncCirCp
相対アドレスで指定された目的地までメインチップ2軸円弧補間ドライブを行う。
円の中心点ゲット関数
MC07̲GetCirCenterPosition
円弧の通過点相対アドレス､目的地相対アドレスを元に中心点相対アドレス､回転方向を求める。
相対アドレス変換関数
MC07̲IncFromAbs
指定された絶対アドレスを相対アドレス(絶対アドレス ‑ 現在位置)に変換する。

- 200 -

○ ○ ○

80

○ ○ ○

81

○ ○ ○

82

○ ○ ○

83

○ ○ ○

84

○ ○ ○

85

○ ○ ○

86

○ ○ ○

87

○ ○ ○

89

○ ○ ○

91

○ ○ ○

92

○ ○ ○

93

○ ○ ○

94

○ ○ ○

95

○ ○ ○

96

○ ○ ○

97

○ ○ ○

98

○ ○ ○

99

○ ○ ○

100

○

101

○

103

○ ○ ○

104

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書6-3. ドライブコマンド一覧
USB シリーズの各製品で対応している MCC 基本ドライブコマンドの一覧を示します。
応用機能については、デバイスドライバ取扱説明書 応用機能編 をご覧ください。
●汎用コマンド

各軸 DRIVE STATUS1 PORT の ERROR=0 および BUSY=0(または COMREG FL=0)のときに DRIVE COMMAND PORT に書き込み可能なコマンドです。

●特殊コマンド

各軸 DRIVE COMMAND PORT に常時書き込み可能なコマンドです。
カウンタコマンドもドライブ特殊コマンドの中に含まれます。

(1) 汎用コマンド

汎 用 コ マ ン ド

種 コマンド名別
説明NO OPERATION
機能なし
SPEC INITIALIZE1
ドライブパルスの出力仕様の設定
SPEC INITIALIZE2CWLM,CCWLM,SS0の設定
SPEC INITIALIZE3
DRST,DEND/PO,DALMの設定
JSPD SETJOGドライブのパルス速度の設定
JOG PULSE SETJOGドライブのパルス数の設定+JOG+方向JOGドライブの実行‑JOG‑方向JOGドライブの実行+SCAN+方向SCANドライブの実行‑SCAN‑方向SCANドライブの実行
INC INDEX
相対アドレスINDEXドライブの実行
ABS INDEX
絶対アドレスINDEXドライブの実行

コマンドコード

H'00

○ ○ ○

123

H'01

○ ○ ○

105

H'02

○ ○ ○

106

H'03

○ ○ ○

107

H'0C

○ ○ ○

109

H'0D

○ ○ ○

110

H'10

○ ○ ○

111

H'11

○ ○ ○

111

H'12

○ ○ ○

112

H'13

○ ○ ○

112

H'14

○ ○ ○

113

H'15

○ ○ ○

113

- 201 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書(2) 特殊コマンド

特 殊 コ マ ン ド

種 コマンド名別
説明
ADDRESS COUNTER PRESET
アドレスカウンタの現在位置設定
ADDRESS COUNTER INITIALIZE1
アドレスカウンタの各機能の設定
ADDRESS COUNTER INITIALIZE2
アドレスカウンタの各機能の設定
ADRINT COMPARE REGISTER1 SETADRINTのコンペアレジスタ1の設定
ADRINT COMPARE REGISTER2 SETADRINTのコンペアレジスタ2の設定
ADRINT COMPARE REGISTER3 SETADRINTのコンペアレジスタ3の設定
ADRINT COMP1 ADD DATA SETADRINTのCOMP1 ADDデータの設定
PULSE COUNTER PRESET
パルスカウンタのカウント初期値の設定
PULSE COUNTER INITIALIZE1
パルスカウンタの各機能の設定
PULSE COUNTER INITIALIZE2
パルスカウンタの各機能の設定
CNTINT COMPARE REGISTER1 SET
CNTINTのコンペアレジスタ1の設定
CNTINT COMPARE REGISTER2 SET
CNTINTのコンペアレジスタ2の設定
CNTINT COMPARE REGISTER3 SET
CNTINTのコンペアレジスタ3の設定
CNTINT COMP1 ADD DATA SET
CNTINTのCOMP1 ADDデータの設定
DFL COUNTER PRESET
パルス偏差カウンタのカウント初期値の設定
DFL COUNTER INITIALIZE1
パルス偏差カウンタの各機能の設定
DFL COUNTER INITIALIZE2
パルス偏差カウンタの各機能の設定
DFL COUNTER INITIALIZE3
パルス偏差カウンタの各機能の設定
DFLINT COMPARE REGISTER1 SETDFLINTのコンペアレジスタ1の設定
DFLINT COMPARE REGISTER2 SETDFLINTのコンペアレジスタ2の設定
DFLINT COMPARE REGISTER3 SETDFLINTのコンペアレジスタ3の設定
DFLINT COMP1 ADD DATA SETDFLINTのCOMP1 ADDデータの設定
ERROR STATUS READERROR STATUSの読み出し
MCC SPEED READ
ドライブパルス速度の読み出し
MCC SET DATA READ
設定データの読み出し

コマンドコード

H'80

○ ○ ○

129

H'81

○ ○ ○

124

H'82

○ ○ ○

127

H'88

○ ○ ○

130

H'89

○ ○ ○

130

H'8A

○ ○ ○

130

H'8C

○ ○ ○

131

H'90

○ ○ ○

137

H'91

○ ○ ○

132

H'92

○ ○ ○

135

H'98

○ ○ ○

138

H'99

○ ○ ○

138

H'9A

○ ○ ○

138

H'9C

○ ○ ○

139

H'A0

○

146

H'A1

○

140

H'A2

○

143

H'A3

○

145

H'A8

○

147

H'A9

○

147

H'AA

○

147

H'AC

○

148

H'D1

○ ○ ○

118

H'D4

○ ○ ○

120

H'D5

○ ○ ○

121

- 202 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

特 殊 コ マ ン ド

種 コマンド名別
説明
ADDRESS COUNTER READ
アドレスカウンタの読み出し
PULSE COUNTER READ
パルスカウンタの読み出し
DFL COUNTER READ
パルス偏差カウンタの読み出し
ERROR STATUS MASKERRORに出力するERROR STATUSのマスク
SIGNAL OUT
汎用出力信号の操作
DRST OUTDRSTに10ms間のアクティブレベルを出力
SLOW STOP
減速停止の実行
FAST STOP
即時停止の実行

コマンドコード

H'D8

○ ○ ○

149

H'D9

○ ○ ○

149

H'DA

○

149

H'E5

○ ○ ○

117

H'FC

○ ○ ○

116

H'FD

○

116

H'FE

○ ○ ○

115

H'FF

○ ○ ○

115

- 203 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書

７．トラブルシューティング
No. 現象

チェックポイント1

デバイスドライバがインストールできない。
デバイスマネージャ上の USB シリアルポート上に
USB シリーズ製品が認識されない。

・ USB コネクタの抜けがないか確認してください。
・ USB シリーズ製品を USB ポートに挿して電源を入れていますか？
ハ ードウェアが接続されないとデバイスドライバはインストール
できません。
・ USB シリーズ製品以外に、 USB 機器を挿していますか？
その USB 1 ポート当たりのバスパワー消費電流量が 500mA を越えるような接続(例えば HUB で他機器を USB 接続)をしていませんか？

2

デバイスマネージャ上では認識されているが、プロセス ・ USB シリーズ製品以外に USB 機器を挿していますか？
が実行できない。プロセスを実行しようとするとパソコン このような現象が発生したときは、弊社システムサポートまでがフリーズする。
お問い合わせください。

3

アプリケーションから関数(コマンド)を実行しているが何も応答しない。

・アプリケーション起動時に環境設定関数を実行していますか？
ユニットを電源投入したとき、全ユニットは環境設定関数が実行されるまで他の関数には応答しません。
・ USB シリーズのユニットを、仕様の接続台数以上接続していないか確認してください。
複数台数接続しているとき、 USB の ID 番号の設定を確認し、ID 番号が重複していないか確認してください。
・ LIMIT 信号、および FSSTOP 信号の配線を確認してください。
上記信号は未使用のときでも GND に接続されていないとパルス
出力を行いません。
・ RESULT 構造体を確認してください。
各関数は、アプリケーションプログラムによって与えられた引数の内容をチェックし、エラーがある場合は、 FALSE( 0)を返し、正常である場合は、 TRUE( 1)を返します。
関数が正常に動作していないと思われるステップの後にブレークポイントを設定し、関数が返した値が TRUE(1) であることを確認してください。 TRUE でない場合は、エラー原因を特定するために
RESULT 構造体の内容を参照してください。
・ ORIGIN ドライブ中に下記のコマンドを実行していませんか？
1-5.章の制限事項を確認してください。
・ DRIVE STATUS1 内の ERROR BIT を調べてください。
ERROR BIT ＝ 1 のときは汎用コマンドを受け付けません。
ERROR 内容は ERROR STATUS READ コマンドによって確認することができます。確認されたエラー要因を取り除いてから、動作エラークリア関数を実行してください。
これにより ERROR BIT ＝ 0 にクリアすることができます。

4

アクセスは正常に行われているようだが、ドライブ
コマンドを書き込んでもドライブが行われない。
このとき DRIVE STATUS 内の DRIVE BIT,BUSY BIT
が共に 0 になっている。

・ DRIVE STATUS1 内の ERROR BIT を調べてください。
ERROR BIT が 1 の時は汎用コマンドを受け付けません。
ERROR 内容は ERROR STATUS READ コマンドによって確認することができます。確認されたエラー要因を取り除いてから、動作エラークリア関数を実行してください。
これにより ERROR BIT ＝ 0 にクリアすることができます。
・出力 PULSE が 0 の INDEX DRIVE ではありませんか？
（指定した絶対 ADDRESS が現在位置の場合など）

5

ドライブ開始したが、いつまでもドライブが終了しない。 ・ SCAN,ORIGIN ドライブの場合
これらは停止指令やセンサ検出されるまでドライブします。
・ INDEX ドライブの場合
INCREMENTAL 指定のとき…設定された PULSE 数が多い。
ABSOLUTE 指定のとき…設定された ADDRESS が遠い。と思われます。この場合はいずれ停止します6

ドライブは終了したが、いつまでも DRIVE STATUS 内
BUSY BIT ＝ 0 にならない。

・ DEND/PO 信号のサーボ対応が設定されており、 DEND/PO 信号
がサーボドライバから戻ってこない状態ではありませんか？
DEND/PO 信号が ON になると DRIVE STATUS1 内の BUSY BIT＝ 0 となります。

- 204 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
No. 現象

チェックポイント

7

機械原点検出(ORIGIN ドライブ)が正常にできない。
または、いつまでたっても終了しない。

・センサの論理(入光時 ON ､または入光時 OFF)は合っていますか？
・センサの接続(特に GND ライン)は合っていますか？
・ ORG-1,ORG-3 型式の場合、遮光板が長すぎて CCWLM エリア内にエッジを作っていませんか？
・ ORG-2,3,4,5 の場合、メカ振動が影響しますので注意が必要です。
振動がある場合は ORG-0,1 のいずれかを使用するか、 ORIGIN
DELAY を SET してディレイを長くする。または MARGIN PULSEを設定してください。
・サーボ対応を設定している場合、各工程毎に DEND 信号を確認します。このため DEND が戻らないときは途中工程で止まります。
・ ORG センサ内で ORG DRIVE を完了させるために ORG-3 またはORG-5 を選択した場合、 ORG DRIVE 完了時、センサエッジより
5PULSE 分しかセンサエリア内に入り込んでいないため、わずかなメカの振動でセンサが OFF となってしまうことがあります。
この場合、 MARGIN PULSE を多く取り、センサエリアへ確実に入るようにしてください。

8

機械原点検出(ORIGIN ドライブ)の終了状態を正しく確認することができない。

・ ORIGIN ドライブ後に DRIVE STATUS1 PORT を確認していま
せんか？
ORIGIN ドライブの終了状態は ORIGIN ステータス読み出し関数
で確認してください。
なお、 ORIGIN ドライブの終了待ちについては他のドライブと同様に RDY WAIT 関数が使えます。

9

読み出したカウンタ値が正しくない。

・読み出したい COUNTER の READ コマンドを実行していますか？
読み出す際は読み出したい COUNTER の READ コマンドを都度実行する必要があります。

10

読み出した ドライブパルス速度 が正しくない。

・ SPEED READ コマンドを実行していますか？
読み出す際は SPEED READ コマンドを都度実行する必要があります。
・読み出されるデータは実際速度の 10 倍の値です。

11

ADRINT,CNTINT,DFLINT が設定した値と異なる
カウンタ値で発生している様である。

・ DATA 未設定の各 COMPARE REGISTER が存在し、更に各
COUNTER のカウンタ値がオーバフローしていませんか？
各 COMPARE REGISTER は、電源投入時オーバフロー値と同じに初期化されるため､ DATA 未設定の COMPARE REGISTER があるとオーバフロー値でカウンタ INT 信号が発生します。
未使用の COMPARE REGISTER の COMP INT は各 COUNTERINITIALIZE COMMAND で禁止してください。

12

パルス出力周波数が設定値と異なっているようである。

・高速域の周波数を指定した場合、設定値と実際の値が異なる場合があります。

13

パルス出力の加減速時定数が設定値と違っているようである。

・ SPEED･ RATE 関数で選択した RATE No.は RESOL No. の設定範囲内ですか？
RATE No. が RESOL No.の設定範囲外のとき、指定された RESOL
No.の範囲内で最大または最小の RATE No.に補正します。

14

パルス出力の速度が設定した最高速度にならない。

・ INDEX DRIVE の場合、 INDEX 量が少ないと最高速度に達しない場合があります。

15

DALM 信号が入ると、パルスが停止してしまう。

・ MCC の DALM 機能の設定が停止機能に設定されていませんか？
汎用入力として使用するときは、 DALM 機能を汎用入力に設定
してください。

- 205 -

MPL-36-01v2.00/USBW32
MPL-37-01v2.00/USBW64

取扱説明書
本版で改訂された主な箇所
箇

所

内

なし

- 206 -

容

■ 製品保証
保証期間と保証範囲について● 納入品の保証期間は、納入後１ヶ年と致します。
● 上記保証期間中に当社の責により故障を生じた場合は、その修理を当社の責任において行います。
(日本国内のみ)
ただし、次に該当する場合は、この保証対象範囲から除外させて頂きます。
(1) お客様の不適当な取り扱い、ならびに使用による場合。
(2) 故障の原因が、当製品以外からの事由による場合。
(3) お客さまの改造、修理による場合。
(4) 製品出荷当時の科学・技術水準では予見が不可能だった事由による場合。
(5) その他、天災、災害等、当社の責にない場合。

(注1)ここでいう保証は､納入品単体の保証を意味するもので納入品の故障により誘発される損害はご容赦頂きます。
(注2)当社において修理済みの製品に関しましては、保証外とさせて頂きます。

技術相談のお問い合わせTEL.(042)664‑5382 FAX.(042)666‑5664
E‑mail s‑support@melec‑inc.com

販売に関するお問い合わせTEL.(042)664‑5384 FAX.(042)666‑2031
制御機器営業部〒193‑0834 東京都八王子市東浅川町516‑10
記載内容は、製品改良のため予告なく変更することがありますのでご了承ください。

URL:http://www.melec-inc.com
c1312