JP2008054382A - パルス発生装置 - Google Patents

パルス発生装置 Download PDF

Info

Publication number
JP2008054382A
JP2008054382A JP2006225947A JP2006225947A JP2008054382A JP 2008054382 A JP2008054382 A JP 2008054382A JP 2006225947 A JP2006225947 A JP 2006225947A JP 2006225947 A JP2006225947 A JP 2006225947A JP 2008054382 A JP2008054382 A JP 2008054382A
Authority
JP
Japan
Prior art keywords
value
frequency
counter
pulse
setting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006225947A
Other languages
English (en)
Inventor
Takashi Mishina
隆 三品
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyo Electric Manufacturing Ltd
Original Assignee
Toyo Electric Manufacturing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyo Electric Manufacturing Ltd filed Critical Toyo Electric Manufacturing Ltd
Priority to JP2006225947A priority Critical patent/JP2008054382A/ja
Publication of JP2008054382A publication Critical patent/JP2008054382A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Control Of Stepping Motors (AREA)

Abstract

【課題】ステッピングモータの速度周波数パルスを発生する場合、パルス発生周期を計算して発生させると計算誤差が大きくなり、場合によってはモータが脱調し、運転不能となる。
【解決手段】この改善策として、基準発振クロックを必要な分解能が得られるビット数の2進カウンタでカウントし、1サイクル中のカウント位置情報から論理演算し、適正なパルス発生位置を計算することによって設定されたパルス数を発生するパルス発生装置とした。
複雑な回路やソフトウェアを構成することなく最小のシステムで構成できる格別なパルス発生装置を提供することができる。
【選択図】図1

Description

本発明は一般産業用モータの速度制御用パルス発生装置に関するものである。
従来、一般産業用に使用されるモータのなかでも機械加工等に使用され、厳密な回転角度位置まで制御する必要のあるものについてはステッピングモータが使用されている。ステッピングモータの回転指令は最小分解能単位の回転指令パルスによって回転方向を指定してなされ、目的とする回転位置に到達するまで指定のパルス数を指定した時間に発生させながらモータを回転させていく。この場合の回転指令パルスはモータの回転に従った滑らかに変化する必要があり、急激な周波数の変化によっては最大トルクを超えモータが制御不能の脱調状態となる場合もある。したがって回転指令パルスの発生装置はこのモータの位置と速度とを正確に計算しながら制御するのが目的である。また回転指令パルスを設定したパターンで出力することによってモータを回転させ、制御対象である機械を設定した動作パターンで適切な動作することができれば最小量の機械動作量ですむ。このため、いかに細かく回転指令パルスを制御することによってモータ電力の消費量が減り、無駄な費用を抑制することも可能となってくる。
このため、マイクロプロセッサを利用したパルス発生回路を構成して回転指令パルスを利用してモータ制御を演算することが考えられたが、回転指令パルスの周期を変更してモータ位置制御することは可能であるが速度制御する場合、速度が周期の逆数となるため制御誤差が大きくなり、細かく制御できないという欠点があった。
さらに、信号処理プロセッサ等の精密波型処理装置(所謂シンセサイザー)による場合も考えられるが装置が大掛かりとなり高価で適さないという欠点があった。
この改善策として、所望の回転速度を2進デジタル値で設定する設定機能と、内部基本クロックを順次カウントアップするカウンタ機能と、カウントアップしたビット位置を検出するためにカウントアップした値とカウントアップする前の値の論理反転値とデジタル値で設定した設定値のビット位置逆転値との論理演算を実施する数値論理演算機能と、数値論理演算した結果の論理値(オンまたはオフ)を出力パルスとして出力する前に、オンとオフの比率を平均化するために予め設定した値で分周する周波数分周機能とをもって、モータの速度設定値に比例した一定の周波数のパルスを出力するパルス発生装置とした。
特開2004-145656公報
本発明は上述したようなステッピングモータの回転指令パルスの発生を論理化したもので速度制御する場合、速度制御に相当する出力パルスを周波数で制御するが、出力パルスの周期を制御したほうがパルス出力としては制御しやすいが、周期は周波数の逆数となるため、速度周波数の設定分解能が大きくなり、クロック周波数と比較して設定比率を大きくとり、低い速度周波数でのみ使用せざるをえなかったが、本装置を利用することによって最小量のハードウェアで構成できる装置を提供することが可能である。
最高周波数の2倍以上で発振される基準発振器からの基準クロックをカウントするために2進カウンタを設け、カウントアップしたビット位置を検出するために、基準クロックをカウントする度に前回値の論理反転値と、カウントアップされた今回値と、モータを運転する速度データを設定する設定器と、設定器によって設定された周波数値の2進値の上位ビットから下位ビットまでのビット位置を反転させる演算器とを演算する論理乗算器と、論理演算器の演算結果であるパルスデータの論理値からなる周波数をさらに分周するための周波数分周器によって分周し、目的とする周波数のパルスを発生させるパルス発生装置。
以上説明したように本発明によれば、複雑な回路やソフトウェアを構成することなく最小のシステムで構成できる格別なパルス発生装置を提供することができる。
第1図は本発明の一実施例の概要構成を示すものであり、この動作の理解を容易にするためのパルス発生メカニズムを示したものが第2図〜第4図で、本装置をソフトウェアにて構成した場合についてのフローチャートが図5および図6である。
第1図において1は基準発振クロックであり、水晶発振子を利用した所望の最高周波数の数倍以上の周波数を発振する基準クロックである。2は2進カウンタであり、基準発振クロック1から発振される信号をカウントし必要な分解能におけるカウント位置情報を取り出すための必要なビット数で構成されるものである。3は2進カウンタ2から入力されるカウンタ前回値である。4は2進カウンタ2から出力されるカウンタ今回値でありカウンタ前回値3に1加算された値となる。5はNOT論理演算器でカウンタ前回値3の値をNOT演算するためのものである。6はNOT論理演算器5から出力されるカウンタNOT値である。7は所望の出力周波数を設定するための周波数設定器である。8は前記周波数設定器7によって設定された所望の分解能におけるデジタル値を確保するための設定用レジスタである。9は前記レジスタの上位ビットから下位ビットまでのビット位置を逆転するためのビット位置逆転器である。10はビット位置逆転器9によって生成された周波数設定器7によって設定された設定器ビット逆転値である。
11は前記カウンタ今回値4、カウンタNOT値6および設定器ビット逆転値10の3つのレジスタ値のAND論理を実行するためのAND論理演算器である。
12はAND論理演算器11の演算結果とビット比較値13とを比較するための比較を実施するためのビット比較器で比較が一致した場合0となり、一致しない場合は1となる。
13はビット比較器12で比較されるビット比較値で0を設定しておくためのものである。14はビット比較器12で比較された結果が1の場合のみカウントを進めるための分周カウンタである。15は分周カウンタ14によってカウントされた値を確保するためのカウンタ今回値レジスタである。16は分周カウンタ14の最大値を設定するための分周カウンタ設定値である。17は分周カウンタ今回値15と分周カウンタ設定値16とを比較するための分周カウント比較器である。18は分周カウンタ初期値で分周カウント比較器17の比較結果が一致した場合のみ分周カウンタ今回値15をプリセットするための分周カウンタ初期値で、数値0の値をもっている。19は分周カウント比較器17の比較結果によって一致であれば論理値1を、不一致であれば論理値0を確保するための分周パルス出力値である。20は分周パルス出力値19を最終的に外部へ導入するためのパルス出力回路であり、モータ制御用として適切なインタフェース回路を含んだもので外部機器で使用することも可能である。
つぎに基準発振クロック1をカウントする2進カウンタ2の動作とカウンタ前回値3、カウンタ今回値4、カウンタNOT値6の値について、図2を用いて詳細説明する。図2は簡単のため各レジスタ値を分かりやすく5ビットの値で表したもので、上下方向は時間軸となり、紙面上部が過去の時間となり、左右方向はビット位置で、本図において21は図1におけるカウンタ前回値3の時間的変化を表に表したものである。22は図1におけるカウンタ今回値4の時間的変化を表に表したものである。
23は図1におけるカウンタNOT値6の時間的変化を表に表したものである。24は図1におけるAND論理器11の値を設定器ビット逆転値10が1、2、4、8、16の場合の時のパルス出力レベルの時間的変化を表に表したものである。本図より5ビットのカウンタが0から31まで1回転する間に設定値が1の時に1パルス分のパルスが出力され、同様に2、4、8、16の場合、設定した値に相当するパルスが出力される。
つぎに設定データが0から31の場合について、図2で設定した1、2、4、8、16の合成値となったものを図3でも設定できることを説明する。図3は図2の設定値1、2、4、8、16の各ビット要素を合成して設定される周波数設定器の設定値0から31の場合について、2進カウンタの前回値が0から31までの時間についてパルスがONとなる時点を色分けしたもので図のように設定値0においては設定値0から31までの1サイクル中におけるパルス数は0であり、設定値を1から31まで順次値を上昇させることによって、1サイクル中のパルス数も順次、上昇していくことがわかる。1例として設定値を14とした場合、図中の太線枠内のパルスとなり、1サイクル中のパルス数は14となる。従って基準クロックを一定の周波数とすれば1サイクルに掛かる時間は一定時間となり、一定時間に出力されるパルス数が設定データに比例するので、設定したデジタル値に比例した周波数の出力信号となる。
さらに設定データが0から31の場合について、図3で設定した0から31の場合について合成値となったものを図4で説明する。図4は図1のパルス出力値19の出力波形を設定値0から31の場合について横軸を時間軸としてパルス前回値を基準に表したもので、図1での分周カウンタ設定値16が2の場合について表している。分周カウンタ設定値16は図3のパルス波形のONレベルの比率を大きくするためのもので、最低でも2以上の値を設定する。いま分周カウンタ設定値16を2としたため、図3における1サイクルはパルス前回値が0から63までの2倍となり、1サイクルにおけるパルス数は変わらないが、1サイクルに要する時間が分周カウンタ設定値16にて設定した値に相当する2倍となり、周波数としては2分の1となる。各タイミングにおける信号レベルは図3における各設定値のカウンタの前回値が0から63まで時間を延伸させてパルスがONとなる時点では図4の信号レベルが反転する形となり、図のように設定値0においては設定値0から31までの1サイクル中におけるパルス数は0であり、設定値を1から31まで順次値を上昇させることによって、1サイクル中のパルス数も順次、上昇していくことがわかる。1例をあげた設定値が14とした場合、図中の太線枠内のパルスとなり、1サイクル中のパルス数は14となる。従って基準クロックを一定の周波数とすれば1サイクルに掛かる時間は一定時間となり、一定時間に出力されるパルス数が設定データに比例するので、設定したデジタル値に比例した周波数の出力信号となる。
さらに本装置をソフトウェアにて構成した場合について図5および図6を用いて説明する。図5は本装置のメインプログラムのフローチャートを記述したもので、電源が投入されるとまずハードウェアを初期化し、レジスタA,B,Cを数値0で初期化し、さらにビットデータX,Yも0に初期化し、カウンタレジスタCNTに初期値Dを設定し、引き続き周波数設定値であるレジスタSを予め0に設定する。この状態において初期化終了で出力パルスはオフとなっており、以降は周波数設定値Sが変更されるのを待っている。周波数設定値が変更されると、ビット分解能数である数値NをレジスタCTに設定し、レジスタSを右シフトし、左シフトしたレジスタBに発生したCARRYフラグによって数値1を加算し、CTレジスタを1減算し、Nビット回数分ループすることによってレジスタBはレジスタSの上位ビットから下位ビットまでビット位置を反転させることができる。
次に図6の割り込みソフトウェアについて説明する。本フローチャートは、基本発振クロックの周波数に相当する割り込みで、割り込みが発生する時間間隔は一定となる。割り込みが発生すると、まずプロセッサが必要とするレジスタを退避し、クロックカウンタであるレジスタCのNOT値をとりレジスタAに格納し、レジスタCは1加算してからレジスタCに再び格納する。一方レジスタBはメインプログラムによって予め設定された設定周波数に対してビット位置を逆転させたもので、上記3個のレジスタA,B,Cを論理積演算を実施し、その結果をXレジスタに格納する。さらにXレジスタの値をチェックし、0であればこのまま割り込み処理ルーチンを終了するが、0でない場合は分周カウンタレジスタCNTを1減算し、レジスタCNTが0の場合、レジスタCNTを分周値Dに初期化し、パルス信号レジスタYを反転する。さらにレジスタYの状態をプロセッサのポート上に出力し、レジスタを復帰後、割り込み処理を終了する。
いま2進カウンタビット値をN、基準クロック周波数をC、周波数設定用レジスタ値をS、分周カウンタ設定値をDとすれば、2進カウンタは〔(2のN乗)−1〕のパルス数で1周しており、例えば図2〜図4の5ビットで計算すると〔(2の5乗)−1〕=31となり、周波数設定用レジスタ値Sと基準クロック周波数値Cに比例し、分周カウンタによる分周値Dにより分周されるので最終的に得られる周波数をF(Hz)とすると
Figure 2008054382
となり、最終的に得られる周波数Fは設定値0から〔(2のN乗)−1〕の範囲で周波数設定用レジスタ値Sに比例し、適切な比例定数を使用しモータ制御に適用することができる。
以上説明したように本発明によれば、無駄な回路やソフトウェアを構成することなく最小のシステムで構成できる格別なパルス発生装置を提供することができる。
本装置の技術を応用すれば、ステッピングモータの回転指令パルスの発生する装置や、モータ速度制御用の速度設定周波数の分解能が大きくとることが可能で、最小量のハードウェアで構成することが可能である。
本発明における一実施例を示す全体ブロック図 本発明における一実施例を示す論理値データ図 本発明における一実施例を示すタイミングチャート図 本発明における一実施例を示す出力タイミングチャート図 本発明における一実施例を示すメインフローチャート図 本発明における一実施例を示す割り込みフローチャート図
符号の説明
1 基準発振クロック
2 2進カウンタ
3 カウンタ前回値
4 カウンタ今回値
5 NOT論理演算器
6 カウンタNOT値
7 周波数設定器
8 設定用レジスタ
9 ビット位置逆転器
10 設定器ビット逆転値
11 AND論理演算器
12 ビット比較器
13 ビット比較値
14 分周カウンタ
15 分周カウンタ今回値
16 分周カウンタ設定値
17 分周カウント比較器
18 分周カウンタ初期値
19 分周パルス出力値
20 パルス出力回路
21 カウンタ前回値3の時間的変化
22 カウンタ今回値4の時間的変化
23 カウンタNOT値6の時間的変化
24 論理積値
31 A:2進カウンタNOT値、B:周波数設定器逆転値、C:2進カウンタ今回値
32 X:AND論理演算結果、 Y:パルス出力値
33 D:分周カウンタ設定値、 CNT:分周カウンタ値
34 S:周波数設定用レジスタ
35 N:2進カウンタビット値、 CT:ビットカウンタ

Claims (1)

  1. ステッピングモータの回転指令パルスを制御する装置において、所望の回転速度を2進デジタル値で設定する設定機能と、内部基本クロックを順次カウントアップするカウンタ機能と、カウントアップした値とデジタル値で設定した設定値との論理演算を実施する論理演算機能と、論理演算した結果の論理値(オンまたはオフ)を出力パルスとして出力する前に、オンとオフの比率を平均化するために予め設定した値で分周する周波数割り算機能とを有し、モータの速度設定値に比例した一定の周波数のパルスを出力することを特徴とするパルス発生装置。





JP2006225947A 2006-08-23 2006-08-23 パルス発生装置 Pending JP2008054382A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006225947A JP2008054382A (ja) 2006-08-23 2006-08-23 パルス発生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006225947A JP2008054382A (ja) 2006-08-23 2006-08-23 パルス発生装置

Publications (1)

Publication Number Publication Date
JP2008054382A true JP2008054382A (ja) 2008-03-06

Family

ID=39237901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006225947A Pending JP2008054382A (ja) 2006-08-23 2006-08-23 パルス発生装置

Country Status (1)

Country Link
JP (1) JP2008054382A (ja)

Similar Documents

Publication Publication Date Title
JPH04336308A (ja) マイクロコンピュータ
JP4027874B2 (ja) クロック変更回路
JP2008028854A (ja) クロック生成装置
JP3294687B2 (ja) クロック分周器およびモータ駆動制御装置
KR101561372B1 (ko) Pwm 신호 생성 회로, 프린터, 및 pwm 신호 생성 방법
JP2007151356A (ja) モータ制御回路及びモータ制御方法
JPH05183428A (ja) プログラマブル分周器及びその制御方法
JP2008054382A (ja) パルス発生装置
JP4071776B2 (ja) パルス発生方法及びパルス発生装置、並びにこれを利用するモータ制御システム
JP2010172056A (ja) 速度パターン発生装置
JP2005339245A (ja) 割り込み発生回路
KR100304393B1 (ko) 모터제어장치
JPH11178380A (ja) モータ速度制御装置
JP5431115B2 (ja) モータ駆動装置
JP3045644B2 (ja) キャリア移動制御装置とパルス周波数変換器
JP2010074637A (ja) アップダウンカウンタ装置
JP2011221850A (ja) 電子カムコントローラ
JPS6133721Y2 (ja)
KR950002405B1 (ko) 서보모터의 위치제어 방법 및 장치
JP2692405B2 (ja) パルス波形生成装置
KR20010083860A (ko) 마이크로 스텝핑모터의 구동장치
KR970008366B1 (ko) 스테핑모터 제어회로
JP2010011713A (ja) パルス出力回路
JPH0575407A (ja) パルス幅及び周期可変回路
JPH11341888A (ja) モータ制御装置