《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于K60的GCPLC系統(tǒng)的設(shè)計與實現(xiàn)
基于K60的GCPLC系統(tǒng)的設(shè)計與實現(xiàn)
2017年電子技術(shù)應(yīng)用第2期
司蕭俊,王宜懷,白 聰
蘇州大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,江蘇 蘇州215000
摘要: 提出研制圖形構(gòu)件化可編程邏輯控制器(GCPLC)的方案,它是傳統(tǒng)可編程邏輯控制器(PLC)的革新與新模式。與傳統(tǒng)PLC相比,GCPLC具有圖形拖動編程、開放的二次編程架構(gòu)、構(gòu)件組合、開發(fā)環(huán)境兼容、構(gòu)件定制擴充、RTOS架構(gòu)融入等特點。其目標(biāo)是使GCPLC相對于傳統(tǒng)PLC,在技術(shù)架構(gòu)、技術(shù)方法、設(shè)計思想及實現(xiàn)方式等方面能夠有新突破,在應(yīng)用方面能夠逐步取代傳統(tǒng)PLC。
中圖分類號: TP391
文獻標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2017.02.010
中文引用格式: 司蕭俊,王宜懷,白聰. 基于K60的GCPLC系統(tǒng)的設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2017,43(2):47-50.
英文引用格式: Si Xiaojun,Wang Yihuai,Bai Cong. Design and implementation of GCPLC based on K60[J].Application of Electronic Technique,2017,43(2):47-50.
Design and implementation of GCPLC based on K60
Si Xiaojun,Wang Yihuai,Bai Cong
multitask;GCPLC;graphic component;RTOS
Abstract: This topic proposes the scheme of developing Graphic Component Programmable Logic Controller(GCPLC),which is the innovation and new mode of traditional Programmable Logic Controller(PLC). The GCPLC has many characteristics, for instance, graphical drag programming, open twice programming architecture, component combination, development environment compatible, component extendible and the integration of RTOS. In addition, aimed at obtain breakthrough in technology architecture and method alone with the design ideas, the GCPLC has advantages of less difficulties in terminal-user programming, excellent division in technology and expansion in user-control. The GCPLC will replace traditional PLC in application.
Key words : multitask;GCPLC;graphic component;RTOS

0 引言

    傳統(tǒng)可編程邏輯控制器(Programmable Logic Controller,PLC)從提出至今已經(jīng)發(fā)展四十多年,形成了全世界每年300億美元以上的巨大市場,涉及自動控制、機械、裝備、醫(yī)療電子等諸多應(yīng)用領(lǐng)域,為一線基層技術(shù)人員利用嵌入式計算機生產(chǎn)實踐提供了基礎(chǔ)技術(shù)平臺。但也存在CPU選擇受限、硬件耦合性差、變量設(shè)置簡單、梯形圖編程功能深度不夠、二次編程困難、構(gòu)件組合靈活性差、開發(fā)環(huán)境受限、新構(gòu)件融入難度大等問題。雖然經(jīng)過多年改進與發(fā)展,從不同角度改進了技術(shù),但由于技術(shù)架構(gòu)未變,本質(zhì)問題無法根本解決。

    本文基于多任務(wù)操作系統(tǒng)MQX、嵌入式ARM處理器、CAN總線等技術(shù),設(shè)計了一套包含圖形構(gòu)件化編程軟件及基于恩智浦K60微處理器的圖形構(gòu)件化可編程邏輯控制器(Graphic Component Programmable Logic Controller,GCPLC)硬件的完整系統(tǒng),并對整個系統(tǒng)進行簡要介紹,重點闡述了圖形構(gòu)件化的軟件開發(fā)環(huán)境。

1 GCPLC的體系總體設(shè)計與工作原理

    GCPLC的系統(tǒng)結(jié)構(gòu)框圖如圖1所示。

qrs1-t1.gif

    圖1中的上半部分是GCPLC的軟件開發(fā)環(huán)境部分,主要完成圖形化編程、C語言文件的生成、程序編譯等功能,并且負責(zé)向硬件部分燒寫程序以及實現(xiàn)實時監(jiān)控。下半部分的GCPLC硬件部分為整個系統(tǒng)的核心,負責(zé)執(zhí)行程序。硬件部分帶有多路普通/高速的GPIO接口、高速PWM以及差分輸入輸出接口、CAN總線接口、485信號接口和232接口,可以實現(xiàn)普通PLC具備的功能。

    GCPLC系統(tǒng)將開發(fā)環(huán)節(jié)和運行環(huán)節(jié)分開操作。在開發(fā)階段,使用圖形構(gòu)件化編程軟件編寫程序,并同時將嵌入式實時操作系統(tǒng)MQX融入其中;在執(zhí)行階段,硬件部分執(zhí)行程序,有序?qū)Ω鱾€任務(wù)進行調(diào)度,并且通過串口與PC通信,從而將硬件部分的信息傳遞給軟件部分,以實現(xiàn)實時監(jiān)控。

2 GCPLC系統(tǒng)硬件設(shè)計

    GCPLC硬件的主要應(yīng)用目標(biāo)是工業(yè)控制,而可靠性和抗干擾能力是衡量工業(yè)控制中電氣設(shè)備性能的關(guān)鍵指標(biāo),因此在設(shè)計內(nèi)部電路時,采用了抗干擾技術(shù),其中包括光耦隔離電路、場效應(yīng)管隔離電路等。選用的硬件是具有極高隔離性能的元件,其中包括高速光耦6N137、場效應(yīng)管LR120N等。下面著重介紹高速GPIO輸入電路和高速PWM差分輸出電路。

2.1 高速GPIO輸入電路

    為了能夠滿足工業(yè)控制中對GPIO輸入的實時性和高效率需求,為GPPLC硬件設(shè)計了帶有電氣隔離特性的高速GPIO輸入電路,如圖2所示。

qrs1-t2.gif

    該電路使用6N137單通道高速光耦合器進行輸入輸出,并在輸出端對輸出進行濾波后輸出給K60核心板。該電路具有溫度、電流和電壓的補償功能,具有高輸入輸出隔離及抗干擾能力強的特性,電路典型的輸入速率為10 MB/s。

2.2 高速PWM差分輸出電路

    電機驅(qū)動是一種很常見的工業(yè)控制方式,機械臂的運作、機器人的行走都離不開電機驅(qū)動。為了提高PWM的輸出效率,設(shè)計了具有差分能力的高速PWM電路,如圖3所示。

qrs1-t3.gif

    圖3是PWM的輸出部分,在其他部分利用SGM4717雙擲模擬開關(guān)芯片,切換PWM的差分和普通輸出模式。在正常情況下,該PWM的輸出速率可達到100 KB/s以上,可以在工業(yè)控制中對電機進行穩(wěn)定的驅(qū)動和控制。

3 GCPLC圖形化開發(fā)環(huán)境設(shè)計

    在GCPLC系統(tǒng)中,PC可以為用戶提供一個良好的軟件開發(fā)調(diào)試環(huán)境,因此運行在計算機控制系統(tǒng)上的圖形化開發(fā)環(huán)境需要重點進行開發(fā)。GCPLC軟件開發(fā)環(huán)境是為了給GCPLC系統(tǒng)提供一個直觀、方便、可拖動、高效的程序開發(fā)平臺。該平臺主要支持圖形化的拖動、C語言的生成、程序編譯、程序?qū)懭搿崟r監(jiān)控等功能。

    該平臺采用PC作為基本編程工具,應(yīng)用Visual Studio 2012作為開發(fā)環(huán)境,編程語言舍棄了傳統(tǒng)PLC采用的梯形圖編程方式,選用了全新的圖標(biāo)拖動及連接的編程語言,使得程序的二次開發(fā)變得更加容易,程序結(jié)構(gòu)也變得更加清晰,并且添加了復(fù)制、剪切、刪除、粘貼、右鍵菜單等人性化的快捷操作。在燒寫程序之前,需要對程序進行編譯,由編譯器負責(zé)檢查用戶編寫的程序,并且將錯誤反饋給用戶。若編譯程序無誤,則可以將用戶程序?qū)懭隚CPLC硬件板。該開發(fā)平臺主要由以下模塊組成:

    (1)圖標(biāo)控件模塊。包含了編寫程序需要的所有控件,控件分為執(zhí)行控件、傳感器控件、通信控件、流程控件、任務(wù)控件5個大類。每個大類下又包含了若干個具體的子控件。

    (2)控件連接及屬性設(shè)置模塊。該模塊是進行控件拖拉和連線的模塊,也是整個開發(fā)環(huán)境的關(guān)鍵。在編寫程序時可以從上述的圖標(biāo)控件模塊中選擇自己需要的控件,選出控件后可以放置在此模塊上。每個控件的頂部和底部都有一塊三角形區(qū)域,當(dāng)選定了若干個控件后,將這些控件的三角形區(qū)域連線,則可以組成一段程序。

    (3)代碼更新顯示模塊。當(dāng)連接好控件連接模塊中的控件后,該模塊便會自動生成相應(yīng)的代碼。使用者只需要簡單的C語言基礎(chǔ),便可以更好地理解這整段程序?qū)崿F(xiàn)的功能。

3.1 圖標(biāo)控件模塊

    為了方便二次開發(fā),在設(shè)計開發(fā)平臺時決定放棄傳統(tǒng)PLC的使用的梯形圖編程方法,轉(zhuǎn)而設(shè)計了開發(fā)者門檻更低、更加容易理解的圖標(biāo)形式的控件,一段完整的程序要能夠穩(wěn)定、成功地運行,則需要C語言執(zhí)行所需要的基本流程,基于程序執(zhí)行的基本流程,將圖標(biāo)控件模塊劃分為之前所闡述的5個大類。

    執(zhí)行控件主要包括一些需要執(zhí)行的操作,例如開關(guān)中斷、設(shè)置延時、設(shè)置IO輸入/輸出等;傳感器控件包含GCPLC需要的傳感器,例如超聲波傳感器、AD傳感器等;通信控件包含與硬件核心板通信相關(guān)的控件,例如I2C、SPI、UART等;流程控件則是與程序執(zhí)行相關(guān),所以包含IF判斷、條件循環(huán)、計數(shù)循環(huán)之類的控件;任務(wù)控件則是為了程序的多任務(wù)協(xié)調(diào)執(zhí)行而設(shè)置的,所以每當(dāng)用戶添加一個任務(wù),任務(wù)控件中也會生成相應(yīng)的控件。

    為了使開發(fā)平臺自身更具有拓展性,設(shè)計了一套從Access數(shù)據(jù)庫讀取控件名稱和控件圖片等相關(guān)屬性的算法,當(dāng)需要增加某種控件時,只需要設(shè)置好該控件的相應(yīng)屬性,存入數(shù)據(jù)庫即可。而對于每一個用戶程序,其中的任務(wù)控件也是各有不同的,因此實現(xiàn)任務(wù)控件的動態(tài)存取也十分重要。而在設(shè)計控件時,為了實現(xiàn)程序的通用性,設(shè)計了圖標(biāo)控件Icon類,其關(guān)鍵代碼如下:

    public LinkIconType IconType;//控件的類型

    public string ModuleName;//控件名字

    public int IconArrNum;//控件在控件數(shù)組中的下標(biāo)

    public int IconDbNum;//控件在數(shù)據(jù)庫中的序號

    public PictureBox IconPicBox;//控件的圖片

    public PictureBox MoveToIconPicBox;//鼠標(biāo)移動到控件上時顯示的圖片

    public int IconLeftDotNum; //控件圖標(biāo)的左側(cè)的Dotsize個數(shù)

    public int IconTopDotNum; //控件圖標(biāo)的上側(cè)的Dotsize個數(shù)

3.2 控件連接及屬性設(shè)置模塊

    控件連接及屬性設(shè)置模塊是進行控件拖拉、連線、程序順序設(shè)計的模塊,也是整個開發(fā)平臺的核心所在,若干個控件通過不同的順序連接,將會生成截然不同的程序。

    在這個界面中,可以通過雙擊每個控件以編輯該控件的屬性。例如,當(dāng)點擊PWM初始化控件時,便會跳出“PWM初始化”屬性窗口,如圖4所示。

qrs1-t4.gif

    該窗口用于設(shè)置GCPLC硬件上的PWM波的輸出頻率,只需要在文本框中輸入想要的頻率,點擊確定后就可以成功配置PWM的輸出頻率。使用者在編程時可以很容易掌握。其他的控件也具各自的屬性窗口。

    當(dāng)從圖標(biāo)控件模塊拖出控件時,每個控件之間都是各自獨立的,即使設(shè)置好控件的屬性,這些控件仍然不具備實際功能,只有通過每個控件頂部和底部的三角形區(qū)域?qū)⑿枰目丶B接起來時,這些控件才會真正起作用,在開發(fā)環(huán)境中新建一個項目文件后會自動生成一個Main圖標(biāo)控件,這個控件是不可編輯的,表示為每個程序的開始。

    為了能適應(yīng)程序較小或者較大的情況,設(shè)計了可縮放的編程界面,當(dāng)需要編寫程序量較大的程序時,可以縮小界面以便于查看完整的程序結(jié)構(gòu)。另外,開發(fā)環(huán)境吸取了PLC編程中梯形圖多行編寫的優(yōu)點,設(shè)計了多行顯示的程序結(jié)構(gòu)。同時,當(dāng)控件圖標(biāo)過多超過當(dāng)前顯示頁面時,設(shè)計一套實時刷新的算法,提升了軟件執(zhí)行效率。

    當(dāng)GCPLC系統(tǒng)需要執(zhí)行多任務(wù)程序時,為了使得各個任務(wù)之間的劃分更加清晰,為主任務(wù)程序和每個子任務(wù)都開辟了單獨的窗口,用戶每添加一個任務(wù),都會在主任務(wù)窗體中生成一個子任務(wù)控件圖標(biāo),雙擊任務(wù)控件圖標(biāo)后可以編輯相應(yīng)的任務(wù)屬性,如任務(wù)名稱、任務(wù)棧大小、任務(wù)優(yōu)先級等。

3.3 代碼更新顯示模塊

    在控件連接及屬性設(shè)置模塊將各個圖標(biāo)按照自己預(yù)想的順序連線完成后,如果沒有任何可以參照修改的功能,很有可能使得最后燒寫的程序無法正常運行,而且僅僅是圖標(biāo)連接也會使得開發(fā)者感覺很疑惑。為了解決這些問題,設(shè)計了代碼顯示區(qū)域。該區(qū)域顯示的代碼與控件連接模塊的連線方式是一一對應(yīng)的,如圖5所示。

qrs1-t5.gif

4 GCPLC整體運行實驗

    在本次實驗中,對GCPLC系統(tǒng)進行了一次整體上電自檢實驗測試。首先在GCPLC軟件開發(fā)環(huán)境中編寫好上電自檢的程序,這個上電自檢程序?qū)⒋蜷_GCPLC硬件系統(tǒng)中的所有GPIO、PWM、差分輸入/輸出、CAN總線、485、232和數(shù)碼管功能,并且將模塊初始化信息通過串口反饋出來。上電后的串口反饋信息如圖6所示。

qrs1-t6.gif

5 結(jié)論

    GCPLC系統(tǒng)將嵌入式系統(tǒng)、軟件開發(fā)系統(tǒng)融合在一起,形成一個開放式的體系結(jié)構(gòu),相比傳統(tǒng)的PLC具有更高的靈活性和可擴展性,從而使得計算機控制系統(tǒng)不再受傳統(tǒng)PLC硬件的限制,提高了可靠性和可操作性。本系統(tǒng)具有良好的通信能力,能夠完成比較復(fù)雜的多任務(wù)控制功能,可以滿足和實現(xiàn)當(dāng)前和今后工業(yè)自動化領(lǐng)域控制系統(tǒng)開放性和柔性的要求,為工業(yè)自動化向更高層次的集成提供了可靠的計數(shù)保障,具有廣闊的應(yīng)用前景。

參考文獻

[1] 嚴奎.嵌入式PLC編程軟件開發(fā)[J].工業(yè)控制計算機,2012,25(10):67-68,70.

[2] 張嵩,術(shù)守喜,丁廣乾.基于ARM的嵌入式PLC的設(shè)計[J].自動化與儀器儀表,2008(3):9-10,23.

[3] 廖常初.PLC編程及應(yīng)用(第4版)[M].北京:機械工業(yè)出版社,2014.

[4] TROELSEN A.C#與.NET 4高級程序設(shè)計[M].北京:人民郵電出版社,2011.

[5] 王宜懷.嵌入式系統(tǒng)原理與實踐:ARM Cortex-M4 Kinetis微控制器[M].北京:電子工業(yè)出版社,2012.

[6] 吳玉香,周東霞,林錦赟.嵌入式軟PLC系統(tǒng)的研究和實現(xiàn)[J].計算機工程,2009(10).

[7] 謝春杰.嵌入式軟PLC的研究與設(shè)計[D].南京:南京理工大學(xué),2014.

[8] 郭建勛.嵌入式軟PLC開發(fā)系統(tǒng)的設(shè)計[D].廣州:華南理工大學(xué),2010.

[9] PRATUMSUWAN P,PONGAEN W.An embedded PLC development for teaching in mechatronics education[J].Industrial Electronics & Applications,IEEE,2011(6):1477-1481.

[10] 艾春麗,劉榮鵬,張鳳登.基于軟PLC的多任務(wù)并行控制系統(tǒng)的實時性研究[J].計算機應(yīng)用,2007,27(12):272-274.



作者信息:

司蕭俊,王宜懷,白  聰

(蘇州大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,江蘇 蘇州215000)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
美女视频一区免费观看| 国产精品久久久久秋霞鲁丝| 亚洲视频免费| 亚洲精品在线视频观看| 久久精品日产第一区二区| 午夜精品视频在线观看| 一区二区三区视频在线| 亚洲美女在线看| 最近中文字幕日韩精品| 精品av久久久久电影| 国产一区二区三区久久久| 国产欧美一区二区三区在线老狼 | 一本色道久久88精品综合| 激情成人亚洲| 国内成+人亚洲+欧美+综合在线| 国产婷婷精品| 国产日产亚洲精品| 国产视频在线观看一区| 国产午夜亚洲精品理论片色戒| 国产视频久久久久久久| 国模叶桐国产精品一区| 一区二区三区自拍| 亚洲国产成人tv| 亚洲人成人一区二区三区| 亚洲精品国产精品国自产观看 | 在线播放精品| 亚洲国产第一页| 亚洲精品久久久久久久久久久久久| 最新日韩在线视频| 一本久久a久久免费精品不卡| 一级日韩一区在线观看| 亚洲男女自偷自拍| 性欧美18~19sex高清播放| 久久黄色网页| 亚洲每日在线| 亚洲天堂av高清| 欧美一区二区三区四区在线观看地址 | 亚洲午夜国产成人av电影男同| 亚洲在线日韩| 欧美在线精品一区| 老巨人导航500精品| 欧美精品 日韩| 国产精品老牛| 红桃视频亚洲| 亚洲另类一区二区| 亚洲欧美日韩国产中文| 久久国产加勒比精品无码| 日韩写真在线| 午夜亚洲影视| 免费一区二区三区| 欧美午夜精品电影| 国内精品伊人久久久久av一坑| 亚洲国产色一区| 亚洲伊人观看| 亚洲精品激情| 午夜激情亚洲| 免播放器亚洲一区| 国产精品高潮呻吟久久| 韩国成人理伦片免费播放| 亚洲理伦在线| 欧美在线视频不卡| 99精品国产在热久久| 久久riav二区三区| 欧美另类99xxxxx| 国产一区二区黄色| 亚洲麻豆国产自偷在线| 久久se精品一区精品二区| 在线亚洲一区观看| 久久裸体艺术| 欧美视频中文字幕在线| 在线观看欧美日韩| 亚洲欧美另类国产| 99国产成+人+综合+亚洲欧美| 欧美尤物一区| 欧美日韩一区二区三区四区五区| 国语自产精品视频在线看| 这里是久久伊人| 最新国产成人av网站网址麻豆| 亚洲欧美国内爽妇网| 欧美风情在线观看| 国产日韩欧美一区二区三区在线观看 | 亚洲人成网站色ww在线| 久久av一区| 国产精品激情| 亚洲午夜一级| 久久综合网络一区二区| 国产精品v欧美精品v日本精品动漫 | 国产精品久久久久久久久久久久久| 极品av少妇一区二区| 亚洲在线免费观看| av成人动漫| 免费不卡在线视频| 国产一区二区三区在线观看视频 | 国产精品男人爽免费视频1| 亚洲精品免费在线播放| 亚洲成人自拍视频| 欧美专区福利在线| 国产精品视频99| 夜夜嗨av一区二区三区中文字幕| 最新亚洲激情| 久久久久久久一区| 国产欧美91| 亚洲女同精品视频| 亚洲一区二区三区久久| 欧美日韩国产综合视频在线| 亚洲丰满在线| 亚洲国产婷婷香蕉久久久久久99 | 麻豆精品网站| 国产主播精品在线| 亚洲欧美视频在线观看视频| 亚洲免费在线视频一区 二区| 欧美日韩国产成人在线| 亚洲国产网站| 亚洲三级免费观看| 毛片av中文字幕一区二区| 好吊色欧美一区二区三区四区 | 国产精品一卡二卡| 亚洲一区www| 亚洲综合首页| 国产精品久久久久婷婷| 亚洲调教视频在线观看| 亚洲男人的天堂在线aⅴ视频| 欧美日韩在线播| 在线视频一区二区| 午夜国产不卡在线观看视频| 国产精品日韩高清| 亚洲欧美综合一区| 久久精品日产第一区二区| 国产一区二区三区久久久| 久久成人精品视频| 免费观看30秒视频久久| 亚洲福利视频网站| 日韩小视频在线观看| 欧美日韩亚洲天堂| 亚洲香蕉在线观看| 久久福利电影| 红桃视频成人| 亚洲乱码国产乱码精品精98午夜 | 性欧美18~19sex高清播放| 午夜久久久久久久久久一区二区| 国产精品久久久久久一区二区三区 | 久久激情婷婷| 国内精品久久久久久 | 欧美一级片一区| 国产欧美一区二区精品忘忧草 | 欧美日韩在线播放| 在线视频欧美日韩| 欧美一区二区三区啪啪| 国产夜色精品一区二区av| 亚洲二区在线视频| 欧美激情第六页| 一区二区三区免费看| 欧美一区二区在线| 1769国内精品视频在线播放| 日韩亚洲视频在线| 国产精品porn| 久久狠狠亚洲综合| 欧美精品日韩综合在线| 在线亚洲精品福利网址导航| 久久精品亚洲精品| 亚洲国产婷婷综合在线精品| 亚洲综合色自拍一区| 国外精品视频| 99视频+国产日韩欧美| 国产精品成人一区二区网站软件| 午夜精品久久久久久99热软件| 免费成人黄色| 中文在线资源观看网站视频免费不卡 | 国产资源精品在线观看| 亚洲精品中文字幕有码专区| 欧美性视频网站| 久久激情视频久久| 欧美日韩大片| 欧美亚洲一级片| 欧美日韩网址| 欧美专区18| 欧美日韩在线直播| 久久国产综合精品| 欧美日韩一级大片网址| 久久精品99国产精品日本 | 在线观看中文字幕不卡| 亚洲无线视频| 国内精品免费在线观看| 亚洲色图综合久久| 尤物精品国产第一福利三区| 亚洲欧美日韩国产中文 | 亚洲一区二区三区高清| 老司机精品视频一区二区三区| 亚洲最新视频在线播放| 久久精品视频免费观看| 99re6热只有精品免费观看| 久久久欧美一区二区| 亚洲私拍自拍| 欧美激情导航| 久久精品亚洲热| 国产精品一区二区a| 一区二区三区国产在线观看| 一色屋精品视频免费看| 性色av一区二区怡红| 亚洲精品中文字幕在线|