⚓
圧力センサの使い方
機能
圧力を抵抗値に変換する。物を載せたときの検知に使える。
部品
項目 | 値 |
---|---|
検出範囲 | 3~150N |
作動力 | 3N |
無負荷時抵抗値 | 20MΩ以上 |
使用温度範囲 | -30~85℃ |
出力形式 | アナログ(抵抗値) |
配線
- 5V → センサ → A0
- センサ → R(10KΩ) → GND
GNDの前に抵抗がある形をプルダウン抵抗と呼ぶ。当初(1)だけで動かしていたが(2)の配線がとても重要だとあとでわかった(後述)。
コード
void setup() {
Serial.begin(9600);
pinMode(A0, INPUT);
}
void loop() {
Serial.println(analogRead(A0));
delay(1000 / 30);
}
実行結果
摘んだときだけ高い値になっているのがわかる。
押し加減と値の関係
状況 | アナログ入力値 |
---|---|
押してない | 0〜2 |
触れている程度につまむ | 0〜2 |
優しくつまむ | 120 |
普通につまむ | 600 |
強くつまむ | 970 |
わりと正確な比例関係になっている。
はまった点
当初 5V → センサ → A0 とだけ繋いでいたので押していない状態が不安定だった。
プルダウン抵抗なしは200〜550まで揺れる
それでも押すと 1023 まで上がるので 550 との差で計ればいいのかと考えていた。しかし他の方の記事を拝見するとプルダウン抵抗が必要とのことだった。
プルダウン抵抗をつけると0〜2になった
疑問
抵抗の10KΩという値はどこからきた?
参考
Discussion