“(SKU:RB-02S088)电流检测传感器”的版本间的差异
来自ALSROBOT WiKi
(以“右 ==产品概述== ==规格参数== ==使用方法== ==应用例程== ==产品相关推荐== 购买地址:[http://www.alsrobo...”为内容创建页面) |
|||
第1行: | 第1行: | ||
[[文件:.jpg|500px|缩略图|右]] | [[文件:.jpg|500px|缩略图|右]] | ||
==产品概述== | ==产品概述== | ||
− | + | 此产品由一个电流感应器TA12-200组成构成。可以将大的电流量转换为幅度小的电压量输出。该模块采用沉金工艺,外观更加美观,同时采用防插反3Pin接口,操作更加安全,插口一边有大写字母A表示该模块位模拟量传感器,另一边是电流表的图标标志表示该模块具有测试电流的功能。此产品可以应用于交流电的电流检测,最大可检测的电流为5A。 | |
==规格参数== | ==规格参数== | ||
− | + | # 工作电压 :+5v | |
+ | # 尺寸大小: 30mm x 25mm | ||
+ | # 重量大小:8g | ||
+ | # 信号类型:模拟信号 | ||
+ | ===引脚定义=== | ||
+ | * S:信号引脚 | ||
+ | * NC:不需要连接 | ||
+ | * -:电源地 | ||
==使用方法== | ==使用方法== | ||
+ | [[文件:RB-02S08801.jpg|700px|缩略图|居中]] | ||
+ | [[文件:RB-02S08802.jpg|700px|缩略图|居中]] | ||
+ | S引脚接到控制器的A0口。NC和 - 分别接到电源的+5V和GND。注:NC可以不接 | ||
+ | ==应用例程== | ||
+ | ===示例程序=== | ||
+ | <pre style='color:blue'>#define ELECTRICITY_SENSOR A0 // Analog input pin that sensor is attached to | ||
− | + | float amplitude_current; //amplitude current | |
+ | float effective_value; //effective current | ||
+ | void setup() | ||
+ | { | ||
+ | Serial.begin(9600); | ||
+ | pins_init(); | ||
+ | } | ||
+ | void loop() | ||
+ | { | ||
+ | int sensor_max; | ||
+ | sensor_max = getMaxValue(); | ||
+ | Serial.print("sensor_max = "); | ||
+ | Serial.println(sensor_max); | ||
+ | //the VCC on the RobotBase interface of the sensor is 5v | ||
+ | amplitude_current=(float)sensor_max/1024*5/800*2000000; | ||
+ | effective_value=amplitude_current/1.414;//minimum_current=1/1024*5/800*2000000/1.414=8.6(mA) | ||
+ | //Only for sinusoidal alternating current | ||
+ | Serial.println("The amplitude of the current is(in mA)"); | ||
+ | Serial.println(amplitude_current,1);//Only one number after the decimal point | ||
+ | Serial.println("The effective value of the current is(in mA)"); | ||
+ | Serial.println(effective_value,1); | ||
+ | } | ||
+ | void pins_init() | ||
+ | { | ||
+ | pinMode(ELECTRICITY_SENSOR, INPUT); | ||
+ | } | ||
+ | /*Function: Sample for 1000ms and get the maximum value from the SIG pin*/ | ||
+ | int getMaxValue() | ||
+ | { | ||
+ | int sensorValue; //value read from the sensor | ||
+ | int sensorMax = 0; | ||
+ | uint32_t start_time = millis(); | ||
+ | while((millis()-start_time) < 1000)//sample for 1000ms | ||
+ | { | ||
+ | sensorValue = analogRead(ELECTRICITY_SENSOR); | ||
+ | if (sensorValue > sensorMax) | ||
+ | { | ||
+ | /*record the maximum sensor value*/ | ||
+ | sensorMax = sensorValue; | ||
+ | } | ||
+ | } | ||
+ | return sensorMax; | ||
+ | }</pre> | ||
+ | ===程序效果=== | ||
+ | 打开串口监视器之后,会输出当前检测到的模拟值。 | ||
==产品相关推荐== | ==产品相关推荐== | ||
− | 购买地址:[ | + | 购买地址:[] |
2015年7月31日 (五) 10:51的版本
目录 |
产品概述
此产品由一个电流感应器TA12-200组成构成。可以将大的电流量转换为幅度小的电压量输出。该模块采用沉金工艺,外观更加美观,同时采用防插反3Pin接口,操作更加安全,插口一边有大写字母A表示该模块位模拟量传感器,另一边是电流表的图标标志表示该模块具有测试电流的功能。此产品可以应用于交流电的电流检测,最大可检测的电流为5A。
规格参数
- 工作电压 :+5v
- 尺寸大小: 30mm x 25mm
- 重量大小:8g
- 信号类型:模拟信号
引脚定义
- S:信号引脚
- NC:不需要连接
- -:电源地
使用方法
S引脚接到控制器的A0口。NC和 - 分别接到电源的+5V和GND。注:NC可以不接
应用例程
示例程序
#define ELECTRICITY_SENSOR A0 // Analog input pin that sensor is attached to float amplitude_current; //amplitude current float effective_value; //effective current void setup() { Serial.begin(9600); pins_init(); } void loop() { int sensor_max; sensor_max = getMaxValue(); Serial.print("sensor_max = "); Serial.println(sensor_max); //the VCC on the RobotBase interface of the sensor is 5v amplitude_current=(float)sensor_max/1024*5/800*2000000; effective_value=amplitude_current/1.414;//minimum_current=1/1024*5/800*2000000/1.414=8.6(mA) //Only for sinusoidal alternating current Serial.println("The amplitude of the current is(in mA)"); Serial.println(amplitude_current,1);//Only one number after the decimal point Serial.println("The effective value of the current is(in mA)"); Serial.println(effective_value,1); } void pins_init() { pinMode(ELECTRICITY_SENSOR, INPUT); } /*Function: Sample for 1000ms and get the maximum value from the SIG pin*/ int getMaxValue() { int sensorValue; //value read from the sensor int sensorMax = 0; uint32_t start_time = millis(); while((millis()-start_time) < 1000)//sample for 1000ms { sensorValue = analogRead(ELECTRICITY_SENSOR); if (sensorValue > sensorMax) { /*record the maximum sensor value*/ sensorMax = sensorValue; } } return sensorMax; }
程序效果
打开串口监视器之后,会输出当前检测到的模拟值。
产品相关推荐
购买地址:[]