S7-200 SMART編程分享及LOGO!要點展示
S7-200 SMART 編程實例分享
在日常的程序編輯和調(diào)試過程中,我們可能會遇到各種各樣的問題,比如編輯好的邏輯程序執(zhí)行結(jié)果不正確,編譯正常的程序下載到不同的CPU中,有些可以下載,而有些提示非致命錯誤等等,此時如何快速的排查和分析錯誤發(fā)生原因就非常重要,而排查和分析的前提就需要對S7-200 SMART從軟件和硬件上有更加深入的了解,下面我們就通過幾個典型的案例來進行問題的分析。
案例 1
首先看圖1這段程序,編譯無任何問題,如果下載到不同類型的CPU中,表現(xiàn)就會不同,我們可以嘗試下載到ST60和CR60兩種類型的CPU中。

圖1 主程序
下載到ST60中,程序運行正常,如果下載到CR60中,程序運行就會報非致命錯誤:操作數(shù)非法(錯誤碼:0090),圖2為具體的非致命錯誤信息:

圖2 PLC信息
根據(jù)程序分析錯誤出現(xiàn)的原因和中斷有關(guān),可以查詢S7-200 SMART系統(tǒng)手冊中斷章節(jié)可以找到對應(yīng)答案,如表1所示,24號中斷事件CR60不支持,所以在運行時會報錯非致命錯誤。

表1
綜上,當需要程序在多個不同類型CPU之間下載或者移植時,就需要提前了解各個CPU的程序容量大小、支持的數(shù)據(jù)區(qū)的大小,斷電保持區(qū)域大小,是否使用到了CPU不支持的功能或者CPU固件版本是否支持等因素,只有了解了這些,才能做到有的放矢。
案例 2
在日常編程過程中,我們可能需要各種標準庫,有時需要子程序和中斷程序有多重調(diào)用關(guān)系,例如下面這個案例,程序想使用格雷碼轉(zhuǎn)換庫在定時中斷中每隔100ms進行一次數(shù)據(jù)的格雷碼轉(zhuǎn)換,請看圖3:

圖3 主程序

圖4 子程序
程序的調(diào)用關(guān)系為:中斷子程序INT0調(diào)用子程序SBR1,SBR1中調(diào)用子程序SBR2,SBR2中的程序如圖4所示,下載到CPU中,通過狀態(tài)圖表監(jiān)視程序狀態(tài),發(fā)現(xiàn)沒有結(jié)果輸出,如圖5所示:

圖5 狀態(tài)圖標監(jiān)控無輸出
進一步監(jiān)控PLC信息,可以看到圖6的非致命錯誤報警:超出最大用戶子例程嵌套級別(錯誤碼:0008)

圖6 PLC信息
S7-200 SMART手冊中規(guī)定:從主程序調(diào)用子例程的嵌套深度是 8 級,從中斷例程調(diào)用嵌套深度是 4 級。
現(xiàn)在來看上述程序的調(diào)用關(guān)系:
INT0→SBR1→SBR2→GRAY_BIN_DW,表面上也僅僅嵌套了3級,滿足中斷嵌套深度要求,但是仔細查看GRAY_BIN_DW功能庫可以發(fā)現(xiàn),該庫也嵌套了幾層,嵌套關(guān)系如下:
GRAY_BIN_DW→GRAY_BIN→XOR,這樣下來,嵌套關(guān)系就變成如下:
INT0→SBR1→SBR2→GRAY_BIN_DW
→GRAY_BIN→XOR,總共5層嵌套關(guān)系,超過了CPU支持的最大嵌套深度,導(dǎo)致CPU 無法運行,知道了原因,我們可以減少調(diào)用嵌套為4層以內(nèi),則程序就可以正常執(zhí)行了。
通過以上案例,我們不難得知,有些看似不可理解的問題其實有其發(fā)生的原因,只有了解對應(yīng)產(chǎn)品的技術(shù)細節(jié),才能找到問題的根源所在。
S7-200可編程控制器系統(tǒng)手冊可以讓我們對于產(chǎn)品的技術(shù)細節(jié)有一個基礎(chǔ)的了解,在程序出現(xiàn)錯誤時能夠及時查詢手冊找到原因,解決工作中遇到的問題。
S7-200 SMART V2.7 新功能回顧
S7-200 SMART CPU自面世以來,憑借其優(yōu)秀的性能受到了用戶的廣泛好評。2022年9月6日,V2.7固件正式發(fā)布,下面我們帶大家回顧一下S7-200 SMART V2.7的新功能。
(悄悄告訴大家,S7-200 SMART的新版本正在加緊研發(fā)中~)
2.1 超馳功能
概念:超馳是指運動控制指令之間相互覆蓋的情況,用戶可以用新的指令覆蓋正在執(zhí)行的命令,超馳功能一旦激活將會中止當前動作并立即執(zhí)行新的命令。
優(yōu)點:軸不用停止,可以平滑過渡到新的指令或是同一指令的新參數(shù)。
功能說明:S7-200 SMART V2.7目前僅支持在相同指令間觸發(fā)超馳響應(yīng)。支持兩種指令:一種是通過運動控制向?qū)Х绞缴傻腁XISx_GOTO指令,另外一種是通過PLS指令。
2.2 運動軸組
功能說明:通過運動控制向?qū)лS組功能,實現(xiàn)2軸或者3軸的直線插補運動。軸組由軸組成,軸組和軸的關(guān)系是靜態(tài)的,不支持動態(tài)配置。
實現(xiàn)方式:在運動控制向?qū)е信渲幂S組后,有兩種方式可以對軸組進行操作。
第一種是配置軸組后,不對軸組進行路徑規(guī)劃。第二種是配置軸組后,對軸組進行路徑規(guī)劃。
目前只有一個軸組可以使用,軸組的X 軸對應(yīng)軸0,軸組的Y 軸對應(yīng)軸1,軸組的Z 軸(如果適用)對應(yīng)軸2。
· 配置軸組后,不對軸組進行路徑規(guī)劃
使用運動向?qū)ЫM態(tài)軸組,自動生成的GRP0_2/3D_MOVELINEAR指令,該指令控制軸組實現(xiàn)從實際位置到目標位置的 2D/3D 直線插補運動。

配置軸組

GRP0_2/3D_MOVELINEAR指令
· 配置軸組后,對軸組進行路徑規(guī)劃
使用運動向?qū)ЫM態(tài)軸組,并在向?qū)е袑S組的運動路徑進行規(guī)劃,使用向?qū)傻腉RP0_MOVEPATH指令觸發(fā)向?qū)е幸?guī)劃的路徑。軸組的路徑規(guī)劃功能可配置的路徑最多為128條,軸組路徑規(guī)劃功能僅適用于絕對運動模式。

對軸組進行路徑規(guī)劃

GRP0_MOVEPATH指令
2.3 用戶自定義Web界面
功能說明:STEP 7?Micro/WIN SMART V2.7軟件配合S7-200 SMART V2.7 CPU 固件增加了Web 服務(wù)器用戶自定義Web頁面功能。利用 SMART Web Editor工具,用戶可創(chuàng)建自定義Web頁面項目,并將該項目下載到 CPU當中。

SMART Web Editor 組態(tài)界面
優(yōu)點:通過SMART Web Editor 組態(tài)工具,可以快速的開發(fā)基于Web的人機界面,按鈕、儀表盤、趨勢圖等控件可以滿足基本的使用要求,大大的縮短產(chǎn)品開發(fā)周期。
2.4 Web API(應(yīng)用程序編程接口)
功能說明:STEP 7?Micro/WIN SMART V2.7軟件配合S7-200 SMART V2.7 CPU固件增加了Web API功能,為用戶提供了從終端設(shè)備讀取和寫入 CPU數(shù)據(jù)的接口。簡單的說,就是不使用SMART Web Editor組態(tài)工具,自行開發(fā)網(wǎng)頁或者應(yīng)用程序,利用Web API訪問CPU數(shù)據(jù)。

關(guān)于LOGO! ,你一定要了解…
3.1 走近LOGO!
LOGO!是自動化工業(yè)領(lǐng)域易用的智能邏輯控制器,它縮短了傳統(tǒng)開關(guān)器件與SIMATIC之間的差距,可使用邏輯功能來取代復(fù)雜的配線,集所有功能于一臺機器。
3.1.1 硬件
西門子專家向我們詳細介紹了LOGO!主機。
LOGO!主機介紹
此外,LOGO!還有10個擴展模塊和2個通信模塊,能夠?qū)崿F(xiàn)更豐富的功能。


3.1.2 軟件
LOGO!有多款免費軟件,可以實現(xiàn)很多實用的功能。
LOGO!Soft Comfort V8.3.1
LOGO!Web Editor V1.1.1
LOGO!Access Tool V2.1.0(數(shù)據(jù)遠程監(jiān)控工具)
……
3.2 LOGO!廣泛的應(yīng)用場景
LOGO!具有高的性價比,但是在工業(yè)、建筑自動化、農(nóng)業(yè)以及畜牧業(yè)等領(lǐng)域都有廣泛的應(yīng)用,西門子專家結(jié)合自身經(jīng)驗,向我們講解LOGO!的應(yīng)用場景。
LOGO!的應(yīng)用場景
3.3 LOGO!8.3新功能
LOGO! 發(fā)展至今,最新的硬件版本為 V8.3,對應(yīng)軟件的版本也為 V8.3, 在繼承 LOGO! 8.2 強大功能的同時,也多了很多新亮點,西門子專家為我們詳細介紹了這些新功能。
LOGO!8.3新功能
LOGO!8.3產(chǎn)品組合
· 根據(jù)組態(tài)將LOGO!BM數(shù)據(jù)發(fā)布到 AWS云
· 通過AWS云遠程更改LOGO!BM數(shù)據(jù)
LOGO! Web Editor V1.1
· 創(chuàng)建自定義Web界面并部署至AWS
· 輕松實現(xiàn)Web服務(wù)器和AWS物聯(lián)網(wǎng)設(shè)備之間的
數(shù)據(jù)交換
· 在一個項目中支持多個AWS物聯(lián)網(wǎng)設(shè)備
