国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Arduino和LabVIEW遠(yuǎn)程可燃?xì)怏w監(jiān)測系統(tǒng)

2018-01-12 08:34毛敏
電氣自動化 2017年5期
關(guān)鍵詞:前面板上位繼電器

毛敏

(陜西國防工業(yè)職業(yè)技術(shù)學(xué)院,陜西 西安 710300)

0 引 言

工業(yè)迅速發(fā)展,石油、天然氣等作為重要的能源或者化工原料普遍地應(yīng)用到我們生活當(dāng)中,在為我們帶來生活便利的同時,也給我們帶來一些潛在的危險[1-2]。

本文設(shè)計了一種可燃?xì)怏w遠(yuǎn)程實時監(jiān)測系統(tǒng),可以測量空氣中可燃?xì)怏w濃度,可以做到在事故發(fā)生前采取有效措施,從而避免事故的發(fā)生,保護(hù)人民的人身和財產(chǎn)安全。

Arduino是一塊基于開放源代碼的硬件平臺,包括一塊具有簡單I/O功能的電路板及一套程序開發(fā)軟件,目前可支持Windows、UNIX、Linux、Mac OS等操作系統(tǒng)[3]5。

虛擬儀器LabVIEW有常規(guī)儀器的控制面板,采用可視化的圖形編程語言和平臺,在計算機(jī)屏幕上建立圖形化的軟面板來替代常規(guī)的傳統(tǒng)儀器面板,LabVIEW為Arduino開發(fā)了專門的接口工具包,把這個工具包和Arduino軟件結(jié)合起來,通過LabVIEW軟件可實現(xiàn)對Arduino控制板的控制或交換數(shù)據(jù)[4]。

1 系統(tǒng)設(shè)計

在整個系統(tǒng)中,LabVIEW編寫的軟件作為上位機(jī),負(fù)責(zé)讀取由Arduino Uno微處理器發(fā)送的可燃?xì)怏w濃度并進(jìn)行顯示,根據(jù)設(shè)置的可燃?xì)怏w濃度上限發(fā)出警報,并通過網(wǎng)絡(luò)模塊W5100[3]238向下位機(jī)Arduino Uno微處理器發(fā)送指定電器的狀態(tài)切換命令。

圖1 系統(tǒng)框圖

Arduino Uno微處理器作為下位機(jī),負(fù)責(zé)讀取和傳輸氣體傳感器MQ-2檢測到的可燃?xì)怏w濃度值,可燃?xì)怏w濃度數(shù)據(jù)通過網(wǎng)絡(luò)模塊W5100上傳至LabVIEW上位機(jī)軟件進(jìn)行顯示;Arduino Uno微處理器通過網(wǎng)絡(luò)模塊W5100讀取上位機(jī)的命令,進(jìn)而控制固態(tài)繼電器的閉合和斷開,實現(xiàn)指定電器的打開或關(guān)閉[5]。系統(tǒng)框圖如圖1所示。

1.1 硬件設(shè)計

通過網(wǎng)絡(luò)模塊W5100,實現(xiàn)Arduino Uno 微處理器與LabVIEW的無線連接,氣體傳感器MQ-2[6]與Arduino Uno 微處理器構(gòu)成硬件平臺,氣體傳感器MQ-2輸出的濃度值經(jīng)Arduino Uno 微處理器處理后,通過網(wǎng)絡(luò)模塊W5100傳送到上位機(jī),LabVIEW 軟件編寫VI函數(shù),在LabVIEW前面板實時顯示濃度值, 并設(shè)置濃度上限,當(dāng)可燃?xì)怏w濃度過高則發(fā)出報警,并通過網(wǎng)絡(luò)模塊W5100向下位機(jī)發(fā)出命令,控制固態(tài)繼電器的閉合和斷開,完成指定電器的打開或關(guān)閉,實現(xiàn)LabVIEW 軟件與Arduino控制板遠(yuǎn)程交互式通信。

1.1.1氣體傳感器MQ-2

MQ-2是一種氣體電阻控制型氣敏器件,所使用的氣敏材料是在清潔空氣中電導(dǎo)率較低的二氧化錫(SnO2)。當(dāng)傳感器所處環(huán)境中存在可燃?xì)怏w時,傳感器的電導(dǎo)率隨空氣中可燃?xì)怏w濃度的增加而增大。MQ-2氣體傳感器對液化氣、丙烷、氫氣的靈敏度高,對天然氣和其它可燃蒸汽的檢測也很理想。

1.1.2ArduinoUno微處理器

Arduino Uno 微處理器系統(tǒng)是一個基于開放原始代碼的軟硬件平臺,體積小巧,功能強(qiáng)大,適用于讀取溫濕度傳感器信號,可與上位機(jī)通訊,制作交互式產(chǎn)品,該系統(tǒng)包括硬件(Arduino電子板) 和軟件(Arduino IDE)兩部分。

1.1.3硬件連接

網(wǎng)絡(luò)模塊W5100與Arduino Uno控制板連接,W5100配置一個網(wǎng)絡(luò)地址:192.168.1.177,通過網(wǎng)線與計算機(jī)網(wǎng)卡連接,將計算機(jī)的網(wǎng)卡地址配置成192.168.1.175,W5100與計算機(jī)組成一個小的局域網(wǎng),用于網(wǎng)絡(luò)數(shù)據(jù)的發(fā)送與接收。

MQ-2的信號線接入Arduino Uno板的A0端口,電源線接入Arduino Uno板上的+5 V電壓端口,地線接入Arduino Uno板上的GND端口。

將固態(tài)繼電器的控制端接至Arduino Uno控制板上的Digital 3端口,固態(tài)繼電器的另一端在接需要控制電器的開關(guān)上。

1.2 軟件設(shè)計

1.2.1LabVIEW程序設(shè)計

LabVIEW編寫的軟件[7]負(fù)責(zé)讀取Arduino Uno發(fā)送的濃度值并進(jìn)行顯示,根據(jù)設(shè)置的濃度上限發(fā)出警報,通過網(wǎng)絡(luò)模塊W5100向下位機(jī)Arduino Uno微處理器發(fā)送指定電器的狀態(tài)切換命令。

圖2 前面板

(1)前面板設(shè)計

LabVIEW前面板包含可燃?xì)怏w濃度顯示,濃度警戒線設(shè)置,停止按鈕用于整個程序的終止。前面板如圖2所示。mA

(2)程序框圖設(shè)計

采用事件結(jié)構(gòu)+超時結(jié)構(gòu)來實現(xiàn)測量和控制兩部分,在測量中使用條件結(jié)構(gòu)+枚舉的狀態(tài)機(jī)來實現(xiàn)可燃?xì)怏w濃度數(shù)據(jù)的讀取。程序框圖如圖3所示。

圖3 程序框圖

1.2.2Arduino程序設(shè)計

Arduino Uno程序讀取MQ-2傳感器的濃度數(shù)據(jù),并處理成字節(jié)數(shù)據(jù),通過網(wǎng)絡(luò)模塊W5100上傳給上位機(jī);Arduino Uno程序通過網(wǎng)絡(luò)模塊W5100讀取上位機(jī)的命令,進(jìn)而控制固態(tài)繼電器的閉合和斷開,實現(xiàn)指定電器的打開或關(guān)閉。程序如下:

#include

#defineDHTTYPE DHT11

#definegas_Command 0x81

#definehumidity_Command 0x83

#definetemp_Command 0x82

#defineSW1_ON_Command 0x11

#defineSW1_OFF_Command 0x10

#include

#include

bytemac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

IPAddress ip(192,168,1,177);

EthernetServer server(8000);

DHT dht(2, DHTTYPE);

bytecomdata[3]={0};

voidtest_do_data(void);

int SW1=3;

floathif ;

int st;

void setup()

{

Ethernet.begin(mac, ip);

server.begin();

pinMode(SW1, OUTPUT);

}

void loop()

{

int i ;

EthernetClient client = server.available();

if (client) {

while (client.connected()) {

if (client.available()) {

for(i=0;i<3;i++)

{

comdata[i] =client.read();

delay(2);

}

test_do_data();

}

}

client.stop();

}

}

voidtest_do_data()

{

if(comdata[0] == 0x55)

{

if(comdata[1] == 0xAA)

{

switch (comdata[2])

{

casetemp_Command:

hif=dht.readTemperature();

server.print(hif,2);

break;

casehumidity_Command:

hif=dht.readHumidity();

server.print(hif,2);

break;

caseSW1_ON_Command:

digitalWrite(SW1, HIGH);

break;

caseSW1_OFF_Command:

digitalWrite(SW1, LOW);

break;

}

}

}

}

2 測試結(jié)果分析

Arduino UNO的TXD、RXD指示燈不斷閃爍, 連續(xù)采集可燃?xì)怏w濃度數(shù)據(jù),測試結(jié)果由前面板圖2顯示,當(dāng)前濃度值顯示為515。

為了驗證系統(tǒng)的實時性, 開啟可燃?xì)怏w設(shè)備,前面板可燃?xì)怏w濃度數(shù)值持續(xù)增大,從前面板可以看到: 濃度值已升高至702,程序設(shè)計中濃度大于600時會閃爍報警指示燈提醒用戶注意,并通過網(wǎng)絡(luò)模塊W5100向下位機(jī)Arduino UNO發(fā)送指定電器的狀態(tài)切換命令控制固態(tài)繼電器的閉合和斷開,實現(xiàn)指定電器的打開或關(guān)閉。

3 結(jié)束語

本文結(jié)合網(wǎng)絡(luò)模塊W5100、LabVIEW軟件和Arduino UNO控制器設(shè)計并實現(xiàn)了可燃?xì)怏w濃度的數(shù)據(jù)采集系統(tǒng),該系統(tǒng)具有遠(yuǎn)距離、實時性強(qiáng)、測量精度高、靈敏度高的優(yōu)點(diǎn)。

[1] 黃俊霖,董潔,吳垣春,等.環(huán)境參數(shù)監(jiān)測系統(tǒng)設(shè)計[J].電子科技,2013,26(4):53-54.

[2] 劉竹琴,白澤生.一種高精度可燃?xì)怏w檢測報警器設(shè)計[J].傳感器與微系統(tǒng),2013,32(7):71-73.

[3] 陳呂洲.Arduino程序設(shè)計基礎(chǔ)[M]. 北京:北京航空航天大學(xué)出版社,2015.

[4] 于崇梓.Arduino開發(fā)實戰(zhàn)指南(LabVIEW卷)[M]. 北京: 機(jī)械工業(yè)出版社,2014.

[5] 修金鵬.Arduino與LabVIEW互動設(shè)計[M].北京:清華大學(xué)出版社,2014.

[6] 何偉剛,李政林,章帆,等.基于ZigBee的煤礦井下無線傳感器節(jié)點(diǎn)設(shè)計[J]. 現(xiàn)代電子技術(shù),2017,40(2):122-124.

[7] 胡仁喜,高海賓.LabVIEW2010虛擬儀器從入門到精通[M].北京: 機(jī)械工業(yè)出版社,2012.

猜你喜歡
前面板上位繼電器
顏值高和散熱強(qiáng)可以并存3款高品質(zhì)機(jī)箱推薦
便攜式繼電器測試臺的研制和應(yīng)用
電競潮牌范航嘉GX520S機(jī)箱評測
電競潮牌范 航嘉GX520S機(jī)箱評測
特斯拉 風(fēng)云之老阿姨上位
“三扶”齊上位 決戰(zhàn)必打贏
基于ZigBee和VC上位機(jī)的教室智能監(jiān)測管理系統(tǒng)
繼電器在電氣工程及其自動化低壓電器中的作用
以新思路促推現(xiàn)代農(nóng)業(yè)上位
泓格科技繼電器輸出模塊-87061PW