<address id="bxe5x"></address>
      1. 加入收藏 在線留言 聯系我們
        關注微信
        手機掃一掃 立刻聯系商家
        全國服務熱線13185520415
        公司新聞
        西門子S7-200 SMART之For循環的使用
        發布時間: 2024-03-25 11:46 更新時間: 2024-12-02 08:00
        觀看西門子S7-200 SMART之For循環的使用視頻

            在工業生產實際應用中,我們經常會遇到For循環的使用。比如說連續多個寄存器的累加計算,又比如說連續多個寄存器求Zui大Zui小值等的功能。這個時候我們通過For循環來完成,將會非常便捷的完成以上功能。

            下面,我們來具體聊聊For循環指令的使用方法。我們以For循環求和為例,來做測試講解。

        For-Next指令介紹

            從S7-200 SMART的編程軟件的幫助中,我們可以找到For-Next指令的介紹。For循環中,For和Next指令必須搭配存在。


        從幫助中可知,For指令的循環次數由INIT初始值和FINAL結束值決定。也就是說,如果INIT為1,FINAL為10,即循環次數為10次。依次類推。INDEX為For循環當前實際循環次數。

        For循環可以嵌套,就是For循環中也可以使用For循環,但是嵌套深度不能大于8層;

        For循環程序實現過程

            為方便測試本次For循環累加效果,首先我們把計算值通過數據塊,放在VW1000開始的連續寄存器中,如下圖所示。為更方便的驗證,VW1000開始的連續25個字內,分別存放了1~25的數值。


            然后開始編寫PLC程序,程序具體代碼如下圖所示:


                1、首先將VB1000對應的地址存入到VD200中,以便后續進行字節偏移;

                2、再將計算的結果清零,避免結果值出現累計的問題;

                3、調用For循環指令,并將For循環的FINAL引腳用變量VW102來關聯,可以通過修                改VW102的值,來修改循環計算次數,驗證For循環效果;

                4、通過*VD200,將VD200對應的VW1000的寄存器值讀取出來,累加到VW500中;

                5、將VD200值加2,則后續*VD200中將取出來的是VW1002的值;

                6、Next進入下一循環,重復步驟4和步驟5的計算過程,此時的*VD200的地址已經                發生偏移,累加值也發生變化了;
            驗證運行結果,請觀看下面動圖演示:


            可以觀察到,當VW102設置為1時,計算結果VW500是1,因為循環計算的是VW1000=1這一個值;

            當VW102設置為5時,計算結果VW500是15,因為循環計算的是VW1000開始的5個地址的值,即1+2+3+4+5的結果;

            當VW102設置為10時,計算結果VW500是55,因為循環計算的是VW1000開始的10個地址的值,即1+2+3+4+5+...+10的結果;

        同理,用for循環實現求Zui大值,只需要將for循環中的程序按下圖修改即可:


        相信聰明的讀者也可類推出,Zui小值的計算方法了

        聯系方式

        • 電  話:13510737515
        • 聯系人:董海波
        • 手  機:13185520415
        • 微  信:13185520415