亚洲加勒比在线,在线精品日韩一区二区三区,日韩欧美中文字幕出,欧美日韩另类综合在线

六合灑霖雨 萬物無凋枯
服務熱線: 400-662-0602
關(guān)于我們
聯(lián)系我們

聯(lián)系人:程經(jīng)理

聯(lián)系電話:400-662-0602

郵  箱:13933620602@163.com

地址:河北省秦皇島市海港區(qū)

新聞中心

西門子博途SCL: SCL中間接尋址

作者: 秦皇島六合科技開發(fā)有限公司發(fā)布時間:2024-05-07 09:24:05點擊:90 

簡介

在 S7-1500 中,統(tǒng)一了所有編程語言的間接尋址選項,因此在移植過程中將部分轉(zhuǎn)換 S7-300/400 中支持的間接尋址。

下表簡要列出了轉(zhuǎn)換的選項。下面詳細介紹了各種語言結(jié)構(gòu)的移植。


間接尋址

S7-300/400

S7-1500

間接尋址 DB

"BLOCK_DB" 數(shù)據(jù)類型

“DB_ANY”數(shù)據(jù)類型

間接尋址 DB 變量

#block.%DBW3

PEEK”/“POKE”指令

WORD_TO_BLOCK_DB(#myWord).%DBW3

PEEK”/“POKE”指令

#block.DW(IDX := #myInt)

PEEK”/“POKE”指令

WORD_TO_BLOCK_DB(#myWord).DW(IDX:=#myInt)

PEEK”/“POKE”指令

%DB1.DW(IDX :=#myInt)

PEEK”/“POKE”指令

間接尋址 I/O

QB(IDX :=#myInt):P

PEEK”/“POKE”指令

間接尋址 PLC 變量

IX(IDX :=#myInt1,Bit:=#myInt2)

PEEK”/“POKE”指令

QB(IDX :=#myInt)

PEEK”/“POKE”指令

MW(IDX :=#myInt)

PEEK”/“POKE”指令


"BLOCK_DB" 數(shù)據(jù)類型到 "DB_ANY" 的移植

"BLOCK_DB" 數(shù)據(jù)類型在 S7-1500 中不可用。這種數(shù)據(jù)類型的變量將通過移植轉(zhuǎn)換為 "DB_ANY" 數(shù)據(jù)類型。"BLOCK_DB_TO_WORD" 和 "WORD_TO_BLOCK_DB" 轉(zhuǎn)換函數(shù)將通過移植轉(zhuǎn)換為 "UINT_TO_WORD(DB_ANY_TO_UINT)" 和 "UINT_TO_DB_ANY(WORD_TO_UINT)"。

以下舉例說明如何移植 "BLOCK_DB" 數(shù)據(jù)類型。

在第一個表中,為移植前的三個程序段:



SCL

#myBlock //數(shù)據(jù)類型 BLOCK_DB;

//...

#myWord :=BLOCK_DB_TO_WORD(#myBlock);

//...

#myBlockDB := WORD_TO_BLOCK_DB(#myWord);



在第二個表中,為移植后的三個程序段:



SCL

#myBlock //Datentyp DB_Any;

//...

#myWord := UINT_TO_WORD(DB_ANY_TO_UINT(#myBlock));

//...

#myDBANY:= UINT_TO_DB_ANY(WORD_TO_UINT(#myWord));


移植 DB 變量的間接尋址

在 S7-1500 中,通過“PEEK”/“POKE”指令間接指定數(shù)據(jù)塊或 DB 變量。在移植過程中將自動轉(zhuǎn)換為間接尋址。

以下舉例說明了如何移植 DB 變量的間接尋址。

在第一個表中,為移植前的程序段:



SCL

#myWord := %DB1.DW(IDX :=#myInt);

//...

#myBool := %DB1.DX(IDX :=#myByteOffset,Bit:=#myBitOffset);

//...

%DB1.DW(IDX := #myInt) := 12;

//...



在第二個表中,為移植后的程序段:



SCL

#myWord := PEEK_WORD(area:=16#84, dbNumber:=1, byteOffset:=#myInt);

//...

#myBool:=PEEK_BOOL(area:=16#84, dbNumber:=1, byteOffset:=#myByteOffset, bitOffset:=#myBitOffset);

//...

POKE(area:=16#84,dbNumber:=1,byteOffset:=#myInt,value:=12);

//...


移植 PLC 變量的間接尋址

在 S7-1500 中,通過“PEEK”/“POKE”指令間接指定 PLC 變量。在移植過程中將自動轉(zhuǎn)換為間接尋址。

以下舉例說明了如何移植 DB 變量的間接尋址。

在第一個表中,為移植前的程序段:



SCL

#myWord := MW(IDX := #myInt);


在第二個表中,為移植后的程序段:



SCL

#myWord := PEEK(area:=16#83,dbNumber:=0,byteOffset:=#myInt);

相關(guān)標簽:  西門子,博途SCL
?