タカラトミーの『QSTEER』に関する情報
赤外線信号の解析です。
とりあえず適当に赤外線受信回路を作り、
サウンドボード経由でPCに取り込みました。
下図は各バンド(A~D)の前進ボタン押下時の信号です。
なお、赤外線受光素子はアクティブローですので、注意してください。
規則性が有るような無いような・・・
少し分かりづらいですね・・・
どのバンドも全部で8つのブロックがあります。
これらのブロックは4つずつ前半と後半にに別れます。
つまり、前半の4つは全く同じ内容で、後半も同様です。
前半のブロックの内容を詳しく見たのが下図です。
各ブロックは7つのパルスで構成されていることが分かります。
また、7つのパルスには長短があることも分かります。
パルスの長短は3種類に分けられそうです。
そこで、長いものから順に、H、1、0と考えると、
各バンドの第1ブロックの内容は下記のように書くことができます。
ここで、規則性があることに気づきますね。
つまり、最初のHのパルスは意味の無いスタートビットを、
それに続く2つのパルスは2ビットでバンドの種類を、
残りの4つのパルスは4ビットで動作の種類(この場合は前進)を表しています。
つまり、以下のような構造になっています。
バンドビットb0、b1はバンドの種類を表します。
また、コントローラの各ボタンを押下したときの
動作ビットm0、m1、m2、m3を調べました。
まとめると以下のようになりました。
※F...前進、B...後退、L...左、R...右、D...ダッシュ
最初の図に戻りますが、8つのブロックの内、前半と後半の4つずつは同じ内容です。
前半の4つは、ボタンの押下状態によって先の表に従い変化します。
ところが、後半の4つは押下状態によらず、常に同じ内容になります。
7ビットで構成されること、スタートビット、バンドビット、動作ビットから構成されること、
ブロック間の時間間隔などは、前半と同じです。
ただし、動作ビットが『1111』に固定されます。
ちなみに、ダッシュボタンを押したときのものと同じです。
なぜこのような複雑な仕様になっているのか、お分かりになる方はいませんか?
とりあえずは信号の構成が分かりました。
後は各ビットやブロックのタイミングですね。
こちらも少々複雑ですが・・・
とりあえず適当に赤外線受信回路を作り、
サウンドボード経由でPCに取り込みました。
下図は各バンド(A~D)の前進ボタン押下時の信号です。
なお、赤外線受光素子はアクティブローですので、注意してください。
規則性が有るような無いような・・・
少し分かりづらいですね・・・
どのバンドも全部で8つのブロックがあります。
これらのブロックは4つずつ前半と後半にに別れます。
つまり、前半の4つは全く同じ内容で、後半も同様です。
前半のブロックの内容を詳しく見たのが下図です。
各ブロックは7つのパルスで構成されていることが分かります。
また、7つのパルスには長短があることも分かります。
パルスの長短は3種類に分けられそうです。
そこで、長いものから順に、H、1、0と考えると、
各バンドの第1ブロックの内容は下記のように書くことができます。
バンド | パルス |
A | H000001 |
B | H010001 |
C | H100001 |
D | H110001 |
ここで、規則性があることに気づきますね。
つまり、最初のHのパルスは意味の無いスタートビットを、
それに続く2つのパルスは2ビットでバンドの種類を、
残りの4つのパルスは4ビットで動作の種類(この場合は前進)を表しています。
つまり、以下のような構造になっています。
バンド | 動作 | |||||||
H |
|
|
バンドビットb0、b1はバンドの種類を表します。
バンド | b0 | b1 |
A | 0 | 0 |
B |
0 | 1 |
C | 1 | 0 |
D | 1 | 1 |
また、コントローラの各ボタンを押下したときの
動作ビットm0、m1、m2、m3を調べました。
まとめると以下のようになりました。
動作 | m0 | m1 | m2 | m3 |
0 | 0 | 0 | 0 | |
F |
0 | 0 | 0 | 1 |
B | 0 | 0 | 1 | 0 |
L | 0 | 0 | 1 | 1 |
R | 0 | 1 | 0 | 0 |
F+D | 0 | 1 | 0 | 1 |
F+L | 0 | 1 | 1 | 0 |
F+R | 0 | 1 | 1 | 1 |
F+L+D | 1 | 0 | 0 | 0 |
F+R+D | 1 | 0 | 0 | 1 |
B+L | 1 | 0 | 1 | 0 |
B+R | 1 | 0 | 1 | 1 |
B+D | 1 | 1 | 0 | 0 |
B+L+D | 1 | 1 | 0 | 1 |
B+R+D | 1 | 1 | 1 | 0 |
D | 1 | 1 | 1 | 1 |
最初の図に戻りますが、8つのブロックの内、前半と後半の4つずつは同じ内容です。
前半の4つは、ボタンの押下状態によって先の表に従い変化します。
ところが、後半の4つは押下状態によらず、常に同じ内容になります。
バンド | 動作 | |||||||
H |
|
|
7ビットで構成されること、スタートビット、バンドビット、動作ビットから構成されること、
ブロック間の時間間隔などは、前半と同じです。
ただし、動作ビットが『1111』に固定されます。
ちなみに、ダッシュボタンを押したときのものと同じです。
なぜこのような複雑な仕様になっているのか、お分かりになる方はいませんか?
とりあえずは信号の構成が分かりました。
後は各ビットやブロックのタイミングですね。
こちらも少々複雑ですが・・・
PR
この記事にコメントする