(57)【特許請求の範囲】
【請求項１】
遊技機本体と、
前記遊技機本体の前面に、所定の移動可能範囲内で移動可能に配置される可動体と、
前記可動体を駆動する駆動ユニットと、
前記駆動ユニットを制御する可動体駆動装置と、
遊技の状態に応じた演出を制御する演出制御部とを有し、
前記演出制御部は、前記遊技の状態に応じて、前記可動体の速度制御方法を規定する第１のモード及び第２のモードのうちの適用されるモードを指定するフラグと、前記可動体の移動目的地とを規定する制御コマンドを生成し、当該制御コマンドを前記可動体駆動装置へシリアル伝送し、
前記可動体駆動装置は、
前記制御コマンドを受信する通信部と、
前記可動体の現在位置を記憶する記憶部と、
前記移動目的地と前記現在位置との差、または前記可動体の直前の動作における移動方向に基づいて、前記可動体の次の動作における移動方向を決定し、当該次の動作における移動方向に沿って前記可動体が前記移動目的地に達するまで、前記フラグで指定された、前記第１のモード及び前記第２のモードのうちの適用されるモードに従って前記可動体を移動させるように、前記駆動ユニットを制御する制御部と、
を有し、
前記第１のモードは、前記制御コマンドに含まれる前記可動体の移動速度を規定する情報に従って、前記可動体が前記移動目的地に達するまで前記可動体を前記移動速度で移動させるモードであり、
前記第２のモードは、前記制御コマンドに含まれる前記可動体の減速度を規定する情報に従って、前記可動体が前記移動目的地に達するよりも前に前記減速度に従って前記可動体を減速させるモードである
ことを特徴とする遊技機。
【請求項２】
前記駆動ユニットはステッピングモータであり、
前記フラグは、前記適用されるモードとして前記第２のモードを指定し、前記制御コマンドは、前記ステッピングモータの回転速度を表す第１の指標と前記ステッピングモータの減速度を表す第２の指標とを含み、
前記制御部は、前記可動体が、前記現在位置から前記ステッピングモータの第１のステップ数に対応する距離を移動するまで、前記第２の指標により示された減速度で前記ステッピングモータの回転速度を減速させ、当該距離を移動した時点で前記第１の指標により示された回転速度となるように前記ステッピングモータを制御する、請求項１に記載の遊技機。
【請求項３】
前記駆動ユニットはステッピングモータであり、
前記フラグは、前記適用されるモードとして前記第２のモードを指定し、前記制御コマンドは、前記ステッピングモータの回転速度を表す第１の指標と前記ステッピングモータの減速度を表す第２の指標とを含み、
前記制御部は、前記可動体が、前記ステッピングモータの第２のステップ数に対応する距離よりも前記移動目的地に近づくと、前記第２の指標により示された減速度で前記ステッピングモータの回転速度を減速し、当該移動目的地に達した時点で当該回転速度が前記第１の指標により示された回転速度となるように前記ステッピングモータを制御する、請求項１に記載の遊技機。
【請求項４】
前記駆動ユニットはステッピングモータであり、
前記フラグは、前記適用されるモードとして前記第２のモードを指定し、前記制御コマンドは、前記ステッピングモータの回転速度を表す第１の指標と前記ステッピングモータの減速度を表す第３の指標とを含み、
前記制御部は、前記可動体が、前記ステッピングモータの第３のステップ数に対応する距離よりも前記移動目的地に近づくと、前記第３の指標により示された減速度で前記ステッピングモータの回転速度を減速し、当該移動目的地に達した時点で当該回転速度が0となるように前記ステッピングモータを制御する、請求項１に記載の遊技機。
【請求項５】
前記駆動ユニットはステッピングモータであり、
前記制御コマンドは、前記ステッピングモータの1ステップの動作に相当する第１の期間に対する前記ステッピングモータに電圧を印加する期間の比を表す第４の指標を含み、
前記可動体駆動装置は、
前記第１の期間よりも短い第２の期間を1周期とし、当該第２の期間において、前記第４の指標に表された前記比だけ所定の電圧値を持つパルスが連続する連続パルス信号を生成するデューティ比制御部をさらに有し、
前記制御部は、前記連続パルス信号によって、前記ステッピングモータのステップごとの動作を制御する駆動信号をパルス幅変調し、当該パルス幅変調された駆動信号を前記ステッピングモータへ出力する、
請求項１〜４の何れか一項に記載の遊技機。
【請求項６】
前記制御コマンドに含まれる前記移動目的地は、前記現在位置を基準とする移動量で表され、
前記記憶部は、前記可動体の直前の動作時の位置をさらに記憶し、
前記制御部は、前記直前の動作時の位置と前記現在位置との差によって前記可動体の直前の動作における移動方向を求める、請求項１〜５の何れか一項に記載の遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、可動体を駆動するための可動体駆動装置を有する遊技機に関する。
【背景技術】
【０００２】
回胴遊技機または弾球遊技機などの遊技機には、遊技者の興趣を高めるために、遊技者の視覚、聴覚または感覚に訴える演出を行うための工夫が凝らされている。特に、遊技者の視覚に訴える演出を行うために、遊技機には、移動する可動体、例えば、可動役物が設けられることがある。このような可動体は、例えば、ステッピングモータによって駆動される。そして上位の制御装置の一例である演出用のプロセッサユニット（以下、単に演出用CPUと呼ぶ）が、遊技の状態に応じて可動体が指定された位置へ移動する移動量に相当するステップ数だけステッピングモータを回転させる命令を、ステッピングモータの制御回路へ送信する。
【０００３】
また近年、遊技者の興趣を高めるために、遊技機に搭載される、演出用CPUの制御対象が増加する傾向にある。例えば、遊技機には、可動役物の他、多数の光源及び液晶ディスプレイといった表示装置が搭載される。そのため、演出用CPUから出力される端子の数、及び演出用CPUの演算量といった負荷も増大する傾向にある。そこで、可動体に所望の動作をさせるための演算に要する演算量を軽減することが望まれている。このような要望に対して、ステッピングモータの制御に要するハードウェアまたはソフトウェアのリソースを削減させるための技術が開発されている（例えば、特許文献１及び２を参照）。
【０００４】
例えば、特許文献１に開示されたステッピングモータ駆動制御装置は、正転／逆転、スピード切替、モード切替などの入力信号に応じた４相の駆動制御信号をマイクロコンピュータが生成することにより、回路部品を増やすことなく励磁方法、回転方向、回転速度などの変更を実現できるようにしている。
また、特許文献２に開示された可動体駆動装置は、可動体の動作結果を上位の制御装置へ送信し、その制御装置からの指令、または動作結果に基づいて、駆動手段により可動体を駆動させる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−１８９５９７号公報
【特許文献２】特開２００９−２４７８３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１及び２に開示された技術では、演出用CPUが可動体を所望の移動目的地へ移動させるには、演出用CPU自体が可動体の現在位置を把握していなければならない。そのために、演出用CPUは、可動体を移動させる度に、可動体の現在位置に関する情報を、ステッピングモータの制御回路、あるいは、可動体の位置を検出するためのセンサから受信する必要がある。また演出用CPUは、可動体の現在位置の座標と移動目的地の座標との差に基づいて、可動体を駆動するステッピングモータの回転方向、ステップ数などを決定するための演算を行う必要があった。このように、演出用CPUは、可動体を移動させる度に、可動体の現在位置に関する情報の受信、及びステッピングモータの回転方向、ステップ数などを決定するための処理を行わなければならない。そのため、可動体を駆動するに際し、演出用CPUといった上位の制御装置の負荷のさらなる軽減が要望されている。
【０００７】
そこで、本発明は、可動体の駆動についての上位の制御装置の負荷を軽減可能な遊技機を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一つの形態として、遊技機本体と、遊技機本体の前面に、所定の移動可能範囲内で移動可能に配置される可動体と、可動体を駆動する駆動ユニットと、駆動ユニットを制御する可動体駆動装置と、遊技の状態に応じた演出を制御する演出制御部とを有する遊技機が提供される。
この遊技機において、演出制御部は、遊技の状態に応じて、可動体の移動目的地を規定する制御コマンドを生成し、その制御コマンドを可動体駆動装置へシリアル伝送する。そして可動体駆動装置は、制御コマンドを受信する通信部と、可動体の現在位置を記憶する記憶部と、その可動体の移動目的地と現在位置との差、またはその可動体の直前の動作における移動方向に基づいて、可動体の次の動作における移動方向を決定し、次の動作における移動方向に沿って可動体が移動目的地に達するまで可動体を移動させるように、可動を駆動する駆動ユニットを制御する制御部とを有する。
【０００９】
この遊技機において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの回転速度を表す第１の指標とステッピングモータの加速度または減速度を表す第２の指標とを含み、可動体駆動装置の制御部は、可動体が、現在位置からステッピングモータの第１のステップ数に対応する距離を移動するまで、第２の指標により示された加速度または減速度でステッピングモータの回転速度を加速または減速させ、その距離を移動した時点で第１の指標により示された回転速度となるようにステッピングモータを制御することが好ましい。
【００１０】
また、この遊技機において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの回転速度を表す第１の指標とステッピングモータの加速度または減速度を表す第２の指標とを含み、可動体駆動装置の制御部は、可動体が、ステッピングモータの第２のステップ数に対応する距離よりも移動目的地に近づくと、第２の指標により示された加速度または減速度でステッピングモータの回転速度を加速または減速し、移動目的地に達した時点でその回転速度が第１の指標により示された回転速度となるようにステッピングモータを制御することが好ましい。
【００１１】
あるいはまた、この遊技機において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの回転速度を表す第１の指標とステッピングモータの減速度を表す第３の指標とを含み、可動体駆動装置の制御部は、可動体が、ステッピングモータの第３のステップ数に対応する距離よりも移動目的地に近づくと、第３の指標により示された減速度でステッピングモータの回転速度を減速し、移動目的地に達した時点で回転速度が0となるようにステッピングモータを制御することが好ましい。
【００１２】
さらに、この遊技機において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの1ステップの動作に相当する第１の期間に対するステッピングモータに電圧を印加する期間の比を表す第４の指標を含むことが好ましい。この場合において、可動体駆動装置は、第１の期間よりも短い第２の期間を1周期とし、第２の期間において、第４の指標に表された比だけ所定の電圧値を持つパルスが連続する連続パルス信号を生成するデューティ比制御部をさらに有することが好ましい。そして可動体駆動装置の制御部は、連続パルス信号によって、ステッピングモータのステップごとの動作を制御する駆動信号をパルス幅変調し、そのパルス幅変調された駆動信号をステッピングモータへ出力することが好ましい。
【００１３】
さらに、この遊技機において、制御コマンドに規定される移動目的地は、現在位置を基準とする可動体の移動量で表され、可動体駆動装置の記憶部は、可動体の直前の動作時の位置をさらに記憶し、可動体駆動装置の制御部は、直前の動作時の位置と現在位置との差によって可動体の直前の動作における移動方向を求めることが好ましい。
【発明の効果】
【００１４】
本発明に係る遊技機は、可動体の駆動についての上位の制御装置の負荷を軽減できるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】本発明の一つの実施形態に係る可動体駆動装置の概略構成図である。
【図２】（ａ）は、絶対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。（ｂ）は、相対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。（ｃ）は、慣性移動モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。
【図３】動作情報を含む制御コマンドのフォーマットの一例を示す図である。
【図４】（ａ）は、設定情報を含む制御コマンドのフォーマットの一例を示す図であり、（ｂ）は、個別設定モードで規定されている場合の設定データのフォーマットの一例を示す図であり、（ｃ）は、初期設定モードで規定されている場合の設定データのフォーマットの一例を示す図である。
【図５】ステッピングモータの制御に用いられるコマンドセットの書き込みと実行順序の関係を示す概念図である。
【図６】（ａ）は、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図であり、（ｂ）は、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。
【図７】（ａ）は、変形例による、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図であり、（ｂ）は、変形例による、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。
【図８】本発明の一つの実施形態に係る可動体装置を備えた弾球遊技機の概略斜視図である。
【図９】本発明の一つの実施形態に係る可動体駆動装置を備えた弾球遊技機の概略背面図である。
【図１０】（ａ）は、固定役物部を透過して見た、可動役物部の概略正面図であり、（ｂ）は、固定役物部の背面側から見た、可動役物部が移動可能範囲の一端に位置する場合の概略背面図であり、（ｃ）は、固定役物部の背面側から見た、可動役物部が移動可能範囲の他端に位置する場合の概略背面図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態による遊技機が備える可動体駆動装置を、図を参照しつつ説明する。この可動体駆動装置は、可動体の位置を検出するセンサからの検知信号及び可動体を駆動するステッピングモータといった駆動ユニットの動作に基づいて、可動体の現在位置を求め、その現在位置を記憶する。そしてこの可動体駆動装置は、演出用CPUといった上位の制御装置から受信した、可動体の移動目的地を表す情報と可動体の現在位置との差、あるいは、可動体の現在位置における直前の動作の際の移動方向に基づいて、可動体の移動方向を決定し、その移動目的地に達するまで可動体を駆動する。これにより、この可動体駆動装置は、上位の制御装置が可動体の現在位置を把握していなくても、可動体を所望の移動目的地まで移動させることを可能として、上位の制御装置の負荷を軽減する。
【００１７】
図１は、本発明の一つの実施形態に係る可動体駆動装置の概略構成図である。図１に示されるように、可動体駆動装置１は、通信回路２と、レジスタ３と、デューティ比制御回路４と、センサインターフェース部５と、モータ制御回路６と、ソレノイド制御回路７と、を有する。
可動体駆動装置１が有するこれらの各部は、それぞれ、別個の回路として回路基板（図示せず）上に実装されてもよく、あるいは、これらの各部が集積された集積回路として回路基板上に実装されてもよい。
本実施形態では、可動体駆動装置１は、複数の駆動ユニットを制御する機能を持つ。複数の駆動ユニットのそれぞれは、二つのステッピングモータと、一つのソレノイドである。ソレノイドは、例えば、コイルを励磁することにより、磁性体からなる可動体を吸引することによって、その可動体を駆動する。そのため、例えば、ソレノイドは、可動体の移動可能範囲に沿って、互いに異なる位置に配置された複数のコイルを有し、それらコイルが、可動体の移動方向に沿って順次励起されることにより、可動体がその移動方向に沿って移動する。
【００１８】
また、可動体駆動装置１では、ステッピングモータにて駆動する可動体に関する移動目的地の座標の指定方法として、移動目的地の座標を絶対座標値で指定する絶対座標指定モードと、移動目的地の座標を現在位置を基準とする相対的な移動量及び移動方向で指定する相対座標指定モードと、可動体の移動目的地の座標を現在位置を基準とする相対的な移動量のみで指定する慣性移動モードとがある。そこで先ず、これらのモードについて説明する。
【００１９】
図２（ａ）は、絶対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。図２（ｂ）は、相対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。さらに図２（ｃ）は、慣性移動モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。図２（ａ）〜図２（ｃ）において、横軸は、可動体の位置座標を、ステッピングモータのステップ数(-1023〜1022)で表す。またこの例では、可動体は水平方向に沿って直線的に移動するが、可動体駆動装置１により駆動される可動体は、任意の方法に沿って直線的に移動するものでもよく、あるいは、回転移動するものであってもよい。
【００２０】
図２（ａ）に示す絶対座標指定モードでは、座標２０２が可動体の現在位置である場合のように、絶対座標で指定された移動目的地の座標２０１よりも可動体の現在位置が右側に位置すれば、可動体駆動装置１は、移動目的地の座標と現在位置の座標との比較結果に基づいて、可動体の移動方向を左方向と判定する。そして可動体駆動装置１は、演出用CPUが可動体の移動方向を指定しなくても、可動体を、移動目的地に達するまで自動的に左方向に移動させる。逆に、座標２０３が可動体の現在位置である場合のように、絶対座標で指定された移動目的地の座標２０１よりも可動体の現在位置が左側に位置する場合、可動体駆動装置１は、可動体の移動方向を右方向と判定し、可動体を、移動目的地に達するまで自動的に右方向に移動させる。
【００２１】
図２（ｂ）に示す相対座標指定モードでは、演出用CPUは、可動体の現在位置に対する相対的な移動量と移動方向により、移動目的地を指定する。相対的な移動量は、例えば、ステッピングモータのステップ数で表される。また移動方向は、ステップ数の符号(+または-)により表される。例えば、可動体の現在位置の座標２１１に対して、相対的な移動方向及び移動量として+mステップ(mは正の整数)が指定されると、可動体駆動装置１は、可動体を右方向へmステップ分移動させる。また、可動体の現在位置の座標２１１に対して、相対的な移動方向及び移動量として-nステップ(nは正の整数)が指定されると、可動体駆動装置１は、可動体を左方向へnステップ分移動させる。
【００２２】
図２（ｃ）に示す慣性移動モードでは、演出用CPUは、可動体の現在位置に対する相対的な移動量のみを指定する。このモードでは、可動体駆動装置１は、可動体の直前の動作における移動方向を次の動作の移動方向とし、現在位置２２１から指定された移動量kステップ(kは正の整数)だけ可動体を移動させる。これにより、可動体駆動装置１は、可動体の移動方向を急激に変化させずに、可動体を静止させることができる。この慣性移動モードは、例えば、可動体を緊急停止させる場合に適用される。
【００２３】
演出用CPUは、ステッピングモータにより駆動される各可動体について、上記の何れかのモードに従って可動体の移動目的地を指定する制御コマンドを生成し、その制御コマンドを可動体駆動装置１へ送信することで、可動体をその移動目的地へ移動させることができる。
以下、可動体駆動装置１の各部について説明する。
【００２４】
通信回路２は、例えば、可動体駆動装置１が実装された遊技機の演出用CPUと可動体駆動装置１とを接続する。そして通信回路２は、演出用CPUから、シリアル伝送される複数のビットを持つ制御コマンドと、制御コマンドを解析するために、制御コマンドに含まれる複数のビットのそれぞれと同期を取るためのクロック信号とを受信する。
制御コマンドは、例えば、何れかの駆動ユニットが駆動する可動体の動作を特定するための動作情報またはその駆動ユニットについての設定を規定する設定情報とを含む。一つの駆動ユニットに対する、動作情報と設定情報の組を、便宜上、以下ではコマンドセットと呼ぶ。一つのコマンドセットは、可動体の一つの動作を規定する。
クロック信号は、例えば、制御コマンド中の所定数のビットごとに、矩形状のパルスを持つ信号とすることができる。
【００２５】
図３は、駆動ユニットがステッピングモータである場合における、動作情報を含む制御コマンドのフォーマットの一例を示す図である。制御コマンド３００は、先頭から順に、STARTフラグ３０１と、デバイスアドレス３０２と、動作／設定切替フラグ３０３と、系統指定フラグ３０４と、制御データ３０５と、ENDフラグ３０６とを有する。さらに、制御コマンド３００は、隣接するフラグ、アドレス及びデータ間に、例えば'0'の値を持つ1ビットのスペーサを含んでもよい。
【００２６】
STARTフラグ３０１は、制御コマンド３００の先頭であることを表すビット列であり、本実施形態では、'1'の値を持つ9個のビットが連続したビット列である。なお、STARTフラグ３０１は、制御コマンド３００内の任意の他の何れのビット列とも一致しないビット列であればよい。
デバイスアドレス３０２は、制御コマンド３００が制御対象とする可動体駆動装置を特定するための識別情報であり、本実施形態では、8ビット長のビット列で表される。デバイスアドレス３０２は、通信回路２により、演出用CPUから別途受信する識別アドレスと一致するか否か判定され、一致する場合、可動体駆動装置１が制御コマンド３００の制御対象であると判定される。
【００２７】
動作／設定切替フラグ３０３は、制御コマンドが動作情報を含むか設定情報を含むかを表す1ビットのフラグである。本実施形態では、動作／設定切替フラグ３０３が'0'であれば、制御コマンドは動作情報を含み、動作／設定切替フラグ３０３が'1'であれば、制御コマンドは設定情報を含む。図３の例では、制御コマンド３００は動作情報を含むので、動作／設定切替フラグ３０３は'0'である。
系統指定フラグ３０４は、制御コマンド３００の制御対象が、可動体駆動装置１が制御可能な二つのステッピングモータのうちの何れであるかを表す1ビットのフラグである。
【００２８】
制御データ３０５は、可動体駆動装置１が制御するステッピングモータの動作情報を含む。具体的には、制御データ３０５は、速度データ３０５１と、保存先指定フラグ３０５２と、ウェイトフラグ３０５３と、自動補正フラグ３０５４と、自動加減速フラグ３０５５と、座標指定モードフラグ３０５６と、座標データ３０５７とを含む。
【００２９】
速度データ３０５１は、ステッピングモータの回転速度を表す。本実施形態では、速度データ３０５１は6ビット長のビット列であり、'0'〜'63'の何れかの値となる。速度データ３０５１が'0'であればステッピングモータが停止、すなわち、そのステッピングモータで駆動される可動体が停止することを表し、速度データ３０５１が'1'〜'63'であれば、その速度データ３０５１の値に対応する回転速度でステッピングモータを回転させることを表す。
【００３０】
保存先指定フラグ３０５２は、レジスタ３内の動作情報の保存先を指定する1ビットのフラグである。本実施形態では、保存先指定フラグ３０５２が'0'であれば、レジスタ３内の通常の可動体の動作を規定するコマンドセットを記憶する第１メモリ回路３１に動作情報が格納され、一方、保存先指定フラグ３０５２が'1'であれば、レジスタ３内の緊急停止時の可動体の動作を規定するコマンドセットを記憶する第２メモリ回路３２に動作情報が格納される。
【００３１】
ウェイトフラグ３０５３は、ステッピングモータを指定された期間だけ停止させるウェイトモードか否かを表す1ビットのフラグである。本実施形態では、ウェイトフラグ３０５３が'0'であれば、ウェイトモードはOFFとなり、速度データ３０５１に指定された回転速度及び座標データ３０５７に指定されたステップ数にしたがって、可動体駆動装置１がステッピングモータを制御する。一方、ウェイトフラグ３０５３が'1'であれば、ウェイトモードがONとなり、速度データ３０５１に指定された回転速度に相当する1ステップの動作期間に、座標データ３０５７に指定されたステップ数を乗じた値に相当する期間、ステッピングモータを停止させることを表す。このようなウェイトモードを用いることにより、例えば、特定方向に沿って移動していた可動体をその特定方向の逆方向へ反転移動させるような場合に、その反転直前にウェイトモードで指定した期間、可動体を一時停止させることで、可動体駆動装置１は、ステッピングモータに過負荷が掛かることを防止できる。そのため、可動体駆動装置１は、ステッピングモータの回転に可動体が追従しなくなったり、ステッピングモータが脱調することを防止できる。
【００３２】
自動補正フラグ３０５４は、可動体の位置を検知するセンサ（図示せず）からの検知信号によって可動体の現在位置を自動的に補正するか否かを表す1ビットのフラグである。本実施形態では、自動補正フラグ３０５４が'0'であれば、可動体駆動装置１は可動体の現在位置を補正せず、一方、自動補正フラグ３０５４が'1'であれば、可動体駆動装置１は、センサからの検知信号を受信したときに可動体の現在位置を補正する。
【００３３】
自動加減速フラグ３０５５は、可動体の移動開始時または移動終了時に自動的に加速または減速する自動加減速モードがONかOFFかを表す1ビットのフラグである。本実施形態では、自動加減速フラグ３０５５が'0'であれば、自動加減速モードがOFFとなり、可動体駆動装置１は、可動体の移動開始直後から移動終了時点まで、速度データ３０５１で指定された回転速度でその可動体を駆動するステッピングモータを回転させる。一方、自動加減速フラグ３０５５が'1'であれば、自動加減速モードがONとなり、可動体駆動装置１は、可動体の移動開始直後、または移動終了直前において、別途指定された加速値または減速値に従って、ステッピングモータの回転速度を調節する。なお、自動加減速モードがONの時の動作の詳細は後述する。
【００３４】
座標指定モードフラグ３０５６は、座標データ３０５７に規定される移動目的地の指定方法を規定するモードを表す1ビットのフラグである。本実施形態では、座標指定モードフラグ３０５６が'0'であれば、移動目的地の座標が絶対座標値であること（すなわち、絶対座標指定モードが適用されること）を表し、一方、座標指定モードフラグ３０５６が'1'であれば、移動目的地の座標が現在位置の座標を基準とする相対的な移動量であること（すなわち、相対座標指定モードまたは慣性移動モードが適用されること）を表す。なお、保存先指定フラグ３０５２が'0'であれば、相対座標指定モードであり、保存先指定フラグ３０５２が'1'であれば、慣性移動モードである。
【００３５】
座標データ３０５７は、移動目的地の座標をステッピングモータのステップ数で表す。本実施形態では、座標データ３０５７は、11ビット長を持つビット列であり、移動目的地の座標を-1024〜1023の何れかのステップ数で表す。なお、慣性移動モードが適用される場合には、移動量のみが規定されるので、座標データ３０５７は0〜1023の何れかの値となる。
【００３６】
ENDフラグ３０６は、制御コマンド３００の終端であることを表すビット列である。ENDフラグ３０６は、制御コマンドに含まれる、STARTフラグ及び他のビット列と一致しないビット列であればよい。
【００３７】
図４（ａ）は、駆動ユニットがステッピングモータである場合における、設定情報を含む制御コマンドのフォーマットの一例を示す図である。制御コマンド４００は、先頭から順に、STARTフラグ４０１と、デバイスアドレス４０２と、動作／設定切替フラグ４０３と、系統指定フラグ４０４と、制御データ４０５と、ENDフラグ４０６とを有する。設定情報を含む制御コマンド４００は、図３に示された動作情報を含む制御コマンド３００と比較して、動作／設定切替フラグ４０３の値が'1'であること、及び制御データ４０５の内容が異なる。そこで以下では、制御データ４０５について説明する。
【００３８】
制御データ４０５は、２ビット長を持つ設定モードフラグ４０５１と、設定データ４０５２とを含む。
設定モードフラグ４０５１は、個別コマンドごとの設定を行う個別設定モードか、全ての制御コマンドに共通の設定を行う初期設定モードかを規定する。本実施形態では、設定モードフラグ４０５１が'00'であれば、個別設定モードであることを表し、一方、設定モードフラグ４０５１が'01'であれば初期設定モードであることを表す。
【００３９】
図４（ｂ）は、設定データ４０５２が個別設定モードで規定されている場合の設定データ４０５２のフォーマットの一例を示す図である。個別設定モードにおいて、設定データ４０５２は、先頭から順に、保存先指定フラグ４０５３と、停止時トルク４０５４と、動作時トルク４０５５と、励磁モードフラグ４０５６と、加速度データ４０５７とを含む。
【００４０】
保存先指定フラグ４０５３は、図３に示された保存先指定フラグ３０５２と同様に、レジスタ３内の設定情報の保存先を指定する1ビットのフラグである。本実施形態では、保存先指定フラグ４０５３が'0'であれば、レジスタ３内の第１メモリ回路３１に設定情報が格納され、一方、保存先指定フラグ４０５２が'1'であれば、レジスタ３内の第２メモリ回路３２に設定情報が格納される。
【００４１】
停止時トルク４０５４は、3ビット長を持ち、ステッピングモータが停止している際における、ステッピングモータの1ステップ分の動作期間に占める、実際に電圧を印加する期間のデューティ比（以下、停止時デューティ比と呼ぶ）を表す。そして本実施形態では、停止時トルク４０５４の値が大きいほど、停止時デューテイ比も高くなり、その結果としてステッピングモータを現在のステップのまま維持させるためのトルクも大きくなる。本実施形態では、停止時トルク４０５４は3ビット長を持つので、停止時デューティ比は8段階で規定される。例えば、停止時トルク４０５４の値が'000'であれば、停止時デューティ比は0、すなわち、ステッピングモータに電圧が印加されず、トルクも0であることを表す。一方、停止時トルク４０５４が'111'であれば、停止時デューティ比は1となる。
【００４２】
動作時トルク４０５５は、2ビット長を持ち、ステッピングモータが回転している際における、ステッピングモータに1ステップ分の動作期間に占める、実際に電圧を印加する期間のデューティ比（以下、動作時デューティ比と呼ぶ）を表す。そして本実施形態では、動作時トルク４０５５の値が大きいほど、動作時デューテイ比も高くなり、その結果としてステッピングモータを回転させるトルクも大きくなる。本実施形態では、動作時トルク４０５５は2ビット長を持つので、動作時デューティ比は4段階で規定される。例えば、動作時トルク４０５５が'00'であれば、動作時デューティ比は0.5となる。一方、動作時トルク４０５５が'11'であれば、動作時デューティ比は1となる。
【００４３】
励磁モードフラグ４０５６は、2ビット長を持ち、ステッピングモータの励磁方法を規定する。本実施形態では、励磁モードフラグ４０５６が'00'であれば2相励磁、'01'であれば1-2相励磁、'10'であればW1-2相励磁、'11'であれば2W1-2相励磁であることを表す。なお、ステッピングモータの励磁方法として、上記以外の励磁方法が採用されてもよい。
加速度データ４０５７は、4ビット長を持ち、自動加減速モードがONである場合の加速度を表す。
【００４４】
図４（ｃ）は、設定データ４０５２が初期設定モードで規定されている場合の設定データ４０５２のフォーマットの一例を示す図である。この場合において、設定データ４０５２は、先頭から順に、デフォルト動作設定フラグ４０５８と、停止時トルク４０５４と、動作時トルク４０５５と、励磁モードフラグ４０５６と、加速度データ４０５７と、減速度データ４０５９とを含む。
なお、停止時トルク４０５４、動作時トルク４０５５、励磁モードフラグ４０５６及び加速度データ４０５７は、図４（ｂ）に示された対応するデータと同一であるので、説明を省略する。
【００４５】
デフォルト動作設定フラグ４０５８は、設定データ４０５２に含まれる設定情報が、レジスタ３に格納された動作情報に対応する個別の設定情報が規定されない場合に適用されるデフォルト設定情報か否かを表す1ビットのフラグである。本実施形態では、デフォルト動作設定フラグ４０５８が'0'であれば、設定データ４０５２に含まれる設定情報がデフォルト設定情報であることを表す。
減速度データ４０５９は、4ビット長を持ち、自動加減速モードがONである場合の減速度を表す。
【００４６】
さらに、設定データ４０５２は、可動体の位置を検知するセンサから検知信号が入力されたときの可動体の位置座標、一つの可動体に対して複数のセンサが設置される場合に、何れのセンサについての位置座標かを指定するフラグなどを規定するデータを含んでいてもよい。
また、駆動ユニットがソレノイドである場合の制御コマンドは、可動体の移動目的地または移動方向、ソレノイドが有する各コイルへ出力される励磁信号のデューティ比などを規定するデータを含んでもよい。
【００４７】
さらに、通信回路２は、演出用CPUから、制御コマンドが制御対象とする可動体駆動装置を特定するための識別アドレスを受信する。そして通信回路２は、識別アドレスと、制御コマンド中に含まれるデバイスアドレスとが一致する場合、その制御コマンドに含まれる動作情報または設定情報をレジスタ３に書き込む。一方、通信回路２は、識別アドレスとデバイスアドレスとが一致しない場合、受信した制御コマンドを廃棄する。
通信回路２は、識別アドレスと制御コマンドを受信するタイミングが異なっていても、識別アドレスとデバイスアドレスとが一致するか否かを判定できるようにするために、識別アドレスを記憶するメモリ回路を有していてもよい。
【００４８】
さらに、通信回路２は、可動体を緊急停止させるためのロードコマンドを演出用CPUから受け取ると、レジスタ３に格納されている緊急停止用の動作情報及び設定情報を、デューティ比制御回路４及びモータ制御回路６へ出力させる。なお、ロードコマンドのフォーマットは、上記の制御コマンドとは別個のフォーマットであってもよい。例えば、ロードコマンドは、先頭から順に、ロードコマンドであることを表す識別コードと、対象となる可動体を表すフラグを含む。識別コードは、例えば、上記の制御コマンドの何れの部分とも一致しないビット列であればよい。
【００４９】
さらに、通信回路２は、可動体駆動装置１が制御する駆動ユニットの何れかについて、レジスタ３に記憶されているコマンドセットが一つ実行される度に、そのコマンドセットが実行されたことを示す命令完了信号を演出用CPUへ出力する。命令完了信号は、例えば、駆動ユニットごとに設定される通信線を介して出力される、単パルス信号とすることができる。あるいは、命令完了信号は、駆動ユニットに応じて異なる数のパルスを持つ信号であり、各駆動ユニット共通の信号線を介して演出用CPUへ出力されるものでもよい。
さらに、通信回路２は、演出用CPUから、レジスタ３に格納されているコマンドセットを読み出すコマンドを受信すると、レジスタ３に格納されている全てのコマンドセットを読み出して、演出用CPUへ送信するようにしてもよい。
【００５０】
レジスタ３は、各駆動ユニットのコマンドセットを複数個記憶可能な記憶容量を持つ、いわゆる先入れ先出し(FIFO)方式の第１メモリ回路３１と、駆動ユニットごとに緊急停止時のコマンドセット及びデフォルト設定情報を記憶可能な第２メモリ回路３２とを有する。レジスタ３が有するこれらのメモリ回路は、例えば、揮発性の読み書き可能な半導体メモリ回路により構成される。
【００５１】
レジスタ３は、受信した制御コマンドに含まれる保存先指定フラグが通常の動作を規定することを表す値であれば、第１メモリ回路３１に、その制御コマンドに含まれる動作情報または設定情報を書き込む。その際、レジスタ３は、注目する可動体について、一つの動作情報を受け取ってから次の動作情報を受け取るまでに、その可動体についての設定情報を受け取れば、その動作情報と設定情報を一つのコマンドセットとする。一方、レジスタ３は、注目する可動体についての一つの動作情報を受け取ってから次の動作情報を受け取るまでに、その可動体についての設定情報を受け取らなかった場合、その動作情報が読み出される際に、第２メモリ回路３２に格納されているデフォルトの設定情報を第１メモリ回路３１にコピーして、その動作情報とのコマンドセットを作成する。
【００５２】
図５は、ステッピングモータを制御するためのコマンドセットの書き込みと実行順序の関係を示す概念図である。なお、図５では、一つのステッピングモータに対するコマンドセットのみを図示している。レジスタ３は、可動体駆動装置１が制御するステッピングモータごとに、図５に示されるようなコマンドセットを記憶する。
図５において、第１メモリ回路３１に記憶される各コマンドセット５０１〜５０５は、それぞれ、動作情報と設定情報とを含む。また、下側に位置するコマンドセットほど、先に書き込まれたものとする。したがって、この例では、コマンドセット５０１が最も先に書き込まれたものであり、コマンドセット５０５が最も後に書き込まれたものである。各コマンドセットは、それぞれ、バッファ５１１〜５１５の何れかに格納されている。そして一番読み出し側に近いバッファ（図５では、一番下側のバッファ５１１）からコマンドセットが読み出され、そのコマンドセットがデューティ比制御回路４とモータ制御回路６とに転送される。そしてそのコマンドセットに従って駆動ユニットが制御されることにより、可動体が駆動される。一つのコマンドセットが実行される度に、各コマンドセットは、一つ読み出し側のバッファに転送される。なお、全てのバッファにコマンドセットが格納されている状態で、さらに次の動作情報または設定情報をレジスタ３が受け取ると、書き込み側に最も近いバッファ５１５に格納されている動作情報または設定情報が、新たに受信した動作情報または設定情報に書き換えられる。
【００５３】
また、第２メモリ回路３２には、緊急停止用のコマンドセット５０６と、デフォルト設定情報５０７が記憶されている。この緊急停止用のコマンドセット５０６は、可動体駆動装置１がロードコマンドを受け取ると、一番読み出し側に近いバッファ５１１に転送され、バッファ５１１から読み出されて、デューティ比制御回路４とモータ制御回路６に転送される。その際、第１メモリ回路３１の他のバッファに格納されているコマンドセットは消去される。
【００５４】
また、一番読み出し側に近いバッファ５１１に動作情報のみが格納されている場合、デフォルトの設定情報５０７がバッファ５１１に転送されてコマンドセットが作成される。その後に、そのコマンドセットが読み出されて、デューティ比制御回路４とモータ制御回路６に転送される。
【００５５】
デューティ比制御回路４は、所定の単位期間ごとに、コマンドセットの設定情報により規定される、停止時デューティ比または動作時デューティ比に応じた期間だけ所定の電圧値を持ち、その他の期間は、その所定の電圧値と異なる電圧値を持つパルスが連続する、連続パルス信号を生成する。そのために、デューティ比制御回路４は、例えば、プロセッサ及び不揮発性のメモリ回路を有する。そしてそのメモリ回路には、例えば、設定情報により規定された停止時デューティ比及び動作時デューティ比を表す値と実際のデューティ比との関係を表す参照テーブルが記憶される。そしてデューティ比制御回路４が有するプロセッサは、参照テーブルを参照することにより、実際のデューティ比を決定する。そしてそのプロセッサは、決定したデューティ比に従って、上記の連続パルス信号を生成する。なお、所定の単位期間は、例えば、動作情報に含まれるステッピングモータの回転速度が最大である場合の一つのステップの動作期間の1/100〜1/5に設定される。
デューティ比制御回路４は、生成した連続パルス信号をモータ制御回路６あるいはソレノイド制御回路７へ供給する。
【００５６】
センサインターフェース部５は、可動体の位置を検出するセンサからの検知信号を受信するインターフェース回路を有する。センサインターフェース部５は、例えば、センサごとに異なる入力端子を有してもよい。
ここで、センサは、例えば、発光ダイオードといった光源と、その光源と対向して、光源からの光を受光可能なように配置されるフォトダイオードといった受光素子を有する。そしてセンサは、例えば、可動体の移動可能範囲の何れかの一端、例えば、水平方向に移動可能な可動体であれば、その移動可能範囲の左端または右端に設置される。そして、可動体がセンサが設置された端部に達した場合に限り、光源からの光が可動体で遮られることにより、受光素子で検知される光量が低下することで、センサは、可動体がその端部に達したことを検知する。そして、センサは、可動体を検知すると、検知したことを表す検知信号をセンサインターフェース部５へ出力する。
なおセンサは、マグネットセンサといった、他の原理に基づく近接センサであってもよい。また、一つの可動体につき、複数のセンサが設置されてもよい。この場合、各センサは、それぞれ、可動体の移動可能範囲内の互いに異なる位置に設置される。例えば、一つの可動体に対して二つのセンサが設置される場合、その二つのセンサは、可動体の移動可能範囲の両端にそれぞれ設置される。
【００５７】
センサインターフェース部５は、ステッピングモータにより駆動される可動体の位置を検知するセンサから検知信号を受信した場合、その検知信号をモータ制御回路６へ通知する。またセンサインターフェース部５は、ソレノイドにより駆動される可動体の位置を検知するセンサから検知信号を受信した場合、その検知信号をソレノイド制御回路７へ通知する。その際、センサインターフェース部５は、どの可動部に対して設置されたセンサの検知信号か識別可能なように、検知信号を受信してからセンサごとに異なる遅延時間だけずらしてからその検知信号をモータ制御回路６またはソレノイド制御回路７へ転送してもよい。あるいは、センサインターフェース部５は、センサごとに異なる識別コードとともに、検知信号をモータ制御回路６またはソレノイド制御回路７へ転送してもよい。
【００５８】
モータ制御回路６は、レジスタ３から読み出したコマンドセットに従って、駆動ユニットの一例であるステッピングモータを制御する。本実施形態では、モータ制御回路６は、一方のステッピングモータを制御するための第１制御回路６１と、他方のステッピングモータを制御するための第２制御回路６２とを有する。各制御回路６１、６２は、それぞれ、例えば、プロセッサを有し、レジスタ３から別個にコマンドセットを受け取って、対応する可動体を駆動するステッピングモータを制御する。さらにモータ制御回路６は、各可動体の現在位置及び一つ前のステップの動作開始時における位置を記憶するメモリ回路６３を有する。このメモリ回路６３は、可動体の現在位置を記憶する記憶部の一例である。
【００５９】
また、各制御回路６１、６２は、例えば、ユニポーラ型のステッピングモータを制御可能なように、6本の出力端子を有する。あるいは、各制御回路６１、６２は、例えば、バイポーラ型のステッピングモータを制御可能なように、4本の出力端子を有してもよい。さらにまた、各制御回路６１、６２は、6本の出力端子を有し、演出用CPUから受信した、ユニポーラ型かバイポーラ型を表す識別信号に応じて、信号を出力する出力端子を異ならせてもよい。
【００６０】
例えば、各制御回路６１、６２は、動作情報に含まれる移動目的地の座標が絶対値指定されている場合、可動体の現在位置の座標と移動目的地の座標を比較する。そして各制御回路６１、６２は、移動目的地の座標と現在位置の座標との差の符号により、可動体の移動方向を決定する。例えば、図２（ａ）に示されるように、可動体が水平方向に沿って直進移動するものであり、かつ、可動体の位置座標を表すステップ数が正の大きな値であるほど、可動体が移動可能範囲の右端に近い場合、各制御回路６１、６２は、移動目的地の座標から現在位置の座標を引いた差が正であれば、可動体を右方向へ移動させると決定し、一方、その差が負であれば、可動体を左方向へ移動させると決定する。また、可動体が、所定の固定点を回転軸として回転移動するものであり、可動体の位置座標を表すステップ数が正の大きな値であるほど、可動体が移動可能範囲の時計回り方向の端部に近い場合、各制御回路６１、６２は、移動目的地の座標から現在位置の座標を引いた差が正であれば、可動体を時計回り方向へ移動させると決定し、一方、その差が負であれば、可動体を反時計回り方向へ移動させると決定する。
【００６１】
また、移動目的地の設定モードが相対座標指定モードである場合、各制御回路６１、６２は、可動体をその指定された移動方向へ移動させると決定する。
また、移動目的地の設定モードが慣性移動モードである場合、各制御回路６１、６２は、メモリ回路に記憶されている、可動体の現在位置と一つ前のステップにおける位置との差の符号から、可動体の直前の動作における移動方向を特定する。そして各制御回路６１、６２は、その特定された移動方向へ可動体を移動させると決定する。
【００６２】
可動体の移動方向が決定すると、各制御回路６１、６２は、ステッピングモータの回転速度に応じて、一つのステップに対応する動作期間を決定する。
その際、自動加減速モードがONであれば、各制御回路６１、６２は、設定情報に含まれる加速度データまたは減速度データに従ってステッピングモータの回転速度を調整する。
【００６３】
図６（ａ）は、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図であり、図６（ｂ）は、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。図６（ａ）及び図６（ｂ）において、横軸は時間を表し、縦軸はステッピングモータの回転速度を表す。グラフ６０１は、回転速度が上昇する場合における、時間経過と回転速度の関係を表し、グラフ６０２は、回転速度が低下する場合における、時間経過と回転速度の関係を表す。そして、時刻t0は、各制御回路６１、６２が、注目するコマンドセットの実行を開始する時刻を表す。また、rsdは、動作情報に含まれる速度データに規定された速度データを表す。
【００６４】
時刻t0よりも前では、ステッピングモータは、注目するコマンドセットよりも一つ前のコマンドセットで指定された回転速度で回転している。そして時刻t0になると、すなわち、注目するコマンドセットの実行が開始されると、各制御回路６１、６２は、可動体が現在位置からステッピングモータの所定の第１のステップ数(例えば、5〜20ステップ)に対応する距離を移動するまで、設定情報に含まれる加速度データまたは減速度データに規定される加速度または減速度でステッピングモータの回転速度を徐々に加速または減速する。そして、その距離を移動し終えた時刻t1で、ステッピングモータの回転速度が、動作情報に含まれる速度データに規定された回転速度となるように調整される。また時刻t1以降、ステッピングモータの回転速度は、その速度データに規定された回転速度で維持される。
【００６５】
なお、各制御回路６１、６２は、例えば、実行しようとするコマンドセットに指定された速度データに示された回転速度が、一つ前に実行されたコマンドセットに指定された速度データに示された回転速度よりも速ければ、ステッピングモータを加速する。一方、実行しようとするコマンドセットに指定された速度データに示された回転速度が、一つ前に実行されたコマンドセットに指定された速度データに示された回転速度よりも遅ければ、各制御回路６１、６２は、ステッピングモータを減速する。
【００６６】
図７（ａ）は、変形例による、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図であり、図７（ｂ）は、変形例による、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。図７（ａ）及び図７（ｂ）において、横軸は時間を表し、縦軸はステッピングモータの回転速度を表す。グラフ７０１は、回転速度が上昇する場合における、時間経過と回転速度の関係を表し、グラフ７０２は、回転速度が低下する場合における、時間経過と回転速度の関係を表す。そして、時刻t0は、各制御回路６１、６２が、注目するコマンドセットの実行を開始する時刻を表す。また、rsdは、動作情報に含まれる速度データに規定された速度データを表す。
【００６７】
この変形例によれば、各制御回路６１、６２は、目標座標から、ステッピングモータの所定の第２のステップ数(例えば、5〜20ステップ)に対応する距離だけ手前の位置に可動体が達した時刻t2以降、設定情報に含まれる加速度または減速度の情報に応じた加速度または減速度でステッピングモータの回転速度を徐々に加速または減速させる。そして各制御回路６１、６２は、目標座標に達した時刻t3でステッピングモータの回転速度が速度データに示された回転速度となるように、ステッピングモータの回転速度を調整する。
【００６８】
さらに、可動体駆動装置１は、一つのコマンドセットに相当する動作を開始する時点で可動体の移動を開始し、その動作を終える時点で、可動体を停止させてもよい。この場合には、自動加減速モードがONであれば、各制御回路６１、６２は、可動体を移動開始させる際、その移動開始時から設定情報に含まれる加速度でステッピングモータの回転速度を徐々に加速し、ステッピングモータの所定の第３のステップ数(例えば、5〜20ステップ)に相当する距離を可動体が移動した時点で、ステッピングモータの回転速度が速度データに規定された回転速度となるように、ステッピングモータの回転速度を調整する。そして各制御回路６１、６２は、目標座標からステッピングモータの第３のステップ数に対応する距離だけ手前の減速開始位置に可動体が達するまで、その回転速度を維持する。そして各制御回路６１、６２は、可動体が減速開始位置に達した以降、設定情報に含まれる減速度の情報に応じた減速度でステッピングモータの回転速度を徐々に減速させる。そして各制御回路６１、６２は、目標座標に達した時点でステッピングモータの回転速度が0rpmとなるように、ステッピングモータの回転速度を調整する。
【００６９】
上記のように、自動加減速モードを用いることにより、可動体駆動装置１は、可動体が停止状態から移動開始する際に急加速となること、または動作情報に指定された動作を終えた時点で可動体が停止状態となる際に急制動が掛かることを抑制して、ステッピングモータに過負荷が掛かることを防止できる。そのため、可動体駆動装置１は、ステッピングモータの回転に可動体が追従しなくなったり、ステッピングモータが脱調することを防止できる。
【００７０】
また、第１〜第３のステップ数、加速度及び減速度は、例えば、メモリ回路６３に記憶された、設定情報中の加速度及び減速度の指標の値と、ステップ数、加速度及び減速度との関係を表す参照テーブルを参照することによって決定される。
【００７１】
一方、自動加減速モードがOFFであれば、各制御回路６１、６２は、図６（ａ）及び図６（ｂ）において点線で示されたグラフ６０３、６０４のように、ステッピングモータの回転速度を、可動体の移動開始直後から目標座標に達するまで、動作情報に含まれる速度データに規定された回転速度に設定する。
【００７２】
各制御回路６１、６２は、例えば、メモリ回路６３に記憶された、回転速度と1ステップ当たりの動作期間との関係を表す参照テーブルを参照することにより、回転速度に対応する1ステップの動作期間を決定する。
【００７３】
その後、各制御回路６１、６２は、設定情報に含まれる励磁モードフラグの値に対応する励磁方式及び移動方向に従って、決定された動作期間に相当する、ステッピングモータの各端子に印加するパルス状の駆動信号を生成する。この場合、各制御回路６１、６２は、例えば、メモリ回路６３に記憶され、各制御回路６１、６２により実行される、駆動信号を生成するためのプログラムに従って、1ステップ当たりの動作期間、励磁方式及び移動方向に対応する駆動信号を生成すればよい。なお、各端子へ出力される励磁方式に応じた駆動信号の信号波形は、例えば、特許文献１及び２にも開示されているように公知であるので、ここではその詳細な説明は省略する。
【００７４】
さらに各制御回路６１、６２は、デューティ比制御回路４から受け取った連続パルス信号とその駆動信号を乗じることにより、各端子に印加する駆動信号をパルス幅変調する。これにより、可動体駆動装置１は、パルス信号のデューティ比を小さくすることで、制御対象のステッピングモータの発熱量を抑制することができ、一方、パルス信号のデューティ比を大きくすることで、制御対象のステッピングモータのトルクを大きくすることができる。そして各制御回路６１、６２は、パルス幅変調された各端子の駆動信号を出力する。
【００７５】
各制御回路６１、６２は、一つのステップに相当する駆動信号を出力する度に、メモリ回路６３に記憶されている可動体の現在位置及び一つ前のステップにおける動作開始時の位置を更新する。具体的には、ステップ数が増える方向へ可動体が移動する場合には、各制御回路６１、６２は、現在位置を表すステップ数及び一つ前のステップにおける位置を表すステップ数に、それぞれ1を加算する。一方、ステップ数が減る方向へ可動体が移動する場合には、各制御回路６１、６２は、現在位置を表すステップ数及び一つ前のステップにおける位置を表すステップ数から、それぞれ1を減算する。
【００７６】
目標座標が絶対値指定されている場合、一つのステップに対応する駆動信号の出力が終了する度に、各制御回路６１、６２は、可動体の現在位置を表す座標が移動目的地の座標と一致するか否か判定する。そして可動体の現在位置を表す座標値が移動目的地の座標と一致しなければ、各制御回路６１、６２は、再度、一ステップ分のパルス幅変調された駆動信号を生成して各端子へ出力し、現在位置等を更新する。一方、可動体の現在位置を表す座標値が目標座標と一致すれば、各制御回路６１、６２は、一つのコマンドセットに相当する可動体の動作が終了したと判定する。
【００７７】
一方、移動目的地の座標が相対値指定されている場合には、各制御回路６１、６２は、その相対値で指定されたステップ数分の駆動信号を各端子へ出力し、そのステップ数分だけ、現在位置等を更新する。その後、各制御回路６１、６２は、一つのコマンドセットに相当する可動体の動作が終了したと判定する。
【００７８】
各制御回路６１、６２は、可動体の動作が終了したと判定すると、通信回路２を介して、命令完了信号を演出用CPUへ送信する。
【００７９】
また、各制御回路６１、６２は、自動補正フラグがONである場合に、センサインターフェース部５から、その制御回路に対応するステッピングモータが駆動する可動体の位置を検知するセンサからの検知信号を受け取ると、メモリ回路６３に記憶されている可動体の位置を表す座標値を、その検知信号に対応するセンサが可動体を検知する位置である検知位置を表す座標値に書き換える。これにより、可動体がセンサの検知位置に達する度に、可動体駆動装置１が記憶する可動体の現在位置が正しい位置に修正されるので、ステッピングモータの回転に可動体が追従できないことが生じても、可動体駆動装置１は、可動体の正確な位置を把握することができる。
【００８０】
ソレノイド制御回路７は、レジスタ３から受け取った制御コマンドに従って、その制御コマンドに含まれる可動体の移動方向または移動目的地に従って、各コイルに対する励磁信号を生成し、その励磁信号を、ソレノイドが有する各コイルへ出力する。ソレノイド制御回路７は、モータ制御回路６と同様に、ソレノイドが駆動する可動体の現在位置を記憶するメモリ回路を有していてもよい。そして制御コマンドに可動体の移動目的地が含まれる場合、ソレノイド制御回路７も、その移動目的地の座標と現在位置の座標とを比較することにより、可動体の移動方向を決定し、その移動方向に沿って、現在位置に近い方から順に、コイルを順次励磁するように、各コイルに対する励磁信号を生成してもよい。
【００８１】
以上に説明してきたように、この可動体駆動装置は、ステッピングモータで駆動される可動体の現在位置を把握しているので、演出用CPUといったい上位の制御装置が可動体の目標座標を指定するだけで、可動体の移動方向を決定することができ、その目標座標まで可動体を移動させることができる。そのため、上位の制御装置は、可動体の現在位置を把握する必要が無く、また現在位置の座標と目標座標との差に応じて可動体の移動方向を決定する必要が無い。したがって、この可動体駆動装置は、可動体の駆動に関する、上位の制御装置の負荷を軽減できる。
【００８２】
なお、本発明は上記の実施形態に限定されるものではない。例えば、変形例によれば、可動体駆動装置は、ソレノイド制御回路を有さなくてもよい。また、他の変形例によれば、可動体駆動装置は、図２（ｃ）に示される慣性移動モードのような、現在位置に対する相対的な移動量のみで目標座標を特定する制御コマンドを受け付けなくてもよい。この場合には、可動体駆動装置は、現時点での可動体の移動方向を求める必要が無いので、モータ制御回路のメモリ回路は、可動体の現在位置のみを記憶しておけばよい。
さらに他の変形例によれば、可動体の現在位置の座標及び一つ前のステップの実行時における位置の座標は、レジスタが記憶していてもよい。
さらに他の変形例によれば、一つの制御コマンドが、動作情報と設定情報の両方を含んでいてもよい。
【００８３】
上記の実施形態または変形例による可動体駆動装置は、弾球遊技機または回胴遊技機といった遊技機に搭載されてもよい。
図８は、上記の実施形態または変形例による可動体駆動装置を備えた弾球遊技機１００の概略斜視図である。また図９は、弾球遊技機１００の概略背面図である。図８に示すように、弾球遊技機１００は、上部から中央部の大部分の領域に設けられ、遊技機本体である遊技盤１０１と、遊技盤１０１の下方に配設された球受け部１０２と、ハンドルを備えた操作部１０３と、遊技盤１０１の略中央に設けられた表示装置１０４とを有する。
また弾球遊技機１００は、遊技の演出のために、遊技盤１０１の前面において遊技盤１０１の下方に配置された固定役物部１０５と、遊技盤１０１と固定役物部１０５との間に配置された可動役物部１０６とを有する。また遊技盤１０１の側方にはレール１０７が配設されている。また遊技盤１０１上には多数の障害釘（図示せず）及び少なくとも一つの入賞装置１０８が設けられている。
【００８４】
操作部１０３は、遊技者の操作によるハンドルの回動量に応じて図示しない発射装置より所定の力で遊技球を発射する。発射された遊技球は、レール１０７に沿って上方へ移動し、多数の障害釘の間を落下する。そして遊技球が何れかの入賞装置１０８に入ったことを、図示しないセンサにより検知すると、遊技盤１０１の背面に設けられた主制御回路１１０は、遊技球が入った入賞装置１０８に応じた所定個の遊技球を玉払い出し装置（図示せず）を介して球受け部１０２へ払い出す。さらに主制御回路１１０は、遊技盤１０１の背面に設けられた演出用CPU１１１を介して表示装置１０４に様々な映像を表示させる。
【００８５】
可動役物部１０６は、遊技の状態に応じて移動する可動体の一例であり、遊技盤１０１の背面に設けられた、本発明の実施形態またはその変形例による可動体駆動装置１１２により駆動される。なお、遊技機１００が、可動役物部１０６以外にも可動体を有する場合、例えば、入賞装置１０７の開口部に、開口の大きさを可変にする可動体を有する場合、その可動体も、可動体駆動装置１１２によって駆動されてもよい。
【００８６】
図１０（ａ）は、固定役物部１０５を透過して見た、可動体駆動装置１１２により駆動される可動役物部１０６の概略正面図であり、（ｂ）は、固定役物部１０５の背面側から見た、可動役物部１０６が移動可能範囲の一端に位置する場合の概略背面図であり、（ｃ）は、固定役物部１０５の背面側から見た、可動役物部１０６が移動可能範囲の他端に位置する場合の概略背面図である。
【００８７】
この実施形態では、可動役物部１０６は、星型の装飾部材１２１と、その装飾部材１２１を一端にて保持する棒状の支持部材１２２とを有する。支持部材１２２は、固定役物部１０５の背面側に、遊技盤１０１の左下端から右上方へ向けて斜め方向に、支持部材１２２の下端と接するように設けられたレール１２３と係合し、そのレール１２３に沿って直進移動可能に保持されている。この例では、図１０（ｂ）に示されるように、可動役物部１０６がその移動可能範囲の左下方側の端部に位置する場合、遊技盤１０１の前面側から見て、装飾部材１２１が固定役物部１０５の背後に隠れて遊技者から見えなくなる。一方、図１０（ｃ）に示されるように、可動役物部１０６がその移動可能範囲の右上方側の端部に位置する場合、装飾部材１２１全体が固定役物部１０５よりも遊技盤１０１の中央側に位置することとなり、遊技者が装飾部材１２１全体を視認可能となる。
【００８８】
支持部材１２２の上面側には、直線歯車としての歯が形成されており、この歯が、移動可能範囲の右上方側の端部に可動役物部１０６が位置する場合の支持部材１２２の左下端側の端部の位置近傍に設置された減速ギア１２４と係合する。また減速ギア１２４は、ステッピングモータ１２５の回転軸１２６に取り付けられたギア１２７と係合している。そのため、ステッピングモータ１２５が所定角度回転することにより、ギア１２７及び減速ギア１２４を介して、その回転角度に対応する所定の移動量だけ可動役物部１０６が移動する。そしてステッピングモータ１２５は、可動体駆動装置１１２により制御される。
【００８９】
また、移動可能範囲の左下方側の端部に可動役物部１０６が位置する場合の支持部材１２２の左下端側の端部の位置近傍には、センサ１２８が設けられ、可動役物部１０６が移動可能範囲の左下方側の端部に達した場合に検知信号を発生し、その検知信号を可動体駆動装置１１２へ送信する。なお、センサ１２８は、例えば、マグネットセンサとし、支持部材１２２の左下端側の端部に取り付けられた磁性体を検知することで、可動役物部１０６がその移動可能範囲の左下端に達したことを検知できる。あるいは、センサ１２８は、発光ダイオードと受光素子とを有する光学式のセンサであってもよい。
【００９０】
主制御回路１１０から演出用CPU１１１に伝達された遊技の状態を表す状態信号に基づいて、演出用CPU１１１は、可動役物部１０６の目標座標を決定し、その決定に従った制御コマンドを生成する。そして演出用CPU１１１は、生成した制御コマンドを可動体駆動装置１１２へ出力する。例えば、遊技球が入賞装置１０７に入る前は、演出用CPU１１１は、可動役物部１０６が固定役物部１０５に隠れるように、可動役物部１０６をその移動可能範囲の左下方の端部を移動目的地として指定する制御コマンドを可動体駆動装置１１２へ送信する。一方、遊技球が入賞装置１０７に入ったことが検知され、そのことを示す状態信号が主制御回路１１０から演出用CPU１１１に入力されると、演出用CPU１１１は、可動役物部１０６をその移動可能範囲の右上方の端部を移動目的地として指定する制御コマンドを生成し、その制御コマンドを可動体駆動装置１１２へ送信する。
【００９１】
このように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【符号の説明】
【００９２】
１    可動体駆動装置
２    通信回路
３    レジスタ
３１    第１メモリ回路
３２    第２メモリ回路
４    デューティ比制御回路
５    センサインターフェース部
６    モータ制御回路
６１、６２    制御回路
６３    メモリ回路
７    ソレノイド制御回路
１００    弾球遊技機
１０１    遊技盤
１０２    球受け部
１０３    操作部
１０４    表示装置
１０５    固定役物部
１０６    可動役物部
１０７    レール
１０８    入賞装置
１１０    主制御回路
１１１    演出用CPU
１１２    可動体駆動装置
１２１    装飾部材
１２２    支持部材
１２３    レール
１２４    減速ギア
１２５    ステッピングモータ
１２６    回転軸
１２７    ギア
１２８    センサ
【図１】
0005903804.tif 000002
【図２】
0005903804.tif 000003
【図３】
0005903804.tif 000004
【図４】
0005903804.tif 000005
【図５】
0005903804.tif 000006
【図６】
0005903804.tif 000007
【図７】
0005903804.tif 000008
【図８】
0005903804.tif 000009
【図９】
0005903804.tif 000010
【図１０】
0005903804.tif 000011