freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于modbus協(xié)議的通訊系統(tǒng)(編輯修改稿)

2025-01-09 04:39 本頁面
 

【文章內(nèi)容簡介】 訊協(xié)議類型: ModbusRTU ⑵ 傳輸方式: RS485 半雙工 ⑶ 通訊地址: 理論上可能的設(shè)備地址( 1~ 247) ⑷ 通訊波特率: 300BPS~ 38400BPS ⑸ 通訊介質(zhì):雙絞線 ⑹ 通訊距離:大于 1000 米 鏈路層 ⑴ 傳輸方式 : 主從半雙 工方式。 首先,主機的信號尋址到一臺唯一的終端設(shè)備軟起動器(從機);然后,在相反的方向上終端設(shè)備 (軟起動器)發(fā)出的應(yīng)答信號傳輸給主機。協(xié)議只允許在主機和終端設(shè)備(軟起動器)之間,而不允許獨立的終端設(shè)備之間的數(shù)據(jù)交換。這就不會使它們在初始化時占據(jù)通訊線路,而僅限于相應(yīng)到達終端設(shè)備本機的查詢信號。 ⑵ 數(shù)據(jù)幀格式 : 一個數(shù)據(jù)幀格式包括: 1 位起始位, 8 位數(shù)據(jù)位, 偶校驗位 , 1 位停止位 。 ⑶ 數(shù)據(jù)包格式 : 表 31 數(shù)據(jù)包格式 地址 功能碼 數(shù)據(jù) 校驗碼 8Bits 8Bits N 8 Bits 16Bits ⑷ 數(shù)據(jù)格式說明: 本協(xié)議詳細定義了校驗碼、數(shù)據(jù)序列等,這些都是特定數(shù)據(jù)交換的必要內(nèi)容。當(dāng)數(shù)據(jù)幀到達終端設(shè)備時,它通過一個簡單的“端口”進入尋址到的設(shè)備,該設(shè)備去掉數(shù)據(jù)幀的“信 封”(數(shù)據(jù)頭),讀取數(shù)據(jù)。如果沒有錯誤,就執(zhí)行數(shù)據(jù)所請求的任務(wù)。然后,它將自己生成的數(shù)據(jù)加入到取得的“信封”中,把數(shù)據(jù)幀返回給發(fā)送者。返回的響應(yīng)數(shù)據(jù)中包含了以下內(nèi)容:終端從機地址( Address)、被執(zhí)行了的命令 (Function)、執(zhí)行命令生成的被請求數(shù)據(jù) (Data)和一個校驗碼( Check)。終端從機能對來自主機的錯誤通訊進行識別,并做出不同的錯誤響應(yīng)。 地址( Address)域 地址域在幀的開始部分,由 8 位組成 ,理論上可能的設(shè)備地址( 1~ 247) ,這些位標(biāo)明了用戶指定的終端設(shè)備的地址,該設(shè)備將接收來自與之相連的主機數(shù)據(jù)。每個終端設(shè)備的地址必須是唯一的,僅僅被尋址到的終端會響應(yīng), 響應(yīng)包含了該地址的查詢應(yīng)答。當(dāng)終端發(fā)送回一個響應(yīng),響應(yīng)中的從機地址數(shù)據(jù)便告訴了主機哪臺終端正與之進行通訊。 在本次設(shè)計中我們采用 RS232轉(zhuǎn) 485這個接口實現(xiàn)通訊,而因為 RS485芯片的驅(qū) 動能力有限,在實際應(yīng)用中其實只能驅(qū)動 40 多個從機而已。 功能( Function)域 功能域代碼告訴了被尋址到的終端執(zhí)行何種功能操作。 下 表列出了所有本協(xié)議 比較常 用到的功能碼、它們的意義及它們的初始功能。 表 32 功能域 01 讀取線圈狀態(tài) 取得一組邏輯線圈的當(dāng)前狀態(tài)( ON/OFF) 02 讀取輸入狀態(tài) 取得一組開關(guān)輸入的當(dāng)前狀態(tài)( ON/OFF) 03 讀取保持寄存器 在一個或多個保持寄存器中取得當(dāng)前的二進制值 04 讀取輸入寄存器 在一個或多個輸入寄存器中取得當(dāng)前的二進制值 05 強置單線圈 強置一個邏輯線圈的通斷狀態(tài) 06 預(yù)置單寄存器 把具體二進值裝入一個保持寄存器 07 讀取異常狀態(tài) 取得 8 個內(nèi)部線圈的通斷狀態(tài),這 8 個線圈的地址由控制器決定 08 回送診斷校驗 把診斷校驗報文送從機,以對通信處理進行評鑒 09 編程(只用于484) 使主機模擬編程器作用,修改 PC 從機邏輯 10 控詢(只用于484) 可使主機與一臺正在執(zhí)行長程序任務(wù)從機通信,探詢該從機是否已完成其操作任務(wù),僅在含有功能碼 9 的報文發(fā)送后,本功能碼才發(fā)送 11 讀取事件計數(shù) 可使主機發(fā)出單詢問,并隨 即判定操作是否成功,尤其是該命令或其他應(yīng)答產(chǎn)生通信錯誤時 12 讀取通信事件記錄 可是主機檢索每臺從機的 Modbus 事務(wù)處理通信事件記錄。如果某項事務(wù)處理完成,記錄會給出有關(guān)錯誤 13 編程( 184/384 484 584) 可使主機模擬編程器功能修改 PC 從機邏輯 14 探詢( 184/384 484 584) 可使主機與正在執(zhí)行任務(wù)的從機通信,定期控詢該從機是否已完成其程序操作,僅在含有功能 13 的報文發(fā)送后,本功能碼才得發(fā)送 15 強置多線圈 強置一串連續(xù)邏輯線圈的通斷 數(shù)據(jù)域 數(shù)據(jù)域包含了終端執(zhí)行特定功能所需要的數(shù)據(jù)或者終端響應(yīng)查詢時采集到的數(shù)據(jù)。這些數(shù)據(jù)的內(nèi)容 可能是數(shù)值、參考地址或者極限值。例如:功能域碼告訴終端讀取一個寄存器,數(shù)據(jù)域則需要指明從哪 個寄存器開始讀及讀取多少個數(shù)據(jù),內(nèi)嵌的地址和數(shù)據(jù)依照類型和從機之間的不同能力而有所不同。 錯誤校驗域 該域允許主機和終端檢查傳輸過程中的錯誤。有時,由于電噪聲和其它干擾,一組數(shù)據(jù)在從一個設(shè) 備傳輸?shù)搅硪粋€設(shè)備時在線路上可能會發(fā)生一些改變,出錯校驗?zāi)軌虮WC主機或者終端不去響應(yīng)那些傳 輸過程中 發(fā)生了改變的數(shù)據(jù),這就提高了系統(tǒng)的安全性和效率,出錯校驗使用了 16 位循環(huán)冗余的方法。 錯誤檢測 循環(huán)冗余校驗( CRC)域占用兩個字節(jié),包含了一個 16 位的二進制值。 CRC 值由傳送設(shè)備計算出來, 然后附加到數(shù)據(jù)幀上,接收設(shè)備在接收數(shù)據(jù)時重新計算 CRC值,然后與接收到的 CRC 域中的值進行比較,如果這兩個值不相等,就發(fā)生了錯誤。CRC 運算時,首先將一個 16 位的寄存器預(yù)置為全 1,然后連續(xù)把數(shù)據(jù)幀中的 8 位 字節(jié)與該寄存器的 當(dāng)前值進行運算,僅僅每個字節(jié)的 8 個數(shù)據(jù)位 參與生成 CRC,起始位和終止位以及可能使用的奇偶位都不影響 CRC 運算。在生成 CRC 值時,每個 8位字節(jié)與寄存器中的內(nèi)容進行異或,然后將結(jié)果向低位移位,高位則用“ 0”補充,最低位( LSB)移出并檢測,如果是 1,該寄存器就與一個預(yù)設(shè)的固定值進行一次異或運算,如果最低位為 0,不作任何處理。 上述處理重復(fù)進行,直到執(zhí)行完了 8 次移位操作,當(dāng)最后一位(第 8 位)移完以后,下一個 8 位字節(jié)與寄存器的當(dāng)前值進行異或運算,同樣進行上述的另一個 8 次移位異或操作,當(dāng)數(shù)據(jù)幀中的所有字節(jié)都作了處理,生成的最終值就 是 CRC 值。 生成一個 CRC 值的流程為: ⑴ 預(yù)置一個 16 位寄存器為 0FFFFH(全 1),稱之為 CRC 寄存器。 ⑵ 把數(shù)據(jù)幀中的第一個 8 位字節(jié)與 CRC 寄存器中的低字節(jié)進行異或運算,結(jié)果存回 CRC 寄存器。 ⑶ 將 CRC 寄存器向右移一位,最高位填以 0,最低位移出并檢測。 ⑷ 如果最低位為 0:重復(fù)第三步(下一次移位); 如果最低位為 1:將 CRC 寄存器與一個預(yù)設(shè)的固定值( 0A001H)進行異或運算。 ⑸ 重復(fù)第 3 步和第 4 步直到 8 次移位, 這樣處理完了一個完整的八位。 ⑹ 重復(fù)第 2 步到第 5 步來處理下一個八位,直到所有的字節(jié)處理結(jié)束。 ⑺ 最終 CRC 寄存器的值就是 CRC 的值。 RS485 接口簡介 RS485 標(biāo)準(zhǔn)理想地用于多分支( multidrop )應(yīng)用和遠程接口中。它允許在一條數(shù)據(jù)線 上連接 32 個發(fā)送器和接收器,非常適合于多分支應(yīng)用。由于允許使用 4000 英尺長的電纜, RS485 收發(fā)器可以使用一個寬(- 7V~ +12V)共模方式范圍來調(diào)整零電位偏差。因為 RS485 是一個差分接口,所以傳輸數(shù)據(jù)時 完全可以抑制來自發(fā)送線的干擾。 圖 31 RS485 引腳說明 NRF24L01 無線模塊內(nèi)容簡介 無線收發(fā)單元采用 單片高速 2Mbps 無線收發(fā)芯片 nRF24L01, nRF2401 是挪威 NoRDIC SEMICONDUCTOR 公司的產(chǎn)品,它把射頻收發(fā)電路集成在一塊芯片上,可以用 MCU 模擬 SPI 通信協(xié)議實現(xiàn)數(shù)字傳輸。通過編程, nRF2401 芯片的射頻工作頻率和輸出信號的功率等參量可以非常方便地調(diào)節(jié)。 無線收發(fā)芯片 nRF2401 具有以下功能: ⑴ 125 個工作頻道,工作頻道之間的轉(zhuǎn)換時間小于 200us ⑵ 無線通信數(shù)據(jù)具有地址檢測和循環(huán)冗余檢查。 ⑶ 信號的調(diào)制方式為頻移鍵控 (FSK) ⑷ 最大數(shù)據(jù)傳輸速率 1Mbps ⑸ 最大輸出功率 0dB ⑹ 獨特的 Shock Burst TM 射頻信號發(fā)射模式。該模式降低平均發(fā)射功率,降低對微控制器數(shù)據(jù)傳輸速率的要求。 ⑺ 接收靈敏度 — 93dBm。 ⑻ 獨特的 DuoCeiverT 模式。該模式支持兩個不同工作頻道的信號同時接收。 ⑼ 工作電壓范圍: 一 ;具有正常、旁路和掉電 3 種供電模式。 SPI 接口: SPI 接口是標(biāo)準(zhǔn)的 SPI 接口,其最大 的數(shù)據(jù)傳輸率為 10Mbps。大多數(shù)寄存器是可讀的。 SPI 指令設(shè)置 : SPI 接口可能用到的指令在下面有所說明。 CSN 為低后 SPI 接口等待執(zhí)行指令。每一條指令的執(zhí)行都必須通過一次 CSN 由高到低的變化。 表 33 SPI指令格式 指令名稱 指令格式 操作 R_REGISTER 000A AAAA 讀配置寄存器。 AAAAA 指出讀操作的寄存器地址 W_REGISTER 001A AAAA 寫配置寄存器。 AAAAA 指出寫操作的寄存器地址 只有在掉電模式和待機模式下可操作。 R_RX_PAYLOAD 0110 0001 讀 RX 有效數(shù)據(jù): 132 字節(jié)。讀操作全部從字節(jié) 0 開始。當(dāng)讀 RX 有效數(shù)據(jù)完成后, FIFO 寄存器中有效數(shù)據(jù)被清除。應(yīng)用于接收模式下。 W_RX_PAYLOAD 1010 0000 寫 TX 有效數(shù)據(jù): 132 字節(jié)。寫操作從字節(jié) 0 開始。應(yīng)用于發(fā)射模式下 FLUSH_TX 1110 0001 清除 TX FIFO 寄存器,應(yīng)用于發(fā)射模式下。 FLUSH_RX 1110 0010 清除 RX FIFO 寄存器,應(yīng)用于接收模式下在傳輸應(yīng)答信號過程中不應(yīng)執(zhí)行此指令。也就 是說,若傳輸應(yīng)答
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1