<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自動化應用 ? 作者:機器人及PLC自動化 ? 2022-07-25 17:02 ? 次閱讀

結構數據類型(Struct)

Struct類型是一種由多個不同數據類型元素組成的數據結構,其元素可以是基本數據類型,也可以是Struct、數組等復雜數據類型以及PLC數據類型(UDT)等。Struct類型嵌套Struct類型的深度限制為 8 級。Struct類型的變量在程序中可作為一個變量整體,也可單獨使用組成該Struct的元素。Struct 類型可以在DB、OB/FC/FB接口區、PLC數據類型(UDT) 處定義使用。

Struct數據類型使用非常靈活,隨時可以使用,但是相對于PLC數據類型 (UDT) 有以下缺點,所以建議需要使用Struct類型時,可以使用PLC數據類型(UDT)代替。

維護成本增加:如果對一個Struct進行了多次復制,則在更改過程中該Struct也必需進行相應的多次更改。

Struct與 PLC 數據類型(UDT)的相同結構不兼容。

由于系統會檢查所有結構元素的類型是否匹配,因而會導致性能下降。

存儲空間要求增加:每個Struct都是一個單獨的對象,其描述信息將加載到PLC中。

Struct應用案例

1. 單獨使用組成該Struct的元素時,和普通的變量沒有區別,只是每出現一個Struct的嵌套層級,變量名增加一個前綴,如圖1-2所示。

3e42ab64-0bf7-11ed-ba43-dac502259ad0.jpg

圖1 Struct的定義

3e649198-0bf7-11ed-ba43-dac502259ad0.jpg

圖2 Struct的使用

2. Struct可以將一種類型變量放在一起,利于區分,如圖3-4所示。

3e89b19e-0bf7-11ed-ba43-dac502259ad0.jpg

圖3 原始結構

3ea85518-0bf7-11ed-ba43-dac502259ad0.jpg

圖4 增加了Struct類型的結構

圖4和圖3功能明顯相同,但圖4相對圖3,分類更加清晰。

3. 通訊程序中,通??梢园研枰l送的數據放在一個Struct中,即看做一個整體,這樣在發送區只需填寫一個變量即可,如圖5所示。

3ecf7774-0bf7-11ed-ba43-dac502259ad0.jpg

圖5 使用了圖4定義的Struct類型

4. MOVE指令支持相同Struct類型的直接傳送,如果傳送雙方是大量數據,并且結構相同,可以先分別將雙方數據建立在一個結構,然后用一個MOVE指令一次傳送即可,如圖6所示。

3f09f610-0bf7-11ed-ba43-dac502259ad0.jpg

程序中直接MOVE,即可傳送整個Struct,而不需要若干MOVE。并且,即使兩邊Struct中的對應元素名稱不同也可以傳送成功,如圖7所示。

3f8ef5ae-0bf7-11ed-ba43-dac502259ad0.jpg

圖7 Struct的傳送

審核編輯:彭靜

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

    關注

    4985

    文章

    12541

    瀏覽量

    456343
  • 數據
    +關注

    關注

    8

    文章

    6550

    瀏覽量

    87868
  • Struct
    +關注

    關注

    0

    文章

    29

    瀏覽量

    10822

原文標題:結構數據類型(Struct)

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

收藏 人收藏

    評論

    相關推薦

    C語言結構體史上最詳細的講解【軟件干貨】

    struct結構數據類型 前言 我們知道,在C語言中有一些基本的數據類型,如?char?int?float?long?double?string(c99) 等等
    的頭像 發表于 03-28 17:52 ?520次閱讀

    plc數據類型怎么理解和應用

    PLC(可編程邏輯控制器)是一種工業自動化設備,用于控制機械和工業過程。在PLC編程中,數據類型是非常重要的概念,因為它決定了程序中數據的存儲和處理方式。正確理解和應用PLC數據類型是編寫有效、可靠
    的頭像 發表于 12-19 11:39 ?2250次閱讀

    oracle的數據類型有哪些

    Oracle數據庫中有許多數據類型可供選擇,每種數據類型都有其各自的特點和適用場景。下面是對Oracle數據庫中最常用的數據類型的詳盡說明,
    的頭像 發表于 12-05 16:45 ?926次閱讀

    redis的五種數據類型底層數據結構

    Redis是一種內存數據存儲系統,支持多種數據結構。這些數據結構不僅可以滿足常見的存儲需求,還能夠通過其底層數據結構提供高效的操作和查詢。以下是Redis中常用的五種
    的頭像 發表于 11-16 11:18 ?472次閱讀

    C語言結構體(struct)用法詳解

    在實際的開發過程中,一組數據往往具有不同的數據類型,此時數組是不能夠滿足需求了。因為數組中各元素的類型必須是一致的。為了解決這個需求,C中給出了另一種數據類型-
    的頭像 發表于 11-15 16:11 ?754次閱讀
    C語言<b class='flag-5'>結構</b>體(<b class='flag-5'>struct</b>)用法詳解

    Redis數據類型介紹

    支持五種數據類型:string(字符串),hash(哈希),list(列表),set(集合)及zset(有序集合)。 string(字符串) 字符串類型是Redis的最基本數據結構。 字符串
    的頭像 發表于 10-09 10:53 ?591次閱讀
    Redis<b class='flag-5'>數據類型</b>介紹

    Redis的數據類型有哪些

    Redis的數據類型有哪些?有五種常用數據類型:String、Hash、Set、List、SortedSet。以及三種特殊的數據類型:Bitmap、HyperLogLog、Geospatial
    的頭像 發表于 10-09 10:51 ?475次閱讀

    FreeRTOS使用的數據類型有哪些

    數據類型 FreeRTOS 使用的數據類型主要分為 stdint.h 文件中定義的和自己定義的。其中 char 和 char * 定義的變量要特別注意。 FreeRTOS 主要自定義了以下四種數據類型
    的頭像 發表于 09-28 11:49 ?485次閱讀

    PLC 數據類型 (UDT) 的基本知識

    ,也可直接使用關鍵字 STRUCT 聲明為一個結構。因此,嵌套深度限制為 8 級。 PLC 數據類型 (UDT) 可在程序代碼中統一更改和重復使用。系統自動更新該數據類型的所用使用位置
    的頭像 發表于 09-10 09:46 ?3225次閱讀
    PLC <b class='flag-5'>數據類型</b> (UDT) 的基本知識

    F型PLC數據類型與標準PLC數據類型(UDT)之間的差別在哪?

    可以像使用標準 PLC 數據類型 (UDT) 那樣,聲明和使用 F 型 PLC 數據類型 (UDT) ??梢栽诎踩绦蛑幸约皹藴视脩舫绦蛑惺褂?F 型 PLC 數據類型 (UDT) 。
    的頭像 發表于 08-27 09:54 ?827次閱讀
    F型PLC<b class='flag-5'>數據類型</b>與標準PLC<b class='flag-5'>數據類型</b>(UDT)之間的差別在哪?

    淺談PLC定義數據類型的應用

    PLC定義數據類型以下用一個例子介紹PLC定義數據類型的應用,以便進一步理解PLC定義數據類型。
    的頭像 發表于 07-24 16:07 ?949次閱讀
    淺談PLC定義<b class='flag-5'>數據類型</b>的應用

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

    西門子PLC(Programmable Logic Controller)的自定義數據類型(User Defined Type,簡稱UDT)是一種自定義的數據結構,可以根據具體需求定義一種包含多個不同數據類型
    的頭像 發表于 07-19 15:01 ?2306次閱讀
    西門子PLC UDT<b class='flag-5'>數據類型</b>的使用方法

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

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

    ARRAY 數據類型的變量

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

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

    要聲明 STRUCT 數據類型的變量,請按以下步驟操作。
    的頭像 發表于 06-21 09:32 ?3144次閱讀
    亚洲欧美日韩精品久久_久久精品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>