×

如何使用Grove Starter Kit Plus旋转角度传感器

消耗积分:0 | 格式:zip | 大小:0.00 MB | 2023-06-20

罗星

分享资料个

描述

旋转角度传感器产生介于 0 和 VCC 之间的模拟输出。角度范围为 300 度,值呈线性变化。电阻值为 10k 欧姆,非常适合 Arduino 使用。这也可能被称为“Grove Potentiometer”。

Steps

  • 将 Grove 电缆的一侧连接到旋转角度传感器
  • 将 Grove 电缆的另一端连接到 Grove 屏蔽的 A0
  • 运行下面给出的代码
  • 打开串口监视器(ctrl + shift + m)查看输出

Code

这里传感器给出的输出范围从 0 到最大值 300,它还根据传感器的值输出 LOW、MIDDLE 或 HIGH

低 -> 0 - 99 中 -> 100 - 199 高 -> 200 - 300

#define ROTARY_ANGLE_SENSOR A0
#define ADC_REF 5//reference voltage of ADC is 5v.If the Vcc switch on the seeeduino
        //board switches to 3V3, the ADC_REF should be 3.3
#define GROVE_VCC 5//VCC of the grove interface is normally 5v
#define FULL_ANGLE 300//full value of the rotary angle is 300 degrees
int getDegree();
void setup() 
{
 Serial.begin(9600);
   pinMode(ROTARY_ANGLE_SENSOR, INPUT);
}
void loop() 
{
 int degrees;
 degrees = getDegree();
 Serial.print("value  =  ");
 Serial.print(degrees);
 if(( degrees >= 0) && (degrees < 100))
   {
     Serial.println("Range : LOW ");
   }
 else if(( degrees >= 100) && (degrees < 200))  
   {
     Serial.println("Range : MIDDLE ");
   }  
 else
   {
      Serial.println("Range : HIGH ");
   }   
 delay(500); //adjust this for latency control
}
int getDegree()
{
 int sensor_value = analogRead(ROTARY_ANGLE_SENSOR);
 float voltage;
 voltage = (float)sensor_value*ADC_REF/1023;
 float degrees = (voltage*FULL_ANGLE)/GROVE_VCC;
 return degrees;
}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !