(57)【要約】【課題】CPU１１の処理負荷を低減させる。【解決手段】制御装置からの指令に基づいて、可変速にパルス信号を発生するクロック信号発生装置５１において、アップダウンカウンタ７１は、所定の速度でカウンタのカウント値をカウントアップ、またはカウントダウンさせ、リミットカウント生成部７２は、指令に基づいて、カウンタのリミットカウント値を生成し、比較部７３は、リミットカウント値と、カウンタのカウント値とを比較し、カウント値がカウントアップする場合、カウンタのカウント値がリミットカウント値よりも大きいとき、または、カウント値がカウントダウンする場合、カウンタのカウント値がリミットカウント値よりも大きいとき、パルス信号を発生し、清算部７４は、パルス信号が発生されるタイミングで、カウンタのカウント値をクリア、またはプリセットする。本発明は、遊技機の可動役物の駆動制御に適用することができる。【選択図】図２
2014073369.tif 000002
【特許請求の範囲】
【請求項１】
制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置において、
予め設定された複数の原発振パルス波を分周により発生する分周手段と、
前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウント手段と、
前記指令に基づいて、前記カウント手段のリミットカウント値を生成するリミットカウント値生成手段と、
前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生手段と、
前記パルス信号により動作し、前記カウント手段の前記カウント値を、クリアまたはプリセットする清算手段と
を含み、
前記カウント手段は、
カウンタと、
前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定手段と、
前記曲率設定手段の設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替手段とを含み、
前記カウント値は、前記曲率設定手段の設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる
パルス発生装置。
【請求項２】
前記リミットカウント値生成手段は、
リミットカウント値生成カウンタと、
前記指令に基づいて、前記複数の原発振パルス波のうちの１つを選択するリミットカウント周波数選択手段とを含み、
前記リミットカウント値生成カウンタは、前記リミットカウント周波数選択手段により選択された、前記複数の原発振パルス波のうちの１つにより、カウントアップ、またはカウントダウンし、これに追従して、前記パルス信号の周波数が変化する
請求項１に記載のパルス発生装置。
【請求項３】
前記カウント手段は、前記カウント値のカウントアップ、またはカウントダウンする度合が、時間の経過に追従して、複数の１次関数が連結される擬似曲線状で、かつ、反比例関数に類似する疑似曲線状に変化する
請求項１または２に記載のパルス発生装置。
【請求項４】
請求項１乃至３のいずれかに記載のパルス発生装置と、
前記制御装置からの前記指令を受信する受信手段と、
前記指令に基づいて、駆動指令内容を解釈する動作制御手段と、
前記パルス信号に基づいて、モータ、ソレノイド、LED、または音声発生装置を含む動作装置を駆動させる出力制御手段と
を含む駆動装置。
【請求項５】
前記動作制御手段は、
前記指令に基づき、動作状況を指定する動作状況指定手段と、
前記受信手段により、次の指令が受信されるまで、前記動作状況指定手段により指定された動作状況を保持する動作状況保持手段をさらに含む
請求項４に記載の駆動装置。
【請求項６】
前記出力制御手段にて駆動する前記動作装置毎の適合出力形態を、前記動作制御手段、または前記出力制御手段に設定する出力設定手段をさらに含む
請求項４または５に記載の駆動装置。
【請求項７】
請求項１乃至３に記載のパルス発生装置、並びに請求項４乃至６に記載の駆動装置の少なくとも１つを含む遊技機。
【請求項８】
制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置のパルス発生方法において、
予め設定された複数の原発振パルス波を分周により発生する分周ステップと、
前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウントステップと、
前記指令に基づいて、前記カウントステップ処理のリミットカウント値を生成するリミットカウント値生成ステップと、
前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生ステップと、
前記パルス信号により動作し、前記カウントステップの処理での前記カウント値をクリア、またはプリセットする清算ステップと
を含み、
前記カウントステップの処理は、
前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定ステップと、
前記曲率設定ステップの処理での設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替ステップとを含み、
前記カウント値は、前記曲率設定ステップの処理での設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる
パルス発生方法。
【請求項９】
制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置を制御するコンピュータに、
予め設定された複数の原発振パルス波を分周により発生する分周ステップと、
前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウントステップと、
前記指令に基づいて、前記カウントステップ処理のリミットカウント値を生成するリミットカウント値生成ステップと、
前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生ステップと、
前記パルス信号により動作し、前記カウントステップの処理での前記カウント値をクリア、またはプリセットする清算ステップと
を含む処理を実行させ、
前記カウントステップの処理は、
前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定ステップと、
前記曲率設定ステップの処理での設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替ステップとを含み、
前記カウント値は、前記曲率設定ステップの処理での設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パルス発生装置および方法、並びにプログラムに関し、特に、配線数を削減し、上位の制御装置による処理の負担を軽減できるようにしたパルス発生装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
パチンコ遊技機、回胴式遊技機に代表される遊技機には、遊技者の娯楽満足度向上を目的として、遊技者への視覚、聴覚、または感覚に訴える演出機能が搭載されている。演出機能は、例えば、待機状態、通常遊技状態、リーチ状態、大当り状態毎に、相応しい動作をさせるものであり、昨今においては、演出機能そのものさえも、遊技機の性能であると言われている。
【０００３】
パチンコ遊技機では、以前から普通電動役物、特別電動役物などの搭載が認められており、ソレノイドによる遊技球の吸引力、モータによる回転力を駆動源とした可動体の開放若しくは拡大、または、始動口の回転などが演出機能として実現されてきた。これらの可動役物は遊技に直接関係するものだが、最近では、遊技に直接関係のない構造品にも駆動源を搭載し、これらの動作を見て楽しめる遊技機も製造されている。
【０００４】
遊技機の演出機能において使用される駆動源としては、ソレノイド、およびステッピングモータなどが挙げられる。
【０００５】
ソレノイドは、コイル励磁により金属プランジャを吸引し、いわゆる、電動チューリップ、大入賞口の開放、または２種特別電動役物などを動作させる。また、ステッピングモータは、複数コイルの順次励磁により金属アクチュエータをステップ状に回転させ、３種始動口、または特定領域を回転させるといった動作を実現する。
【０００６】
さらに、最近では、これらの駆動源を、相当数使用して、可動体で複雑な動きを実現させるものが存在している。このように、遊技機１台あたりの駆動源の使用数は、増加傾向にある。
【０００７】
ところで、これらの駆動源を駆動させる駆動信号は、遊技機の制御装置（CPU：Central Processing Unit）で駆動波として生成される。
【０００８】
しかしながら、上述したように駆動源が増加傾向にあるため、配線本数、および端子数が、不足しつつあると共に、CPUで制御するソフトウェア容量が大きくなることにより、２次的な欠点を発生させることがある。例えば、ステッピングモータ駆動時には、位相が異なるパルス波をモータ１個あたり２乃至４本程生成するが、この周期、位相変化角度、または、その発生順番などにより、回転速度、および回転方向を制御することになるため、ソフトウェア容量そのものが膨大なものとなってしまうといったことがあった。
【０００９】
そこで、モータの励磁方法、回転方向、回転速度などのパラメータを制御装置により生成し、ハードウェアを簡略化すると共に、ソフトウェア容量を小さくさせるといった技術が提案されている（特許文献１参照）。
【００１０】
また、ステッピングモータの制御を高い分解能で高精度なものにすると共に、ハードウェア点数を少なくして実現できるようにする技術が提案されている（特許文献２参照）。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開平６−１８９５９７号公報
【特許文献２】特開２００８−５４３８２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
ところで、最新の遊技機においては、演出用の可動体からなる可動役物を駆動させるために、１個の制御装置で複数のソレノイドやステッピングモータを集中的に駆動させ、これらの駆動状況を検出する位置検出センサ、またはリミットスイッチといったセンサ類の検出結果などに基づいて、可動体からなる可動役物に、より複雑な動作を実現させることが望まれている。
【００１３】
しかしながら、特許文献１に代表されるモータ単品の工夫では、１個の制御装置からの配線本数や制御装置そのものの端子数などを十分に削減することに限界があるため、複数のソレノイドやステッピングモータにより駆動させる可動体からなる可動役物により実現できる動作には限界があった。
【００１４】
また、特許文献２の技術においては、確かに、ステッピングモータの制御を高い分解能で高精度なものにすると共に、ハードウェア点数を少なくすることが可能であるが、処理そのものは非常に煩雑なものとなってしまった。
【００１５】
本発明はこのような状況に鑑みてなされたものであり、複数の駆動源をより高度で、かつ複雑に動作させるように制御するにあたり、配線数を削減し、上位の制御装置による処理の負担を軽減できるようにするものである。
【課題を解決するための手段】
【００１６】
本技術の一側面のパルス発生装置は、制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置であって、予め設定された複数の原発振パルス波を分周により発生する分周手段と、前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウント手段と、前記指令に基づいて、前記カウント手段のリミットカウント値を生成するリミットカウント値生成手段と、前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生手段と、前記パルス信号により動作し、前記カウント手段の前記カウント値をクリア、またはプリセットする清算手段とを含み、前記カウント手段は、カウンタと、前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定手段と、前記曲率設定手段の設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替手段とを含み、前記カウント値は、前記曲率設定手段の設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる。
【００１７】
前記リミットカウント値生成手段には、リミットカウント値生成カウンタと、前記指令に基づいて、前記複数の原発振パルス波のうちの１つを選択するリミットカウント周波数選択手段とを含ませるようにすることができ、前記リミットカウント値生成カウンタには、前記リミットカウント周波数選択手段により選択された、前記複数の原発振パルス波のうちの１つにより、カウントアップ、またはカウントダウンさせ、これに追従して、前記パルス信号の周波数が変化させるようにすることができる。
【００１８】
前記カウント手段には、前記カウント値のカウントアップ、またはカウントダウンする度合を、時間の経過に追従して、複数の１次関数が連結される擬似曲線状で、かつ、反比例関数に類似する疑似曲線状に変化させるようにすることができる
【００１９】
本技術の駆動装置には、請求項１乃至３のいずれかに記載のパルス発生装置と、前記制御装置からの前記指令を受信する受信手段と、前記指令に基づいて、駆動指令内容を解釈する動作制御手段と、前記パルス信号に基づいて、モータ、ソレノイド、LED、または音声発生装置を含む動作装置を駆動させる出力制御手段とを含ませるようにすることができる。
【００２０】
前記動作制御手段には、前記指令に基づき、動作状況を指定する動作状況指定手段と、前記受信手段により、次の指令が受信されるまで、前記動作状況指定手段により指定された動作状況を保持する動作状況保持手段をさらに含ませるようにすることができる。
【００２１】
前記出力制御手段にて駆動する前記動作装置毎の適合出力形態を、前記動作制御手段、または前記出力制御手段に設定する出力設定手段をさらに含ませるようにすることができる。
【００２２】
本技術の遊技機には、請求項１乃至３に記載のパルス発生装置、並びに請求項４乃至６に記載の駆動装置の少なくとも１つを含ませるようにすることができる。
【００２３】
本技術の一側面のパルス発生方法は、制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置のパルス発生方法であって、予め設定された複数の原発振パルス波を分周により発生する分周ステップと、前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウントステップと、前記指令に基づいて、前記カウントステップ処理のリミットカウント値を生成するリミットカウント値生成ステップと、前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生ステップと、前記パルス信号により動作し、前記カウントステップの処理での前記カウント値をクリア、またはプリセットする清算ステップとを含み、前記カウントステップの処理は、前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定ステップと、前記曲率設定ステップの処理での設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替ステップとを含み、前記カウント値は、前記曲率設定ステップの処理での設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる。
【００２４】
本技術の一側面のプログラムは、制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置を制御するコンピュータに、予め設定された複数の原発振パルス波を分周により発生する分周ステップと、前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウントステップと、前記指令に基づいて、前記カウントステップ処理のリミットカウント値を生成するリミットカウント値生成ステップと、前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生ステップと、前記パルス信号により動作し、前記カウントステップの処理での前記カウント値をクリア、またはプリセットする清算ステップとを含む処理を実行させ、前記カウントステップの処理は、前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定ステップと、前記曲率設定ステップの処理での設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替ステップとを含み、前記カウント値は、前記曲率設定ステップの処理での設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる。
【００２５】
本技術の一側面においては、予め設定された複数の原発振パルス波が分周により発生され、複数の原発振パルス波に基づいて、カウント値がカウントアップ、またはカウントダウンされ、前記指令に基づいて、リミットカウント値が生成され、前記カウント値と前記リミットカウント値とが比較され、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号が発生され、前記パルス信号により動作し、前記カウント値がクリア、またはプリセットされ、カウンタと、前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つが対応されることで曲率が設定され、設定内容に従い、前記複数の原発振パルス波が切り替えられ、前記カウンタが駆動され、前記カウント値が、設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化され、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる。
【発明の効果】
【００２６】
本発明によれば、複数の駆動源をより高度で、かつ複雑に動作させるにあたり、上位の制御装置による処理の負担を軽減し、指令の数に応じた配線数を削減することが可能となる。
【図面の簡単な説明】
【００２７】
【図１】本発明を適用した駆動システムの実施の形態の構成を示す図である。
【図２】可動体駆動装置の実施の形態の構成例を示す図である。
【図３】クロック信号生成部および出力波形生成部の構成例を示す図である。
【図４】図２の出力波形生成部における設定例を示す図である。
【図５】図２の出力波形生成部における設定例を示す図である。
【図６】図２の出力制御部における設定例を示す図である。
【図７】可動体駆動処理を説明するフローチャートである。
【図８】指令データの構成例を示す図である。
【図９】図３のクロック信号生成部によるアップダウンカウンタカウント処理を説明するフローチャートである。
【図１０】出力制御処理を説明するフローチャートである。
【図１１】クロック信号生成部の処理を説明する図である。
【図１２】クロック信号生成部の処理を説明する図である。
【図１３】クロック信号生成部の処理を説明する図である。
【図１４】クロック信号生成部の処理を説明する図である。
【図１５】クロック信号生成部の処理を説明する図である。
【図１６】クロック信号生成部のその他の構成例を示す図である。
【図１７】可動体駆動装置のその他の実施の形態の構成例を示す図である。
【図１８】図１７のクロック信号生成部によるアップダウンカウンタカウント処理を説明するフローチャートである。
【図１９】図１７のクロック信号生成部によるアップダウンカウンタカウント処理を説明する図である。
【図２０】図１７のクロック信号生成部によるアップダウンカウンタカウント処理を説明する図である。
【図２１】クロック信号生成部その他の構成例を示す図である。
【図２２】図２１のクロック信号生成部によるアップダウンカウンタカウント処理を説明する図である。
【図２３】駆動システムのその他の実施の形態の構成を示す図である。
【図２４】汎用のパーソナルコンピュータの構成例を説明する図である。
【発明を実施するための最良の形態】
【００２８】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２９】
すなわち、本技術の一側面のパルス発生装置（例えば、図１７のクロック信号生成部５１）は、制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置であって、予め設定された複数の原発振パルス波を分周により発生する分周手段（例えば、図１６の分周部２３’、または、図１７の分周部１５１）と、前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウント手段（例えば、図１７のアップダウンカウンタ１６１）と、前記指令に基づいて、前記カウント手段のリミットカウント値を生成するリミットカウント値生成手段（例えば、図１７のリミットカウント生成部７２）と、前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生手段（例えば、図１７の比較部７３）と、前記パルス信号により動作し、前記カウント手段の前記カウント値をクリア、またはプリセットする清算手段（例えば、図１７の清算部７４）とを含み、前記カウント手段は、カウンタと、前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定手段（例えば、図１７の曲率設定部１７５）と、前記曲率設定手段の設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替手段（例えば、図１７の分周切替部１７４）とを含み、前記カウント値は、前記曲率設定手段の設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる。
【００３０】
前記リミットカウント値生成手段には、リミットカウント値生成カウンタ（例えば、図２１の低周波アップダウンカウンタ２０２）と、前記指令に基づいて、前記複数の原発振パルス波のうちの１つを選択するリミットカウント周波数選択手段（例えば、図２１の周波数選択部２０１）とを含ませるようにすることができ、前記リミットカウント値生成カウンタには、前記リミットカウント周波数選択手段により選択された、前記複数の原発振パルス波のうちの１つにより、カウントアップ、またはカウントダウンさせ、これに追従して、前記パルス信号の周波数が変化させるようにすることができる。
【００３１】
本技術の駆動装置には、請求項１乃至３のいずれかに記載のパルス発生装置と、前記制御装置からの前記指令を受信する受信手段と、前記指令に基づいて、駆動指令内容を解釈する動作制御手段（例えば、図１７の動作制御部２２）と、前記パルス信号に基づいて、モータ、ソレノイド、LED、または音声発生装置を含む動作装置を駆動させる出力制御手段（例えば、図１７の出力波形生成部５３）とを含ませるようにすることができる。
【００３２】
前記動作制御手段には、前記指令に基づき、動作状況を指定する動作状況指定手段（例えば、図１７の動作状況指定部４３）と、前記受信手段により、次の指令が受信されるまで、前記動作状況指定手段により指定された動作状況を保持する動作状況保持手段（例えば、図１７の動作状況保持部５２）をさらに含ませるようにすることができる。
【００３３】
前記出力制御手段にて駆動する前記動作装置毎の適合出力形態を、前記動作制御手段、または前記出力制御手段に設定する出力設定手段（例えば、図１７の出力設定部８３）をさらに含ませるようにすることができる。
【００３４】
本技術の一側面のパルス発生方法は、制御装置からの指令に基づいて、可変速にパルス信号を発生するパルス発生装置のパルス発生方法であって、予め設定された複数の原発振パルス波を分周により発生する分周ステップと、前記複数の原発振パルス波に基づいて、カウント値をカウントアップ、またはカウントダウンするカウントステップ（図９のステップＳ１３２）と、前記指令に基づいて、前記カウントステップ処理のリミットカウント値を生成するリミットカウント値生成ステップ（図１０のステップＳ１４３）と、前記カウント値と前記リミットカウント値とを比較し、前記カウント値がカウントアップする場合、前記カウント値が前記リミットカウント値よりも大きいとき、または、前記カウント値がカウントダウンする場合、前記カウント値が前記リミットカウント値よりも小さいとき、前記パルス信号を発生するパルス信号発生ステップ（図１０のステップＳ１４７）と、前記パルス信号により動作し、前記カウントステップの処理での前記カウント値をクリア、またはプリセットする清算ステップ（図１０のステップＳ１４８）とを含み、前記カウントステップの処理は、前記カウント値の変化状況を予め設定する複数の切替カウント値、および前記複数の切替カウント値毎に、前記複数の原発振パルス波のうち、１つを対応させることで曲率を設定する曲率設定ステップ（図１８のステップＳ１７０）と、前記曲率設定ステップの処理での設定内容に従い、前記複数の原発振パルス波を切り替え、前記カウンタを駆動させる切替ステップ（図１８のステップＳ１６４）とを含み、前記カウント値は、前記曲率設定ステップの処理での設定内容に従い、カウントアップ、またはカウントダウンする度合いが時間の経過に伴って曲線状に変化し、かつ、前記リミットカウント値との比較結果により、前記パルス信号の周波数が定められる。
【００３５】
図１は、本発明に係る遊技機の駆動システムの一実施の形態の構成を示す図である。
【００３６】
この駆動システムは、パチンコ遊技機や回胴式遊技機などに代表される遊技機の、可動体からなる可動役物を駆動させるためのシステムである。駆動システムは、CPU（Central Processing Unit）１１、可動体駆動装置１２−１，１２−２から構成されており、可動体駆動装置１２−１が、モータＭ１−１，Ｍ２−１を、可動体駆動装置１２−２が、モータＭ２−２，Ｍ２−２を、それぞれ駆動させることによりモータＭ１−１，Ｍ２−１，Ｍ１−２，Ｍ２−２の回転に連動して駆動する可動体からなる可動役物を駆動させる。
【００３７】
このモータＭ１−１，Ｍ２−１，Ｍ１−２，Ｍ２−２は、例えば、ステッピングモータなどであり、モータＭ１−１，Ｍ２−１は、それぞれコイルＬ１−１−１，Ｌ２−１−１、およびコイルＬ１−２−１，Ｌ２−２−１の励磁の切替により段階的に回転し、モータＭ１−２，Ｍ２−２は、それぞれコイルＬ１−１−２，Ｌ２−１−２、およびコイルＬ１−２−２，Ｌ２−２−２の励磁の切替により段階的に回転する。
【００３８】
尚、可動体駆動装置１２−１，１２−２、モータＭ１−１，Ｍ１−２，Ｍ２−１，Ｍ２−２、およびコイルＬ１−１−１，Ｌ２−１−１，Ｌ１−２−１，Ｌ２−２−１，Ｌ１−１−２，Ｌ２−１−２，Ｌ１−２−２，Ｌ２−２−２のそれぞれについて特に区別する必要がない場合、単に、可動体駆動装置１２、モータＭ１，Ｍ２、およびコイルＬ１−１，Ｌ２−１，Ｌ１−２，Ｌ２−２と称するものとし、その他の構成についても同様に称するものとする。また、図１においては、CPU１１は、２個の可動体駆動装置１２の動作を制御する例について示されているが、CPU１１が、制御する可動体駆動装置１２の個数は２個以上であってもよいものである。さらに、可動体駆動装置１２についても、個別に２個ずつのモータＭ１，Ｍ２を駆動させる例について説明するが、制御すべきモータの個数はそれぞれ２個に限定されるものではなく、それ以上の個数のモータを駆動させるものであってもよい。また、図１においては、可動体駆動装置１２は、それぞれ１種類のモータを駆動させる例について示されているが、可動体を駆動させる機構であればモータに限るものではなく、例えば、ソレノイドなどであってもよい。
【００３９】
CPU１１は、可動体駆動システムの動作の全体を制御しており、クロック端子ＣＫより出力するクロック信号に同期して、データ端子ＤＡＴＡよりシリアルデータとして指令データを出力し、可動体駆動装置１２−１，１２−２に対して、それぞれが駆動を制御しているモータＭ１−１，Ｍ２−１，Ｍ１−２，Ｍ２−２の駆動の指令データを供給する。この際、CPU１１は、可動体駆動装置１２−１，１２−２のいずれに対しての指示であるかを区別するアドレスの情報を付して指令データを供給する。また、CPU１１は、併せて、モータＭ１，Ｍ２のいずれへの指示であるかを区別する出力系統を識別する情報も付した指令データを供給する。さらに、CPU１１は、併せて、デバイスを識別するデバイス認識情報を付して指令データを供給する。デバイス認識情報とは、デバイスとして、例えば、モータを特定する情報であり、さらに、モータとは異なるデバイスとして、例えば、発光ダイオードLEDを用いる場合、モータＭ１，Ｍ２については、モータを識別する情報を、発光ダイオードLEDについては、発光ダイオードLEDを識別する情報をデバイス認識情報として付した指令データが供給される。
【００４０】
また、CPU１１は、可動体駆動装置１２−１，１２−２のそれぞれのモータＭ１，Ｍ２の駆動内容により、必要に応じて、駆動内容を示す動作データを生成し、指令データに含めて可動体駆動装置１２−１，１２−２に供給する。
【００４１】
次に、図２を参照して、CPU１１および可動体駆動装置１２の詳細な実施の形態の構成例について説明する。
【００４２】
判定部１１１は、可動体駆動装置１２が組み込まれている遊技機の遊技状態、すなわち、通常状態、リーチ状態、および大当り状態に対応して、ステッピングモータＭ１，Ｍ２をどのように駆動させるかを判定し、判定結果である駆動内容を動作データ生成部１１２に供給する。
【００４３】
動作データ生成部１１２は、判定部１１１からの判定結果に基づいて、具体的な動作内容を示す動作データを生成し、指令データ送信部１１３に供給する。
【００４４】
指令データ送信部１１３は、動作データ生成部１１２より供給されてくる動作データを含めて、指令データを生成し、宛先となるデバイス（デバイスの種類としては、例えば、可動体駆動装置の他、LED（Light Emission Diode）駆動装置などを含む）を特定するデバイス認識データ、および、例えば、可動体駆動装置１２をデバイスとして特定した場合、可動体駆動装置１２を特定するアドレスデータを付して、データ出力端子ＤＡＴＡおよびクロック信号出力端子ＣＫより、クロック信号に同期してシリアルデータとして指令データを全ての可動体駆動装置１２に送信する。
【００４５】
受信部２１は、受信制御部３１、およびシリアル−パラレル変換部３２より構成されており、CPU１１よりクロック信号に同期して送信されてくるシリアルデータからなる指令データを受信し、パラレルデータに変換して動作制御部２２に供給する。受信制御部３１は、シリアルデータ受信部３１ａおよびクロックデータ受信部３１ｂを備えており、クロックデータ受信部３１ｂにより受信されるクロックデータに基づいたクロック信号に同期して、シリアルデータ受信部３１ａで受信されるシリアルデータとして指令データを受信し、シリアル−パラレル変換部３２に供給する。シリアル−パラレル変換部３２は、シリアルデータをパラレルデータに変換し、パラレルデータに変換された指令データを動作制御部２２に供給する。
【００４６】
動作制御部２２は、デバイス認識部４１、アドレス認識部４２、動作状況指定部４３、および選定部４４を備えており、受信部２１より供給されてくる指令データを取得すると、内蔵するデバイス認識部４１、およびアドレス認識部４２を制御して、自らへの指令データであるか否かを認識させ、自らへの指令データであると認識された場合にのみ、指令データに基づいて、出力制御部２４−１，２４−２への出力を指示する。
【００４７】
デバイス認識部４１は、CPU１１より供給されてくる指令データに含まれるデバイスデータを読み出し、自らを識別するデバイスであるか否かを判定し、自らを識別するデバイスである場合にのみ、指令データを後段のアドレス認識部４２に供給する。より具体的には、識別すべきデバイスが２種類の場合、１ビット分のアドレスデータが構成されればよく、例えば、０の場合、デバイスを可動体駆動装置とし、１の場合、デバイスをLED駆動装置とするようにしてもよい。
【００４８】
アドレス認識部４２は、CPU１１より供給されてくる指令データに含まれるアドレスデータを読み出し、自らを識別するアドレスであるか否かを判定し、自らを識別するアドレスである場合にのみ、指令データを後段の動作状況指定部４３に供給する。より具体的には、識別すべき可動体駆動装置１２が可動体駆動装置１２−１または１２−２の２台である場合、１ビット分のアドレスデータが構成されればよいが、それ以上であった場合、その数に対応したビット数のアドレスデータとなる。例えば、３ビットのアドレスデータを利用する場合、図１における可動体駆動装置１２−１には、自らのアドレスデータの設定端子Ａ１乃至Ａ３が（Ａ１，Ａ２，Ａ３）＝（Hi，Low，Low）に設定されているため、アドレス認識部４２は、アドレスデータである（Ａ１，Ａ２，Ａ３）＝（Hi，Low，Low）＝（１，０，０）と、供給されてきた指令データに含まれるアドレスデータとを比較し、一致するとき、すなわち、アドレスデータが（Ａ１，Ａ２，Ａ３）＝（Hi，Low，Low）＝（１，０，０）であるとき、自らのアドレスであると認識する。また、例えば、図１における可動体駆動装置１２−２には、自らのアドレスデータの設定端子Ａ１乃至Ａ３が（Ａ１，Ａ２，Ａ３）＝（Low，Hi，Low）＝（０，１，０）に設定されているため、アドレス認識部４２は、アドレスデータである（Ａ１，Ａ２，Ａ３）＝（Low，Hi，Low）＝（０，１，０）と、供給されてきた指令データに含まれるアドレスデータとを比較し、一致するとき、すなわち、アドレスデータが（Ａ１，Ａ２，Ａ３）＝（Low，Hi，Low）＝（０，１，０）であるとき、自らのアドレスであると認識する。
【００４９】
尚、可動体駆動装置１２が、さらに多く設けられ、例えば、可動体駆動装置１２−１乃至１２−Ｎが設けられているような場合、アドレスデータのデータビットを可動体駆動装置１２の個数に対応して設け、対応してアドレス識別部４２にさらに設定端子を増設し、それぞれを識別するアドレスを設定することで対応することができる。
【００５０】
分周部２３は、いわゆる分周回路から構成されており、予め設定された比較的高周波の周波数ｆ０のクロック信号を出力制御部２４−１，２４−２に供給する。
【００５１】
出力制御部２４−１，２４−２は、動作制御部２２からの指示のうち、自らの出力系統に対応する指示の場合、その指示に基づいて、分周部２３より供給されてくる予め設定されている周波数ｆ０のクロック信号に基づいて、順次、アップダウンカウンタ７１−１，７１−２のカウント値をカウントアップ、または、カウントダウンし、カウントリミット値とを比較し、比較結果に応じて、出力波形生成部５３により所定の波形の出力信号を発生させ、モータＭ１またはＭ２を駆動させる。
【００５２】
動作状況指定部４３は、CPU１１から供給された指令データに含まれる出力系統データおよび動作データに基づいて、動作状況を指定し、選定部４４に指示し、出力制御部２４−１または２４−２によりそれぞれステッピングモータＭ１，Ｍ２を駆動させる。
【００５３】
選定部４４は、動作状況指定部４３より供給されてくる指示に含まれる、指令データの出力系統データに基づいて、出力制御部２４−１または２４−２の何れかを選定し、動作データに対応する動作を指示する。
【００５４】
出力制御部２４−１，２４−２は、それぞれクロック信号生成部５１−１，５１−２、動作状況保持部５２−１，５２−２、および出力波形生成部５３−１，５３−２から構成されている。
【００５５】
クロック信号生成部５１−１，５１−２は、それぞれアップダウンカウンタ７１−１，７１−２、リミットカウント生成部７２−１，７２−２、比較部７３−１，７３−２、および清算部７４−１，７４−２から構成されており、出力波形生成部５３に対してスッテピングモータＭ１，Ｍ２を駆動させる出力波形信号を発生させるクロック信号を出力する。
【００５６】
より詳細には、図３で示されるように、アップダウンカウンタ７１は、分周部２３より供給されてくる比較的高速の周波数ｆ０のクロック信号に基づいて、カウント値をカウントアップ、または、カウントダウンするカウンタであり、カウント値を示すカウント信号を比較部７３に供給する。また、アップダウンカウンタ７１は、清算部７４より供給されるクリア信号によりカウンタのカウント値の値を０にクリアする。
【００５７】
リミットカウント生成部７２は、動作状況保持部５２より供給されてくるリミット信号に基づいて、アップダウンカウンタのカウント値における上限値（または、下限値）を示すリミットカウント値を比較部７３に供給する。
【００５８】
比較部７３は、リミットカウント生成部７２より供給されてくるリミットカウント値と、アップダウンカウンタ７１より供給されてくるカウント信号に基づいたカウント値とを比較し、カウント値がカウントアップされる場合、カウント値が、リミットカウント値よりも大きいとき、パルス状のクロック信号を発生し、出力波形生成部５３に供給する。
【００５９】
動作状況保持部５２は、動作制御部２２より供給されてくる動作状況を保持し、動作状況に含まれているスタート信号、およびリミット信号を、それぞれ出力波形生成部５３およびクロック信号生成部５１に供給する。
【００６０】
図２の出力波形生成部５３−１，５３−２は、いずれも出力波形整形部８１−１，８１−２、出力部８２−１，８２−２、および出力設定部８３−１，８３−２をそれぞれ備えている。
【００６１】
図４の出力波形整形部８１は、出力設定部８３により予め設定されている設定情報に基づいて出力波形を整形し、出力部８２に供給する。出力部８２は、出力波形整形部８１により整形された出力波形を出力端子より出力し、コイルＬ１，Ｌ２を駆動させ、モータＭ１またはＭ２を駆動させる。
【００６２】
より具体的には、例えば、モータＭ１を駆動させる場合、図４で示されるように、出力設定部８３には、設定端子ＳＥＴ１，ＳＥＴ２が設けられており、これらの設定端子ＳＥＴ１，ＳＥＴ２の入力信号に基づいて整形され、出力部８２の出力端子Ｖ１乃至Ｖ４の出力波形が設定される。例えば、図４で示されるように、設定端子ＳＥＴ１，ＳＥＴ２が、それぞれ（ＳＥＴ１，ＳＥＴ２）＝（Low，Low）に設定された場合、図５で示されるように、４相モータ駆動波形が設定され、例えば、図６の最上段で示されるような波形が出力される。
【００６３】
図６の出力端子Ｖ１乃至Ｖ４の出力波形のうち、最上段の時刻ｔ０乃至ｔ１１においては、励磁なしで、コイルＬ１，Ｌ２によりモータＭ１が駆動されておらず、停止している状態となる。さらに、時刻ｔ１１において、予備励磁が指示されると、時刻ｔ１１乃至ｔ２０で示されるように、予備励磁が開始されている。予備励磁においては、コイルＬ１，Ｌ２は励磁されるが、駆動波形が変化せず、モータＭ１が停止している状態が示されている。
【００６４】
時刻ｔ２０において、正方向の回転が指示されると、時刻ｔ２０乃至ｔ３８で示されるように、出力波形整形部８１より順次出力波形が整形されて、出力部８２の出力端子Ｖ１乃至Ｖ４からそれぞれ９０°ずつ位相がずれた方形波が出力されることにより、コイルＬ１，Ｌ２が順次切り替えて励磁されてモータＭ１が駆動し、正方向に回転する。そして、時刻ｔ３８において、停止が指示されると、出力部８２の出力端子Ｖ１乃至Ｖ４からの出力が停止されて、予備励磁状態であるが、コイルＬ１，Ｌ２の駆動波形が変化せず、モータＭ１が停止している状態となる。
【００６５】
そして、時刻ｔ５０において、逆方向の回転が指示されると、時刻ｔ５０乃至ｔ７６で示されるように、出力波形整形部８１より順次出力波形が整形されて、出力部８２の出力端子Ｖ１乃至Ｖ４からそれぞれ９０°ずつ位相がずれた（時刻ｔ２０乃至ｔ３８における場合とずれ方向が逆の）方形波が出力されることにより、コイルＬ１，Ｌ２が順次励磁されてモータＭ１が駆動し、逆方向に回転する。そして、時刻ｔ７６において、停止が指示されると、出力部８２の出力端子Ｖ１乃至Ｖ４からの出力が停止されて、予備励磁状態となるが、コイルＬ１，Ｌ２によりモータＭ１が駆動されておらず、モータＭ１が停止している状態となる。さらに、時刻ｔ８１において、完全停止が指示されると励磁なしの状態となる。
【００６６】
また、例えば、設定端子ＳＥＴ１，ＳＥＴ２が、それぞれ（ＳＥＴ１，ＳＥＴ２）＝（Hi，Low）に設定された場合、図５で示されるように、２相モータ駆動波形が設定され、例えば、図６の出力端子Ｖ１乃至Ｖ４の出力波形のうち、中段で示されるような波形が出力される。
【００６７】
すなわち、２相モータ駆動時には、Ｈブリッジドライバが追加接続されるため、出力端子Ｖ１，Ｖ２のみが使用され、出力端子Ｖ３，Ｖ４は、不要となる。このため、出力端子Ｖ３，Ｖ４は、別の用途に使用することもできる。尚、図６の出力端子Ｖ１乃至Ｖ４の出力波形のうち、中段で示される２相モータ駆動時の動作については、４相モータ駆動時と同様であるので、その説明は省略する。
【００６８】
さらに、例えば、設定端子ＳＥＴ１，ＳＥＴ２が、それぞれ（ＳＥＴ１，ＳＥＴ２）＝（Low，Hi）に設定された場合、図５で示されるように、１−２相モータ駆動波形が設定され、例えば、図６の出力端子Ｖ１乃至Ｖ４の出力波形のうち、下段で示されるような波形が出力される。
【００６９】
すなわち、１−２相モータ駆動時には、各出力端子Ｖ１乃至Ｖ４よりＯＮ時間：ＯＦＦ時間の比率が３：５の波形が、９０°ずつ位相がずれた波形が出力される。尚、図６の下段で示される１−２相モータ駆動時の動作については、４相モータ駆動時と同様であるので、その説明は省略する。
【００７０】
さらに、例えば、設定端子ＳＥＴ１，ＳＥＴ２が、それぞれ（ＳＥＴ１，ＳＥＴ２）＝（Hi，Hi）に設定された場合、図５で示されるように、ソレノイド駆動が設定され、それぞれがＯＮまたはＯＦＦに設定される。尚、出力波形は、ＯＮまたはＯＦＦのいずれかであるので、波形例の説明は省略する。
【００７１】
次に、図７のフローチャートを参照して、図２の駆動システムによる可動体駆動処理について説明する。
【００７２】
ステップＳ１０１において、判定部１１１は、全てのデバイスのうち、未処理のデバイスを処理対象デバイスに設定する。ここでは、未処理のデバイスが可動体駆動装置１２であるものとするが、それ以外のデバイスであってもよく、例えば、LED駆動装置などがあれば、それらも未処理であれば処理対象のデバイスに設定される。
【００７３】
ステップＳ１０２において、判定部１１１は、可動体駆動装置１２を識別する全てのアドレスのうち、未処理のアドレスを処理対象アドレスに指定する。
【００７４】
ステップＳ１０３において、判定部１１１は、処理対象となるアドレスにおける出力制御部２４によりステッピングモータＭ１，Ｍ２のいずれか、または、その両方の駆動が必要であるか否かを判定する。
【００７５】
ステップＳ１０３において、例えば、駆動が必要であると判定された場合、ステップＳ１０４において、動作データ生成部１１２は、処理対象アドレスの可動体駆動装置１２に対して、駆動させるべきステッピングモータＭ１またはＭ２の動作内容を指示する動作データを生成し、指令データ送信部１１３に供給する。ここでいう動作データは、出力波形生成部５３によりステッピングモータＭ１，Ｍ２を駆動させるための、電圧Ｖ１−１乃至Ｖ４−１、およびＶ１−２乃至Ｖ４−２の発生を制御するデータである。
【００７６】
ステップＳ１０５において、指令データ送信部１１３は、処理対象デバイスのうち、処理対象アドレスの可動体駆動装置１２に対して、供給されてきた動作データを含めて、動作を指示する、例えば、図８で示されるような指令データを生成し、クロック端子ＣＫより出力するクロック信号に同期して、データ端子ＤＡＴＡよりシリアルデータとして出力する。
【００７７】
指令データは、図８で示されるように、デバイスデータ、アドレスデータ、出力系統データ、および動作データから構成される。例えば、可動体駆動装置１２−１宛の指令データを生成する場合、デバイスデータには、デバイスとして可動体駆動装置を識別できるデバイスデータが記録される。また、アドレスデータには、可動体駆動装置１２−１を識別するアドレスのデータが記録される。また、出力系統データは、駆動させる出力系統である出力制御部２４−１，２４−２のいずれかを識別するデータが記録される。動作データは、上述したように、出力波形生成部５３によりステッピングモータＭ１，Ｍ２を駆動させるための、電圧Ｖ１−１乃至Ｖ４−１，Ｖ１−２乃至Ｖ４−２の発生を制御するデータが記録される。
【００７８】
ステップＳ１１１において、受信部２１の受信制御部３１は、CPU１１より指令データが送信されてきたか否かを判定し、指令データが送信されてくるまで、同様の処理を繰り返す。ステップＳ１１１において、例えば、ステップＳ１０５の処理により、CPU１１より指令データが送信されてきた場合、ステップＳ１１２において、受信制御部３１は、順次クロック信号に同期して、シリアルデータとして送信されてくる指令データを受信し、シリアル−パラレル変換部３２に供給する。シリアル−パラレル変換部３２は、供給されてきたシリアルデータからなる指令データをパラレルデータに変換し、動作制御部２２のデバイス認識部４１に供給する。デバイス認識部４１は、パラレルデータに変換されて供給されてきた指令データより、デバイスデータを読み出す。
【００７９】
ステップＳ１１３において、デバイス認識部４１は、読み出したデバイスデータが自らを識別するデバイスを示すものであるか否かを判定する。ステップＳ１１３において、例えば、読み出したデバイスデータが自らを識別するデバイスを示すものではないと判定された場合、デバイス認識部４１は、供給されてきた指令データを破棄し、処理は、ステップＳ１１１に戻る。すなわち、この場合、供給されてきた指令データが、自らへのものではないとみなされ、処理が打ち切られる。結果として、指令データの宛先として指定されたデバイスに対応するデバイス以外においては、処理が打ち切られ、指令データの宛先として指定されたデバイスに対応する駆動装置のみが、以降の処理を実行することになる。
【００８０】
一方、ステップＳ１１３において、例えば、読み出したデバイスデータが自らを識別するデバイスを示すものであると判定された場合、ステップＳ１１４において、デバイス認識部４１は、供給された指令データをアドレス認識部４２に供給する。この処理に応じて、アドレス認識部４２は、供給されてきた指令データより、アドレスデータを読み出す。
【００８１】
ステップＳ１１５において、アドレス認識部４２は、読み出したアドレスデータが自らを識別するアドレスを示すものであるか否かを判定する。ステップＳ１１５において、例えば、読み出したアドレスデータが自らを識別するアドレスを示すものではないと判定された場合、アドレス認識部４２は、供給されてきた指令データを破棄し、処理は、ステップＳ１１１に戻る。すなわち、この場合、供給されてきた指令データが、自らへのものではないとみなされ、処理が打ち切られる。結果として、指令データの宛先として指定されたアドレスに対応する可動体駆動装置１２以外においては、処理が打ち切られ、指令データの宛先として指定されたアドレスに対応する可動体駆動装置１２のみが、以降の処理を実行することになる。
【００８２】
一方、ステップＳ１１５において、例えば、読み出したアドレスデータが自らを識別するアドレスを示すものであると判定された場合、ステップＳ１１６において、アドレス認識部４２は、供給された指令データを全て読み出し、動作状況指定部４３に供給する。
【００８３】
ステップＳ１１７において、動作状況指定部４３は、指令データのうちの動作データを読み出し、ステップＳ１１８において、動作として指示する動作内容を認識する。
【００８４】
ステップＳ１１９において、動作状況指定部４３は、指令データのうちの出力系統データを読み出し、動作データの供給先となる出力系統を認識する。
【００８５】
ステップＳ１２０において、動作状況指定部４３は、動作データより動作状況を指定し、認識した出力系統に対応する出力制御部２４を指定して、選定部４４に対して出力系統データと共に動作データを供給する。これに応じて、選定部４４は、出力系統データに基づいて、選択すべき出力制御部２４に動作状況を指示する。このとき、図１０を参照して後述するステップＳ１４２の処理により動作状況保持部５２は、供給されてきた動作状況を保持する。そして、処理は、ステップＳ１１１に戻る。
【００８６】
一方、ステップＳ１０３において、駆動が必要ではないと判定された場合、ステップＳ１０４，Ｓ１０５の処理は、スキップされる。
【００８７】
そして、ステップＳ１０６において、判定部１１１は、可動体駆動装置１２を識別する全てのアドレスのうち、未処理のアドレスが存在するか否かを判定する。すなわち、CPU１１で動作を管理すべき可動体駆動装置１２の全てについて処理が終了したか否かが判定される。ステップＳ１０６において、未処理のアドレスが存在する場合、処理は、ステップＳ１０２に戻る。すなわち、CPU１１で動作を管理すべき可動体駆動装置１２の全てについて処理が終了するまで、ステップＳ１０２乃至Ｓ１０６の処理が繰り返される。そして、ステップＳ１０６において、全てのアドレスについて処理が終了し、CPU１１で動作を管理すべき可動体駆動装置１２の全てについて処理が終了したと判定された場合、処理は、ステップＳ１０７に進む。
【００８８】
ステップＳ１０７において、判定部１１１は、駆動装置１２を識別する全てのデバイスのうち、未処理のデバイスが存在するか否かを判定する。すなわち、CPU１１で動作を管理すべきデバイスの全てについて処理が終了したか否かが判定される。ステップＳ１０７において、未処理のデバイスが存在する場合、処理は、ステップＳ１０１に戻る。すなわち、CPU１１で動作を管理すべき駆動装置の全てについて処理が終了するまで、ステップＳ１０１乃至Ｓ１０７の処理が繰り返される。そして、ステップＳ１０７において、全てのアドレスについて処理が終了し、CPU１１で動作を管理すべき駆動装置の全てについて処理が終了したと判定された場合、処理は、ステップＳ１０８に進む。
【００８９】
ステップＳ１０８において、判定部１１１は、全てのデバイスについて、全てのアドレスを未処理であるものとみなし、処理は、ステップＳ１０１に戻る。
【００９０】
すなわち、CPU１１は、全てのデバイス、すなわち全ての駆動装置について、動作状況を巡回的に監視し、必要に応じて駆動を指示する。この際、駆動装置を駆動するにあたり、動作を一回指示すればよいのでCPU１１による処理負荷が低減される。
【００９１】
次に、図９のフローチャートを参照してアップダウンカウンタのカウント処理について説明する。
【００９２】
ステップＳ１３１において、アップダウンカウンタ７１は、アップダウンカウンタを０にリセットする。
【００９３】
ステップＳ１３２において、アップダウンカウンタ７１は、分周部２３により分周されて発生される周波数ｆ０のクロック信号に同期してカウント値をカウントし（１インクリメント、またはデクリメントし）、カウント値に対応するカウント信号を比較部７３に供給する。
【００９４】
ステップＳ１３３において、アップダウンカウンタ７１は、清算部７４よりクリア信号が供給されてくるか否かを判定する。ステップＳ１３３において、例えば、清算部７４よりクリア信号が供給されてこなかった場合、処理は、ステップＳ１３２に戻る。すなわち、清算部７４よりクリア信号が供給されてくるまで、アップダウンカウンタ７１は、分周部２３からのクロック信号に同期してカウント値を累積的に加算、または減算し続ける。
【００９５】
一方、ステップＳ１３３において、清算部７４よりクリア信号が供給されてくると、処理は、ステップＳ１３１に戻る。すなわち、カウント値がリセットされてから、再びカウント値のカウントアップ、またはカウントダウンが累積的に繰り返される。
【００９６】
以上の処理により、アップダウンカウンタ７１は、清算部７４によりクリア信号が供給されるまで、カウント値をカウントアップ、または、カウントダウンし続け、そのカウント値を順次比較部７３に供給すると共に、クリア信号が供給されるとカウント値をリセットし、再びカウント値をカウントアップ、または、カウントダウンし続け、そのカウント値を順次比較部７３に供給し続ける。
【００９７】
次に、図１０のフローチャートを参照して、出力制御部２４による出力制御処理について説明する。
【００９８】
ステップＳ１４１において、動作状況保持部５２は、自らの出力系統に出力制御処理が指示されたか否かを判定し、指示されたと判定されるまで、その処理を繰り返す。ステップＳ１４１において、例えば、ステップＳ１２０の処理により、出力制御処理を指示する動作データが供給された場合、処理は、ステップＳ１４２に進む。
【００９９】
ステップＳ１４２において、動作状況保持部５２は、供給されてきた動作データを保持する。
【０１００】
ステップＳ１４３において、動作状況保持部５２は、保持している動作データに基づいて、リミットカウント情報をリミットカウント生成部７２に供給する。リミットカウント生成部７２は、リミットカウント情報に基づいて、リミットカウント信号を比較部７３に供給する。
【０１０１】
ステップＳ１４４において、動作状況保持部５２は、動作データに基づいて、処理を開始するスタートのタイミングであるか否かを判定し、スタートのタイミングであると判定されるまで、同様の処理を繰り返す。ステップＳ１４４において、スタートのタイミングであると判定された場合、ステップＳ１４５において、動作状況保持部５２は、スタート信号を出力波形生成部５３の出力波形整形部８１に供給する。
【０１０２】
ステップＳ１４６において、比較部７３は、順次アップダウンカウンタ７１より供給されてくるカウント信号に基づいたカウント値と、リミットカウント生成部７２より供給されてくるリミットカウント信号に基づいたリミットカウント値とを比較し、カウント信号に基づくカウント値が、リミットカウント信号に基づくリミットカウント値よりも大きいか否かを判定する。ステップＳ１４６において、例えば、カウント値が、リミットカウント値よりも大きいと判定された場合、ステップＳ１４７において、比較部７３は、出力波形生成部５３、および清算部７４に対してクロック信号を供給する。このクロック信号により、出力波形生成部５３は、ステッピングモータＭ１（またはＭ２）を駆動するため、駆動信号を発生し、コイルＬ１，Ｌ２を励磁させることによりステッピングモータＭ１（またはＭ２）を駆動させる。
【０１０３】
ステップＳ１４８において、清算部７４は、パルス状のクロック信号であるパルス信号を受けると、クリア信号をアップダウンカウンタ７１に供給し、アップダウンカウンタのカウント値をリセットさせ、処理は、ステップＳ１５０に進む。尚、ステップＳ１４７において、クロック信号が発生されるのは、カウント値が、リミットカウント値よりも大きいと判定された後であって、クリア信号によりプリセットされるまでの間となるが、事実上、アップダウンカウンタが１カウントされるまでの１周期についてのみとなるため、クロック信号は、アップダウンカウンタの１カウント分のパルス信号となる。
【０１０４】
一方、ステップＳ１４６において、例えば、アップダウンカウンタ７１のカウント値が、リミットカウント値よりも高くないと判定された場合、ステップＳ１４９において、比較部７３は、出力波形生成部５３、および清算部７４に対してクロック信号を発生しない。このため、出力波形生成部５３は、駆動信号を発生しないため、ステッピングモータＭ１（またはＭ２）は、駆動しない状態となる。
【０１０５】
ステップＳ１５０において、動作状態保持部５２は、停止すべきタイミングであるか否かを判定し、停止すべきタイミングではないと判定された場合、処理は、ステップＳ１４６に戻る。
【０１０６】
一方、ステップＳ１５０において、停止すべきタイミングであると判定された場合、処理は、ステップＳ１４１に戻り、それ以降の処理が繰り返される。
【０１０７】
以上の動作を纏めると以下のようになる。
【０１０８】
すなわち、アップダウンカウンタ７１の上限値が、例えば、２５６であり、カウントアップするものとした場合、リミットカウント値が設定されていないとき、アップダウンカウンタ７１のカウント信号を示すカウント値Ｋ１は、図１１の実線で示されるように、２５６×１／ｆ０（ｆ０は分周部２３より供給されてくるクロック信号の周波数）の間隔で繰り返しカウント値が０乃至２５６での上昇を繰り返す。尚、図１１においては、カウント値Ｋ１が直線状に推移するように表記されているが、厳密には、１／ｆ０の間隔で階段状に変化するものである。
【０１０９】
ここで、図１２で示されるように、時刻ｔ１において、カウントリミット値Ｋ２＝６４が設定され、時刻ｔ２において、カウントリミット値Ｋ２＝１９２が設定されるものとする。
【０１１０】
この場合、時刻ｔ１乃至ｔ２においては、図１３の上部で示されるように、アップダウンカウンタ７１のカウント値Ｋ１が６４に達する時刻Ｃ１，Ｃ２，・・・と、その周期においてカウント値がリミットカウント値Ｋ２を１周期分（１／ｆ０）だけ超えた状態となるため、その間、比較部７３は、図１３の下部で示されるようにパルス状のクロック信号Ｋ３を発生して、出力波形生成部５３に供給する。したがって、このパルス状のクロック信号からなるパルス信号は、６４×１／ｆ０の周期で繰り返し発生される幅１／ｆ０のパルス信号になる。
【０１１１】
また、同様に、時刻ｔ２以降においては、図１４の上部で示されるように、アップダウンカウンタ７１のカウント値を示すカウント信号Ｋ１が１９２に達する時刻Ｃ１１，Ｃ１２，Ｃ１３・・・・と、その周期においてカウント値がリミットカウント値を示すリミットカウント信号Ｋ２を１周期分（１／ｆ０）だけ超えた状態となるため、その間、比較部７３は、図１４の下部で示されるようにパルス信号Ｋ３を発生して、出力波形生成部５３に供給する。したがって、このパルス信号は、１９２×１／ｆ０の周期で繰り返し発生される幅１／ｆ０のパルス信号になる。
【０１１２】
この結果、例えば、出力波形生成部５３においては、図１５で示されるように、時刻ｔ１において、リミットカウント値が６４に設定されると、時刻ｔ１０１乃至ｔ１１９の各６４×１／ｆ０の周期（時間間隔）で、パルス信号Ｋ３を繰り返し発生することにより、出力端子Ｖ１は、時刻ｔ１乃至ｔ１０２，ｔ１０４乃至ｔ１０６，ｔ１０８乃至ｔ１１０，ｔ１１２乃至ｔ１１４，ｔ１１６乃至ｔ１１８において、パルス波形を発生する。同様に、出力端子Ｖ２は、時刻ｔ１０１乃至ｔ１０３，ｔ１０５乃至ｔ１０７，ｔ１０９乃至ｔ１１１，ｔ１１３乃至ｔ１１５，ｔ１１７乃至ｔ１１９において、パルス波形を発生する。また、同様に、出力端子Ｖ３は、時刻ｔ１０２乃至ｔ１０４，ｔ１０６乃至ｔ１０８，ｔ１１０乃至ｔ１１２，ｔ１１４乃至ｔ１１６，ｔ１１８乃至ｔ２において、パルス波形を発生する。さらに、出力端子Ｖ４は、時刻ｔ１乃至ｔ１０１，時刻ｔ１０３乃至ｔ１０５，ｔ１０７乃至ｔ１０９，ｔ１１１乃至ｔ１１３，ｔ１１５乃至ｔ１１７，ｔ１１９乃至ｔ２において、パルス波形を発生する。
【０１１３】
さらに、図１５で示されるように、時刻ｔ２において、リミットカウント値が１９２に設定されると、時刻ｔ２乃至ｔ１２１の各１９２×１／ｆ０の周期（時間間隔）で、パルス信号Ｋ３を繰り返し発生することにより、出力端子Ｖ１は、時刻ｔ２乃至ｔ１２２，ｔ１２４乃至ｔ１２６，ｔ１２８乃至ｔ１３０において、パルス波形を発生する。同様に、出力端子Ｖ２は、時刻ｔ１２１乃至ｔ１２３，ｔ１２５乃至ｔ１２７，ｔ１２９乃至ｔ１３０において、パルス波形を発生する。また、同様に、出力端子Ｖ３は、時刻ｔ１２２乃至ｔ１２４，ｔ１２６乃至ｔ１２８において、パルス波形を発生する。さらに、出力端子Ｖ４は、時刻ｔ２乃至ｔ１２１，時刻ｔ１２３乃至ｔ１２５，ｔ１２７乃至ｔ１２９において、パルス波形を発生する。
【０１１４】
このように、時刻ｔ１乃至ｔ２においては、時刻ｔ２以降よりもステッピングモータが約３倍の速さで回転するように制御される。この際、開始タイミングと、そのリミットカウント値のみが制御されるのみで、回転開始タイミングと、その回転速度が制御され、これ以外の情報が特に必要とされないので、最初にその情報を供給したのみで、可動体駆動装置１２が、自らで自走することとなるので、制御部１１の制御負荷を極めて小さくすることが可能となる。
【０１１５】
以上においては、分周部２３より発生するクロック信号は、周波数ｆ０のもの１種類である例について説明してきたが、例えば、図１６で示されるように、分周部２３’により２種類の周波数ｆ１，ｆ０のクロック信号を発生し、原発振選択部９１により、そのいずれかのクロック信号を切り替えて利用するようにしても良い。このようにすることで、ステッピングモータＭ１（または、Ｍ２）の駆動パタンを変化させることが可能となる。
【０１１６】
尚、分周部２３’により発生されるクロック信号は、２種類以上であってもよい。また、原発振選択部９１により、いずれのクロック信号をどのように選択的に切り替えて利用するかについてを指示する情報を動作データに含ませるようにすることで、様々なクロック信号を利用して、様々なパターンでステッピングモータＭ１（またはＭ２）を駆動させることが可能となる。
【０１１７】
以上においては、アップダウンカウンタ７１がカウントアップ、または、カウントダウンを開始して、リミットカウント値に至るまでは、同一のクロック信号に基づいて、カウントアップ、または、カウントダウンする例について説明してきたが、アップダウンカウンタ７１がカウントアップ、または、カウントダウンを開始して、カウント値がリミットカウント値に至るまでの間に、クロック信号を所定の時間間隔で順次切り替えるようにしてもよい。
【０１１８】
図１７は、アップダウンカウンタ１６１がカウントアップ、または、カウントダウンを開始して、カウント値がリミットカウント値に至るまでの間に、クロック信号を所定の時間間隔で順次切り替えるようにした可動体駆動装置１２の構成例を示している。尚、図１７において、図２において示されている構成と同一の構成については、同一の符号を付しており、その説明は適宜省略するものとする。
【０１１９】
すなわち、図１７の可動体駆動装置１２において、図２における可動体駆動装置１２と異なるのは、分周部２３、およびアップダウンカウンタ７１−１，７１−２に代えて、分周部１５１、およびアップダウンカウンタ１６１−１，１６１−２を設けた点である。
【０１２０】
分周部１５１は、原発振として周波数ｆ０，ｆ１，・・・ｆｎのｎ種類のクロック信号を発生しており、それぞれ出力制御部２４−１，２４−２に供給している。
【０１２１】
アップダウンカウンタ１６１は、分周部１５１より供給されてくる、ｎ種類の周波数ｆ０，ｆ１，・・・ｆｎのクロック信号のいずれかを用いて、カウント値をカウントアップ、または、カウントダウンするカウンタであり、カウント値に対応するカウント信号を比較部７３に供給する。
【０１２２】
アップダウンカウンタ１６１−１，１６１−２は、それぞれカウント部１７１−１，１７１−２、切替カウンタ制御部１７２−１，１７２−２、レートカウンタ制御部１７３−１，１７３−２、分周切替部１７４−１，１７４−２、および曲率設定部１７５−１，１７５−２を備えている。
【０１２３】
分周切替部１７４は、所定のタイミングで、レートカウンタ制御部１７３により制御されるレートカウンタＭにより予め設定されているカウントレート（変化率：単位時間当たりのカウント数）により、周波数ｆ０，ｆ１，・・・ｆｎのいずれかのクロック信号に切り替えて、カウント部１７１に供給する。
【０１２４】
カウント部１７１は、分周切替部１７４により切り替えられたクロック信号に同期してカウント値をカウントし、比較部７３に出力する。切替カウンタ制御部１７２は、カウントレートを切り替えるタイミングを示す切替カウンタＣを、分周切替部１７４により切り替えられたクロック信号に同期してカウントし、レートカウンタＭに対応する切替カウント値となったとき、そのタイミングとなったことをレートカウンタ制御部１７３および分周切替部１７４に通知する。
【０１２５】
レートカウンタ制御部１７３は、切替カウンタ制御部１７２より切替カウンタＣが切替カウント値となったことが通知されると、そのタイミングでレートカウンタＭを１インクリメントする。
【０１２６】
分周切替部１７４は、切替カウンタ制御部１７２より切替カウンタＣが切替カウント値となったことが通知されると、そのタイミングでレートカウンタＭに対応するカウントレートに対応する周波数ｆｎのクロック信号に切り替える。
【０１２７】
曲率設定部１７５は、予めレートカウンタＭごとに、設定された切替カウント値を記憶し、カウントレートを識別するレートカウンタＭに対応する切替カウント値を切替カウンタ制御部１７２に供給する。このレートカウンタＭ毎に設定されるカウントレートと、対応する切替カウント値に基づいて、分周部１５１により分周される異なる周波数のクロック信号に切り替えられる期間が設定され、アップダウンカウンタ１６１のカウント値のカウント速度が、時間に対して、擬似曲線的に変化されると共に、擬似曲線の曲率が設定される。尚、ここでは、レートカウンタＭが大きくなるにつれて、カウントレートが小さくなるものとする。すなわち、アップダウンカウンタ１６１は、レートカウンタＭが小さいほど、周波数の高いクロック信号によりカウントアップ、または、カウントダウンされるので、高速でカウントアップ、または、カウントダウンされ、レートカウンタＭが大きいほど、周波数の低いクロック信号によりカウントアップ、または、カウントダウンされるので、低速でカウントアップ、または、カウントダウンされる。
【０１２８】
次に、図１８のフローチャートを参照して、アップダウンカウンタカウント処理について説明する。
【０１２９】
ステップＳ１６１において、アップダウンカウンタ１６１のカウント部１７１は、カウンタを０にリセットする。
【０１３０】
ステップＳ１６２において、レートカウンタ制御部１７３は、レートカウンタＭを１に初期化する。
【０１３１】
ステップＳ１６３において、切替カウンタ制御部１７２は、カウントレートを切り替える切替カウンタＣを０にリセットする。
【０１３２】
ステップＳ１６４において、分周切替部１７４は、曲率設定部１７５に予めレートカウンタＭに対応して設定されているカウントレートで、分周部１５１から供給されてくる、周波数ｆ０，ｆ１，・・・ｆｎのいずれかを、カウント部１７１でカウントするためのクロック信号として選択する。例えば、カウント値が小さい時には急峻に変化し、カウント値が大きくなるにつれて緩やかに変化するように曲率を設定する場合、最初の処理のとき、最もレートカウンタＭが小さいので、最も高速の周波数のクロック信号を選択することが指示される。
【０１３３】
ステップＳ１６５において、カウント部１７１は、分周切替部１７４により選択された周波数のクロック信号に同期してアップダウンカウンタをカウントし（１インクリメントし）、比較部７３に供給する。
【０１３４】
ステップＳ１６６において、切替カウンタ制御部１７２は、分周切替部１７４により選択された周波数のクロック信号に同期して、切替カウンタＣをカウントする（１インクリメントする）。
【０１３５】
ステップＳ１６７において、カウント部１７１は、クリア信号が清算部７４より供給されてきたか否かを判定する。ステップＳ１６７において、例えば、クリア信号が供給されてきた場合、処理は、ステップＳ１６１に戻る。すなわち、この処理により、アップダウンカウンタ１６１のカウント値が０にリセットされて同様の処理が繰り返される。
【０１３６】
一方、ステップＳ１６７において、クリア信号が供給されてこない場合、ステップＳ１６８において、切替カウンタ制御部１７２は、切替カウンタＣが、曲率設定部１７５に予め設定されているレートカウンタＭ毎に設定されている所定値である切替カウント値となったか否かを判定する。例えば、切替カウンタＣが、曲率設定部１７５に予め設定されているレートカウンタＭ毎に設定されている切替カウント値となっていない場合、処理は、ステップＳ１６４に戻る。すなわち、ステップＳ１６８において、切替カウンタＣが、曲率設定部１７５に予め設定されているレートカウンタＭ毎に設定されているの切替カウント値となるまで、クリア信号が供給されてこない限り、ステップＳ１６４乃至Ｓ１６８の処理が繰り返されて、レートカウンタＭに対応する周波数のクロック信号に同期したカウントレートでアップダウンカウンタ、および切替カウンタＣが順次、１インクリメントされていく。
【０１３７】
そして、ステップＳ１６８において、切替カウンタＣが、曲率設定部１７５にレートカウンタＭ毎に予め設定されている切替カウント値であると判定された場合、ステップＳ１６９において、カウント部１７１は、カウントされた値が最大値であるか否かを判定し、最大値ではない場合、処理は、ステップＳ１７０に進む。
【０１３８】
ステップＳ１７０において、レートカウンタ制御部１７３は、レートカウンタＭを１インクリメントし、処理は、ステップＳ１６３に戻る。
【０１３９】
すなわち、レートカウンタＭが１インクリメントされると、再び、処理は、ステップＳ１６３に戻り、切替カウンタ制御部１７２が切替カウンタＣを０にリセットし、分周切替部７４が、新たに設定されたレートカウンタＭに対応するカウントレートに対応するクロック信号に基づいて、アップダウンカウンタ１６１のカウント値がカウント部１７１によりカウントされると共に、切替カウンタＣがカウントされる。
【０１４０】
以上の処理により、例えば、図１９の時刻ｔａのタイミングで、アップダウンカウンタ１６１のカウントが開始され、レートカウンタＭ＝１に対応するカウントレートのクロック周波数のクロック信号でカウントする周波数のクロック信号が分周切替部１７４により選択されると、曲率設定部１７５にレートカウンタＭ＝１に対応して設定されている、所定の切替カウント値である切替カウンタＣ１までステップＳ１６４乃至Ｓ１６８の処理が繰り返されて、レートカウンタＭ＝１に対応するカウントレートでアップダウンカウンタ１６１がカウントされる。このとき、図中の時刻ｔａ乃至ｔｂにおける一点鎖線Ｍ１で示されるように、直線状にアップダウンカウンタ１６１のカウント値が変化する（図中では直線であるが、詳細には、その値は階段状に変化している）。そして、図１９の時刻ｔｂのタイミングで示されるように、ステップＳ１６８において、切替カウンタＣが切替カウンタＣ１となり、切替カウント値となったものとみなされると、ステップＳ１６９において最大値ではないとみなされるとき、ステップＳ１７０において、レートカウンタＭが１インクリメントされて、レートカウンタＭ＝２とされる。
【０１４１】
そして、レートカウンタＭ＝２に対応して設定されている、所定の切替カウント値である切替カウンタＣ２までステップＳ１６４乃至Ｓ１６８が繰り返されて、レートカウンタＭ＝２に対応するカウントレートのクロック周波数のクロック信号でアップダウンカウンタ１６１のカウント値がカウントされる。このとき、図１９の時刻ｔｂ乃至ｔｃにおける一点鎖線Ｍ２で示されるように、時刻ｔａ乃至ｔｂにおけるときよりも緩やかな直線状にアップダウンカウンタ１６１のカウント値が変化する。ここで、図１９の時刻ｔｃのタイミングで示されるように、ステップＳ１６８において、切替カウンタＣが切替カウンタＣ２となり切替カウント値となったものとみなされると、ステップＳ１６９において最大値ではないとみなされて、ステップＳ１７０において、レートカウンタＭが１インクリメントされて、レートカウンタＭ＝３とされる。
【０１４２】
さらに、レートカウンタＭ＝３に対応して設定されている、所定の切替カウント値である切替カウンタＣ３までステップＳ１６４乃至Ｓ１６８が繰り返されて、レートカウンタＭ＝３に対応するカウントレートのクロック周波数のクロック信号でアップダウンカウンタ１６１のカウント値がカウントされる。このとき、図１９の時刻ｔｃ乃至ｔｄにおける一点鎖線Ｍ３で示されるように、時刻ｔｂ乃至ｔｃにおけるときよりも緩やかな直線状にアップダウンカウンタの値が変化する。ここで、図１９の時刻ｔｄのタイミングで示されるように、ステップＳ１６８において、切替カウンタＣが切替カウンタＣ３となり、切替カウント値となったものとみなされると、ステップＳ１６９において最大値ではないとみなされ、ステップＳ１７０において、レートカウンタＭが１インクリメントされて、レートカウンタＭ＝４とされる。
【０１４３】
また、再び、レートカウンタＭ＝４に対応して設定されている、所定の切替カウント値である切替カウンタＣ４までステップＳ１６４乃至Ｓ１６８が繰り返されて、レートカウンタＭ＝４に対応するカウントレートのクロック周波数のクロック信号でアップダウンカウンタ１６１のカウント値がカウントされる。このとき、図１９の時刻ｔｄ乃至ｔｅにおける一点鎖線Ｍ４で示されるように、時刻ｔｃ乃至ｔｄにおけるときよりも緩やかな直線状にアップダウンカウンタ１６１のカウント値が変化する。ここで、図１９の時刻ｔｅタイミングで示されるように、ステップＳ１６８において、切替カウンタＣが切替カウンタＣ４となり、切替カウント値となったものとみなされると、さらに、ステップＳ１６９において最大値であるとみなされる（図１９においては、最大値は256カウント）か、または、ステップＳ１６７において、クリア信号が供給されると、処理がステップＳ１６１に戻り、同様の処理が繰り返される。
【０１４４】
この処理により、例えば、時刻ｔａ乃至ｔｅまでの時間が1msであるものとすれば、図１９で示される擬似曲線（複数の区間ごとに異なるカウントレートとして設定された一次関数からなる傾きの異なる直線が連続して接続されることにより形成される擬似的な曲線）が連続して配置されることにより、図１９の実線で示されるような曲線に類似した波形を生成することが可能となる。
【０１４５】
このように、予め曲率設定部１７５にレートカウンタMに対応付けて記憶されている、カウントレートに対応するクロック周波数のクロック信号と、そのカウントレートでカウントされるべき期間を示す切替カウント値とにより、アップダウンカウンタ１６１のカウント値の変化を示す擬似曲線の曲率が設定される。尚、図１９においては、実線で示される曲線に対して、4本の直線により擬似曲線を実現させる例について説明してきたが、より多くの1次関数として示される直線を連結するように用いて、切り替えるようにしてもよく、直線数を増やすようにすることで、より曲線に類似した擬似曲線を実現することが可能となる。
【０１４６】
以上のような制御により、ステッピングモータのPPS（Pulse Par Second）制御を実現することが可能となる。PPS制御とは、１秒間に発生するパルス数により、位相の進度を制御するものである。そこで、一般に、カウンタ（アップダウンカウンタ１６１に相当するもの）によりPPS制御を行う場合、カウンタのカウント値＝１（最小値）において、1000PPS（1.000ms／パルス）が最高速であるものとし（1秒間に1000パルスが発生する状態を最高速であるものとし）、カウント値が最大値であるとき4PPSで最低速度であるものとすると以下のようになる。
【０１４７】
すなわち、カウンタのカウント値＝１の場合、1000PPS（1.000ms／パルス）となり、カウント値＝２の場合、996PPS（1.004ms／パルス）となり、カウント値＝３の場合、992PPS（1.008ms／パルス）となり、カウント値＝４の場合、988PPS（1.012ms／パルス）となり、・・・カウント値＝254の場合、12PPS（83.3ms／パルス）となり、カウント値＝255の場合、8PPS（125ms／パルス）となり、そして、カウント値＝256の場合、4PPS(最低速)（250ms／パルス）となる。
【０１４８】
以上の関係を纏めると、カウンタのカウント値と、各PPSのパルス周期は、逆数に比例した関係、すなわち、反比例の関係となる。このため、PPS制御に用いる場合、アップダウンカウンタ１６１では、擬似曲線での切替が実行されるため、図１１の上部で示されるような三角鋸波ではなく、図２０で示されるように、上に凸の略双曲線状の曲線となる。
【０１４９】
尚、図２０においては、カウントスイング幅は32768ステップ（アップダウンカウンタ１乃至２５６に対して、0乃至32768ステップとなる）であって、上昇時間が250msで１周期となり、カウントクリアする動作が表現されている。
【０１５０】
これに伴い、分周部１５１で発生される原発振の周波数は１乃至２MHz近傍のクロック信号が使用される。また、カウントアップの初期段階（図２０においては、０乃至128ステップ）における、約１msの期間はアップダウンカウンタ１６１のカウント値は０のままとされ、以降、設定値１，２，・・・と増加するに従い、パルス周期が４μsずつ増加し、1ms、1.004ms、1.008msと増加する。
【０１５１】
やがて、カウントクロック周波数が順次低速方向に切替り、設定値256で250msとなり、このような波形が、図１１の上部で示される鋸波状の波形と同様に繰り返される。
【０１５２】
結果として、より滑らかにステッピングモータの回転を制御することが可能となる。また、同一のクロック信号を共用化して複数の出力制御部２４で使用することで、複数のステッピングモータを同期しながら、滑らかに回転を制御することが可能となる。
【０１５３】
以上においては、比較部７３が、アップダウンカウンタのカウント値と、リミットカウント値との比較によりパルス信号を発生するクロック信号生成部５１の例について説明してきたが、例えば、リミットカウント値を、アップダウンカウンタの周波数よりも低い周波数で変化させるようにしてもよい。
【０１５４】
図２１のクロック信号生成部５１は、リミットカウント値を、アップダウンカウンタの周波数よりも低い周波数で変化させながら発生させるようにしたクロック信号生成部５１の構成例を示している。尚、図２１のクロック信号生成部５１において、図３のクロック信号生成部５１と同一の構成については、同一の符号を付しており、その説明は適宜省略するものとする。すなわち、図２１のクロック信号生成部５１において、図３のクロック信号生成部５１と異なる点は、分周部２３、アップダウンカウンタ７１、およびリミットカウンタ７２に代えて、分周部１９１、高周波アップダウンカウンタ２０３、低周波アップダウンカウンタ２０２、および周波数選択部２０１を備えた点である。
【０１５５】
高周波アップダウンカウンタ２０３は、アップダウンカウンタ７１と同一のものであり、分周部１９１より供給されてくる高い周波数である周波数ｆ０のクロック信号に対応してカウンタのカウント値をアップ、または、ダウンさせて、対応するカウント信号Ｋ１を比較部７３に供給する。尚、高周波アップダウンカウンタ２０３は、図２１において、低周波アップダウンカウンタ２０２との発生するクロック信号の周波数を区別するため、「高周波」と名称に付されているのみであって、実質的に同一のものである。
【０１５６】
低周波アップダウンカウンタ２０２は、リミットカウント生成部７２におけるリミット値を、高周波の周波数ｆ０と比較して、分周部１９１により発生される比較的低周波の周波数ｆ１，ｆ２，ｆ３のいずれか周波数選択部２０１により選択されたクロック信号に同期して、カウンタのカウント値をアップ、またはダウンさせて、リミット信号により規定されるリミットカウント値までカウントし、リミットカウント値に達すると、その値を維持すると共に、対応するカウント信号Ｋ２を比較部７３に供給する。
【０１５７】
尚、図２１のクロック信号生成部５１における動作については、図３におけるクロック信号生成部５１における動作と同様であるので、その説明は、省略するものとする。
【０１５８】
ただし、図２１のクロック信号生成部５１においては、リミットカウント値が周波数の低い周波数のクロック信号により変化するため、例えば、図２２の上部における点線で示されるように低周波アップダウンカウンタ２０２により、時刻ｔ２０３乃至ｔ２０６のタイミングでリミットカウント値が上昇するように設定すると、時刻ｔ２０１乃至ｔ２０２、および時刻ｔ２０２乃至ｔ２０３におけるパルス信号が発生される周期よりも、時刻ｔ２０３乃至ｔ２０４、時刻ｔ２０４乃至ｔ２０５、および時刻ｔ２０５乃至ｔ２０６において、それぞれ周期が徐々に延びることになり、ステッピングモータＭ１またはＭ２の回転速度は、時間の経過に伴って逐次低下することになり、再び低周波アップダウンカウンタ２０２から出力されるカウント値がリミットカウント値に到達して、その値が維持されて一定にされると、時刻ｔ２０６乃至ｔ２０７の間隔が維持された状態でパルス信号が発生される。
【０１５９】
このように、リミットカウント値を、アップダウンカウンタの周波数よりも低い周波数で変化させることにより、パルス信号の発生間隔（パルス信号による駆動信号の発生周期）を徐々に変化させることが可能となる。
【０１６０】
結果として、ステッピングモータの動作速度を、徐々に変化させながら制御することが可能となる。また、この速度変化は周波数選択部２０１により選択されるクロック信号の周波数により変化させることが可能であるので、指令データによりいずれのクロック信号を選択するのか指示するのみで、変化速度を切り替えることが可能となる。
【０１６１】
以上においては、駆動システムにおいて、複数の可動体を駆動させる例について説明してきたが、例えば、駆動させる対象は、可動体のみならず、例えば、図２３で示されるように、発光ダイオードなどを駆動させる装置を組み合わせた駆動装置であってもよい。
【０１６２】
図２３の駆動システムにおいては、可動体駆動装置１２に加えて、LED駆動装置２５１が設けられている。LED駆動装置２５１は、発光ダイオードＬＥＤ１乃至ＬＥＤ６の発光を制御している。可動体の駆動に際しては、CPU１１よりデバイスデータ、およびアドレスデータを付した指令データが供給されることにより、いずれのステッピングモータをどのような速度で回転させるかが指示されているが、デバイスデータとしてLED駆動装置２５１が識別可能なデータが含まれていれば、自らへの指令データであることは認識ができ、さらに、ステッピングモータへの回転を制御するにあたっては、各パルスの発生間隔により回転速度が制御されていたが、発光ダイオードなどについても、同様にそれぞれに電圧印加する頻度を指示すれば明るさを制御することができるので、同様の指令データにより発光を制御することができる。
【０１６３】
また、発光ダイオードのみならず、ソレノイドや、音声を発生させる音声発生装置などについても、同様のパルス信号の発生頻度を切り替えることで同様に制御することが可能である。
【０１６４】
以上の処理により、CPU１１から一旦指令データを受けるのみで、自発的に高度な動作を制御できるようにしたので、CPU１１の指令データの通信頻度や判断処理を低減させることが可能となり、CPU１１の処理負荷を低減させることが可能となる。
【０１６５】
また、モータ、ソレノイド、発光ダイオードの発光、および音声の発生などの駆動源の動作形式は、出力設定を予め変えるようにすることで様々なパターンで動作させることが可能となる。
【０１６６】
本発明によれば、複数の駆動源をより高度で、かつ複雑に動作させるように制御するにあたり、配線数を削減し、上位の制御装置による処理の負担を軽減することが可能となる。
【０１６７】
ところで、上述した一連の監視処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１６８】
図２４は、汎用のパーソナルコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)１００１を内蔵している。CPU１００１にはバス１００４を介して、入出力インタフェース１００５が接続されている。バス１００４には、ROM(Read Only Memory)１００２およびRAM(Random Access Memory)１００３が接続されている。
【０１６９】
入出力インタフェース１００５には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部１００６、処理操作画面や処理結果の画像を表示デバイスに出力する出力部１００７、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部１００８、LAN（Local Area Network）アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部１００９が接続されている。また、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ(Mini Disc)を含む）、もしくは半導体メモリなどのリムーバブルメディア１０１１に対してデータを読み書きするドライブ１０１０が接続されている。
【０１７０】
CPU１００１は、ROM１００２に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア１０１１から読み出されて記憶部１００８にインストールされ、記憶部１００８からRAM１００３にロードされたプログラムに従って各種の処理を実行する。RAM１００３にはまた、CPU１００１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１７１】
尚、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理は、もちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理を含むものである。
【０１７２】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【符号の説明】
【０１７３】
１１  CPU
１２，１２−１，１２−２  可動体駆動装置
２１  受信部
２２  動作制御部
２３  分周部
２４，２４−１，２４−２  出力制御部
４１  デバイス認識部
４２  アドレス認識部
４３  動作状況指定部
４４  選定部
５１，５１−１，５１−２  クロック信号生成部
５２，５２−１，５２−２  動作状況保持部
５３，５３−１，５３−２  出力波形生成部
８１，８１−１，８１−２  出力波形整形部
８２，８２−１，８２−２  出力部
８３，８３−１，８３−２  出力設定部
【図１】
2014073369.tif 000003
【図２】
2014073369.tif 000004
【図３】
2014073369.tif 000005
【図４】
2014073369.tif 000006
【図５】
2014073369.tif 000007
【図６】
2014073369.tif 000008
【図７】
2014073369.tif 000009
【図８】
2014073369.tif 000010
【図９】
2014073369.tif 000011
【図１０】
2014073369.tif 000012
【図１１】
2014073369.tif 000013
【図１２】
2014073369.tif 000014
【図１３】
2014073369.tif 000015
【図１４】
2014073369.tif 000016
【図１５】
2014073369.tif 000017
【図１６】
2014073369.tif 000018
【図１７】
2014073369.tif 000019
【図１８】
2014073369.tif 000020
【図１９】
2014073369.tif 000021
【図２０】
2014073369.tif 000022
【図２１】
2014073369.tif 000023
【図２２】
2014073369.tif 000024
【図２３】
2014073369.tif 000025
【図２４】
2014073369.tif 000026