1.什么是全局變量和局部變量?
以西門(mén)子的S7-200為例,輸入I、輸出Q、變量存儲(chǔ)器V、內(nèi)部存儲(chǔ)器位M、定時(shí)器T、計(jì)數(shù)器C等屬于全局變量,可以在符號(hào)表中為全局變量定義符號(hào)名。
程序組織單元(Program Organizational Unit)簡(jiǎn)稱(chēng)為POU,包括主程序、子程序和中斷程序。每個(gè)POU均有自己的64字節(jié)局部變量,局部變量用L(Local)來(lái)表示,局部變量只能在它所在的POU中使用。與此相反,全局變量可以在各POU中使用。
西門(mén)子PLC中變量的關(guān)系
2.局部變量有哪些類(lèi)型?
子程序可以使用下列局部變量:
1) TEMP (臨時(shí)變量)是暫時(shí)保存在局部數(shù)據(jù)區(qū)中的變量。只有在執(zhí)行該P(yáng)OU時(shí),定義的臨時(shí)變量才被使用,POU執(zhí)行完后,不再保存臨時(shí)變量的數(shù)值。主程序和中斷程序的局部變量表中只有TEMP變量。
2) IN(輸入?yún)?shù))由調(diào)用它的POU提供的傳入子程序的輸入?yún)?shù)。
3) OUT(輸出參數(shù))是子程序的執(zhí)行結(jié)果,它被返回給調(diào)用它的POU。
4) IN_OUT(輸入_輸出參數(shù))的初始值由調(diào)用它的POU傳送給子程序,并用同一變量將子程序的執(zhí)行結(jié)果返回給調(diào)用它的POU。
主程序和中斷程序的局部變量表中只有臨時(shí)變量TEMP。
3.子程序的輸入、輸出參數(shù)有什么作用?
具有輸入、輸出參數(shù)和局部變量的子程序易于實(shí)現(xiàn)結(jié)構(gòu)化編程,對(duì)于長(zhǎng)期生產(chǎn)同類(lèi)設(shè)備或生產(chǎn)線(xiàn)的廠(chǎng)家尤為有用。編程人員為設(shè)備的各部件或工藝功能編寫(xiě)了大量的通用的子程序。即使不知道子程序的內(nèi)部代碼,只要知道子程序的功能和輸入、輸出參數(shù)的意義,就可以用它們快速“組裝”出滿(mǎn)足不同的用戶(hù)要求的控制程序。就好像可以用數(shù)字集成電路芯片組成復(fù)雜的數(shù)字電路一樣。
如果子程序沒(méi)有輸入、輸出參數(shù),這種子程序沒(méi)有明確的軟件接口,使用起來(lái)很不方便。
4.局部變量有什么優(yōu)點(diǎn)?
1) 子程序如果沒(méi)有局部變量,它和調(diào)用它的程序之間只能通過(guò)全局變量來(lái)交換數(shù)據(jù),子程序內(nèi)部也只能使用全局變量。將它移植到別的項(xiàng)目時(shí),需要對(duì)各POU使用的全局變量作統(tǒng)一安排,以保證不會(huì)出現(xiàn)地址沖突。當(dāng)程序很復(fù)雜,子程序很多時(shí),這種地址分配是很花時(shí)間的。
如果子程序有局部變量,并且在子程序中只使用局部變量,不使用全局變量,因?yàn)榕c其他POU沒(méi)有地址沖突,不作任何改動(dòng),就可以將子程序移植到別的項(xiàng)目中去。
為了減少移植子程序的工作量,在子程序中應(yīng)盡量避免使用全局變量和全局符號(hào)。
2) 如果使用局部變量表中的臨時(shí)變量(TEMP),同一片物理存儲(chǔ)器可以在不同的程序中重復(fù)使用。
上海朝堂電氣技術(shù)有限公司專(zhuān)注于西門(mén)子PLC,變頻器,伺服驅(qū)動(dòng)系統(tǒng),觸摸屏,電線(xiàn)電纜等, 歡迎致電 13916490489
詞條
詞條說(shuō)明
? ? ? CPU是PLC的**,每套PLC至少有一個(gè)CPU,它按系統(tǒng)程序接收并存儲(chǔ)用戶(hù)程序和數(shù)據(jù),西門(mén)子S7-200系列plc共有4個(gè)不同的基本型號(hào)、8種CPU供選擇。? ? ? ?西門(mén)子PLC四種CPU型號(hào) 1.CPU 221 CPU 221集成了6輸入/4輸出共10個(gè)數(shù)字量I/O點(diǎn),無(wú)I/O擴(kuò)展能力;6K字節(jié)程序和數(shù)據(jù)存儲(chǔ)
? ? ? 西門(mén)子PLC CPU的控制程序由主程序、子程序和中斷程序組成。STEP 7-Micro/WIN 32在程序編輯器窗口里為每個(gè)POU(程序組織單元)提供一個(gè)獨(dú)立的頁(yè)。主程序總是*1頁(yè),后面是子程序或中斷程序。因?yàn)楦鱾€(gè)程序在編輯器窗口里被分開(kāi),編譯時(shí)在程序結(jié)束的地方自動(dòng)加入無(wú)條件結(jié)束指令或無(wú)條件返回指令。用戶(hù)程序只能使用條件結(jié)束和條件返回指令。? &
西門(mén)子PLC開(kāi)關(guān)電源的選型方法
? ? ?在工業(yè)自動(dòng)化控制領(lǐng)域,控制系統(tǒng)中設(shè)備的穩(wěn)定運(yùn)行需要電源。西門(mén)子SITOP電源在穩(wěn)定性,可靠性方面有很?chē)?yán)格的標(biāo)準(zhǔn),有效的防止由于電源供電問(wèn)題導(dǎo)致設(shè)備及生產(chǎn)線(xiàn)停止運(yùn)行,從而保證了工廠(chǎng)運(yùn)行的效率和客戶(hù)利益的較大化。? ? ? 在西門(mén)子PLC組成的控制系統(tǒng)中,有時(shí)根據(jù)實(shí)際需求,要選擇一個(gè)合適的開(kāi)關(guān)電源來(lái)對(duì)設(shè)備進(jìn)行供電。本文下面就為您介紹
西門(mén)子PLC變量類(lèi)型自動(dòng)轉(zhuǎn)換小技巧
? ? ? 西門(mén)子PLC,S7-200系列內(nèi)存格式與我們常用PC機(jī)正好相反,它是高字前,低字后。我們可以將字變量放后兩個(gè)字節(jié),程序初始化時(shí)將前兩個(gè)字節(jié)清零(程序其它方不使用這兩個(gè)字節(jié))。? ? ? ?如我們定義符號(hào)時(shí)將字變量定義VW2,同時(shí)保持VW0值為零。則程序中可以用VW2以字型訪(fǎng)問(wèn)該變量,同時(shí)也可以VD0以雙字型訪(fǎng)問(wèn),避免
公司名: 上海朝堂電氣技術(shù)有限公司
聯(lián)系人: 周工
電 話(huà): 0158-21341807
手 機(jī): 13916490489
微 信: 13916490489
地 址: 上海松江文誠(chéng)路2188弄416號(hào)
郵 編:
網(wǎng) 址: fhkykj.b2b168.com
四川1FL6024-2AF21-1MG1 功能完警 可靠性高
山東1FL6022-2AF21-1LB1 結(jié)構(gòu)業(yè)務(wù) 使用方便
浙江1FL6022-2AF21-1AB1 靜音低噪 操作靈活
浙江1FL6022-2AF21-1MG1 功能完警 可靠性高
江蘇1FL6022-2AF21-1LA1 靜電保護(hù) 性能穩(wěn)定
V90伺服電機(jī) 1FL6064-1AC61-2LB1 操作靈活 結(jié)構(gòu)業(yè)務(wù)
V90控制器 6SL3210-5FB10-8UF0 使用方便 靜電保護(hù)
上海 6SL3210-5FB10-8UA0供應(yīng) 便于安裝 靜音低噪
公司名: 上海朝堂電氣技術(shù)有限公司
聯(lián)系人: 周工
手 機(jī): 13916490489
電 話(huà): 0158-21341807
地 址: 上海松江文誠(chéng)路2188弄416號(hào)
郵 編:
網(wǎng) 址: fhkykj.b2b168.com