質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.91%

ラズパイによるおもちゃのボタンに流れる電流の検知方法

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 253

gyungyun545

score 84

電子工作もラズパイも初心者のものです。
クイズの早押しボタンをラズパイで作ろうかと検討しております。
がわからないことだらけで困っております。

押しボタンをラズパイにて検知する必要がありますが、いわゆるラズパイ用のボタンではインパクトにかけるためおもちゃの大きなボタンをラズパイに繋げられないか考えてます。
このような電池式で光ったり音がなるタイプのボタンを想定してます。
https://www.amazon.co.jp/dp/B00B2FNHB6/

このボタンは電池を使うので、ボタンを押したときに特定の箇所で電流が流れます。
その電流をラズパイ側に持ってきて検知できれば、ボタンとして使うことができるはずです。

しかし、入門書を何冊かみましたが、電流を流したりスイッチの使い方は乗っていても電流を入力にして検知する方法が乗ってません。
検知する方法はあるのでしょうか?また、どうやれば検知できるのでしょうか?

別のキットが必要なのでしょうか?
もしくは、Arduinoの方が簡単にできる等のアドバイスがあれば教えていただきたいです。

■2020/7/17 8:37追加
ボタンを購入して試してみました。以下を試した所うまくいきました。
①電源部に3VとGNDをつないでスイッチを押す。
電池を入れたのと同様にLEDがピカピカ光り音がなりました。
②電源部にGPIO(High)とGNDをつないで、スイッチを押す。
電池を入れたのと同様にLEDがピカピカ光り音がなりました。
③スイッチに直接、GPIOをGNDを繋ぎ、GPIOをLOWにした上でスイッチを押す。
→「GPIO.wait_for_edge(18, GPIO.FALLING)」で待受したところちゃんとボタンを押したら反応しました。
![イメージ説明](913f3434d9855fbba0e5985522d4fb86.png)

問題は、検知と光らせるのを同時にできてないことで、電源にGPIOとGNDを繋いでLOWにしたら回路に余計なものが沢山挟まっているので、うごかないです。
電源に3Vを繋いで、スイッチにGPIO(LOW)を直付すれば動きそうですが、押したときにGPIO(LOW)と3Vが直結してしまいそうです。
その場合やっぱり問題ありますでしょうか?

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • gyungyun545

    2020/07/14 20:03

    すみません、早押しというのは分かりやすくするための例です。
    実際のところ、対局時計の多人数版のイメージです。ただ、全員同時にタイマーが動いたり画面に指示が表示されたり、そのあたりの処理が複雑だし、都度変更したいのでラズパイでやろうとしたのです。

    複数のボタンを押したことをキーにラズパイの処理を走らせて、タイマーを動かしたりディスプレに反映させてくれさえできれば作れると考えてます。

    また、GPIOでなくても実現方法は何でも良いです。

    キャンセル

  • TsukubaDepot

    2020/07/17 09:09

    よく試されていると思いますが、やはり文章だけだと理解も難しいところがあります。
    スイッチ周りの回路を分析して、回路図として起こすことは可能でしょうか。
    テスターも必要にはなりますが、スイッチ周りの回路がある程度明らかになれば、もうちょっといいコメントがつくかもしれません。

    スイッチからマイコン(下部中央)に信号が入っているだけだと思うので、そこから分岐させてGPIOに入れれば良さそうな気もします。
    逆に、分析の結果スイッチが電源やGNDとは繋がっておらず、マイコンとだけしか接続されていないと判断されると結構ややこしいかもしれません。

    キャンセル

  • thkana

    2020/07/18 13:01

    > 検知と光らせるのを同時にできてない
    質問は「検知」だけだったと思いますが、いつの間にか「光らせる」ことも要件になったのですか?

    あと、なにかしら電子工作に類することをやろうというのなら、せめてテスターを買って下さい。電圧の変化を見ればそれがGPIO(入力)で拾えるかどうかある程度見当がつきます。

    キャンセル

回答 2

+1

ラズパイも電子工作も初めて、ということであれば、もう少し簡単なところから始めてみてはいかがでしょうか。
押して光るボタンであれば100均ショップにもあります。それを改造するのが容易です。

Amazonの商品だとかなり高額(5000円前後)ですし、壊してしまうリスクを考えると簡単には取りかかれないかと思います。
回路の構成も推測できませんので、最悪内蔵されたプリント基板から配線を起こす必要があるなど、それなりに大変な作業になりそうです。

商品の説明では「早押しボタン」とあるので、4つのボタンを排他制御していて欲しいところですし、4000円ならそれくらいの機能は欲しいところですが、その機能があったらあったらもっと解析は大変かもしれません。

一方、いわゆる100均ショップに行けば、適切な大きさの押しボタン(相当古い番組ですが、「トリビアの泉」で使われたいわゆる「へぇボタン」そっくりのボタン)が入手できると思います。

これであれば、失敗しても110円で済みます。

このボタンであれば、中身はスイッチ程度ですので、そこから配線を引っ張ってきてラズパイに繋げるだけで工作は完了です。
ボタンの電源もラズパイから取ればよく、電圧変換のことを考える心配もありません。

ラズパイとの接続例は

などたくさん出てきますし、ボタンも

みたいな感じで出てきます。

まずは、比較的簡単なところから開始し、それが達成できたら次のステップに取り掛かるというのでも悪くないかと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/07/17 08:59

    アドバイス有難うございます。
    100均のボタンライトも購入してみました。構造がめちゃくちゃ簡単なので、簡単にできそうです。
    もし、4000円の音がでるボタンでできなければ、諦めてこっちでしてみます。

    キャンセル

checkベストアンサー

0

使用電源は単4電池2本と書いてあります。
ということは、電源は3Vで動いてるということなので、おそらく、これをばらしてスイッチの接点から取り出せば、3Vの電圧をスイッチしてるものと思われます。
対して、ラズパイの方は3.3Vで動いていますんで、まあ、この3Vのスイッチを直接ラズパイのGPIOに繋げば動きそうです

ましかし、あくまでこれは推測ですんで、このスイッチを実際に動かして、スイッチ接点にどういう電圧が出ているのかをチェックする必要があります

3Vと3,3Vではそのままつなげそうですが、あまり電圧がかけ離れていると、片方を壊してしまう恐れがあります

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/07/14 20:18

    まあ、ラズパイの3.3Vをスイッチの電源とすればいいはなしです。
    3.3VとGNDをスイッチの電源につないで、スイッチからの線をGPIOにつなぎましょう。
    このとき、このスイッチの線が0Vと3.3Vになるのを確認しときましょう

    キャンセル

  • 2020/07/17 08:57

    的確なアドバイスありがとうございます。
    追記のとおり、実際に購入してみると、スイッチが回路にくっついており分離が難しそうです。
    スイッチ部分は絶縁体がないので直付はできますが、そうすると電源とGPIO(LOW)が直結してしまいますがやっぱり問題ありますよね?

    キャンセル

  • 2020/07/17 09:12

    GPIOとGNDをつなぐんじゃなくて、スイッチの片側とGPIOをつなぎましょう。
    このとき、GPIOは入力にしておきます
    これでスイッチの状態がGPIOからみれないでしょうか

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.91%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る