版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于物聯(lián)網(wǎng)的體溫檢測(cè)儀設(shè)計(jì)上海電機(jī)學(xué)院畢業(yè)設(shè)計(jì)課題名稱基于物聯(lián)網(wǎng)技術(shù)的體溫檢測(cè)儀設(shè)計(jì) 學(xué) 院 電氣學(xué)院 專 業(yè) 測(cè)控技術(shù)與儀器班 級(jí) 測(cè)控1411學(xué) 號(hào) 141001310123姓 名 孫梓凱 指導(dǎo)教師 張華 定稿日期: 2018 年 5月21日IV目 錄摘要IIAbstractIII第一章緒論11.1溫度儀表監(jiān)測(cè)系統(tǒng)的研究背景及意義11.2國(guó)內(nèi)外發(fā)展現(xiàn)狀1第二章硬件與通信協(xié)議介紹32.1單片機(jī)簡(jiǎn)介32.1.1單片機(jī)的定義32.1.2單片機(jī)端口介紹32.2溫度傳感器DS18B20介紹52.2.1主要特征52.2.2DS18B20溫度傳感器的工作原理62.2.3溫度傳感器DS18B20的操作流程
2、62.3Modbus-rtu通信協(xié)議82.3.1地址設(shè)置92.3.2功能碼102.3.3數(shù)據(jù)區(qū)的內(nèi)容102.3.4錯(cuò)誤校驗(yàn)11第三章系統(tǒng)硬件設(shè)計(jì)133.1系統(tǒng)結(jié)構(gòu)設(shè)計(jì)思路133.2系統(tǒng)硬件設(shè)計(jì)133.2.1電源部分133.2.2單片機(jī)最小系統(tǒng)143.2.3通信電路153.2.4溫度采集電路163.2.5聲光報(bào)警電路16第四章系統(tǒng)軟件設(shè)計(jì)184.1單片機(jī)開發(fā)環(huán)境184.2項(xiàng)目開發(fā)過程184.3單片機(jī)程序194.3.1主程序194.3.2初始化程序214.3.3通信程序22第五章實(shí)物調(diào)試27第六章結(jié)束語(yǔ)28參考文獻(xiàn):29致謝30附錄電路原理圖31附錄單片機(jī)程序32摘 要本設(shè)計(jì)以STC89C52RC
3、單片機(jī)作為主控芯片,DS18B20為溫度傳感器件實(shí)現(xiàn)了體溫檢測(cè)的功能。DS18B20器件具有單總線方式接口簡(jiǎn)單,測(cè)溫精度高,抗干擾的能力強(qiáng)等一些特點(diǎn)。本設(shè)計(jì)設(shè)計(jì)了六路DS18B20溫度傳感器,可以同時(shí)采集六路溫度數(shù)據(jù),控制板設(shè)計(jì)有485總線通信接口,可以通過RS485總線,按照標(biāo)準(zhǔn)的Modbus-rtu協(xié)議,將采集到的溫度數(shù)據(jù)通過GPRSDTU傳送到云端。設(shè)計(jì)中采用濟(jì)南有人公司是云平臺(tái),當(dāng)今社會(huì)是大數(shù)據(jù)的時(shí)代,通過云平臺(tái),可是便于醫(yī)生實(shí)時(shí)檢測(cè)病患體溫?cái)?shù)據(jù),同時(shí)也方便追溯過去以往體征數(shù)據(jù),非常易于搭建數(shù)據(jù)管理系統(tǒng)。系統(tǒng)可以通過云端修改溫度報(bào)警的上下限閾值,采用485方式的通信,對(duì)于設(shè)備擴(kuò)展組網(wǎng)有
4、很大的靈活性。由于DS18B20的測(cè)溫精度較高,因此本設(shè)計(jì)的溫度監(jiān)測(cè)精度,可以達(dá)到小數(shù)點(diǎn)后一位,正常人體體溫測(cè)量所需的精度要求。遠(yuǎn)程通信協(xié)議選擇工業(yè)上常用的modbus-rtu協(xié)議。此協(xié)議適合數(shù)據(jù)傳輸,穩(wěn)定性很好,已經(jīng)經(jīng)過多年工業(yè)上的檢驗(yàn)。本設(shè)計(jì)有上、下限溫度報(bào)警功能及溫度的聲音和發(fā)光報(bào)警。本設(shè)計(jì)最后經(jīng)過實(shí)物調(diào)試驗(yàn)證,完全實(shí)現(xiàn)了最初的設(shè)計(jì)要求。關(guān)鍵詞:?jiǎn)纹瑱C(jī);DS18B20;Proteus仿真; Modbus-rtuAbstractThis design uses STC89C52RC microcontroller as the main chip and DS18B20 as temper
5、ature sensor to realize the function of body temperature detection. The DS18B20 device has some features such as simple interface, high accuracy, strong anti-interference ability and so on. The design and design of six road DS18B20 temperature sensor, can collect six road temperature data at the sam
6、e time, control board design has 485 bus communication interface, through the RS485 bus, according to the standard Modbus-rtu protocol, the collected temperature data through the GPRS DTU to the cloud. In the design, the company of Ji'nan is a cloud platform. It is very easy to build a data mana
7、gement system. The system can modify the upper and lower threshold of the temperature alarm through the cloud, and use the 485 way of communication, which is very flexible for device expansion network.Because of the high accuracy of DS18B20's temperature measurement, the temperature monitoring o
8、f the design is also very high. Remote communication protocol selects MODBUS-RTU protocol commonly used in industry. This protocol is suitable for data transmission and has good stability. It has been tested for many years in industry. This design has upper and lower limit temperature alarm function
9、 and temperature sound and light alarm. The design is finally verified by physical debugging, which fully realized the original design requirements.Keywords: single chip microcomputer; DS18B20; Proteus simulation; Modbus-rtu第一章 緒論1.1溫度儀表監(jiān)測(cè)系統(tǒng)的研究背景及意義溫度測(cè)控技術(shù)在我們的生產(chǎn)生活當(dāng)中有著非常重要的作用,有很多場(chǎng)合需要對(duì)溫度進(jìn)行溫度控制。在工業(yè)上,溫度的
10、測(cè)控更是重中之重,比如石油,化工等一些領(lǐng)域,石油的提煉就要非常嚴(yán)格的對(duì)溫度進(jìn)行控制。在科技飛速發(fā)展的今天,一些傳感器的發(fā)展也是有了突破性的進(jìn)展,這些很多都是依賴化工行業(yè)的發(fā)展,溫度傳感器的發(fā)展更是日新月異。以往的熱敏電阻測(cè)溫方法精度不高,還要占用單片機(jī)等設(shè)備的ADC硬件資源,相比數(shù)字式溫度傳感器DS18B20就會(huì)遜色很多。DS18B20數(shù)字式溫度傳感器的精度最高可以精確到0.065攝氏度,測(cè)溫范圍也可以達(dá)到-55-+125攝氏度,并且此溫度傳感器采用單總線的方式與MCU等設(shè)備連接,極大的節(jié)省了硬件資源。因此本設(shè)計(jì)選用的溫度傳感器為數(shù)字式的溫度傳感器DS18B20。本課題的設(shè)計(jì)采用了DS18B2
11、0溫度傳感器,實(shí)現(xiàn)了溫度數(shù)據(jù)的采集。通信采用485方式,軟件通信協(xié)議選擇Modbus-rtu協(xié)議,數(shù)據(jù)遠(yuǎn)傳采用濟(jì)南有人公司生產(chǎn)的GPRS DTU模塊,通過無(wú)線數(shù)據(jù)傳輸將數(shù)據(jù)傳輸?shù)接腥嗽破脚_(tái),方便數(shù)據(jù)遠(yuǎn)端查看。本次課題設(shè)計(jì)的目的在于:1.熟練掌握溫度傳感器DS18B20模塊的通信原理和接口方式及使用特點(diǎn)和方法。2.熟練掌握51單片機(jī)的硬件資源情況及如何使用,了解匯編語(yǔ)言進(jìn)而掌握利用C語(yǔ)言對(duì)單片機(jī)進(jìn)行編程,熟練使用Keil C編程環(huán)境。3.因?yàn)楸驹O(shè)計(jì)基于MODBUS協(xié)議,所以本設(shè)計(jì)采用工業(yè)上比較常用且穩(wěn)定的RS485方式通信,通信協(xié)議選擇modbus-rtu協(xié)議。4.由于選用了DTU模塊,需要熟練
12、掌握DTU模塊的配置以及組網(wǎng)的方法。5.了解并熟悉有人云平臺(tái)的相關(guān)操作。6.本課題設(shè)計(jì)的研究能讓學(xué)生更好地熟練掌握基于單片機(jī)的應(yīng)用系統(tǒng)的分析和設(shè)計(jì)方法,了解利用單片機(jī)開發(fā)產(chǎn)品的過程與步驟。大大的提高了學(xué)生對(duì)電子數(shù)字電路,模擬電路,單片機(jī)編程等知識(shí),為學(xué)生不如社會(huì)參加相關(guān)工作打下了堅(jiān)實(shí)的基礎(chǔ)。1.2國(guó)內(nèi)外發(fā)展現(xiàn)狀1.2.1國(guó)內(nèi)發(fā)展現(xiàn)狀我國(guó)的溫度測(cè)控技術(shù)相比于國(guó)外的發(fā)達(dá)國(guó)家發(fā)展較晚,大概開始與上個(gè)世紀(jì)的80年代,起點(diǎn)也都是在吸收國(guó)外成熟技術(shù)資料的基礎(chǔ)之上開始的,正因?yàn)槿绱宋覀冇袊?guó)外資料的借鑒,發(fā)展的速度就會(huì)比較快速。有一些領(lǐng)域這個(gè)差距可能至少差的半個(gè)世紀(jì),比如有的發(fā)展中國(guó)家在某一領(lǐng)域現(xiàn)在的技術(shù)實(shí)力
13、可能會(huì)和發(fā)的國(guó)家半個(gè)世紀(jì)之前的技術(shù)實(shí)力差不多,有的甚至還不如發(fā)達(dá)國(guó)家半個(gè)世紀(jì)之前的技術(shù),比較落后。不管怎么說,科技都是在發(fā)展了,而且我國(guó)的自動(dòng)化產(chǎn)業(yè)也在向著智能化,穩(wěn)定性高,大規(guī)模集成等方向發(fā)展。計(jì)算機(jī)技術(shù)的發(fā)展更是帶動(dòng)了許多行業(yè)革命性進(jìn)步。國(guó)內(nèi)在物聯(lián)網(wǎng)行業(yè)的發(fā)展時(shí)間比較長(zhǎng),也得到了良好的發(fā)展成就,目前已經(jīng)產(chǎn)生相對(duì)完善的發(fā)展體系,我國(guó)研究組織在十年之前就開始對(duì)傳感網(wǎng)進(jìn)行深入分析,比如我國(guó)中科院上海微系統(tǒng)和信息技術(shù)研究所、南京航空航天大學(xué)、西北工業(yè)大學(xué)等眾多著名研究組織,現(xiàn)在也開始不斷研究"物聯(lián)網(wǎng)"科技和相關(guān)系統(tǒng),且得到較多成果。2009年,我國(guó)設(shè)計(jì)出第一顆物聯(lián)網(wǎng)核心芯片-&
14、quot;唐芯一號(hào)"。當(dāng)年11月初,綜合投資高于2.76億元的十一個(gè)物聯(lián)網(wǎng)項(xiàng)目在江蘇無(wú)錫順利簽署合約,該項(xiàng)目設(shè)計(jì)主要涉及傳感網(wǎng)智能科技研究、傳感網(wǎng)絡(luò)使用研究、具體系統(tǒng)集成等與物聯(lián)網(wǎng)產(chǎn)業(yè)相關(guān)的眾多前瞻行業(yè),上述項(xiàng)目的開啟奠定國(guó)內(nèi)傳感網(wǎng)絡(luò)的發(fā)展基礎(chǔ)。2010年工信部與發(fā)改委的多次制定眾多政策扶持物聯(lián)網(wǎng)規(guī)?;l(fā)展,在2020年以前國(guó)內(nèi)就開始籌劃大概四億元的資金扶持物聯(lián)網(wǎng)規(guī)?;陌l(fā)展。在我國(guó)重大科技專項(xiàng)、國(guó)家自然科學(xué)基金以及"863"規(guī)劃等方針政策的扶持下,我國(guó)全新寬帶無(wú)線通信、功能齊全且可以規(guī)?;⑿刑幚砑夹g(shù)、光子與微電子器件和集成系統(tǒng)技術(shù)、傳感網(wǎng)科技、物聯(lián)網(wǎng)體系結(jié)構(gòu)和
15、其發(fā)展技術(shù)等分析、研究得到較大成就,多次創(chuàng)建傳感科技國(guó)家核心實(shí)驗(yàn)室、傳感器網(wǎng)絡(luò)實(shí)驗(yàn)室以及相關(guān)行業(yè)發(fā)展重點(diǎn)等眾多具備專業(yè)分析能力的組織與規(guī)?;l(fā)展中心,開展眾多具備典型引導(dǎo)價(jià)值的重要發(fā)展項(xiàng)目?,F(xiàn)在,北京、上海、江蘇、浙江與深圳等我國(guó)發(fā)展水平較高的地區(qū)逐漸重視對(duì)物聯(lián)網(wǎng)發(fā)展規(guī)劃的分析,修訂與此行業(yè)有關(guān)的發(fā)展計(jì)劃與規(guī)則。制定眾多與行業(yè)未來(lái)發(fā)展有關(guān)的規(guī)章制度與條文。根據(jù)國(guó)內(nèi)現(xiàn)實(shí)發(fā)展情況進(jìn)行研究,物聯(lián)網(wǎng)行業(yè)開始變成各個(gè)地區(qū)戰(zhàn)略性全新產(chǎn)業(yè)未來(lái)發(fā)展的關(guān)鍵領(lǐng)域,也是眾多地區(qū)搶占的重要產(chǎn)業(yè)。1.2.2國(guó)外發(fā)展現(xiàn)狀而在國(guó)外,發(fā)達(dá)國(guó)家自動(dòng)化方面的研究已經(jīng)很久了,從最早的組合儀表,繼電器控制等方式已經(jīng)慢慢向著計(jì)算機(jī)發(fā)面
16、發(fā)展。測(cè)溫方面也是同樣。世界各個(gè)國(guó)家的溫度測(cè)量與控制技術(shù)發(fā)展的很快,有些國(guó)家在逐步已經(jīng)實(shí)現(xiàn)自動(dòng)化的基礎(chǔ)上正朝著無(wú)人化,智能化的方向發(fā)展。國(guó)外的主要產(chǎn)品有很多,比如有溫室控制系統(tǒng),恒溫箱等。全球單片機(jī)年產(chǎn)量大概是七億片,每年銷售業(yè)績(jī)大概是三十億美元。4位單片機(jī)具備諸多優(yōu)勢(shì),比如性價(jià)比高、使用時(shí)間長(zhǎng)、涉及范圍廣泛等優(yōu)勢(shì)。被普遍使用在眾多加點(diǎn)產(chǎn)品內(nèi)。8位單片機(jī)是全球主要使用的產(chǎn)品,目前比較普遍的類型是Intel8048、8051系列,此處后者這個(gè)類型逐漸變成現(xiàn)在我國(guó)單片機(jī)應(yīng)用的主要類型,在家電、工業(yè)發(fā)展、智能儀器等行業(yè)內(nèi)都可以看到此產(chǎn)品的使用。伴隨集成電路工藝的健全與持續(xù)提升,融合ASIC與RISC
17、相關(guān)科技之后,也開始設(shè)計(jì)出ASIC型(UC51)與RISC型(32位)等相關(guān)型號(hào),這也是此林給未來(lái)發(fā)展趨勢(shì)和潮流。早期的水銀溫度計(jì)雖然精度高,但是測(cè)量時(shí)間長(zhǎng),讀數(shù)不方便,目前越來(lái)越被淘汰,數(shù)字溫度傳感器,測(cè)量溫度速度快,甚至可以做到秒測(cè),同時(shí)數(shù)值可以實(shí)時(shí)的顯示出來(lái),這樣便于讀出。同時(shí)還可以針對(duì)高低溫進(jìn)行報(bào)警。目前在醫(yī)院,對(duì)于心跳,血氧飽和度等相關(guān)體征數(shù)據(jù)已經(jīng)可以通過攜帶型傳感器,通過物聯(lián)網(wǎng)實(shí)時(shí)監(jiān)控,但是,人體體溫仍然通過護(hù)士通過人工測(cè)量并記錄的方式實(shí)時(shí)記錄病患體溫,這既消耗時(shí)間,同時(shí)也極大地增加了記錄錯(cuò)誤,反饋不及時(shí)等耽誤治療的風(fēng)險(xiǎn)。在美國(guó)許多的私人醫(yī)院,已經(jīng)和美國(guó)蘋果公司建立起物聯(lián)網(wǎng)醫(yī)療系統(tǒng)
18、,通過患者攜帶的智能穿戴設(shè)備,實(shí)時(shí)監(jiān)測(cè)患者各項(xiàng)身體指標(biāo),至其中就包含人體體溫,智能穿戴設(shè)備會(huì)實(shí)時(shí)將信息采集并傳送至醫(yī)院的云臺(tái)數(shù)據(jù)庫(kù)進(jìn)行大數(shù)據(jù)分析,一旦病患出現(xiàn)病變趨勢(shì),便可快速有效地給與病患治療。本設(shè)計(jì)便是基于物聯(lián)網(wǎng)的體溫檢測(cè)儀,就是基于物聯(lián)網(wǎng)快速、有效、便捷等特點(diǎn),通過單片機(jī)來(lái)實(shí)時(shí)采集并處理數(shù)字溫度計(jì)的數(shù)據(jù),測(cè)量溫度速度快,甚至可以做到秒測(cè),同時(shí)數(shù)值可以實(shí)時(shí)的顯示出來(lái),這樣便于讀出。通過透?jìng)髟品?wù)器,查看終端設(shè)備數(shù)據(jù)也就是溫度值,展現(xiàn)出病患的體溫變換趨勢(shì),同時(shí)還可以針對(duì)高低溫進(jìn)行報(bào)警提醒醫(yī)護(hù)人員加以重視。目前我們稱作的"物聯(lián)網(wǎng)",主要表示利用射頻辨別、紅外感應(yīng)器、全球定位
19、系統(tǒng)以及激光掃描器等相關(guān)數(shù)據(jù)傳感設(shè)施,根據(jù)提前商定的有關(guān)合約以及條文,將所有產(chǎn)品和互聯(lián)網(wǎng)彼此聯(lián)系在一起,開展數(shù)據(jù)溝通與交流,進(jìn)而完成智能化辨別、定位、追蹤、監(jiān)控以及管理的重要網(wǎng)絡(luò)形式。簡(jiǎn)單的說,物聯(lián)網(wǎng)是"物物彼此聯(lián)系的網(wǎng)絡(luò)"。目前主要包含兩部分含義:第一,物聯(lián)網(wǎng)重點(diǎn)與基礎(chǔ)依舊是網(wǎng)絡(luò),主要在網(wǎng)絡(luò)基礎(chǔ)上進(jìn)行深入延伸以及不斷擴(kuò)展;第二,主要用戶端延伸以及擴(kuò)展到所有物品之間,開展高效的信息溝通以及無(wú)障礙通訊。 物聯(lián)網(wǎng)最初定義是美國(guó)Auto-ID實(shí)驗(yàn)室在二十世紀(jì)末期第一次指出的,2005年世界電信聯(lián)盟在全球峰會(huì)上正式公開ITU互聯(lián)網(wǎng)報(bào)告2005:物聯(lián)
20、網(wǎng),第一次指出"物聯(lián)網(wǎng)定義",且直接清晰地表明"物聯(lián)網(wǎng)社會(huì)馬上來(lái)臨"。標(biāo)志此領(lǐng)域的發(fā)展正式開始。現(xiàn)在,全球眾多國(guó)家的物聯(lián)網(wǎng)大致位于早期技術(shù)分析和測(cè)試時(shí)期:美、日、韓等眾多發(fā)展水平較高的國(guó)家開始加大投資,進(jìn)一步分析探索物聯(lián)網(wǎng),且進(jìn)一步開啟以物聯(lián)網(wǎng)為重要前提的"智慧地球"、"U-Japan"、"U-Korea"、"物聯(lián)網(wǎng)發(fā)展規(guī)劃"等眾多世界性質(zhì)的地區(qū)發(fā)展規(guī)劃。 2009年初期,在美國(guó)總統(tǒng)奧巴馬和美國(guó)工商管理者的"圓桌會(huì)議"中,IBM企業(yè)領(lǐng)導(dǎo)者清楚表明
21、"智慧地球"的定義,全面敘述了與之相關(guān)的觀點(diǎn),也就是將傳感器添加到電網(wǎng)、鐵路、橋梁與公路等相關(guān)物體中,能量相對(duì)強(qiáng)大的計(jì)算機(jī)群,可以對(duì)所有網(wǎng)絡(luò)內(nèi)部人群與物體開展管理以及監(jiān)督。如此,大眾就能相對(duì)精準(zhǔn)的使用動(dòng)態(tài)形式確保大眾日常生產(chǎn)以及生活的順利進(jìn)行,進(jìn)而進(jìn)入到"智慧"階段。 2009年5月7、8日,歐洲等眾多國(guó)家的領(lǐng)導(dǎo)者、公司管理者與專家學(xué)者在布魯塞爾針對(duì)物聯(lián)網(wǎng)開展深入分析,且確定發(fā)展歐洲國(guó)家經(jīng)濟(jì)的具體方式。歐盟委員會(huì)信息社會(huì)和媒體組織管理者魯?shù)婪?#183;施特曼邁爾指出:"物聯(lián)網(wǎng)和相關(guān)技術(shù)就是此后發(fā)展的重點(diǎn),也是不可忽視的關(guān)鍵部分&qu
22、ot;。2009年中期歐盟制定且披露了新階段物聯(lián)網(wǎng)的發(fā)展規(guī)劃。 日本與韓國(guó)主要制定"U-Japan""U-Korea"的發(fā)展規(guī)劃與想法。"U"源自拉丁文"Ubiquitous",主要含義是"存在于任何地方"。日本把物聯(lián)網(wǎng)當(dāng)做本國(guó)主要發(fā)展計(jì)劃,且貫徹到現(xiàn)實(shí)中;韓國(guó)制定基于IP的傳感器網(wǎng)基礎(chǔ)設(shè)施構(gòu)建基本規(guī)劃,直接把物聯(lián)網(wǎng)明確成未來(lái)發(fā)展的全新動(dòng)力和增長(zhǎng)點(diǎn)。1.3本設(shè)計(jì)研究?jī)?nèi)容及進(jìn)度安排一、本文主要使用單片機(jī)來(lái)查找以及獲得數(shù)字溫度傳感器的相關(guān)內(nèi)容,且把信息直接呈現(xiàn)給外界。研究?jī)?nèi)容:1、溫度數(shù)據(jù)
23、界面顯示。2、智能報(bào)警。3、通信協(xié)議編寫及調(diào)試4、云平臺(tái)配置二、難點(diǎn):1、DS18B20驅(qū)動(dòng)軟件編寫。2、MODBUS通信協(xié)議編寫。3、透?jìng)髟品?wù)器GPRS-DTU配置三、擬采取的解決措施1、對(duì)照DS18B20數(shù)據(jù)手冊(cè)查看時(shí)序圖,并查找相關(guān)資料,修改程序2、查找資料理解MODBUS通信原理。3、查詢透?jìng)髟茝S家,尋找技術(shù)支持。第1-2周:論文選題,查閱資料,決定畢業(yè)設(shè)計(jì)方向。第3周:完成開題報(bào)告終稿并上交打印版。第4-5周:了解所用芯片功能,研究MODBUSRTN通信協(xié)議,熟悉proteus軟件。第6-8周:用proteus繪制電路圖,并用keil編寫程序。第9周:完成設(shè)計(jì)作品并測(cè)試功能。第10
24、周:撰寫論文初稿。第11周:修改論文。第12周:再次修改論文,確定論文終稿并上交。第二章 硬件與相關(guān)知識(shí)介紹2.1單片機(jī)技術(shù)及選擇單片微型計(jì)算機(jī)(MCU)自上個(gè)世紀(jì)問世以來(lái),對(duì)人類社會(huì)的發(fā)展做出了突出的貢獻(xiàn),對(duì)人們的生產(chǎn)、生活產(chǎn)生了深遠(yuǎn)的影響。尤為突出的是美國(guó)的Intel公司最早生產(chǎn)的MCS-51系列單片機(jī),因?yàn)榫哂刑幚砉δ軓?qiáng)、集成度高、可靠性高等一些特點(diǎn)自從問世以來(lái),就在單片機(jī)的市場(chǎng)占據(jù)了很大的市場(chǎng)。而如今單片機(jī)的發(fā)展也不再是一家獨(dú)大,單片機(jī)的廠家也越來(lái)越多,芯片的型號(hào)更是多的數(shù)不清,單單從性價(jià)比來(lái)看51單片機(jī)已經(jīng)不再占據(jù)多大的優(yōu)勢(shì),而近幾年新出的STM單片機(jī),PIC單片機(jī)等等搶占了單片機(jī)市
25、場(chǎng)的很大領(lǐng)域。但是本設(shè)計(jì)本著從易于上手,資料容易獲取等方面考慮,還是選用了STC89C52RC單片機(jī)。2.1.1單片機(jī)介紹本設(shè)計(jì)選用的單片機(jī)為AT89STC89C52RC51單片機(jī),它是由宏晶科技有限公司生產(chǎn)的一款8位單片機(jī),STC89C52RC單片機(jī)實(shí)物外形圖如圖2-1所示:圖2-1STC89C52RC單片機(jī)實(shí)物圖2.1.2單片機(jī)端口介紹1.典型的功耗小于0.1微安,需要通過外界中斷來(lái)激發(fā),在中斷執(zhí)行且順利返回之后,繼續(xù)操作之前的用戶程序。2.空閑模式的時(shí)候其典型的功耗為2毫安。3.正常的工作模式:典型的功耗4Ma7mA。4.此單片機(jī)可以由外部中斷來(lái)喚醒。設(shè)和做一些低功耗產(chǎn)品。STC89C5
26、2RC單片機(jī)的引腳功能如圖2-2所示。圖2-2STC89C52RC引腳圖VCC(40引腳):接電源電壓。VSS(20引腳):接地。P0端口(P0.0P0.7對(duì)照3932引腳)。其主要是重要的漏極開路8位雙向I/O端口。P0口是準(zhǔn)雙向口,開漏輸出,當(dāng)作為輸出時(shí)需要接若上拉電阻。P1/P2/P3端口(P1.0P1.7對(duì)應(yīng)于18引腳)。P1端口是真正的雙向口,有內(nèi)部若上拉電阻,作為輸出時(shí),不需要外接弱上拉電阻。P3口的第二功能如表2-1所示:58表2-1P3口引腳的復(fù)用功能RST(9引 腳):復(fù)位引腳。此引腳接入高電平信號(hào)時(shí),單片機(jī)會(huì)產(chǎn)生復(fù)位操作。默認(rèn)情況下此引腳接入電平信號(hào)。29,30,31引腳本
27、設(shè)計(jì)中用不到,再次不做介紹,如要了解,請(qǐng)自行查閱資料。18,19引腳的功能是接入外部晶振功能。2.2溫度傳感器介紹目前我們使用的傳感器表現(xiàn)出眾多優(yōu)勢(shì),比如,占地面積非常小,單總線的不需要使用過多的硬件資源,抗干擾水平不斷提升,測(cè)溫精準(zhǔn)度很高,容易擴(kuò)展,正是因?yàn)榫哂幸陨线@些特點(diǎn),促使DS18B20數(shù)字溫度傳感器得到各行業(yè)的認(rèn)可和使用,在目前得到了良好的發(fā)展和應(yīng)用,也是我們需要關(guān)注的重要型號(hào)。接下來(lái)我們深入研究上述傳感器所具有的封裝形式,詳細(xì)情況惡意參考圖2-3內(nèi)容:圖2-3DS18B20器件的封裝圖2.2.1主要特征接下來(lái)我們開始具體分析,研究結(jié)果主要為:1、全數(shù)字形式的溫度轉(zhuǎn)換和傳送。2、使用
28、領(lǐng)先的單總線通信形式,在一定程度上節(jié)約單片機(jī)所需要的硬件資源,因此具備良好的節(jié)約性。3、分辨率巔峰數(shù)值為12位,精度度最高可以達(dá)到土0.065攝氏度。4、運(yùn)行在12位分辨率時(shí)期的最長(zhǎng)運(yùn)行周期是750毫秒。5、還能自主確定以及挑選寄生運(yùn)行形式。6、測(cè)溫領(lǐng)域主要是55°C +125°C (67°F +257°F)7、內(nèi)置主要包含EEPROM,也具備有限溫警示作用。8、內(nèi)部也包含64位的光刻ROM,甚至新增產(chǎn)品序列號(hào),便于多個(gè)機(jī)器的聯(lián)系和互動(dòng)。9、主要使用多種類型的封裝方式,可以滿足現(xiàn)實(shí)中眾多硬件系統(tǒng)提出的標(biāo)準(zhǔn)。2.2.2DS18B20溫度傳感器的工作原理DS
29、18B20溫度傳感器測(cè)溫和信息傳送基本上匯聚在單個(gè)芯片內(nèi),所以其所具備的抗干擾水平以及能力和其他型號(hào)相比更加強(qiáng)大,因此可以在更多行業(yè)和領(lǐng)域使用,目前也是我們普遍使用的型號(hào)。主要運(yùn)行周期基本上可以被劃分成兩方面,主要是測(cè)試溫度以及整合信息內(nèi)容。在詮釋其具體運(yùn)行環(huán)節(jié)之前我們需要充分掌握以及認(rèn)知其內(nèi)部所具備的所有存儲(chǔ)資源。此型號(hào)的溫度傳感器總共被劃分成三類形式,也是目前我們經(jīng)常使用的:只讀存儲(chǔ)器ROM,主要是存儲(chǔ)與之相改的ID編碼,前8位屬于單線系列編碼(具體編碼則是19H),之后的48位是就是芯片內(nèi)最重要的序列號(hào),也是辨別的核心內(nèi)容,最終的8位數(shù)據(jù)是之前所有數(shù)據(jù)的CRC碼(冗余校驗(yàn))。數(shù)據(jù)在出廠的
30、時(shí)候就被全部設(shè)定完成不能讓用戶隨便修改。此類溫度傳感器總共包含64位存儲(chǔ)區(qū)ROM。數(shù)據(jù)暫存器RAM,主要使用與信息統(tǒng)計(jì)以及存放與傳送數(shù)據(jù)內(nèi)容,信息在掉電之后就隨之丟失,此類傳感器總共包含九個(gè)字節(jié)的數(shù)據(jù)存儲(chǔ)區(qū)RAM,上述單個(gè)字節(jié)長(zhǎng)度一般是8位。前兩個(gè)字節(jié)是溫度轉(zhuǎn)變之后的數(shù)據(jù)值的具體內(nèi)容,第3以及第4個(gè)字節(jié)主要采用用戶EEPROM(一般出現(xiàn)在溫度報(bào)警值儲(chǔ)存)的鏡像。等待重新上電復(fù)位時(shí)上述數(shù)值被刷新。第5個(gè)字節(jié)屬于第3個(gè)EEPROM鏡像。第6以及7個(gè),第8個(gè)字節(jié)全部屬于計(jì)數(shù)寄存器,主要目標(biāo)是讓用戶全面了解到更高溫度分辨率而的設(shè)定,此外其還是內(nèi)部溫度轉(zhuǎn)變和統(tǒng)計(jì)的短時(shí)期存儲(chǔ)單元。第9個(gè)字節(jié)屬于之前所有字
31、節(jié)的CRC校驗(yàn)碼。EEPROM存儲(chǔ)區(qū),主要功能是存儲(chǔ)需要長(zhǎng)久存放的主要信息和內(nèi)容,上、下限溫度報(bào)警值和核查數(shù)據(jù),DS18B20溫度傳感器總共包含三位EEPROM存儲(chǔ)區(qū),且在存儲(chǔ)區(qū)RAM都具有鏡像,以便便于用戶的執(zhí)行。在用戶讀取溫度數(shù)據(jù)之前都需要開展相對(duì)繁雜且比較精準(zhǔn)的時(shí)序處理,這是因?yàn)镈S18B20溫度采集模塊的硬件簡(jiǎn)單,結(jié)果就導(dǎo)致在軟件上要有很大的開消,這也是節(jié)省硬件資源的一種方式。2.2.3溫度傳感器DS18B20的操作流程1.復(fù)位操作:要對(duì)DS18B20進(jìn)行操作第一要直接對(duì)此類型號(hào)的傳感器芯片開展復(fù)位操作,上述操作目前表示由單片機(jī)等控制器給溫度傳感器在單總線上最少要480uS的低電平信號(hào)
32、。假如上述傳感器在得到此復(fù)位信號(hào)之后,可以在1560uS以后給予控制器回復(fù)單個(gè)表示芯片存在的脈沖信號(hào)。2.代表存在的脈沖信息:在控制器發(fā)放復(fù)位命令電平完結(jié)之后,我們就可以看到控制器此時(shí)把單總線內(nèi)的電平信號(hào)不斷拉高,便于在1560uS之后可以直接接代表存在的相關(guān)脈沖信號(hào),上述信號(hào)也是我們需要關(guān)注的內(nèi)容,其表示60240uS范圍內(nèi)的低電平信號(hào)。此刻,控制器和DS18B20溫度傳感器兩者之間的順利溝通和互動(dòng)基本上具有了一定的基礎(chǔ),此后最重要的步驟是控制器與溫度傳感器雙方間的數(shù)據(jù)通信。復(fù)位時(shí)期假如當(dāng)前的低電平信號(hào)時(shí)間缺少或者數(shù)據(jù)線斷路都無(wú)法得到上述代表存在的脈沖信號(hào),所以在早期設(shè)計(jì)的時(shí)候就需要充分關(guān)注
33、到上述意外問題出現(xiàn)時(shí)的解決方式。3.由控制器下發(fā)的ROM命令:當(dāng)控制器與DS18B20溫度傳感器雙方打完了上述的溝通招呼后,就要開始進(jìn)行交流讀取溫度數(shù)據(jù)了,溫度傳感器內(nèi)的全部ROM指令屬于有條指令,在單個(gè)工作周期只可以同時(shí)發(fā)放單個(gè)指令,上述指令主要是芯片查找、指定匹配芯片、跳躍ROM、報(bào)警芯片查找、讀取ROM信息。ROM指令全部屬于8位數(shù)據(jù)長(zhǎng)度,主要作用是對(duì)芯片內(nèi)存在的64位光刻ROM開展操作。因此現(xiàn)實(shí)目標(biāo)是可以在總線上掛接多個(gè)同類器件時(shí)直接高效的開展數(shù)據(jù)整合。非常明顯的時(shí)候,在單總線上能同時(shí)期懸掛眾多同類器件,此外利用讀取所有器件內(nèi)唯一ID號(hào)來(lái)進(jìn)行分辨,基本上不會(huì)出現(xiàn)問題。通常來(lái)說,只掛接一
34、個(gè)溫度傳感器芯片時(shí)就不需要關(guān)注此ROM指令(值得關(guān)注的是:此處的跳過ROM指令并非不發(fā)送上述命令,主要是使用獨(dú)有的“跳過指令”來(lái)操作和進(jìn)行)。4.控制器在發(fā)放對(duì)存儲(chǔ)器的操作指令之后:在控制器將ROM指令下發(fā)給對(duì)應(yīng)的傳感器之后,我們就可以持續(xù)不停歇的發(fā)放對(duì)存儲(chǔ)器操作的相關(guān)命令。操作命令也是相同的8位,總共是六個(gè)指令,存儲(chǔ)器操作的指令主要包含精準(zhǔn)選取、詳細(xì)撰寫、開展拷貝以及到EEPROM存儲(chǔ)區(qū)、把其中的報(bào)警值拷貝到RAM、溫度數(shù)據(jù)轉(zhuǎn)變、工作形式的轉(zhuǎn)變。存儲(chǔ)器操作主要作用是命令此類傳感器需要完成怎樣的任務(wù),在何時(shí)完成任務(wù),上述步驟就是我們需要管控的關(guān)鍵部分,也是不容忽視的重要方面。5.數(shù)據(jù)信息讀、寫
35、:在某個(gè)存儲(chǔ)器操作的指令全部完結(jié)以后,此時(shí)需要執(zhí)行指令或者信息的操作,上述操作需要參考存儲(chǔ)器內(nèi)的相關(guān)指令來(lái)確定,不能隨意進(jìn)行。假如要完成溫度轉(zhuǎn)換指令,此時(shí)控制器要全面等待傳感器操作完自身指令,通常轉(zhuǎn)換周期大概是500uS上下。假如執(zhí)行數(shù)據(jù)的讀寫指令,此時(shí)要全面依照以及遵守溫度傳感器所具備的讀寫時(shí)序來(lái)進(jìn)行。單個(gè)溫度傳感器假如要讀出目前的真實(shí)溫度信息,此刻就需要完成兩個(gè)運(yùn)行周期,首個(gè)工作周期主要是:復(fù)位指令、跳過ROM指令、操作溫度轉(zhuǎn)移存儲(chǔ)器操作的命令44H、需要等待大概500uS的溫度轉(zhuǎn)換周期。之后順利執(zhí)行接下來(lái)的周期主要是:復(fù)位指令、跳過ROM指令、順利讀取存儲(chǔ)器操作指令、讀數(shù)據(jù)(最多9個(gè)字節(jié)
36、長(zhǎng)度,中途能暫停操作,只讀取單純的溫度值的時(shí)候讀前兩國(guó)字節(jié)就能順利完成任務(wù))。2.3Modbus-rtu通信協(xié)議Modbus協(xié)議分為Modbus-rtu和Modbus-ASCII協(xié)議,實(shí)際應(yīng)用時(shí),考慮到數(shù)據(jù)傳輸?shù)男蕟栴},所以此刻挑選Modbus-rtu協(xié)議就可以得到更好的效果,得到更大的發(fā)展,也是目前我們主要使用的方式。Modbus屬于重要的串行通信協(xié)議,出現(xiàn)在二十世紀(jì)八十年代左右,為采用可編程邏輯控制器(PLC)而撰寫的。在此之后得到良好的發(fā)現(xiàn),現(xiàn)在逐漸變成工業(yè)以及相關(guān)行業(yè)通信協(xié)議主要遵守的準(zhǔn)則,此外目前是工業(yè)電子設(shè)施彼此間普遍使用的重要連接形式,還是未來(lái)的發(fā)展潮流,不容忽視,需要我們深入
37、開展分析。Modbus和其他普通協(xié)議相比具備一定的優(yōu)勢(shì),因此應(yīng)用范圍更加廣泛,主要因素是:正式發(fā)表此外不存在版稅標(biāo)準(zhǔn),應(yīng)用簡(jiǎn)單直接,不存在任何阻礙和限制。站在供應(yīng)商的角度上進(jìn)行分析,修改轉(zhuǎn)移原本的位或字節(jié)沒有相關(guān)限制和阻礙,Modbus支持眾多設(shè)施連接在相同互聯(lián)網(wǎng)內(nèi)開展通信,根據(jù)案例進(jìn)行分析,某個(gè)測(cè)量溫度與濕度的設(shè)施,最終把測(cè)試結(jié)果傳送給計(jì)算機(jī)。在數(shù)據(jù)籌集和監(jiān)管監(jiān)視控制系統(tǒng)(SCADA)內(nèi),Modbus一般功能是連接監(jiān)控計(jì)算機(jī)以及remoteterminalunit(RTU)。此協(xié)議現(xiàn)在大部分使用在串口、以太網(wǎng)和相關(guān)認(rèn)可互聯(lián)網(wǎng)協(xié)議的網(wǎng)絡(luò)類型。大部分Modbus設(shè)施通信可以利用串口EIA-485
38、物理層完成操作1。站在串行連接的角度上進(jìn)行分析,只包含兩類變種,主要使用數(shù)值數(shù)據(jù)代表與協(xié)議細(xì)微內(nèi)容上的差異。ModbusRTU屬于相對(duì)緊湊,使用二進(jìn)制代表數(shù)據(jù)信息的形式,ModbusASCII也是我們可以順利讀取,較長(zhǎng)的代表形式。上述變種都能采用串行通訊(serialcommunication)形式。RTU格式未來(lái)的命令數(shù)據(jù)都可以得到循環(huán)冗余校驗(yàn)的校驗(yàn)和,但是ASCII格式只能使用縱向冗余校驗(yàn)的校驗(yàn)和。被配置成RTU變種的節(jié)點(diǎn)無(wú)法與設(shè)定成ASCII變種的節(jié)點(diǎn)通信,反過來(lái)也是如此,此部分也是需要我們格外關(guān)注的內(nèi)容。Modbus協(xié)議目前master/slave架構(gòu)的協(xié)議。其中最主要的部分是mast
39、er節(jié)點(diǎn),與其他采用Modbus協(xié)議參加通信的的slave節(jié)點(diǎn)不同。所有slave設(shè)施都具有單獨(dú)的,不重復(fù)的地址,也是辨別的關(guān)鍵點(diǎn)。在串行與MB+網(wǎng)絡(luò)中,必須被指定成主節(jié)點(diǎn)的節(jié)點(diǎn)才能開啟命令(在以太網(wǎng)中,所有設(shè)施都可以發(fā)放單個(gè)Modbus命令,然而一般也存在單個(gè)主節(jié)點(diǎn)設(shè)施開啟指令)。一個(gè)ModBus命令主要涵蓋準(zhǔn)備操作的設(shè)施Modbus地址。全部設(shè)施都可以得到命令,然而必須是指定位置的設(shè)施才可以執(zhí)行和回應(yīng)指令(地址0并非如此,指定地址0的指令是廣播指令,全部得到指令的設(shè)施都可以順利執(zhí)行,但是不會(huì)進(jìn)行回應(yīng))。全部Modbus命令包都涵蓋檢查碼,進(jìn)而明確最終到達(dá)的命令是否被損壞。通常ModBus命
40、令可以指令單個(gè)RTU轉(zhuǎn)變其寄存器的某值,控制或者讀取單個(gè)I/O端口,和指揮設(shè)施回送單個(gè)或者眾多寄存器內(nèi)的信息內(nèi)容。有大量modems與網(wǎng)關(guān)支持Modbus協(xié)議,由于后者協(xié)議比較單一且便于復(fù)制。其中存在的眾多內(nèi)容都是為協(xié)議專門設(shè)計(jì)的。借助有線、無(wú)線通信腦汁短消息與GPRS的差異來(lái)順利完成。但是設(shè)計(jì)者也需要處理眾多阻礙和問題,比如高延遲以及時(shí)序等相關(guān)問題。事實(shí)上MODBUSRTU和ASCII之間的內(nèi)容全部相同,沒有任何差異,主要的不同點(diǎn)是ASCII后者使用“:”標(biāo)識(shí)幀起始,使用“CRLF”標(biāo)識(shí)幀完結(jié)。校驗(yàn)使用LRC,將RTU幀內(nèi)的字節(jié)內(nèi)容轉(zhuǎn)變成兩個(gè)ASCII字符。例如在RTU形式下設(shè)施地址01僅僅
41、是單個(gè)字節(jié),在ASCII形式下轉(zhuǎn)換成字符串“01”(16進(jìn)制的3031)。前者的設(shè)施標(biāo)識(shí),功能碼等基本上和MODBUSRTU類似,都能被當(dāng)做是MODBUSRTU報(bào)文前邊增加頭,去除CRC校驗(yàn)尾。MODBUS協(xié)議清楚確定出四類主要數(shù)據(jù)種類:可讀寫位數(shù)據(jù),只讀位數(shù)據(jù),只讀16位數(shù)據(jù),可讀寫16位數(shù)據(jù)。上述數(shù)據(jù)內(nèi)容主要被叫做線圈與輸入狀態(tài),輸入與保持寄存器等。MODBUS協(xié)議在智能設(shè)施內(nèi)的使用相對(duì)普及,主要敘述內(nèi)部報(bào)文和相關(guān)命令,但是智能設(shè)施怎樣采用上述協(xié)議進(jìn)行操作呢?假如智能設(shè)施存在開關(guān)量傳送,模擬量傳送和計(jì)數(shù)器等相關(guān)裝置。非常明顯的是開關(guān)量輸入能映射到10001地址,第一路開關(guān)量填寫10001,
42、第二路則是10002,上述輸出映射在00001地址,第一路是00001,第二路是00002,.模擬量輸入映射到30001地址,第一路是30001,第二路是30002,模擬量輸出與計(jì)數(shù)器輸入映射在40001地址,第一路是40001,第二路是40002,顯然還能把全部數(shù)據(jù)都存放在保持寄存器內(nèi),上述對(duì)于MODBUS主設(shè)施訪問時(shí)相對(duì)輕松,工作效率也隨之提升,然而操作環(huán)節(jié)較多,任務(wù)繁重。目前設(shè)計(jì)使用modbus-rtu協(xié)議,因此,當(dāng)我們挑選設(shè)施時(shí)需要根據(jù)上述選擇,此外波特率選擇的9600,數(shù)據(jù)位挑選八位,校驗(yàn)位挑選無(wú),停止位挑選一位,設(shè)施地址確定成一。上述內(nèi)容是順利通信的重要參數(shù),假如選擇不科學(xué),通信無(wú)
43、法順利進(jìn)行。Com口可依照自身現(xiàn)實(shí)情況開展挑選,此刻主要使用PC機(jī) Com1口,因此就選擇此形式。Modbus-rtu通訊協(xié)議,信息在最初的時(shí)候最少使用3.5個(gè)字符的起始時(shí)間(參考下表2-1內(nèi)的T1-T2-T3-T4),此外根據(jù)采用的波特率,相對(duì)輕松的統(tǒng)計(jì)上述真實(shí)時(shí)間。此后開始后面的操作,首個(gè)區(qū)的數(shù)據(jù)就是設(shè)施地址,也是最重要的部分。表2-2modbus-rtu幀格式不同區(qū)允許發(fā)放的字符全部是16進(jìn)制的0-9,A-F?;ヂ?lián)網(wǎng)設(shè)施接連監(jiān)管網(wǎng)絡(luò)內(nèi)的數(shù)據(jù)內(nèi)容,主要包含起始時(shí)間。在得到首個(gè)地址數(shù)據(jù)的時(shí)候,不同設(shè)施的馬上開始解碼,進(jìn)而明確是否是對(duì)應(yīng)的。發(fā)送全部符號(hào)完結(jié)之后,需要由單個(gè)3.5個(gè)字符的靜止停止
44、時(shí)間,此后才可以順利發(fā)放后面全新的數(shù)據(jù)內(nèi)容。上述數(shù)據(jù)信息需要全部不間斷的傳送。在傳送幀信息的時(shí)候,假如存在時(shí)間超過1.5個(gè)字符的時(shí)間時(shí),接收設(shè)施會(huì)再次接受后續(xù)的數(shù)據(jù),上述數(shù)據(jù)無(wú)法繼續(xù)使用。Modbus-rtu信息幀敘述為。2.3.1地址設(shè)置數(shù)據(jù)信息地址主要包含8位(RTU方式),高效的設(shè)施地址范圍是0-247,(數(shù)據(jù)為十進(jìn)制),協(xié)議內(nèi)從機(jī)設(shè)施的地址在1-247范圍內(nèi)。主機(jī)發(fā)送命令時(shí)將從機(jī)地址添加到一幀數(shù)據(jù)的地址位上,之后放數(shù)據(jù)和校驗(yàn)值,最終下發(fā)命令數(shù)據(jù)幀。從機(jī)響應(yīng)時(shí)需要最先判定地址碼,假如地址碼對(duì)應(yīng),需要查看上述校驗(yàn)值是否合理,不存在問題之后得到數(shù)據(jù)。假如中間存在細(xì)微問題,上述數(shù)據(jù)廢棄成為無(wú)用
45、數(shù)據(jù)。2.3.2功能碼信息幀內(nèi)的功能代碼是8位(RTU形式)。高效的數(shù)據(jù)碼范圍是1-225(十進(jìn)制數(shù)據(jù))。在主機(jī)給予從機(jī)傳送命令信息時(shí),數(shù)據(jù)幀內(nèi)的功能代碼會(huì)告知從機(jī)主機(jī)需要完成的任務(wù)和操作。比如讀線圈具體狀態(tài),讀變量?jī)?nèi)的數(shù)據(jù)值,撰寫線圈(或者寄存器)的值等功能碼各不相同。Modbus網(wǎng)絡(luò)屬于重要的工業(yè)通信系統(tǒng),由攜帶智能終端的可編程序控制器與計(jì)算機(jī)利用公用線路或局部單獨(dú)線路聯(lián)系產(chǎn)生。其中系統(tǒng)結(jié)構(gòu)不只包含硬件、此外也包含軟件。主要被使用在眾多信息采集與環(huán)節(jié)監(jiān)控。下表2-3是具體的功能碼概念。表2-3ModBus功能碼2.3.3數(shù)據(jù)區(qū)的內(nèi)容數(shù)據(jù)區(qū)主要包含兩個(gè)16進(jìn)制數(shù)據(jù),具體值是00-FF(16進(jìn)
46、制),參考串行傳輸形式,主要包含單個(gè)RTU字符。2.3.4錯(cuò)誤校驗(yàn)?zāi)壳拔覀兪褂玫腗odbus-rtu總線,一般存在兩類不正確的檢查方式,錯(cuò)誤區(qū)的具體內(nèi)容需要按照選擇的檢查方式填報(bào)。在采用RTU通信協(xié)議形式的時(shí)候,此時(shí)錯(cuò)誤校驗(yàn)碼是16位數(shù)據(jù)值,也就是兩個(gè)8位的數(shù)據(jù)字節(jié)。上述不正確的校驗(yàn)值主要是對(duì)數(shù)據(jù)幀內(nèi)的數(shù)據(jù)信息內(nèi)容進(jìn)行測(cè)試,接收是否出現(xiàn)問題的重要方式,目前我們主要使用CRC-16校驗(yàn)方式。CRC-16校驗(yàn)值是一幀內(nèi)的最終發(fā)送內(nèi)容此校驗(yàn)統(tǒng)計(jì)得出的校驗(yàn)碼提前發(fā)送給低位字節(jié),之后發(fā)送給高位字節(jié),因此其中存在的高位字節(jié)數(shù)據(jù)是整幀幀數(shù)據(jù)內(nèi)最終被傳送的字符內(nèi)容。上述錯(cuò)誤校驗(yàn)主要環(huán)節(jié)為如:報(bào)文(此部分和數(shù)據(jù)
47、位相關(guān),不包含起始位、停止位以及隨意選擇的奇偶校驗(yàn)位)被當(dāng)做接連不斷的二進(jìn)制,此時(shí)最高有效位(MSB)首選發(fā)送。報(bào)文提前和X16相乘(左移16位),之后選擇X16+X15+X2+1除,X16+X15+X2+1能撰寫成二進(jìn)制數(shù)11000000000000101。整數(shù)商位可以不關(guān)注,16位余數(shù)增加此報(bào)文(MSB提前發(fā)放),變成兩個(gè)CRC校驗(yàn)字節(jié)。余數(shù)內(nèi)的1均進(jìn)行初始化,避免全部零變成報(bào)文被接收。經(jīng)過以上處理包含CRC字節(jié)的報(bào)文,假如沒有問題,到接收設(shè)施之后再被相同多項(xiàng)式(X16+X15+X2+1)除,此時(shí)就可以得到單個(gè)零余數(shù)(接收設(shè)施核驗(yàn)上述CRC字節(jié),且把其和被傳送的CRC進(jìn)行對(duì)比)。全部運(yùn)算將
48、2當(dāng)做模(不存在進(jìn)位)。習(xí)慣于成串發(fā)放數(shù)據(jù)的設(shè)施會(huì)最先選擇發(fā)送字符最右位(LSB-最低有效位)。其中在形成CRC的時(shí)候,發(fā)送首位就是被除數(shù)的最高有效位MSB。因?yàn)樵谶\(yùn)算中不使用進(jìn)位,為方便后續(xù)操作,統(tǒng)計(jì)CRC時(shí)設(shè)置MSB位于最右位。形成多項(xiàng)式的位序也需要反過來(lái),便于維持相同。多項(xiàng)式MSB可以忽略不關(guān)注,所以其僅僅對(duì)商產(chǎn)生影響和余數(shù)沒有關(guān)系。形成CRC-16校驗(yàn)字節(jié)的主要環(huán)節(jié)為:安裝16位寄存器,全部數(shù)位都是1。上述16位寄存器的高位字節(jié)和最初8位字節(jié)開展“異或”計(jì)算。最終結(jié)果放到此處16位寄存器。將其整體右移一位。假如向右(標(biāo)記位)移出的數(shù)位為1,此時(shí)形成多項(xiàng)式1010000000000001
49、與此處寄存器開展“異或”計(jì)算;假如向右移出數(shù)位為0,此刻回到。反復(fù)與,一直到移出八位。此外八位和寄存器開展“異或”計(jì)算。反復(fù),一直到上述報(bào)文全部字節(jié)都和16位寄存器開展“異或”計(jì)算,且移位八次。上述16位寄存器內(nèi)容也就是2字節(jié)CRC錯(cuò)誤校驗(yàn),被添加到報(bào)文內(nèi)的最高有效位。此外值得關(guān)注的是,在部分非ModBus通信協(xié)議內(nèi)也開始采用CRC16當(dāng)做校驗(yàn)方式,此外得到大量CRC16變種,此刻主要采用CRC16多項(xiàng)式X16+X15+X2+1,第一次裝入16位寄存器是0000;采用CRC16反序X16+X14+X1+1,第一次裝入寄存器值是0000或者FFFFH。第三章 硬件設(shè)計(jì)3.1硬件設(shè)計(jì)思路本設(shè)計(jì)開機(jī)
50、后首先會(huì)進(jìn)行數(shù)據(jù)初始化,之后開始依次讀取6路DS18B20溫度數(shù)據(jù)傳感器的溫度數(shù)據(jù),溫度報(bào)警上限值默認(rèn)設(shè)置為30攝氏度,報(bào)警下限值默認(rèn)為10攝氏度。系統(tǒng)框圖如圖3-1所示。系統(tǒng)由通信部分,報(bào)警部分,電源部分,單片機(jī)最小系統(tǒng)部分以及溫度采集部分組成。當(dāng)前本系統(tǒng)的主要部分是STC89C52RC單片機(jī),主要利用控制選擇某個(gè)DS18B20,且將檢測(cè)得到的溫度數(shù)據(jù)傳送到單片機(jī)開展后續(xù)操作,之后將操作之后的溫度產(chǎn)送到緩沖區(qū),等待上位機(jī)的查詢命令,設(shè)置閾值時(shí),單片機(jī)接收到上位機(jī)發(fā)來(lái)的數(shù)據(jù)后,保存到單片機(jī)的相應(yīng)的數(shù)據(jù)存儲(chǔ)區(qū)。當(dāng)有溫度出現(xiàn)報(bào)警情況時(shí),系統(tǒng)會(huì)根據(jù)報(bào)警發(fā)出LED報(bào)警提示,并伴有聲音報(bào)警提示。報(bào)警分為
51、上下限報(bào)警和溫度傳感器DS18B20斷線報(bào)警。圖3-1 系統(tǒng)框圖當(dāng)前設(shè)計(jì)主要采用開關(guān)+5V電源確保電力,系統(tǒng)內(nèi)電源內(nèi)容只進(jìn)行單純的濾波。通信選擇RS485方式通信,軟件協(xié)議選擇Modbus-rtu通信協(xié)議。選擇RS485的原因是RS485方式相比RS232具有通信距離遠(yuǎn),布線少,布線更方便,抗干擾更強(qiáng)等一些特點(diǎn)。3.2電路詳細(xì)設(shè)計(jì)系統(tǒng)分為電源部分,單片機(jī)最小系統(tǒng),通信電路,溫度采集電路,聲光報(bào)警電路等部分。3.2.1單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)內(nèi)容的電路圖可以參考圖3-2內(nèi)容。圖內(nèi)C4,S5,R21組成內(nèi)部復(fù)位電路。假如在順利運(yùn)作的時(shí)候,復(fù)位管腳被電阻R21拉低,促使其位于用戶順利操作時(shí)期。在
52、S5被按下之后,將其中的復(fù)位管腳電平拉到高電平,促使其進(jìn)入復(fù)位狀態(tài),C4具備一定的去抖功能。C6、C7與Y1為晶振電路,保證單片機(jī)正常工作。RP1為準(zhǔn)雙向口P0口的上拉電阻。根據(jù)數(shù)據(jù)手冊(cè),我們知道51單片機(jī)的P0口為準(zhǔn)雙向口,即不是真正意義上的雙向口,因?yàn)楫?dāng)P0口做輸出使用時(shí),如果不接上拉電阻,P0口是開漏輸出,需要上接上拉電阻從誒呦輸出高電平的能力。圖3-2 單片機(jī)最小系統(tǒng)電路3.2.2通信接口電路電路本設(shè)計(jì)選用MAX485作為通信芯片,此芯片穩(wěn)定性好,與單片機(jī)接口方便如圖3-3所示電路。圖中D9,D10與R18,R19對(duì)電路的穩(wěn)定性提供了保證。芯片1腳為數(shù)據(jù)輸出,2腳為接收使能,3腳為驅(qū)動(dòng)
53、器輸出使能,4腳為驅(qū)動(dòng)器輸入,5腳為GND,6腳是聯(lián)系到RS485總線的A端。7腳是聯(lián)系到RS485總線的B端。8腳是電源線引腳。電源4.25VVcc5.75V。 MAX485是重要的8引腳芯片,也是目前相對(duì)標(biāo)準(zhǔn)與普遍使用的RS485收發(fā)器,只可以開展半雙工的通訊,內(nèi)部包含單個(gè)輸出驅(qū)動(dòng)器與信號(hào)接收器。主要具備低損耗優(yōu)勢(shì),靜態(tài)電流只有300uA。MAX485具備三態(tài)輸出特點(diǎn),在采用MAX485時(shí),總線最多可以一次連接32個(gè)MAX485芯片。通訊波特率最高是2.5M 。圖3-3485通信接口電路3.2.3溫度采集電路溫度采集電路如圖3-4所示。圖中包括了溫度采集電路,對(duì)應(yīng)的單片機(jī)采集IO
54、為P2.4。圖中電阻為若上拉電阻。電容的作用為去耦電容。DS18B20是常用的溫度傳感器,具有體積小,硬件開銷低,抗干擾能力強(qiáng),精度高的特點(diǎn)。DS18B20溫度傳感器最大精度可以達(dá)到0.0625攝氏度,測(cè)溫范圍為55+125??梢灾С侄帱c(diǎn)組網(wǎng)作用,眾多DS18B20能并聯(lián)在單個(gè)三線上,最多可以并聯(lián)八個(gè),完成多點(diǎn)測(cè)溫,假如數(shù)目較多,導(dǎo)致供電電源電壓太低,進(jìn)而導(dǎo)致信號(hào)傳輸不平穩(wěn)。本設(shè)計(jì)從安全可靠的角度考慮采用單總線,每個(gè)總線上只有一個(gè)設(shè)備的方式。圖3-4 溫度采集電路3.2.4聲光報(bào)警電路聲光報(bào)警電路如圖3-5所示。圖中的LED代表設(shè)計(jì)中的溫度數(shù)據(jù)上限或下限報(bào)警。聲音報(bào)警是當(dāng)有任何一種報(bào)警發(fā)生時(shí),
55、聲音報(bào)警都會(huì)發(fā)出聲響。當(dāng)P1.1輸出高電平時(shí),三極管Q1截至,蜂鳴器關(guān)閉,當(dāng)輸出低電平時(shí),三極管Q1導(dǎo)通,蜂鳴器發(fā)出聲響。當(dāng)單片機(jī)的管腳P1.0為低電平時(shí),LED等點(diǎn)亮,電阻R2為限流電阻,當(dāng)P1.0為高電平時(shí),LED等熄滅。圖3-5聲光報(bào)警電路3.2.5電源設(shè)計(jì)電源部分電路如圖3-6所示。圖中D11為電源指示燈,當(dāng)電源接通后LED亮起,當(dāng)電源關(guān)閉LED熄滅,進(jìn)而判定電源運(yùn)作狀況。R23是電源指示燈的限流電阻,目前主要使用1K的限流電阻。主要參考I=U/R=(5-0.3)V/1000=4.7mA,其中0.3是LED的壓降。因此一般工作電流通常低于20mA。目前設(shè)計(jì)相對(duì)全面穩(wěn)定,設(shè)計(jì)是4.7mA
56、。C9和C10全部是濾波電容。可以全面去除電源文波,促使電源波形更穩(wěn)定。目前主要使用外部+5V的開關(guān)電源供電,所以在電源方面,主要設(shè)計(jì)出相對(duì)簡(jiǎn)潔的濾波電路。圖3-6 電源濾波電路系統(tǒng)原理圖如圖3-7所示。圖3-7 系統(tǒng)原理圖第四章 系統(tǒng)軟件設(shè)計(jì)4.1單片機(jī)開發(fā)環(huán)境KeilC51軟件是美國(guó)KeilSoftware企業(yè)設(shè)計(jì)的51系列兼容單片機(jī)C語(yǔ)言軟件的重要設(shè)計(jì)環(huán)境,主要程序移植效率更高。Keil軟件主要包含C的編譯器和宏匯編、連接器與庫(kù)管理,此外也有功能齊全的在線仿真調(diào)試器等比較完善的開發(fā)預(yù)案,上述全部利用集成開發(fā)環(huán)境(uVision)把上述部分搭配起來(lái)。顯然,運(yùn)作KeilC軟件的操作系統(tǒng)需要W
57、IN98、WIN2000、NT、WINXP等等相關(guān)系統(tǒng)。假如你挑選C語(yǔ)言編程,此時(shí)KeilC軟件基本上就是最佳選擇。Keil主要發(fā)展環(huán)節(jié)現(xiàn)在來(lái)看是KeilVision2、KeilVision3、KeilVision4、KeilVision5等多個(gè)時(shí)期。目前主要選擇的開發(fā)環(huán)境是KeilVision4,由于其在2009年初期設(shè)計(jì)和公開,在發(fā)布之后經(jīng)過一定時(shí)期,得到用戶的檢驗(yàn),此版本相對(duì)穩(wěn)定,此外部分新功能便于用戶的使用,效果較好。4.2項(xiàng)目開發(fā)過程裝置KeiluVision4之后,最先開啟軟件,主要界面參考圖4-1內(nèi)容。進(jìn)入開發(fā)環(huán)境之后點(diǎn)擊“project”,此時(shí)出現(xiàn)下拉菜單,在下拉菜單中挑選“newuVision4project.”,來(lái)創(chuàng)建單個(gè)工程。此后會(huì)彈出選擇工程路徑和需要命名的對(duì)話框,此時(shí)依照個(gè)人需求進(jìn)行設(shè)定。確定工程名之后,軟件會(huì)讓用戶挑選CPU,此時(shí)我們主要選擇Atmel菜單下的AT89C52的CPU。此步驟結(jié)束之后,全部工程設(shè)定結(jié)束。圖4-1KeiluVision4軟件開發(fā)環(huán)境此后就需要建設(shè)全新的“XXX.C”文件。最先我們需要單擊“File”菜單,在下拉列表中挑選“NEW”,新建之后點(diǎn)擊存儲(chǔ)按鍵。在選擇保存C文件的路徑和文件名之后。我們就能根據(jù)自身需求開展后續(xù)設(shè)定。此時(shí)C文件隨之設(shè)置技術(shù)。上述C文件通常和之前設(shè)定的工程文件保存在相同目錄內(nèi)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《沉箱預(yù)制施工方案》課件
- 小學(xué)五年級(jí)數(shù)學(xué)上期小數(shù)點(diǎn)乘除法計(jì)算練習(xí)題合集
- 七年級(jí)生物上冊(cè)第一單元生物和生物圈知識(shí)點(diǎn)總結(jié)(新版)新人教版
- 教師資格證考試普通話要求
- 《切事故都可以預(yù)防》課件
- 二年級(jí)上冊(cè)11 葡萄溝(教案)
- 瀝青砼攤鋪合同協(xié)議書
- 焊接培訓(xùn)資料:焊接應(yīng)力的消除
- 健康行業(yè)助理工作總結(jié)評(píng)述
- 電梯電梯銷售經(jīng)理銷售業(yè)績(jī)總結(jié)
- 幼兒園食堂食品安全主體責(zé)任風(fēng)險(xiǎn)管控清單(日管控)
- 九年級(jí)上冊(cè)第二單元民主與法治 單元作業(yè)設(shè)計(jì)
- 陜西華縣皮影戲調(diào)研報(bào)告
- 2016年食堂期末庫(kù)存
- 運(yùn)籌學(xué)課程設(shè)計(jì)報(bào)告
- (完整)雙溪課程評(píng)量表
- 人教版高中物理選擇性必修第二冊(cè)《法拉第電磁感應(yīng)定律》教案及教學(xué)反思
- 網(wǎng)絡(luò)安全培訓(xùn)-網(wǎng)絡(luò)安全培訓(xùn)課件
- GB/T 6913-2023鍋爐用水和冷卻水分析方法磷酸鹽的測(cè)定
- 項(xiàng)目部布置圖方案
- 《文明城市建設(shè)問題研究開題報(bào)告3000字》
評(píng)論
0/150
提交評(píng)論