Raspberry Pi 5 でギラティナ色違い厳選

 

 

 

 

 

 

 

 

  はじめに

 

色違い厳選を自動化できると面白いなぁと常々思っていましたがRaspberry Pi 5が発売され、これを機にやってみよう!と思い、始めることにしました

 

色々調べてみて、AIを使用するほどでもないかな~と思ったのとモデルを作成するのが面倒なので今回はテンプレートマッチングを利用して厳選させたいと思います

 

結構適当です

 

 

使用言語はPyhton

 

 

※素人が書いてますので雑です

 

 

 

  準備

 

使用したものは以下の通り

  • Raspberry Pi 5

    メイン

    これが無いと始まらない!

    Raspberry Pi 4 と仕様が少し変わってGPIOが扱いづらい

    サーボモーターはPWMで制御するのでRaspberry Pi 4 の方が簡単

 

  • サーボモーター×2
    ボタン押す用
    AボタンをFS90R
    SELECTをSG90で押していく
 
  • USBカメラ
    DS画面確認用
    白が好きなのでLogiの白いヤツ(Brio 100)を購入
 
  • 部品
    • 抵抗
    • フォトカプラ
    • 電池・電池ボックス
    • ジャンパーワイヤ
    • ブレッドボード  などなど
    Raspberry Pi と サーボモーター間の回路に使用
    全部秋月で揃えました
 
  • 木材・ネジなど
    DIYして筐体作成
    木材は100円ショップの安いヤツ
 
 

カメラの設定

購入したカメラはピントの調節を物理的に行わないとダメなので調節します

 

 

USBカメラの外装を外すと上のような構造になってます

レンズの歯車のような形状の部分を回すとピントの調節ができます

接写するのでいい具合に調整しました

 

 

  作る

 

回路はこんな感じ

サーボモータを直接Raspberry Pi に繋げても良いかもしれない

念のためフォトカプラで分離してます

 

抵抗はあったものを使用しているので雑です

 

 

プログラムはPython

通常色のギラティナがカメラに写っている間はプログラムが動作し続けるようになってます

一定時間、通常色のギラティナが写っていないときはLINEで使用者に通知

通知する際、画像と一緒に通知メッセージを送信します

 

カウント回数もプログラムで記録するようにしています

 

 

筐体作成

取り敢えずダンボールとDAISOの製品で試作を作ってみました

 

 

 

 

 

 

 

 

動かん

 

 

 

 

 

 

STARTボタンとSELECTボタンが押せない

Aボタンもダンボールが凹んで押せないこと多し

LRも押しっぱなしがムズイ

針金でどうにかしようと思ったけど、別の方法を試した方が良いかもしれない

 

 

 

色々調べて、筐体を作り直した

 

 

何かそれっぽい

 

LRとSTARTボタンはネジで固定

 

 

 

DSをあまり傷つけないようにスポンジとテープを一応挟んでいます

 

Aボタンは360度サーボでひたすら連打

SELECETボタンは180度サーボで適宜押します

 

いい感じ

 

リセット君と名付けました

 

 

 

  実行

 

事前準備から

使用ポケモンはパラセクト

 

 

キノコのほうしを一番上に置いておくことでA連打の際、こいつが選択されます

 

あとは最初の日記みたいなヤツを飛ばしてレポートして準備完了

 

 

 

それでは実行

(動画はルギアに置き換えてます)

 

 

おもろい

 

余計な情報を入れないためにレンズにカバーをして、ギラティナのみが写るようにしています


このまま電池交換しつつやっていきます

僅かな環境変化でも止まるので適宜確認が必要

 

 

 

 

 

 

 

 

 

 

 

・ ・ ・

 

 

 

 

 

 

 

 

 

 

 

 

 

実験は成功だ!!

 

LINE通知も来ました

 

 

リセット回数はトータルで大体2295回

結構早め

 

 

シンクロは失敗!

 

 

  おわりに

 

SwitchBotと赤外線受信モジュールを使えばLINEに送られてきた画面から、色違いじゃなければプログラムを続行するなんてこともスマホでできそうだった

気が向けばやってみても良いかなと

 

 

この機械の問題点は

  • 電池の交換が面倒
  • うるさい
  • 部屋の明るさを一定にしないと精度が落ちる
  • DSとカメラの角度の厳密な固定が必要
  • 酷使しすぎてDSがバグり始めた
  • 通常色と色違いの色の差が小さいと検知できない
  • まぁまぁうるさい
  • ホントにうるさい
というところ
 
角度に関しては結構厳密です
机の上で機械を動かしましたが、卓上に物を置いただけでDSとカメラの角度が微妙にズレてプログラムが止まるなんてこともありました
使いづらい・・・
 
とはいえ
電池の交換は、回路を変えてUSB給電か、ラズパイから直接電源を取ってくる

リセット君ごと何かで覆ってしまえば、部屋の明るさ問題もなんとかなるし、DIYすれば角度の固定も可能

 

DSがバグり始めたのは、もう10年以上使用しているので仕方なし!

うるさいのは我慢しよう!

 

 

最大の問題は通常色と色違いの差が小さいと検知できない点

例えば、ゼクロムの色違いなんかは判定できるか怪しい(DSでは出現しないけども)

実際に色違いが出現しないと確認も難しい

 

今回のプログラムでは信頼度がが97%以上のときリセットを行っているが、撮影環境をガチガチに固定して信頼度を99%以上にすれば或いは可能かも…?

 

 

とはいえ放置するだけで固定リセットが行えるのは中々魅力的

 

まぁ、3DSVerでやれば確率も二倍なのであんまりDSでやる意味もないけど・・・

3DSが2つしかないので今回は生贄としてDSでやってみました

 

 

時間があれば3DS用にも作ってみたいと思います

 

以上!

 

 

 

 

 

 

ブランケットで覆われてしまったリセット君

 

 

 

 

 

 

 

 

マナフィ色違いが出ないせいでBWの全国図鑑が進まん!!

 

 

 

 

  参考にしたもの

 

 

本体

 

 

 

 

 

 

 

プログラム