ラズベリーパイと仲間達の世界


H29.9.9

 トータライザーの製作を完成させてから2回ほど使うことがあったので記録しておこう。

 最初はコの字型に配置した会場で20人ほどだった。それなりに高齢者だったので、スイッチの扱いに心配した。使用したスイッチはオルタネイトであり、押した状態が保持される。

 離せば切れるスイッチの方が良かったのかどうか。押し続けることが難しいと感じ、また、押しているときに細かく点いたり消えたりするチャタリングが発生するのではないかと思って、オルタネイト式スイッチにしたのだが。

 結果は、そんな心配以前に、延長ケーブルを使ったスイッチケーブルがうまく使えなかったので、途中で止めてしまった。

 どのような席配置になるかでスイッチケーブルの長さが変わってくる。コの字型配置だと、中央に装置を置くことにすれば5m×20本で済む。
 授業風に4段5列とすると2m〜7mが20本必要となる。手持ちのステレオAVケーブルが50mあったので、これを裂いて100mとしてケーブル作成に入った。ただ、最初に様々な長さのケーブルにしてしまったのでケーブルが不足してしまった。予定では25人だったので。

 講座が近づいて確かめたところ、コの字型配置だったので、急遽延長ケーブルで対応したのだった。さらに注文したAVケーブルが届かずに苦慮した。

 2回目は授業風配置で8人ほどだった。ケーブルには問題がなかったが、途中から無線キーボードが反応しなくなった。というよりは、マウスでクリックする位置がずれたと云うことだったのだと思う。フルスクリーンにしていたつもりだったが、マウスカーソルがプログラム画面からはみ出ていたんだろう。

 10インチのディスプレイの画面はあちら向きにしたので見えないのだ。逆にすれば良かった。もっと手元に置いて私が見えるようにして。OJTalkが読み上げてくれるようにしているので、聴講者には画面が見えなくても良かったのだ。

 2度ともうまくいかなかったのだが、使用するノウハウは蓄積できた。頻繁には使うことがないかも知れないが、次回使用するときには役に立つような気がする。

 ふと、ついでに考えたこと。ほぼ、このシステムでプログラムを少し変えれば、早押し判定機になるのではないかと。今プログラムを改変中だ。

 そうそう、大きな問題。開始する前の配線作業。それよりも大問題なのは、終わったときの回収方法。下手に行うと20数本のスイッチケーブルはラーメン状態になって頭もこんがらがってくるのだ。


H29.8.7

 今日テストを行った。完成したスイッチつきケーブル10本をランダムに接続して調子を見る。その後、残りの15個のジャックに順繰りに接続して反応を見る。すると、やはり反応しないジャックが2箇所。

 やっぱりね。で、裏を見ると、なんと配線していないIN端子がありました。でも、なぜ配線していない他の3箇所のジャックがデータを送ってくれたのだろう?

 これは、自分でも心配していた配線失敗があったのだろう。なかなか上手いこと半田付けできなくて、過加熱による皮膜の溶解で3箇所のデータが他のIN回路に流れていたのだと思う。見当がついているので、そこを手直しだ。
 INとOUTのケーブル群が交差して接続しにくかったので、左右に振り分けた。実際に使用するときにはソケットピンでまとめようと思う。

 6mケーブルを使ったが、長さの割には素直に反応してくれた。

 しかしながら、どういうわけかラズパイのGPIO端子を引き出すセットは反応してくれなかった。接続抵抗が高すぎるのだろうか?


H29.8.6

 現在は、実際に使用する基板ースを作成している。一人ひとりにスイッチを渡せるようにするものだ。

 基板にはφ2.1のDCジャックを半田付けした。これに3m〜8mのコードを持ったスイッチをDCプラグで接続する。一応25人分用意した。スイッチを保持する本体は、百均で探したシャボン玉用液5本セットだ。5セット使用した。シャボン玉の液は、遊ばずに廃棄した(^^;)

 フタに木工用の10mmドリルで穴を開けた。こんな刃の具合だから空けやすかった。ただ、手回ししたので25個は苦労した。ここにスイッチを入れて裏からナットで締め付ける。

 問題は25個のスイッチにつなげるコードの長さだ。会場で参加者の配置がコの字型であれば5mを25本用意すればいいのだが、9人3列に授業のように並ぶと、いろいろな長さのものが必要になってくる。最長の8mを25本用意してもいいのだが、安上がりを第一にする者としては困る。そこで、幾種類かの長さの延長ケーブルを考えている。

 このスイッチケーブル作りは問題はないとは思うのだ。10本作製した。基板作りの方は一応配線を半田付けした。恐らくあちこち配線ミスをしていてそうだ。明日チェックしようと思う。確実性がどんどん落ちているおじいさん作業になっている。


H29.7.15

 講座をやっていて、時に参加者の意見を聞きたいことがある。3桁の人数ではないので、できるかなと思い、計画してみた。以前からやってみたいと思ってはいたが、今回こういう気持ちになったのは、Raspberryを入手したことがきっかけだ。

 Raspberryには端子が沢山あるのでそれを使う。キーマトリックス方式を使うと、スイッチ25個(25人)をOUT5列、IN5列、GND1本の11本で解決できる。ネットには沢山の資料があったのでそれらを使わせていただく。

 最初に、ブレッドボードを使って2×2列の4個タクトスイッチで試してみた。

 OUT1をHIGH、OUT2をLOWにしてIN1&IN2で2個のスイッチの状態を入手した後、OUT1をLOW、OUT2をHIGHにしてIN1&IN2で残り2個のスイッチ状態を読む。これを繰り返せば良い。OUTやINが多くなっても、基本的には同じことだ。ただOUTやINが10列(100人)を超えたら、いくらRaspberryとあってもGPIOピンが不足する。ICを使えばいいのだろうが、その方法を知るにはハードルが高すぎる。何より、配線するときに困る。100人ならば、配線ケーブルの束がどれだけになるのだろう。

 話を戻そう。プログラムの方は難しくはない。キャラクターベースなら。しかし、参加者の皆さんに結果が見えないのでは効果が薄い。ディスプレイに大きく出なければならないということだ。

 ここが、私にとっては現実的な高い壁だ。しかし、検索してみると解決策が見えてきた。RaspberryではPythonという言語を使っている。複数の解決策があったが、以前少しかじったTkinterを使ってみることにした。

 「タイマー」をサンプルとしたWEBがあったので、これを利用することにした。参加者がボタンを押してそのカウントが刻々と変わるので、変化する数値を表示する必要があったのだ。プログラムリストを見ても、俄か学習者の私にはなかなか理解しにくいのだけれど、キャラクターベースで完成していたプログラムを、「ここだ!」というところにコピペして、変数を直しながら、不要な部分は削りながら、試行錯誤しながら試してみた。

 すると、「なるほど!」と思えたときに、思い通りの動きをしてくれた。思ったより簡単だった。しかし、「初めから作れ!」と言われたら、手も足も出ない! ネットの皆さん、ありがとう!

 下の画像は画面一杯に最大化して画面コピーしたもの。フォントサイズは300ポイントほどだったと思う。このくらいであれば、普通教室の後ろからでも分かるね。

 次は、2×2を4×4にする。ブレッドボードではできないので、汎用基板に作りつける。安定もするし。そして、最終的には5×5の25人分を手に収まるサイズのプッシュボタンを付けて教室程度の広さで使えるように配線することにしている。

 とりあえず作ってみた。ラズパイにつないだところ、上段1列が妙な反応だ。色々試したところ、半田付けが一部ショートしているようだ。それが解決したらOKだ。メドはたったかな。

 次なる課題は、最大5mのコードを付けた手押しスイッチが使えるかだ。ラズパイが電圧をかけ、読みとれるのだろうか。OUTの1端子には5つスイッチがつながる。ラズパイの能力はいかに?

 あと、コードが単純に5m×25個なので125m必要なんだよね。これが高価すぎる。確か、不思議なことには手持ちで50mは持っているはず.....(^^)

 PCはもちろんRaspberryであり、50インチくらいのTVに表示したら面白いね。取り敢えずは、手持ちの10インチのディスプレイ。