簡介
用戶程序必須先經(jīng)過編譯才能在 CPU 中執(zhí)行。每次進行更改后都需要重新編譯程序。
編譯期間會執(zhí)行以下步驟:
檢查用戶程序的語法錯誤。
將從用戶程序中刪除不需要的指令。
檢查被編譯塊中的所有塊調(diào)用。如果更改了被調(diào)用塊的接口,則會在信息窗口的“編譯”(Compilation) 選項卡中顯示錯誤信息。必須先更正這些錯誤。
塊在用戶程序中的編號不能重復(fù)。如果多個塊具有相同的編號,在編譯過程中將對編號沖突的塊自動重新編號。在以下情況下將不對塊重新編號:
無法通過自動重新編號解決的編號沖突必須手動更正。請注意巡視窗口中針對此問題的消息。
說明
重新編號專有技術(shù)保護塊
僅 S7-1500 和 S7-1200 (V4) 系列 CPU 支持對無密碼的專有技術(shù)保護塊進行自動重新編碼和手動重新編碼。專有技術(shù)保護功能必須通過 TIA Portal V13 SP1 或更高版本進行設(shè)置。
塊被單獨選中或者隨其它塊一起選中進行編譯。
在塊的屬性中將編號分配設(shè)置為“手動”(manual)。
最后,將用戶程序編譯成 CPU 可讀取的代碼。
編譯方法
可在以下窗口或編輯器中啟動編譯:
在項目樹中編譯塊
用于編譯單個塊或同時編譯“程序塊”文件夾中的一個或多個塊。
在程序編輯器中編譯塊
該選項用于編譯單個打開的塊。
在調(diào)用結(jié)構(gòu)或從屬性結(jié)構(gòu)中編譯塊
用于編譯個別的塊。
編譯選項
如果要在項目樹中編譯塊,可選擇更多選項:
軟件(僅更改)
將編譯所選塊中的所有程序更改。如果已選擇了塊文件夾,那么將編譯該文件夾中包含的塊的所有程序變更。
軟件(編譯所有塊)
編譯所有塊。建議在第一次編譯時以及在進行了重大修訂后執(zhí)行此操作。
軟件(重置預(yù)留存儲器)
所選塊接口的預(yù)留區(qū)域中聲明的所有變量都將移動到接口的標(biāo)準(zhǔn)區(qū)域中。現(xiàn)在,存儲器預(yù)留區(qū)域可用于進行接口擴展。
說明
該選項僅適用于 S7-1500 和 S7-1200 V4 及更高版本系列的 CPU。
一致性檢查
更改被調(diào)用塊的接口或使用的 PLC 數(shù)據(jù)類型,可以導(dǎo)致在調(diào)用塊和被調(diào)用塊之間;或者發(fā)生 PLC 數(shù)據(jù)類型與使用這些數(shù)據(jù)類型的全局 PLC 數(shù)據(jù)塊之間不一致的情況。
為了避免用戶程序出現(xiàn)此類不一致情況,在每次執(zhí)行編譯前系統(tǒng)自動執(zhí)行一致性檢查。比較時間戳,然后根據(jù)比較的結(jié)果執(zhí)行或取消編譯。
僅當(dāng)被調(diào)用塊接口的時間戳記早于調(diào)用塊對應(yīng)的時間戳記時,才能編譯調(diào)用塊。
僅當(dāng)基于 PLC 數(shù)據(jù)類型的全局數(shù)據(jù)塊的時間戳記晚于此 PLC 數(shù)據(jù)類型的時間戳記時,才能正確編譯該全局數(shù)據(jù)塊。
僅當(dāng)背景數(shù)據(jù)塊接口的時間戳記與所分配的函數(shù)塊對應(yīng)的時間戳記相同時,才能正確編譯該背景數(shù)據(jù)塊。
如果取消編譯過程,則在巡視窗口中將顯示一條報警。更新相關(guān)塊中的塊調(diào)用和全局數(shù)據(jù)塊中的 PLC 數(shù)據(jù)類型,然后重啟編譯。通過一致性檢查還可找到不能編譯的專有技術(shù)保護的塊。在巡視窗口中也將顯示相應(yīng)消息。
若立即開始加載,而不是首先編譯,則所選塊會自動編譯,并顯式更新塊調(diào)用和全局數(shù)據(jù)塊。請注意,各 CPU 系列之間具有以下區(qū)別:
S7-1200/1500:所有受影響的塊都加載,以保證不會造成不一致性。
S7-300/400:僅加載所選塊。
更正編譯錯誤
在巡視窗口的“信息” >“編譯”中,可查看編譯是否成功或在程序中是否檢測到錯誤。如果發(fā)生錯誤,則需要進行更正,然后重新啟動編譯。
步驟
要修正編譯錯誤,請按以下步驟操作:
在巡視窗口中使用“信息” >“編譯” 打開錯誤列表。
如果存在錯誤,則單擊錯誤文本旁的藍色問號,可獲得有關(guān)解決該問題的信息。
雙擊要更正的錯誤。
相應(yīng)的錯誤將高亮顯示。
更正錯誤。
重新啟動編譯。
審核編輯:湯梓紅
-
cpu
+關(guān)注
關(guān)注
68文章
10890瀏覽量
212419 -
西門子
+關(guān)注
關(guān)注
94文章
3056瀏覽量
116152 -
程序
+關(guān)注
關(guān)注
117文章
3793瀏覽量
81227 -
編譯
+關(guān)注
關(guān)注
0文章
661瀏覽量
32933
原文標(biāo)題:西門子博途:編譯塊
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論