• <cite id="uwv89"></cite>
      1. 亚洲综合小综合中文字幕,国产久爱免费精品视频,精品国产品香蕉在线,国产午夜精品在人线播放,精品一二三四区在线观看,国产成人无码免费看视频软件 ,色欲久久人妻内射,午夜在线观看成人av
        ffd001
        級別: 家園常客
        精華主題: 0
        發(fā)帖數(shù)量: 136 個(gè)
        工控威望: 700 點(diǎn)
        下載積分: 584 分
        在線時(shí)間: 162(小時(shí))
        注冊時(shí)間: 2013-10-17
        最后登錄: 2023-06-02
        查看ffd001的 主題 / 回貼
        樓主  發(fā)表于: 2013-11-29 20:41
        1.程序家族有哪些成員?
            PLC的控制程序一般由主程序、子程序和中斷程序組成。西門子的S7-300/400將子程序分為功能(Function,或稱為函數(shù))和功能塊(Function Block)。
            在每一個(gè)掃描循環(huán)周期,CPU都要調(diào)用一次主程序,用戶程序必須有一個(gè)并且只能有一個(gè)主程序。小型控制系統(tǒng)可以只有主程序。
            中斷程序用于快速響應(yīng)中斷事件。在中斷事件發(fā)生時(shí),CPU將停止執(zhí)行當(dāng)時(shí)正在處理的程序或任務(wù),去執(zhí)行用戶編寫的中斷程序。執(zhí)行完中斷程序后,繼續(xù)執(zhí)行被暫停執(zhí)行的程序或任務(wù)。
            2.哪些情況需要使用子程序?
            當(dāng)系統(tǒng)規(guī)模很大、控制要求復(fù)雜時(shí),如果將全部控制任務(wù)放在主程序中,主程序?qū)浅?fù)雜,既難以調(diào)試,也難以閱讀。使用子程序可以將程序分成容易管理的小塊,使程序結(jié)構(gòu)簡單清晰,易于調(diào)試、查錯(cuò)和維護(hù)。
            子程序也可以用于需要多次反復(fù)執(zhí)行相同任務(wù)的地方,只需要編寫一次子程序,別的程序在需要的時(shí)候多次調(diào)用它,而無需重寫該程序。
            3.怎樣調(diào)用子程序?
            主程序可以調(diào)用子程序,子程序也可以嵌套調(diào)用別的子程序。嵌套調(diào)用的層數(shù)是有限制的,例如S7-200的最大嵌套深度為8級。
            執(zhí)行完子程序后,返回調(diào)用它的程序中的調(diào)用指令的下一條指令。
            4.每個(gè)掃描周期都會執(zhí)行子程序嗎?
            子程序的調(diào)用可以是有條件的,在被調(diào)用期間,每個(gè)掃描周期都要執(zhí)行一次被調(diào)用的子程序。調(diào)用條件不滿足時(shí)不會執(zhí)行子程序中的指令,因此使用子程序可以減少掃描循環(huán)時(shí)間。
            5.停止調(diào)用子程序后,子程序中的線圈處于什么狀態(tài)?
            停止調(diào)用子程序后,不再執(zhí)行子程序中的指令。子程序中線圈對應(yīng)的編程元件如果沒有受到別的程序的控制,將保持子程序最后一次執(zhí)行后的狀態(tài)不變。即使控制這些線圈的觸點(diǎn)的狀態(tài)變化,該線圈對應(yīng)的元件的狀態(tài)也不會變化,因?yàn)檫@時(shí)根本就沒有執(zhí)行子程序中的指令。
            6.怎樣實(shí)現(xiàn)子程序的無條件調(diào)用?
            有的PLC的子程序調(diào)用指令不能直接接到左側(cè)的垂直“電源”線上,需要通過觸點(diǎn)電路來控制是否調(diào)用子程序,即子程序的調(diào)用是有條件的。可以用一直為ON的特殊位元件(例如S7-200的SM0.0或FX系列的M8000)的常開觸點(diǎn)來實(shí)現(xiàn)子程序的無條件調(diào)用。
              不同品牌的PLC的子程序大致可以分為兩種,一種子程序沒有輸入、輸出參數(shù)和局部變量,另一種則有。
               1.什么是全局變量和局部變量?
                以西門子的S7-200為例,輸入I、輸出Q、變量存儲器V、內(nèi)部存儲器位M、定時(shí)器T、計(jì)數(shù)器C等屬于全局變量,可以在符號表中為全局變量定義符號名。
               程序組織單元(Program Organizational Unit)簡稱為POU,包括主程序、子程序和中斷程序。每個(gè)POU均有自己的64字節(jié)局部變量,局部變量用L(Local)來表示,局部變量只能在它所在的POU中使用。與此相反,全局變量可以在各POU中使用。
               2.局部變量有哪些類型?
               子程序可以使用下列局部變量:
               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)化編程,對于長期生產(chǎn)同類設(shè)備或生產(chǎn)線的廠家尤為有用。編程人員為設(shè)備的各部件或工藝功能編寫了大量的通用的子程序。即使不知道子程序的內(nèi)部代碼,只要知道子程序的功能和輸入、輸出參數(shù)的意義,就可以用它們快速“組裝”出滿足不同的用戶要求的控制程序。就好像可以用數(shù)字集成電路芯片組成復(fù)雜的數(shù)字電路一樣。
               如果子程序沒有輸入、輸出參數(shù),這種子程序沒有明確的軟件接口,使用起來很不方便。
               4.局部變量有什么優(yōu)點(diǎn)?
               1) 子程序如果沒有局部變量,它和調(diào)用它的程序之間只能通過全局變量來交換數(shù)據(jù),子程序內(nèi)部也只能使用全局變量。將它移植到別的項(xiàng)目時(shí),需要對各POU使用的全局變量作統(tǒng)一安排,以保證不會出現(xiàn)地址沖突。當(dāng)程序很復(fù)雜,子程序很多時(shí),這種地址分配是很花時(shí)間的。
               如果子程序有局部變量,并且在子程序中只使用局部變量,不使用全局變量,因?yàn)榕c其他POU沒有地址沖突,不作任何改動,就可以將子程序移植到別的項(xiàng)目中去。
               為了減少移植子程序的工作量,在子程序中應(yīng)盡量避免使用全局變量和全局符號。
               2) 如果使用局部變量表中的臨時(shí)變量(TEMP),同一片物理存儲器可以在不同的程序中重復(fù)使用。
            下面以S7-200為例,介紹子程序的編程和調(diào)用的過程。
            1.創(chuàng)建子程序
            生成項(xiàng)目時(shí),自動生成一個(gè)子程序。打開程序編輯器,執(zhí)行“編輯”菜單中的命令“插入”→“子程序”,將自動生成和打開新的子程序。
            2.生成局部變量
            名為“模擬量計(jì)算”的子程序如下圖所示,在該子程序的局部變量表中,定義了3個(gè)輸入(IN)參數(shù),一個(gè)輸出(OUT)參數(shù),和名為“暫存1”的臨時(shí)(TEMP)變量。局部變量表最左邊的一列是自動分配的每個(gè)變量在局部存儲器(L)中的地址。

         
            3.編寫子程序的梯形圖
            局部變量表的下面是程序區(qū)(見上圖),輸入?yún)?shù)“轉(zhuǎn)換值”是來自模擬量輸入模塊的與模擬量成正比的轉(zhuǎn)換值,輸出參數(shù)“模擬值”是計(jì)算出的對應(yīng)的模擬量(例如壓力、溫度等)的工程值。子程序中變量名稱前的“#”表示該變量是局部變量,它是編程軟件自動添加的,輸入局部變量時(shí)不用輸入“#”號。特殊存儲器位SM0.0的常開觸點(diǎn)總是閉合。
            4.子程序的調(diào)用
            可以在主程序、其他子程序或中斷程序中調(diào)用子程序,調(diào)用子程序時(shí)將執(zhí)行子程序中的指令,直至子程序結(jié)束,然后返回調(diào)用它的程序中該子程序調(diào)用指令的下一條指令之處。
            創(chuàng)建子程序后,在上圖左邊指令樹最下面的“調(diào)用子程序”文件夾中自動生成剛創(chuàng)建的子程序“模擬量計(jì)算”對應(yīng)的圖標(biāo)。
            在梯形圖程序中插入子程序調(diào)用指令時(shí),首先打開主程序,顯示出需要調(diào)用子程序的網(wǎng)絡(luò)。打開指令樹最下面的“調(diào)用子程序”文件夾,用鼠標(biāo)左鍵按住需要調(diào)用的子程序圖標(biāo),將它“拖”到程序編輯器中需要的位置。放開左鍵,子程序塊便被放置在該位置。
         
            子程序方框中左邊的“轉(zhuǎn)換值”等是在子程序“模擬量計(jì)算”的變量聲明表中定義的輸入?yún)?shù),右邊的“模擬值”是輸出參數(shù)。它們被稱為子程序的形式參數(shù),簡稱為形參,形參在子程序內(nèi)部的程序中使用。調(diào)用子程序時(shí),需要為每個(gè)形參指定實(shí)際的參數(shù)(簡稱為實(shí)參),例如為形參“轉(zhuǎn)換值”指定的實(shí)參為模擬量輸入字AIW2(見上圖)。
            子程序調(diào)用指令中的實(shí)參的有效操作數(shù)為存儲器地址、常量、全局符號和調(diào)用指令所在的POU中的局部變量,不能指定被調(diào)用子程序中的局部變量。
            CPU調(diào)用子程序時(shí),輸入?yún)?shù)被復(fù)制到子程序的局部存儲器,子程序執(zhí)行完后,從局部存儲器復(fù)制輸出參數(shù)到指定的輸出參數(shù)地址。
        天行健
        janke120
        級別: 探索解密
        精華主題: 0
        發(fā)帖數(shù)量: 40 個(gè)
        工控威望: 144 點(diǎn)
        下載積分: 595 分
        在線時(shí)間: 30(小時(shí))
        注冊時(shí)間: 2013-11-12
        最后登錄: 2018-03-09
        查看janke120的 主題 / 回貼
        1樓  發(fā)表于: 2013-12-03 22:23
        好吧 贊一個(gè)  對初學(xué)者還是有用的

        主站蜘蛛池模板: 99热精品毛片全部国产无缓冲 | 亚洲精品美女一区二区| 国产亚洲精品国产福APP| 久久月本道色综合久久| 午夜福利一区二区在线看| 天天躁夜夜躁天干天干2020| 国产精品任我爽爆在线播放6080| 最近中文国语字幕在线播放| 99国精品午夜福利视频不卡99| gogo无码大胆啪啪艺术| 国产一区在线观看不卡| 日本一区二区三区东京热| 国产高清亚洲一区亚洲二区| 久久天天躁狠狠躁夜夜不卡 | 九九热在线观看视频精品| 亚洲偷偷自拍码高清视频| 亚洲国产精品久久久久秋霞| 中文字幕日韩精品有码| 国产在线高清视频无码| 国产成人精选视频在线观看不卡| 免费现黄频在线观看国产| 亚洲国内精品一区二区| 肉大捧一进一出免费视频| 色一情一乱一伦麻豆| 麻豆一区二区中文字幕| 国产黑色丝袜在线播放| 开心五月激情综合久久爱| 国产免费午夜福利片在线| 国产中年熟女高潮大集合| 久久国产精品乱子乱精品| 国产午夜精品一区二区三| 国产乱码精品一区二三区| 少妇真人直播免费视频| 扒开粉嫩的小缝隙喷白浆视频| 国产激情视频在线观看首页| 亚洲国产成人久久综合三区| 亚洲综合成人av在线| 亚洲成人av在线系列| 亚洲日韩性欧美中文字幕| 亚洲精品一区二区区别| 亚洲午夜成人精品电影在线观看|