国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

PLC故障檢測優(yōu)化算法

2017-03-27 13:49劉新祺
電子技術(shù)與軟件工程 2017年4期
關(guān)鍵詞:優(yōu)化算法故障檢測

劉新祺

摘 要 PLC是一種經(jīng)常用于自動化編程控制的計(jì)算機(jī),常用于汽車制造領(lǐng)域、機(jī)械制造領(lǐng)域等領(lǐng)域。其編程部分中故障檢測是必不可少的一部分。為了即時(shí)顯示故障信息,PLC需持續(xù)檢測故障情況以在故障發(fā)生時(shí)將將故障信息立即顯示在操作屏上。而傳統(tǒng)檢測方式采用逐個(gè)檢測,步驟復(fù)雜,對CPU要求也較高,提高了運(yùn)行成本和設(shè)備成本。本文將利用變址寄存器加以循環(huán)語句來迭代運(yùn)算,并用循環(huán)語句優(yōu)化該檢測步驟,將原有的上千步運(yùn)算步驟減至十余步,同時(shí)單次循環(huán)時(shí)間減少約10%。

【關(guān)鍵詞】PLC 故障檢測 優(yōu)化算法 變址寄存器 循環(huán)語句

1 引言

PLC(Programmable logic Controller,簡稱PLC)編程是現(xiàn)代社會機(jī)械化生產(chǎn)的重要編程方式,其廣泛應(yīng)用于各種自動化編程控制。2016年,PLC占有上百億人民幣的市場份額,其編程方式精簡與準(zhǔn)確程度直接關(guān)系著生產(chǎn)效率與質(zhì)量。而設(shè)備故障檢測步驟則是編程中的重要部分。當(dāng)設(shè)備運(yùn)行設(shè)備出現(xiàn)故障時(shí),需要檢測出故障位置并將故障具體情況顯示在屏幕上。傳統(tǒng)的算法采用逐個(gè)檢測排查的方式,占用上千步,耗時(shí)近1ms。本文將利用變址寄存器循環(huán)語句優(yōu)化該檢測步驟,在本例中將運(yùn)算步驟精簡至十余步,耗時(shí)減少0.2ms,效率提高約10%。

2 背景

PLC起源于美國汽車制造業(yè)的激烈競爭。為了適應(yīng)生產(chǎn)工藝的變革,一些公司研發(fā)出以計(jì)算機(jī)為基礎(chǔ)的系統(tǒng),逐步演變?yōu)榻裉斓腜LC編程。

第一代的PLC只是繼電器控制裝置的替代產(chǎn)品,一直到上世紀(jì)70年代初,其僅由一些元器件和中小型集成電路組成,采用的是磁芯存儲器,僅有計(jì)數(shù)、定時(shí)等功能,也只能用于單一控制。后來隨著處理器的不斷變小,于70年代初出現(xiàn)了第二代的PLC。第二代PLC采用的是微處理器和半導(dǎo)體存儲器EPROM,功能逐漸增強(qiáng),具有數(shù)據(jù)處理、其診斷、邏輯運(yùn)算等功能,并且有了計(jì)算機(jī)接口,其應(yīng)用面越來越廣,整體趨向標(biāo)準(zhǔn)化、系列化、專用化,占有越來越多的市場份額。第三代PLC出現(xiàn)在80年代中期,其CPU使用16位處理器或多微處理器,使用EPROM、CMOSRAM等半導(dǎo)體處理器,增加了三角函數(shù)等新運(yùn)算方式,梯形圖語句表更加成熟,小型PLC體積更小,成本更低,大型PLC更加多元化、模塊化。歷經(jīng)第四代PLC的提速后,出現(xiàn)在90年代中期的第五代PLC使用16位或32位微處理器,單步速度高達(dá)1ns/步,100%可與計(jì)算機(jī)通信,具有數(shù)值計(jì)算、大批量數(shù)據(jù)處理、函數(shù)運(yùn)算等強(qiáng)大功能。

3 應(yīng)用環(huán)境

不同CPU對程序容納量不同,步數(shù)越少則對CPU要求越低,成本也更低,即程序容量大小決定了選用哪款CPU,如少于1×10步,則可以選用最經(jīng)濟(jì)的CPU12或32,如果超過了300000步,就必須選用成本倍增的CPU15或35。

舊的編程方法中將故障檢測內(nèi)每條線路的檢測分別作為一步,單步簡單的疊加,不斷疊加結(jié)果則是耗時(shí)極長。這里我們以一個(gè)用該方法檢測故障的程序?yàn)槔?/p>

賦值語句即將故障數(shù)據(jù)傳遞至顯示屏的步驟,圖1左側(cè)的圓圈內(nèi)為當(dāng)前所在步驟步數(shù)。若上圖中將單個(gè)賦值語句刪除,再與圖2對比,可看到如果刪除賦值命令,每一處可節(jié)省7758step-7755step=3step。而僅該程序中賦值命令一共500條,總計(jì)可以減少1500step。

那么索性將程序中全部的500條賦值命令全刪除,可以發(fā)現(xiàn)如下變化:

(1)程序長度減少了1500step,。(16255step-14755step=1500step)

(2)最大循環(huán)時(shí)間減少了0.2ms。(2.42ms-2.22ms=0.20ms)

由此可見,賦值語句本身在程序中占有較大比重,若改進(jìn)該部分則將極大地簡化程序。

4 利用變址寄存器計(jì)數(shù)加以循環(huán)語句簡化算法

首先輸入一個(gè)M值來規(guī)定循環(huán)的最大次數(shù),即全部待檢電路的數(shù)目。變址寄存器充當(dāng)了K值的角色。每次從變址寄存器中取一個(gè)值,檢查該編號的電路,若有故障則將該電路的編號輸出顯示,否則將K值加一,再進(jìn)行上述步驟。具體操作方法如圖3。

左側(cè)Ⅰ區(qū)域?yàn)槟妇€,其中左側(cè)較小數(shù)字為段數(shù),右側(cè)較大數(shù)字為步驟數(shù)。Ⅱ區(qū)域?yàn)檩斎雲(yún)^(qū)域,中間圓圈內(nèi)IRO為變址寄存器,即流程圖中K的載體。W155.06等以W開頭的為邏輯開關(guān),W是否連通間接顯示了該部分是否有故障。右側(cè)Ⅲ區(qū)域內(nèi)為輸出內(nèi)容。小框內(nèi)FOR語句為循環(huán)開始語句,循環(huán)語句為FOR一直到下面的NEXT。最下方MOV語句為賦值語句,即輸出故障編號。小圓圈內(nèi)的D32600為本程序中顯示屏代碼,將故障編碼移入顯示屏即將故障情況顯示出來。

5 改進(jìn)后的結(jié)果

改進(jìn)前故障排查語段占總時(shí)間的8.26%,改進(jìn)后時(shí)間占比縮短至0.45%,縮短了95%;改進(jìn)前故障排查語段占總步驟的9.23%,改進(jìn)后步驟占比縮短至0.14%,縮短了98%。無論是時(shí)間上還是占據(jù)步驟上,改進(jìn)后的算法均比改進(jìn)前有了極大幅度的進(jìn)步。

6 橫向推廣

我們可將這個(gè)思路橫向推廣到其他領(lǐng)域,這里以異常計(jì)數(shù)清零為例,將清零語句置入循環(huán)語句中,設(shè)定好循環(huán)的次數(shù),即可實(shí)現(xiàn)僅輸入一個(gè)命令就能將所有的寄存器清零,即一鍵清零。

7 總結(jié)與展望

本文提出了一種利用變址寄存器加以循環(huán)語句的優(yōu)化算法。這種算法與之前的算法相比,優(yōu)點(diǎn)在于可以將很多重復(fù)進(jìn)行的語段縮短為幾步,提升程序步驟的利用率,提高了經(jīng)濟(jì)效益。作為自動化控制的重要手段,PLC定會迎來更為輝煌的未來。

參考文獻(xiàn)

[1]廖常初.PLC的發(fā)展趨勢[J].電氣時(shí)代,2003(12):54-56.

[2]張東明,文友先.PLC的發(fā)展歷程及其在生產(chǎn)中的應(yīng)用[J].現(xiàn)代農(nóng)業(yè)裝備,2007(09):60-64.

[3]劉衛(wèi)平,王明泉.PLC的發(fā)展及應(yīng)用前景[J].機(jī)械管理開發(fā),2009,24(05):78-80.

[4]綦希林,曲非非.PLC的發(fā)展[J].微計(jì)算機(jī)信息:測控儀表自動化,2002(09):1-2.

[5]方原柏.PLC發(fā)展的新動向——IEC1131-3編程標(biāo)準(zhǔn)和開放式結(jié)構(gòu)[J].昆明理工大學(xué)學(xué)報(bào)自然科學(xué)版,1999(06):102-103.

[6]陳潔.新技術(shù)形勢下PLC的發(fā)展前景[J]. 機(jī)械工程與自動化,2004(04):84-85.

[7]王兆義,陳治川,王生學(xué).PLC發(fā)展的幾個(gè)特點(diǎn)和國產(chǎn)化[J].自動化博覽,2006,24(S1):12-14.

作者單位

遼寧大連經(jīng)濟(jì)技術(shù)開發(fā)區(qū)第一高級中學(xué) 遼寧省大連市 116600

猜你喜歡
優(yōu)化算法故障檢測
故障樹計(jì)算機(jī)輔助分析優(yōu)化算法研究與應(yīng)用
故障樹計(jì)算機(jī)輔助分析優(yōu)化算法的實(shí)踐應(yīng)用
鄂托克前旗| 开远市| 西乌| 承德市| 吉木乃县| 囊谦县| 荔浦县| 巍山| 安溪县| 沙雅县| 桂林市| 依安县| 保山市| 玉树县| 板桥市| 蛟河市| 贵溪市| 铜山县| 丰城市| 大余县| 南康市| 本溪市| 大厂| 遂平县| 嵊州市| 五指山市| 上蔡县| 大城县| 同心县| 自贡市| 凉城县| 巧家县| 天长市| 锦屏县| 安图县| 宜川县| 无棣县| 宜章县| 五指山市| 东乡族自治县| 鸡东县|