六合灑霖雨 萬物無凋枯
                                            服務熱線: 400-662-0602
                                            關于我們
                                            聯系我們

                                            聯系人:程經理

                                            聯系電話:400-662-0602

                                            郵  箱:13933620602@163.com

                                            地址:河北省秦皇島市海港區

                                            新聞中心

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

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

                                            簡介

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

                                            下表簡要列出了轉換的選項。下面詳細介紹了各種語言結構的移植。


                                            間接尋址

                                            S7-300/400

                                            S7-1500

                                            間接尋址 DB

                                            "BLOCK_DB" 數據類型

                                            “DB_ANY”數據類型

                                            間接尋址 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" 數據類型到 "DB_ANY" 的移植

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

                                            以下舉例說明如何移植 "BLOCK_DB" 數據類型。

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



                                            SCL

                                            #myBlock //數據類型 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”指令間接指定數據塊或 DB 變量。在移植過程中將自動轉換為間接尋址。

                                            以下舉例說明了如何移植 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 變量。在移植過程中將自動轉換為間接尋址。

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

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



                                            SCL

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


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



                                            SCL

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

                                            相關標簽:  西門子,博途SCL
                                            ? 91在线视频网站_国产 中文 欧美 日韩_国产精品交换第二页_狠狠热精品免费视频