中文字幕视频在线免费_日韩在线精品_日韩视频免费看_中文字幕在线三区_午夜免费视频_日韩在线大片

嵌入式數控系統中的軟PLC的應用與實現

來源:網絡

點擊:1783

A+ A-

所屬頻道:新聞中心

關鍵詞:嵌入式 數控系統 軟PLC

     1 引言

      本文所論述是數控系統大課題中人機交互的外圍部分子課題中軟PLC的開發應用。在數控系統中,PLC在處理開關量輔助控制問題時起著重要作用。在以前,需要根據數控系統的控制要求分析PLC與機床、主控機之間的信息交互種類和數量,來選用相應的外部硬件PLC.采用這種方法設計,產品一旦定型就很難更改.工控領域的研究人員一直在尋求解決這些問題的途徑。近年來,隨著計算機技術的迅猛發展以及PLC方面的國際性標準IECll31的制定,一項打破傳統PLC局限性的新興技術發展起來,這就是軟PLC技術。基于Pc平臺的軟PLC在數控系統中正逐漸取代硬件PLC,成為該領域輔助功能控制的新方法。軟PLC提供了與硬PLC同樣的功能,而同時具備了Pc環境的各種優點。

      本文就嵌入式數控系統開發課題中人機交互部分所應用到的軟PLC技術進行論述,對在Linux環境下基于MatPLC開發工具的軟PLC具體實現過程,以及在實現過程中的注意事項上做了詳細介紹。

    2 軟PLC技術簡介

      硬PLC由于技術標準對外封閉,各廠商的硬PLC的軟硬件平臺各不相同。而軟PLC的技術標準對外開放,其硬件平臺一般是工業控制計算機或通用計算機或嵌入式控制器撳件平臺是商業性的操作系統。雖然兩者的軟硬件平臺不同,但實現PLC功能的軟件結構相同,都可分為PLC開發系統和PLC運行系統兩部分。PLC開發系統用于開發各種適用于工業控制的PLC程序。PLC運行系統通過運行PLC程序,與I/O板卡或現場總線或直接與I/O信號等配合完成邏輯控制,其控制方案根據PLC硬件平臺的不同,可分為以下三種:fl謹于IPC或PC的控制方案。在這種控制方案中,PLC開發系統和PLC運行系統都是在同一臺計算機上運行的。(2)基于嵌入式控制器的控制方案。在這種控制方案中,PLC開發系統獨立于嵌入式控制器,而PLC運行系統被固化在嵌入式控制器中。(3)基于傳統PLC的控制方案。在這種控制方案中,PLC開發系統一般在普通PC上運行,而PLC運行系統在傳統PLC硬件上運行。從以上3個方案可以看出,軟PLC和硬PLC的最大區別在于它們所采用的軟硬件平臺不同。

    3 MatPLC開發軟件介紹

      MatPLC是Linux下的軟PLC開發軟件,它是開放源代碼的,很容易對它進行內核定制,并嵌入到自己的程序中。MatPLC采用的是模塊化設計方法,其內棱主要包含以下幾個部分:YO模塊、邏輯模塊和用戶界面模塊等。MatPLC的工作原理與硬件PLC類似,只是設計內核控制由軟件實現。其結構如圖1所示。

    圖1 MatPLC及其模塊結構

      每個模塊都是一個進程。PLC全局變量是MatPLC 中的用戶程序里所有模塊的公共數據.由配囂文件設定,受MatPLC內核控制,位于MatPLC的內核中,各個模塊的私有數據不包含在內。全局變量在每個模塊里都有副本,各個模塊通過副本的數據對本模塊進行運算,當循環一次運算后,就更新到全局變量中,這樣就實現了各個模塊之間的通信。每個模塊對全局變量的讀寫權限是不一樣的,只有對全局變量具有寫權限的模塊才可以更新全局變量里的相應變量。

      MatPLC中可以用梯形圖或指令表來進行PLC邏輯設計。梯形圖輸入方式是建立在GTK基礎上的,指令表是MAT IL語言。對于用梯形圖或指令表設計的PLC邏輯,其執行順序與硬件PLC完全一致。MatPLC對IL語言設計的程序的處理過程是:先調用f12c perlscript將其編譯成c代碼,然后再與其它c代碼一起編譯。因此在一般的設計中,很少去采用梯形圖或指令表來進行PLC邏輯設計,而直接用C語言來進行設計。本文不涉及MatPLC軟件內核的討論,只是用MatPLC來實現通過PCI接口卡對外圍IO進行數據讀寫。

    4 軟PLC的實現

      4.1 總體設計思路

      用MatPLC進行開發.核心的文件是MatPLC.conf文件,它決定了哪個模塊將被運行、輸入模塊需要的參數、配置MatPLC內核、配置全局變量等。在本沒計應用中,設計了兩個模塊:一個是輸入模塊,另一個是輸出模塊。各模塊構成和數據流如圖2所示。輸入模塊通過驅動程序從PCI接口卡中讀取數據,然后更新到全局變量中;輸出模塊從全局變量讀取數據,更新到自己的全局變量副本中,并用此數據進行邏輯運算,再將運算結果輸出到PCI接口卡,從而實現了用MatPLC來讀寫外圍IO。

     

                

    圖2模塊構成和數據流

    4.2 輸入、輸出模塊設計

      編程語言可以是c、python或tcl.考慮到MatPLC本身是由C語言寫的,為了與該軟件更好地兼容,本用c語言編程。輸入、輸出模塊的程序流程圖如圖3所示。其中,打開設備文件、從設備中讀取數據、寫數據到設備由PCI接口卡設備驅動程序實現。以下給出了輸出模塊的程序實現代碼,輸入模塊程序實現與輸出模塊類似。

    圖3輸入、輸出模塊流程圖

      4.3 配置文件設計

      配置文件就是MatPLC.conf文件.它控制著在輸入模塊與輸出模塊之間的數據如何共享。在MatPLC開發中處于核心地位。MatPLC.conf一般分成幾個段,常用到的段包括:(1)PLC段:用來配置內核和各個模塊的相關參數。(2)公共配置:設置一些各個模塊共同的屬性。(3)同步配置:配置各個模塊之間的同步性。由于各個模塊默認是異步運行的,為了保證數據的正確傳輸,必須讓這些模塊的運行同步起來,以產生全局掃描周期。這在設計中顯得及其重要。(4)實時特性配置:配置整個MatPLC的實時性。MatPLC的模塊可以運行在三種模式:正常模式、軟實時模式和硬實時模式。正常模式是默認模式.它不保證響應的時間問題;軟實時模式可以保證MatPLC模塊優先于其它程序,但沒有超過操作系統級,所以也不能完全保證響應的時間問題:硬實時模式可以保證響應的時間問題,但需要特殊的操作系統內核模塊支持,并且編碼時需要考慮到實時性問題。需要指H{的是,硬實時模式并不一定是響應最快的。有些模塊由于其實現的功能的原因,是不能運行在硬實時模式的;比如,一個向文件寫數據的模塊就不能運行在硬實時模式。(5)[kbd]段:說明與鍵盤有關的操作。有些設計需要從鍵盤輸入控制信息,就需要實現鍵盤段。

      對于每一個具體的設計來說,并不一定要全部實現以上五個段,也可以據需要加些其它段,比如掃描周期段等。還有一個需要注意的問題是實時性與同步的問題,MatPLC不允許將一個優先級低的模塊同步到優先級別高的模塊;可以將兩個優先級相同的模塊同步,或者將優先級高的模塊同步到優先級低的模塊。

      本設計中,主要實現的配置有:輸入模塊與輸出模塊的同步,全局變量的設定。

      4.4 編譯與測試

      將三個文件編碼好后,需要進行編譯,用于編譯時要鏈接到MatPLC提供的文件,值得注意的是,不能用gcc直接編譯,而要用Makefile來編譯。產生Makefile文件有兩種方法.:一種是采用MatPLC軟件自帶的例子中Makefile文件,在此基礎上進行修改;另外一種方法是采用autoscan }aclocal }li6toolize }autoconf}automake等工具來產生,其中還要自己編寫一些中間文件。編譯通過后進行測試,任意修改輸人,觀察輸出是否與設計的邏輯相符。本設計采用修改Makefile示例的方法來產生Make}le文件,并制作了一個demo實現整個設計的運行口

    5 結束語

      在數控系統中要用到PLC,通過計算機用軟件的方式來實現PLC成為了新的發展熱點。這項技術把自動化專業知識,以高附加值的方式,在PC行業規模經濟的基礎上加以發展提升的新型技術。目前,世界各國都在進行軟PLC的研究,我國有關部門也正在著手研究開發具有自主版權的中文軟PLC產品。本設計在Linux下基于MatPLC軟件實現了軟PLC來代替硬件PLC,實現了軟PLC通過PCI接口卡對外圍ID進行數據讀寫,簡化了系統結構,降低了產品成本,并且運行實踐表明,所設計的軟PLC在嵌人式數控系統中應用穩定,效果良好。

      本文作者的創新點:在數控系統中,PLC在處理開關量輔助控制問題時起著重要作用。近年來,基于PC平臺的軟PLC在數控系統中正逐漸取代硬件PLC,成為該領域輔助功能控制的新方法。作者在嵌人式數控系統開發課題中,對軟PLC技術進行了實踐應用,本文就Linux環境下基于MatPLC開發工具的軟PLC具體實現過程,以及在實現過程中的注意事項上做了詳細介紹。實現了軟PLC通過PCI接口卡對外圍IO進行數據讀寫,簡化了系統結構,降低了產品成本,并且運行實踐表明,所設計的軟PLC在嵌人式數控系統中應用穩定,效果良好。

     

     

    (審核編輯: 智匯李)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。

    主站蜘蛛池模板: 91毛片网 | 免费视频一区 | 婷婷综合| 亚洲欧美激情视频 | 91av视频免费在线观看 | 夜夜爽99久久国产综合精品女不卡 | 激情一级片 | 日韩精品一二三区 | 日韩成人免费中文字幕 | 成人在线免费观看视频 | 成人在线免费看 | 国产黄色电影 | 免费成人激情视频 | 日韩电影免费观看 | 日韩在线视频一区 | 成人免费观看在线视频 | 91一区二区三区 | 国产精品久久久久久中文字 | 日韩一区二区三区在线观看 | 荷兰欧美一级毛片 | 99精品一区二区 | 亚洲一区二区三区四区五区午夜 | 亚洲人人看 | 免费一区 | 日韩城人网站 | 久久久久国产精品免费 | 亚洲一区二区三区在线免费观看 | 精品日韩一区 | 免费观看一级毛片 | 成人综合免费视频 | 农村末发育av片四区五区 | 天堂中文网 | 成人精品国产 | 高清一区二区在线观看 | 国产亚洲精品久久久久动 | 成人福利免费在线观看 | 欧美日韩激情 | 91影院在线观看 | 免费国产一区 | 日日干夜夜操 | 精品国产精品 |