隨著信息技術的發展,智能化、信息化、網絡化成為現代工業控制的發展潮流。20世紀80年代以來,開放的工業控制總線迅速發展,徹底改變了世界的技術面貌,在此基礎上通過網絡連接到分散控制和嵌入式設備的控制技術逐步發展成熟,遠程I/O就是在這種條件下發展的一類產品,可以分散配置在現場,連接當地的輸入輸出信號,實現要求的配置。
在工業控制領域,現場總線技術將控制功能徹底下放到現場。MODBUS是現場總線的國際標準之一,符合IEC物理層標準,有冗余的物理總線網絡和嚴格的控制信息傳輸機制。
實時工業現場開關量數據的采集給開發者提出了廣泛的要求,包括較高的處理性能,低功耗,高速數據I/O,較高的存儲能力,高可靠性等。而種類繁多的ARM處理器具有成本低、功耗低、易開發和性能好等特點,可開發出較佳性能的控制采集系統。S3C2440就是其中的一種工業級ARM微處理器,具有性價比高,可靠性高等特點,因此選用它做為系統開發的硬件平臺。
Linux操作系統由于其開源、精簡而高效的內核,豐富的網絡性能以及對多種處理器結構的支持,使其在嵌入式工業控制領域得到了廣泛的應用,而實時處理工業現場開關量數據是工業控制領域的主要應用之一。
本文“基于現場總線的開關量I/O模塊的設計”實現了一個完整的通用嵌入式系統開發平臺。介紹了基于MODBUS現場總線的開關量I/O模塊,此模塊連接了MODBUS現場總線和傳統的開關量控制設備。首先簡要介紹了系統總體方案設計,在此基礎上,把系統設計分為硬件設計和軟件設計兩大部分。
系統硬件首先對A RM處理器和S3C2440微處理器進行了簡單的介紹,重點論述了S3C2440處理器與存儲器(Nand和SDRAM)、RS485、GPIO等接口的設計,對開關量輸入輸出電路進行了深入分析,可同時進行16路開關量的輸出和采集,并對硬件做了相關的調試。
系統軟件分為上位機和下位機兩部分:上位機以Windows XP為開發平臺,采用VC++軟件設計界面,利用MSComm控件進行MODBUS串口編程,具有操作簡單,配置靈活的特點;下位機以嵌入式Linux為核心平臺,首先構建嵌入式Linux,主要包括bootloader、內核的編譯與移植以及嵌入式Linux下文件系統的構建。接著對MODBUS協議的移植和字符設備驅動程序(串口、GPIO )做了深入分析,重點用C語言實現了基于RS485接口的MODBUS串口編程,給出了軟件流程圖及核心代碼,并對軟件進行了調試。
1.1引言
近幾十年來,工業控制系統從傳統的集中控制系統,過渡到分散控制(DCS)系統,但DCS仍是集中與分散相結合的控制體系。進入90年代,隨著計算機技術及計算機網絡技術的飛速發展,出現了現場總線,現場總線與傳統DCS相比具有更多優勢,并能帶來巨大的經濟效益。根據國際電工委員會IEC61158標準的定義:安裝在制造或生產過程區域的現場裝置與控制室內的自動控制裝置之間的數字式、串行、雙向、多點通信的數據總線稱為現場總線。由現場總線與現場智能設備組成的控制系統稱為現場總線控制系統FCS(Fieldbus Control System )。
衡量一個控制系統是否為真正的現場總線控制系統FCS有三個關鍵要點,即:核心、基礎和本質。FCS的核心是總線協議,只有遵循現場總線協議的控制系統,才能稱為現場總線控制系統;FCS的基礎是數字智能現場儀表,是FCS的硬件支撐;FCS的本質是信息處理現場化,這是FCS的系統效能體現。
FCS與DCS的本質差異在于現場級設備的數字化、網絡化,實現了控制裝置與現場裝置的雙向通信,消除了生產過程監控的信息“盲點”。
與DCS相比FCS有如下顯著優點:
●DCS有I/O模件控制柜,FCS很少。這樣就省去了中間環節,降低了系統成本,節省電纜及相關的材料和安裝費用。
●FCS使用數字通信,傳輸數據更準確,信息量更大。
●DCS就像PC機,設備越多,性能越差,FCS就像PC機構成的網絡,總線上的設備越多,在總線通信速率足夠快的情況下,FCS功能越強。
●具有可互操作性、可互換性,克服傳統DCS和PLC等含有專利性技術的控制系統所帶來的封閉性問題,降低工程項目的建造和運營成本。
但是在生產力發展到一定階段之前,并不是先進的技術就一定要完全取代落后的技術。不同層次的技術有它應用的領域,可以允許FCS ,DCS ,PLC等技術共同存在,一些場合并不一定非要先進的技術。只要其能在特定的地方發揮相應的功能就行。所以討論誰取代誰并沒有實際的意義。從這個角度講,本論文的基于現場總線的開關量I/O模塊并不是一個過渡產品,在現場總線技術深入到儀表之后,開關量I/0模塊還可在適當的地方使用。
1.2研究背景
技術的發展和更新換代是一個緩慢和逐步接受的過程,FCS不可能很快取代現有控制系統。在FCS逐步推廣的過程中,將所有設備全部采用FCS的可能性不大,這樣就不可避免地要與已有的設備進行連接。
唯有比較才可體現FCS的優越性,將傳統儀表集成到FCS系統也可以說是FCS發展中的一種策略。在比較中可以體現出FCS控制系統的優越性,這樣能夠促進用戶使用FCS的積極性。
從生產現場實際情況來講,生產現場有許多需要開關量控制和開關量顯示的設備。如電機啟動停止控制、電機行程反饋、變頻器控制和變頻器反饋、溫度開關、壓力開關、逆止門電磁鐵指令和電磁鐵狀態反饋等。而現場總線設備可能暫時還沒有相應產品,或者客戶有傳統設備的庫存,這就需要將己有的設備集成到FCS.
另外,從成本考慮,現有的FCS設備成本大大高于常規儀表。有些設備的控制并不一定需要FCS設備,這樣就要用常規設備實現控制功能。這就需要把常規設備集成到FCS中來。因此采用開關量I/O裝置就成為一個很好的選擇。
本文要設計的現場總線的開關量I/O模塊是完成MODBUS現場總線與傳統開關量設備互連的控制裝置。尤其適合將傳統工業的控制系統與FCS控制系統結合,在所有現場設備未全部與現場總線融合之前,對企業原有設備與現場總線連接方面有很大的現實意義。
因此,基于以上考慮,有了市場和技術的巨大需求開發基于MODBUS的開關量I/O模塊成為必然。
1.3研究路線及內容結構
現場總線技術的研究,是目前工業控制領域的重要前沿,是當前國內外都非常熱門的研究方向。針對這種情況,本論文從現場總線上一個開關量輸入輸出模塊的設計著手,對其進行設計與實踐,并對MODBUS現場總線技術做了初步的接觸。
MODBUS的開關量I/O模塊放在現場,實現傳統儀表、執行器與FCS的連接。本論文的目的是制作一個實現基于MODBUS的開關量輸入、開關量輸出的模塊。
1.3.1研究路線
本文主要是研究和實現一種基于現場總線的開關量I/O模塊。根據需求,本模塊采用基于ARM9的S3C2440微處理器作為硬件開發平臺,嵌入式Linux2.6作為系統軟件開發平臺,通過串口RS485,應用MODBUS現場總線協議,實現與上位機控制中心PC機與I/O模塊間的遠程通信,從而使控制中心能夠得到所需要的數據;通過可用的G PI O來控制傳統開關量的采集與控制,并通過控制中心來配置輸入輸出的個數,鍵盤用來做本地測試。
1.3.2內容結構
本文的章節安排如下:
第一章緒論:概述了課題研究的背景以及應用領域,闡述了本論文研究的目的和意義、研究路線以及論文的架構安排。
第二章MODBUS現場總線技術綜述:簡單介紹了MODBUS現場總線的特點,詳細闡述了MODBUS現場總線的通信原理。
第三章總體方案設計:重點闡述了系統硬件和軟件的設計方案。
第四章開關量I/O模塊硬件結構設計:采用ARM S3C2440作為系統微處理器,設計了存儲電路、電源電路、RJ45網口,JTAG接口、鍵盤模塊、輸入輸出模塊、RS485接口、復位電路、時鐘電路,完成系統硬件設計。
第五章操作系統移植與驅動開發:完成了嵌入式Linux操作系統的構建,移植了MODBUS總線協議,實現了字符設備驅動程序。
第六章開關量I/O模塊軟件結構設計:分上位機和下位機兩部分,介紹了基于MODBUS的串口編程,完成應用程序的開發。
第七章結論:總結了本文的工作,指出了進一步研究的重點。
1.4關鍵技術分析
1.4.1現場總線技術現場總線的概念是隨著微電子技術的發展,數字通信網絡延伸到工業過程現場成為可能后,于1984年左右提出的。現場總線是面向工廠底層自動化及信息集成的數字化網絡技術。現場總線類型主要有:FF、ProfiBus、ControlNet、P-NET、InterBus、CAN和Modbus等。這些總線各有各的規范,互不兼容。
現場總線控制系統有如下主要優點:
(1 )全數字化。在采用現場總線控制系統的企業中,用于生產管理的局域網能夠與用于自動控制的現場總線網絡緊密銜接。此外,數字化信號固有的高精度、抗干擾特性也能提高控制系統的可靠性。
(2 )全分布。在現場總線控制系統中,各現場設備有足夠的自主性,它們彼此之間相互通信,完全可以把各種控制功能分散到各種設備中,實現真正的分布式控制。
(3 )雙向傳輸。對于傳統的4-20mA電流信號,一條線只能傳遞一路信號。現場總線設備在一條線上則可以向上傳遞傳感器信號,也可以向下傳遞控制信號。
(4 )自診斷。現場總線儀表本身具有自診斷功能,而且這種診斷信息可以送到中央控制室,以便于維護,而這在只能傳遞一路信號的傳統儀表中是做不到的。
(5 )節省布線及控制室空間。傳統的控制系統每個儀表都需要一條線連到中央控制室,在中央控制室裝備一個搭配線架。而在FCS系統中多臺現場設備可串行連接在一條總線上,只需較少的線進入中央控制室,這樣就大量節省了布線費用,同時也降低了中央控制室的造價。
(6 )多功能儀表。數字雙向傳輸方式使得現場總線儀表可以擺脫傳統儀表功能單一的制約,可以在一個儀表中集成多種功能,做成多變量變送器,甚至集檢測、運算、控制于一體的變送控制器。
(7 )開放性。1999年底現場總線協議已被IEC批準正式成為國際標準,從而使現場總線成為一種開放的技術。
(8 )互操作性。現場總線標準保證不同廠家的產品可以互操作,這樣就可以在一個企業中由用戶根據產品的性能、價格選用不同廠商的產品,集成在一起,避免了傳統控制系統中必須選用同一廠家的產品限制,促進有效的競爭,降低控制系統的成本。
(9 )智能化與自治性。現場總線設備具有很高的智能,能處理各種參數、運行狀態信息及故障信息,甚至能在部件、網絡故障的情況下獨立工作,大大提高了整個控制系統的可靠性。
現場總線突破了DCS系統中因專用通信網絡的封閉造成的缺陷,采用開放化、標準化的解決方案,把來自不同廠商而遵守同一協議規范的自動化設備連接成控制網絡,組合成各類控制系統,實現綜合自動化的各種功能。其突出特點是開放性、分散性與數字通信。
1.4.2嵌入式技術
●嵌入式系統
根據IEEE (國際電氣和電子工程師協會)的定義,嵌入式系統是“以應用為中心,以計算機技術為基礎,并且軟硬件可裁剪,適用于應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。它一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統以及用戶的應用程序等四個部分組成,用于實現對其他設備的控制、監視或管理等功能”。在當前數字信息技術和網絡技術高速發展的后PC時代,嵌入式系統已經廣泛地滲透到科學研究、工程設計、軍事技術、工業控制等方方面面中,而且工業控制是嵌入式系統重要的應用領域。
嵌入式系統的主要特點:
(1 )系統內核小。嵌入式系統通常是面向特定應用的嵌入式CPU,通常都具有低功耗、體積小、集成度高等特點,系統資源相對有限,所以內核較之傳統的操作系統要小得多,從而有利于嵌入式系統設計趨于小型化,移動能力大大增強。
(2 )專用性強。嵌入式系統的個性化很強,其中的軟件系統和硬件的結合非常緊密,一般要針對硬件進行系統的移植。
(3 )系統精簡。嵌入式系統的硬件和軟件都必須高效率地設計,量體裁衣、去除冗余。
(4 )具有實時性的系統軟件(OS)是嵌入式軟件的基本要求。軟件代碼要求高質量和高可靠性。
(5 )支持多任務。嵌入式軟件開發要想走向標準化,就必須使用多任務的操作系統。
嵌入式系統的應用程序可以沒有操作系統而直接在芯片上運行:但是為了合理的調度多任務。利用系統資源、系統函數以及專家庫函數接口,用戶必須自行選配RTOS( Real-Time Operating System )開發平臺,這樣才能保證程序執行的實時性、可靠性并減少開發時間。
(6 )嵌入式系統開發需要專門的開發工具和環境。由于嵌入式系統本身不具備自主開發能力,即使設計完成后,用戶通常不能對其中的程序功能進行修改,因此必須有一套開發工具和環境才能進行開發。開發時往往有主機和目標機的概念,主機用于程序的開發,目標機作為最后的執行機,開發是需要交替結合進行。
●嵌入式操作系統
嵌入式操作系統就是支持嵌入式系統工作的操作系統,是嵌入式應用軟件的基礎和開發平臺。它是一段嵌入在目標代碼中的軟件,用戶的其他應用程序都建立在操作系統之上,它在知識體系和技術本質上與通用操作系統沒有太大的區別,一般用于比較復雜的嵌入式系統軟件開發中。由于大多數嵌入式系統應用在實時環境中,因此嵌入式系統一般具有實時特點。
嵌入式操作系統是嵌入式系統的靈魂,它的出現大大提高了嵌入式系統開發的效率,減少了系統開發的總工作量,而且提高了嵌入式應用軟件的可移植性。為了滿足嵌入式系統的需要,嵌入式操作系統必須要包括操作系統的一些最基本的功能,如中斷處理與進程調度,用戶可以通過應用程序接口(API)來使用操作系統。
●嵌入式開發過程
在嵌入式開發過程中有宿主機和目標機之分:宿主機是執行編譯、鏈接、尋址過程的計算機;目標機指運行嵌入式軟件的硬件平臺。首先須把應用程序轉換成可以在目標機上運行的二進制代碼。這一過程包含三個步驟:編譯、鏈接、尋址。編譯過程由交叉編譯器實現。所謂交叉編譯器就是運行在一個計算機平臺上并為另一個平臺產生代碼的編譯器。常用的交叉編譯器有GNUC/C++ (gcc)。編譯過程產生的所有目標文件被鏈接成一個目標文件,稱為鏈接過程。尋址過程會把物理存儲器地址指定給目標文件的每個相對偏移處。該過程生成的文件就是可以在嵌入式平臺上執行的二進制文件。常用的集成開發工具有ADSl.2等。
嵌入式開發過程中另一個重要的步驟是調試目標機上的應用程序。嵌入式調試采用交叉調試器,一般采用宿主機-目標機的調試方式,它們之間由串行口線或以太網或BDM線相連。交叉調試有任務級、源碼級和匯編級的調試,調試時需將宿主機上的應用程序和操作系統內核下載到目標機的RAM中或直接燒錄到目標機的FLASH中。目標監控器是調試器對目標機上運行的應用程序進行控制的代理( Debugger Agent),事先被固化在目標機的Flash、ROM中,在目標機上電后自動啟動,并等待宿主機方調試器發來的命令,配合調試器完成應用程序的下載、運行和基本的調試功能,將調試信息返回給宿主機[5 ]。
-
MODBUS
+關注
關注
28文章
1765瀏覽量
76850 -
FCS
+關注
關注
4文章
32瀏覽量
14435
發布評論請先 登錄
相關推薦
評論