<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發(fā)網(wǎng)

      電子開發(fā)網(wǎng)電子設計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
      搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> 其他PLC >> 三菱PLC >> 正文

      三菱plc子程序調(diào)用,三菱FX PLC學習之子程序調(diào)用與循環(huán),CALL和SRET、FOR

      作者:佚名    文章來源:網(wǎng)絡整理    點擊數(shù):    更新時間:2025/2/3

      上次,我們學習了程序流程轉(zhuǎn)移中的條件跳轉(zhuǎn)CJ,這次,我們接著向子程序調(diào)用CALL和FOR循環(huán)發(fā)起進攻吧!

       

      顯然,子程序調(diào)用CALL和FOR循環(huán)和條件跳轉(zhuǎn)CJ一樣,都是PLC程序中用于流程轉(zhuǎn)移的,所以,上次所學的程序區(qū)、主程序結束指令FEND等知識點可不要丟喲~在這里我也不再贅述了,這是為了給讀者們省時間,可不是我想偷懶。那么,我們開始這次的學習吧!

       

      一、子程序調(diào)用(CALL、SRET)

      所謂子程序,顧名思義,它是程序的孩子,啊呸,它是區(qū)別于主程序而存在的獨立程序段,只能呆在副程序區(qū)的可憐瓜娃子。就像我之前說的,你媽媽叫你打醬油,有蘋果就順便買幾個,這里的打醬油是主程序,買蘋果是子程序。醬油是必須要打的,但蘋果買不買取決于你CALL不CALL,如果你想把買蘋果的錢拿去買辣條,此時買蘋果這個子程序就不會被驅(qū)動(CALL),不過,你媽媽會不會賞你一個鞋餅就另說了。

       

      調(diào)用子程序和條件跳轉(zhuǎn)一樣,都是PLC的瞬移特異功能,但CJ主要是在主程序區(qū)蹦跶,怎么跳轉(zhuǎn),都逃不過主程序區(qū)這五指山,但調(diào)用子程序就不一樣了,它一跳就直接跳到副程序區(qū)去了,就跟孫猴子的筋斗云似的。那么,這個筋斗云怎么用呢?我們接著往下看。

      1、子程序調(diào)用指令CALL、SRET

      三菱子程序調(diào)用指令CALL、SRET 

      要想在PLC梯形圖中跳出主程序這個牢籠,召喚子程序,就必須要用到子程序調(diào)用指令CALL,而且還要捎帶上CALL的媳婦SRET。

      和CJ不一樣的是,子程序調(diào)用指令CALL必須要和子程序返回指令SRET成對使用。但又和CJ指令一樣,CALL的適用軟元件也是分支指針P0~P127,且P63不能用于CALL。所以,在編程時要注意分支指針P的使用,同一標號的P不能同時被CJ指令和CALL指令共用,例如CALL P5中的P5就不能用于CJ P5

       

      從編程手冊中可以看到,CALL指令僅用于16位,且具有連續(xù)執(zhí)行型和脈沖執(zhí)行型兩種。連續(xù)執(zhí)行型和脈沖執(zhí)行型的區(qū)別于CJ差不多,在此不再贅述。

      SRET指令和FEND指令一樣無驅(qū)動條件,僅用于子程序的返回。在子程序中,執(zhí)行到子程序返回指令SRET時,立即返回到主程序調(diào)用指令的下一行繼續(xù)往下執(zhí)行。

       

      如上圖所示,當驅(qū)動條件X0接通(X0=ON),執(zhí)行CALL P5,程序跳轉(zhuǎn)到副程序區(qū)中子程序的入口地址P5處往下執(zhí)行,執(zhí)行到SRET指令時,立即返回到主程序區(qū)CALL P5的下一行繼續(xù)往下執(zhí)行。

      所以,我們在使用CALL指令時,千萬不要忘了它的媳婦SRET指令哦,所謂“寧拆十座廟 ,不毀一樁婚”,可不要做了那棒打鴛鴦的壞人。

      2、子程序嵌套

      子程序嵌套,是指子程序中再應用子程序調(diào)用指令去調(diào)用其他子程序,所謂“三十六計計中計”,一環(huán)扣一環(huán),一套嵌一套。當然,這個再次調(diào)用的過程類同于主程序調(diào)用子程序的過程。

       

      如上圖所示就是2層嵌套的程序流程圖,當驅(qū)動條件X0接通,調(diào)用子程序1,在執(zhí)行子程序1的過程中,驅(qū)動條件X1接通,調(diào)用子程序2,執(zhí)行完子程序2后,返回到子程序1中調(diào)用指令CALL P6的下一行繼續(xù)執(zhí)行完子程序1,直到執(zhí)行到子程序1的返回指令后返回到主程序中調(diào)用指令CALL P5的下一行繼續(xù)往下執(zhí)行。

      這就好比你打醬油,途中去買蘋果,買蘋果的途中看到辣條忍不住,然后跑去買辣條,賣完辣條再去買蘋果,最后才去買醬油,最后回家。這里打醬油是主程序,買蘋果是子程序1,買辣條是子程序2。

       


      在三菱PLC2N中,調(diào)用子程序的嵌套層數(shù),對主程序而言最多有5層,顯然,對子程序而言就要少一層,就是4層。如上圖的子程序嵌套流程圖,子程序2中還可以有3,3中有4,4中有5,5中就不能有6了。

       

      3、子程序的軟元件使用

      按理來說,主程序和子程序的軟元件是通用的,也就是說,三菱PLC2N中的軟元件,可以用于主程序,也可用于子程序,但有一個比較特殊,那就是定時器。

      所有定時器均可用于主程序,但子程序要用定時器的話,就沒這么簡單了,它只能是T192~T199、T246~T249這10個。

      另外,在子程序調(diào)用過程中被驅(qū)動的軟元件,其狀態(tài)在子程序調(diào)用結束后,會保持在最后一次調(diào)用時候的狀態(tài)不變。哪怕這些軟元件的驅(qū)動條件在子程序調(diào)用結束后發(fā)生了改變,軟元件的狀態(tài)也不會發(fā)生改變。

      4、子程序應用什么時候才會用到子程序呢?顯然,子程序是區(qū)別于主程序的獨立程序段,這里的獨立,其實就很明顯的突出的子程序的作用,那就是把功能模塊化,不同的子程序互相獨立,各自有著不同的功能,為主程序提供不同的服務。

      所以,當系統(tǒng)規(guī)模很大、控制要求復雜時,可以把程序分為一塊一塊的子程序,使程序簡化;另外,當某個功能需要多次執(zhí)行時,也可以編成子程序,需要時直接調(diào)用,清晰方便,是主程序簡單化。

       

      子程序調(diào)用的實際應用,在這里我就不舉例了,因為這和主程序區(qū)別也不大,只不過是功能模塊化而言。打敗了子程序調(diào)用后,我們乘勝追擊,繼續(xù)進攻PLC的FOR循環(huán)吧!

      二、循環(huán)

      PLC的循環(huán)也是程序流程轉(zhuǎn)移的一種,對應的指令為FOR、NEXT。

       

      和子程序調(diào)用指令一樣,循環(huán)指令FOR和NEXT也是成對出現(xiàn)的,但不同的是,F(xiàn)OR指令和NEXT指令都沒有驅(qū)動條件。在子程序調(diào)用指令CALL、SRET中,CALL指令是需要驅(qū)動條件的,條件跳轉(zhuǎn)指令CJ 也需驅(qū)動條件。

      從編程手冊中,我們可以看到,F(xiàn)OR指令僅用于16位,且只有連續(xù)執(zhí)行型。這是顯然的,因為它沒有驅(qū)動條件,哪來的脈沖執(zhí)行型?

      所謂FOR循環(huán),指的是重復,在程序中,PLC掃描到FOR-NEXT指令時,對FOR-NEXT指令之間的程序重復執(zhí)行n次。如下圖所示,程序掃描到FOR K5時,在FOR K5NEXT指令之間的程序2重復執(zhí)行5次,然后再退出循環(huán)繼續(xù)往下執(zhí)行。

       

      雖然FOR指令的適用軟元件有很多,但最常用的是常數(shù)K,也就是用常數(shù)K指定程序重復執(zhí)行的次數(shù)。循環(huán)指令的應用相對簡單,但有幾點還是需要我們注意的。

      1、循環(huán)嵌套從上文中我們知道了子程序可以嵌套,同樣的,循環(huán)指令也可以嵌套,而且最多也是5層。如下圖所示為5層循環(huán)嵌套,如下圖所示。

       

      如上圖所示,若這5層循環(huán)中,每層循環(huán)的次數(shù)均為10,顯然,所有循環(huán)全部執(zhí)行完時,第五層循環(huán)被執(zhí)行了100000次,第4層執(zhí)行了10000次,依次類推,第1層被執(zhí)行了10次。這就跟剝洋蔥似的,“一層一層剝開我的心~”咳咳,抱歉,一不小心就唱起來了,回歸正題。

      所以,我們在應用循環(huán)嵌套時,一定要注意所嵌循環(huán)的次數(shù),因為循環(huán)次數(shù)過多會造成程序運算時間過長,使PLC的響應變慢,甚至超時。

      另外,循環(huán)是可以并立嵌套的,如下圖所示。此時兩個并立的循環(huán)為一層,也就是說,下圖為2層的循環(huán)嵌套。

       

      2、循環(huán)指令使用循環(huán)指令使用在使用時要注意以下幾點:

      (1)循環(huán)指令FOR必須要和NEXT指令成對使用,缺一不可,同生共死;

       

      (2)FOR指令和NEXT指令的順序不能顛倒;

      (3)FOR指令和NEXT指令必須同時存在同一程序區(qū),F(xiàn)OR指令在主程序區(qū),對應NEXT指令也必須在主程序區(qū),不能寫在副程序區(qū)。

      關于循環(huán)指令的實際應用,這里我也不列舉了,因為我累了。但我們知道了它的作用,能看懂程序也就可以了。

      那么,這次的學習分享就到這里啦,共勉!

      Tags:子程序,子程序調(diào)用,三菱plc  
      責任編輯:admin
      相關文章列表
      三菱PLC的FX2N-2AD模擬量輸入模塊簡述 三菱plc模擬量編程梯形圖實
      三菱PLC編程系列學習之七—常用特殊功能模塊,BFM
      三菱plc學習入門(一,認識三菱plc)_FX1N-24MT接線圖
      三菱plc學習入門(二,三菱plc指令,觸點比較,計數(shù)器,交替,四
      三菱PLC定時器和計數(shù)器,三菱FX PLC入門之定時器和計數(shù)器
      三菱PLC直接尋址、立即尋址和變址尋址,三菱FX PLC學習之尋址方式
      三菱PLC跳轉(zhuǎn)指令用法,三菱FX PLC學習之條件轉(zhuǎn)移,轉(zhuǎn)移指令CJ
      三菱PLC比較指令用法,三菱FX PLC學習之比較指令,CMP和ZCP
      三菱plc定位控制與伺服的應用(二,原點回歸指令)_三菱plc伺服控
      三菱FX3U PLC常用功能指令詳解,三菱FX3U PLC功能指令表
      【干貨】三菱PLC實現(xiàn)定位控制的編程方法
      三菱plc FX3U與三菱E800變頻器專用指令通信應用,IVDR指令和 IVCK
      三菱PLC的modbus-rtu通訊實例_三菱小型PLC FX3U系列Modbus 通訊教
      三菱FX2NPLC與三菱變頻器ModbusRTU協(xié)議通訊應用
      三菱PLC控制案例——自動門控制
      三菱PLC功能指令介紹(二)比較指令和四則運算指令、區(qū)間復位指令
      一表帶你了解最常用三菱FX3U PLC軟元件
      三菱FX3U PLC的自動售貨機程序設計案例詳解(附程序代碼)四則運
      三菱PLC特殊功能模塊實戰(zhàn)教程,(Buffer Memory,簡稱BFM)FROM、
      一文教你讀寫B(tài)FM來操作模擬量模塊!三菱PLC模擬量采集和輸出
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網(wǎng)友評論
      最新推薦
      關于我們 - 聯(lián)系我們 - 廣告服務 - 友情鏈接 - 網(wǎng)站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 狠狠狠色丁香婷婷综合久久俺| 狠狠色成人综合首页| 青青草原综合久久大伊人精品| 天天做天天做天天综合网| 亚洲综合色区在线观看| 狠狠色丁香久久综合五月| 婷婷五月综合丁香在线| 色噜噜狠狠色综合久| 色狠狠成人综合色| 色综合久久88色综合天天 | 伊人久久亚洲综合| 国产成人综合日韩精品婷婷九月| 亚洲国产综合精品一区在线播放| 天天爽天天狠久久久综合麻豆| 五月综合激情婷婷六月色窝| 亚洲综合久久1区2区3区| 伊人久久中文大香线蕉综合| 成人伊人亚洲人综合网站222| 亚洲国产精品综合一区在线| 国产色婷婷精品综合在线| 伊人久久大香线蕉综合热线| 亚洲国产成人久久综合碰碰动漫3d | 国产成人无码综合亚洲日韩| 欧洲亚洲综合一区二区三区| 一本色道久久综合| 激情综合亚洲色婷婷五月| 亚洲国产精品综合福利专区 | 激情五月激情综合| 亚洲综合图片小说区热久久| 亚洲欧洲尹人香蕉综合| 亚洲精品综合一二三区在线| 亚洲中文字幕无码久久综合网 | 婷婷亚洲综合五月天小说| 婷婷综合另类小说色区| 亚洲伊人精品综合在合线| 亚洲妓女综合网99| 熟天天做天天爱天天爽综合网| 色综合久久一区二区三区| 久久国产综合精品五月天| 狠狠色丁香婷婷久久综合不卡| 久久一本色系列综合色|