|
【Energia开发环境】MSP430 LAUNCHPAD学习笔记6--角位移传感器-角度测量
材料:
MSP-EXP430G2 553LaunchPad
WDD35D4角位移传感器
角度测量原理
WDD35D4 角位移传感器的功能在于把角度机械位移量转换成电信号,通过电刷在电阻基体上的位移来测量不同的阻值。传感器滑轨连接稳态直流电压,电刷和输出端之间的电压,与电刷在电阻基体上滑过的角度成正比。其实质就是个电位器,如下面接线图:
WDD35D4角位移传感器 实物图:
我们将脚1 和脚3 分别接至MSP430 LAUNCHPAD 的VCC和GND 两个引脚上,脚2接P1.1,如下图连接图:
我们用P1_1端口即A1作为模拟输入的接口,接在角位移传感器脚2,这个口的电压随着电阻值的不同而相应改变,正比于电阻变化。旋转多少度,电阻值就会改变,电压也就会改变,我们只要测量P1_1的电压变化,就能计算出旋转了多少角度。
源程序:
/***********************************************************************
角位移传感器
【Energia开发环境】MSP430 LAUNCHPAD学习笔记6--角位移传感器
Autor: qinkaiabc
**********************************************************************/
const int analogInPin = A1; // 模拟输入引脚为A1
int sensorValue = 0; // P1_1(A1)得到的数据
float angle = 0; // 角度
void setup()
{
analogReference(DEFAULT); //使用VCC(3.3V)电压作为基准源
Serial.begin(9600); //使用9600速率进行串口通讯
}
void loop()
{
sensorValue = analogRead(analogInPin); //读取A0口的电压值
float vol = sensorValue * (3.3 / 1023.0); //由采样得到的数据换算为实际的电压值
angle = 109.09 * vol; //0°-> 0V 360°-> 3.3V
Serial.print("Voltage:");
Serial.print(vol ); //串口输出电压数据
Serial.print(" "); //空格
Serial.print("Angle:");
Serial.println(angle); //角度
delay(1000); //等待1秒,控制刷新速度
}
电压计算公式:
(Vr- =Vr+ = 0, Vr+ = 3.3V)
Vin = (Nadc * 3.3)/1023;
注意事项:连接板载仿真器的TXD/RXD的两个短路帽需要横向连接,如下图
实际电路连接图:
数据显示图:
By qinkaiabc
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|