“(SKU:RB-02S009A)电压检测传感器”的版本间的差异
来自ALSROBOT WiKi
(→例子程序) |
|||
(未显示1个用户的5个中间版本) | |||
第1行: | 第1行: | ||
[[文件:02S009A 01.png|500px|缩略图|右]] | [[文件:02S009A 01.png|500px|缩略图|右]] | ||
==产品概述== | ==产品概述== | ||
− | + | 由于目前电子产品各式各样,供电电源的电压也各不相同,要想检测就需要一款合适的电压检测模块和控制器。控制器模拟接口检测输入电压最大为5V,也就是说大于5V的电压将无法检测。最新推出的电压检测模块能够解决此问题,实现检测大于5V的电压。通过3P传感器连接线插接到传感器扩展板,不仅可以轻松实现对电压电量大小的检测,监控互动媒体作品或机器人电池供电的电量,也可以通过IICLCD1602液晶模块显示电压制作电压监测器。 | |
==规格参数== | ==规格参数== | ||
# 工作电压 :0V-25V DC | # 工作电压 :0V-25V DC | ||
第12行: | 第12行: | ||
* GND:电源地 | * GND:电源地 | ||
* VCC:电源正极 | * VCC:电源正极 | ||
− | [[文件: | + | [[文件:dian ya 04.png|500px|有框|居中]] |
* DC输入接口:红色端子正极接VCC,负极接GND | * DC输入接口:红色端子正极接VCC,负极接GND | ||
==使用方法== | ==使用方法== | ||
+ | ===工作原理=== | ||
+ | 电压检测模块由红色端子部分输入模拟电压,模块测量原理是基于电阻分压所设计,能使红色端子接口输入的电压缩小5倍,模拟输入电压最大为5V,那么电压检测模块的输入电压则不能大于5V×5=25V(如果用到3.3V系统,输入电压不能大于3.3Vx5=16.5V)。因为Arduino控制器自带的是10位AD转换,所以此模块的模拟分辨率为0.00489V(5V/1023),所以可以计算出,电压检测模块检测输入最小电压为 0.00489V×5=0.02445V。 | ||
+ | ===编程原理=== | ||
+ | 电压检测模块共引出三个引脚,分别是地线GND、电源Vcc和信号线S。实际使用时,可以将S端接在Arduino UNO控制器的一个模拟输入引脚上,如引脚A0,接线方法如接线图所示,电压输入信号由模块的红色端子处接入,经过分压后,在电压模块的S端会输出相应的模拟量电压信号,Arduino控制器通过模拟口读取,与控制器的基准电压比较,输出相应的模拟量值,利用电压的计算公式,可以计算出输入电压的大小。 | ||
===接线示意图=== | ===接线示意图=== | ||
[[文件:dianyajiance02.jpg|700px|有框|居中]] | [[文件:dianyajiance02.jpg|700px|有框|居中]] | ||
S引脚接到控制器的A0口。+和-分别接到电源的5V和GND。 | S引脚接到控制器的A0口。+和-分别接到电源的5V和GND。 | ||
===例子程序=== | ===例子程序=== | ||
− | <pre style='color:blue'>int analogpin=0; //定义analogpin为模拟口0 | + | <pre style='color:blue'> |
− | int val,val5; | + | int analogpin=0; //定义analogpin为模拟口0 |
− | int val2=0; | + | int val,val5; //定义变量val,val5 |
− | int val3=0; | + | int val2=0; //定义变量val2 |
− | int val4=0; | + | int val3=0; //定义变量val3 |
+ | int val4=0; //定义变量val4 | ||
void setup() | void setup() | ||
{ | { | ||
− | + | Serial.begin(9600); //设置波特率位9600 | |
} | } | ||
void loop() | void loop() | ||
{ | { | ||
− | + | int val,val5; | |
− | + | float val1; | |
− | + | val=analogRead(analogpin); //读出模拟口的值并赋给变量val | |
− | + | val1=val/3.9; | |
− | + | val5=(int)val1; | |
− | + | val3=val5/100; | |
− | + | val2=(val5%100)/10; | |
− | + | val4=val5%10; | |
− | + | Serial.print(val3); //串口打印出变量val3的值 | |
− | + | Serial.print(val2); //串口打印出变量val2的值 | |
− | + | Serial.print("."); //串口打印出“.” | |
− | + | Serial.print(val4); //串口打印出变量val4的值 | |
− | + | Serial.println("V"); //串口打印出大写字母V | |
− | + | delay(100); //延时0.1秒 | |
− | + | } | |
− | + | </pre> | |
− | + | ||
− | + | ||
− | + | ||
− | }</pre> | + | |
− | + | ||
− | + | ||
+ | ===程序效果=== | ||
+ | 将例子程序上传到Arduino控制器中,按照接线示意图连接电压检测模块,打开串口监视器之后,会输出当前检测到的电压值,如下图所示。 | ||
+ | [[文件:02S009A03.png|500px|缩略图|居中]] | ||
==视频演示== | ==视频演示== | ||
[[File:dian ya mo kuai 01.png|400px|左|link=http://v.youku.com/v_show/id_XMTI5NjIzMDg2MA==.html?from=y1.7-2]] | [[File:dian ya mo kuai 01.png|400px|左|link=http://v.youku.com/v_show/id_XMTI5NjIzMDg2MA==.html?from=y1.7-2]] | ||
[[File:dian ya mo kuai 02.png|400px|居中|link=http://v.youku.com/v_show/id_XODgxOTM5Njk2.html?from=y1.7-2]] | [[File:dian ya mo kuai 02.png|400px|居中|link=http://v.youku.com/v_show/id_XODgxOTM5Njk2.html?from=y1.7-2]] | ||
<br/> | <br/> | ||
− | |||
==产品相关推荐== | ==产品相关推荐== | ||
[[文件:erweima.png|230px|无框|右]] | [[文件:erweima.png|230px|无框|右]] |
2015年12月11日 (五) 09:25的最后版本
目录 |
产品概述
由于目前电子产品各式各样,供电电源的电压也各不相同,要想检测就需要一款合适的电压检测模块和控制器。控制器模拟接口检测输入电压最大为5V,也就是说大于5V的电压将无法检测。最新推出的电压检测模块能够解决此问题,实现检测大于5V的电压。通过3P传感器连接线插接到传感器扩展板,不仅可以轻松实现对电压电量大小的检测,监控互动媒体作品或机器人电池供电的电量,也可以通过IICLCD1602液晶模块显示电压制作电压监测器。
规格参数
- 工作电压 :0V-25V DC
- 尺寸大小: 30mm x 25mm
- 重量大小:4g
- 信号类型:模拟信号
- 接口类型:KF2510-3P
接口定义
- S:信号引脚
- GND:电源地
- VCC:电源正极
- DC输入接口:红色端子正极接VCC,负极接GND
使用方法
工作原理
电压检测模块由红色端子部分输入模拟电压,模块测量原理是基于电阻分压所设计,能使红色端子接口输入的电压缩小5倍,模拟输入电压最大为5V,那么电压检测模块的输入电压则不能大于5V×5=25V(如果用到3.3V系统,输入电压不能大于3.3Vx5=16.5V)。因为Arduino控制器自带的是10位AD转换,所以此模块的模拟分辨率为0.00489V(5V/1023),所以可以计算出,电压检测模块检测输入最小电压为 0.00489V×5=0.02445V。
编程原理
电压检测模块共引出三个引脚,分别是地线GND、电源Vcc和信号线S。实际使用时,可以将S端接在Arduino UNO控制器的一个模拟输入引脚上,如引脚A0,接线方法如接线图所示,电压输入信号由模块的红色端子处接入,经过分压后,在电压模块的S端会输出相应的模拟量电压信号,Arduino控制器通过模拟口读取,与控制器的基准电压比较,输出相应的模拟量值,利用电压的计算公式,可以计算出输入电压的大小。
接线示意图
S引脚接到控制器的A0口。+和-分别接到电源的5V和GND。
例子程序
int analogpin=0; //定义analogpin为模拟口0 int val,val5; //定义变量val,val5 int val2=0; //定义变量val2 int val3=0; //定义变量val3 int val4=0; //定义变量val4 void setup() { Serial.begin(9600); //设置波特率位9600 } void loop() { int val,val5; float val1; val=analogRead(analogpin); //读出模拟口的值并赋给变量val val1=val/3.9; val5=(int)val1; val3=val5/100; val2=(val5%100)/10; val4=val5%10; Serial.print(val3); //串口打印出变量val3的值 Serial.print(val2); //串口打印出变量val2的值 Serial.print("."); //串口打印出“.” Serial.print(val4); //串口打印出变量val4的值 Serial.println("V"); //串口打印出大写字母V delay(100); //延时0.1秒 }
程序效果
将例子程序上传到Arduino控制器中,按照接线示意图连接电压检测模块,打开串口监视器之后,会输出当前检测到的电压值,如下图所示。
视频演示