通信協議_Modbus協議簡介

概念介紹

  • Modbus協議:一種串行通信協議,是Modicon公司(現在的施耐德電氣Schneider Electric)于1979年為使用可編程邏輯控制器(PLC)通信而發表。Modbus已經成為工業領域通信協議的業界標準(De facto),并且現在是工業電子設備之間常用的連接方式。
  • 通信具象化解釋:類似人的交流過程,需要有通信角色(主從,客戶端服務器…),通信介質(串口,以太網,無線…),通信協議(modbus,S7,MC…)三個要素。
  • 網絡協議三要素:語法(數據與控制信息的結構或格式),語義(發出何種控制信息),同步(事件實現順序,匹配速度等的詳細說明)。

modbusRTU協議介紹

語法結構:

  • 地址碼:用于標識從站設備,范圍是0到247,其中0為廣播地址,所有從站設備都會接收該地址的數據。
  • 功能碼:用于指示要執行的操作類型,例如讀取寄存器值、寫入單個寄存器等。
  • 數據:包括寄存器地址、數據值等信息,根據功能碼的不同,數據的內容和長度也會不同。
  • CRC校驗碼:用于檢測數據在傳輸過程中是否出現錯誤。在數據幀的最后添加兩個字節CRC校驗碼,接收方收到數據后,重新計算CRC校驗碼,并與接收到的CRC校驗碼進行比較,如果不同,則說明數據在傳輸過程中出現了錯誤。

功能碼:

  • 功能碼01:讀取線圈狀態(Read Coils),用于從遠程設備中連續讀取1到2000個線圈的狀態。
  • 功能碼02:讀取輸入狀態(Read Inputs),取得一組開關輸入的當前狀態ON/OFF。
  • 功能碼03:讀取保持寄存器(Read Holding Registers),在一個或多個保持寄存器中取得當前的二進制值。
  • 功能碼04:讀取輸入寄存器(Read Input Registers),在一個或多個輸入寄存器中取得當前的二進制值。
  • 功能碼05:強置單線圈(Force Single Coil),強置一個邏輯線圈的通斷狀態。
  • 功能碼06:預置單寄存器(Preset Single Register),把具體二進值裝入一個保持寄存器。
  • 功能碼15:強置多線圈(Force Multiple Coils),強置一串連續邏輯線圈的通斷。
  • 功能碼16:預置多寄存器(Preset Multiple Registers),把具體的二進制值裝入一串連續的保持寄存器。

例:
讀取(03)從站(01)中的窗簾打開程度(從第二個開始讀:00 02 讀一位 00 01 CRC校驗 25 CA):
在這里插入圖片描述
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/41753.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/41753.shtml
英文地址,請注明出處:http://en.pswp.cn/web/41753.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

大舍傳媒:如何在海外新聞媒體發稿報道摩洛哥?

引言 作為媒體行業的專家,我將分享一些關于在海外新聞媒體發稿報道摩洛哥的干貨教程。本教程將帶您深入了解三個重要的新聞媒體平臺:Mediterranean News、Morocco News和North African News。 地中海Mediterranean News Mediterranean News是一個知名…

合合信息大模型“加速器”重磅上線

大模型技術的發展和應用,預示著更加智能化、個性化未來的到來。如果將大模型比喻為正在疾馳的科技列車,語料便是珍貴的“燃料”。本次世界人工智能大會期間,合合信息為大模型打造的“加速器”解決方案備受關注。 在大模型訓練的上游階段&…

【計算機畢業設計】021基于weixin小程序微信點餐

🙊作者簡介:擁有多年開發工作經驗,分享技術代碼幫助學生學習,獨立完成自己的項目或者畢業設計。 代碼可以私聊博主獲取。🌹贈送計算機畢業設計600個選題excel文件,幫助大學選題。贈送開題報告模板&#xff…

Python學習中使用循環(for, while)

在Python編程語言中,循環是一個非常重要的概念,可以幫助我們在代碼中重復執行某些操作。Python支持兩種主要的循環結構:for 循環和 while 循環。 1. for 循環 for 循環用于遍歷一個序列(如列表、元組、字符串)或其他…

第11章:標準化和軟件知識產權

第11章:標準化和軟件知識產權 標準化 國際標準(International Standard)是指國際標準化組織(ISO)、國際電工 委員會(IEC)所制定的標準。 標準 是對重復性事物和概念所做的統一規定。 標準化的特征包括橫向綜合性、政策性和統一性 。 標準化是指在經濟、技術、科學…

JAVA學習-練習試用Java實現“分發糖果”

問題: 老師想給孩子們分發糖果,有 N 個孩子站成了一條直線,老師會根據每個孩子的表現,預先給他們評分。 需要按照以下要求,幫助老師給這些孩子分發糖果: 每個孩子至少分配到 1 個糖果。 評分更高的孩子…

FastAPI:高性能異步API框架

文章目錄 引言官網鏈接FastAPI 原理1. 基于 Starlette 和 Pydantic2. 路由與依賴注入3. 自動文檔 使用方法安裝 FastAPI創建一個簡單的API運行服務器 優缺點優點缺點 結論 引言 在快速發展的Web和移動應用時代,構建高效、可擴展的API成為了現代軟件開發的關鍵需求之…

Thingsboard 系列之通過 ESP8266+MQTT 模擬設備上報數據到平臺

前置工作 Thingsboard平臺ESP 8266 NodeMCU 開發板IDE: Arduino 或 VScode 均可 服務端具體對接流程 系統管理員賬號通過 Thingsboard 控制面板創建租戶等信息并以租戶賬號登錄 實體 —> 設備維護具體設備信息 創建完成后通過管理憑據修改或直接復制訪問令牌…

python 冷知識 66 個 0708

66個有趣的Python冷知識 內聯注釋 可以在代碼行尾使用 # 進行內聯注釋,例如 x 10 # 這是一個內聯注釋。 多行注釋 多行注釋可以用三個引號 或 """ 包裹。 分數 fractions 模塊提供了分數類型,可以精確表示分數值。 小數 decimal 模塊…

致遠OA同步組織架構到企業微信

致遠OA同步組織架構到企業微信 可適配任何系統 背景 原有的微協同無法滿足人員同步,因為在啟用微協同的時候,企業微信已經存在人員,所以配置微協同之后,人員會出現新增而不會同步修改 方案 重寫同步,針對已經存在…

Visual Studio下安裝引入Boost庫

背景&#xff1a; 在 Win 上通過 Visual Studio 運行 c 代碼&#xff0c;引入頭文件 #include <boost/...>&#xff0c;顯式無法打開&#xff0c;需要手動下載boost并進行配置。 1、下載boost&#xff1a; Boost官網&#xff1a;Boost Downloads 下載boost&#xff0c…

網安加·百家講壇 | 關昕健:新時代企業數據安全運營思路

作者簡介&#xff1a;關昕健&#xff0c;某運營商安全專家&#xff0c;2015年獲CISSP認證&#xff0c;長期負責企業安全運營工作&#xff0c;關注國內外數據安全動態與解決方案&#xff0c;持續開展數據安全運營實踐。 近年來&#xff0c;隨著《數據安全法》的出臺和國家數據局…

Pytorch中的DataLoader類

&#x1f4da;博客主頁&#xff1a;knighthood2001 ?公眾號&#xff1a;認知up吧 &#xff08;目前正在帶領大家一起提升認知&#xff0c;感興趣可以來圍觀一下&#xff09; &#x1f383;知識星球&#xff1a;【認知up吧|成長|副業】介紹 ??如遇文章付費&#xff0c;可先看…

js逆向案例 | 加速樂反爬逆向

前言 加速樂作為一種常見的反爬蟲技術&#xff0c;在網絡上已有大量詳盡深入的教程可供參考。然而&#xff0c;對于那些初次接觸的人來說&#xff0c;直接面對它可能仍會感到困惑。 聲明 本文僅用于學習交流&#xff0c;學習探討逆向知識&#xff0c;歡迎私信共享學習心得。如…

oracle19 數據庫介紹

1.1Oracle數據庫概念和應用 每個人家里都會有冰箱&#xff0c;冰箱是用來干什么的&#xff1f;冰箱是用來存放食物的地方。同樣的&#xff0c;數據庫是存放數據的地方。正是因為有了數據庫后&#xff0c;可以直接查找數據。例如你每天使用余額寶查看自己的賬戶收益&#xff0c;…

【YOLOv5/v7改進系列】改進池化層為RFB

一、導言 論文 "Receptive Field Block Net for Accurate and Fast Object Detection" 中提出的 RFB (Receptive Field Block) 模塊旨在模仿人類視覺系統中的感受野結構&#xff0c;以增強深度學習模型對不同尺度和位置的目標檢測能力。下面總結了RFB模塊的主要優點…

MySQL數據庫巡檢步驟

MySQL巡檢 系統基本信息 機型號 IP CPU 內存 磁盤 (業務)系統信息 操作系統 主機名 操作系統巡檢 檢查內容 說明 檢查方法 結果&#xff08;異常需詳細說明&#xff09; 正常輸出結果 系統配置檢查 操作系 統版本 #uname –a □正常 □異常 顯示系統版本和核心補丁信…

AIGC時代程序員的躍遷——編程高手的密碼武器

&#x1f49d;&#x1f49d;&#x1f49d;歡迎來到我的博客&#xff0c;很高興能夠在這里和您見面&#xff01;希望您在這里可以感受到一份輕松愉快的氛圍&#xff0c;不僅可以獲得有趣的內容和知識&#xff0c;也可以暢所欲言、分享您的想法和見解。 推薦:kwan 的首頁,持續學…

一、redis-萬字長文讀懂redis

高性能分布式緩存Redis `第一篇章`1.1緩存發展史&緩存分類1.1.1 大型網站中緩存的使用帶來的問題1.1.2 常見緩存的分類及對比與memcache對比1.2 數據類型選擇&應用場景1.2.1 string1.2.2 hash1.2.3 鏈表1.2.4 set1.2.5 sortedset有序集合類型1.2.6 總結1.3 Redis高級應…

[數倉]三、離線數倉(Hive數倉系統)

第1章 數倉分層 1.1 為什么要分層 DIM&#xff1a;dimensionality 維度 1.2 數據集市與數據倉庫概念 1.3 數倉命名規范 1.3.1 表命名 ODS層命名為ods_表名DIM層命名為dim_表名DWD層命名為dwd_表名DWS層命名為dws_表名 DWT層命名為dwt_表名ADS層命名為ads_表名臨時表命名為…