<object id="ir2le"></object>
  • 加入收藏 在線留言 聯系我們
    關注微信
    手機掃一掃 立刻聯系商家
    全國服務熱線15267534595
    公司新聞
    S120的非周期性通訊
    發布時間: 2024-08-21 21:58 更新時間: 2024-12-27 09:10

    用過S120的工程師都知道,S120有很多種通訊方式,Zui常見的有PROFIdrive 通訊、PROFIBUS DP 通訊、PROFINET IO 通訊、Modbus TCP 通訊、EtherNet/IP(EIP)通訊等等。與西門子的PLC通訊時前三種是Zui方便也是Zui常用的。這次我主要分享一下PROFIdrive 通訊里面的非周期性通訊。


    當我們在做程序的時候,一般都是選擇適合的報文,讓PLC與S120進行數據的交換或控制,這種通訊方式為PROFIdrive的周期性通訊,當有時候我們需要讀取很多驅動參數的時候,周期性通訊將滿足不了我們的要求了,這種情況下我們有兩種選擇,第一就是用FB286功能塊進行讀寫,但調用一次Zui多只能讀取16個參數,如果超過16個參數,那就需要重復調用,這時候用非周期性通訊將會是一個不錯的選擇。


    使用非周期通訊對讀寫參數數量沒有限制,但每個讀寫任務Zui大為 240 個字節。當用S7-1200/S7-1500與S120走非周期性通訊時,需要采用系統功能塊“WRREC”和“RDREC”,其中“WRREC”將“請求”發送給 S120,“RDREC”將 S120 的“應答”返回給 PLC,這樣就完成了一個讀寫的循環。


    S120與PLC的通訊組態已經介紹過很多次,在這里不多做介紹,主要介紹一下程序中怎么去編寫報文。如下圖▼

    圖片

    第1部分是PLC通過“WRREC”發送給S120的報文,如果通訊成功,S120將通過“RDREC”返回第2部分報文,作為響應。這里對報文結構里的幾個數據進行說明:

    請求ID:讀16#01,寫16#02;

    軸號ID:這里指驅動的軸號,G120為1,V90為2,S120根據組態選擇相應軸號;

    參數數量:要讀取或寫入的參數數量;

    參數屬性:要讀取參數的值 16#10,只讀取參數的描述16#20(只適用于讀任務);

    其他數據可以根據我程序里的變量名稱直觀的了解其含義。


    圖片圖片

    “WRREC”.REQ:每一個上升沿執行一次;

    “WRREC”.ID:選擇驅動的硬件標識符;

    “WRREC”.INDEX:固定為47;

    “WRREC”.RECORD:請求讀報文從DB1.DBW0開始,長度一共8個字;

     

    “RDREC”.REQ:每一個上升沿執行一次;

    “RDREC”.ID:選擇驅動的硬件標識符;

    “RDREC”.INDEX:固定為47;

    “RDREC”.MLEN:響應報文長度為16個Byte;

    “RDREC”.RECORD:響應報文返回的數據存入從DB1.DBW20開始的字,長度一共8個字;

    "WRREC_DB".REQ的上升沿觸發"WRREC“功能塊,向S120發送請求讀報文,讀取參數r21實際速度與r31實際扭矩,完成信號"WRREC_DB".DONE觸發“RDREC”功能塊,接收響應報文,測試結果如下圖▼

    圖片圖片圖片圖片


    對于寫請求也是一樣,先要通過“WRREC”功能塊發出寫請求報文,向P1120和P1121兩個參數分別寫入加速時間10S,減速時間15S,然后通過“RDREC”功能塊讀取響應報文。結果顯示通訊成功,寫入2個參數▼

    圖片圖片


    聯系方式

    • 電  話:18126392341
    • 聯系人:梁濤
    • 手  機:15267534595
    • 微  信:15267534595