自制彎曲傳感器
tags: arduino
彎曲傳感器
flex_sensor
前陣子看了平台上一位老師試範超低成本制作彎曲傳感器
主要使用鉛筆碳粉為導體制作彎曲傳感器,決定也來試試
於是買了必須的材料,但可能我沒掌握好技巧,在塗滿碳
粉的紙上始終量不到阻值,插上Arduino也無法讀取到數值
,有點失望之餘但不放棄的翻遍網路資源,發現有一種叫
石墨片的東西,一般是拿來做散熱用的,但它也兼具導電
的特性,有人就拿它來做彎曲傳感器,於是我蝦皮了五片
約200元,制作了一片成功了。
因為前一篇有紀錄我手工做了HandRobot,也想加入彎曲傳感器來控制
一番,這篇就先紀錄如何制成彎曲傳感器。
所須材料
- 石墨片
- 塑膠片
- 軟質資料夾
- 紙膠帶
- 透明膠帶
- 杜邦線
- 剪刀/美工刀
石墨片依照10.5公分x1公分裁切,塑膠片10.5x1.3cm裁切
將杜邦線或實心導線剝線約10cm黏於紙膠帶上(紙膠帶最好比石墨片長度長一點)
*兩導線不要碰觸在一起
將石墨片(導電端)覆蓋於兩導線上,導線另一端紙膠帶往下摺,再將左邊往右摺,右邊往左摺,形成包裏住導線狀(見下圖)
然後兩端用透明膠帶黏住
將剛裁好的塑膠片和資料夾剪跟塑膠片一樣長寛,把封裝好的石墨片像三明治這樣夾於中間
兩端再用膠帶封住
接線圖
程式碼
int val;
int sensor=A0;
void setup(){
Serial.begin(115200);
pinMode(sensor, INPUT);
}
void loop() {
val=analogRead(sensor);
Serial.println(val);
delay(500);
}
加入伺服馬達
*彎曲傳感器量測到的數值不一,所以要自己測量最大和最小值再轉換對應角度
#include <Servo.h>
Servo myservo;
int sensor=A0;
int val;
void setup() {
myservo.attach(9);
myservo.write(170);
Serial.begin(9600);
}
void loop() {
val=analogRead(sensor);
val=map(val,3, 20, 0, 180);
if (val>180){
val=180;
}
if (val<0){
val=0;
}
myservo.write(val);
Serial.println(val);
delay(450);
}