探花视频在线版免费播放,国产成人久久综合区,国产乱xxxxxx伦,老和尚趴在小嫩尼身上小说

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

PLC 工程師需要了解的幾個 SCL 實用小技巧

作者:小編 時間:2023-06-11 23:47:03 點擊:

/1/ 概述

SCL(結(jié)構(gòu)化控制語言)是一種基于PASCAL的高級編程語言。隨著S7-1200/1500的普及,以及PLC編程中大量引入IT編程思想和編程理念,SCL在西門子PLC中使用的比重越來越大。

SCL 在復雜編程、數(shù)學運算、間接尋址等方面相對傳統(tǒng)的梯形圖(LAD)有著絕對的優(yōu)勢,即使是位邏輯控制也有其自身的特點。

下面介紹幾個SCL非常有用但又不太為人所知的技巧供大家參考。

/2/ 如何改變塊接口參數(shù)顯示模式?

經(jīng)常有客戶問,在TIA Portal 的SCL編輯器中,如何展示出像經(jīng)典STEP 7里面SCL源文件那樣的文本式塊接口參數(shù),如圖1所示。這種方式編輯起來更加靈活,也可以像文本一樣復制粘貼。

圖 1. 文本式塊接口參數(shù)

其實,您會發(fā)現(xiàn)圖1中輸入?yún)?shù)數(shù)據(jù)類型Array[*]不是 S7-300/400 能支持的數(shù)據(jù)類型,也就是說其實上面圖1是在TIA Portal中編輯的,那這是如何實現(xiàn)呢?答案非常簡單,只要使用TIA Poral V15.1及其以上的版本,然后進行如圖2所示的設(shè)置就可以實現(xiàn)。

圖 2. 設(shè)置塊接口形式

設(shè)置過后,新建的SCL塊的接口形式就是文本式的了。那怎么修改已有SCL塊的接口形式呢?我們可以通過將塊導出源文件然后再導入源文件的方式來進行改變。有了這個設(shè)置,就可以根據(jù)需要自由選擇塊接口參數(shù)顯示形式了。

/3如何進行循環(huán)程序的調(diào)試?

SCL的一大特色就是非常適合循環(huán)程序編寫,如果再配合上間接尋址那就更是如虎添翼。

但是隨之而來的是調(diào)試問題,很少有人能一次性寫出完全沒有錯誤的程序,總會有各式各樣的問題,而通過監(jiān)視功能,只能像如圖3所示的那樣,最多監(jiān)視1次循環(huán)。

圖3. 監(jiān)視循環(huán)

如何解決這個問題呢?

有高級語言開發(fā)經(jīng)驗的人知道,此時應(yīng)該使用斷點調(diào)試功能來解決。是的,S7-1500從TIA Portal V15,固件版本V2.5開始支持SCL的斷點調(diào)試。有了這個功能,就可以非常方便地調(diào)試循環(huán)內(nèi)的程序執(zhí)行情況。具體步驟:

1.首先,在需要監(jiān)視的循環(huán)語句那行最左邊灰色區(qū)域位置左鍵單擊,此時會出現(xiàn)一個小圓點,這就是斷點,如圖4所示。

圖4. 監(jiān)視程序及斷點

2.然后監(jiān)視程序,并激活監(jiān)視菜單中“監(jiān)視循環(huán)”。如圖3所示。

3.在右邊測試側(cè)邊欄中的“斷點”里面,左鍵選中指定斷點,然后點擊“啟用/禁用斷點”并確認。如圖5所示。

圖5. 啟用斷點

4. 這時,在側(cè)邊欄中的“斷點”里面,每次點擊圖6紅色方框中的運行按鈕,就可以看到監(jiān)視值的變化,如圖7所示。

圖6. 點擊運行

圖7. 監(jiān)視值變化

過程就是這樣簡單。有了這個方法,再復雜的程序調(diào)試起來也是易如反掌,并且這種方法對循環(huán)外的程序也是一樣好用。

/4/順序控制能否用 SCL 來編寫?

對于復雜的順序控制,西門子推薦使用Graph編程語言。這個專用于順控控制的語言功能強大,使用直觀,還便于和HMI互動。而對于一些簡單的順序控制,可以通過LAD/FBD去搭建邏輯,通過斷開使能、置位復位相關(guān)變量也可以實現(xiàn)。那可不可以使用SCL來實現(xiàn)該功能呢?

答案是可以的。不僅可以,而且現(xiàn)在西門子官方有越來越多庫的順序控制部分都是通過SCL來實現(xiàn)的。并且結(jié)構(gòu)清晰,易于修改,還相對Graph使用更少的程序資源。

那是如何實現(xiàn)的呢?

答案很簡單,通過CASE OF指令就可以實現(xiàn)。有些小伙伴就會納悶了,CASE OF不就是判斷某個變量為幾的時候,執(zhí)行某些動作嗎?感覺和順控沒有任何聯(lián)系。

不不不,聯(lián)系很大,判斷某個變量為幾,可以當做判斷目前到了哪一步,執(zhí)行某些動作,我們可以當做執(zhí)行該步驟時執(zhí)行的動作。除此以外,還可以在步驟中加上判斷是否滿足跳轉(zhuǎn)條件,然后修改步驟號。這樣一個簡單的順控邏輯框架就搭建起來了。

當然了,一個完整的順控還需要考慮順控如何開始,如何斷電保持,如何報警以及復位,如何控制輸出等功能,這些可以通過相關(guān)邏輯或設(shè)置進行實現(xiàn)。

話不多說,可以看一下基于這個方法編的Modbus TCP輪詢功能,如圖8和9所示,是不是比自己之前LAD編的更加清晰直觀???是不是在這之前,根本沒覺得順控和通信輪詢有聯(lián)系?

圖8. 接口參數(shù)

圖9-1. 程序示例

圖9-2. 程序示例

怎么樣?是不是有種豁然開朗的感覺?是不是有種沖動,想趕緊看看自己的項目有沒有可以改造成順控的程序,然后使用SCL重新編寫。那就趕緊行動吧。

/5/如何把SCL程序分段

現(xiàn)在的生產(chǎn)工藝越來越復雜,甲方提的要求也是越來越多,于是程序代碼是越來越長,即使是用SCL來寫,也是占滿了程序編輯器的。和LAD這種自帶網(wǎng)絡(luò)段的編程語言不同,SCL作為文本語言,本身就是不分段的,正常只能通過空行或者加注釋行分隔,但是程序結(jié)構(gòu)依然不是很清晰。

不過不要緊,我們現(xiàn)在鄭重向您推薦一個分段神器,它使用簡單,效果顯著,功能強大,那就是—REGION指令。

從 TIA Portal V14開始,支持通過REGION指令來實現(xiàn)分區(qū)分段功能。并且可以實現(xiàn)區(qū)域命名,區(qū)域折疊,區(qū)域定位,區(qū)域嵌套等多個功能。V16以后甚至可以做到區(qū)域名稱多語言的功能。如圖10所示,展示了不同區(qū)域功能的使用。

6593edd9f6fa4ede8c46fabdae47ea65.png圖10. 區(qū)域功能使用

有了這個功能,就可以輕松地把復雜的程序劃分成若干個區(qū)域,在編輯器左側(cè)自由地管理分區(qū)。輕松地定位到需要的位置,折疊暫時不需要顯示的區(qū)域。程序架構(gòu)也是一目了然,程序也更加易讀。


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