王建勛, 周青云
(鄭州職業(yè)技術(shù)學(xué)院, 河南 鄭州 450121)
?
基于虛擬儀器和藍(lán)牙技術(shù)的控制系統(tǒng)設(shè)計(jì)
王建勛, 周青云
(鄭州職業(yè)技術(shù)學(xué)院, 河南 鄭州 450121)
以LabVIEW為開發(fā)平臺(tái),以PIC16F877A單片機(jī)為核心,設(shè)計(jì)一種基于虛擬儀器和藍(lán)牙技術(shù)的電磁繼電器控制系統(tǒng)。闡述了系統(tǒng)的軟硬件設(shè)計(jì)方法并給出了系統(tǒng)原理圖、單片機(jī)部分源程序和LabVIEW程序。實(shí)驗(yàn)證明,該系統(tǒng)具有體積小、成本低、可靠性高的特點(diǎn),在電磁閥、電機(jī)、可控照明燈等控制中具有很高的實(shí)用價(jià)值。
LabVIEW; PIC16F877A; 電磁繼電器; 控制系統(tǒng)
虛擬儀器是以通用計(jì)算機(jī)為核心,根據(jù)用戶對儀器的設(shè)計(jì)定義,用軟件實(shí)現(xiàn)虛擬控制面板和測試功能的一種計(jì)算機(jī)儀器系統(tǒng)。LabVIEW是由美國國家儀器(NI)公司研制開發(fā)的一種虛擬儀器開發(fā)環(huán)境,使用圖形化編輯語言編寫程序[1]。LabVIEW具有功能強(qiáng)大、有良好的人機(jī)界面、擴(kuò)展性強(qiáng)等特點(diǎn),在測量、計(jì)量、測控方面應(yīng)用廣泛[2]。
藍(lán)牙是一種支持設(shè)備短距離(一般10 m內(nèi))通信的無線電技術(shù),能在包括移動(dòng)電話、PDA、無線耳機(jī)、筆記本電腦、相關(guān)外設(shè)等眾多設(shè)備之間進(jìn)行無線信息交換。利用藍(lán)牙技術(shù),能夠有效地簡化移動(dòng)通信終端設(shè)備之間的通信,從而使數(shù)據(jù)傳輸變得更加迅速高效,具有安全性高和受干擾性小的特點(diǎn)[3]。
電磁繼電器是一種電控制器件,通常應(yīng)用于自動(dòng)化的控制電路中,它實(shí)際上是用小電流去控制大電流運(yùn)作的一種“自動(dòng)開關(guān)”。在電路中起著自動(dòng)調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路等作用[4]。
采用基于LabVIEW、單片機(jī)和藍(lán)牙技術(shù)組成的控制系統(tǒng)實(shí)現(xiàn)對電磁繼電器進(jìn)行控制,可滿足多種領(lǐng)域的需要。
1.1 系統(tǒng)總體構(gòu)成和工作原理
系統(tǒng)總體上由上位機(jī)和下位機(jī)組成。上位機(jī)(PC)由LabVIEW程序控制,由藍(lán)牙模塊發(fā)出十六位制控制信號(hào);下位機(jī)(控制板)從HC-06藍(lán)牙串口模塊端接收控制信號(hào),然后送給PIC16F877A,PIC16F877A根據(jù)源程序再發(fā)送對應(yīng)數(shù)字邏輯信號(hào)送給ULN2003A,以驅(qū)動(dòng)并控制電磁繼電器組[5-6]。
1.2 系統(tǒng)硬件設(shè)計(jì)
下位機(jī)由PIC16F877A單片機(jī)、HC-06藍(lán)牙串口模塊、ULN2003A驅(qū)動(dòng)芯片、L7805CV三端正電源穩(wěn)壓電路和JQ1P-24V-F電磁繼電器組等組成。PIC16F877A 單片機(jī)作為主控芯片,其RD 口RD0~RD6的七位口線作為連接ULN2003A的數(shù)據(jù)線;RC 口中的RC6、RC7 用作HC-06藍(lán)牙串口模塊的TX、RX接口。時(shí)鐘電路選用12 MHz 晶體振蕩器[7]。
1.2.1 PIC16F877A單片機(jī)
PIC16F877A具有高性能RISC CPU,僅用35條單字指令,帶有8 K×14 位FLASH 程序存儲(chǔ)器,368×8個(gè)數(shù)據(jù)存儲(chǔ)器(RAM)字節(jié),256×8個(gè)EEPROM字節(jié),中斷能力強(qiáng)(達(dá)到14個(gè)中斷源),支持在線串行編程(ISCP),運(yùn)行電壓范圍2.0~5.5 V。具有抗干擾能力強(qiáng)、低功耗、帶負(fù)載能力大、且外圍電路簡單、可靠性高等優(yōu)點(diǎn)[8-9]。
1.2.2 HC-06藍(lán)牙串口模塊
HC-06是主從一體化藍(lán)牙串口模塊,本系統(tǒng)采用從機(jī)模塊。該模塊集成藍(lán)牙芯片BC41713、Flash存儲(chǔ)芯片M29W800及藍(lán)牙天線等。模塊引出接口包括VCC、GND、TXD、RXD,預(yù)留LED狀態(tài)輸出腳,單片機(jī)可通過該腳狀態(tài)判斷藍(lán)牙是否已經(jīng)連接,LED指示閃爍表示沒有藍(lán)牙連接,常亮表示藍(lán)牙已連接并打開了端口。5 V單片機(jī)可與其直接連接。支持8位數(shù)據(jù)位、1位停止位、無奇偶校驗(yàn)的通信格式[10]。
1.2.3 ULN2003A驅(qū)動(dòng)芯片
ULN2003A 由7 組達(dá)林頓晶體管陣列和相應(yīng)的電阻網(wǎng)絡(luò)以及鉗位二極管網(wǎng)絡(luò)構(gòu)成,具有同時(shí)驅(qū)動(dòng)7 組負(fù)載的能力,為單片雙極型大功率高速集成電路。ULN 2003A 電路具有電流增益高、帶負(fù)載能力強(qiáng)、溫度范圍寬、工作電壓高等特點(diǎn),主要用于繼電器、伺服電機(jī)、步進(jìn)電機(jī)、電磁閥和可控照明燈驅(qū)動(dòng)電路中[11]。
1.3 系統(tǒng)軟件設(shè)計(jì)
1.3.1 LabVIEW程序設(shè)計(jì)
本系統(tǒng)LabVIEW程序包括端口參數(shù)設(shè)定、通信測試和電磁繼電器控制三部分。
VISA(Virtual Instrument Software Architecture)是一種用來與各種儀器總線進(jìn)行通信的高級應(yīng)用編程接口(Application Program Interface, API)。NI-VISA是NI公司隨LabVIEW提供的一套VISA函數(shù),包括VISA配置串口、VISA讀取、VISA 寫入和VISA 結(jié)束等[12-13]。程序采用“VISA Configure Serial Port”(VISA配置串口函數(shù))完成串口參數(shù)的初始化設(shè)置。本系統(tǒng)中,波特率為9 600,8 位數(shù)據(jù)位,無奇偶校驗(yàn),1位停止位,無流控制[14]。然后程序要判斷硬件連接是否正確,并給出相應(yīng)的提示信息。
在通信測試環(huán)節(jié),通過VISA寫入函數(shù)寫入十六進(jìn)制信號(hào)“D1”,然后由VISA讀取函數(shù)讀出數(shù)值,并和十六進(jìn)制信號(hào)“02”作比較,若相等,則通信正常,并給出相應(yīng)提示信息。
在繼電器的控制中,通過VISA寫入函數(shù)寫入繼電器合、開所對應(yīng)的十六進(jìn)制信號(hào)。繼電器K1~K7的合、開所對應(yīng)十六進(jìn)制控制信號(hào)如表1所示。LabVIEW程序的程序框圖如圖1所示。
表1 繼電器K1~K7的合、開所對應(yīng)十六進(jìn)制控制信號(hào)
1.3.2 單片機(jī)程序設(shè)計(jì)
單片機(jī)程序采用C 語言設(shè)計(jì),采用MAPLAB IDE 編譯源程序。子程序包括端口初始化子程序、延時(shí)子程序、串行通信接口子程序、繼電器端口子程序、通信測試子程序和中斷子程序[15-16]。程序設(shè)計(jì)充分利用中斷功能,通信測試和繼電器的合、開控制均使用中斷模式,給出標(biāo)志位,在主程序中執(zhí)行相應(yīng)程序。主程序如下:
void main(void)
{
uint8 i;
PORTINI( );
DelayMS(500);
SCI_Init();
TXIE = 1;
RCIE = 1;
PEIE = 1;
GIE = 1;
TXEN = 1;
CREN = 1;
while (1)
{
}
}
繼電器端口子程序如下:
void Relay_Out()
{
if (temp2 == 0x9A) {Relay1 = 0;}
if (temp2 == 0x9B) {Relay1 = 1;}
if (temp2 == 0x9C) {Relay2 = 0;}
if (temp2 == 0x9D) {Relay2 = 1;}
if (temp2 == 0x9E) {Relay3 = 0;}
if (temp2 == 0x9F) {Relay3 = 1;}
if (temp2 == 0xA0) {Relay4= 0;}
if (temp2 == 0xA1) {Relay4 = 1;}
if (temp2 == 0xA2) {Relay5 = 0;}
if (temp2 == 0xA3) {Relay5 = 1;}
if (temp2 == 0xA4) {Relay6 = 0;}
if (temp2 == 0xA5) {Relay6 = 1;}
if (temp2 == 0xA6) {Relay7 = 0;}
if (temp2 == 0xA7) {Relay7 = 1;}
}
中斷子程序如下:
void interrupt PIC_Int(void)
{
if(RCIF == 1)
{
temp = RCREG;
temp2=temp;
flag=1;
}
if (temp>0x99)
{
temp2=temp;
}
if (temp<=0x99)
{
temp3=temp;
}
if (temp2 <= 0xA7 && temp2 >= 0x9A) {Relay_Out();}
if (temp2 == 0xD1) {Test();}
}
將控制板接好+24 V電源。電腦在My Bluetooth下搜索設(shè)備,當(dāng)搜索到HC-06時(shí),輸入PIN代碼安全配對,再安裝串行端口,然后在我的電腦—屬性—硬件—設(shè)備管理器—端口下有“Bluetooth Serial Port (COM3)”產(chǎn)生。
運(yùn)行LabVIEW程序,首先有進(jìn)行硬件連接提示,如圖2所示。提示連接成功后,HC-06指示燈常亮。然后進(jìn)行通信測試,通信成功后也有提示,如圖3所示。
圖2 硬件連接提示
圖3 提示通信成功
在LabVIEW程序前面板開啟K2,K4,K5三個(gè)垂直搖桿開關(guān),如圖4所示。繼電器K2、K4、K5指示燈亮起,同時(shí)有觸點(diǎn)閉合的聲音,實(shí)驗(yàn)結(jié)果如圖5所示。
圖4 開啟K2、K4、K5
圖5 K2、K4、K5指示燈亮
圖6 K2、K4、K5指示燈熄滅
關(guān)閉K2,K4開關(guān),繼電器K2、K4指示燈熄滅,同時(shí)有觸點(diǎn)閉合的聲音;K5指示燈保持亮起,實(shí)驗(yàn)結(jié)果如圖6所示。
實(shí)驗(yàn)結(jié)果表明:各個(gè)繼電器的觸點(diǎn)合、開符合上位機(jī)的控制要求,系統(tǒng)有效、工作正常。
基于虛擬儀器和藍(lán)牙設(shè)備的電磁繼電器控制系統(tǒng),結(jié)構(gòu)簡單、體積小巧,而且可以根據(jù)要求,實(shí)現(xiàn)繼電器的任意組合控制功能,能夠滿足產(chǎn)品自動(dòng)化測試、工業(yè)現(xiàn)場控制、科研與教學(xué)等多種領(lǐng)域的需要。
[1] 張 桐,陳國順,王正林.精通LabVIEW程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2008.
[2] 劉 勝,張?zhí)m勇,章佳榮,等.LabVIEW 2009程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2010.
[3] 張 群,楊 絮,張正言,等.藍(lán)牙模塊串口通信的設(shè)計(jì)與實(shí)現(xiàn)[J].實(shí)驗(yàn)室研究與探索,2012,31(3):79-82.
[4] 高志峰,石永生,董明杰.基于CPLD 的串口控制繼電器實(shí)驗(yàn)裝置設(shè)計(jì)[J].實(shí)驗(yàn)科學(xué)與技術(shù),2013,11(4):186-189.
[5] 張飛云. 蔬菜大棚卷簾門和換氣扇步進(jìn)電機(jī)智能控制器的設(shè)計(jì)[J].湖北農(nóng)業(yè)科學(xué),2013,52(15):3681-3684.
[6] 王麗麗,王啟增,胡小安,等.基于PIC18F6527 的電磁繼電器控制系統(tǒng)[J].電子設(shè)計(jì)工程,2011,19(12):178-180.
[7] 高建民,黃桂珍,尹文楚,等.桁架式超聲霧化栽培器的霧滴沉降和根際溫濕度變化規(guī)律[J].農(nóng)業(yè)工程學(xué)報(bào),2013,29(6):185-192.
[8] 王通生,賈存良,張逢雪,等.基于PIC16F877A 的遠(yuǎn)程煤礦瓦斯監(jiān)測系統(tǒng)[J].煤礦機(jī)械,2011,32(5):209-211.
[9] 陳桂順,包曄峰,單明東,等.基于PIC 單片機(jī)的步進(jìn)電機(jī)運(yùn)動(dòng)控制器[J].電焊機(jī),2011,41(4):53-56.
[10] 余威明.手機(jī)藍(lán)牙控制的智能車系統(tǒng)設(shè)計(jì)[J].電子技術(shù),2013,(4):52-54.
[11] 萬天才.高壓大電流達(dá)林頓晶體管陣列系列產(chǎn)品及其應(yīng)用[J].國外電子元器件,2001(2):19-21.
[12] 陳錫輝,張銀鴻.精通LabVIEW8.2程序設(shè)計(jì)從入門到精通[M].北京:清華大學(xué)出版社,2007.
[13] 王建勛,周青云.基于DS18B20和LabVIEW溫度監(jiān)測系統(tǒng)[J].實(shí)驗(yàn)室研究與探索,2012,31(3):47-50.
[14] 李 震,洪添勝,黎嘉銘.基于AVR單片機(jī)和LabVIEW的水溫控制系統(tǒng)[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(3):615-617.
[15] 鄭紅梅,余宏濤,慶振華,等.基于LabVIEW和單片機(jī)的切削溫度數(shù)據(jù)采集系統(tǒng)[J].機(jī)床與液壓,2008,36(7):220-222,234.
[16] 高 姬.繼電器虛擬儀器測試系統(tǒng)[J].工業(yè)控制計(jì)算機(jī),2010,23(2):19-20.
Design of Control System Based on Virtual Instrument and Bluetooth Technology
WANGJian-xun,ZHOUQing-yun
(Zhengzhou Technical College, Zhengzhou 450121, China)
A control system of electromagnetic relay was designed based on virtual instrument and bluetooth technology. It used PIC16F877A MCU as the hardware core, and LabVIEW as the design platform. The method of designing on software and hardware was illustrated, and the system schematics, some source code of MCU and LabVIEW program were given. Experiments showed that the system had the characteristics of simple size, low cost, high reliability. It will be with a high practical value in solenoid valves, motors, controlled lighting and other control.
LabVIEW; PIC16F877A; electromagnetic relay; control system
2014-08-11
河南省高等教育教學(xué)改革研究項(xiàng)目(2014SJGLX466)
王建勛(1972-),男,河南鄭州人,碩士,副教授,研究方向:嵌入式系統(tǒng)與自動(dòng)控制。
Tel.:15038310735; E-mail:zzzywjx@163.com
TP 274.2
A
1006-7167(2015)03-0086-04