国产清洁工av剧情精品_欧洲日韩av网站_国产视频手机在线播放_亚洲精品国产va在线观看蜜芽_AV网页在线好看_久久精品国产亚洲精品2023_一级日韩一级欧美_亚洲欧美日韩中文天堂_最近中文字幕mv在线视频_男女啪啪高潮激烈免费版网站

您好,歡迎訪問泰安宏盛自動化科技有限公司!
20年專注工控自動化研發(fā)制造 系統(tǒng)設(shè)計\制作\安裝一條龍服務(wù)
全國咨詢熱線:18605386049
當(dāng)前位置: 首頁 > 技術(shù)資料 > 程序案例

如何實現(xiàn) S7-1200/S7-1500 程序的規(guī)范化?

作者:小編 時間:2023-12-06 20:14:25 點擊:

為滿足日益增長的標準化項目需求,西門子推出了適用于SIMATIC S7-1200/S7-1500的編程風(fēng)格指南(后文簡稱《指南》)。

下載鏈接:https://support.industry.siemens.com/cs/cn/zh/view/109478084

西門子發(fā)布《指南》的目的旨在幫助開發(fā)者能夠按照統(tǒng)一的編程風(fēng)格、思路、習(xí)慣去設(shè)計和開發(fā)程序。從而提高程序的可讀性,促進項目的標準化。《指南》也是順應(yīng)標準化的趨勢,為還沒有自己的開發(fā)規(guī)范,或者規(guī)范比較簡單的團隊指引了一個方向。并不是說《指南》中所有的規(guī)范都必須遵守,但是至少《指南》中列舉出的都是很有參考價值的,值得加以重視的內(nèi)容。

此外《指南》也是西門子標準化體系的一個重要組成部分。畢竟是和編寫代碼息息相關(guān),作為開發(fā)者也需要深入了解,做好標準化知識的儲備。

《指南》將提出的要求分為規(guī)則和建議兩類:

  • 規(guī)則:有一定約束力,一般都需要遵守,對于可復(fù)用編程是必不可少的,如有違背需要記錄在案。
  • 建議:要求比規(guī)則低一些,建議遵守。

通過這些規(guī)則與建議的執(zhí)行,能夠有效地將項目規(guī)范化,有助于統(tǒng)一您和您的團隊編程風(fēng)格,便于前期的項目管理以及后期的開發(fā)維護工作。

下面將簡單介紹《指南》中部分規(guī)則內(nèi)容,以便大家有個基本的了解。

2 記錄開發(fā)人員信息

通常,開發(fā)工程師會在網(wǎng)絡(luò)段或者SCL的語句前面增加相關(guān)段落的說明,這個肯定是必不可少的。但還有一個重要的注釋,需要工程師們注意。那就是每個塊的標題欄,開發(fā)過程中最重要信息必須記錄在這里。為什么這么說呢?

一般塊分成兩類,第一類是標準塊,也就是通用功能塊,都是用來直接調(diào)用的。第二類是用來關(guān)聯(lián)、調(diào)用各種標準塊的塊。

前者雖然是標準塊,但也難免有程序優(yōu)化、功能升級、增加報警等后期改動。那這種版本變更、人員信息的內(nèi)容一定要記錄清晰。還有功能介紹、調(diào)用環(huán)境、CPU要求等,也需要記錄,避免出現(xiàn)錯誤調(diào)用。

后者就是在調(diào)試過程中需要頻繁更改的塊,同樣也需要記錄修改原因、開發(fā)人員等信息。這樣有助于更好地溯源,以及為今后的開發(fā)提供參考。為此,《指南》中提供了相關(guān)的模板用于編輯和保存這些內(nèi)容。如圖1所示。

圖 1. SCL信息模板

當(dāng)然,和其他編程語言有所不同,因為SCL模板是寫在語句中,所以在塊進行專有技術(shù)保護時無法顯示。因此,可以把模板的內(nèi)容填寫到如圖2所示的“塊屬性>信息”中,這樣在不輸入密碼的情況下就可以看到塊的各種信息,如圖3所示。

圖2. 塊屬性信息填寫

圖3. SCL加密塊屬性查看

3 使用庫進行版本控制

前面說到標準塊,在后期可能會有程序優(yōu)化、功能升級、增加報警等改動,也就是版本升級。如果只是單純的修改程序替換程序,還不能起到版本管理,版本控制的功能。如需實現(xiàn)版本管理和控制,建議使用庫的類型功能。

庫的類型功能,可對標準塊,包括FB、FC、PLC數(shù)據(jù)類型(UDT)等進行版本控制。使用庫的類型功能在每次程序變更時,能夠?qū)崿F(xiàn)對版本號的更新,支持編輯作者、注釋等信息。如圖4所示。

圖4. 發(fā)布類型版本

注意:在程序塊加入庫的類型之前,建議將需要設(shè)置的仿真功能激活、自動編號功能、專有技術(shù)保護等設(shè)置完畢。因為一旦塊加入庫中,這些功能無法再次設(shè)置。

對于版本號,一般有以下要求供參考:

  • 版本號格式為 x.y.z
  • 起始版本為 1.0.0
  • “z” 表示修復(fù)錯誤,功能不做修改
  • “y” 表示功能進行擴展,變更時,同時對“z” 清零
  • “x” 是重大變更或?qū)σ郧鞍姹静患嫒莸母?,變更時,同時對“y” 和 “z” 清零
  • “x”、“y” 、 “z” 位于 0 - 999 之間

具體版本號變更示例,請參考下表。

有了這個功能,就可以方便地在項目中進行版本管理,更進一步還可以做成企業(yè)庫甚至網(wǎng)絡(luò)庫進行全局共享,方便項目統(tǒng)一籌劃。

4 處理 ENO

如果說編一些報警程序,想必每個開發(fā)者或者公司都有相關(guān)經(jīng)驗,方法也是五花八門。但如果只是指令的一些報警,這個可能大家就不是很熟悉了。這里就介紹一個小技巧,可以在處理指令報警時達到事半功倍的效果。

可能大家都注意到了,很多指令,例如數(shù)學(xué)運算、轉(zhuǎn)換等,或者FC、FB中都會在右邊輸出端有個ENO。一般都空在那里,也沒有什么影響,要不就是后面串聯(lián)其他的塊,僅此而已。

其實不然,之所以感覺不到它有什么作用,是因為這個功能默認不激活,也就是ENO一直為True。但實際上我們可以激活這個功能,讓ENO去判斷指令或塊是否執(zhí)行異常。這時計算正常ENO輸出True,計算異常ENO輸出False。

像指令中的計算超限、或者轉(zhuǎn)換出錯等都可以判斷出來。此外還可以在自定義塊中對ENO賦值,自行給出或判斷ENO狀態(tài)。

那怎么能使得指令、塊的 ENO 激活呢?

非常簡單,對于LAD/FBD中調(diào)用的基本指令,可以直接在指令的右鍵菜單中生成ENO,即激活ENO。如圖5所示。

圖5. 生成 ENO

如果是SCL塊,或者是LAD/FBD塊中SCL段調(diào)用基本指令激活ENO,則不能像圖5中的方式。需要在所在塊屬性中激活設(shè)置,如圖6所示的紅框。

圖6. SCL生成ENO

當(dāng)然如果是系統(tǒng)指令塊或者是用戶塊的話,只要是塊內(nèi)部有對ENO 進行修改,那么在調(diào)用該塊的時候就可能會出現(xiàn)ENO = False的情況。

下面我們看一個SCL中ENO的使用例子,如圖7所示。看了這個例子您應(yīng)該對ENO就有了更深一步的認識了。

圖7.ENO 示例

上面的例子中,因為DINT的范圍比INT要大,轉(zhuǎn)換是可能會失敗的,一旦變量num的范圍超過了INT的范圍,那ENO必然會輸出False。

所以利用ENO的功能,可以優(yōu)化程序。

5 基于 PLCopen 模板進行編程

前文提到《指南》的目的旨在幫助開發(fā)者能夠統(tǒng)一編程風(fēng)格,促進項目的標準化。針對標準化編程,西門子除了提供了一些規(guī)則建議以外,還提供了非常好用的編程模板。這個模板就是個編程框架,有了框架只需往里面增加工藝邏輯內(nèi)容就好了。

西門子提供的符合PLCopen標準的基于SCL編程語言的模板是通用函數(shù)庫(LGF)。基于通用函數(shù)庫(LGF),可以很輕松地編寫出風(fēng)格統(tǒng)一,易于閱讀的FC、FB程序。通用函數(shù)庫(LGF)的下載地址如下:

英文:

https://support.industry.siemens.com/cs/us/en/view/109479728

中文:

https://support.industry.siemens.com/cs/cn/zh/view/109479728

在英文網(wǎng)頁中可以下載到TIA Portal最新版本的庫。如果您的TIA Portal 版本較低,目前可以在中文頁面下載到最低V14SP1版本的庫。當(dāng)庫加載到TIA Portal中,就可以瀏覽到各種模板(圖中Templates文件夾),如圖8所示。

圖8. 模板位置

模板從上到下包括以下幾部分:

  • 用于以下功能、功能塊中診斷用的PLC數(shù)據(jù)類型(UDT)
  • Enable作用的功能塊:適合于連續(xù)執(zhí)行的異步功能塊,執(zhí)行效果參考運動控制中的MC_MoveJog
  • Execute作用的功能塊:適合于單次執(zhí)行的異步功能塊,執(zhí)行效果參考運動控制中的MC_MoveVelocity
  • 通用的功能、功能塊模板:包含初始化段、主程序段、輸出控制段,輸出控制一般還包含對錯誤位、錯誤代碼的控制

有了這些模板,我們自己就可以搭建出符合標準化的程序塊了。


QQ在線咨詢
聯(lián)系電話
17658151177
售后服務(wù)
17658151177