臺達PLC開發筆記(二):臺達PLC設定主機通訊引數為RTU併成功通訊

語言: CN / TW / HK

若該文為原創文章,轉載請註明原文出處 本文章部落格地址:https://blog.csdn.net/qq21497936/article/details/118480597

紅胖子(紅模仿)的博文大全:開發技術集合(包含Qt實用技術、樹莓派、三維、OpenCV、OpenGL、ffmpeg、OSG、微控制器、軟硬結合等等)持續更新中…(點選傳送門)

其他(程式設計相關)

上一篇:《臺達PLC開發筆記(一):臺達PLC連線介紹,分別使用485、網口與臺達PLC建立連線》 下一篇:敬請期待...

<br>

前言

  前面使用485和網口與臺達成功建立通訊,但是485是使用用的ASICC模式,多數情況下是使用RTU模式提升通訊效率。

<br>

下載安裝臺達ISPSoft軟體

  官網下載地址:https://downloadcenter.delta-china.com.cn/DownloadCenter?v=1&q=ISP&sort_expr=cdate&sort_dir=DESC   配置需要通過網線,使用HWCONFIG軟體進行配置:   在這裡插入圖片描述   (先安裝前面的commgr通訊管理軟體)   下載後,如下圖:   在這裡插入圖片描述   安裝後,如下圖:   在這裡插入圖片描述

<br>

配置之前測試

使用485測試ASCII通訊方式

  在這裡插入圖片描述

使用485測試RTU通訊方式

     (埠預設是ASCII方式,RTU方式會返回一個固定長度固定的資料,應該是錯誤檢測)

使用ISPSoft軟體配置臺達PLC的485由ASCII轉為RTU

步驟一:開啟軟體

   在這裡插入圖片描述

步驟二:建立工程

  在這裡插入圖片描述   在這裡插入圖片描述

步驟三:開啟網路配置HWCONFIG

  在這裡插入圖片描述   在這裡插入圖片描述

步驟四:配置COM1口等引數(ASCII改為RTU)

  在這裡插入圖片描述   (若沒有之前使用網線連線,會出現提示,之前是需要先網線連線到PLC的)   在這裡插入圖片描述   正在下載,提示處理中,如下圖:   在這裡插入圖片描述   下載超時,是需要使用網口連線的。

步驟五:使用網線方式連線PLC

  在這裡插入圖片描述   在這裡插入圖片描述   在這裡插入圖片描述

步驟六:再次下載新的配置(原先為485現在為網線IP)

  在這裡插入圖片描述   在這裡插入圖片描述   在這裡插入圖片描述   在這裡插入圖片描述

步驟七:下載成功,使用485RTU進行測試

  (為hex了,不是acsii了,成功)   在這裡插入圖片描述

<br>

入坑

入坑一:使用Qt的modbus485讀取失敗

問題

  Qt的modbus全方面測試讀取M、D、Y、X對應的暫存器附近幾個值都為0。

解決

  直接使用modbus rtu測試

  是沒有問題的,但是Qt返回值依然是:

  其他部分在此嘗試過了,總共四種類型,相關的M、D、X、Y變數都設定過類似的,全部讀取成功,但是值都為0與實際不符,好像架空了一樣。

論證(2021年04月25日補充)

  測試單個線圈,使用libmodbus可以讀出來   在這裡插入圖片描述   測試單個線圈,使用QModbus還是無法讀出    在這裡插入圖片描述   測試讀取暫存器,使用libmodbus可以讀出   在這裡插入圖片描述   測試讀取暫存器,使用QModbus可以讀出   在這裡插入圖片描述

結論

  Qt有些東西確實雞肋,沒必要死磕。

<br>

上一篇:《臺達PLC開發筆記(一):臺達PLC連線介紹,分別使用485、網口與臺達PLC建立連線》 下一篇:敬請期待...

「其他文章」