センサの値をいわゆる物理値に変換するためには、センサの電圧をコンピュータに取り込む必要があります。
センサの電圧はアナログな値ですが、コンピュータは0/1のデジタルな世界です。そのためアナログ値をデジタル値に変換(A-D変換)する必要があります。
その際の変換精度を表すものが分解能です。
分解能とは
分解能とは、センサの電圧を何段階で認識することができるのかを示すもので、分解能が高ければ高いほど実際の値に近い値で変換することができます。
分解能は以下のようにビット数で表されます。
分解能(bit) | 符号あり | 符号なし | 分割数 |
1 | – | 0~1 | 2 |
2 | -2~1 | 0~3 | 4 |
3 | -4~3 | 0~7 | 8 |
4 | -8~7 | 0~15 | 16 |
5 | -16~15 | 0~31 | 32 |
6 | -32~31 | 0~63 | 64 |
7 | -64~63 | 0~127 | 128 |
8 | -128~127 | 0~255 | 256 |
9 | -256~255 | 0~511 | 512 |
10 | -512~511 | 0~1023 | 1024 |
11 | -1024~1023 | 0~2047 | 2048 |
12 | -2048~2047 | 0~4095 | 4096 |
13 | -4096~4095 | 0~8191 | 8192 |
14 | -8192~8191 | 0~16383 | 16384 |
15 | -16384~16383 | 0~32767 | 32768 |
16 | -32768~32767 | 0~65535 | 65536 |
分割数は2の整数倍となるため、例えば100段階で表すといったことはありません。(できなくもないと思いますがメリットが無い)
A-D変換例
例として分解能が4ビット、電圧0V~5Vのセンサについて考えてみます。
8ビットの場合は0Vから5Vまでを16段階で表すことができます。
以下のように0.3125V毎に1ステップ上昇するイメージです。

例えば実際の電圧が0.3Vだったとしても、4ビット分解能のセンサでは0Vであると認識されてしまいます。
※このA-D変換の際に生じる誤差を量子化誤差と呼びます。
A-D変換の計算
A-D変換された値は以下の式で求めることができます。
\(AD変換後の値=\frac{入力電圧}{基準電圧} \times 2^{分解能}\)
なお、小数点以下はばっさりと切り捨てられます。
コメント