999久久久精品国产消防器材,国产成人久久综合77777,√最新版天堂资源网在线,精品久久久久区二区8888,卡一卡二卡三乱码视频

技成培訓(xùn)網(wǎng) 技成學(xué)習(xí)APP 技成工具箱 技成企業(yè)服務(wù)

歡迎回到技成培訓(xùn)網(wǎng)

技成培訓(xùn)網(wǎng)

電工題庫寶典

技成電工課堂

PLC練習(xí)題

技成PLC課堂

變頻器故障查詢

技成PLC學(xué)吧

伺服驅(qū)動故障查詢

技成PLC網(wǎng)校

當(dāng)前位置:技成首頁 > 文章中心 > 西門子PLC > 西門子PLC用戶程序結(jié)構(gòu)的生成與使用

西門子PLC用戶程序結(jié)構(gòu)的生成與使用

發(fā)布于2022-11-17 10:07 60 2 標(biāo)簽:西門子PLC

  (1)結(jié)構(gòu)的生成

  可以在數(shù)據(jù)塊中或邏輯塊的變量聲明表中定義結(jié)構(gòu),下面介紹在數(shù)據(jù)塊中定義的方法。在圖4-7的數(shù)據(jù)塊DB4中,同時定義了一個數(shù)組和一個結(jié)構(gòu)。名為STACK的結(jié)構(gòu)由3個不同數(shù)據(jù)類型的變量組成。

  選中圖4-7“ARRAY”下面的“INT”,按回車鍵,在該單元的下面生成一個空白行。在“名稱”列輸入結(jié)構(gòu)的名稱“STACK”,用鼠標(biāo)右鍵點(diǎn)擊空白行的“類型”列單元,執(zhí)行彈出的快捷菜單中的“復(fù)雜類型”→“STRUCT”(也可以直接輸入STRUCT),連續(xù)按回車鍵后,在該行的下面出現(xiàn)新的行,新的行下面一行增加的“END_STRUCT”(結(jié)束結(jié)構(gòu))是自動生成的,表示該結(jié)構(gòu)的結(jié)束。在新的行輸入結(jié)構(gòu)的第一個元素“AMOUNT”和它的數(shù)據(jù)類型。如果沒有輸入該元素的初值,將會自動生成默認(rèn)的初值0。用同樣的方法生成結(jié)構(gòu)的其他元素。選中結(jié)構(gòu)的“END_STRUCT”單元后按回車鍵,在下面出現(xiàn)的新的行中定義一個名為Fault、長度為20個字符的字符串。

  圖4-7的STACK所在行的地址列中的 12.0表示結(jié)構(gòu)在數(shù)據(jù)塊中的起始地址為DBB12。結(jié)構(gòu)各元素的地址列中的“ 2.0”等表示結(jié)構(gòu)元素在結(jié)構(gòu)中的相對起始地址,“=8.0”表示該結(jié)構(gòu)一共占用8B。最后一行地址列中的“=42.0”表示DB4中的數(shù)組、結(jié)構(gòu)和字符串一共占用42B??梢詾榻Y(jié)構(gòu)中各個元素設(shè)置初始值和加上注釋。在圖4-7中輸入實(shí)數(shù)的初始值102.4后,被自動轉(zhuǎn)換為1.024000e 002(1.024×102)。

  用鼠標(biāo)點(diǎn)擊結(jié)構(gòu)的第一行或最后一行(即有關(guān)鍵字STRUCT或END_STRUCT的行)的地址列中的單元,將選中整個結(jié)構(gòu),結(jié)構(gòu)各行的背景變?yōu)楹谏?,字變?yōu)榘咨?稱為反色)。若要選中結(jié)構(gòu)中的某一參數(shù),用鼠標(biāo)點(diǎn)擊該行的地址單元,僅該行反色。

  (2)訪問結(jié)構(gòu)中的元素

  可以用結(jié)構(gòu)中的元素的絕對地址或符號地址來訪問結(jié)構(gòu)中的元素。訪問結(jié)構(gòu)中的數(shù)據(jù)時,需要指出結(jié)構(gòu)所在的數(shù)據(jù)塊的名稱、結(jié)構(gòu)的名稱,以及結(jié)構(gòu)元素的名稱,數(shù)據(jù)塊TANK 內(nèi)結(jié)構(gòu)STACK的元素AMOUNT應(yīng)表示為“TANK”.STACK.AMOUNT。因?yàn)锳MOUNT從數(shù)據(jù)塊TANK(DB4)的第12號字節(jié)開始存放,它的絕對地址為DB4.DBW12。

  (3)用結(jié)構(gòu)傳遞參數(shù)

  如果在塊的變量聲明表中,聲明形參的類型為數(shù)組或結(jié)構(gòu),可以將整個數(shù)組或結(jié)構(gòu)而不是它們的某個元素作為參數(shù)來傳遞。調(diào)用塊時也可以將某個數(shù)組或結(jié)構(gòu)的元素賦值給同一類型的參數(shù)。

  將復(fù)雜數(shù)據(jù)類型的變量作為參數(shù)傳遞時,作為形參和實(shí)參的兩個變量必須具有相同的數(shù)據(jù)結(jié)構(gòu),例如兩個結(jié)構(gòu)應(yīng)具有相同數(shù)據(jù)類型的結(jié)構(gòu)元素和相同的排列順序。

  用戶定義數(shù)據(jù)類型的生成與使用

  選中SIMATIC管理器左邊窗口中的“塊”,執(zhí)行菜單命令“插人”→“S7塊”→“數(shù)據(jù)類型”,生成新的UDT。在生成UDT的元素時,可以設(shè)置它的初始值和加上注釋。從表面上看,圖4-9的UDT1與圖4-7中定義的結(jié)構(gòu)STACK完全相同,但是它們有本質(zhì)的區(qū)別。

  結(jié)構(gòu)(STRUCT)是在數(shù)據(jù)塊的聲明視圖方式或在邏輯塊的變量聲明表中與別的變量一起定義的,但是UDT必須在特殊的數(shù)據(jù)塊內(nèi)單獨(dú)定義,并單獨(dú)存放在一個數(shù)據(jù)塊內(nèi)。生成UDT后,在定義變量時將它作為一個數(shù)據(jù)類型來多次使用,例如在變量聲明表中定義一個變量,其數(shù)據(jù)類型為UDT1,名稱為ProData(見圖4-10)。由該例可以看出,UDT在數(shù)據(jù)塊中的使用方法與其他數(shù)據(jù)類型(例如INT)是一樣的。


用戶定義數(shù)據(jù)結(jié)構(gòu)UDT


  UDT可以在邏輯塊(FC、FB和OB)的變量聲明表中作為基本數(shù)據(jù)類型或復(fù)雜數(shù)據(jù)類型來使用,或者在數(shù)據(jù)塊(DB)中作為變量的數(shù)據(jù)類型來使用。

  要訪問數(shù)據(jù)塊Heater中數(shù)據(jù)類型為UDT1的結(jié)構(gòu)ProData中的元素AMOUNT,其符號地址為“Heater”.ProData. AMOUNT。

  可以將具有用戶定義數(shù)據(jù)類型的變量作為參數(shù)來傳遞。如果在塊的變量聲明表中,聲明形參的數(shù)據(jù)類型為UDT1,在調(diào)用塊時應(yīng)使用具有相同數(shù)據(jù)類型的變量來傳遞參數(shù)。在調(diào)用塊時也可以將用戶定義數(shù)據(jù)類型中的元素賦值給同一類型的形參。

  用戶定義數(shù)據(jù)類型也可以用來作為生成具有相同數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)塊的摸板。

若有收獲,就點(diǎn)個贊吧!

文章來源于網(wǎng)絡(luò)及文獻(xiàn)如有侵權(quán)請聯(lián)系站長
分享到:

微信掃一掃分享

閱讀與本文標(biāo)簽相同的文章

西門子PLC

相關(guān)推薦

最新文章 熱門文章
最新課程 免費(fèi)課程
PLC資料下載 電工電氣資料下載
應(yīng)用新秀
變頻器故障代碼查詢APP
伺服故障代碼查詢APP
技成
手機(jī)APP
熱門標(biāo)簽