MPG-301はパルス発生中にパルス数を知ることができるので、
目的の位置で出力をON/OFFするというような操作が可能です。
(MPG-303はできません)
"このプログラムはMPG-301 #1で動作します。
SETIO
ST_REG &H0,250 "周波数倍率 1倍
ST_REG &H1,100000 "出力パルス数
ST_REG &H2,0 "減速開始点
ST_REG &H3,100 "起動周波数
ST_REG &H4,10000 "最高周波数 R0により範囲が変わる
ST_REG &H5,100 "加速レート
ST_REG &H6,100 "減速レート
ST_REG &H7,0 "S字加減速無し
ST_REG &H52,1 "カウンタA=内部発振パルスカウント
CMND &H50 "カウンタAクリア
CMND &HA0 "動作完了フラグリセット
'
CMND 0 "インデックス駆動[+方向]
WAIT REG(&H21)>=20000 "カウンタA読み込み。20000パルス待ち
ON 0
WAIT REG(&H21)>=40000 "カウンタA読み込み。40000パルス待ち
ON 1
WAIT REG(&H21)>=60000 "カウンタA読み込み。60000パルス待ち
ON 2
WAIT REG(&H21)>=80000 "カウンタA読み込み。80000パルス待ち
ON 3
WAIT REG(-1)=&H20 "停止待ち
END
※パルスレート、プログラム(動作タスク数 等)により遅延が発生します。
(上記では6パルス程度)
↓ MPG-301製品別マニュアル
http://www.accelmpc.co.jp/japanese/product/sbmanual/mpg-301.pdf
|