<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 電源與新能源 > 設(shè)計(jì)應(yīng)用 > 不可不知的小貼士:?jiǎn)纹瑱C(jī)與PLC編程的區(qū)別

          不可不知的小貼士:?jiǎn)纹瑱C(jī)與PLC編程的區(qū)別

          作者: 時(shí)間:2014-01-16 來(lái)源:網(wǎng)絡(luò) 收藏

          與PLC的程序設(shè)計(jì)有很大的區(qū)別,的全部程序都是用戶(hù)設(shè)計(jì)的,PLC的程序包括系統(tǒng)程序(西門(mén)子稱(chēng)為操作系統(tǒng))和用戶(hù)程序。操作系統(tǒng)用來(lái)組織與具體的控制任務(wù)無(wú)關(guān)的所有的CPU功能。操作系統(tǒng)的任務(wù)包括處理啟動(dòng)過(guò)程,刷新輸入/輸出過(guò)程映像,調(diào)用用戶(hù)程序,檢測(cè)中斷事件和調(diào)用中斷組織塊,檢測(cè)和處理錯(cuò)誤,管理存儲(chǔ)器,以及處理通信任務(wù)等。PLC的很多功能,例如掃描工作方式、定時(shí)器功能和中斷處理,是操作系統(tǒng)完成的。在畫(huà)流程圖時(shí),應(yīng)考慮這個(gè)問(wèn)題。

          本文引用地址:http://www.ex-cimer.com/article/226905.htm

          PLC的開(kāi)關(guān)量控制系統(tǒng)的程序用順序功能圖來(lái)描述比較簡(jiǎn)潔。用流程圖來(lái)描述PLC的用戶(hù)程序原則上也是可以的,但是應(yīng)區(qū)分哪些功能是操作系統(tǒng)完成的,哪些是用戶(hù)程序?qū)崿F(xiàn)的。

          例如有人問(wèn)是否需要用跳轉(zhuǎn)指令來(lái)等待某個(gè)信號(hào)上升沿的出現(xiàn),這是一種編程的思維。PLC的掃描工作方式在每一掃描周期開(kāi)始時(shí)讀取全部的開(kāi)關(guān)量輸入,根據(jù)前后兩個(gè)掃描周期同一輸入點(diǎn)狀態(tài)的變化來(lái)判斷是否有上升沿出現(xiàn)。所以不需要用往回跳的跳轉(zhuǎn)指令來(lái)等待某個(gè)輸入信號(hào)的出現(xiàn)。如果用這種方法來(lái)查詢(xún)信號(hào)的狀態(tài)變化,PLC不能干別的事情,因?yàn)樗娜烤Χ加迷诓樵?xún)上了!而這種查詢(xún)是在一個(gè)掃描周期內(nèi)進(jìn)行的,將使掃描周期變得很長(zhǎng),很容易造成監(jiān)控定時(shí)器(看門(mén)狗)超時(shí)的錯(cuò)誤。

          在PLC的用戶(hù)程序中,只需要用一條檢測(cè)上升沿的指令就可以捕捉到脈沖信號(hào)的上升沿。如果要求快速響應(yīng),可以采用中斷方式,在脈沖信號(hào)的上升沿由系統(tǒng)程序調(diào)用用戶(hù)編寫(xiě)的中斷程序。



          關(guān)鍵詞: 單片機(jī) PLC編程

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();