專利名稱:基于fpga的工業(yè)混合信號(hào)輸出控制設(shè)備的制作方法
技術(shù)領(lǐng)域:
本實(shí)用新型屬于工業(yè)控制自動(dòng)化領(lǐng)域,具體涉及一種基于FPGA的輸出控制設(shè)備。
背景技術(shù):
工業(yè)控制的自動(dòng)化程度不斷提高,帶來了自動(dòng)控制設(shè)備的高速發(fā)展。而在整個(gè)工業(yè)自動(dòng) 化控制系統(tǒng)中,存在多種多樣的外圍執(zhí)行設(shè)備,各執(zhí)行設(shè)備的工業(yè)控制信號(hào)可能都不相同。 一旦出現(xiàn)多外設(shè)混用,帶來的多種信號(hào)混合處理的問題,可能會(huì)對(duì)系統(tǒng)的組建造成很大的壓 力和成本浪費(fèi)。為了合理的實(shí)時(shí)控制這些執(zhí)行設(shè)備,就需要一種高性能,低成本的工業(yè)混合 信號(hào)輸出控制設(shè)備來完成相應(yīng)工作。
現(xiàn)有的方案有兩種
1. 多采集模塊混合使用,即將多種不同的信號(hào)輸出模塊通過RS485總線組網(wǎng)進(jìn)行使用。 本方案雖然可以達(dá)到混合信號(hào)輸出控制的目的,但是系統(tǒng)搭建復(fù)雜,如有的可能需要高速高 精度模擬量信號(hào)輸出控制模塊和高速脈寬調(diào)制(PWM)輸出模塊等。系統(tǒng)越復(fù)雜存在問題的可 能性越大,對(duì)系統(tǒng)的可靠性帶來了隱患。而且全部命令通過一條RS485低速總線發(fā)送,將造 成多模塊網(wǎng)絡(luò)的整體通信效率低下,無法滿足控制的實(shí)時(shí)性要求。由于每個(gè)采集模塊都需要 單獨(dú)的控制芯片和通信芯片,成本也居高不下。
2. 采用可編程邏輯控制器(PLC, Programmable Logic Controller)組合使用。PLC必 須包含中央處理器(CPU, Central Processing Unit)模塊,再配以相應(yīng)的采集模塊使用。 將PLC僅用于工業(yè)混合信號(hào)輸出控制,無法體現(xiàn)其本身的自動(dòng)控制的優(yōu)勢(shì),帶來了極大的浪 費(fèi),使得整體控制系統(tǒng)的成本大幅上升。雖然此方案理論上可行,但十分不合理。 發(fā)明內(nèi)容
本實(shí)用新型的所要解決的技術(shù)問題是提供一種基于FPGA (Field Programmable Gate Array,現(xiàn)場(chǎng)可編程邏輯陣列)的工業(yè)混合信號(hào)輸出控制設(shè)備。該設(shè)備可解決現(xiàn)階段工業(yè)現(xiàn)場(chǎng) 多信號(hào)輸出控制系統(tǒng)的性能與成本矛盾,性價(jià)比高。
本實(shí)用新型的技術(shù)方案為其包括現(xiàn)場(chǎng)可編程邏輯陣列、外部數(shù)模信號(hào)轉(zhuǎn)換器件和外部 模數(shù)信號(hào)轉(zhuǎn)換器件。所述現(xiàn)場(chǎng)可編程邏輯陣列外接上位信號(hào)接收端口、數(shù)字脈沖信號(hào)輸出端 口、模擬信號(hào)輸出端口和模擬信號(hào)接收端口,所述外部數(shù)模信號(hào)轉(zhuǎn)換器件通過所述模擬信號(hào) 輸出端口與現(xiàn)場(chǎng)可編程邏輯陣列相連,所述外部模數(shù)信號(hào)轉(zhuǎn)換器件通過所述模擬信號(hào)接收端 口與現(xiàn)場(chǎng)可編程邏輯陣列相連。現(xiàn)場(chǎng)可編程邏輯陣列內(nèi)包含處理器模塊、通用串行通信模塊、 端口狀態(tài)設(shè)定模塊和數(shù)模芯片通信模塊,這些FPGA內(nèi)的模塊均接至高速總線;所述上位信號(hào) 接收端口接至通用串行通信模塊,所述數(shù)字脈沖信號(hào)輸出端口接至端口狀態(tài)設(shè)定模塊,所述 數(shù)模芯片通信模塊接至所述模擬信號(hào)輸出端口 、所述模擬信號(hào)接收端口 。本實(shí)用新型的有益效果:本實(shí)用新型很好的解決了現(xiàn)有設(shè)備存在的矛盾,充分發(fā)揮了 FPGA 的結(jié)構(gòu)靈活性,對(duì)多種信號(hào)均可進(jìn)行高速采集,為工業(yè)自動(dòng)化控制提供了高集成度、高性能、 低成本的解決方案。設(shè)備具備以F兒個(gè)主要功能
1、 數(shù)字量開關(guān)信號(hào)控制。通過集電極丌路的設(shè)計(jì)以驅(qū)動(dòng)外部的一級(jí)繼電器,驅(qū)動(dòng)電壓隨 外部接入電壓變化,因此可以連接不同電壓的繼電器,滿足不同的設(shè)備要求。
2、 高速PBI輸出。對(duì)外輸出PWM,不同于市面上常見的100KHz上下的頻率輸出,本設(shè) 備可輸出最大4腿z的PWM信號(hào),以滿足某些特殊設(shè)備的控制需求。
3、 模擬電壓輸出。高精度輸出0V 10V的電壓信號(hào),采用高速高精度的數(shù)模轉(zhuǎn)換芯片進(jìn) 行電壓信號(hào)輸出。
4、 模擬電流輸出。高精度輸出0mA 20mA的電流信號(hào),0mA 20mA, 4mA 20mA多量程可 切換,采用高速高精度的數(shù)模轉(zhuǎn)換芯片進(jìn)行信號(hào)輸出。
5、 模擬電壓采集。高精度采集外部-10V 10V的電壓信號(hào),0V 10V, 0V 5V, -10V IOV, -5V 5V多量程可切換,采用高速高精度的模數(shù)轉(zhuǎn)換芯片進(jìn)行相關(guān)信號(hào)采集。
6、 模擬電流采集。高精度采集外部0mA 20mA的電流信號(hào),0mA 20mA, 4raA 20mA多 量程可切換,采用高速高精度的模數(shù)轉(zhuǎn)換芯片進(jìn)行相關(guān)信號(hào)采集。
7、 上位機(jī)通信。通過RS485總線采用ModBus協(xié)議與上位機(jī)進(jìn)行通信,可以與任何支持 ModBus的設(shè)備聯(lián)機(jī)使用。
本實(shí)用新型由于高集成度,對(duì)多種信號(hào)一體化進(jìn)行處理輸出,數(shù)據(jù)通過內(nèi)部總線進(jìn)行整 合,因此性能遠(yuǎn)超多個(gè)單一采集模塊的混合使用,而且全部的輸出,控制,通信使用一片F(xiàn)PGA 來完成,成本上也大大優(yōu)于多個(gè)模塊的組合。
本實(shí)用新型由于采用了靈活、高效的FPGA作為主控,不僅可以保證信號(hào)輸出、通信及系 統(tǒng)的整體運(yùn)行效率,而且靈活度高,可針對(duì)不同的信號(hào)進(jìn)行不同的配置,滿足多種應(yīng)用場(chǎng)合, 配以不問的模擬量輸出轉(zhuǎn)換芯片和光耦即可進(jìn)行不同的信號(hào)采集。
圖l為本實(shí)用新型的結(jié)構(gòu)框圖。
圖2為本實(shí)用新型的FPGA內(nèi)部結(jié)構(gòu)框圖。
圖3為本實(shí)用新型的工作流程框圖。
具體實(shí)施方式
以下結(jié)合附圖對(duì)本實(shí)用新型作進(jìn)一步的描述。
如圖1和圖2所示,本實(shí)用新型包括現(xiàn)場(chǎng)可編程邏輯陣列、外部數(shù)模信號(hào)轉(zhuǎn)換器件和外 部模數(shù)信號(hào)轉(zhuǎn)換器件。其中外部數(shù)模信號(hào)轉(zhuǎn)換器件用于輸出模擬量電壓與電流信號(hào)。外部模 數(shù)信號(hào)轉(zhuǎn)換器件用于采集接收模擬設(shè)備所返回的模擬電壓、電流信號(hào)。所述現(xiàn)場(chǎng)可編程邏輯 陣列外接上位信號(hào)接收端口、數(shù)字脈沖信號(hào)輸出端口、模擬信號(hào)輸出端口和模擬信號(hào)接收端 口 。所述外部數(shù)模信號(hào)轉(zhuǎn)換器件通過所述模擬信號(hào)輸出端口與現(xiàn)場(chǎng)可編程邏輯陣列相連。所 述外部模數(shù)信號(hào)轉(zhuǎn)換器件通過所述模擬信號(hào)接收端口與現(xiàn)場(chǎng)可編程邏輯陣列相連。所述現(xiàn)場(chǎng) 可編程邏輯陣列內(nèi)包含處理器模塊、通用串行通信模塊、端口狀態(tài)設(shè)定模塊和數(shù)模芯片通信模塊,這些FPGA內(nèi)的模塊均接至高速總線。所述上位信號(hào)接收端口接至通用串行通信模塊, 所述數(shù)字脈沖信號(hào)輸出端口接至端口狀態(tài)設(shè)定模塊,所述數(shù)模芯片通信模塊接至所述模擬信 號(hào)輸出端口、模擬信號(hào)接收端口。
所述處理器模塊可采用軟核處理器NIOS II (Altera生產(chǎn)的FPGA所配套的軟核),所述 數(shù)模芯片通信模塊采用SPI或并行接口,所述高速總線可采用AVAL0N總線(Altera的總線 標(biāo)準(zhǔn))。所述上位信號(hào)接收端口可采用RS485接口,使用Modbus協(xié)議接收上位設(shè)備命令。
所述現(xiàn)場(chǎng)可編程邏輯陣列內(nèi)還包括SDRAM (Synchronous Dynamic Random Access Memory, 同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器)控制模塊和高速計(jì)數(shù)器模塊,這些模塊均接至所述高速總線。
FPGA不僅承擔(dān)了系統(tǒng)主控,通信的角色,同時(shí)部分資源將針對(duì)外部信號(hào)的不同進(jìn)行相應(yīng) 的配置。
本設(shè)備每路模擬量輸出都采用了獨(dú)立的數(shù)模芯片,通過FPGA的端口來控制進(jìn)行芯片選 擇,確保各路模擬信號(hào)能夠正確輸出至模擬設(shè)備。所述外部數(shù)模信號(hào)轉(zhuǎn)換器件可釆用美國(guó)德 州儀器公司TI的工業(yè)專用的高速、高精度、高可靠性芯片DAC7512,其轉(zhuǎn)換精度為12位, 完全可以滿足工業(yè)現(xiàn)場(chǎng)的小信號(hào)精確控制。DAC7512還接有電壓電流轉(zhuǎn)換芯片用于電流輸出, 可采用Xicor公司的專用電壓電流轉(zhuǎn)換芯片XTR115,該芯片可以精確的將輸入的電壓線性變 換為0 20mA。
為滿足某些特殊開關(guān)設(shè)備、數(shù)字設(shè)備的控制需求,所述現(xiàn)場(chǎng)可編程邏輯陣列內(nèi)還可以安 裝P麗模塊,該模塊接至所述高速總線。工業(yè)現(xiàn)場(chǎng)的丌關(guān)量和脈沖信號(hào)可能存在電壓過高, 信號(hào)質(zhì)量較差,其他電壓竄入等因素;為了配合高速PWM信號(hào)輸出,所以所述數(shù)字脈沖信號(hào)
輸出端口可采用光耦隔離,用于通過高速脈沖信號(hào)。該輸出端n經(jīng)光耦隔離后,還可以接有
達(dá)林頓管。這樣開關(guān)量可以驅(qū)動(dòng)不同的繼電器,作為一級(jí)繼電控制,其前級(jí)同樣采用了光耦 隔離,確保工作可靠性。
根據(jù)上述結(jié)構(gòu),F(xiàn)PGA內(nèi)部資源包含兩部分, 一部分用于搭建CPU (中央處理器)NIOSII, 一部分用于搭建輸出、采集外部開關(guān)量、脈沖信號(hào)、模擬量的單元。NIOS II的整體運(yùn)行效 率介于ARM7和ARM9 (ARM是一種嵌入式處理器核心)之間,負(fù)責(zé)整個(gè)系統(tǒng)的數(shù)據(jù)輸出控制、 運(yùn)算和通信。數(shù)字脈沖信號(hào)輸出端口、模擬信號(hào)接收端口和模擬信號(hào)輸出端口,采用FPGA搭 建的NIOS TI GPIO (通用輸入輸出端口)實(shí)現(xiàn)。P麗信號(hào)通過FPGA內(nèi)部用Verilog HDL ( — 種硬件描述語言,用于硬件編成)設(shè)計(jì)的高速P麗模塊來產(chǎn)生。
FPGA能夠完成全部的模擬量、開關(guān)量的輸出控制和數(shù)據(jù)通信,以實(shí)現(xiàn)ModBus協(xié)議,并 把解析的數(shù)據(jù)數(shù)據(jù)對(duì)應(yīng)到各個(gè)數(shù)據(jù)通道中。
本實(shí)用新型的工作流程如圖3所示。在上位設(shè)備沒有消息發(fā)出的時(shí)候,F(xiàn)PGA中的處理器 處于循環(huán)等待狀態(tài); 一旦收到消息,即進(jìn)入消息處理流程。消息分兩類, 一類是讀取當(dāng)前實(shí) 時(shí)狀態(tài)的命令消息,即之前設(shè)置的狀態(tài)值,以便在上位設(shè)備開機(jī)時(shí)可以獲取當(dāng)前的工作狀態(tài)。 另一類是設(shè)置命令消息,用于控制各開關(guān)信號(hào),模擬信號(hào)和PWM輸出。消息收到后,如果是 讀取命令,則讀取各模塊的設(shè)置寄存器數(shù)值,即讀取端口狀態(tài)設(shè)定模塊的設(shè)置寄存器數(shù)值, 并通過外部模數(shù)信號(hào)轉(zhuǎn)換器件掃描、采集模擬設(shè)備的電壓、電流信號(hào),然后返回給上位設(shè)備。如果是控制命令,則進(jìn)入?yún)f(xié)議解析,將上位設(shè)備命令中的操作數(shù)分離出來;然后根據(jù)命令, 依次調(diào)整各端口狀態(tài),設(shè)置P麗輸出參數(shù),由多個(gè)數(shù)模轉(zhuǎn)換芯片控制各路屯壓輸出狀態(tài),通 過電壓電流轉(zhuǎn)換芯片控制各路電流輸出狀態(tài)。
ModBus協(xié)議是應(yīng)用于屯子控制器上的一種通用數(shù)據(jù)協(xié)議,它己經(jīng)成為一個(gè)通用工業(yè)標(biāo)準(zhǔn)。 此協(xié)議定義了一個(gè)控制器能認(rèn)識(shí)使用的消息結(jié)構(gòu),而不管它們是經(jīng)過何種網(wǎng)絡(luò)進(jìn)行通信的。它 描述了控制器請(qǐng)求訪問其它設(shè)備的過程,如果回應(yīng)來自其它設(shè)備的請(qǐng)求,以及怎樣偵測(cè)錯(cuò)誤 并記錄。它制定了消息域格局和內(nèi)容的公共格式。
本實(shí)用新型中的FPGA與上位設(shè)備之間的通信協(xié)議采用ModBus的RTU (ModBus協(xié)議的一 種格式)方式,選取了幾個(gè)需要用到的功能號(hào)進(jìn)行實(shí)現(xiàn),并針對(duì)各個(gè)信號(hào)定義了相應(yīng)的寄存 器。RTU模式在消息中的每個(gè)8Bit字節(jié)包含兩個(gè)4Bit的十六進(jìn)制字符。這種方式的主要優(yōu) 點(diǎn)是在同樣的波特率下,可比ASCII方式傳送更多的數(shù)據(jù)。
權(quán)利要求1.基于FPGA的工業(yè)混合信號(hào)輸出控制設(shè)備,包括現(xiàn)場(chǎng)可編程邏輯陣列、外部數(shù)模信號(hào)轉(zhuǎn)換器件和外部模數(shù)信號(hào)轉(zhuǎn)換器件,所述現(xiàn)場(chǎng)可編程邏輯陣列外接上位信號(hào)接收端口、數(shù)字脈沖信號(hào)輸出端口、模擬信號(hào)輸出端口和模擬信號(hào)接收端口,所述外部數(shù)模信號(hào)轉(zhuǎn)換器件通過所述模擬信號(hào)輸出端口與現(xiàn)場(chǎng)可編程邏輯陣列相連,所述外部模數(shù)信號(hào)轉(zhuǎn)換器件通過所述模擬信號(hào)接收端口與現(xiàn)場(chǎng)可編程邏輯陣列相連,其特征在于現(xiàn)場(chǎng)可編程邏輯陣列內(nèi)包含處理器模塊、通用串行通信模塊、端口狀態(tài)設(shè)定模塊和數(shù)模芯片通信模塊,這些FPGA內(nèi)的模塊均接至高速總線;所述上位信號(hào)接收端口接至通用串行通信模塊,所述數(shù)字脈沖信號(hào)輸出端口接至端口狀態(tài)設(shè)定模塊,所述數(shù)模芯片通信模塊接至所述模擬信號(hào)輸出端口、所述模擬信號(hào)接收端口。
2. 根據(jù)權(quán)利要求1所述的控制設(shè)備,其特征在于所述處理器模塊采用軟核處理器NIOS II,所述數(shù)模芯片通信模塊采用SPI或并行接口,所述高速總線采用AVAL0N總線,所述上位 信號(hào)接收端口采用RS485接口。
3. 根據(jù)權(quán)利要求1所述的控制設(shè)備,其特征在于所述現(xiàn)場(chǎng)可編程邏輯陣列內(nèi)還包括PWM 模塊,該模塊接至所述高速總線。
4. 根據(jù)權(quán)利要求1 3中任一項(xiàng)所述的控制設(shè)備,其特征在于所述現(xiàn)場(chǎng)可編程邏輯陣列 內(nèi)還包括SDRAM控制模塊和高速計(jì)數(shù)器模塊,這些模塊均接至所述高速總線。
5. 根據(jù)權(quán)利要求1 3中任一項(xiàng)所述的控制設(shè)備,其特征在于所述外部數(shù)模信號(hào)轉(zhuǎn)換器 件采用MC7512, DAC7512還接有電壓電流轉(zhuǎn)換芯片XTR115。
6. 根據(jù)權(quán)利要求1 3中任一項(xiàng)所述的控制設(shè)備,其特征在于所述數(shù)字脈沖信號(hào)輸出端 口采用光耦隔離,并接有達(dá)林頓管。
專利摘要本實(shí)用新型提供了一種基于FPGA的工業(yè)信號(hào)邏輯控制設(shè)備FPGA外接上位信號(hào)接收端口、數(shù)字脈沖信號(hào)輸出端口、模擬信號(hào)輸出端口和模擬信號(hào)接收端口,外部數(shù)模信號(hào)轉(zhuǎn)換器件通過模擬信號(hào)輸出端口與FPGA相連,外部模數(shù)信號(hào)轉(zhuǎn)換器件通過模擬信號(hào)接收端口與FPGA相連。FPGA內(nèi)包含處理器模塊、通用串行通信模塊、端口狀態(tài)設(shè)定模塊和數(shù)模芯片通信模塊,這些FPGA內(nèi)的模塊均接至高速總線;上位信號(hào)接收端口接至通用串行通信模塊,數(shù)字脈沖信號(hào)輸出端口接至端口狀態(tài)設(shè)定模塊,數(shù)模芯片通信模塊接至模擬信號(hào)輸出端口、模擬信號(hào)接收端口。本實(shí)用新型采集、通信及系統(tǒng)的整體運(yùn)行效率和靈活度高,可滿足多種應(yīng)用場(chǎng)合。
文檔編號(hào)G05B19/05GK201340541SQ20092008351
公開日2009年11月4日 申請(qǐng)日期2009年1月20日 優(yōu)先權(quán)日2009年1月20日
發(fā)明者杰 吳, 朱敦堯 申請(qǐng)人:武漢光庭汽車電子有限公司