衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過減少程序語句數(shù)來提高PLC程序運(yùn)行效率

1bGT_GKYXT1508 ? 2017-12-19 10:06 ? 次閱讀

通過本方法優(yōu)化可以極大的減少程序語句數(shù),使PLC程序更簡潔、可讀性更好,由于不需要做耗時(shí)的類型轉(zhuǎn)換,程序運(yùn)行效率也得到提高。且數(shù)學(xué)運(yùn)算量越大,效率提高越明顯。

缺點(diǎn)是要多占用兩字節(jié)的內(nèi)存,以后程序中不能使用VW0。但S7-200的RAM空間很大,一般是用不完的,以226為例,有多達(dá)10K的RAM,偶從來沒有超過1K。這些RAM都是花錢買來的,不用白不用,不用也是浪費(fèi)了。

通過減少程序語句數(shù)來提高PLC程序運(yùn)行效率

同理,如果有字節(jié)型變量經(jīng)常需要與字類型變量相互轉(zhuǎn)換,讓字節(jié)變量占用一個(gè)字的內(nèi)存寬度浪費(fèi)一個(gè)字節(jié),避免類型轉(zhuǎn)換。具體步驟如下:

1:根據(jù)工程實(shí)際需求,進(jìn)行功能塊規(guī)劃,編寫子程序

在PLC中子程序是為一些特定的控制目的編制的相對(duì)獨(dú)立的程序。執(zhí)行子程序調(diào)用指令CALL等,如果條件不滿足子程序調(diào)用時(shí),程序的掃描就僅在主程序中進(jìn)行,不再去掃描這段子程序,這樣就減少不必要的掃描時(shí)間。

2:用字或雙字?jǐn)?shù)據(jù)傳送給DO點(diǎn)方法來控制輸出

在PLC的應(yīng)用中通常都會(huì)有大量的輸出控制,用字或雙字?jǐn)?shù)據(jù)傳送給DO點(diǎn)方法來控制輸出可以提高速度,只要根據(jù)實(shí)際應(yīng)用的要求,合理分配輸出地址,變換控制輸出控制字,可以大大減少PLC程序執(zhí)行的步數(shù),從而加快PLC的程序運(yùn)行速度。

3:脈沖觸發(fā)SET、RESET

PLC中,使用SET指令只執(zhí)行一次即可,不必每次掃描都執(zhí)行這個(gè)指令,很適合與脈沖輸出(PLS/PLF)指令配合使用。有些工程人員忽視了這個(gè)問題,使用了常規(guī)的方法來驅(qū)動(dòng)SET指令,無意中增加了PLC程序掃描運(yùn)行時(shí)間。

4:避免類型轉(zhuǎn)換,方法如下:

以S7-200為例,它的內(nèi)存格式與我們常用的PC機(jī)正好相反,它是高字在前,低字在后的。所以我們可以將字變量放在后兩個(gè)字節(jié),在程序初始化時(shí)將前兩個(gè)字節(jié)清零(程序的其它地方不得使用這兩個(gè)字節(jié))。

如我們定義符號(hào)時(shí)將字變量定義在VW2,同時(shí)保持VW0的值為零。則程序中可以用VW2以字型訪問該變量,同時(shí)也可以VD0以雙字型訪問,避免了類型轉(zhuǎn)換。

為了避免使用時(shí)混淆,最好以明確的符號(hào)定義來區(qū)分字類型和雙字類型。在此強(qiáng)烈推薦類匈牙利命名法:以前綴指示變量類型,用首字母大寫的有意義的英文單詞的組合作變量名。本人習(xí)慣用以下綴:b————字節(jié)型變量(byte

w————字型變量(word)

d————雙字變量(double)

r————實(shí)型變量(real)

f————位變量(flag)

btn——-自復(fù)位按鈕式輸入(button)

sw————切換開關(guān)或自鎖按鈕輸入(switch)

sig——-傳感器、編碼等電平信號(hào)輸入(signal)

rly——-輸出繼電器位(relay)

……

當(dāng)然,這個(gè)根據(jù)個(gè)人習(xí)慣來,沒有定則,主要是利于自己區(qū)分。

假如有一個(gè)字類型變量名為VarName,為使用前面的轉(zhuǎn)換技巧,我們可以這樣定義:

wVarName————VW2

dVarName————VD0

在程序初始化時(shí)將VW0清零(如果是不需要記憶的變量,直接將dVarName清零也可)或者在數(shù)據(jù)塊中將VW0設(shè)置為零。則以后需要以字類型訪問變量時(shí)就用wVarName,需要以雙字類型訪問變量時(shí)就用dVarName。完全不需要類型轉(zhuǎn)換。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • plc
    plc
    +關(guān)注

    關(guān)注

    5016

    文章

    13387

    瀏覽量

    465400
  • reset
    +關(guān)注

    關(guān)注

    0

    文章

    34

    瀏覽量

    12929

原文標(biāo)題:PLC編程優(yōu)化方法,讓程序運(yùn)行提速!

文章出處:【微信號(hào):GKYXT1508,微信公眾號(hào):工控云學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    提高Python運(yùn)行效率的7個(gè)竅門

    直接調(diào)用str,可以避免多次執(zhí)行重復(fù)編譯過程,提高程序性能。正則表達(dá)式模式匹配也類似,也最好先將正則表達(dá)式模式編譯成regex對(duì)象(通過re.complie()函數(shù)),然后再執(zhí)行比較和匹配。7、模塊編程
    發(fā)表于 07-10 16:22

    如何提高C語言程序的執(zhí)行效率

    的事那么效率就高。下面說說如何提高C語言程序的執(zhí)行效率。1、盡量避免調(diào)用延時(shí)函數(shù)沒有帶操作系統(tǒng)的程序只能在while(1)里面循環(huán)執(zhí)行,如果
    發(fā)表于 07-20 06:39

    使用c語言給單片機(jī)編寫的程序運(yùn)行的時(shí)候if語句運(yùn)行的快還是switch語句執(zhí)行的速度快?

    請(qǐng)問使用c語言給單片機(jī)編寫的程序運(yùn)行的時(shí)候if語句運(yùn)行的快,還是switch語句執(zhí)行的速度快?在優(yōu)化之前的人寫的
    發(fā)表于 11-08 06:55

    對(duì)PLC程序運(yùn)行效率得到提高的方法的解析

    通過本方法優(yōu)化可以極大的減少程序語句數(shù),使PLC程序更簡潔、可讀性更好,由于不需要做耗時(shí)的類型轉(zhuǎn)
    的頭像 發(fā)表于 12-25 09:16 ?3985次閱讀
    對(duì)<b class='flag-5'>PLC</b><b class='flag-5'>程序</b><b class='flag-5'>運(yùn)行</b><b class='flag-5'>效率</b>得到<b class='flag-5'>提高</b>的方法的解析

    如何提高PLC程序運(yùn)行效率詳細(xì)編程方法說明

    在西門子plc中,子程序是為一些特定的控制目的編制的相對(duì)獨(dú)立的程序。執(zhí)行子程序調(diào)用指令CALL等,如果條件不滿足子程序調(diào)用時(shí),
    的頭像 發(fā)表于 02-03 12:57 ?3416次閱讀
    如何<b class='flag-5'>提高</b><b class='flag-5'>PLC</b><b class='flag-5'>程序</b><b class='flag-5'>運(yùn)行</b>的<b class='flag-5'>效率</b>詳細(xì)編程方法說明

    plc程序的調(diào)試步驟

    模擬系統(tǒng)實(shí)際的輸入信號(hào),在程序運(yùn)行中的適當(dāng)時(shí)刻,通過手動(dòng)操作開關(guān),接通或斷開輸入信號(hào),來模擬各種機(jī)械動(dòng)作使檢測(cè)元件狀態(tài)發(fā)生變化,同時(shí)通過PLC
    發(fā)表于 09-09 16:19 ?1.2w次閱讀
    <b class='flag-5'>plc</b><b class='flag-5'>程序</b>的調(diào)試步驟

    如何使用SQL修復(fù)語句程序說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用SQL修復(fù)語句程序說明。
    發(fā)表于 10-31 15:09 ?5次下載

    PLC編程優(yōu)化設(shè)計(jì)使程序運(yùn)行提速

    PLC中子程序是為一些特定的控制目的編制的相對(duì)獨(dú)立的程序。執(zhí)行子程序調(diào)用指令CALL等,如果條件不滿足子程序調(diào)用時(shí),
    發(fā)表于 03-24 15:57 ?1276次閱讀

    編寫plc程序的心得

    程序調(diào)試過程**(**別是設(shè)備改造時(shí),你的程序是加入到原來設(shè)備的程序中時(shí)), 當(dāng)程序語句中出現(xiàn) 條件滿足, 而 輸出線圈不接通 時(shí), 可以
    發(fā)表于 04-04 17:14 ?794次閱讀

    提高PLC程序運(yùn)行有什么方法

    。 如何提高PLC程序運(yùn)行速度,可以采用以下編程方法,僅供參考: 1.根據(jù)項(xiàng)目實(shí)際需要,制定功能塊規(guī)劃,編寫子程序。 在
    發(fā)表于 01-10 15:57 ?863次閱讀

    如何提高單片機(jī)程序執(zhí)行效率

    更短的時(shí)間內(nèi)完成相同的事那么效率就高。 關(guān)于如何提高C語言程序的執(zhí)行效率,有如下建議: 1.盡量避免調(diào)用延時(shí)函數(shù) 沒有帶操作系統(tǒng)的程序只能在
    發(fā)表于 02-11 15:42 ?6次下載
    如何<b class='flag-5'>提高</b>單片機(jī)<b class='flag-5'>程序</b>執(zhí)行<b class='flag-5'>效率</b>

    通過智能設(shè)計(jì)運(yùn)行提高工作效率

    電子發(fā)燒友網(wǎng)站提供《通過智能設(shè)計(jì)運(yùn)行提高工作效率.pdf》資料免費(fèi)下載
    發(fā)表于 09-14 09:34 ?0次下載
    <b class='flag-5'>通過</b>智能設(shè)計(jì)<b class='flag-5'>運(yùn)行</b><b class='flag-5'>提高工作效率</b>

    PGO到底是什么?PGO如何提高應(yīng)用程序性能呢?

    PGO到底是什么?PGO如何提高應(yīng)用程序性能呢? PGO,全稱為Profile Guided Optimization,譯為“基于特征優(yōu)化”的技術(shù),是一種通過利用應(yīng)用程序
    的頭像 發(fā)表于 10-26 17:37 ?2159次閱讀

    python寫完程序之后怎么運(yùn)行

    Python是一門簡潔、易學(xué)的編程語言,被廣泛應(yīng)用于數(shù)據(jù)分析、人工智能等領(lǐng)域。在學(xué)習(xí)Python編程的過程中,了解程序運(yùn)行機(jī)制是至關(guān)重要的。本文將詳盡解析Python程序運(yùn)行過程,
    的頭像 發(fā)表于 11-22 11:10 ?1097次閱讀

    通過物通博聯(lián)PLC遠(yuǎn)程調(diào)試網(wǎng)關(guān)實(shí)現(xiàn)PLC遠(yuǎn)程升級(jí)程序

    遠(yuǎn)程調(diào)試網(wǎng)關(guān),實(shí)現(xiàn)了PLC遠(yuǎn)程升級(jí)程序的功能,提高了生產(chǎn)效率,降低了運(yùn)營成本,并使PLC的升級(jí)和維護(hù)更加便捷。 物通博聯(lián)
    的頭像 發(fā)表于 03-09 17:19 ?603次閱讀
    <b class='flag-5'>通過</b>物通博聯(lián)<b class='flag-5'>PLC</b>遠(yuǎn)程調(diào)試網(wǎng)關(guān)實(shí)現(xiàn)<b class='flag-5'>PLC</b>遠(yuǎn)程升級(jí)<b class='flag-5'>程序</b>
    娱乐城开户| 送58百家乐的玩法技巧和规则| 百家乐官网视频游戏金币| 威尼斯人娱乐城 老品牌值得信赖| 新东方百家乐官网娱乐城| 百家乐官网分析资料| 威尼斯人娱乐网上百家乐| 做生意的摆件| 百家乐官网庄家赢钱方法| 威尼斯人娱乐城是真的吗| 24是吉还是凶| 百家乐官网投注玩多少钱| 大发888赌场| 百家乐高额投注| 百家乐官网单机版的| 曲周县| 大发888大发娱乐城| 百家乐折叠桌| 什么百家乐官网九宫三路| 鹤山市| 威尼斯人娱乐城 色情| 百家乐娱乐城博彩| 百家乐官网真钱斗地主| 真人百家乐官网宣传| 大发888官方网站指定开| 百家乐庄家怎样赚钱| 足球百家乐官网系统| 百家乐官网平台信誉| 瓮安县| 辽宁棋牌游戏大厅| 百家乐计划软件| 邯郸百家乐园怎么样| 百家乐官网筹码皇冠| 百家乐官网金海岸| 线上kk娱乐城| 大发888我的爱好| 伯爵百家乐娱乐场| 百家乐获胜秘决| 百家乐官网押注方法| 百家乐官网手机游戏下载| 足球投注网址|