国产精自产拍久久久久久蜜,亚洲视频在线观看,亚洲小说图片,国产伦精品一区二区三区免.费

產品|公司|采購|招標

廣電計量檢測集團股份有限公司
  • $item.Title

世紀星標準Modbus協議驅動揭秘(一)

參考價面議
具體成交價以合同協議為準
  • 公司名稱北京世紀長秋科技有限公司
  • 品       牌
  • 型       號
  • 所  在  地北京市
  • 廠商性質其他
  • 更新時間2025/1/20 9:05:15
  • 訪問次數63
產品標簽:

在線詢價收藏產品 點擊查看電話
  北京世紀長秋科技有限公司是從事工業自動化軟件研發的,提供軟件開發、銷售、服務及工業自動化系統集成等整套服務,以創新為本的理念,為用戶提供量身定做的解決方案。   我們的團隊由充滿創新活力、綜合素質高的業內精英組成,擁有經驗豐富的高級編程人員和現場工程技術人員,公司現分設工控工程部、軟件工程部、產品研發部、銷售部和技術支持部,致力于將整合的服務帶給用戶。    我們的自主產權軟件產品《世紀星通用工業自動化監控組態軟件》為國內優秀自動化主流品牌軟件之一,本產品自1999年正式進入市場,十年內已有四萬多套軟件應用于相關行業,其中包括電力變電配電自動化、電廠監控、石油、化工、冶金、礦山、工業民用水處理、環保污水處理、儲備糧庫、鐵路隧道信號監控、交通信號監控、食品及飲料自動化監控等。    作為自動化軟件領域的廠商,我們自成立以來專心從事自動化軟件平臺的開發、銷售及技術服務,與國內外眾多硬件廠商和系統集成商保持長期、穩定的合作關系。我們為用戶提供不同層次、不同形式軟硬件一體化的解決方案,在前進的同時不斷審視完善,整合全線產品,打造優質、精準的自動化軟件,以滿足日益增長的多樣化用戶需求。   我們始終堅持新理念、新科技,走進用戶,貼近用戶,將用戶最重要的需求植入軟件研發服務的每個過程,為國內工業自動化市場提供、、的工業自動化產品。   “創新科技,服務至上”是我們的企業理念,打造自動化軟件領域中真正的民族品牌是我們的目標,在經濟化不可阻擋的發展趨勢面前,我們會做得更好,成為您信息化道路上值得信賴的伙伴!
本文來源:《世紀星月刊》第2期作者:曾慧  MODBUS協議是康公司1978年發明用于電子控制器進行控制和通信的協議
世紀星標準Modbus協議驅動揭秘(一) 產品信息

本文來源:《世紀星月刊》第2期 作者:曾慧


  MODBUS協議是康公司1978年發明用于電子控制器進行控制和通信的協議。不同廠商生產的符合MODBUS協議的控制設備可以連成工業網絡,進行集中監控。MODBUS協議采用主從(master-slave)技術,是一種問答方式的通信協議。每次通信均由主機發出數據請求信息,從機接收到正確消息后就可以發送數據到主機以響應請求;主機也可以直接發信息修改從機的數據,實現雙向讀寫。  在具體介紹Modbus協議之前,先向大家簡單介紹一下設備中的數據如何存儲。我們常把設備中存儲數據的單元稱為寄存器,按照存儲數據的類型可以分為位寄存器和16位寄存器兩種,如圖1所示:

圖1

  位寄存器的容量為1位,16位寄存器的容量為16位,每一個存儲數據的寄存器都有一個對應的寄存器地址,Modbus協議就是根據寄存器地址來查詢數據或者設置數據到特定的寄存器中。如圖1所示,位寄存器用來存儲離散值,即開關量;16位寄存器用來存儲16位整數,16位寄存器里的數據既可以獨立表示一個16位整數,也可以用兩個連續的16位寄存器表示32位整型或實型的數據,低地址存放低16位,高地址存放高16位。
  接下來詳細介紹Modbus協議。Modbus協議分為三種通信方式:Modbus RTU、Modbus ASCII以及Modbus TCP。
  首先,Modbus TCP的通信格式和Modbus RTU非常相似,的差別只是Modbus RTU最后帶兩個字節的CRC校驗,而Modbus TCP沒有。
  其次,Modbus ASCII的通信格式與Modbus RTU其實“神合貌離”,就是把Modbus RTU的每一個字節(例如:27H)高四位(2)和低四位(7)拆分為兩個字節,并以ASCII碼的方式表現出來(32 37),再給命令幀分別加上起始符和結束符便可以,當然Modbus RTU和Modbus ASCII的校驗的方式不同,這里暫不詳述,所以同一條命令用Modbus RTU方式和Modbus ASCII方式表現出來,雖然在命令長度的上有很大的區別,但其實際表達的意思卻是一樣。
  下面就以Modbus RTU為例,詳細表述世紀星組態軟件是如何讀取設備中的數據,并且將數據設置到設備中。

1.讀數據:
  上位機發送命令:02 03 00 05 00 02 D4 39
  設備返回的數據:02 03 04 20 08 20 10 49 3D
  之前沒有接觸過Modbus RTU協議的朋友們看了上面列出的數據,會稍有不解,這里為大家詳細解釋一下。
  1)發送的命令:
  個字節:02,它表示的是設備地址。在同一條485總線上,可能會接多個設備,而這個設備地址就相當于每一個設備的標識,繼而決定每一個設備的設備地址在同一條總線上必須是。
  第二個字節:03,這個字節是功能碼字節,作用就是告訴設備,上位機想要讀取的是什么樣的數據,世紀星組態軟件支持的讀數據的功能碼有:01H、02H、03H和04H,具體含義請參照表1。


表1

  第三第四個字節:00 05,表示的是一個寄存器地址,它告訴設備上位機想要讀取的數據,是從寄存器地址5開始的一個或多個寄存器里的數據。
  第五第六個字節:00 02,表示的是讀取寄存器的個數,結合第三第四個字節,就是告訴設備,上位機想要讀取的數據是從寄存器地址5開始的2個寄存器里的數據,即寄存器地址為5和6的寄存器里的數據。
  第七第八個字節:D4 39,是CRC校驗碼,不論是讀數據還是設置數據,發送和返回命令里的最后兩個字節都是CRC校驗碼,具體的計算方法這里暫不詳述。

  2)返回的數據:
  個字節:02,表示設備地址,作用同發送命令中個字節02。
  第二個字節:03,表示功能碼,作用同發送命令中第二個字節03。
  第三個字節:04,表示返回有效數據的字節個數,這里要說明一下的是對于位寄存器(包括表1中的線圈狀態和輸入狀態),每一個寄存器的容量只有一位,如果上位機發送的命令中要求連續讀8個位寄存器(即發送命令中的第五第六個字節為00 08),設備返回的數據中的第三個字節只為1,因為一個字節的容量為8位,可以表示8個位寄存器的狀態。而對于表1中的保持寄存器和輸入寄存器,每一個寄存器的容量為16位,它可以表示一個16位的整型數據,或者一個32位整型或實型數據的高16位或低16位。所以設備回傳一個保持寄存器或輸入寄存器的數據需要兩個字節,這就解釋了發送命令中要求讀取2個保持寄存器的數據,設備返回的有效數據為4個字節。
  緊跟在第三個字節后面的4個字節的數據便是設備返回的有效數據,結合發送的命令,我們可知在寄存器地址為0005H的寄存器中存儲的數據為2008H(十進制為8200),寄存器地址為0006H的寄存器中存儲的數據為2010H(十進制為8208)。
  第八第九個字節:49 3D,是CRC校驗碼。

2. 寫數據
  1)寫位寄存器
  上位機發送命令:02 05 00 05 FF 00 9C 08
  設備返回的數據:02 05 00 05 FF 00 9C 08
  個字節:02,表示設備地址,這里就不做重復介紹。
  第二個字節:05,為功能碼字節,05號功能碼的作用為強置一個位寄存器的0/1(ON/OFF)狀態。
  第三第四個字節:0005,表示的是上位機發送命令所強置的寄存器的地址。
  第五第六個字節:FF00H,表示上位機要將地址為5的位寄存器強置為1,當強置為0時,第五第六個字節為:00 00。
  第七第八個字節:9C 08,為CRC校驗字節。
  設備正常返回時,返回的數據與上位機發送的命令是一致的。

  2)寫單個16位寄存器
  上位機發送命令:02 06 00 05 00 12 19 F5
  設備返回的數據:02 06 00 05 00 12 19 F5
  個字節:02,表示設備地址。
  第二個字節:06,為功能碼字節,06號功能碼的作用為預置單個16位寄存器。
  第三第四個字節:0005,表示的是上位機發送命令所預置的寄存器的地址。
  第五第六個字節:0012H,表示上位機要將地址為5的16位寄存器預置為12H(十進制為18)。
  第七第八個字節:19 F5,為CRC校驗字節。
  設備正常返回時,返回的數據與上位機發送的命令一致。

  3)寫多個16位寄存器
  上位機發送命令:02 10 00 06 00 02 04 01 02 00 00 DC FD
  設備返回的數據:02 10 00 06 00 04 21 F8
  發送的命令:
  個字節:02,表示設備地址。
  第二個字節:10H(十進制為16),為功能碼字節,10H號功能碼的作用為預置多個16位寄存器。
  第三第四個字節:0006,表示的是上位機發送命令所預置的多個寄存器的起始地址為0006H。
  第五第六個字節:0002,表示上位機要連續預置連續的兩個寄存器。
  第七個字節:04,表示后面跟著的4個字節數據是要預置到寄存器中去的。
  緊跟在第七個字節后的四個字節便是要預置到寄存器中的數據,結合前面的信息,我們知道這條命令是要將0102H(十進制為258)預置到地址為6的寄存器中,0000H預置到地址為7的寄存器中。
  最后兩個字節:9C08,為CRC校驗字節。
  返回的數據:
  個字節:02,表示設備地址。
  第二個字節:10H(十進制為16),為功能碼字節。
  第三第四個字節:0006,表示的是上位機發送命令所預置的多個寄存器的起始地址位0006H。
  第五第六個字節:0004,表示上位機預置了連續的兩個寄存器即4個字節的有效數據。
  第七第八個字節:19 F5,為CRC校驗字節。
  無論是強制位寄存器還是預置16位寄存器,設備返回數據的作用僅僅是告訴上位機數據已經成功設置到設備寄存器中了。

  關于Modbus RTU協議格式的暫時介紹到這里,希望這篇文章可以讓對通信協議不了解甚至沒有接觸過Modbus協議的朋友們對Modbus有初步的認識。在下一期的《世紀星月刊》中,我會繼續介紹世紀星組態軟件對Modbus 協議的支持情況,希望會對世紀星的廣大用戶有所幫助。 ■

產品對比
QQ

咨詢中心

在線客服QQ交談

市場部QQ交談

發布詢價建議反饋
回到頂部

Copyright hbzhan.comAll Rights Reserved

環保在線 - 環保行業“互聯網+”服務平臺

對比欄

提示

×

*您想獲取產品的資料:

以上可多選,勾選其他,可自行輸入要求

個人信息:

主站蜘蛛池模板: 准格尔旗| 饶平县| 岫岩| 雷州市| 沁源县| 手游| 邓州市| 汝阳县| 沛县| 漳州市| 呼和浩特市| 吕梁市| 龙井市| 木兰县| 乌苏市| 绵阳市| 大厂| 武威市| 即墨市| 砚山县| 抚顺市| 广东省| 凤凰县| 精河县| 富顺县| 阿城市| 甘孜县| 通城县| 亳州市| 钟祥市| 十堰市| 股票| 望奎县| 三明市| 长汀县| 汾西县| 柘荣县| 乐业县| 忻城县| 洛浦县| 荥经县|