0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

RS485接口、Modbus RTU協(xié)議與BT119P通訊實例

CHANBAEK ? 來源:伯特自動化 ? 作者:伯特 ? 2023-05-18 14:57 ? 次閱讀

RS485接口、Modbus RTU協(xié)議與BT119P通訊實例

RS485是一種通用的通訊接口,采用主從通訊方式,即一個主機帶多個從機,很多情況下,通訊鏈路采用一對雙絞線將各個接口的“A”、“B”端并聯(lián)起來。數(shù)據(jù)信號采用差分傳輸方式,邏輯“1”以兩線間的電壓差+(2~6)V表示;邏輯“0”以兩線間的電壓差為-(2~6)V表示。RS485通訊數(shù)據(jù)最高傳輸速率為10Mbps,最大距離可以到1200米,最大支持256個結點。

Modbus是一主多從的通訊協(xié)議,需要一個設備充當主機(比如電腦、PLC、觸摸屏等),從機是可以是各種測量儀表、模塊。主機在同一時間內(nèi)只能向一個從機發(fā)送命令,總線上每次只有一個數(shù)據(jù)進行傳輸,即主機發(fā)送,從機返回,主機不發(fā)送,總線就沒有數(shù)據(jù)流。

Modbus的傳輸模式也分三種:ASCII、RTU、TCP。以常見的Modbus-RTU為例。數(shù)據(jù)格式如下:

wKgZomRlytGAAHm7AABMV46cy9g447.jpg

從機地址 :每個從機都有唯一地址,占用一個字節(jié),范圍0~255

命令碼: 占用一個地址。

常用命令碼介紹:

命令碼 功能說明
01H 讀輸出線圈狀態(tài)
02H 讀入出線圈狀態(tài)
03H 讀保持寄存器
04H 讀輸入寄存器
06H 寫單個寄存器
10H 寫多個寄存器

數(shù)據(jù): 根據(jù)命令碼不同,有不同數(shù)據(jù)。

校驗: 在數(shù)據(jù)傳輸過程中可能數(shù)據(jù)會發(fā)生錯誤,CRC檢驗接收數(shù)據(jù)是否正確。

分析一下發(fā)送和接收的內(nèi)容:

1:主機對從機讀數(shù)據(jù)

主機發(fā)送的數(shù)據(jù)格式如下:

從機地址 0x01
命令碼 0x03
寄存器地址(高) 0x00
寄存器地址(低) 0x01
數(shù)量(高) 0x00
數(shù)量(低) 0x01
校驗 0xD5 0xCA

含義:

0x01:從機地址

0x03:命令碼。讀從機寄存器地址

0x00 0x01:表示讀的寄存器地址從0x0001開始

0x00 0x01;表示連續(xù)讀取的寄存器數(shù)量

0xD5 0xCA:CRC校驗碼

2:主機對從機寫數(shù)據(jù)

從機地址 0x01
命令碼 0x06
寄存器地址(高) 0x00
寄存器地址(低) 0x01
數(shù)量(高 0x00
數(shù)量(低) 0x64
校驗 0xD9 0xE1

含義:

0x01:從機地址

0x06:命令碼。寫單個寄存器

0x00 0x01:修改的寄存器地址

0x00 0x64:修改的值

0xD9 0xE1:CRC校驗碼

從機返回數(shù)據(jù)格式如下:

從機地址 0x01
命令碼 0x06
寄存器地址(高) 0x00
寄存器地址(低) 0x01
數(shù)量(高 0x00
數(shù)量(低) 0x64
校驗 0xD9 0xE1

含義:

0x01:從機地址

0x06:命令碼。寫單個寄存器

0x00 0x01:修改的寄存器地址

0x00 0x64:修改的值

0xD9 0xE1:CRC校驗碼

從機返回的數(shù)據(jù)是和主機發(fā)送的數(shù)據(jù)一致,說明寫入正確,否則表示出錯了??稍賹懸淮巍?/p>

伯特儀表大部分產(chǎn)品,可以配置RS485通訊模塊接口,并支持標準Modbus-RTU通訊協(xié)議,下面我們用一臺BT119P的溫控表作為從機,電腦端利用組態(tài)王軟件作為主機,來進行二者ModbusRTU通訊的演示案例。

1、電腦端打開組態(tài)王KyingView軟件,然后新建工程

wKgaomRlytGAZPtCAAG9jNjP_mA110.jpg

2、雙擊設備COM1,配置串口信息,我們配置為:波特率9600,8為數(shù)據(jù)位,無校驗,1個停止位。

wKgZomRlytGAbpZ4AADkef94xJw897.jpg

3、接下來雙擊“新建”選項,選擇對應設備驅動。這里我們依次選擇:設備驅動 -> PLC -> 莫迪康 -> ModbusRTU -> COM。

wKgaomRlytGAXgNRAAJaOiTh0qo189.jpg

4、然后根據(jù)實際情況,選擇對應的串口號,這里我們選擇COM3;下一步,設置需要與下位機通訊的地址號,這里我們選擇1。之后就直接下一步完成就可以。

wKgaomRlytGAUE9NAAAmC2YQ8Ek745.jpg

wKgZomRlytGAPREpAAAjLufcR5Q913.jpg

5、然后就在軟件左側數(shù)據(jù)庫欄,點擊數(shù)據(jù)詞典,雙擊“新建”,彈出“定義變量”對話框,依次填入對應變量要求。比如我們要讀取BT119儀表的測量值,那根據(jù)儀表對應的通訊協(xié)議地址表可知,測量值的寄存器地址為“30001”,數(shù)據(jù)變量選擇“I/O整型”,數(shù)據(jù)類型選擇“SHORT”,連接設備就選擇前面我們建立的設備號“Bt119”。

wKgaomRlytGAd0wVAAH75svgQ_0678.jpg

6、設備和變量都新建完成,接下來我們就要新建畫面了。點擊左側文件欄的畫面,然后雙擊“新建”;彈出對話框,畫面名稱命令為“測量值”,然后下一步就進入組態(tài)畫面。

wKgZomRlytGAXbjRAAHC_jWDt-U498.jpg

wKgZomRlytGAKD-TAADpeEe7sHg864.jpg

7、在工具箱中選擇文本,鼠標按住不放,拖入組態(tài)畫面中,然后雙擊定義該文本信息。點擊“模擬量輸出”,然后選擇前面我們定義的變量“測量值”,點擊確認完成。

wKgZomRlytGAAFC3AAAnXJ78jA0276.jpg

wKgaomRlytGAcRfwAAAS_GFZYtk606.jpg

8、上位機的配置工作完成后,儀表參數(shù)也要相應設置;Add設置為1,表示儀表的從機地址,Baud設置為4,表示采用ModbusRTU通訊協(xié)議,波特率為9600,8個數(shù)據(jù)位,1個停止位,無校驗。

9、連接好485通訊線。因為普通電腦沒有專門的485接口,這里我們通過485轉USB轉換器,來進行電腦與儀表的通訊連接。

10、完成硬件連接和軟件的配置之后,通訊準備工作就基本完成,點擊電腦端組態(tài)王組態(tài)界面上的“文件”->”切換的View”之后,主機就以每500ms時間間隔讀取儀表的測量值了。由于儀表返回整型數(shù),如果是熱電偶、熱電阻類非線性測量,分辨率固定為0.1℃,將返回數(shù)據(jù)除以10即可。如果是線性信號測量,則按儀表dP參數(shù)設置,分別除以10(dP=1)、100(dP=2)、1000(dP=3)就可以了。

wKgaomRlytGAVqfPAAAO0kN4Abs692.jpg

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • RS485
    +關注

    關注

    39

    文章

    1135

    瀏覽量

    82071
  • MODBUS
    +關注

    關注

    28

    文章

    1757

    瀏覽量

    76760
  • 通訊協(xié)議

    關注

    10

    文章

    265

    瀏覽量

    20311
  • 通訊接口
    +關注

    關注

    2

    文章

    80

    瀏覽量

    16164
  • RTU
    RTU
    +關注

    關注

    0

    文章

    403

    瀏覽量

    28598
收藏 人收藏

    評論

    相關推薦

    嫌布線太麻煩,不妨考慮"RS485總線+無線+Modbus RTU協(xié)議" ?

    增加了更多的成本。"RS485總線+無線+Modbus RTU協(xié)議"既兼容了"RS485總線",又兼容了"無線",還兼容全世界公認
    發(fā)表于 02-19 13:41

    請問RS485Modbus RTU協(xié)議用在wifi傳服務器上適合嗎?

    準備用wifi模塊,把一些傳感器的實時數(shù)據(jù)上傳到服務器,在制定數(shù)據(jù)通訊協(xié)議,我只做過RS485Modbus RTU
    發(fā)表于 06-24 04:36

    怎么實現(xiàn)基于RS485接口Modbus協(xié)議的PLC與多機通訊的設計?

    怎么實現(xiàn)基于RS485接口Modbus協(xié)議的PLC與多機通訊的設計?
    發(fā)表于 06-03 06:14

    串行口RS485通訊協(xié)議概述

    第九章串行口RS485通訊協(xié)議 9.1通訊概述本公司系列變頻器向用戶提供工業(yè)控制中通用的RS485通訊
    發(fā)表于 09-09 07:24

    請問MODBUS通訊協(xié)議及PLC編程通訊實例有哪些

    請問MODBUS通訊協(xié)議及PLC編程通訊實例有哪些?
    發(fā)表于 09-29 08:45

    RS485通信與Modbus協(xié)議的相關資料分享

    文章目錄RS485 通信與 Modbus 協(xié)議單片機 RS485 通信接口、控制線、原理圖及程序實例
    發(fā)表于 11-30 07:31

    MODBUS協(xié)議RS485硬件電路兩者之間的聯(lián)系

    MODBUS-RTU協(xié)議最常用,比較簡單,在32上很容易實現(xiàn)。就目前來說,作者在實際應用中只接觸到了這種,所以以下的講解也是根據(jù)MODBUS-RTU協(xié)議來說的,下面我會附上介紹及代碼供
    發(fā)表于 11-30 07:41

    RS485Modbus通信協(xié)議讓工業(yè)自動化更高效

    電路的可靠性和穩(wěn)定性。   【RS485通訊協(xié)議】   實際應用中,RS485接口還需要進行協(xié)議
    發(fā)表于 05-05 16:25

    rs485通訊協(xié)議

    rs485通訊協(xié)議是本技術頻道的核心內(nèi)容,介紹了rs485通訊協(xié)議原理,
    發(fā)表于 08-13 17:21
    <b class='flag-5'>rs485</b><b class='flag-5'>通訊</b><b class='flag-5'>協(xié)議</b>

    MODBUS通訊協(xié)議RS485介面的PIC單片機通訊程式

    MODBUS通訊協(xié)議RS485介面的PIC單片機通訊程式.zip
    發(fā)表于 07-12 10:42 ?64次下載

    modbusrs485的關系_modbusrs485的區(qū)別和聯(lián)系

    RS485是一個物理接口,簡單的說是硬件;MODBUS是一種國際標準的通訊協(xié)議,用于不同廠商之間的設備交換數(shù)據(jù),簡單的說是軟件。
    發(fā)表于 01-03 18:36 ?11.4w次閱讀
    <b class='flag-5'>modbus</b>與<b class='flag-5'>rs485</b>的關系_<b class='flag-5'>modbus</b>與<b class='flag-5'>rs485</b>的區(qū)別和聯(lián)系

    RS485 MODBUS轉PROFINET網(wǎng)關配置步驟

    RS485 MODBUS轉PROFINET網(wǎng)關配置步驟,該PLC系統(tǒng)使用的是西門子S7-1200 PLC,支持 PROFINET 工業(yè)以太網(wǎng)協(xié)議;馬達保護器提供 RS485 串口,支持
    的頭像 發(fā)表于 10-15 18:54 ?2507次閱讀
    <b class='flag-5'>RS485</b> <b class='flag-5'>MODBUS</b>轉PROFINET網(wǎng)關配置步驟

    RS485MODBUS RTU的區(qū)別 如何選擇合適的通信技術?

    RS485MODBUS RTU的區(qū)別 如何選擇合適的通信技術? RS485是一種通信總線標準,而MODBUS
    的頭像 發(fā)表于 02-01 10:27 ?8822次閱讀

    ProfiNet轉RS485/Modbus Rtu協(xié)議網(wǎng)關

    網(wǎng)關實現(xiàn)PN轉rs485、profinet轉RS485、Modbus轉profinet、RS485轉PN、profinet轉Modbus
    的頭像 發(fā)表于 06-13 08:55 ?581次閱讀
    ProfiNet轉<b class='flag-5'>RS485</b>/<b class='flag-5'>Modbus</b> <b class='flag-5'>Rtu</b><b class='flag-5'>協(xié)議</b>網(wǎng)關

    PN轉RS485 Modbus RTU協(xié)議網(wǎng)關通訊優(yōu)勢分析

    Modbus RTU協(xié)議網(wǎng)關,它更像是一個連接不同世界橋梁,讓Profinet的高速和RS485的穩(wěn)定完美結合,實現(xiàn)數(shù)據(jù)的高效流轉。
    的頭像 發(fā)表于 06-17 08:46 ?783次閱讀
    PN轉<b class='flag-5'>RS485</b> <b class='flag-5'>Modbus</b> <b class='flag-5'>RTU</b><b class='flag-5'>協(xié)議</b>網(wǎng)關<b class='flag-5'>通訊</b>優(yōu)勢分析