馬建峰
(江蘇海事職業(yè)技術(shù)學(xué)院,江蘇南京 211100)
基于專利分析的嵌入式軟PLC編程系統(tǒng)的設(shè)計(jì)探析
馬建峰
(江蘇海事職業(yè)技術(shù)學(xué)院,江蘇南京 211100)
利用VC++開發(fā)工具,在Windows操作環(huán)境中完成嵌入式軟PLC編程系統(tǒng)設(shè)計(jì)。在進(jìn)行軟PLC梯形圖元件數(shù)據(jù)結(jié)構(gòu)研究過程中,以面向?qū)ο笤O(shè)計(jì)思路為基礎(chǔ),提出了梯形圖元件集合存儲(chǔ)和交互的基本方案。系統(tǒng)結(jié)構(gòu)基礎(chǔ)為VC++的Document/View,利用軟PLC編程系統(tǒng)軟件設(shè)計(jì)功能來進(jìn)行編輯、編譯以及仿真等多項(xiàng)應(yīng)用的添加,通過計(jì)算機(jī)算法的應(yīng)用,提升功能應(yīng)用性能。結(jié)合梯形圖編輯和編譯掃描原理,對(duì)嵌入式軟PLC編程系統(tǒng)方案進(jìn)行了說明。該方案具有成本低、效率高等特點(diǎn),為軟件開發(fā)者提供了一種全新的思路。
軟PLC;梯形圖;編譯;仿真
計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,全面帶動(dòng)了傳統(tǒng)PLC控制功能技術(shù)的創(chuàng)新發(fā)展,而軟PLC技術(shù)的出現(xiàn)及應(yīng)用正是傳統(tǒng)控制軟件創(chuàng)新的產(chǎn)物。軟PLC技術(shù)滿足了現(xiàn)代化工業(yè)控制技術(shù)的基本要求,其結(jié)構(gòu)更為開放,在多種硬件環(huán)境中都能夠正常應(yīng)用,這一優(yōu)勢(shì)徹底將存在與傳統(tǒng)PLC系統(tǒng)的兼容問題予以解決。在軟PLC中,其控制運(yùn)算被封裝在軟件中,基于此,軟PLC基礎(chǔ)性功能與傳統(tǒng)PLC系統(tǒng)是相一致的,同時(shí)利用計(jì)算機(jī)操作系統(tǒng)還可以進(jìn)行編輯、運(yùn)算以及編譯等多項(xiàng)其他傳統(tǒng)PLC所不具備的新功能。軟PLC軟件同傳統(tǒng)PLC技術(shù)相比,前者具有標(biāo)準(zhǔn)化的編程語言、模塊化的控制功能以及靈活的硬件配置等特點(diǎn)。文章將對(duì)在Windows環(huán)境中,將VC++開發(fā)工具應(yīng)用到嵌入式軟PLC編程系統(tǒng)中去,事實(shí)上,VC++軟件應(yīng)用對(duì)人機(jī)交互界面的優(yōu)化具有一定的作用。另外,VC++以其固有的面向?qū)ο髾C(jī)制在梯形圖數(shù)據(jù)結(jié)果設(shè)計(jì)方面的應(yīng)用,也具有一定的優(yōu)勢(shì),同時(shí)加上相應(yīng)算法的應(yīng)用,為軟PLC編程系統(tǒng)設(shè)的完成創(chuàng)造了條件。
運(yùn)行系統(tǒng)和編程系統(tǒng)是嵌入式軟PLC系統(tǒng)的主要構(gòu)成部分,其中運(yùn)行系統(tǒng)以運(yùn)行目標(biāo)代碼為主,實(shí)現(xiàn)控制作用,保證程序功能發(fā)揮;而編程系統(tǒng)是以梯形圖為作用目標(biāo),對(duì)其實(shí)施編輯、指令解析以及生成目標(biāo)代碼等。
由國(guó)際電工委員會(huì)發(fā)布的IEC61131-3國(guó)際標(biāo)準(zhǔn)是軟PLC編程系統(tǒng)編程語言的根本。它的一大特點(diǎn)就是開放性,由四大模塊構(gòu)成,即編輯、編譯、仿真和通信。用戶系統(tǒng)開發(fā)環(huán)境是由編譯模塊提供的;而用戶在進(jìn)行掃描和程序編譯過程中,編譯模塊為其提供了一定的技術(shù)支持;用戶在進(jìn)行程序調(diào)試工作過程中,仿真模塊可以通過其離線模擬功能的發(fā)揮來為用戶提供服務(wù);最后,用戶編譯完成的目標(biāo)指令,必須完成下載并傳輸?shù)竭\(yùn)行系統(tǒng)中去才能實(shí)現(xiàn)系統(tǒng)應(yīng)用,那么這一環(huán)節(jié)就主要依靠通信模塊完成。
目前,有關(guān)編程語言設(shè)計(jì)標(biāo)準(zhǔn),國(guó)際方面共設(shè)定了五種基礎(chǔ)的PLC編程語言標(biāo)準(zhǔn),其分別為梯形圖(LD)、順序功能圖(SFC)、結(jié)構(gòu)化文本(ST)、功能模塊(FBD)以及指令表(IL)等,梯形圖以其簡(jiǎn)單、直觀等特點(diǎn)在實(shí)踐應(yīng)用中較為頻繁,基于此,文章編程系統(tǒng)也是以梯形圖為基礎(chǔ)來進(jìn)行用戶程序開發(fā)工作的。軟PLC系統(tǒng)開發(fā)過程中,VC++開發(fā)工具是較為常用的系統(tǒng)開發(fā)工具之一,該工具通過多文檔結(jié)構(gòu)的利用完成梯形圖和相應(yīng)指令格式的構(gòu)建,其中主要以*.lad、*.txt較為常見,在開發(fā)過程中,人機(jī)交互界面主要是由指令表區(qū)、信息輸出區(qū)以及梯形圖編輯區(qū)等三部分構(gòu)成的。
梯形圖編輯區(qū)可以完成對(duì)與梯形圖相關(guān)參數(shù)的設(shè)置工作;指令表區(qū)則可以將與梯形圖相關(guān)的邏輯指令顯示出來;最后信息輸出區(qū)以對(duì)可能出現(xiàn)語法錯(cuò)誤信息的梯形圖顯示出來,同時(shí)執(zhí)行正確的輸出信息等。
3.1 梯形圖元件類的繼承關(guān)系設(shè)計(jì)分析
簡(jiǎn)單元件和復(fù)雜元件是梯形圖主要元件構(gòu)成,其中簡(jiǎn)單元件主要由常開觸點(diǎn)、輸出線圈以及常閉觸點(diǎn)等,而復(fù)雜元件則主要包括定時(shí)器、數(shù)據(jù)運(yùn)算以及計(jì)數(shù)器等。面向?qū)ο蟮睦^承特性為派生其他元件子類提供了基礎(chǔ),例如在系統(tǒng)開發(fā)過程中,可以設(shè)定其中一類為梯形圖元件總體接口,并利用這一接口來進(jìn)行其他元件子類的派生操作。
3.2 梯形圖容器的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)
通常情況下,梯形圖容器主要是通過雙向連接結(jié)構(gòu)方式來表示的,這是因?yàn)椋菏紫孺湵泶鎯?chǔ)結(jié)構(gòu)的完成是以梯形圖添加、修改、刪除等基本操作為基礎(chǔ)的;其次,梯形圖整個(gè)編輯過程都是處于動(dòng)態(tài)變化狀態(tài)中的,因此過程中梯形圖的行數(shù)、元件類型以及列數(shù)等都具有一定的不確定性,而通過鏈表結(jié)構(gòu)形式的應(yīng)用可以進(jìn)一步提升系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的清晰度和有效性。
4.1 梯形圖的編輯
梯形圖編輯模塊封裝于視圖類,故而其數(shù)據(jù)存儲(chǔ)和顯示過程中是不存在直接聯(lián)系的,從而最大限度的降低了存在于代碼中的耦合性。一般情況下,梯形圖編輯主要分為以下幾步:首先,對(duì)加載梯形圖元件的類型進(jìn)行選擇;其次,將鼠標(biāo)位置置于編輯區(qū)域,通過掃描程序的利用獲得鼠標(biāo)單擊處的笛卡爾坐標(biāo)值;再次,將梯形圖元件移入到存儲(chǔ)鏈表中;第四,完成梯形圖在界面的顯示;第五,完成梯形圖其他相關(guān)參數(shù)的設(shè)置操作。
4.2 梯形圖的編譯
在編程系統(tǒng)中,梯形圖的編譯是其中的重要內(nèi)容,而編譯環(huán)節(jié)操作主要以對(duì)梯形圖的程序語法分析、循環(huán)掃描以及邏輯分析等為主,通過以上這些操作可以生成一種被系統(tǒng)認(rèn)可和識(shí)別的目標(biāo)程序。例如梯形圖編程語言的規(guī)范性就可以通過這一方法的運(yùn)用來進(jìn)行分析。首先編譯程序?qū)μ菪螆D進(jìn)行掃描,經(jīng)語法分析、邏輯分析等完成后,若是梯形圖編程語言中存在錯(cuò)誤,那么這時(shí)顯示界面就會(huì)將錯(cuò)誤信息內(nèi)容直接以窗口的方式顯示出來,用戶可以直觀的看到編程成中的錯(cuò)誤點(diǎn),進(jìn)行改正操作。
梯級(jí)是梯形圖掃描和編譯的基本單位,同時(shí)它也是互為影響的行所構(gòu)成的最小單元,如圖2所示就代表一個(gè)梯級(jí)。通常情況下,深度掃描算法是梯形圖掃描常用的方式之一,該算法在應(yīng)用過程中以豎線元素為邏輯區(qū)分,以從左向右,由上至下的方式完成每一個(gè)元素的掃描。
圖2 梯形圖掃描過程圖
4.3 梯形圖的仿真解析
從理論上分析,仿真模塊的存在是為了對(duì)編譯程序執(zhí)行狀態(tài)進(jìn)行檢測(cè),以進(jìn)一步避免編程程序出現(xiàn)編輯錯(cuò)誤。嵌入式軟PLC系統(tǒng)設(shè)計(jì)過程中,仿真模塊的應(yīng)用實(shí)現(xiàn)了對(duì)梯形圖程序運(yùn)行狀態(tài)的現(xiàn)場(chǎng)模擬,一旦其中程序存在錯(cuò)誤可以直接發(fā)現(xiàn)并修改編輯。其具體應(yīng)用如下:梯形圖程序在仿真模塊的作用下轉(zhuǎn)化為C程序,之后通過邏輯控制方式來實(shí)現(xiàn)指令的執(zhí)行。其中仿真模塊主要有梯形圖更新顯示模塊、邏輯運(yùn)算模塊以及算術(shù)運(yùn)算模塊等三種,其中仿真模塊的核心是邏輯運(yùn)算模塊,主要實(shí)現(xiàn)對(duì)梯形圖數(shù)據(jù)信息的識(shí)別,同時(shí)為邏輯狀態(tài)的轉(zhuǎn)移提供支持。仿真模塊在應(yīng)用過程中,可以直接讀取存儲(chǔ)梯形圖邏輯信息的配置文件,并對(duì)梯形圖元件以及與其相應(yīng)的邏輯關(guān)系完成還原處理操作。另外,仿真模擬過程中應(yīng)當(dāng)注意的是,動(dòng)態(tài)仿真的應(yīng)用可以對(duì)梯形圖編程中可能存在的錯(cuò)誤進(jìn)行直觀的顯示,同時(shí)將錯(cuò)誤位置顯示出來,方便用戶進(jìn)行實(shí)時(shí)的追蹤。其具體為:梯形圖元件能流在道統(tǒng)過程會(huì)出現(xiàn)變色反顯,而這種現(xiàn)象可以利用重繪觸發(fā)的形式來予以實(shí)現(xiàn)。
綜上所述,嵌入式軟PLC編程系統(tǒng)設(shè)計(jì)工作涉及的到內(nèi)容較多,且相互之間存在著一定的聯(lián)系,通過編輯、編譯、仿真等多項(xiàng)操作可以最大的限度的保證程序設(shè)計(jì)的準(zhǔn)確性。例如仿真模擬對(duì)發(fā)現(xiàn)編程中的錯(cuò)誤點(diǎn)具有十分重要的作用。另外,編輯過程中代碼的耦合性也有所降低,具備較強(qiáng)的移植性,設(shè)計(jì)人員在設(shè)計(jì)過程中應(yīng)當(dāng)加大對(duì)每一環(huán)節(jié)的重視程度,避免出現(xiàn)錯(cuò)誤。
[1]張媛,蔣樂天,等.基于嵌入式軟PLC的移動(dòng)式保溫餐車控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)械設(shè)計(jì)與制造工程,2016,45(04): 31-36.
[2]夏西泉.嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用[J].電鍍與環(huán)保,2016(03):54-57.
[3]鄭蓓林.基于嵌入式軟PLC的智能儀表設(shè)計(jì)方案研究[J].電子技術(shù)與軟件工程,2016(12):141-142.
[4]谷靜,瞿紅梅.基于嵌入式控制器與CAN總線的機(jī)械裝備智能監(jiān)控系統(tǒng)設(shè)計(jì)[J].機(jī)床與液壓,2016,44(04):129-132.
[5]賈茜茜.基于軟PLC技術(shù)的仿真系統(tǒng)設(shè)計(jì)與應(yīng)用[J].自動(dòng)化與儀器儀表,2016(02):211-213.
Analysis on The Design of the Embedded Soft PLC Programming System Based on Patent Analysis
Ma Jianfeng
(Jiangsu maritime vocational and technical college,Nanjing Jiangsu 211100)
The use of vc++development tools in Windows operating environment to complete the embedded soft PLC programming system design.In the soft PLC ladder diagram element data structure in the process of research, based on the object-oriented design idea,put forward the ladder diagram element collection storage and interaction of basic solution.System structure based on vc++Document/View,use of soft PLC programming design system soft?ware function to edit,compile,and simulation and so on many applications of add,through the application of comput?er algorithms,function application performance.Combining the ladder diagram editor and compile scanning princi?ple,the embedded soft PLC programming system solutions.The scheme has the characteristics of low cost and high efficiency,for software developers to provide a new train of thought.
soft PLC;ladder diagram;compile;the simulation
TP273
A
1003-5168(2016)10-0077-03
2016-9-30
馬建峰(1970-),男,碩士,講師,研究方向:自動(dòng)化。