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中使用。
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)線的廠家尤為有用。編程人員為設(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ù)使用。
上海邑斯自動(dòng)化科技有限公司專(zhuān)注于PLC,變頻器,觸摸屏等
詞條
詞條說(shuō)明
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中使用。與此
? ? ? ?在PLC編程軟件規(guī)范里,變量命名本身就是一門(mén)學(xué)問(wèn)。西門(mén)子S7-200PLC的符號(hào)表就是做變量命名工作的,毫不夸張的說(shuō),每一個(gè)使用S7-200的人都應(yīng)該熟練掌握它,如果你對(duì)它不屑一顧,覺(jué)得自己從來(lái)不用它也同樣可以做得很好,那么,你還不能算一個(gè)真正的程序員。? ? ? ?使用符號(hào)表,有程序可讀性好,資源分配
西門(mén)子PLC選型常見(jiàn)問(wèn)題分析
西門(mén)子plc按照小型、中型、大型分為三種,依次為:S7-20,S7-300,S7-400系列,近年來(lái)又開(kāi)發(fā)出LOGO!系列,西門(mén)子plc的選型與一般PLC選型原則無(wú)異。一、輸入輸出(I/O)點(diǎn)數(shù)的估算二、存儲(chǔ)器容量的估算三、控制功能的選擇四、機(jī)型的選擇1、200PLC的處理器是多少位的S7-200 CPU的*處理芯片數(shù)據(jù)長(zhǎng)度為32位.從CPU累加器AC0/AC1/AC2/AC3的數(shù)據(jù)長(zhǎng)度也可以看
西門(mén)子PLC常見(jiàn)故障問(wèn)題解答
問(wèn)題: CPU全面復(fù)位后哪些設(shè)置會(huì)保留下來(lái)?解答: 當(dāng)復(fù)位CPU時(shí),內(nèi)存沒(méi)有被完全刪除。整個(gè)主內(nèi)存被完全刪除了,但加載內(nèi)存中數(shù)據(jù),以及保存在Flash-EPROM存儲(chǔ)卡(MC)或微存儲(chǔ)卡(MMC)上的數(shù)據(jù),則會(huì)全部保留下來(lái)。除了加載內(nèi)存以外,計(jì)時(shí)器(CPU 312 IFM除外)和診斷緩沖也被保留。具有MPI接口或一個(gè)組合MPI/DP接口的CPU只在全部復(fù)位之前保留接口所采用的當(dāng)前地址和波特率。另一
公司名: 上海邑斯自動(dòng)化科技有限公司
聯(lián)系人: LY
電 話: 17621747610
手 機(jī): 15723674756
微 信: 15723674756
地 址: 上海金山楓涇上海市金山區(qū)楓涇鎮(zhèn)涇商路99弄3218
郵 編:
網(wǎng) 址: 17621747610.b2b168.com
公司名: 上海邑斯自動(dòng)化科技有限公司
聯(lián)系人: LY
手 機(jī): 15723674756
電 話: 17621747610
地 址: 上海金山楓涇上海市金山區(qū)楓涇鎮(zhèn)涇商路99弄3218
郵 編:
網(wǎng) 址: 17621747610.b2b168.com