?

基于LPC2294處理器的嵌入式PLC的設計

2016-11-22 01:58張京一
電子設計工程 2016年15期
關鍵詞:嵌入式繼電器處理器

張京一

(西安鐵路職業技術學院 陜西 西安 710014)

基于LPC2294處理器的嵌入式PLC的設計

張京一

(西安鐵路職業技術學院 陜西 西安 710014)

伴隨著PLC功能的不斷完善和增強,基于PLC在現代工業控制中的應用越來越廣泛的實際情況,為了能夠更好的服務企業生產需求的目的。在當今工業技術不斷快速進步的時期,PLC要想能夠獲得更好發展,就必須適應不斷變化的客戶的各種生產方面的相關需求,只有這樣才可以適應社會經濟的發展。通過本文根據實際生產需要設計所設計的一款嵌入式PLC,得到了成本低、功能強大等相關方面的優點,使其在實際的生產加工中具有了重大的實際應用價值。

PLC;嵌入式;LPC2294;設計

PLC可編程邏輯控制器具有很強的實用性,在自動化領域具有十分重要的地位。如今,PLC在工業控制領域的應用逐漸擴大,得到了極大的發展,然而傳統的PLC則開始不能夠滿足工業控制的個性化、差異化追求,因此PLC也需要尋求改變。目前,嵌入式操作系統PLC的應用則能夠滿足多方面的追求。以ARM為代表的32位高性能微處理器和高集成度的芯片對嵌入式操作系統的發展起到了促進作用,進而使嵌入式PLC得到了較好的發展。本研究中基于ARM微處理器LPC2294進行了嵌入式PLC的設計。

1 嵌入式PLC的整體設計方案

嵌入式PLC是采用嵌入式實時操作系統與SoC嵌入式芯片上系統來實現的PLC功能,該PLC能夠支持IEC61131-3編程語言,筆者設計的這一款嵌入式PLC整體設計包括了硬件設計與軟件設計兩個方面,硬件設計方面主要包括了6個方面的內容,即CPU、硬件系統、開關輸入輸出接口電路、繼電器輸出電路、單穩態電路、模擬量輸入電路與串行通訊電路;在軟件設計方面主要進行了PLC運行系統軟件設計、用戶嵌入任務調度設計與存儲管理設計。其中,PLC運行系統主要對整個系統進行管理,并執行用戶編譯的程序;而用戶嵌入任務調度則直接面對用戶,提供編程平臺,并完成程序的轉換。

2 嵌入式PLC的硬件設計方案

2.1 CPU的選擇

PLC的核心為CPU,CPU能夠對用戶輸入的特定格式的指令進行識別,并根據指令規定與現場I/O信號發出控制指令,進而完成控制任務。筆者設計的基于LPC2294處理器的嵌入式PLC,其中LPC2294處理器為Philips生產,為32位的ARM微處理器,能夠實現對實時仿真、跟蹤CPU的支持,帶有16 kB的片內SRAM和256 kB的高速flash存儲器,并且功耗極低,含有112個通用型I/O接口、9個邊沿的外部中斷引腳,工作晶振最大為60 MHz,具有多個32位定時器,轉換時間僅為2.44 μs的8通道10位ADC,以及高級CAN接口4路、UART2路等。由于LPC2294處理器的硬件資源十分豐富、而且功能相對完善,因此非常適合工業控制、醫療系統、汽車等行業系統的應用。

2.2 硬件系統結構

本系統的CPU為LPC2294處理器(ARM芯片),其基本模式為10路繼電器輸出、14路PNP輸入,硬件結構整體包括了電源、復位模塊、微控制器ARM、開關量輸入及輸出、模擬量輸入及輸出、flash存儲器擴展、CAN接口通信、RS485接口通信等模塊。PLC硬件系統結構如圖1所示。

圖1 PLC硬件系統結構

2.3 開關輸入輸出接口電路

為了避免外部的干擾信號進入系統,一路開關量輸入部分的電路前端由R和C組成了一階濾波電路。輸入端的外接輸入控制開關信號經輸入點10.0限流電阻進入PC816光電耦合器輸入端,而10.0~10.7的公共輸入端為M。設計P0.23口為輸入模式,并且內部無上拉電阻,因此為了避免口線懸空還需要在外部接上拉電阻。當10.0輸入端為24 V(直流),PC816中光敏二極管導通,光敏晶體管輸出端變為低電平,而LED輸入狀態指示點亮,P0.23低電平;當10.0輸入端為0 V,則P0.23高電平。當CPU對兩種信號進行訪問時,輸入點對應輸入過程的映像寄存器值前者被設置為1,后者被設置為0。圖2為開關輸入輸出接口電路。

圖2 開關輸入輸出接口電路

2.4 繼電器輸出電路

在繼電器輸出模塊為了起到續流的作用,在繼電器兩端并聯二極管。繼電器輸出模塊的工作原理是當映像寄存器被設置為1時,光敏晶體導通,LPC2294處理器端口P1.16輸出0,繼電器線圈帶電接通輸出點;當映像寄存器被設置為0時,光敏晶體斷開,LPC2294處理器端口P1.16輸出1,繼電器線圈不帶電輸出點斷開。

2.5 單穩態電路

在設計中發現,LPC2294處理器GPIO初始上電時P1.16電壓存在不穩定現象,因此筆者設計了進行了單穩態電路的設計,從而保證繼電器的穩定輸出。該單穩態電路由以NE555定時器組成,其VCC5.0端與PC816集電極連接,在系統初始上電時,2、6管腳保持低電平,當輸出端3管腳為高電平,R、C電路開始充電,此時管腳2、6的電平隨著時間的延長逐漸升高,當2、6管腳電平=2/3 VCC時,3管腳變為低電平,進而導通三極管。系統在上電一段時間后I/O電平穩定,此時PC816得電并工作(圖3)。這種暫時穩定狀態的維持時間T與外接電容C和外接電阻R有關,其表達式為:

圖3 單穩態電路

.6 模擬量輸入電路

對現場傳感器輸出的電流信號經電阻R66后轉變為0~5 V的電壓信號進行采集,為了避免干擾信號的進入,并對微處理器電路進行保護,在電路轉換輸出端加裝了HCNR201線性光耦。圖4為模擬量輸入電路。

圖4 模擬量輸入電路

2.7 串行通訊電路

本設計中為了保證與工控產品兼容,所以設計了RS-485接口標準,并通過SP485E收發器來使TTL電平轉換為RS485電平。其中SP485E的數據傳輸速率為10 Mbps,能夠為接收器輸入與發送器輸出的腳管提供保護電路ESD。

3 軟件系統設計

3.1 PLC運行系統設計

PLC運行系統首先對應用程序的內存進行分配,然后將應用程序加載到已分配好的內存里,并執行該程序的指令。當該程序要求底層系統提供服務時,PLC運行程序需要對有關請求進行處理。為了避免干擾進入系統,PLC運行系統是基于嵌入式操作系統μC/OS-Ⅱ進行開發的,因此PLC運行系統的可靠性、開發效率都得到了提高,而開發周期則大大縮短。通過μC/OS-Ⅱ在LPC2294上的移植,能夠對與ARM處理器相關的代碼進行修改,并將其集中在3個各文件中,即OS_CPU.H文件、OS_CPU_C.C文件和OS_CPU_A.S文件。

OS_CPU.H文件內主要包括了與編譯器和處理器有關的數據類型、堆棧類型定義,還包括了中斷處理方式定義(宏定義)與堆棧增長方式的聲明。如:typedef unsigned char INT8U、typedef signed char INT8S;typedef float FP32;typedef unsigned int OS_STK等。而處理器的打開與關閉則通過函數OS_ENTER_CRITICAL()與OS_EXIT_CRITICAL.()來實現。

OS_CPU_C.C文件內主要包括了10個函數,本設計中涉及了任務棧結構的OSTaskStkInit()初始化函數,另外還有9個函數,如OSTaskCreateHook()、OSTaskDelHook()等在本設計中為空函數,不含任何代碼。

OS_CPU_A.S文件內包含了4個函數,即OSStartHighRdy()多任務啟動函數,OSCtxsw()任務切換函數,OSIntCtxsw()任務中斷切換函數和OSTickISRael()時鐘節拍服務函數。到這里μC/OS-Ⅱ在LPC2294上的移植就完成了,用戶以后的編程均是在此基礎上實現的拓展。

3.2 用戶嵌入任務調度設計

軟件開發系統主要目的讓用戶進行PLC程序的編寫,因此需要進行相應編程平臺的設計。圖5為本設計的PLC軟件系統。

圖5 PLC軟件系統

對該編程平臺的設計包括了編輯器、編程頁面、編譯器、轉換模塊以及通信模塊等設計。通過該編程平臺,用戶能夠進行PLC程序的編寫,如采用FX系列的PLC編程軟件作為編程平臺,可將梯形圖與指令表作為編程語言,然后通過轉換程序將編譯的程序轉換成C語言。該轉換程序屬于解釋系統,能夠對指令表進行逐條的翻譯,對與用戶無關的指令將進行生成和處理。通過這種編程平臺與程序編譯的轉換,使工作量獲得了大幅度的減少。

4 基于LPC2294處理器的嵌入式PLC的實現

在LPC2294處理器的嵌入式PLC平臺中植入本次設計的PLC軟件系統,并與PLC的輸入與輸出硬件接口板連接,在開發系統中對PLC梯形圖進行編寫,在編譯完成后加載到PLC運行系統。按下開關0后,相鄰LED0點亮,在延遲4 s后LED1點亮,按下開關1后,相鄰LED2點亮,同時LED0熄滅。這表明,該測試結果與理論分析相一致,本次設計的嵌入式PLC控制系統的硬件、軟件與μC/OS-Ⅱ在LPC2294上的移植達到了設計的預期效果。

5 結束語

本研究設計了一款基于LPC2294的嵌入式PLC,通過對該嵌入式PLC硬件系統與軟件系統的設計,使PLC的操作和通信、硬件與軟件等功能變得更加靈活,方便,而且這種設計更符合機電設備的不同需求,操作簡單,具有SoC芯片,支持IEC61131-3編程語言,在市場上也容易獲得,因此本次設計的嵌入式PLC具有一定的應用與推廣價值。

[1]石進水.基于LPC2294處理器的嵌入式PLC的設計[J].計算機測量與控制,2013(1):230-232.

[2]王曉光.嵌入式PLC的設計與研究 [D].成都:西華大學,2010.

[3]梁丁.基于嵌入式PLC的開發平臺體系研究[D].成都:電子科技大學,2007.

[4]欒朋.基于嵌入式ARM的PLC設計與實現[D].沈陽:沈陽理工大學,2013.

[5]嚴義,王偉,鄔惠峰 .面向嵌入式PLC領域的構件模型的研究與實現[J].計算機應用與軟件,2012,29(2):125-128.

[6]嚴義,胡峰令.面向嵌入式PLC的調度算法[J].計算機工程,2009,35(19):257-259.

[7]吳國中.基于ARM的嵌入式PLC的設計與開發[J].南京工業職業技術學院學報,2012,12(4):25-27.

【相關參考文獻鏈接】

羅茂元,胡春林.基于DM6446嵌入式虹膜識別系統的電源設計與實現[J].2014,22(7):150-153.

郭愷,陳祖爵,劉小強.圖像采集綜合評估的嵌入式指紋識別系統[J].2014,22(1):179-183.

楊亮.基于Cortex-A8嵌入式實驗平臺的設計與實現[J].2014,22(4):152-154.

王蘇婭.嵌入式橫流風扇翼型CFD分析方法[J].2014,22(6):158-161.

何鵬舉,吳來斌,宋凱華,等.基于粒子群算法的嵌入式云計算資源調度[J].2014,22(10):88-90.

盛平,杜洪超.基于Web Services的嵌入式農業物聯網測控系統[J].2014,22(11):107-110.

許文明.基于ARM-Linux嵌入式系統的多進程并發服務器設計[J].2014,22(13):1-3.

The design of embedded PLC based on LPC2294 microprocessor

ZHANG Jing-yi
(Xi’an Railway Vocational and Technical College,Xi’an 710014,China)

Along with the continuous improvement of the function of PLC and strengthen,based on PLC application is more and more widely in modern industrial control of the actual situation,in order to better serve the purpose of enterprise production demand.In today's industrial technology continuously rapid progress period,PLC to be able to get a better development,must adapt to changing customer requirements concerning the various production,only in this way can adapt to the development of social economy.In this article,according to the needs of practical production design to design an embedded PLC,got the advantages of low cost,powerful related aspects,such as,in the actual production and processing of the significant value of practical application.

PLC;Embedded;LPC2294;design

TN99

A

1674-6236(2016)15-0178-03

2015-08-04 稿件編號:201508016

張京一(1984—),女,山西絳縣人,講師。研究方向:自動化。

猜你喜歡
嵌入式繼電器處理器
Focal&Naim同框發布1000系列嵌入式揚聲器及全新Uniti Atmos流媒體一體機
繼電器控制及診斷在電動汽車動力電池包的應用
便攜式繼電器測試臺的研制和應用
計算機聯鎖復示繼電器電路改進方案探討
TS系列紅外傳感器在嵌入式控制系統中的應用
搭建基于Qt的嵌入式開發平臺
ADI推出新一代SigmaDSP處理器
泓格科技繼電器輸出模塊-87061PW
倍福 CX8091嵌入式控制器
火線熱訊
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合