S7-1500 的指令集略有不同。 包含有一些新指令或替換了舊指令。
在移植過程中,將盡可能的保留程序中所使用的指令。 如果一條指令在 S7-1500 中不可用,則將嘗試將其替換為一個兼容的或類似的指令。 然后,需要再次檢查移植后的程序并進(jìn)行必要的修改。
例如,可能會發(fā)生以下變化:
新指令中帶有其它形參。 此時,需要組態(tài)這些參數(shù)。
新指令的形參為其它數(shù)據(jù)類型。 此時,移植將自動增加一條指令轉(zhuǎn)換數(shù)據(jù)類型。
如果在移植中無法確保參數(shù)分配的語義與原程序相同,則會將相關(guān)參數(shù)注釋掉。 在移植后檢查程序中這些位置處的語義,并在必要時進(jìn)行更正。
以下舉例說明了如何移植“AG_SEND”指令到“TSEND”指令。
在**個表中,為移植前對“AG_SEND”的調(diào)用:
SCL | |
---|---|
AG_SEND (ACT:=#myBool, ID:=#myInt1, LADDR:=#myWord, SEND:=#myAny, LEN:=#myInt2, DONE=>#myBool, ERROR=>#myBool, STATUS=>#myWord); |
在**個表中,為移植后對“TSEND”的調(diào)用:
SCL | |
---|---|
"TSEND_DB"((* ToReplace: REQ:=#myBool *) (* ToReplace: ID:=#myInt1 *) LEN:=INT_TO_UDINT(#myInt2), DONE=>#myBool, ERROR:=#myBool, STATUS:=#myWord, DATA:=#myAny; |
"REQ“的實參源自“AG_SEND”指令的“ACT”參數(shù)。 該參數(shù)已注釋掉,這是由于必須在此位置對程序進(jìn)行檢查。
“ID”的實參源自“AG_SEND”,也需要進(jìn)行測試。
“LEN”參數(shù)的數(shù)據(jù)類型與“AG_SEND”的不同。 在移植過程中將自動進(jìn)行轉(zhuǎn)換。
在某些情況下,例如一個輸出參數(shù)在移植后的數(shù)據(jù)類型不同而且必須形參進(jìn)行轉(zhuǎn)換,那么移植后一條指令可能會生成多條指令。 轉(zhuǎn)換指令插入在移植后的指令之后。 然而,這也就意味著原始指令不能再用作表達(dá)式。 此時,移植將在移植后的塊接口中增加一個臨時變量,并將該指令的結(jié)果作為變量的值。 然后將該臨時變量用作一個表達(dá)式。 通常無法對復(fù)雜的表達(dá)式進(jìn)行自動移植。 移植后,將無法解釋的表達(dá)式標(biāo)記為問號,這將導(dǎo)致語法錯誤。 在移植后檢查程序中這些位置處的語義,并在必要時進(jìn)行更正。
以下舉例說明了如何移植“READ_RTM”指令到“RTM”指令。
在**個表中,為移植前對“READ_RTM”的調(diào)用:
SCL | |
---|---|
IF READ_RTM(NR:=#myByte, CQ=>#myBool, CV=>#myOutInt)= 1 THEN ...;END_IF; |
在*二個表中,為移植后對“RTM”的調(diào)用:
SCL | |
---|---|
(* classic code: IF READ_RTM(NR:=#myByte, CQ=>#myBool, CV=>#myOutInt)= 1 THEN*) #SCL_MIGRA_TEMP_INT_1:=RTM(NR:=#myByte, MODE:=0, PV:=#Migra_PV, CQ:=#myBool, CV:=#Migra_CV); #myOutInt:=DINT_TO_INT(#Migra_CV); IF #SCL_MIGRA_TEMP_INT_1= 1 THEN; ... END_IF; |
原程序中的指令將作為注釋部分傳送到移植后的塊中, 這樣便于跟蹤移植時發(fā)生的更改。
由于“RTM”中 CV 的數(shù)據(jù)類型為 DINT,因此將插入一個轉(zhuǎn)換指令將實參從 INT 轉(zhuǎn)換為 DINT。 這就意味著 RTM 結(jié)果不能再用作 IF 指令中的表達(dá)式。
在移植后塊的接口處插入臨時變量“SCL_MIGRA_TEMP_INT_1”, 并將 RTM 指令的結(jié)果分配給該臨時變量。
臨時變量用作 IF 指令中的表達(dá)式而非“RTM”指令中的。
詞條
詞條說明
S7-200 smart 運動控制指令由編程軟件向?qū)?,運動控制指令有很多條構(gòu)成,且每條指令都帶有很多接口參數(shù),想要使用這些指令,要先知道接口是什么意思,雖然幫助文章都有解釋,但讀懂幫助文件也很費勁,今天就詳細(xì)給大家介紹運動指令的使用。S7-200 SMRAT 運動控制指令如下圖生成:1、選擇'運動'右鍵打開。2、本次就以'軸0'為例。3、命個名字。4、數(shù)字1位選擇工程單位,可以使工程單位,也可
MC-PostServo OBDescriptionThe organization block MC?PostServo?[OB95] can be programmed and is called in the application cycle configured at the?MC?Servo?[OB91]. The MC?PostServo?[O
使用備份功能,備份出來的文件是不能查看和修改組態(tài)的,這個文件只能恢復(fù)到相同訂貨號的設(shè)備上。1. 選擇操作系統(tǒng)“開始”菜單 > 所有程序 > Siemens Automation > Simatic > ProSave,打開ProSave軟件。在“常規(guī)”選項中,選擇設(shè)備類型,連接方式。所有能下載的方式都能做備份恢復(fù),電纜以及下載參數(shù)設(shè)置和下載是一樣的。2.?同時需要
有關(guān)移植 GRAPH 程序的信息簡介由 S7-300/400 創(chuàng)建的 GRAPH 程序可自動移植到 S7-1500 中。PLC 移植程序會對 GRAPH 程序進(jìn)行調(diào)整,以便在 S7-1500 系列的 CPU 上正常運行。 在移植日志中,將記錄移植過程中所有的程序自動變更,并提示用戶所需進(jìn)行的手動調(diào)整。PLC 移植程序中對 GRAPH 程序的修改下表列出了在 PLC 移植過程中一些自動修改的示例。
公司名: 上海騰希電氣技術(shù)有限公司
聯(lián)系人: 田禮科
電 話: 021-37660026
手 機: 13681875601
微 信: 13681875601
地 址: 上海松江上海市松江區(qū)廣富林路4855弄星月大業(yè)**88號4樓
郵 編:
網(wǎng) 址: shtxjd.cn.b2b168.com
公司名: 上海騰希電氣技術(shù)有限公司
聯(lián)系人: 田禮科
手 機: 13681875601
電 話: 021-37660026
地 址: 上海松江上海市松江區(qū)廣富林路4855弄星月大業(yè)**88號4樓
郵 編:
網(wǎng) 址: shtxjd.cn.b2b168.com