TwinCAT3 通過PLC程序簡易實現(xiàn)配方管理_第1頁
TwinCAT3 通過PLC程序簡易實現(xiàn)配方管理_第2頁
TwinCAT3 通過PLC程序簡易實現(xiàn)配方管理_第3頁
TwinCAT3 通過PLC程序簡易實現(xiàn)配方管理_第4頁
TwinCAT3 通過PLC程序簡易實現(xiàn)配方管理_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第頁TwinCAT3通過PLC程序簡易實現(xiàn)配方管理TwinCAT3通過PLC程序簡易實現(xiàn)配方管理作者:余洋職務(wù):技術(shù)支持工程師公司:BECKHOFF中國郵箱:yang.yu@日期:2024-9-14摘要:在TwinCAT3當中,有很多實現(xiàn)配方的方式。比如利用UPS掉電保持功能實現(xiàn)配方;DataBaseServer;XMLServer;TwinCATHMIRecipetManageMent等等。那對于一些簡易的自定義配方參數(shù),似乎沒有成熟的功能塊直接進行配方管理。在倍福虛擬學院中Tc3文件管理功能塊的使用方法當中,有一些功能塊可以配合實現(xiàn)需求(TwinCAT3使用入門:小技巧|倍福虛擬學院())。該文檔以廣州的資深工程師何元勝提供的庫文件HEPlcMcFileHandling為基礎(chǔ)(TwinCAT3使用入門:PLCFileHandling|倍福虛擬學院()),進行二次開發(fā),幫助讀者和各位使用者通過一個功能塊即可實現(xiàn)簡易的配方管理。(注:如章節(jié)2閱讀起來比較困難,可以忽略。直接從第3章使用方法看起)附件:序號文件名備注1.TwinCATRecipetHandling應(yīng)用例程2.RecipetHandling庫文件歷史版本:2021-11-9何元勝PLCFileHandling免責聲明:我們已對本文檔描述的內(nèi)容做測試。但是差錯在所難免,無法保證絕對正確并完全滿足您的使用需求。本文檔的內(nèi)容可能隨時更新,如有改動,恕不事先通知,也歡迎您提出改進建議。目錄1. 軟硬件版本 31.1. 控制硬件 31.2. 控制軟件 32. 庫文件架構(gòu)介紹 42.1. I_RecipetHandling、RecipetHandlingV1、RecipetHandlingV2 42.2. I_Recipet、BaseData 62.3. 全局可編輯參數(shù)Param 73. 使用方法 84. 運行效果 105. 注意事項 11

軟硬件版本控制硬件測試電腦(Windows11專業(yè)版)控制軟件TwinCAT3(文檔測試版本為v3.1.4024.59)、庫文件RecipetHandling(庫文件版本為V)。庫文件免責聲明:使用此版本的庫是免費的??蛻粲胸熑螜z查并決定該庫和提供的功能是否適用于他的特定應(yīng)用。該庫按原樣提供,既不是TwinCAT3的一部分,也不是Beckhoff

Automation直接支持的。使用該庫是客戶自己的風險。不保證該庫和與該庫一起提供的源代碼是完整或準確的。在任何情況下,作者或Beckhoff

Automation對由于使用該庫而引起的錯誤和/或遺漏不負任何索賠、損害或其他責任。不能指望對該庫的維護、支持、增強或修改,以及對該庫或TwinCAT3的更新或與庫的更新兼容性的期望權(quán)。如有反饋或問題,請聯(lián)系yang.yu@。倍福中國或庫文件作者未經(jīng)明確授權(quán),禁止復(fù)制、分發(fā)和利用此庫或其部分,以及向他人傳達其內(nèi)容,對其進行未經(jīng)授權(quán)的傳播將受到追究賠償責任。在授予專利、實用新型或設(shè)計的情況下,保留所有權(quán)利。

庫文件架構(gòu)介紹該庫文件的目的是為了實現(xiàn)任意自定義數(shù)據(jù)類型的配方存取。根據(jù)TwinCAT軟件的迭代。庫文件當中提供了兩種任數(shù)據(jù)類型配方管理的功能塊。RecipetHandlingV1和RecipetHandlingV2。底層原理該文檔就不贅述了,詳情見:(TwinCAT3使用入門:PLCFileHandling|倍福虛擬學院()I_RecipetHandling、RecipetHandlingV1、RecipetHandlingV2在庫文件當中,RecipetHandlingV1和RecipetHandlingV2都實現(xiàn)了一個接口I_RecipetHandling。這是因為兩者的功能都是相同的,即實現(xiàn)任意自定義數(shù)據(jù)類型的存取。同時,使用的方法和屬性也都一致,僅僅只是擁有不同的重載。所以完全可以利用接口的多態(tài)性進行設(shè)計:即一個接口管理兩個實現(xiàn)功能塊。接口的屬性P_bLoad是上載配方數(shù)據(jù)。P_bSave則是保存配方數(shù)據(jù)。Cyclic是必須要調(diào)用的方法,需要根據(jù)Task周期循環(huán)調(diào)用。

RecipetHandlingV1和V2的架構(gòu)都是相同的。Load和Save是在Cyclic方法當中根據(jù)屬性以及其他功能塊內(nèi)部變量進行配合調(diào)用的內(nèi)部方法,方法修飾符為Peotected。而FB_init則是功能塊對象的初始化方法。V1和V2功能塊的初始化方法擁有不同的重載:對于V1的初始化方法而言。輸入需要提供一個任意類型的指針PVOID,以及數(shù)據(jù)的大小DataSize。對于V2的初始化方法而言。輸入需要提供一個I_Recipet接口類型的對象。具體方法在后文進行講解。

I_Recipet、BaseData為了實現(xiàn)任意數(shù)據(jù)類型的配方管理,且同時避免在外部再次引用指針,V2功能塊利用了面向?qū)ο缶幊痰膬?yōu)勢,將初始化方法的輸入數(shù)據(jù)類型設(shè)定為接口I_Recipet,BaseData為實現(xiàn)該接口的基類對象。后續(xù)用戶的自定義數(shù)據(jù)類型只要通過拓展BaseData就可以了,非常方便。而BaseData早已通過內(nèi)部的代碼自動實現(xiàn)了I_Recipet數(shù)據(jù)接口:

全局可編輯參數(shù)Param為了能夠讓用戶自定義數(shù)據(jù)保存的路徑,庫文件的Param區(qū)域擁有對應(yīng)的變量參數(shù)進行編輯調(diào)整:庫文件支持CE系統(tǒng)和非CE系統(tǒng)的控制器。bPfwRunOn_WinCE是用來切換系統(tǒng)的。而cnst_pfwParamFlePath_XP以及cnst_pfwParamFlePath_CE對應(yīng)的分別是兩種系統(tǒng)的根目錄。cnst_PfwSubDir_Product可以用來編輯子目錄。對于該例程而言。由于沒有子目錄。測試環(huán)境是win11系統(tǒng)。所以配方文件會保存至C盤根目錄下。

使用方法使用方法可以參考例程TwinCATRecipetHandling。對于V1功能塊而言,因為不涉及到多態(tài)和繼承的原理。所以對于保存的對象是徹底沒有限制:分別聲明完數(shù)據(jù)類型存取的功能塊和配方管理功能塊之后,在配方管理功能塊類型的后面加上(),其中再分別用ADR()指向數(shù)據(jù)和Sizeof指向數(shù)據(jù),即可完成初始化。默認啟動會讀取一次。隨后可用bSave和bLoad存取數(shù)據(jù)。

對于V2而言,存取的對象必須繼承庫文件當中的BaseData,且還需要顯示添加屬性DataSize: 除了初始化方法之外,其他使用方法與V1一致。V2的初始化方法中,在聲明區(qū)域功能塊類型的最后加上(),中間填入繼承完BaseData之后的功能塊即可。

運行效果以Ex功能塊為例,我們在DataStandard數(shù)據(jù)當中填入一些值,然后將bSave置為TRUE:在C盤根目錄下即可看到二進制文件: 重新激活硬件配置,功能塊會自動上載Data文件當中的參數(shù): 注意事項一個功能塊實例處理一組配方數(shù)據(jù),絕對不可以讓相同的功能塊實例處理一個文件,否則會導(dǎo)致內(nèi)存溢出,程序崩潰。如:將功能塊1存完一組數(shù)據(jù)之后,再讓功能塊1處理另外一組數(shù)據(jù),數(shù)據(jù)的文件路徑與前一組數(shù)據(jù)一致。由于上電會自動讀取。會出現(xiàn)上電即出現(xiàn)PageFault的關(guān)鍵性錯誤。大量的數(shù)據(jù)不建議使用該庫文件。因為大量文件的讀寫會導(dǎo)致PLC工藝所在在Task進程堵塞??梢允褂肈ataBaseServer或者XMLServer。

上海(中國區(qū)總部)中國上海市靜安區(qū)汶水路299弄9號(市北智匯園)電話 北京分公司北京市西城區(qū)新街口北大街3號新街高和大廈407室電話 郵箱:beijing@ 廣州分公司廣州市天河區(qū)珠江新城珠江東路32號利通廣場1303室電話1/2 郵箱:gua

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論