グリッド上のオブジェクト配置の検出


11

私はAndroid ADKプロジェクトに取り組んでいます。ボード(8x8)上のチェスの駒の位置を検出する方法を探しています。NFCのようなものを見ていましたが、高すぎるようです。考慮すべき別のテクノロジーはありますか?世界がいつでも掲示板の完全な状態を読み取れるようなものが必要です。たとえば、一部の部品が破損する可能性があり、それらがセットアップされたら、場所が必要になります。これをさらに説明すると、トゥースメントチェスゲームでは、駒が間違った場所に移動され、どちらのプレイヤーもゲームが続行することに気付かない場合。そのため、ゲームのルール上、位置が不可能な場合でも、ゲームを記録する必要があります。

どんなテクノロジーを見るかという一般的な方向性を指摘したいだけです。


「トーナメントチェスゲームで駒が間違った場所に移動され、どちらのプレイヤーもゲームが続行することに気付かない場合」。私は興味がある。チェスのルールはそう言う?(実際には、それは理にかなっています。なぜなら、他に誰も見ていない場合、誰も気づかないと、どうして彼らは続けられないのですか?)
テラクラボ

@Telaclavo確認できます。それはトーナメントで起こりました。私の低レベルのプレーでは明らかな解決策はありませんでした。
Stephen Collings 2013年

回答:


13

最初のアイデア:RFID。各ピースの下に1つのタグ(非常に安い)。各タグは、それがどのタイプのピースであるかを識別する必要があります({6白} + {6黒} = 12種類のうち)。ボード全体に1つのトランシーバ回路と1〜64マルチプレクサ。また、64個の小さなアンテナがあり、それぞれが各ボード位置の下にあります。トランシーバーは非常に低いRF電力で動作します(実験的に最適なものを見つける必要があります)。マルチプレクサの接続を変更することにより、64の位置すべてをスキャンし、それぞれに存在するタグ(存在する場合)のIDを読み取ります。

説明するICを使用したことはありませんが、このドキュメントは、RFIDマルチプレクサーの実装に役立つ可能性があります(これは、注意深いレイアウトとともに、最も困難な部分になります)。

2番目のアイデア:独自の透磁率によって各ピースタイプを区別します。各ピースに、下部に特定の質量を追加します。この余分な質量は、32個すべてで同じになります(ユーザーが快適に感じるため)。各追加質量は、「磁性」質量と「補正」(非磁性)質量の2つの質量の合計になります。補償質量の唯一の目的は、すべてのタイプのピースの追加の総質量を等しくすることです。12種類のピースを区別する必要があります。ピースの各タイプには、固有の透磁率持つ磁気質量が必要です。おそらくμが高い材料を選択しますが、選択できる材料はたくさんあり、それぞれがμが異なります(ここにある 1つの表を参照)μμμ)。

各ボード位置の下で、ワイヤーを数回巻く必要があります(直径が正方形のほぼ側面になるように)。64コイルになります。この場合も、1〜64のマルチプレクサを使用して、そのうちの1つだけをインダクタンスメーターに接続します。現在の違いは、マルチプレクサがRFを処理する必要がないことです。すべてのコイルの1つのノードを一緒に結び、64個のアナログスイッチ(非常に安価)を使用して、1つのコイルをインダクタンスメーターに向けることができます。回路は、可能な限り短い時間で、64コイルのそれぞれで測定された自己インダクタンスを決定する必要があります。それほど正確である必要はありません。Lの13の可能な値(つまり、4ビット未満)を決定する必要があるだけです。時間領域でメソッドを試すことができます(たとえば、定電圧を印加し、電流の勾配を測定します)。または周波数領域(たとえば、特定のコンデンサーを追加して、共振周波数をすばやく探そうとする)。Lのこれらの12の異なる値を達成するために、異なる透磁率と磁性材料の異なる寸法で遊ぶことができます。

妥当な時間内に64個の位置(64個の自己インダクタンスを測定)をスキャンする必要があるため、おそらく時間領域アプローチを使用します。たとえば、1秒間でボードの状態全体を読み取ることができる場合、インダクタンス測定ごとに15.6 msがあります。挑戦的ですが、実行可能です。

最終的に速度がボトルネックになる場合、アナログフロントエンドを1つではなく8つ含めると、システムを8倍高速にすることができます。各フロントエンドは、ボードの各行に割り当てられます。このようにして、8つの自己インダクタンスを同時に測定できます(各測定で125 msが得られますが、ボード全体の状態は1秒です)。単一のADC(8チャネル)でも、1つのMCUで十分だと私は確信しています。

L1LN

アイデア2

この2番目のアイデアの利点:RFは不要です。ただし、透過性の異なる独自の「タグ」を作成する必要があります。


ありがとうございました。あなたの最初のアイデアは、進むべき道のようです。私はあなたの第二のアイデアの創造性が好きです。作品をカスタムメイドできる商用製品の方が良いかもしれません。しかし、私はただこれを楽しんでいるだけです。
ジョシュ

@theJosh回答した後でも、質問の中にまだ混乱している文があります。「たとえば、一部の部品がノックオーバーされる可能性があり、一度セットアップすると、場所が必要になる」というのは、私にはあまり意味がありません。ピースを配置する場所をユーザーに伝える必要があり、その逆ではありません。私はその文を次のように解釈しました。システムが履歴に依存せずにシステムが任意のボードの状態を読み取れるようにしたいので、私はそれを念頭に置いてより簡単な答えを破棄しました。
テラクラボ

@theJosh(続き)。そうでない場合、デビッドカリーの解決策はより単純になります。
テラクラボ

最初のアイデアの問題は、RFIDにかなり短い範囲を必要とすることです。範囲が大きすぎる(正方形よりも大きい)場合、ピースの適切な位置を感知することがより困難になります。不可能ではない(私は願っています)。

@DavidKessnerそうです、それで私は彼が実験的に最適なRFパワーを見つける必要があるだろうと私が言った理由です。アンテナからタグまでの距離は、2つの隣接する正方形の間の距離よりもはるかに短いため、実行可能でなければなりません。
テラクラボ2012年

4

私は、64個の正方形のそれぞれの中心に穴が開けられた電子チェス盤をたくさん見ました。各穴の下に単純な光検出器があり、1ビットしかありません。検出器をカバーしています。これには、(a)ボードの古い構成を記憶し、どの部品がどこに移動したかを追跡するためのメモリとコード、および(b)ポーンの昇格を処理するための特別なものが必要です。これにより、どの正方形が占有され、どの正方形がいつでも開いているかを検出できますが、ボードの完全な状態は検出できません。


1
賢い!ロジックでバックアップされた非常にシンプルなハードウェア!
クラバッキオ

これは、一度に1つのピースしか動かされない限り機能します。OPがいくつかのピースがノックオーバーされてから元に戻されるという言及の場合、それは機能しません。そうでなければ、それは良い解決策です。

1

GlyphChessは、透明なチェス盤を使用してこれを解決します。下のスキャナーが各ピースの下部に貼り付けられた固有のバーコードを読み取って、どのピースがどこにあるかを判断します。 「PARCの秘密のコード」 スラッシュドット:スキャナーでGNUチェスをプレイ これにより、ボードの状態全体をいつでも再読み取りできます。チェス盤には18種類未満のユニークなピースがあるため、何百万ものオブジェクトを区別できる高解像度バーコードよりも、dタッチマーカーなどの認識しやすい基準を使用する方が良いでしょう 。


ちょっと興味があるんだけど。ボードを透明にして、ユーザーに黒と白の正方形をどのように表示しますか?たぶん、いくつかの中間的な透明度がありますか?そして、ユーザーはライトを見ませんか?
テラクラボ

@テラクラボ:わからない-ほぼ透明な四角形が伝統的なグリーンとバフに色を付けた?今日これを作成する場合、ボックスの内部を白くしてから、カメラを下に置き、ガラスのチェス盤を上に置きます。人間が作品を見るのに十分な光がある場合、カメラがそれを読み取るのに十分な光が白い内部で跳ね返り、各作品の下部にあるバーコードを照らします。照明は必要ありません。
davidcary 2012年

1

正方形ごとにカラーセンサーを作成し、作品の下部に異なる色のラベルを貼ることでこれを行います。

カラーセンサーは、3つのLED(おそらく赤、緑、青)と、すべての可視光に敏感なフォトトランジスタを使用して作成されます。LEDを順番にオンにして、チェスの駒で反射するフォトトランジスターの測定値を測定します。

白色LEDと、異なる色に反応する3つの異なるフォトトランジスターがある場合、逆に行うことができます。しかし、それは難しいです。ほとんどのフォトトランジスタは、その色選択ではありません。フィルターを使用することもできますが、異なる色のLEDを使用する方が簡単です。

LEDが十分に短い時間オンになっていると、「過度に」見えることはありません。また、LEDは、ボードにマークを付けたり、ゲームに勝ったときにクールな小さな光のショーを行うなど、他の目的にも使用できます。

これには少し工夫があり、すべての配線と構築を簡単にしています。Avagoには、I2Cチップへの周囲光があり、これにより簡単になる場合があります。他の会社にも似たようなものがあります。

次のトリックは、十分に異なる色のラベルを作成して、1枚ごとに一意の色を使用することです。さまざまなプリンターインク/トナー顔料の正確なスペクトルがわからないため、これには試行錯誤が必要です。それでも、光センサーから6ビットの解像度を取得できるのであれば、それほど難しくないはずです。(6ビットで十分なノイズマージンが得られます。)


1

色を検出する必要はなく、灰色の濃淡だけです。各部品の下部には灰色の色合いがあり、ボードに設定された単純なIRエミッター/検出器のペアがアナログ値を読み取ります。


0

「Zowie」と呼ばれる会社はかつて「Ellie's Enchanted Garden」を含むいくつかのプレイセットを製造しました。これはコンピューターに接続し、プレー面上のいくつかのトークンの位置を感知できます。各トークンはコンデンサーとワイヤーのコイルで構成され、プレー面にはワイヤーのグリッドがありました。コイルキャップアセンブリのLC周波数と一致する周波数で水平線に電流を流すと、その周波数が垂直線に現れます。ワイヤーグリッドは両方向に約6本のワイヤー/インチで、見かけの位置決め分解能はおそらく約0.05インチでしたが、CPUボードに接続されているワイヤーは約16本しかありませんでした。ワイヤーが各トークンのようなパターンで配置されていると思います。 2本以上の水平ワイヤーに反応し、少なくとも2本の垂直ワイヤーを刺激します。刺激に反応するワイヤーの組み合わせに注目することで、CPUはトークンがどこにあるかを把握できます。私はZowieが彼らの特許で主張したこと、またはそれが引用した従来技術を覚えていませんが、従来技術には、現在のパブリックドメインによるアプローチが含まれ、目的に適している可能性があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.