木製のチェス盤を作って、通常のピース(つまり、RFIDコード、磁石などを使用する修正されたピースではない)で遊ぶことができますが、それは私の動きに気づき、行動するソフトウェアに接続されています2番目のプレーヤー。
ボード上のピースを検出する方法について考えていましたが、どのピースがどこにあるかを認識する必要がないという判断を下しました。「真実」はソフトウェア内にあるため、ピースをAからBに移動する、ソフトウェアはどのピースが移動されたかを見つけることができます。
そこで、チェス盤の各フィールドに中央に1つ、右上に2つの穴を開けるというアイデアを思いつきました。
- 中央にあるものは、明るさセンサーに使用され、作品がフィールドに立っているかどうかを検出します。
- 隅の1つはLEDに使用され、ユーザーがコンピューターのために移動しなければならない部分を示すため、実際の状況がソフトウェアの状況と再び一致します。
Raspberry Piを実行するソフトウェアのハードウェア基盤として使用します。これはNode.jsで記述されます(ただし、この質問では重要ではありません)。
そのため、最終的には64個の輝度センサーと64個のLEDを個別に扱う必要があります。つまり、64個の出力と64個の入力が必要です。そしてもちろん、これはRaspberry Piがすぐに使えるものではありません。128個のI / Oポートを持つよりも良い方法が必要だと思います。
ボードの状態を検出することはより重要なタスクだと思うので、8x8のスイッチマトリックスの処理方法をWebで検索し始めました。ボードの列を順番にスキャンし、各列で行(=フィールド)が使用されているかどうかを検出するマイクロコントローラーを使用する提案を見つけました。
これにより、8個の出力と8個の入力を持つ複雑さが軽減されます(ボードの状態を読み取ることができるように)
これについて、いくつか質問があります。
- 私の考えは正しい、つまりこれは正しいアプローチですか、それとも私が気をつけるべきより良い代替案がありますか?
- 私はマイクロコントローラーの経験がないので、何に注意する必要がありますか?書くことができる言語でプログラム可能な16ピンのマイクロコントローラーだけが必要ですか?
- 誰かがそのようなボードを作成し、プロセスを順を追って説明するチュートリアルを知っていますか?