2015/10/09

[hw]なんでAD変換したいのに分圧するんだろう?

感圧センサーを、実際につないでみようと思った。
はっ、よく考えると、自分でアナログなものを取り付けるのって初めてじゃなかろうか?

今回買った感圧センサーは、圧力を加えると抵抗値が下がる。
圧力を加えていないと、無限大くらいの抵抗値になるみたいだ。
こういうのは、AD変換すればよいというのくらいはわかる。

さて、実際つないでみようとして、止まってしまった。
どうつないだらよいの?


リンクをたどっていくと、Arduinoに接続するときの例があった。
bildr » Force Sensitive Resistor + Arduino
接続が丁寧に書いてあって、非常にありがたい。

あれ、10kΩの抵抗で分圧するんですか。。。
なんでなの???

図にするほどでもないけど、こんな感じだ。
ボリュームにしているところは、今回の感圧センサーのつもり。
image

なので、これでAnalog Inになるのは感圧センサーじゃない方だ。
どちらも10kΩだったら、半々なので2.5V。

image

感圧センサーの方が40kΩになったら、通る電流は5.0V÷50kΩ=100uA。
電圧は電流×抵抗だから、1.0V。

image

うーん、別にそんなことしなくても、直接見たらいいやん。

image

あれ、抵抗が1つしかないから、そこに全電圧がかかるやん・・・。

ふ、ふん、やるじゃないか。
分圧しないといかんことは認めてやろう。


と、強がっても仕方ない。
やってみればわからなくもないのだけど、そこに至るまでに時間がかかりすぎる。
それに「わからなくもない」と書いたが、自信がまったく持てない。
先生が、先生がほしい!

そういえば、回路シミュレータというものがあったなぁ、とLTspiceなるアプリをインストールしてみた。
わからないなりに、描いてみた。
電源は、F2を押して、voltageを選ぶと選択できる。
あと、部品の設定は右クリックでメニューが出てくる。

image

メニューから「Simulate > Run」として、適当に値を入れて、OKする(私はStop Timeか何かに入れたような気がする)。
そうすると、こんな画面になるので、計測したい線の上にマウスを移動させて、左クリック。

image

おお、2.5Vだ!
(マウスカーソルがプローブっぽい形になるんだけど、WinShotでも拾えなかった。。)
まあ、グラフにしなくても、カーソルを上に載せただけでステータスバーに出てくるんだけどね。

せっかくなので、抵抗値が変化したときの様子も見てみたい。
だって、回路シミュレータなんだから、そういうのは得意なはずではないか。
そう思ってボリュームを作ろうとしたが・・・検索してもわからない。

抵抗値を、数字じゃなくて「{XR2}」のように括弧でくるむと、パラメータになるらしい。
そして、シミュレータで.step命令を使えばいいらしいが・・・どうやるの?

LTSpice : 可変抵抗を表現する | Scratchpad
こちらに、「.op」というのと合わせて使うようになっていた。
この.opは、シミュレータの設定にあった。

image

よくわからんが、Ctrl+Enterで改行できたので、

.op
.step param XR2 100k 1k 1k

と書いた。
画面のどこかに配置するようなカーソルが出てきたから、とりあえず分岐点あたりをクリック。
そしてシミュレーション実行。
よくわからんが10秒のカウントダウン後、マウスカーソルがプローブっぽいのになったので、分圧しているあたりをクリック。

image

これで・・・いいのかい?
先ほどのリンク先も分圧回路なのだが、そちらは抵抗値が連動しているから線形になっているが、こちらは分子固定で分母が線形的に増えていくから、だんだん0に収束していくようなグラフになるのか。

今回は、加重としてある閾値以上かかっていたら立っている、それ以下だったら座っている、程度の判定にするつもりだ。
だから、加重が下がる→抵抗値が上がる→AINに入ってくる電圧が下がる、ということで、AD値が閾値より小さくなったら立っていないとみなす、くらいでいいのかな。

LTspiceはすごく高等なことができそうだけど、私にはこのくらい使えればいいのかな。
これ以上難しかったら、ハード屋さんに助けてもらおう。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。