<object id="ayu7o"></object>

      <object id="ayu7o"></object>

    1. <menuitem id="ayu7o"></menuitem>
      <object id="ayu7o"></object>
      加入收藏 在線留言 聯系我們
      關注微信
      手機掃一掃 立刻聯系商家
      全國服務熱線18475208684
      公司新聞
      文搞懂s7-200 smart 做客戶端與s7-1200/1500的S7通信
      發布時間: 2024-05-20 10:44 更新時間: 2024-12-02 08:00
      s7-200 smart 做客戶端實現與 s7-1200/1500 S7 通信

      圖片image-20240321144244041

      在上期文章中,與大家分享如何使用向導實現s7-200 smart 與 s7-200 smart cpu 之間的S7單邊通信,相信有不少小伙伴已經動手實踐過了,學習PLC就是需要不斷的實踐,才能不斷發現問題,解決問題,提升技能,所以還沒有行動的小伙伴趕快行動起來吧。(文章結尾有往期文章鏈接)

      還有小伙伴可能會問,那s7-200 smart 能否實現與s7-1200/1500,甚至s7-300/400通訊呢?答案是肯定的。

      經過測試s7-200 smart 能夠實現與s7-1200 /1500的s7通信,s7-200 smart 即可以作為客戶端也可以作為服務端使用,但是在與s7-300/400的通信中,s7-200 smart只能作為服務端使用,必須由s7-300/400側發起PUT/GET通訊(原因可能與TSAP有關,有興趣的小伙伴可以研究下)s7-300/400側的PUT/GET通訊將在s7-300/400專題中分享,本期主要分享s7-200 smart 作為客戶端與s7-1200/1500 之間的單邊通訊;

      注:在工業通訊中,通常把發起請求的一端稱為“客戶端”,提供數據的一端稱為“服務端”;例如:s7-200 smart 與 s7-1200 通訊,如果s7-200 smart發起PUT/GET請求,我們就稱s7-200 smart 為客戶端,s7-1200 為服務端;同樣,如果由s7-1200發起PUT/GET,我們就稱s7-1200為客戶端,s7-200 smart為服務端;

      s7-200 smart 作客戶端 與 S7-1200/1500的S7單邊通訊

      上期文章中講到,在s7通信中,只需要在客戶端組態相應通訊參數和通訊程序,在服務端僅需把數據放入相應的存儲區即可。因此接回上篇文章,我們保持s7-200 smart 側通訊程序不變(沒看過的小伙伴,可先查看上篇文章),只是把遠端plc(服務端)由s7-200 smart 更換為s7-1200/1500來為大家分享。

      有的小伙伴可能有疑惑,前面不是說服務端僅需要把數據放入相應存儲區(上篇文章組態的遠端存儲區VB100~VB107)就可以了,還需要講什么?對了,本期就是講講怎么把s7-1200/1500的數據放入VB100~VB107里面

      有使用過s7-1200或者s7-1500的小伙伴都知道,在s7-1200和s7-1500中沒有V存儲區,只有M存儲區和DB塊,那該怎么辦呢?這個問題西門子研發人員已經考慮過了,即在S7-1200/1500中使用DB1作為對應的V區使用,即VB100~VB07對應s7-1200/1500中DB1.DB100~DB1.DBB107,以S7-1200 CPU 1214C來講解,步驟如下:

      1. 打開TIA Portal創建新項目,并打開項目視圖

        圖片image-20240321111727743
      2. 添加新設備

        圖片image-20240321112023416
      3. 為控制器分配IP地址(192.168.2.101)與 s7-200 smart plc 同網段

        圖片image-20240321112520127
      4. 在DB1中創建8個Byte變量,此處以VB100~VB107命名;注:建議大家在DB塊中使用結構體來新建變量,能夠保持程序的模塊化和可讀性;

        圖片image-20240321114621436
      5. 有小伙伴發現我們新建的DB塊里面沒有地址,那要怎么對應呢?接下來需要開啟取消勾選塊“優化訪問”,即出來便移量列,對應juedui地址;

      圖片image-20240321135010291

      1. 點擊編譯,即可看到juedui地址;

        圖片

        注意:優化塊訪問和取消優化塊訪問的區別在與尋址方式不一樣;

      2. 優化塊訪問:通過符號尋址 例如:"Test_Data".SendToSmart.VB100

      3. 取消優化塊訪問:通過juedui地址 例如:DB1.DBB100

      4. 由于我們需要的是DB1.dbb100~DB1.Dbb107,所以需要在數據塊前面插入占位符(實際應用中,可用作其它用途)用數組代替;

        圖片image-20240321140058108
      5. 很多小伙伴做到這一步,就結束了,但往往在實際應用的時候總是連接不上,又找不到問題。實際上是少了一步修改連接機制;S7-1200 作為服務器進行 S7 通信,對于 CPU V4.0以后的固件版本,需要勾選“允許來自遠程對象的PUT/GET通信訪問”,否者,無法建立通信

        圖片image-20240321141606475

        注:s7-1200/1500 與 西門子 精簡(smart系列)觸摸屏通訊時,同樣需要勾選“允許來自遠程對象的PUT/GET通信訪問”,否則無法建立連接;

      s7-200 smart 單邊S7通訊總結

      至些s7-200 smart 做為客戶端(client)的s7單邊通信及s7-200 smart / s7-1200/1500作為服務端的配置都已經分享完畢,看似挺復雜,其實只要抓住關鍵點大部分都可以成功通訊;總結如下:

    2. 誰發起請求,誰就是客戶端;誰提供數據,誰就是服務端;
    3. 客戶端需要編寫通訊請求程序,服務端不需要編寫通訊請求程序;
    4. s7-200 smart 通訊V存儲區,對應s7-300/400/1200/1500都是DB1
    5. s7-1200/1500 塊的優化訪問需取消,用juedui地址訪問;
    6. s7-1200/1500 連接機制勾選不要忘記允許請求;

    7. 聯系方式

      • 電  話:13922889745
      • 經理:向小姐
      • 手  機:18475208684
      • 微  信:18475208684