(SKU:RB-02S088)電流檢測(cè)傳感器
來自ALSROBOT WiKi
目錄 |
產(chǎn)品概述
此產(chǎn)品由一個(gè)電流感應(yīng)器TA12-200組成構(gòu)成。可以將大的電流量轉(zhuǎn)換為幅度小的電壓量輸出。該模塊采用沉金工藝,外觀更加美觀,同時(shí)采用防插反3Pin接口,操作更加安全,插口一邊有大寫字母A表示該模塊位模擬量傳感器,另一邊是電流表的圖標(biāo)標(biāo)志表示該模塊具有測(cè)試電流的功能。此產(chǎn)品可以應(yīng)用于交流電的電流檢測(cè),最大可檢測(cè)的電流為5A。
規(guī)格參數(shù)
- 工作電壓 :+5v
- 最大檢測(cè)電流:5A
- 檢測(cè)類型:交流電
- 尺寸大小:30mm x 25mm
- 重量大?。?g
- 信號(hào)類型:模擬信號(hào)
- 孔徑:4.96mm
接口定義
- S:信號(hào)引腳
- NC:不需要連接
- -:電源地
使用方法
工作原理
電流傳感器是根據(jù)電磁感應(yīng)原理設(shè)計(jì)的,本傳感器使用一個(gè)線圈,導(dǎo)線穿過線圈,當(dāng)導(dǎo)線中產(chǎn)生交流電時(shí),由于電磁感應(yīng)的原因,模塊的線圈中會(huì)產(chǎn)生電流,從而使 Arduino 的模擬接口感測(cè)到,通過 Arduino 控制器自帶的 10 位 AD 轉(zhuǎn)換來讀取信號(hào)。
實(shí)驗(yàn)硬件
- 振動(dòng)馬達(dá) * 1個(gè)
- 電位計(jì)模塊 * 1個(gè)
- 電流傳感器 * 1個(gè)
- Carduino UNO 控制器 * 1個(gè)
- 傳感器擴(kuò)展板 V5.0 * 1個(gè)
- 杜邦線 * 若干
接線示意圖
引腳接線:
傳感器引腳 | 所接引腳 |
電位計(jì)模塊 + 引腳 | 穿過電流傳感器接在UNO的D13 S 引腳 |
電位計(jì)模塊 S 引腳 | 振動(dòng)馬達(dá) + 引腳 |
電位計(jì)模塊 - 引腳 | 懸空 |
電流傳感器 | 控制器 A0 引腳 |
振動(dòng)馬達(dá) + — 引腳 | 分別接在控制器Vcc和GND |
注:NC可以不接
例子程序
#define ELECTRICITY_SENSOR A0 int mada = 13; float amplitude_current; float effective_value; void setup() { Serial.begin(9600); pins_init(); pinMode(mada, OUTPUT); } void loop() { digitalWrite(mada, HIGH); 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) 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; }
程序效果
程序正常編譯上傳以后,打開 Arduino IDE 自帶的串口監(jiān)視器之后,會(huì)顯示出當(dāng)前檢測(cè)到的電流值。
產(chǎn)品相關(guān)推薦
購買地址
周邊產(chǎn)品推薦
Arduino 旋轉(zhuǎn)角度傳感器
通用傳感器連接線 3P杜邦連接線