以下、本発明の一つの実施形態による磁石検出装置を、図を参照しつつ説明する。この磁石検出装置は、例えば、遊技機に取り付けられ、磁場の強さを測定可能な磁気センサにより得られた磁場の強さを表す測定値と検出閾値とを比較することで、磁石を用いた不正行為が行われたか否かを判定する。そしてこの磁石検出装置は、検出閾値を、所定の期間において磁気センサにより得られた磁場の測定値に基づいて設定する。
図1は、遊技機が動作していない期間に検出された磁場に応じて検出閾値が設定された場合の磁場の変化に応じた不正磁石検出の一例を示す図である。図1において、横軸は時間を表す。また、図1において、グラフ101は、磁気センサにより検出される磁場の強さ(磁気量)の測定値の時間変化を表し、グラフ102は、遊技機の電源がオンとなっているかオフとなっているかを表す。そしてグラフ103は、磁石検出装置により、不正行為に用いられ、遊技機に影響を与える磁石(以下、単に不正磁石と呼ぶ)が検出されたか否かを表す。
この例では、遊技機の電源が投入され、電源がオンとなった直後の時刻t1から時刻t2の間、遊技機は動作しておらず、遊技機自体の動作により生じる磁場の変動は無い。そしてその時刻t1からt2の期間の磁場の測定値の平均値に基づいて、磁場の基準値Mrefが求められる。そのため、基準値Mrefは、磁石検出装置周囲の定常的な磁場の強さに応じた値となる。そして基準値Mrefに対して所定のオフセット値を加算または減算することで、検出閾値Vslh1及びVsll1が設定される。なお、二つの検出閾値が設定されるのは、磁気センサに近い方の磁石の極性に応じて磁場の強さの変化が異なるためである。例えば、磁石のN極が磁気センサに近づくと、磁気センサから出力される磁場の測定値は上昇し、一方、磁石のS極が磁気センサに近づくと、磁気センサから出力される磁場の測定値は減少する。そのため、基準値Mrefよりも大きい上限側の検出閾値Vslh1と、基準値Mrefよりも小さい下限側の検出閾値Vsll1とが設定される。
そして時刻t2以降、磁石検出装置は、不正磁石の検出を開始する。そして時刻t3〜t4、及び、時刻t5〜t6の期間において、不正磁石が磁石検出装置に近づけられる。その結果として、グラフ101及びグラフ103に示されるように、時刻t3〜t4、及び、時刻t5〜t6の期間において、磁場の測定値が検出閾値Vslh1よりも大きくなるか、あるいは、検出閾値Vsll1よりも小さくなり、磁石検出装置は、不正磁石を検出できる。
一方、時刻t7において遊技機が有するモータあるいはソレノイドといった磁場を発生させる部品が動作を開始する。そのため、時刻t7以降、遊技機のその部品の動作によって磁場の測定値が上昇し、検出閾値Vslh1よりも高くなったとする。このような場合、磁石検出装置は、遊技機自体の動作を、不正磁石と誤検出してしまう。しかし、そのような誤検出を防止するために、仮に、遊技機の磁場を発生させる部品が動作している間、不正磁石の検出を停止すると、時刻t8〜t9のように不正磁石が磁石検出装置に近づけられても、磁石検出装置は、不正磁石を検出できなくなってしまう。
ここで、グラフ101に示されるように、不正磁石が磁石検出装置に近づけられるときにおける、磁場の測定値が基準値Mrefと一致しなくなってから検出閾値に達するまでに要する時間p1は、遊技機の磁場を発生させる部品が動作を開始することによる、磁場の測定値が基準値Mrefと一致しなくなってから検出閾値に達するまでに要する時間p2よりも長い。一般に、不正行為を行おうとする遊技者が不正磁石を磁石検出装置に近づけるので、不正磁石の移動速度には限界がある。一方、モータあるいはソレノイドといった磁場を発生させる部品は、通電されると直ちに磁場を発生させる。その結果として、不正磁石が磁石検出装置に近づけられるときの磁場の変動の速度は、遊技機が動作を開始するときの磁場の変動の速度よりも遅いためである。
そこで、この磁石検出装置は、磁場の測定値が基準値Mrefと一致しなくなってから検出閾値に達するまでの所要時間、すなわち、遊技機における定常状態の磁場の強さから一定以上の磁場の強さの変動が生じるまでの所要時間を計測し、その所要時間が所定の時間閾値以下であれば、基準値Mref及び検出閾値を再設定し、一方、その所要時間がその時間閾値以上であれば、不正磁石を検出する。これにより、この磁石検出装置は、遊技機自体の動作による磁場の変動を不正磁石と誤検出することを抑制しつつ、遊技機が動作中であっても、不正磁石を精度良く検出できる。
図2は、本発明の一つの実施形態による磁石検出装置の概略構成図である。磁石検出装置1は、遊技機(図示せず)に取り付けられ、磁気センサ11と、駆動用電圧生成部12と、記憶部13と、インターフェース部14と、制御部15とを有する。
磁気センサ11は、磁石検出装置1の周囲の磁場を測定し、その磁場の強さに応じた測定値を制御部15へ出力する。そのために、磁気センサ11は、例えば、磁気インピーダンス素子(Magneto-Impedance element)を有する。あるいは、磁気センサ11は、ホール素子またはホールICを有していてもよい。
駆動用電圧生成部12は、磁石検出装置1を動作させるための直流電圧を生成し、その直流電圧を磁石検出装置1の各部に供給する。そのため、駆動用電圧生成部12は、例えば、遊技機の電源から供給された直流電力の電圧(例えば、12V)を、磁石検出装置1を駆動するための電圧(例えば、5V)に変換するDC/DCコンバータを有する。
記憶部13は、例えば、不揮発性の読み出し専用の半導体メモリと、読み書き可能な半導体メモリとを有する。そして記憶部13は、制御部15で実行される各処理において用いられる各種のデータ、磁気センサ11により得られた磁場の測定値、及び設定された検出閾値などを記憶する。さらに、記憶部13は、制御部15上で実行される各処理のプログラムを記憶していてもよい。
インターフェース部14は、磁石検出装置1を他の機器、例えば、遊技機の主制御基板と接続するためのインターフェース回路を有する。そしてインターフェース部14は、制御部15から受け取った各種の信号、例えば、検出閾値の設定が終了し、不正磁石の検出を開始することが可能となったことを表す信号、あるいは、不正磁石を検出したことを表す異常信号などを他の機器へ出力する。
制御部15は、例えば、一つまたは複数の演算回路と、アナログ/デジタル変換器と、メモリとを有する。なお、演算回路、アナログ/デジタル変換器及びメモリは、別個の回路であってもよく、あるいは、一つの集積回路として一体的に形成されてもよい。そして制御部15は、遊技機の電源が投入されてから、一定期間中に磁気センサ11から得られた磁気の測定値に基づいて磁場の基準値及び検出閾値を設定する。また制御部15は、不正磁石の検出開始後、その検出閾値と、磁気センサ11から得られた磁気の測定値との比較により、不正磁石を検出する。その際、制御部15は、磁場の測定値が基準値と一致しなくなってから検出閾値に達するまでの時間を計時して、その時間に基づいて基準値及び検出閾値の再設定を行うか否か判定する。
図3は、制御部15の機能ブロック図である。制御部15は、検出閾値設定部21と、計時部22と、不正磁石検出部23とを有する。制御部15が有するこれらの各部は、例えば、制御部15が有する演算回路上で実行されるコンピュータプログラムにより実現される機能モジュールである。あるいは、制御部15が有するこれらの各部は、それぞれ、制御部15が有する演算回路に含まれる専用の回路として実装されてもよい。
以下、制御部15が有するこれらの各部について説明する。
検出閾値設定部21は、閾値更新部の一例であり、制御部15に駆動用電圧の供給が開始されると、あるいは、不正磁石検出部23から検出閾値の再設定を要求されると、磁気センサ11から受け取った磁場の測定値に基づいて基準値及び検出閾値を設定する。
例えば、検出閾値設定部21は、基準値及び検出閾値の設定を開始してから一定期間にわたって磁気センサ11から磁場の測定値を受信する。なお、この一定期間は、後述する時間閾値に相当する時間長よりも短いことが好ましい。これにより、基準値及び検出閾値の再設定中に不正磁石が近づけられることで、基準値及び検出閾値が不適切な値に設定荒れることが抑制される。検出閾値設定部21は、受信した測定値を所定のサンプリング周期(例えば、100μsec〜1msec)でサンプリングすることでN個(Nは2以上の整数)の測定値を取得し、そのN個の測定値の平均値Mraveを算出する。磁気センサ11が、磁場の測定値を検出された磁束密度の値として出力する場合、検出閾値設定部21は、その平均値Mrave[μT]に、感度ΔS[mV/μT]を乗じることで得られる電圧換算値を、磁場の基準値Mrefとして算出する。あるいは、磁気センサ11自体が、検出した磁束密度の大きさに応じた電圧を測定値として出力する場合には、検出閾値設定部21は、その電圧をアナログ/デジタル変換器により変換して得られるその電圧のデジタル値自体の平均値を磁場の基準値Mrefとしもよい。そして検出閾値設定部21は、基準値Mrefに所定のオフセット値ΔVslを加算して、上限側の検出閾値Vslh1を算出するとともに、基準値Mrefから所定のオフセット値ΔVslを減算して、下限側の検出閾値Vsll1を算出する。なお、感度ΔSは、例えば、磁気センサ11の感度特性に応じて設定される。また、所定のオフセット値ΔVslは、例えば、想定される不正磁石による磁場の強さの変動量の電圧換算値よりも小さく、かつ、遊技機自体の動作による磁場の変動量の電圧換算値よりも大きくなるように設定され、予め記憶部13に保存されればよい。
図4は、検出閾値設定処理の動作フローチャートである。検出閾値設定部21は、遊技機の電源が投入されたとき、あるいは、不正磁石検出部23に検出閾値の再設定を指示された場合に、下記の動作フローチャートに従って基準値及び検出閾値を設定する。
検出閾値設定部21は、磁気センサ11からの磁場の測定値を一定期間(例えば、100msec〜数sec)にわたって取得する(ステップS101)。そして検出閾値設定部21は、その一定期間における磁場の測定値の平均値を算出し、その平均値に基づいて磁場の基準値Mrefを算出する(ステップS102)。さらに、検出閾値設定部21は、磁場の基準値Mrefに所定のオフセット値ΔVslを加算して上限の検出閾値Vslh1を算出するとともに、磁場の基準値Mrefから所定のオフセット値ΔVslを減算して下限の検出閾値Vsll1を算出する(ステップS103)。そして検出閾値設定部21は、検出閾値設定処理を終了する。
検出閾値設定部21は、設定した基準値Mref、検出閾値Vslh1及びVsll1を記憶部13に保存する。
計時部22は、不正磁石検出処理の実行中において、磁場の測定値が遊技機における定常状態の磁場の強さから一定以上の磁場の強さの変動が生じるまでの所要時間を計時する。本実施形態では、計時部22は、その所要時間として、磁場の基準値Mrefと一致しなくなってから検出閾値Vslh1またhVsll1に達するまでの時間を計時する。そのために、本実施形態では、計時部22は、所定のサンプリング周期ごとに、磁場の測定値に感度ΔSを乗じることで、検出された磁場の電圧換算値Vcを算出する。なお、上記のように、磁気センサ11自体が検出された磁場の磁束密度に相当する電圧値を出力する場合には、その電圧値をアナログ/デジタル変換器により変換して得られる測定値のデジタル値そのものを検出された磁場の電圧換算値Vcとすればよい。そして計時部22は、検出された磁場の電圧換算値Vcを、記憶部13から読み出した基準値Mrefまたは検出閾値Vslh1、Vsll1と比較する。
計時部22は、磁場の測定値が基準値Mrefと一致しなくなると、所要時間の計時を開始する。例えば、計時部22は、磁場の測定値が基準値Mrefと一致しなくなっている時間の長さを表すカウント値Cntを1とする。なお、計時部22は、検出された磁場の電圧換算値Vcが基準値Mrefと異なっている場合、磁場の測定値が基準値Mrefと一致しなくなったと判定する。あるいは、計時部22は、検出された磁場の電圧換算値Vcと基準値Mrefとの差の絶対値が所定値よりも大きくなると、磁場の測定値が基準値Mrefと一致しなくなったと判定してもよい。なお、所定値は、例えば、磁気センサ11による磁場の測定誤差の平均値またはその平均値に所定のオフセットを加えた値に相当する値とすることができる。
計時部22は、サンプリング周期ごとに、検出された磁場の電圧換算値Vcと基準値Mrefとを比較し、磁場の測定値が基準値Mrefと一致しなければ、カウント値Cntを1インクリメントする。一方、計時部22は、検出された磁場の電圧換算値Vcが基準値Mrefと一致すれば、カウント値Cntを0にリセットする。
また、計時部22は、カウント値Cntが1以上の値を持つ間、すなわち、磁場の測定値が基準値Mrefと一致しない場合、検出された磁場の電圧換算値Vcを検出閾値Vslh1及びVsll1と比較する。そして計時部22は、検出された磁場の電圧換算値Vcが検出閾値Vslh1よりも大きい場合、あるいは、検出された磁場の電圧換算値Vcが検出閾値Vsll1より小さい場合、その時点でのカウント値Cnt、すなわち、磁場の測定値が基準値Mrefと一致しなくなってから検出閾値に達するまでの所要時間をカウント値を不正磁石検出部23へ通知する。
なお、計時部22は、基準値Mref及び検出閾値Vslh1、Vsll1の再設定中は、所要時間を計時しないことが好ましい。これにより、遊技機自体の動作による磁場の変動を不正磁石と誤検出することが抑制される。
不正磁石検出部23は、磁石検出部の一例であり、磁場の測定値が基準値Mrefと一致しなくなってから検出閾値に達するまでの所要時間に応じて不正磁石が検出されたか否かを判定する。本実施形態では、不正磁石検出部23は、計時部22から受け取ったカウント値Cntを所定の時間閾値Tlh0と比較する。カウント値Cntが時間閾値Tlh0以下であれば、遊技機の動作により、磁気センサ11周囲の磁場が変動していると想定される。そのため、そして不正磁石検出部23は、検出閾値設定部21に、基準値Mref及び検出閾値Vslh1、Vsll1を再設定させる。
一方、カウント値Cntが時間閾値Tlh0よりも大きければ、不正磁石検出部23は、不正磁石を検出したと判定する。そして不正磁石検出部23は、不正磁石が検出されたことを表す異常信号を生成し、その異常信号をインターフェース部14を介して外部の機器へ出力する。また、不正磁石検出部23は、磁場の測定値の電圧換算値Vcが検出閾値Vlsh1より大きいか、あるいは、Vsll1未満となっている間、不正磁石の検出を継続してもよい。
なお、時間閾値Tlh0は、例えば、遊技機の磁場を生じる部品(例えば、モータまたはソレノイド)の駆動が開始されてから、それらの部品が発生する磁場の変動が生じるまでに要する時間よりも長く、かつ、不正磁石を用いた不正行為が行われる場合の不正磁石による磁場変動が開始されてから磁場の測定値が検出閾値に達するまでの時間よりも短い期間に相当するカウント値として設定されることが好ましい。例えば、時間閾値Tlh0は、20msec〜30msecをサンプリング周期で除した値に設定される。これにより、不正磁石検出部23は、遊技機の動作による磁場変動を不正磁石と誤検出することを抑制できる。
図5は、不正磁石検出処理の動作フローチャートである。制御部15は、遊技機が動作中、所定のサンプリング周期ごとに、下記の動作フローチャートに従って不正磁石検出処理を実行すればよい。
計時部22は、測定された磁場の電圧換算値Vcが基準値Mrefと一致するか否か判定する(ステップS201)。測定された磁場の電圧換算値Vcが基準値Mrefと一致していれば(ステップS201−Yes)、計時部22は、カウント値Cntを0にリセットする(ステップS202)。そして制御部15は、不正磁石検出処理を終了する。
一方、測定された磁場の電圧換算値Vcが基準値Mrefと一致していなければ(ステップS201−No)、計時部22は、カウント値Cntを1インクリメントする(ステップS203)。なお、不正磁石検出処理の最初の実行時であれば、計時部22は、カウント値Cntを1とする。
計時部22は、測定された磁場の電圧換算値Vcが、下限検出閾値Vsll1以上、かつ、上限検出閾値Vslh1以下か否か判定する(ステップS204)。
検出された磁場の電圧換算値Vcが、下限検出閾値Vsll1以上、かつ、上限検出閾値Vslh1以下である場合(ステップS204−Yes)、制御部15は、不正磁石検出処理を終了する。一方、検出された磁場の電圧換算値Vcが、下限検出閾値Vsll1未満、あるいは、上限検出閾値Vslh1よりも大きい場合(ステップS204−No)、計時部22は、現時点のカウント値Cntを不正磁石検出部23に通知する。そして不正磁石検出部23は、カウント値Cntが時間閾値Tlh0以下か否か判定する(ステップS205)。カウント値Cntが時間閾値Tlh0よりも大きければ(ステップS205−No)、不正磁石検出部23は、現時点において、不正磁石を検出したと判定する。そして不正磁石検出部23は、不正磁石が検出されたことを示す異常信号を生成し、その異常信号をインターフェース部14を介して他の機器へ出力する(ステップS206)。また、計時部22は、カウント値Cntを0にリセットする(ステップS207)。
一方、カウント値Cntが時間閾値Tlh0以下であれば(ステップS205−Yes)、遊技機の動作(特に、磁場を発生させる部品の動作開始または動作停止)により磁場が変動したと想定される。そこで不正磁石検出部23は、検出閾値設定部21に、基準値Mref及び検出閾値Vslh1、Vsll1の再設定を指示する。そして検出閾値設定部21は、基準値Mref及び検出閾値Vslh1、Vsll1を再設定する(ステップS208)。また、計時部22は、カウント値Cntを0にリセットする(ステップS209)。
ステップS207またはステップS209の後、制御部15は、不正磁石検出処理を終了する。
図6は、本実施形態による、磁場の変化に応じた不正磁石検出の一例を示す図である。図6において、横軸は時間を表す。また、グラフ601は、磁気センサ11により検出される磁場の強さ(磁気量)の測定値の時間変化を表し、グラフ602は、遊技機の電源がオンとなっているかオフとなっているかを表す。そしてグラフ603は、磁石検出装置1により、不正磁石が検出されたか否かを表す。
この例では、遊技機の電源が投入された直後の時刻t1から時刻t5まで、遊技機が有する、磁場を生じさせる部品(例えば、モータまたはソレノイド)は動作しておらず、時刻t5以降、その部品が動作するものとする。またこの例では、最初に、遊技機は動作していない、時刻t1から時刻t2(<t5)の間の磁場の測定値の平均値に基づいて、磁場の基準値Mref及び検出閾値Vslh1及びVsll1が設定される。そして時刻t2において不正磁石検出処理が開始される。その後、時刻t3〜t4の期間のように、不正磁石が磁石検出装置1に近づけられると、時刻t4にて測定された磁場の電圧換算値が検出閾値Vslh1を超える。また、測定された磁場の電圧換算値が基準値Mrefと一致しなくなってからその電圧換算値が検出閾値に達するまでの時間(Cnt×fs)(fsはサンプリング周期)が時間閾値Tlh0に相当する期間(Tlh0×fs)よりも長いので、磁石検出装置1は、不正磁石を検出する。
そして時刻t5において磁場を生じさせる部品が動作を開始すると、すぐに測定された磁場の電圧換算値が検出閾値Vslh1を超える。そのため、測定された磁場の電圧換算値が基準値Mrefと一致しなくなってからその電圧換算値が検出閾値に達するまでの時間(Cnt×fs)は、時間閾値Tlh0に相当する期間(Tlh0×fs)よりも短いので、その後の時刻t6までの間に、基準値Mref'及び検出閾値Vslh1'、Vsll1'が再設定される。したがって、遊技機の動作による磁場の変動によっても、測定された磁場の電圧換算値は、検出閾値Vsll1'以上、かつ、Vslh1'以下となり、その磁場の変動は、不正磁石として誤検出されなくなる。
その後、時刻t7〜t8において不正磁石が磁石検出装置1に近づけられると、測定された磁場の電圧換算値が検出閾値Vslh1'を超える。また、測定された磁場の電圧換算値が基準値Mref'と一致しなくなってからその電圧換算値が検出閾値に達するまでの時間(Cnt×fs)が時間閾値Tlh0に相当する期間(Tlh0×fs)よりも長くなる。そのため、遊技機の磁場を発生させる部品が動作中の時刻t7〜t8においても、磁石検出装置1は、不正磁石を精度良く検出できる。
なお、時刻t9において、磁場を発生させる部品が動作を停止すると、時間閾値Tlh0に相当する期間(Tlh0×fs)よりも短い期間で、磁場の電圧換算値が検出閾値Vslh1'を超え、あるいは、検出閾値Vsll1'よりも低くなる。そのため、基準値及び検出閾値が元の値Mref、Vslh1及びVsll1に再設定される。
以上に説明してきたように、この磁石検出装置は、磁場の測定値が磁場の基準値と一致しなくなってから、検出閾値に達するまでの期間の長さに応じて、不正磁石を検出するか、基準値及び検出閾値を再設定するかを判定する。そのため、この磁石検出装置は、不正磁石検出処理の実行中に遊技機の磁場を発生させる部品が動作して、その動作による磁場の変動が生じても、不正磁石を誤検出することを防止できる。さらに、この磁石検出装置は、遊技機の動作による磁場の変動に応じて基準値及び検出閾値を再設定するので、遊技機において磁場の変動を生じさせる部品が動作していても、不正磁石を精度良く検出できる。
なお、遊技機によっては、磁場の変動を生じさせる複数の部品の何れかが継続的に動作していたり、遊技機の周囲に、継続的に磁場の変動を生じさせる装置が存在することがある。このような場合、そのような磁場の変動によって、不正磁石が磁石検出装置に近づけられた場合でも、磁場の測定値が基準値と一致しなくなってから検出閾値に達するまでの時間が非常に短くなることがある。逆に、磁場の変動を生じさせる他の部品が動作を開始することで、磁気センサ11の周囲の磁場が急激に変化する場合でも、それ以前の磁場の変動により、一定以上の磁場の強さの変動が生じる所要時間が時間閾値に相当する時間長よりも長くなってしまうことがある。そこで変形例によれば、磁石検出装置は、計時部22が計時する時間を求めるために用いられる基準値及び検出閾値(以下、便宜上、第2基準値及び第2検出閾値と呼ぶ)を、測定される磁場の強さに応じて継続的に更新する。そして磁石検出装置は、磁場の測定値がその更新された第2基準値と一致しなくなってから、第2検出閾値に達するまでの所要時間と、磁場の測定値と検出閾値との比較により、不正磁石を検出する。
図7は、この変形例による磁石検出装置の制御部の機能ブロック図である。この変形例による制御部16は、検出閾値設定部21と、計時部22と、不正磁石検出部23と、計時用閾値設定部24とを有する。制御部16は、図3に示される磁石検出装置1の制御部15と比較して、計時用閾値設定部24を有する点と、計時部22及び不正磁石検出部23の処理の一部が異なる。そこで以下では、計時用閾値設定部24、計時部22及び不正磁石検出部23について説明する。
計時用閾値設定部24は、新たな磁場の測定値を磁気センサ11から取得する度に、その測定値を取得した現時刻tを終端とする一定期間中に磁気センサ11から受信した磁場の測定値の平均値Mrave(t)に基づいて、継続的に更新される第2基準値Mref2(t)及び継続的に更新される第2検出閾値Vslh2(t)、Vsll2(t)を算出する。なお、第2基準値Mref2(t)は、直近における、遊技機の定常状態の磁場の強さを表す。また計時用閾値設定部24は、検出閾値設定部21と同様に、磁気センサ11が、磁場の測定値を検出された磁束密度の値として出力する場合、その平均値Mrave(t)[μT]に、感度ΔS[mV/μT]を乗じることで得られる電圧換算値を、第2基準値Mref2(t)として算出する。あるいは、磁気センサ11自体が、検出した磁束密度の大きさに応じた電圧を測定値として出力する場合には、計時用閾値設定部24は、その電圧をアナログ/デジタル変換器により変換して得られるその電圧のデジタル値自体の平均値を第2基準値Mref2(t)としもよい。そして計時用閾値設定部24は、第2基準値Mref2(t)に所定のオフセット値ΔVsl2を加算して、上限側の検出閾値Vslh2(t)を算出するとともに、基準値Mref2(t)から所定のオフセット値ΔVsl2を減算して、下限側の検出閾値Vsll2(t)を算出する。
なお、所定のオフセット値ΔVsl2は、検出閾値Vslh1、Vsll1を設定するために用いられるオフセット値ΔVslと等しいか、あるいは、そのオフセット値ΔVsl以下であることが好ましい。これにより、不正磁石を用いた不正行為が行われたときに、磁場の測定値が検出閾値Vslh2(t)またはVsll2(t)に達せずに、不正磁石の検出に失敗することが抑制される。
また、計時用閾値設定部24は、忘却係数を用いて第2基準値Mref2(t)を更新してもよい。この場合には、計時用閾値設定部24は、直前の時刻(t-1)における磁場の測定値の平均値Mrave(t-1)に忘却係数αを乗じて得られる値αMrave(t-1)に、最新の磁場の測定値M(t)に(1-α)を乗じて得られる値(1-α)M(t)を加えた値をMrave(t)とし、そのMrave(t)に基づいて第2基準値Mref2(t)を算出すればよい。なお、忘却係数αは、Mrave(t)を算出する一定期間中に含まれる磁場の測定値の総数Ntotalの逆数を1から減じた値(α=1-1/Ntotal)とすることができる。
なお、計時用閾値設定部24は、基準値Mref及び検出閾値Vslh1、Vsll1が算出される度に、第2基準値Mref(t)及び第2検出閾値Vslh2(t)、Vsll2(t)を、それぞれ、基準値Mref、検出閾値Vslh1、Vsll1にリセットする。これにより、遊技機の動作により、磁気センサ11周囲の磁場が大きく変動した際に、計時用閾値設定部24は、第2基準値Mref(t)及び第2検出閾値Vslh2(t)、Vsll2(t)をその磁場変動に追従させることができる。
計時用閾値設定部24は、第2基準値Mref2(t)及び第2検出閾値Vslh2(t)、Vsll2(t)を算出する度に、それらの値を記憶部13に保存する。
計時部22は、最新の磁場の測定値の電圧換算値Vc(t)が直前の時刻の第2基準値Mref2(t-1)と一致しなくなってから、その測定値の電圧換算値Vc(t)が第2検出閾値Vslh2(t-1)及びVsll2(t-1)の何れかに達するまでの時間を、遊技機における定常状態の磁場の強さから一定以上の磁場の強さの変動が生じるまでの所要時間として計時する。
本実施形態では、計時部22は、上記の実施形態と同様に、最新の磁場の測定値の電圧換算値Vc(t)が直前の第2基準値Mref2(t-1)と一致しない間、磁場の測定値が得られる度に、カウント値Cntを1インクリメントする。一方、計時部22は、最新の磁場の測定値の電圧換算値Vc(t)が直前の時刻の第2基準値Mref2(t-1)と一致しなくなってから、その測定値の電圧換算値Vc(t)が第2検出閾値Vslh2(t-1)及びVsll2(t-1)の何れかに達するよりも前に、直前の時刻の第2基準値Mref2(t-1)と一致すれば、カウント値Cntを0にリセットしてもよい。
計時部22は、最新の磁場の測定値の電圧換算値Vc(t)が第2検出閾値Vslh2(t-1)及びVsll2(t-1)の何れかに達すると、所要時間を表す現在のカウント値Cntを不正磁石検出部23へ通知する。
不正磁石検出部23は、カウント値Cntを所定の時間閾値Tlh0と比較する。カウント値Cntが時間閾値Tlh0以下であれば、遊技機の動作により、磁気センサ11周囲の磁場が変動していると想定される。そのため、そして不正磁石検出部23は、検出閾値設定部21に、基準値Mref及び検出閾値Vslh1、Vsll1を再設定させる。
一方、カウント値Cntが時間閾値Tlh0よりも大きければ、不正磁石検出部23は、最新の磁場の測定値の電圧換算値Vc(t)と検出閾値Vslh1、Vsll1を比較する。そして最新の磁場の測定値の電圧換算値Vc(t)が検出閾値Vslh1よりも大きいか、あるいは、検出閾値Vsll1よりも小さい場合、不正磁石を検出したと判定する。そして不正磁石検出部23は、不正磁石が検出されたことを表す異常信号を生成し、その異常信号をインターフェース部14を介して外部の機器へ出力する。
図8は、この変形例による不正磁石検出処理の動作フローチャートである。制御部16は、遊技機が動作中、所定のサンプリング周期ごとに、下記の動作フローチャートに従って不正磁石検出処理を実行すればよい。
計時部22は、最新の測定された磁場の電圧換算値Vc(t)が直前の第2の基準値Mref2(t-1)と一致するか否か判定する(ステップS301)。測定された磁場の電圧換算値Vc(t)が第2基準値Mref2(t-1)と一致していなければ(ステップS301−No)、計時部22は、カウント値Cntを1インクリメントする(ステップS302)。なお、不正磁石検出処理の最初の実行時であれば、計時部22は、カウント値Cntを1とする。
ステップS302の後、あるいは、ステップS301にて測定された磁場の電圧換算値Vc(t)が第2基準値Mref2(t-1)と一致している場合(ステップS301−Yes)、計時部22は、測定された磁場の電圧換算値Vc(t)が、直前の時刻(t-1)にて設定された下限の第2検出閾値Vsll1(t-1)以上、かつ、上限の第2検出閾値Vslh2(t-1)以下か否か判定する(ステップS303)。
検出された磁場の電圧換算値Vc(t)が、下限の第2検出閾値Vsll2(t-1)以上、かつ、上限の第2検出閾値Vslh2(t-1)以下である場合(ステップS303−Yes)、制御部16は、不正磁石検出処理を終了する。一方、検出された磁場の電圧換算値Vc(t)が、下限の第2検出閾値Vsll2(t-1)未満、あるいは、上限の第2検出閾値Vslh2(t-1)よりも大きい場合(ステップS303−No)、計時部22は、現時点のカウント値Cntを不正磁石検出部23に通知する。そして不正磁石検出部23は、カウント値Cntが時間閾値Tlh0以下か否か判定する(ステップS304)。カウント値Cntが時間閾値Tlh0よりも大きければ(ステップS304−No)、測定された磁場の電圧換算値Vc(t)が、下限の検出閾値Vsll1以上、かつ、上限の検出閾値Vslh1以下か否か判定する(ステップS305)。
検出された磁場の電圧換算値Vc(t)が、下限の検出閾値Vsll1以上、かつ、上限の検出閾値Vslh1以下である場合(ステップS305−Yes)、制御部16は、現時点では不正磁石を検出しないと判定する(ステップS306)。一方、検出された磁場の電圧換算値Vc(t)が、下限の検出閾値Vsll1未満、あるいは、上限の検出閾値Vslh1よりも大きい場合(ステップS305−No)、不正磁石検出部23は、現時点において、不正磁石を検出したと判定する。そして不正磁石検出部23は、不正磁石が検出されたことを示す異常信号を生成し、その異常信号をインターフェース部14を介して他の機器へ出力する(ステップS307)。
ステップS306またはステップS307の後、計時用閾値設定部24は、第2基準値及び第2検出閾値を更新する。すなわち、計時用閾値設定部24は、現時刻における、第2基準値Mref2(t)及び第2検出閾値Vslh2(t)、Vsll2(t)を算出して、記憶部13に保存する(ステップS308)。
また、ステップS304にて、カウント値Cntが時間閾値Tlh0以下であれば(ステップS304−Yes)、遊技機の動作により磁場が変動したと想定される。そこで不正磁石検出部23は、検出閾値設定部21に、基準値Mref及び検出閾値Vslh1、Vsll1の再設定を指示する。そして検出閾値設定部21は、基準値Mref及び検出閾値Vslh1、Vsll1を再設定する(ステップS309)。また、計時部22は、カウント値Cntを0にリセットする(ステップS310)。
ステップS308またはステップS310の後、制御部16は、不正磁石検出処理を終了する。
図9は、この変形例による、磁場の変化に応じた不正磁石検出の一例を示す図である。図9において、横軸は時間を表す。また、グラフ901は、磁気センサ11により検出される磁場の強さ(磁気量)の測定値の時間変化を表し、グラフ902は、磁石検出装置1により、不正磁石が検出されたか否かを表す。さらに、グラフ911は、上限側の第2検出閾値Vslh2(t)の時間変化を表し、グラフ912は、下限側の第2検出閾値Vsll2(t)の時間変化を表す。この例では、グラフ901に示されるように、不正磁石検出処理が開始された時刻t0以降においても、遊技機の動作により、磁場が変動し、時間が経過するにつれて徐々に磁場が強くなる。しかし、第2検出閾値Vslh2(t)及びVsll2(t)も、その磁場の変動に応じて徐々に高くなるため、時刻t1において不正磁石が磁気センサ11に近づき出しても、磁場の測定値が第2検出閾値Vslh2(t)に達する時刻t2までの所要時間(Cnt*fs)は、時間閾値Tlh0に相当する時間長(Tlh0*fs)よりも長くなる。そのため、不正磁石が検出される。
一方、時刻t3において、遊技機の動作により急激に磁場が変動する場合には、上記の実施形態と同様に、所要時間(Cnt*fs)は、時間閾値Tlh0に相当する時間長(Tlh0*fs)よりも短い時間となる。そのため、時刻t3における磁場の変動が不正磁石と誤って検出されることはない。さらに、変動後の一定期間の磁場の測定値に基づいて基準値Mref及び検出閾値Vslh1、Vsll1が再設定されるので、その後の時刻t4〜t5における、不正磁石による磁場の変動が、不正磁石によるものとして正確に検出される。
このように、この変形例によれば、磁石検出装置は、継続的に更新した基準値及び検出閾値に基づいて、磁場の測定値が基準値から検出閾値まで変化するのに要する所要時間を計時するので、遊技機自体が発する磁場または遊技機周囲の磁場が継続的に変動する場合でも、その所要時間を正確に評価できる。そのため、この磁石検出装置は、磁場の変動が不正磁石によるものか、あるいは、遊技機の動作によるものかを精度良く判別できる。
なお、上記の実施形態または変形例において、計時部22及び不正磁石検出部23は、磁場の測定値の電圧換算値VcまたはVc(t)として、最新の磁場の測定値を含む、直近に取得された複数回の磁場の測定値の平均値の電圧換算値を用いてもよい。
図10は、本発明の実施形態または変形例による磁石検出装置を有する弾球遊技機100の概略正面図である。また図11は、弾球遊技機100の概略側面断面図である。さらに、図12は、弾球遊技機100の概略内部構成図である。図10及び図11に示すように、弾球遊技機100は、上部から中央部の大部分の領域に設けられ、遊技機本体である遊技盤101と、遊技盤101の下方に配設された球受け部102と、ハンドルを備えた操作部103と、遊技盤101の略中央に設けられた表示装置104とを有する。
また弾球遊技機100は、遊技の演出のために、遊技盤101の前面に配置された可動役物部105を有する。また遊技盤101の側方にはレール106が配設されている。また遊技盤101上には多数の障害釘(図示せず)及び少なくとも一つの入賞装置107が設けられている。さらに、入賞装置107の近傍において、遊技盤101の内部に、上記の実施形態または変形例による磁石検出装置108が、磁気センサが遊技盤101の前面側を向くように取り付けられる。なお、可動役物部105及び入賞装置107は、それぞれ、可動体の一例である。
操作部103は、遊技者の操作によるハンドルの回動量に応じて図示しない発射装置より所定の力で遊技球を発射する。発射された遊技球は、レール106に沿って上方へ移動し、多数の障害釘の間を落下する。そして遊技球が何れかの入賞装置107に入ったことを、図示しないセンサにより検知すると、遊技盤101の背面に設けられた主制御回路110は、遊技球が入った入賞装置107に応じた所定個の遊技球を玉払い出し装置(図示せず)を介して球受け部102へ払い出す。さらに主制御回路110は、遊技盤101の背面に設けられた演出用CPU111を介して表示装置104に様々な映像を表示させる。
さらに、演出用CPU111は、遊技の状態に応じて、遊技盤101の内部に設けられたモータ制御装置(図示せず)を介してモータ112を駆動することにより、モータ112で駆動される可動役物部105を移動させる。本実施形態では、可動役物部105は、遊技盤101の略中央の一端で固定され、その固定されたところを回転軸として、遊技盤101の前面に沿って、矢印Aで示されるように回転移動する。さらに、遊技の状態に応じて、可動役物部105の前面側の固定端の反対側近傍に設けられた回転体105aが、可動役物部105に取り付けられたモータ113によって回転駆動される。そのため、可動役物部105の位置によって、モータ113と磁石検出装置108間の距離が変動する。したがって、可動役物部105の位置、及び、モータ112及びモータ113の回転状況に応じて、磁石検出装置108にて検出される磁場の強さが変動する。
さらに、遊技の状態に応じて、入賞装置107の開口の開き度合いが調整可能なように、入賞装置107は、遊技盤101の背面に設けられたソレノイド114により駆動される。そして主制御回路110は、遊技の状態に応じて、ソレノイド駆動装置(図示せず)を介してソレノイド114を動作させることで、入賞装置107の開口の開き度合いを調整する。したがって、ソレノイド114の動作状況に応じて、磁石検出装置108にて検出される磁場の強さが変動する。
一方、磁石検出装置108は、弾球遊技機100の電源が投入され、その電源から電力の供給が開始されてから、弾球遊技機100が稼働している間、不正磁石検出処理を実行する。そして磁石検出装置108は、不正磁石を検出すると、その旨を表す異常信号を主制御回路110へ出力する。主制御回路110は、異常信号を受信すると、異常信号を外部の機器へ出力する。また、主制御回路110は、弾球遊技機100に設けられた警告灯(図示せず)を点灯あるいは点滅させたり、弾球遊技機100の動作を一時的に停止させてもよい。
なお、上記のように、磁石検出装置108は、モータ112、113及びソレノイド114のうちの何れかが動作を開始することにより磁場の強さが急激に変動すると、その磁場の強さの変動に応じて基準値及び検出閾値を変更することで、モータ112、113及びソレノイド114の何れかが動作していても、精度良く不正磁石を検出できる。
このように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。