999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)

2017-11-01 03:00:13關(guān)學(xué)忠李倩文
化工自動(dòng)化及儀表 2017年2期
關(guān)鍵詞:程序信號(hào)設(shè)計(jì)

關(guān)學(xué)忠 李倩文

(東北石油大學(xué)電氣信息工程學(xué)院)

基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)

關(guān)學(xué)忠 李倩文

(東北石油大學(xué)電氣信息工程學(xué)院)

在工業(yè)現(xiàn)場(chǎng)中常需要對(duì)某一個(gè)量(如溫度、壓力及流量等信號(hào))進(jìn)行采集和控制,有的還需要對(duì)數(shù)據(jù)進(jìn)行遠(yuǎn)程傳輸、在控制室中對(duì)參數(shù)的變化趨勢(shì)進(jìn)行直觀展示,這就需要一種數(shù)據(jù)采集與遠(yuǎn)程網(wǎng)絡(luò)發(fā)布系統(tǒng)。本設(shè)計(jì)從實(shí)際應(yīng)用出發(fā),以STM32為核心控制器實(shí)現(xiàn)雙路數(shù)據(jù)采集,利用NRF無線通信模塊進(jìn)行無線數(shù)據(jù)傳輸,并采用LabVIEW軟件實(shí)現(xiàn)上位機(jī)數(shù)據(jù)的顯示和網(wǎng)絡(luò)發(fā)布,達(dá)到數(shù)據(jù)共享的目的。詳細(xì)闡述了數(shù)據(jù)采集和無線通信的原理,利用Altium Designer實(shí)現(xiàn)PCB設(shè)計(jì),搭建實(shí)驗(yàn)平臺(tái)完成設(shè)計(jì)內(nèi)容。實(shí)驗(yàn)表明:該系統(tǒng)數(shù)據(jù)采集精確可靠、數(shù)據(jù)通信快速穩(wěn)定,并且在局域網(wǎng)內(nèi)實(shí)現(xiàn)了數(shù)據(jù)的網(wǎng)絡(luò)發(fā)布。

數(shù)據(jù)采集 網(wǎng)絡(luò)發(fā)布 無線通信 STM32 LabVIEW

數(shù)據(jù)采集技術(shù)廣泛應(yīng)用于工業(yè)生產(chǎn)的各個(gè)領(lǐng)域,對(duì)于工業(yè)現(xiàn)場(chǎng)的檢測(cè)和控制至關(guān)重要[1],它是計(jì)算機(jī)與外部物理世界連接的橋梁。近年來,數(shù)據(jù)采集及其應(yīng)用受到人們?cè)絹碓綇V泛的關(guān)注,數(shù)據(jù)采集系統(tǒng)也有了較快的發(fā)展。傳統(tǒng)的數(shù)據(jù)采集是通過數(shù)據(jù)采集板卡(常用的有A/D卡及422、485等總線板卡)來實(shí)現(xiàn)的,有些數(shù)據(jù)是就地顯示的,工人需要按時(shí)記錄數(shù)據(jù)[2],以報(bào)表的形式進(jìn)行存儲(chǔ);有的是通過數(shù)據(jù)傳輸線以串行的形式進(jìn)行傳輸,其缺點(diǎn)是布線困難且成本高。因此,設(shè)計(jì)一種具有自動(dòng)采集并將數(shù)據(jù)通過無線傳輸?shù)姆绞桨l(fā)送到PC端的系統(tǒng)很有實(shí)用價(jià)值。通過上位機(jī)實(shí)時(shí)觀察數(shù)據(jù)的動(dòng)態(tài)曲線,可節(jié)省人力成本、提高數(shù)據(jù)的可靠性。由于無線數(shù)據(jù)通信的距離是有限的,不能實(shí)現(xiàn)超遠(yuǎn)距離的傳輸,因此使用網(wǎng)絡(luò)發(fā)布技術(shù),可將實(shí)時(shí)采集的數(shù)據(jù)通過網(wǎng)絡(luò)發(fā)布到服務(wù)器,這樣只需登錄網(wǎng)頁就可以觀察數(shù)據(jù)的變化,達(dá)到數(shù)據(jù)共享和遠(yuǎn)程監(jiān)控的目的。在數(shù)據(jù)采集的方案選擇中,采集精度、功耗、成本和設(shè)計(jì)難度是重要的因素。本設(shè)計(jì)選擇ARM內(nèi)核的STM32芯片作為核心控制器,實(shí)現(xiàn)數(shù)據(jù)的采集,利用NRF無線數(shù)據(jù)模塊實(shí)現(xiàn)數(shù)據(jù)的無線發(fā)送。上位機(jī)使用LabVIEW軟件實(shí)現(xiàn)數(shù)據(jù)的波形圖顯示與網(wǎng)絡(luò)發(fā)布。

1 硬件設(shè)計(jì)

基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)由4部分組成:信號(hào)調(diào)理電路,負(fù)責(zé)將傳感器輸出的信號(hào)調(diào)理成ADC允許的范圍內(nèi);STM32最小系統(tǒng),負(fù)責(zé)數(shù)據(jù)采集和控制;無線通信模塊,負(fù)責(zé)數(shù)據(jù)的無線發(fā)送和接收;DELL計(jì)算機(jī)作為上位機(jī),負(fù)責(zé)數(shù)據(jù)的波形顯示和網(wǎng)絡(luò)發(fā)布。系統(tǒng)的硬件結(jié)構(gòu)框圖如圖1所示。

STM32是基于Cortex-M3內(nèi)核的32位ARM處理器,具有價(jià)格便宜、功耗低及性能優(yōu)越等優(yōu)點(diǎn)[3]。選擇STM32的一個(gè)更主要的原因是其內(nèi)部集成了12位的逐次逼近式模數(shù)轉(zhuǎn)換器,最快轉(zhuǎn)換時(shí)間為1μs,可簡(jiǎn)化系統(tǒng)設(shè)計(jì)。STM32最小系統(tǒng)由電源電路、時(shí)鐘電路、復(fù)位電路和程序下載電路組成。傳感器或變送器輸出的信號(hào)一般為0.0~5.0V的電壓信號(hào),而STM32的ADC能接收的范圍為0.0~3.3V,并且在實(shí)際的工程設(shè)計(jì)上需要考慮到余量,因此輸入的最大值設(shè)置在3.3V的80%(約2.5V)。筆者設(shè)計(jì)的信號(hào)調(diào)理電路如圖2所示,利用電阻分壓把0.0~5.0V的電壓信號(hào)調(diào)理到0.0~2.5V,并且利用運(yùn)算放大器組成電壓跟隨電路,實(shí)現(xiàn)傳感器信號(hào)和STM32的隔離。

圖2 信號(hào)調(diào)理電路

為了實(shí)現(xiàn)數(shù)據(jù)的無線傳輸,選擇NRF24L01無線射頻收發(fā)模塊。NRF24L01 是工作在 2.4~2.5GHz 世界通用 ISM 頻段的單片無線收發(fā)器芯片,集無線收發(fā)于一體,可用于短距離無線數(shù)據(jù)的傳輸。該芯片內(nèi)部集成了2.4GHz無線收發(fā)內(nèi)核[4],具有體積小、功耗較低和外圍電路簡(jiǎn)單的優(yōu)點(diǎn)。使用SPI接口與微控制器連接進(jìn)行芯片的配置和數(shù)據(jù)的傳輸。無線模塊的電路如圖3所示,將模塊的數(shù)據(jù)口與STM32的SPI1接口相連實(shí)現(xiàn)通信。無線數(shù)據(jù)傳輸需要一個(gè)發(fā)送模塊和一個(gè)接收模塊,接收模塊與PC機(jī)的USB接口相連,所以接收模塊需要加入U(xiǎn)SB轉(zhuǎn)串口模塊,實(shí)現(xiàn)電平的轉(zhuǎn)換。

圖3 無線模塊的電路

2 軟件設(shè)計(jì)

系統(tǒng)的軟件程序設(shè)計(jì)分為兩部分:運(yùn)行在STM32中的C語言程序和運(yùn)行在PC 端的LabVIEW程序。STM32程序負(fù)責(zé)控制ADC實(shí)現(xiàn)雙路數(shù)據(jù)采集,并與無線模塊通信將數(shù)據(jù)發(fā)送出去,在上位機(jī)中編寫LabVIEW程序?qū)?shù)據(jù)從串口中讀出,并顯示在波形圖上,利用Web服務(wù)器把程序發(fā)布到網(wǎng)絡(luò)。LabVIEW又稱為G語言,是一種基于數(shù)據(jù)流的圖形化編程環(huán)境[5]。近年來在檢測(cè)和控制領(lǐng)域得到了快速的發(fā)展。因其程序是圖形化的框圖形式,與傳統(tǒng)的代碼有很大的不同,在人機(jī)交互等方面具有天然的優(yōu)勢(shì)。選擇LabVIEW的另一個(gè)原因,就是它內(nèi)嵌了Web網(wǎng)絡(luò)發(fā)布模塊,使網(wǎng)絡(luò)發(fā)布的程序設(shè)計(jì)變得簡(jiǎn)單化[6]。

2.1 STM32程序設(shè)計(jì)

STM32的程序使用C語言編程,在MDK5編程環(huán)境下實(shí)現(xiàn)編譯。為了提高采集程序的運(yùn)行效率、節(jié)省控制器資源,使用直接內(nèi)存存取(Direct Memory Access,DMA)的方式實(shí)現(xiàn)轉(zhuǎn)換數(shù)據(jù)的讀取,DMA是一種高速的數(shù)據(jù)傳輸操作,允許在外部設(shè)備和存儲(chǔ)器之間利用系統(tǒng)總線直接讀寫數(shù)據(jù),既不通過微處理器也不需要微處理器的干預(yù)[7]。STM32中集成了DMA模塊,這是一般的單片機(jī)不具有的,充分發(fā)揮了STM32的優(yōu)勢(shì)。配置ADC的相關(guān)寄存器,使其運(yùn)行在多通道掃描模式,傳感器信號(hào)經(jīng)過信號(hào)調(diào)理電路后進(jìn)入STM32的ADC中被轉(zhuǎn)換成數(shù)字量,接著數(shù)字量會(huì)被存入數(shù)據(jù)寄存器,在DMA使能的情況下,STM32的存儲(chǔ)器可以讀取轉(zhuǎn)換后的數(shù)據(jù)[8]。

經(jīng)過采集和轉(zhuǎn)換后的數(shù)據(jù)通過SPI送給NRF無線模塊,NRF24L01 芯片通過設(shè)置配置寄存器中PWR_UP 位、PRIM_RX 位和CE 引腳的電平來控制其工作模式,NRF24L01模式配置見表1。

表1 NRF24L01模式配置

本設(shè)計(jì)使用了前3 種工作模式,發(fā)送部分或接收部分檢測(cè)到各自數(shù)據(jù)緩沖區(qū)中存在數(shù)據(jù)時(shí),從待機(jī)模式轉(zhuǎn)換至發(fā)送或接收模式,數(shù)據(jù)處理完成后將狀態(tài)寄存器TX_DS 或RX_DR 位置高,IRQ引腳產(chǎn)生中斷,此時(shí)由發(fā)送或接收模式進(jìn)入待機(jī)模式,等待數(shù)據(jù)進(jìn)入數(shù)據(jù)緩沖區(qū),IRQ中斷后要通過STM32寫狀態(tài)寄存器來復(fù)位。配置STM32的SPI為兩線全雙工、主模式、8位數(shù)據(jù)傳輸、數(shù)據(jù)捕獲第1個(gè)邊沿。STM32程序流程框圖如圖4所示。

圖4 STM32程序流程

2.2 LabVIEW程序設(shè)計(jì)

無線接收模塊接收到數(shù)據(jù)后是以串口的形式傳送給上位機(jī)的。LabVIEW串口通信程序主要是通過NI-VISA節(jié)點(diǎn)來完成的[9],NI-VISA是一個(gè)字節(jié)級(jí)的通信接口驅(qū)動(dòng),字節(jié)級(jí)包括RS232、RS485及GPIB等。LabVIEW提供的串口函數(shù)主要包括串口初始化、串口寫、串口讀、Bytes of port及串口關(guān)閉等。串口初始化主要負(fù)責(zé)設(shè)置串口號(hào)、波特率及奇偶校驗(yàn)等參數(shù),最關(guān)鍵的是Bytes of port這個(gè)屬性節(jié)點(diǎn),它讀取當(dāng)前串口緩沖區(qū)的字節(jié)數(shù),然后將它的輸出連接到VISA READ的“讀取字節(jié)數(shù)”這個(gè)輸入端上,這樣當(dāng)前緩沖區(qū)中有多少個(gè)字節(jié)就會(huì)讀回多少個(gè),不會(huì)有任何等待,保證了數(shù)據(jù)讀取的連續(xù)性。將兩路數(shù)據(jù)通過標(biāo)志位分開后組成一個(gè)數(shù)組,顯示在波形圖表控件上。LabVIEW程序如圖5所示。

使用LabVIEW進(jìn)行網(wǎng)絡(luò)發(fā)布有兩種方式:一是使用內(nèi)置的函數(shù)發(fā)布VI圖片,二是通過內(nèi)嵌的Web發(fā)布工具發(fā)布VI前面板圖。筆者選擇第2種方法,它可以發(fā)布正在運(yùn)行的程序前面板圖,讓各地的工程師們能在自己的辦公室看到服務(wù)器上的程序運(yùn)行情況[10]。Web發(fā)布工具把程序調(diào)入內(nèi)存中,發(fā)布到服務(wù)器中,這時(shí)在局域網(wǎng)內(nèi)的其他電腦可以輸入對(duì)應(yīng)的網(wǎng)址實(shí)現(xiàn)對(duì)程序的觀察和控制。網(wǎng)絡(luò)發(fā)布示意圖如圖6所示。具體配置步驟為:工具→Web發(fā)布工具→啟動(dòng)服務(wù)器→選擇發(fā)布的VI→啟動(dòng)IMQ支持→復(fù)制鏈接后保存至磁盤。

圖5 LabVIEW程序

圖6 網(wǎng)絡(luò)發(fā)布示意圖

3 實(shí)驗(yàn)結(jié)果

結(jié)合以上對(duì)硬件設(shè)計(jì)和軟件設(shè)計(jì)的描述,完成基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)的設(shè)計(jì),利用兩個(gè)電位器模擬傳感器發(fā)出的電壓信號(hào)。

運(yùn)行上位機(jī)程序,接收下位機(jī)發(fā)送來的數(shù)據(jù),顯示在波形圖表控件上,上位機(jī)界面如圖7所示,可以清晰地看出兩路信號(hào)的變化情況,調(diào)節(jié)電位器可以觀察到上位機(jī)數(shù)據(jù)迅速反應(yīng)。

圖7 上位機(jī)界面

通過Web發(fā)布工具將上位機(jī)程序發(fā)布到服務(wù)器,并用IE瀏覽器打開后的效果如圖8所示,可以看出上位機(jī)界面顯示在了瀏覽器的界面上。網(wǎng)絡(luò)發(fā)布的一個(gè)優(yōu)勢(shì)是電腦不用安裝LabVIEW軟件也可以觀察和控制LabVIEW程序。

圖8 網(wǎng)絡(luò)發(fā)布示意圖

4 結(jié)束語

筆者完成了基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)的設(shè)計(jì),可采集兩路電壓信號(hào),利用圖形化編程軟件實(shí)現(xiàn)上位機(jī)編程,界面美觀友好,并可實(shí)現(xiàn)程序的網(wǎng)絡(luò)發(fā)布。實(shí)驗(yàn)表明該系統(tǒng)工作穩(wěn)定可靠,可廣泛應(yīng)用于工業(yè)現(xiàn)場(chǎng)。

[1] 羅俊.無線傳感器網(wǎng)絡(luò)性能建模與優(yōu)化設(shè)計(jì)[D].上海:上海交通大學(xué),2010.

[2] 程明明.智能家居無線傳感器網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2011.

[3] 周立功.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京:北京航空航天大學(xué)出版社,2005.

[4] 張逢雪,王香婷,王通生,等.基于STM32單片機(jī)的無線智能家居控制系統(tǒng)[J].自動(dòng)化技術(shù)與應(yīng)用,2011,(8):98~101.

[5] 陳樹學(xué). LabVIEW寶典[M].上海:電子工業(yè)出版社,2011:34~78.

[6] 阮奇楨.我和LabVIEW[M].北京:北京航空航天大學(xué)出版社,2009:56~98.

[7] 劉松斌,王海星,馬雙,等.基于LabVIEW的單片機(jī)與PC機(jī)串口通信顯示系統(tǒng)設(shè)計(jì)[J].化工自動(dòng)化及儀表,2015,42(7):806~808.

[8] 蔡型,張思全.短距離無線通信技術(shù)綜述[J].現(xiàn)代電子技術(shù),2004,(3):65~67,76.

[9] 羅林.基于參數(shù)估計(jì)的多傳感器數(shù)據(jù)融合研究與應(yīng)用[D].長(zhǎng)沙:湖南大學(xué),2005.

[10] 左經(jīng)文,陳沅濤,吳佳英,等.無線傳感器網(wǎng)絡(luò)中助理簇頭機(jī)制的應(yīng)用[J].計(jì)算機(jī)工程,2011,(20):60~62.

DataAcquisitionandNetworkPublishingSystemBasedonSTM32

GUAN Xue-zhong, LI Qian-wen
(CollegeofElectricalEngineeringandInformation,NortheastPetroleumUniversity)

A data acquisition and remote network publishing system was designed for the signals like temperature, pressure, flow and their transmission and visualized display.In which, it has STM32 employed as core controller, the NRF wireless communication module adopted for wireless data transmission and the LabVIEW software based to display the data and realize network publishing; in addition, the principles of data acquisition and wireless communication were elaborated and making use of Altium Designer for PCB drawing was implemented, including the establishment of test platform to complete the design. The test results shows an accurate and reliable data acquisition, fast and stable data communication and the data publishing within local area network (LAN).

data acquisition,network publishing,wireless communication,STM32,LabVIEW

TH865

A

1000-3932(2017)02-0187-04

2016-07-05,

2016-12-05)

關(guān)學(xué)忠(1962-),教授,從事神經(jīng)網(wǎng)絡(luò)控制和故障診斷技術(shù)的研究,gxzdqpi@163.com。

猜你喜歡
程序信號(hào)設(shè)計(jì)
信號(hào)
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
試論我國(guó)未決羈押程序的立法完善
瞞天過海——仿生設(shè)計(jì)萌到家
基于FPGA的多功能信號(hào)發(fā)生器的設(shè)計(jì)
電子制作(2018年11期)2018-08-04 03:25:42
“程序猿”的生活什么樣
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
基于LabVIEW的力加載信號(hào)采集與PID控制
主站蜘蛛池模板: 亚洲第一av网站| 99热这里都是国产精品| 久久这里只精品热免费99| 久草性视频| 免费人成又黄又爽的视频网站| 亚洲经典在线中文字幕| 亚亚洲乱码一二三四区| 99草精品视频| 内射人妻无套中出无码| 在线日韩日本国产亚洲| 波多野吉衣一区二区三区av| 麻豆国产在线不卡一区二区| 一区二区三区成人| 天天干天天色综合网| 露脸一二三区国语对白| 中文字幕资源站| 日韩a在线观看免费观看| 最新亚洲人成无码网站欣赏网| 狠狠综合久久久久综| 日韩av手机在线| 国产国拍精品视频免费看 | 在线视频一区二区三区不卡| 无码国产伊人| 亚洲综合片| a色毛片免费视频| 亚洲天堂网视频| 夜夜操天天摸| 91麻豆久久久| 久久不卡精品| 无码中文字幕精品推荐| 精品国产毛片| 99久久精品国产综合婷婷| 国产一级无码不卡视频| 9丨情侣偷在线精品国产| 五月婷婷激情四射| 国产亚卅精品无码| h网站在线播放| 日韩欧美一区在线观看| 综合色亚洲| 91外围女在线观看| 亚洲一级毛片在线播放| 国产精品亚洲综合久久小说| 午夜福利在线观看入口| 久久精品国产亚洲麻豆| 精品视频一区在线观看| 久久免费视频6| 国产精品亚洲片在线va| 亚洲熟女中文字幕男人总站| 激情综合网址| 亚洲看片网| 免费一级毛片完整版在线看| 久久香蕉国产线看观看亚洲片| 色网在线视频| 亚洲欧美日韩综合二区三区| 亚洲精品午夜天堂网页| 亚洲中文久久精品无玛 | 国产精品3p视频| 日本色综合网| 亚洲精品中文字幕无乱码| 无码中文AⅤ在线观看| 午夜人性色福利无码视频在线观看| 天天综合网亚洲网站| 欧美在线综合视频| 97se亚洲综合在线| 国产精品一线天| 尤物在线观看乱码| 亚洲高清无码精品| 国产a在视频线精品视频下载| 亚洲人成影视在线观看| 深爱婷婷激情网| 人妻无码AⅤ中文字| 青草精品视频| 大乳丰满人妻中文字幕日本| 欧美日韩国产综合视频在线观看| 亚洲日产2021三区在线| 91久久夜色精品| 欧美激情视频一区二区三区免费| 国内精品免费| 久操中文在线| 波多野吉衣一区二区三区av| 奇米影视狠狠精品7777| 国产91视频免费观看|