<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

西門子博途中聲明STRUCT數據類型的變量

機器人及PLC自動化應用 ? 來源:機器人及PLC自動化應用 ? 2023-06-21 09:32 ? 次閱讀

要求

接口已打開。

操作步驟

要聲明 STRUCT 數據類型的變量,請按以下步驟操作:

在塊接口中,選擇需聲明的部分。
在“名稱”(Name) 列中,輸入變量的名稱。
在“數據類型”列中輸入“Struct”。輸入時系統將提供自動完成功能。
在新變量后將插入空的縮進行。
在第一個空行中插入第一個結構元素。
在該元素后會再插入一個空行。
選擇結構元素的數據類型。
可選:更改在塊接口其它列中顯示的結構元素的屬性。
對于所有其它結構元素,重復執行步驟 4 到 6。
不必顯式完成該結構。結構會以輸入的最后一個元素結束。
要在結構后插入新變量,請在結構結尾后留一個空行,然后在第二個空行中啟動新變量。

結果

創建數據類型 STRUCT 的變量。

說明
S7-1500:一個數據塊中最多有 252 個結構
一個數據塊中最多允許有 252 個結構。如果需要更多結構,則必須重新構造自己的程序。例如,可以在多個全局數據塊中創建結構。

TRUCT 聲明

STRUCT 數據類型是指一種元素數量固定但數據類型不同的數據結構。

也可以基于 PLC 數據類型 (UDT) 創建結構。為此,需將 PLC 數據類型指定為一個結構化數據類型。小系統將通過工具提示,顯示該 PLC 數據類型的各個元素。

語法

聲明 STRUCT 所用的語法如下:

聲明 語法 示例
STRUCT <名稱> : Struct
<元素名稱> : <數據類型> [:= <值>];
<元素名稱> : <數據類型> [:= <值>];
...
END_Struct := (<初始化列表>);
myStruct : Struct
mem_1 : Int;
mem_2 : Int;
mem_3 : BOOL;
END_Struct := (6,0, TRUE) ;
基于 PLC 數據類型 (UDT) 的 STRUCT <名稱> : "" := (<初始化列表>); myStruct : "myType" := (6,0, TRUE);
說明
S7-1500:一個數據塊中最多有 252 個結構
S7-1500 系列 CPU 中的一個數據塊中最多允許有 252 個結構。如果需要更多結構,則必須重新構造自己的程序。例如,可以在多個全局數據塊中創建結構。

STRUCT 的初始化

STRUCT 初始化為可選操作。進行初始化時,可在變量聲明后直接跟隨一個值,也可使用初始化列表。

初始化列表位于關鍵字 END_STRUCT 之后,包含在一個括號內并通過 := 進行賦值。如果該結構中還包含下級結構,則可通過括號嵌套進行初始化。如果這兩種初始化方式均未采用,則可使用初始化列表中的值。

初始化列表使用的語法如下所示:

聲明 語法 示例 注釋
STRUCT 的初始化 <名稱> : Struct
<元素名稱> : <數據類型> [:= <值>];
...
END_Struct
myStruct : Struct
mem_1 : Int := 1;
mem_2 : Int := 2;
mem_3 : BOOL := FALSE
End_Struct
該結構中的元素將進行如下初始化:
// mem_1 := 1
// mem_2 := 2
// mem_3 := FALSE
STRUC 的初始化列表 := (<值>,<值>,<值>... ) myStruct : Struct
mem_1 : Int;
mem_2 : Int;
mem_3 : BOOL
End_Struct:=(2,0,TRUE);
該結構中的元素將進行如下初始化:
// mem_1 := 2
// mem_2 := 0
// mem_3 := TRUE
嵌套 STRUC 的初始化列表 := (<值>,(<值>,<值>... )) myStruct : Struct
mem_1 : Int;
mem_2 : Int;
mem_3 : Struct
mem_4 : BOOL;
mem_5 : BOOL;
End_Struct;
End_Struct:=(2,0, (TRUE,TRUE));
該結構中的元素將進行如下初始化:
// mem_1 := 2
// mem_2 := 0
// mem_4 := TRUE
// mem_5 := TRUE
STRUC 的初始化列表(帶元素命名規范) := (<元素名稱> := <值>), (<元素名稱> := <值>)... myStruct : Struct
mem_1 : Int;
mem_2 : Int;
End_Struct:=(mem_2:=55);
該結構中的元素將進行如下初始化:
// mem_2 := 55
PLC 數據類型 (UDT) 的初始化列表 := (<值>,<值>,<值>... ) myStruct : "myType" := (2,0,TRUE); 該結構中的元素將進行如下初始化:
// mem_1 := 2
// mem_2 := 0
// mem_3 := TRUE
嵌套 PLC 數據類型 (UDT) 的初始化列表 := (<值>,(<值>,<值>... )) myStruct : "myType" := (2,0,(TRUE,TRUE); 該結構中的元素將進行如下初始化:
// mem_1 := 2
// mem_2 := 0
// mem_3 := TRUE
// mem_4 := TRUE
PLC 數據類型 (UDT) 的初始化列表(帶元素命名規范) := (<元素名稱> := <值>), (<元素名稱> := <值>)... myStruct : "myType" := (mem_1:=22,mem_2:=55); 該結構中的元素將進行如下初始化:
// mem_1 := 22
// mem_2 := 55

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • plc
    plc
    +關注

    關注

    4980

    文章

    12309

    瀏覽量

    455494
  • 西門子
    +關注

    關注

    92

    文章

    2865

    瀏覽量

    113921
  • 數據類型
    +關注

    關注

    0

    文章

    229

    瀏覽量

    13529
  • Struct
    +關注

    關注

    0

    文章

    29

    瀏覽量

    10819

原文標題:西門子博途:聲明 STRUCT 數據類型的變量

文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Verilog 變量聲明數據類型

    Verilog 變量聲明數據類型二上節介紹了wire,reg數據類型及其用法,并對變量定義中的向量的定義及使用做了說明。本節主要介紹其它幾
    發表于 08-06 09:21

    Verilog 變量聲明數據類型

    Verilog 變量聲明數據類型一Verilog語法中最基本的數據類型有 線網(wire),寄存器(reg)和整數(integer)三種類型
    發表于 08-10 14:01

    西門子plc數據類型_西門子plc通訊方式

    西門子PLC的品質非常好,其網絡穩定性、開放性深受工控人員的喜愛,而且編程軟件分類多,使用方便。在國內工控界具有顯著地位。雖然大家對西門子PLC都有一定的了解,但要你說出西門子PLC各種通信方式的特點,相信很多人都不能完整答出。
    發表于 07-25 10:57 ?1.4w次閱讀
    <b class='flag-5'>西門子</b>plc<b class='flag-5'>數據類型</b>_<b class='flag-5'>西門子</b>plc通訊方式

    西門子PLC模擬量輸入輸出相關數據類型轉換

    plc模擬量輸入輸出都會涉及到數據類型的互轉問題,然而西門子300系統對于數據格式有著明確的規定,一般的四則運算都是在同一數據類型下才能進行的,這也是一直以來困擾初學者的一個問題。
    發表于 03-19 08:42 ?1.4w次閱讀
    <b class='flag-5'>西門子</b>PLC模擬量輸入輸出相關<b class='flag-5'>數據類型</b>轉換

    西門子SCL邏輯塊中聲明變量或參數類型

    每類本地變量或參數,都有用各自關鍵字對標識的自己的聲明子域。每個子域包含允許的詳細的聲明子域,子域可按任何順序定位。 下表顯示能夠在各種邏輯塊中聲明
    的頭像 發表于 08-25 18:07 ?8222次閱讀

    數據類型wchar和wstring在西門子PLC中的應用

    1、數據類型為 wchar(寬字符)的變量長度為 16 位,占用2個 byte 的內存。wchar數據類型將擴展字符集中的單個字符保存為 UFT-16 編碼形式。
    的頭像 發表于 03-30 15:30 ?7811次閱讀

    西門子博途F型PLC數據類型與標準PLC數據類型的差別

    可以像使用標準 PLC 數據類型 (UDT) 那樣,聲明和使用 F 型 PLC 數據類型 (UDT) ??梢栽诎踩绦蛑幸约皹藴视脩舫绦蛑惺褂?F 型 PLC 數據類型 (U
    的頭像 發表于 07-08 10:15 ?2664次閱讀

    Struct結構數據類型

    Struct類型是一種由多個不同數據類型元素組成的數據結構,其元素可以是基本數據類型,也可以是Struc
    的頭像 發表于 07-25 17:02 ?2501次閱讀

    結構數據類型Struct)及應用案例

    Struct數據類型使用非常靈活,隨時可以使用,但是相對于PLC數據類型 (UDT) 有以下缺點,所以建議需要使用Struct類型時,可以使
    的頭像 發表于 07-27 16:10 ?1380次閱讀

    結構數據類型Struct介紹

    Struct類型是一種由多個不同數據類型元素組成的數據結構,其元素可以是基本數據類型,也可以是Struc
    的頭像 發表于 01-30 10:15 ?1321次閱讀

    西門子途中DB_ANY數據類型的使用

    。數據塊名稱或先前分配給數據塊名稱的 DB_ANY 數據類型變量將在運行期間傳送到此參數??梢酝ㄟ^以下指令,處理數據塊中用符號表示的內容。
    的頭像 發表于 07-04 10:17 ?5800次閱讀
    <b class='flag-5'>西門子</b>博<b class='flag-5'>途中</b>DB_ANY<b class='flag-5'>數據類型</b>的使用

    ARRAY 數據類型變量

    要求 全局數據塊已打開。 操作步驟 要聲明一個 ARRAY 數據類型變量,請按以下步驟操作: 在“名稱”(Name) 列中,輸入變量的名稱
    的頭像 發表于 07-06 11:08 ?681次閱讀

    西門子博途有關STRUCT的基本信息

    STRUCT 數據類型是指一種元素數量固定但數據類型不同的數據結構。在結構中,也可嵌套 STRUCT 或 ARRAY
    的頭像 發表于 07-12 10:03 ?3611次閱讀
    <b class='flag-5'>西門子</b>博途有關<b class='flag-5'>STRUCT</b>的基本信息

    西門子博途:使用PLC數據類型 (UDT)

    PLC 數據類型 (UDT) 是可自行定義且在程序中可以多次使用的數據結構。 此結構可包含不同數據類型的多個元素。 聲明 PLC 數據類型
    的頭像 發表于 07-12 17:36 ?5414次閱讀
    <b class='flag-5'>西門子</b>博途:使用PLC<b class='flag-5'>數據類型</b> (UDT)

    西門子PLC UDT數據類型的使用方法

    西門子PLC(Programmable Logic Controller)的自定義數據類型(User Defined Type,簡稱UDT)是一種自定義的數據結構,可以根據具體需求定義一種包含多個不同
    的頭像 發表于 07-19 15:01 ?1909次閱讀
    <b class='flag-5'>西門子</b>PLC UDT<b class='flag-5'>數據類型</b>的使用方法
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>