LoginSignup
1
2

メダルゲーム スピンフィーバーを自作したい① メインバンパー

Posted at

スピンフィーバーを作りたい

 僕が小学生のころ、スピンフィーバーというメダルゲームが大好きでした。小学生の頃に作りたいと思ったこともありました。今もたまに遊びに行きますが、最近スピンフィーバーがおいてあるお店が少なくなってきました。スピンフィーバーは初代機は2007年製、コンピュータは寿命を迎えています。僕が今遊びに行っているお店の機体も、いつ壊れてもおかしくない状態です。とても悲しいです。
 そこで思いました。
「今なら、作れるのではないか。」
 そこで、作ることにしました。

スピンフィーバーとは?(第2章)

 簡単に言えばピンボール物理抽選ゲームです。鉄球が中央のフィールドにあるバンパーに当たると跳ね返されると同時に、メダル2枚を獲得します。メダル合計が100枚になると、フィールド両端にある2つのチャンスポケットが開きます。そのポケットに鉄球が入ると、クルーンに挑戦し1/5の確率でジャックポットが当たります。フィールドから全ての鉄球が出て行ってしまうとゲーム終了。出て行ってしまうのを防ぐために8枚の壁(アウトブロック)があり、1回だけなら鉄球が外に出て行くのを防いでくれます。逆に鉄球がフィールド上に存在する限りゲームは続きます。
スクリーンショット (189).png

細かいルール

  • 通常は1球のみ発射される
  • 発射後、10秒間アウトブロックは無敵になる
  • ステーションで777がそろうと3球になる
  • アイテムがステーションで当たると、ジャックポットが当たる確率が上がる
  • アイテムは発射されるボールが2球になる「2ball」、バンパーの獲得枚数が3枚になる「Hit-Win-up」、最初の無敵時間が増える「no-out 10sec」、チャンスポケットが初めから開く「chance-poket-open」、ジャックポット枚数が300枚増える「JP+300」がある。
  • レッドとブルーの2つのジャックポットがあり、2つとも当たり、さらにどちらかに当たるとスーパージャックポットを獲得できる。

気になる方は調べてみてください。

構想

 今回どのように作るかを考えた際、電子制御ならPICかArduinoだなと思いました。しかし、PICだと端子が少なすぎるのと、PICライターなり揃えて、基盤を作るとなると非常に面倒です。そこでArduinoにするとこにしましたが、Arduinoは同時処理ができません。
 そこで、Arduino5機をRaspberry Piのシリアル通信で制御することにしました。うまくできるかはしりません。
スクリーンショット 2023-11-09 171142.png

準備

 まず、Arduinoの互換ボードと3Dプリンターを購入しました。
そして、これも購入しました。
P_20230625_193509.jpg
はい、ずるしました。センターパネルですが、作るのには少し厳しすぎました。ちょうどオークションサイトにあったので買いました。これで、逃げれなくなりました。これに合わせて作っていきます。

設計(バンパー)

 まずはバンパーを設計していきます。設計ソフトはAutoDesk Fusion 360です。

動作

 まず、ボールを跳ねる仕組みですが、白い板にボールが当たると、下の図のように鉄板を押し下げてボールを押し返しています。
スクリーンショット 2023-11-09 171541.png

鉄板を押し下げる動作のためには上下運動するアクチュエータが必要です。そこで、ソレノイドを使用することにしました。
 ソレノイドは電流を流すと、電磁石の力によって鉄芯を引きつける装置です。今回はボール直径30mmなので、しっかり跳ね返すためには最低12mm以上のストローク(引き付ける長さ)が必要と考えました。そこで、タカハ機工のストロークが16mmで力も強い「CA1264」を購入しこれに合わせて設計することにしました。ついでにソレノイドをArduinoで制御できるコントローラーも購入しました。
P_20230725_163441.jpg

センサ

 センサはとても悩みました。まず、マイクロスイッチでボールの接触を感知する方法を考えました。しかし、設計が難しくなるのと反応にムラができる恐れがありました。
 そこで、白い板が傾くことで反応するセンサにすることにしました。白い板に金属棒を固定し、土台に穴の空いた金属の板を取り付けます。そして、穴に白い板とりつけた金属棒を入れて固定します。白い板が傾くと、金属棒と板が接触して反応するという仕組みです。
スクリーンショット 2023-11-09 150903.png

そのほかの設計

 そのほかメイン土台、ソレノイド土台、メイン柱、装飾なども本物をベースにして作りました。寸法も、買ったメインパネルに合うようにしました。また、配線用の穴、ネジ穴を用意しておきます。
一番大変だったのは、ずれが発生しないようにするための穴です。センサの白い板はボールが当たった衝撃で板がずれて、センサが誤作動する恐れがありました。そこで白い板に小さな穴をあけ、板が傾いたときに引っかかるようにしました。
スクリーンショット 2023-11-09 152108.png

完成したバンパーの設計図はこちらです。
スクリーンショット 2023-11-09 150648.png

作製

まずは土台が必要です。ホームセンターで適当に板を買ってきて組み立てました。本当に適当に組み立てただけですので、これは割愛します。
 バンパーはセンサのネジ、バネ、板以外はすべて3Dプリンターで印刷します。ベース板だけで11時間かかりました。時間がかかりすぎるので、まずは2つ作りました。
P_20230810_223003.jpg

プログラミング

使用するのはArduino nanoです。D2~D5端子にソレノイド、D6~D9端子にセンサが付けられています。

void setup() {
    pinMode(2,OUTPUT);
    pinMode(3,OUTPUT);
    pinMode(4,OUTPUT);
    pinMode(5,OUTPUT);
    pinMode(6,INPUT_PULLUP);
    pinMode(7,INPUT_PULLUP);
    pinMode(8,INPUT_PULLUP);
    pinMode(9,INPUT_PULLUP);
}

void loop() {
    if(digitalRead(6)==LOW){
      digitalWrite(2,HIGH);
      delay(50);
      digitalWrite(2,LOW);
      delay(10);
   }
   if(digitalRead(7)==LOW){
      digitalWrite(3,HIGH);
      delay(50);
      digitalWrite(3,LOW);
      delay(10);
   }
   if(digitalRead(8)==LOW){
      digitalWrite(4,HIGH);
      delay(50);
      digitalWrite(4,LOW);
      delay(10);
   }
   if(digitalRead(9)==LOW){
      digitalWrite(5,HIGH);
      delay(50);
      digitalWrite(5,LOW);
      delay(10);
   }
}

 とりあえず適当です。else ifにしてないのは後から変更を加えるつもりだからです。このプログラムは、もし同時にセンサが反応しても動作できません。それはまた後日変更します。

テスト

とりあえず動くか試しました。ソレノイドの電圧は24V。
P_20230729_235928.jpg

お判りでしょうか。ボールを跳ね返す板が折れました。

仕方ないので、支える棒のみネジにして、板だけ次のように加工しました。
スクリーンショット 2023-11-09 160340.png

結果は成功です。写真では当然わからないですが、しっかり跳ねてます。
この記事の最後に動画へのリンクを張っておきます。
Screenshot_20231109-173045264.jpg

4つ作って遊んでみた。

 4つ作って遊んでみました。よければ見てみてください。
Screenshot_20231110-122255136.jpg

おわりに

 今回、せっかくなので挑戦してみましたが、かなり難しいです。さらっと紹介しましたが、いろいろ失敗していますし、だいたい2週間かかっています(作ったのは夏休み)。やることはオススメしません。次回は、アウトブロックを作っていきたいです。できるかわかりませんが。
https://youtu.be/bERlESo885E

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2