にわか技術部(´・ω・`)

アラフォーがウン十年ぶりに電子工作やってます。 他に物忘れが激しいのでいろいろメモとして残しておきます。 そして、詳しい方、ぜひお友達になってくださいっ!

技術部

電子工作初心者がarduinoというユニットを使ってパチスロのコイン不要機を作ってみた

投稿日:2012年12月2日 更新日:

最近増えてきましたね。自宅にパチスロ機を置く人が。

自分もあったりします。

o0301050012312540691

数年前に買った4号機の「押忍!番長」です。
コインが数十枚ついていて、パチ屋と同じようにコインを

入れて遊んで大当たりしたらジャラジャラとでてきます。

が・・・

ジャラジャラの音がとても大きいw

そしてコインの入ってるホッパー(貯蔵してる箱)がすぐなくなって補充しなきゃいけない

ってことで、センサーをごまかしてコインを使わず遊べるのがコイン不要機です。

ヤフオクみると2000~3000円で打ってますが、せっかくarduionoがあるので

これでやってみます。

ちなみにコイン投入側(セレクター)と払い出し側(ホッパー)と2種類あるのですが、

セレクターはここを参考にして作ることができたのですが

ホッパー側ができていませんでした。

前置きが長すぎたな。。。もっとサッサといこう。

o0406050012312540692

 

そんなわけで、本体開けて接続。

o0500030112312556938

 

ホッパーを分解した状態で配線

センサーはLG-JT20が2つついてる。

o0301050012312563403

左が常時塞がれてる状態で、コインが通ると一瞬右がふさがる

 

o0626031312312534345

2番と3番をショートさせればいいんだねきっと。

o0500030112312573799

 

まさかの手書きw

センサーは片方は常時HIGHである必要がある。

アルド側で常時HIGHにすると、電源落としたりするとホッパーエラーがでるため、

トランジスタでNOT回路入れてみた。

やってることは簡単。フォトカプラPC817使って、

o0400021312312607356

 

モーターの信号を受けたらアルドちゃんの入力ピンがHIGHになる。

アルドの出力ピンがHIGHになったらフォトカプラ経由でセンサーをON,OFFする

ピンは3本。モーターINPUT1本とセンサーOUTPUT2本

スケッチはこんな感じ。loop中の抜粋ですが。。。

モーターがONになったら1ms~9msまでセンサーの信号を反転させます。

10msでタイマーをリセットさせてまた0msから。

この10msは適当です。動いてるからいいと思う。

もうちょっとカッコいいスケッチの書き方ないのかなぁ。

割り込み使えばいいのかな?

追記:

当初はこんな動きを想定してました。

センサー1 ON →OFF→OFF→OFF→ON

センサー2 OFF→OFF→ON→OFF→ON

そのため、センサー1,2を別々に制御してるんだけど・・・

今みたら、このスケッチで動くんだったら1つでいいような気がしてきたw

 void swaitreset(){

  previous_millis = millis();

}

unsigned long  swaittime(){

  return(  millis() -previous_millis  );

}

//ホッパー処理

////////////////////////////////////////////////////////////

//senser2Pinにnot回路がいれてあるため

//両方同じレベルになってしまう・・・

if( digitalRead( moterPin )==HIGH){

  hopperTimert=swaittime()/10;

//  Serial.println(t);

  if( hopperTimert<1 ){

    digitalWrite( senser1Pin,LOW );

    digitalWrite( senser2Pin,LOW  );

  }

 

 

  if( 1<hopperTimert && hopperTimert<10 ){

    digitalWrite( senser1Pin,HIGH );

    digitalWrite( senser2Pin,HIGH );

  }

 

 

  if( 10<hopperTimert  ){

    digitalWrite( senser1Pin,LOW );

    digitalWrite( senser2Pin,LOW );

    swaitreset();

  }

  

}else{

  // モーター停止状態

  swaitreset();

  digitalWrite( senser1Pin,LOW );

  digitalWrite( senser2Pin,LOW );

}

 

 

とりあえず快適に動いてます。

ここまでできれば、、、次はコレだよねぇ。。
o0500030112312607355

test1

test1

-技術部
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

arduinoのボタンを押すとカウントする

せっかく勉強しても忘れてしまうのでメモを残しておきます。 できあがったあとに無計画にブログなんか作ったから途中のものはありません・・・。 ランプを点滅くらいはサンプルスケッチでできるわけですが、 今回 …

ロウ付け?ハンダ付け?

少し前の動画で、ロウ付けしてみたというのをうpしたんだけど、 気になるコメントがありまして、、、 「これってハンダ付けだよね」 う~ん。そうなの? 一日で調べてこうゆうやり方をろう付けというものと思っ …

no image

全自動麻雀卓”雀豪”のメカニズム動画

この動画だと30秒ほどでおわるが、うちのは2分かかってる。。 やっぱいろいろおかしいwww

LCDの動作とライブラリ”shiftreglcd”

前回の続き。 とりあえず、hello,world!は表示されたわけですが、 shiftreglcdライブラリを使用しているため、簡単に表示できます。 表記はこれ。 #include <Shift …

no image

ゆっくり解説】 Bluetoothの使い方 【電子工作】

【ニコニコ動画】【ゆっくり解説】 Bluetoothの使い方 【電子工作】