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

正文內(nèi)容

基于modbus協(xié)議的通訊系統(tǒng)-在線瀏覽

2024-10-11 21:33本頁(yè)面
  

【正文】 上位機(jī) 串口調(diào)試軟件 上 。其中 MCU 為各單元的控制中心,無線收發(fā)模塊是實(shí)現(xiàn) A 機(jī) 和B 機(jī)通信的終端; 主 機(jī)、數(shù)碼管和液晶 顯示部分用來觀察系統(tǒng)工作狀態(tài)及無線通信的成功與否。在改變數(shù)據(jù)傳輸模式時(shí),同一 Modbus 網(wǎng)絡(luò)中的所有 設(shè)備的數(shù)據(jù)傳輸模式必須一致。 在這種模式中,每個(gè) 8 比特的字節(jié)被轉(zhuǎn)換為兩個(gè) ASCII 字符進(jìn)行傳送。 代碼系統(tǒng):十六進(jìn)制, ASCII 字符 0? 9, A? F,消息中的每個(gè) ASCII 字符都是一個(gè)十六進(jìn)制字符組成每個(gè)字節(jié)的位: 表 21 ASCII模式 起始位 地址代碼 功能代碼 數(shù)據(jù)位 LRC 校驗(yàn)碼 結(jié)束位 START ADDRESS FUNCTION DATA LRC CHECK END 1 字節(jié) 2 字節(jié) 2 字節(jié) n 字節(jié) 2 字節(jié) 2 字節(jié) 1 CHAR 2 CHARS 2 CHARS n CHARS 2 CHARS 2 CHARS 方案二、 RTU( Remote Terminal Unit),即遠(yuǎn)程終端單元。 代碼系統(tǒng) : 8 位二進(jìn)制,十六進(jìn)制數(shù) 0...9, A...F, 消息中的每個(gè) 8 位域都是一個(gè)兩個(gè)十六進(jìn)制字符組成每個(gè)字節(jié)的位 : 表 22 RTU模式 起始位 地址代碼 功能代碼 數(shù)據(jù)位 CRC 校驗(yàn)碼 結(jié)束位 START ADDRESS FUNCTION DATA CRC CHECK END T1T2T3T4 8 BITS 8 BITS n * 8 BITS 16 BITS T1T2T3T4 通過比較可以看到, ASCII 協(xié)議和 RTU 協(xié)議相比擁有開始和結(jié)束標(biāo) 記,因此在進(jìn)行程序處理時(shí)能更加方便,而且由于傳輸?shù)亩际强梢姷?ASCII 字符,所以進(jìn)行調(diào)試時(shí)就更加的直觀,另外它的 LRC 校驗(yàn)也比較容易。 綜合各因素本次設(shè)計(jì) 采用 方案二即 RTU 模式。 由于 RS232C 接口標(biāo)準(zhǔn)出現(xiàn)較早,難免有不足 之處,主要有以下四點(diǎn): ⑴ 接口的信號(hào)電平值較高,易損壞接口電路的芯片,又因?yàn)榕cTTL 電平不兼容故需使用電平轉(zhuǎn)換電路方能與 TTL 電路連接。 ⑶ 接口使用一根信號(hào)線和一根信號(hào)返回線而構(gòu)成共地的傳輸形式, 這種共地傳輸容易產(chǎn)生共模干擾,所以抗噪聲干擾性弱。 方案二、 RS485 接口 。接口信號(hào)電平比 RS232C 降低了,就不易損壞接口電路的芯片, 且該電平與 TTL 電平兼容,可方便與 TTL 電路連接。 ⑷ RS485 接口的最大傳輸距離標(biāo)準(zhǔn)值為 4000 英尺,實(shí)際 4 上可達(dá) 3000 米,另外 RS232C 接口在總線上只允許連 接 1 個(gè)收發(fā)器, 即單站能力。即具有多站能力 ,這樣用戶可以利用單一的 RS485 接口方便地建立起設(shè)備網(wǎng)絡(luò) 。 無線模塊的選擇 方案一:采用 nRF24L01 無線收發(fā)芯片組成智能家庭安全系統(tǒng)的自適應(yīng)無線傳感和控制網(wǎng)絡(luò),網(wǎng)絡(luò)拓?fù)鋱D如圖所示。工作于 2. 4 GHz~ 2。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強(qiáng)型 ShockBurst 技術(shù),其中輸出功率和通信頻道通過程序進(jìn)行配置。 而且 nRF24L01 價(jià)格在 20 元左右,性價(jià)比高。整個(gè)應(yīng)用電路的無線頻率主要設(shè)定在 315MHz、433MHz、 868MHz 和 915MHz 四個(gè) ISM (工業(yè)、科學(xué)和醫(yī)學(xué) ) 頻段上 ,也可以容易地設(shè)置為 300MHz~ 348MHz、 400MHz~ 464MHz 和 800MHz~ 928MHz 的其它頻率上。 CC1100 適用于電子消費(fèi)產(chǎn)品、住宅、建 筑的自動(dòng)控制、無線警報(bào)和安全系統(tǒng)等諸多無線應(yīng)用領(lǐng)域。模塊優(yōu)點(diǎn):成本低廉,頻率穩(wěn)定,接收靈敏度高。 綜合各方面因素的考慮,我們選擇方案一。 5 第3 章 通訊系統(tǒng)實(shí)現(xiàn)的理論原理 3 .1 MODBUSRTU 通訊協(xié)議內(nèi)容簡(jiǎn)介 物理層 ⑴ 通訊協(xié)議類型: ModbusRTU ⑵ 傳輸方式: RS485 半雙工 ⑶ 通訊地址: 理論上可能的設(shè)備地址( 1~ 247) ⑷ 通訊波特率: 300BPS~ 38400BPS ⑸ 通訊介質(zhì):雙絞線 ⑹ 通訊距離:大于 1000 米 鏈路層 ⑴ 傳輸方式 : 主從半雙工方式。協(xié)議只允許在主機(jī)和終端設(shè)備(軟起動(dòng)器)之間,而不允許獨(dú)立的終端設(shè)備之間的數(shù)據(jù)交換。 ⑵ 數(shù)據(jù)幀格式 : 一個(gè)數(shù)據(jù)幀格式包括: 1 位起始位, 8 位數(shù)據(jù)位, 偶校驗(yàn)位 , 1 位停止位 。當(dāng)數(shù)據(jù)幀到達(dá)終端設(shè)備時(shí),它通過一個(gè)簡(jiǎn)單的“端口”進(jìn)入尋址到的設(shè)備,該設(shè)備去掉數(shù)據(jù)幀的“信 封”(數(shù)據(jù)頭),讀取數(shù)據(jù)。然后,它將自己生成的數(shù)據(jù)加入到取得的“信封”中,把數(shù)據(jù)幀返回給發(fā)送者。終端從機(jī)能對(duì)來自主機(jī)的錯(cuò)誤通訊進(jìn)行識(shí)別,并做出不同的錯(cuò)誤響應(yīng)。每個(gè)終端設(shè)備的地址必須是唯一的,僅僅被尋址到的終端會(huì)響應(yīng), 響應(yīng)包含了該地址的查詢應(yīng)答。 在本次設(shè)計(jì)中我們采用 RS232轉(zhuǎn) 485這個(gè)接口實(shí)現(xiàn)通訊,而因?yàn)?RS485芯片的驅(qū)動(dòng)能力有限,在實(shí)際應(yīng)用中其實(shí)只能驅(qū)動(dòng) 40 多個(gè)從機(jī)而已。 下 表列出了所有本協(xié)議 比較常 用到的功能碼、它們的意義及它們的初始功能。如果某項(xiàng)事務(wù)處理完成,記錄會(huì)給出有關(guān)錯(cuò)誤 13 編程( 184/384 484 584) 可使主機(jī)模擬編程器功能修改 PC 從機(jī)邏輯 14 探詢( 184/384 484 584) 可使主機(jī)與正在執(zhí)行任務(wù)的從機(jī)通信,定期控詢?cè)搹臋C(jī)是否已完成其程序操作,僅在含有功能 13 的報(bào)文發(fā)送后,本功能碼才得發(fā)送 15 強(qiáng)置多線圈 強(qiáng)置一串連續(xù)邏輯線圈的通斷 數(shù)據(jù)域 數(shù)據(jù)域包含了終端執(zhí)行特定功能所需要的數(shù)據(jù)或者終端響應(yīng)查詢時(shí)采集到的數(shù)據(jù)。例如:功能域碼告訴終端讀取一個(gè)寄存器,數(shù)據(jù)域則需要指明從哪 個(gè)寄存器開始讀及讀取多少個(gè)數(shù)據(jù),內(nèi)嵌的地址和數(shù)據(jù)依照類型和從機(jī)之間的不同能力而有所不同。有時(shí),由于電噪聲和其它干擾,一組數(shù)據(jù)在從一個(gè)設(shè) 備傳輸?shù)搅硪粋€(gè)設(shè)備時(shí)在線路上可能會(huì)發(fā)生一些改變,出錯(cuò)校驗(yàn)?zāi)軌虮WC主機(jī)或者終端不去響應(yīng)那些傳 輸過程中發(fā)生了改變的數(shù)據(jù),這就提高了系統(tǒng)的安全性和效率,出錯(cuò)校驗(yàn)使用了 16 位循環(huán)冗余的方法。 CRC 值由傳送設(shè)備計(jì)算出來, 然后附加到數(shù)據(jù)幀上,接收設(shè)備在接收數(shù)據(jù)時(shí)重新計(jì)算 CRC值,然后與接收到的 CRC 域中的值進(jìn)行比較,如果這兩個(gè)值不相等,就發(fā)生了錯(cuò)誤。在生成 CRC 值時(shí),每個(gè) 8位字節(jié)與寄存器中的內(nèi)容進(jìn)行異或,然后將結(jié)果向低位移位,高位則用“ 0”補(bǔ)充,最低位( LSB)移出并檢測(cè),如果是 1,該寄存器就與一個(gè)預(yù)設(shè)的固定值進(jìn)行一次異或運(yùn)算,如果最低位為 0,不作任何處理。 生成一個(gè) CRC 值的流程為: ⑴ 預(yù)置一個(gè) 16 位寄存器為 0FFFFH( 全 1),稱之為 CRC 寄存器。 ⑶ 將 CRC 寄存器向右移一位,最高位填以 0,最低位移出并檢測(cè)。 ⑸ 重復(fù)第 3 步和第 4 步直到 8 次移位,這樣處理完了一個(gè)完整的八位。 ⑺ 最終 CRC 寄存器的值就是 CRC 的值。它允許在一條數(shù)據(jù)線 上連接 32 個(gè)發(fā)送器和接收器,非常適合于多分支應(yīng)用。因?yàn)?RS485 是一個(gè)差分接口,所以傳輸數(shù)據(jù)時(shí)完全可以抑制來自發(fā)送線的干擾。通過編程, nRF2401 芯片的射頻工作頻率和輸出信號(hào)的功率等參量可以非常方便地調(diào)節(jié)。 ⑶ 信號(hào)的調(diào)制方式為頻移鍵控 (FSK) ⑷ 最大數(shù)據(jù)傳輸速率 1Mbps ⑸ 最大輸出功率 0dB ⑹ 獨(dú)特的 Shock Burst TM 射頻信號(hào)發(fā)射模式。 ⑺ 接收靈敏度 — 93dBm。該模式支持兩個(gè)不同工作頻道的信號(hào)同時(shí)接收。 SPI 接口: SPI 接口是標(biāo)準(zhǔn)的 SPI 接口,其最大的數(shù)據(jù)傳輸率為 10Mbps。 SPI 指令設(shè)置 : SPI 接口可能用到的指令在 下面有所說明。每一條指令的執(zhí)行都必須通過一次 CSN 由高到低的變化。 AAAAA 指出讀操作的寄存器地址 W_REGISTER 001A AAAA 寫配置寄存器。 R_RX_PAYLOAD 0110 0001 讀 RX 有效數(shù)據(jù): 132 字節(jié)。當(dāng)讀 RX 有效數(shù)據(jù)完成后, FIFO 寄存器中有效數(shù)據(jù)被清除。 W_RX_PAYLOAD 1010 0000 寫 TX 有效數(shù)據(jù): 132 字節(jié)。應(yīng)用于發(fā)射模式下 FLUSH_TX 1110 0001 清除 TX FIFO 寄存器,應(yīng)用于發(fā)射模式下。也就是說,若傳輸應(yīng)答信號(hào)過程中執(zhí)行此指令的話將使得應(yīng)答信號(hào)不能被完整的傳輸。當(dāng) CE 為高過程中,數(shù)據(jù)包被不斷的重新發(fā)射。 NOP 1111 1111 空操作。 R_REGISTER 和 W_REGISTER 寄存器可能操作單字節(jié)或多字節(jié)寄存器。在所有多字節(jié)寄存器被寫完之前可以 9 結(jié)束寫 SPI 操作,在這種情況下沒有寫完的高字節(jié)保持原有內(nèi)容不變。在CSN 狀態(tài)由高變低后可以通過 MISO 來讀取狀態(tài)寄存器的內(nèi)容。當(dāng) MCU 給中斷源寫‘ 1’時(shí),中斷引腳被禁止。通過設(shè)置可屏蔽中斷位為高,則中斷響應(yīng)被禁止。 本章小結(jié) 本章介紹了 modbus 通訊協(xié)議、 RS485 接口、 NRF24L01 通訊模塊的具體內(nèi)容 , 為硬件、軟件設(shè)計(jì)鋪平道路。 圖 41 最小系統(tǒng) 溫度采 集、獨(dú)立按鍵、液晶和數(shù)碼管顯示模塊 ⑴ 液晶顯示模塊如圖 42 所示,采用字符型液晶 1602,其具有操作簡(jiǎn)單顯示字符多特點(diǎn),并接 R0( 104)進(jìn)行對(duì)比度調(diào)節(jié), P0 為數(shù)據(jù)接口, , , 為控制線。 ⑶ 獨(dú)立按鍵單元 如圖 44,獨(dú)立按鍵用來對(duì)系統(tǒng)工作控制,例如調(diào)時(shí)間,發(fā)命令等作用。 無線收發(fā)單元 模塊 如圖 45 所示, 在設(shè)計(jì) NRF24L01 無線通訊模塊中要注意的是該芯片低工作電壓在 (~ ),而普通 5v 電壓會(huì)降低芯片壽命甚至將其燒壞,所 以需要對(duì)其電平轉(zhuǎn)換,在本設(shè)計(jì)中采用 三端穩(wěn)壓管,該芯片輸出電壓穩(wěn)定 在 NRF24L01 的工作電壓范圍內(nèi) 、輸出電流 800mA 滿足無線通訊芯片供應(yīng)電源。本電路的 232 電平轉(zhuǎn)換電路采用 MAX232 集成電路, 485 電路采用了 MAX485 集成電路。 PC 串口每根線可以提供大約 9mA 的電流,因此兩根線提供的電流足夠供給這個(gè)電路使用了。使用本電路需注意 PC 程序必須使串口的 DTR 和 RTS 輸出高電平,經(jīng)過 D3 穩(wěn)壓后得到 VCC,經(jīng)過實(shí)際測(cè)試, VCC 電壓大約在 左右。 MAX485 是通過兩個(gè)引腳 RE( 2 腳)和 DE( 3腳)來控制數(shù)據(jù)的輸入和輸出。在半雙工使用中,通??梢詫⑦@兩個(gè)腳直接相連,然后由 PC 或者單片機(jī)輸出的高低電平就可以讓 MAX485 在接收和發(fā)送狀態(tài)之間轉(zhuǎn)換了。平時(shí) MAX232 的 9 腳輸出高電平,經(jīng) Q1 倒相后,使 MAX485 的 RE和 DE 為低電平而處于數(shù)據(jù)接收狀態(tài)。 圖 46 RS232485 本章小結(jié) 本章主要包括電源模塊、單片機(jī)最小系統(tǒng)模塊、按鍵、溫度采集、數(shù)碼管和液晶顯示模塊、 RS232 轉(zhuǎn) RS485 接口模塊、 NRF24L01 無線通訊模塊的硬件設(shè)計(jì) ,介紹了設(shè)計(jì)的基本原理和一些注意事項(xiàng) 。本章主要介紹 報(bào)文處理的軟件實(shí)現(xiàn) , 并簡(jiǎn)要介紹 整體 A 機(jī) 時(shí)鐘 和 B 機(jī) 溫度信號(hào)無線交換 的軟件流程圖。 ⑴ 計(jì)算機(jī)發(fā)送 的數(shù)據(jù)包 : [設(shè)備地址 ] [命令號(hào) 03] [起始寄存器地址低 8 位 ] [高 8位 ] [讀取的寄存器數(shù) 低 8 位 ] [高 8 位 ] [CRC 校驗(yàn)的低 8 位 ] [CRC 校驗(yàn)的高 8 位 ] 即 : [01][03][01][00][01][00][CRC 低 ][CRC 高 ] 注釋:讀從機(jī)溫度 [01][03][02][00][01][00][CRC 低 ][CRC 高 ] 注釋: 讀從機(jī)時(shí)鐘的小時(shí) [01][03][03][00][01][00][CRC 低 ][CRC 高 ] 注釋:讀從機(jī)時(shí)鐘的分鐘 具體 意義如下: : 本次設(shè)計(jì)中設(shè)備地址為 0x01。 低 8 位、 高 8 位:表示想讀取的模擬量的 邏輯 地址 ,本次設(shè)計(jì) 中的 溫度 邏輯地址 為 0x01;小時(shí)的邏輯地址為 0x02。 低 8 位、 高 8 位:表示從起始地址開始讀多少個(gè)模擬量 (即邏輯地址長(zhǎng)度 )。 ( 在返 回的信息中一個(gè)模擬量需要返回兩個(gè)字節(jié) ) 。 ⑵ 從機(jī)響應(yīng)回主機(jī)的數(shù)據(jù)包 : [設(shè)備地址 ] [命令號(hào) 03] [返回的字節(jié)個(gè)數(shù) ][數(shù)據(jù) 1][數(shù)據(jù) 2]...[數(shù)據(jù) n][CRC 校驗(yàn)的低 8 位 ] [CRC 校驗(yàn)的高 8 位 ] 即 : [01][03][02][00][AC][CRC 低 ][CRC 高 ] 注釋:溫度值 回 應(yīng)給主機(jī)( ℃)[01][03][02][00][0B][CRC 低 ][CRC 高 ] 注釋:小時(shí)值 回 應(yīng)給主機(jī)( 11
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1