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

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

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

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

電工題庫(kù)寶典

技成電工課堂

PLC練習(xí)題

技成PLC課堂

變頻器故障查詢

技成PLC學(xué)吧

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

技成PLC網(wǎng)校

當(dāng)前位置:技成首頁(yè) > 文章中心 > 西門子PLC > 西門子PLC局部變量表與子程序使用技巧有哪些

西門子PLC局部變量表與子程序使用技巧有哪些

發(fā)布于2022-10-21 14:36 42 2 標(biāo)簽:西門子PLC

  局部變量表

  1.局部變量與全局變量

  程序中的每個(gè)POU(Program Organizational Unit,程序組織單元)均有白己的由64字節(jié)L存儲(chǔ)器組成的局部變量表。它們用來(lái)定義有范圍限制的變量,局部變量只在它被創(chuàng)建的POU中有效。與之相反,全局符號(hào)在各POU中均有效,只能在符號(hào)表/全局變量表中定義。全局符號(hào)與局部變量名稱相同時(shí),在定義局部變量的POU中,該局部變量的定義優(yōu)先,該全局定義則在兒它POU中使用。

  局部變量適用于以下兩種情況:

  (1)在子程序中只用局部變量,不用絕對(duì)地址或全局符號(hào),子程序可移植到別的項(xiàng)目去。

  (2)如果使用臨時(shí)變量(TEMP),同一片物理存儲(chǔ)器可在不同的程序中重復(fù)使用。

  如果不是上述兩種情況,不需要使用局部變量。通過(guò)在符號(hào)表(SIMATIC)或全局變量表(IEC)中進(jìn)行定義,可使符號(hào)成為全局變量。


西門子PLC局部變量表與子程序使用技巧有哪些


  2.局部變量的類型

  TEMP(臨時(shí)變量):暫時(shí)保存在局部數(shù)據(jù)區(qū)中的變量。只有在執(zhí)行該P(yáng)OU時(shí),定義的臨時(shí)變量才被使用,POU執(zhí)行完后,不再使用臨時(shí)變量的數(shù)值。在主程序或中斷程序中.局部變量表只包含TEMP變量。子程序中的局部變量表還有下面的3種變量:

  IN(輸人變量):由調(diào)用它的POU提供的輸人參數(shù)。

  OUT(輸出變量);返回給調(diào)用它的POU的輸出參數(shù)。

  IN_OUT(輸人/輸出變量);其初始值由調(diào)用它的POU提供,被子程序修改后返問(wèn)給調(diào)用它的POU。

  3.局部變量的賦值

  在局部變量表中賦值時(shí),只需指定聲明局部變量的類型(TEMP,IN,IN_OUT或OUT)和數(shù)據(jù)類型(參見(jiàn)SIMATIC和IEC1131-3的數(shù)據(jù)類型),但不指定存儲(chǔ)器地址,程序編輯器自動(dòng)地在L存儲(chǔ)區(qū)中為所有局部變量指定存儲(chǔ)器位置。

  4.在局部變量表中增加新的變量

  對(duì)于主程序與中斷程序,局部變量表顯示一組已被預(yù)先定義為TEMP(臨時(shí))變量的行。要向表中增加行,只需用右鍵單擊表中的某一行,選擇“插人→行"指令,在所選行的上部插人新的行,選擇“插人→行下"指令,在所選行的下部插人新的行。

  對(duì)于子程序,局部變量表顯示數(shù)據(jù)類型被預(yù)先定義為IN、IN_OUT.OUT和TEMP的一系列行,不能改變它們的順序。如果要增加新的局部變量,必須用鼠標(biāo)右鍵單擊已有的行,并用彈出菜單在所擊行的上下插人相同類型的另一局部變量。

  5.局部變量數(shù)據(jù)類型檢查

  局部變量作為參數(shù)向子程序傳遞時(shí),在該子程序的局部變量表中指定的數(shù)據(jù)類型必須調(diào)用POU中的數(shù)據(jù)類型值匹配。

  例如從主程序0B1調(diào)用子程序SBR0,使用名為INPUT1的全局符號(hào)作為子程序的輸人參數(shù)。在SBRO的局部變量表中,已經(jīng)定義了一個(gè)名為FIRST的局部變量作為該輸入?yún)?shù),當(dāng)0B1調(diào)用SBR0時(shí),INPUTI的數(shù)值被傳人FIRST,INPUTI和FIRST的數(shù)據(jù)類型必須匹配。

  6.顯示或隱藏局部變量表

  將水平分裂條拉至程序編輯器視窗的傾部,則不再疑示局部變量表,但它仍然存在。將分裂條下拉,將再次顯示局部變量表。

  7.在局部變量表中進(jìn)行賦值

  在程序中使用符號(hào)名時(shí),程序編輯器首先檢查有關(guān)POU的局部變量表,然后檢查符號(hào)表/全局變量表。如果某符號(hào)名在兩處都沒(méi)有定義,程序編輯器則將其視為全局符號(hào),程序編輯器指定一條綠色波浪狀下畫線,并將名稱括在雙引號(hào)中,例如"UndefinedLocalVar(未定義的局部變量)。如果后來(lái)對(duì)該符號(hào)名賦了值,程序編輯器不會(huì)自動(dòng)再次讀取局部變量表并修改它。為了將該符號(hào)名作為局部變量使用,必須手工刪除程序代碼中的引號(hào),并在符號(hào)名前插人#號(hào),例如改為#UndefinedLocalVar。

  各子程序最多可調(diào)用16個(gè)輸人/輸出參數(shù),如果超出16個(gè),將返回錯(cuò)誤。

  選擇希望的變量類型所在的行,并在名稱域中鍵人變量名稱,在數(shù)據(jù)類型城中鍵人數(shù)據(jù)類型。不需在局部變量表中的安量名稱前加并號(hào),#號(hào)只在程序代碼中的局部變量名之前使用。

  局部變量名可包含數(shù)字、字母和下畫號(hào)(“_”),也可以包含擴(kuò)展字符(ASII128-ASCII255)。第一個(gè)字符必須是字可或擴(kuò)展字符,關(guān)鍵字不能作為符號(hào)名。

  局部變量表中的變量名被下載和存儲(chǔ)在CPU存儲(chǔ)器中,使用較長(zhǎng)的變量名將占用較多的存儲(chǔ)空問(wèn)。

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

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

微信掃一掃分享

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

西門子PLC

相關(guān)推薦

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