分布式遠(yuǎn)程溫濕度智能監(jiān)控系統(tǒng)的設(shè)計(jì)與研究畢業(yè)設(shè)計(jì)_第1頁
分布式遠(yuǎn)程溫濕度智能監(jiān)控系統(tǒng)的設(shè)計(jì)與研究畢業(yè)設(shè)計(jì)_第2頁
分布式遠(yuǎn)程溫濕度智能監(jiān)控系統(tǒng)的設(shè)計(jì)與研究畢業(yè)設(shè)計(jì)_第3頁
分布式遠(yuǎn)程溫濕度智能監(jiān)控系統(tǒng)的設(shè)計(jì)與研究畢業(yè)設(shè)計(jì)_第4頁
分布式遠(yuǎn)程溫濕度智能監(jiān)控系統(tǒng)的設(shè)計(jì)與研究畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書分布式遠(yuǎn)程溫濕度智能監(jiān)控系統(tǒng)的設(shè)計(jì)與研究摘要摘要現(xiàn)在許多大型企業(yè)擁有多個(gè)倉庫,并且全都散落在不同的地點(diǎn) ,這樣對(duì)于倉庫的溫濕度監(jiān)測(cè)很難運(yùn)作。由于傳統(tǒng)的溫度和濕度監(jiān)測(cè)系統(tǒng)的布線繁瑣,傳輸距離有限,不能解決實(shí)際問題。目前,分布式系統(tǒng)的主要發(fā)展方向是計(jì)算機(jī)控制系統(tǒng) 。本文利用已經(jīng)被廣泛利用的 can 總線通信設(shè)計(jì)出的監(jiān)控系統(tǒng), can 總線通信系統(tǒng)主要有抗干擾性,節(jié)點(diǎn)控制多,通信距離遠(yuǎn)等特點(diǎn),在設(shè)計(jì)中,主要模擬兩個(gè)節(jié)點(diǎn) 之間的相互監(jiān)控,主機(jī)通過總線控制器 mcp2515 和驅(qū)動(dòng)器 tja1050 連接到 can 總線上,從機(jī)通過控制器 sja1000 和驅(qū)動(dòng)器 82c

2、250 也連接到 can 總線上。從機(jī)檢測(cè)到當(dāng)前溫濕度送給 stc89c52rc 單片機(jī)處理后,發(fā)到總線上,主機(jī)收到信號(hào),給出相應(yīng)的顯示和溫度報(bào)警等操作。在本文中對(duì)各種監(jiān)控系統(tǒng)的優(yōu)劣性和適用場(chǎng)合進(jìn)行了分析,得出了最合理的監(jiān)控系統(tǒng)的設(shè)計(jì)方案。設(shè)計(jì)了基于 can 總線的監(jiān)控系統(tǒng),實(shí)現(xiàn)了在多節(jié)點(diǎn),環(huán)境惡劣,通信距離遠(yuǎn)等不同場(chǎng)合的應(yīng)用。論文主要介紹了各種芯片的硬件設(shè)計(jì)和軟件設(shè)計(jì),勾畫自己的設(shè)計(jì)與研究思想。使設(shè)計(jì)出最簡(jiǎn)便、經(jīng)濟(jì)的系統(tǒng)。關(guān)關(guān)鍵鍵詞詞:can 總線;stc89c52rc 單片機(jī);ds18b20;sja1000 控制器;mcp2515 控制器;計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書design an

3、d reserch of distributed intelligent remote temperature and humidity monitoring systemabstractnowadays many large companies have multiple warehouses. all of the warehouses are scattered in different locations, which is difficult for us to monitor the temperature and humidity of the warehouses. due t

4、o the traditional wiring of temperature and humidity monitoring system is cumbersome and transmission distance is limited, the practical problems can not be solved .currently; the main development direction of the distributed control system is a computer-control system.in this paper, the use of can

5、bus communication has been widely used in the design of the monitoring system, can bus communication system has immunity, control of multi- node communication distance and other characteristics. in the design, the mainly simulated two-node communication, the host connect to the can bus through bus c

6、ontroller mcp2515 and driver sja1050,the sub-host also connect to the can bus through controller sja1000 and driver 82c250. then the sub-host detects the current temperature and humidity and deliver the data to the stc89c52rc microcontroller. when the host receive the signal from the host, it will g

7、ive the corresponding temperature display and alarm operation.this paper mainly analyzed the advantages and disadvantages of various monitoring systems in various occasions and reached the most reasonable monitoring system design. designed a monitoring system based on can bus, realized the applicati

8、on in different occasions of a multi-node, harsh environment, communication distance. this paper introduced the hardware and software design of various chip, sketch their design and research ideas, then designed the most simple and economical system.keywords: can bus; stc89c52rc microcontroller; ds1

9、8b20; sja1000 controller; mcp2515 transceiver計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書i目目 錄錄第第 1 1 章章 緒論緒論 .11.1 課題背景及其意義.11.2 國內(nèi)外研究現(xiàn)狀.11.2.1 基于 rs485 總線的監(jiān)控系統(tǒng) .21.2.2 基于以太網(wǎng)的監(jiān)控系統(tǒng) .31.2.3 基于 can 總線的監(jiān)控系統(tǒng) .41.3 本設(shè)計(jì)的實(shí)用價(jià)值.41.4 設(shè)計(jì)的理論意義.51.5 本課題的主要內(nèi)容和結(jié)構(gòu).5第第 2 2 章章 cancan 總線技術(shù)總線技術(shù) .62.1 can 總線介紹 .62.2 can 總線報(bào)文介紹 .7第第 3 3 章章 硬件設(shè)計(jì)硬件設(shè)計(jì)

10、 .103.1 系統(tǒng)硬件設(shè)計(jì)方案.103.1.1 控制模塊(stc89c52rc) .103.2 從機(jī)的硬件設(shè)計(jì).123.2.1 can 控制器(sja1000) .133.2.2 can 收發(fā)器(82c250) .163.2.3 測(cè)溫模塊(ds18b20) .183.2.4 測(cè)濕模塊(hs1101) .243.3 主機(jī)的硬件設(shè)計(jì).27計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書ii3.3.1 can 控制器(mcp2515).273.3.2 can 收發(fā)器(tja1050).273.3.3 控制電路(數(shù)碼管和蜂鳴器) .27第第 4 4 章章 軟件設(shè)計(jì)軟件設(shè)計(jì) .294.1 從機(jī)的主程序設(shè)計(jì).294.1

11、.1 溫度采集模塊(ds18b20) .294.1.2 測(cè)濕模塊程序設(shè)計(jì) .304.2 can 控制器模塊(sja1000) .314.3 主機(jī)的主程序設(shè)計(jì).334.3.1 報(bào)警及顯示模塊 .34第第 5 5 章章 系統(tǒng)的生成以及調(diào)試系統(tǒng)的生成以及調(diào)試 .355.1 keil 的燒寫 .355.2 調(diào)試和總結(jié).35結(jié)論結(jié)論 .36致謝致謝 .37參考文獻(xiàn)參考文獻(xiàn) .38計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書iii前前 言言在現(xiàn)代的工業(yè)、農(nóng)業(yè)和通信系統(tǒng)中,各種復(fù)雜的環(huán)境 (包括溫度、濕度)都會(huì)影響設(shè)備的安全,甚至在人員進(jìn)出時(shí)不能確定內(nèi)部的情況而 對(duì)人身安全都不能確保。所以在現(xiàn)代科技領(lǐng)域中,監(jiān)控系統(tǒng)也應(yīng)

12、運(yùn)而生。與傳統(tǒng)的人工檢測(cè)方法相比較,在測(cè)量時(shí)間、測(cè)量精度、實(shí)時(shí)性都有了質(zhì)的飛躍。但是在控制系統(tǒng)的選用上,人們還要解決成本、體積復(fù)雜情況下的實(shí)時(shí)性和安全性等問題。 而小型單片機(jī)系統(tǒng)能有效的解決了這些問題。尤其在通信問題也至關(guān)重要 ,而 can 總線更符合工農(nóng)業(yè)的通信科技的發(fā)展。隨著科技的發(fā)展,無論是科研,工業(yè),農(nóng)業(yè)還是實(shí)驗(yàn)室器材的保養(yǎng),溫濕度監(jiān)控與之有著密不可分的關(guān)系。而對(duì)于監(jiān)控的精度和實(shí)時(shí)性要求也越來越高,在本設(shè)計(jì)中,就是從測(cè)量精度和控制的實(shí)時(shí)性上進(jìn)行測(cè)量、監(jiān)測(cè)和控制的設(shè)計(jì)和研究,而測(cè)量主要用了 hs1101 濕度傳感器和 dallas 公司的數(shù)字溫度傳感器 ds18b20,監(jiān)測(cè)主要用了數(shù)碼管

13、顯示和蜂鳴器報(bào)警,控制主要用了空調(diào),加濕機(jī)等裝置。 如果運(yùn)用于實(shí)際,只需在總線上添加監(jiān)測(cè)點(diǎn),就可以實(shí)現(xiàn)分布式遠(yuǎn)程監(jiān)控系統(tǒng)。在現(xiàn)代社會(huì)信息科技的不斷迅速發(fā)展中,計(jì)算機(jī)技術(shù) 和溫濕度敏感元器件的高速更新,使得溫濕度的測(cè)量正朝著自動(dòng)化、 智能化方向發(fā)展。在室內(nèi)溫濕度的監(jiān)控中,溫濕度測(cè)量的出現(xiàn)使得產(chǎn)品的保養(yǎng)達(dá)到更好、使用周期更長、性能保持更好。所以 溫濕度測(cè)控有著廣闊和應(yīng)用發(fā)展空間 。計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書1第第 1 1 章章 緒論緒論1.1 課題背景及其意義課題背景及其意義 在早期,人們常用的方法是用人員對(duì)庫房進(jìn)行相關(guān)的溫度,濕度的監(jiān)測(cè),但是人工讀取數(shù)值有很大的誤差和操作 等錯(cuò)誤原因,所以

14、這種方式在測(cè)量溫濕度時(shí)不僅速度慢,而且準(zhǔn)確性很低,使樣品不具有代表性,更使 監(jiān)測(cè)結(jié)果失去了其原來的意義,而且在控制當(dāng)時(shí)的溫度,濕度時(shí)不能根據(jù)實(shí)際情形及時(shí) 做出正確的操作。在局限性上也有很大的漏洞,比如在某些場(chǎng)合,要測(cè)量地下設(shè)施的表面溫度時(shí),工作人員不可能測(cè)量到直接的數(shù)據(jù),在具有危險(xiǎn)的庫房中測(cè)量人員還要冒著一定的風(fēng)險(xiǎn)去提取測(cè)量溫濕度。在這樣一個(gè)環(huán)境下將會(huì)損失很多的物力,財(cái)力和人力。隨著電子技術(shù)的飛速發(fā)展,溫度與濕度傳感器 開始替代那些原始的溫度計(jì)濕度計(jì) ,出現(xiàn)了以單片機(jī)為監(jiān)控核心的小型系統(tǒng),它的監(jiān)控還可以完成預(yù)先設(shè)定的溫度范圍,報(bào)警,溫度和濕度補(bǔ)償功能 等諸多功能。數(shù)字溫度傳感器直接讀取數(shù)字內(nèi)容

15、,改善了在長距離傳輸問題和轉(zhuǎn)移過程中溫濕度的數(shù)據(jù)不穩(wěn)定現(xiàn)象 ,如由于干擾衰減問題的精度損失。而單片機(jī)上地址編碼又解決了庫房分散而不利于溫濕度監(jiān)控的問題。計(jì)算機(jī)的快速高效精確的運(yùn)作解決了因?yàn)槿藶橐蛩囟鴮?dǎo)致的實(shí)時(shí)性和誤差 性問題。在數(shù)碼管上顯示結(jié)果,單片機(jī)可以直接控制溫濕度并監(jiān)測(cè)。 以這種監(jiān)控系統(tǒng),大大提高了工作效率,而且大大擴(kuò)大了在溫度和濕度監(jiān)測(cè)中范圍上的 應(yīng)用。分布式溫濕度監(jiān)控系統(tǒng)的設(shè)計(jì)與研究,對(duì)當(dāng)前具有很大的意義,對(duì)工業(yè)、農(nóng)業(yè)及第三產(chǎn)業(yè)的發(fā)展都有不可估量的作用,是現(xiàn)行發(fā)展和未來發(fā)展的大體趨勢(shì), 對(duì)占領(lǐng)國際領(lǐng)先水平和科技戰(zhàn)略至高地位的 具有重要意義,尤其是對(duì)工業(yè)自動(dòng)化的進(jìn)步和經(jīng)濟(jì)發(fā)展有著無法估

16、計(jì)的重要性。1.2 國內(nèi)外研究現(xiàn)狀國內(nèi)外研究現(xiàn)狀對(duì)于溫濕度的測(cè)量和控制技術(shù)在中國起步較晚, 在二十世紀(jì)八十年代,工程技術(shù)人員才開始掌握計(jì)算機(jī)控制技術(shù)在溫度測(cè)量和監(jiān)控系統(tǒng)的應(yīng)用。就這樣 我國溫度監(jiān)控系統(tǒng)的計(jì)算機(jī)運(yùn)用,在總體上正從學(xué)習(xí)、簡(jiǎn)單的實(shí)驗(yàn)應(yīng)用階段向各種場(chǎng)合的實(shí)際運(yùn)用,合理運(yùn)用階段跨越和發(fā)展。但是在我國,溫度監(jiān)測(cè)和控制的情況還遠(yuǎn)遠(yuǎn)沒有達(dá)到工廠所要求的程度,在和發(fā)達(dá)技術(shù)國家相比較,還是有一段較大的 距離要克服。比如仍然有很多技術(shù)問題:裝備設(shè)施能力低,工業(yè)化程度低,控制水平的不完善, 硬件和軟件資源不能共享、可靠性差等 缺點(diǎn)。目前,迅速發(fā)展的單片機(jī)技術(shù),為解決工、農(nóng)業(yè)自動(dòng)化方面應(yīng)用的瓶頸問題提供

17、了有效的途徑,但是當(dāng)前溫濕度監(jiān)控的種類也是非常多, 如 rs485 總線的監(jiān)控系統(tǒng)、以太網(wǎng)監(jiān)控系統(tǒng)、can 監(jiān)控系統(tǒng)等。計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書21.2.11.2.1 基于基于 rs485rs485 總線的監(jiān)控系統(tǒng)總線的監(jiān)控系統(tǒng)rs485 總線作為一種多電氣規(guī)格分?jǐn)?shù)據(jù)傳輸,已經(jīng)成為行業(yè)標(biāo)準(zhǔn)通信接口的應(yīng)用最為廣泛的通信接口之一。它具有其它總線不能與之媲美的優(yōu)點(diǎn):它具有的抗噪聲的能力,通信傳輸速率快,可靠性及電纜長度距離足夠遠(yuǎn),多點(diǎn)雙向通信時(shí)它能夠簡(jiǎn)單的在一根總線上進(jìn)行傳輸?shù)忍攸c(diǎn)。雖然 rs485 總線有很多優(yōu)點(diǎn),但是不足之處也很多,比如通信容量少(只能最多接入 32 個(gè)設(shè)備) ,長距離的

18、通信速率低,動(dòng)力消耗大,只有串行電纜,不構(gòu)成任何分支的星型 等任意分支,如果每個(gè)節(jié)點(diǎn)的失敗可能導(dǎo)致完全或通信網(wǎng)絡(luò)的局部癱瘓。圖 1-1 是基于 rs485 總線的監(jiān)控系統(tǒng)。它主要的模塊單元為 ds18b20 采集溫度信號(hào),主控制器為 c51 單片機(jī)節(jié)點(diǎn)。如果 rs485 接口兩點(diǎn)之間實(shí)現(xiàn)通信,需要兩對(duì)平衡差分電路來實(shí)現(xiàn)差分接收和平衡發(fā)送。采用 max285 芯片來實(shí)現(xiàn)將 ttl 電平到 rs485總線需要電平的轉(zhuǎn)換,一般 rs485 應(yīng)用四線或者兩線的方式進(jìn)行連接。因?yàn)?max485只能工作在半雙工的狀態(tài)下,所以要實(shí)現(xiàn) 節(jié)點(diǎn)之間的控制只要 c51 單片機(jī)的一個(gè) i/o口就可以了。而一般 rs4

19、85 總線收到每個(gè)節(jié)點(diǎn)的信號(hào)后,將會(huì)傳輸個(gè)給上位機(jī),通過上位機(jī)調(diào)控各個(gè)控制節(jié)點(diǎn)。但是控制節(jié)點(diǎn)之間相互通信只能有一個(gè)主控制器,所以不能支持一點(diǎn)對(duì)多點(diǎn)的有效的相互之間進(jìn)行數(shù)據(jù)的通信。485總線單片機(jī)單片機(jī)溫濕度傳感器溫濕度傳感器485接口485接口除濕機(jī)空調(diào)機(jī)空調(diào)機(jī)除濕機(jī)pc機(jī)圖 1-1 基于 rs485 總線的監(jiān)控系統(tǒng)只能使用半雙工模式下的 rs485 總線,無論什么時(shí)候只能有一個(gè)節(jié)點(diǎn)處在發(fā)送狀態(tài),所以電路由使能信號(hào)發(fā)送控制。rs-485 多點(diǎn)互連非常方便,可以節(jié)省大量的信號(hào)線。雖計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書3然 rs485 比以往的 rs232 有了很大的改進(jìn),但是 rs485 你有很多不

20、可避免的缺點(diǎn),比如在工業(yè)應(yīng)用中主機(jī)只能有一個(gè),且需要單點(diǎn)接地,否則電壓不能一致,導(dǎo)致共模干擾。所以 rs485 總線在未來的工業(yè)應(yīng)用中范圍將會(huì)越來越不能滿足工業(yè)發(fā)展的需要。1.2.21.2.2 基于以太網(wǎng)的監(jiān)控系統(tǒng)基于以太網(wǎng)的監(jiān)控系統(tǒng)所謂的以太網(wǎng)監(jiān)控系統(tǒng)就是運(yùn)用于分布式監(jiān)控系統(tǒng)的以太網(wǎng)技術(shù)。目前在以太網(wǎng)技術(shù)飛速發(fā)展的今天,使得越來越多的監(jiān)控系統(tǒng)選擇通過 internet 和 web 服務(wù)器進(jìn)行相互之間的通信。實(shí)時(shí)性,互操作性和網(wǎng)站的其他方面完全能滿足各種監(jiān)控系統(tǒng)的需求,無需專線,也不用鋪設(shè)現(xiàn)場(chǎng)總線就可以使用以太網(wǎng)監(jiān)控系統(tǒng),在通信方面,可充分利用廣泛存在的以太網(wǎng)資源。但目前的以太網(wǎng)技術(shù),如果直接

21、應(yīng)用于控制仍有很大的差距和不足的領(lǐng)域 。通信的不可靠因素,存在控制實(shí)時(shí)性低等諸多障礙。 其次,缺乏統(tǒng)一的應(yīng)用層協(xié)議,導(dǎo)致來自不同制造商的設(shè)備之間缺乏互操作性 。再次,目前的以太網(wǎng)設(shè)備在復(fù)雜的環(huán)境中,可靠性不能很好的保證。最后,以太網(wǎng)的安全性較差,會(huì)受黑客、病毒等攻擊,造成信息的泄漏。然而,隨著社會(huì)的不斷發(fā)展和工業(yè)以太網(wǎng)技術(shù)的改進(jìn),我相信,這些問題必將逐步解決。而這項(xiàng)技術(shù)必將在未來前景中 一定會(huì)有很好的發(fā)展。圖 1-2 是以太網(wǎng)通信原理圖。它主要的模塊單元為 ds18b20 采集溫度信號(hào),主控制器為 c52 單片機(jī)。以太網(wǎng)使用相同的載波偵聽多路訪問 /碰撞媒體訪問方法和物理層規(guī)范的檢測(cè)。網(wǎng)絡(luò)中的

22、各個(gè)節(jié)點(diǎn)都能自主地決定數(shù)據(jù)幀的接收與發(fā)送 ,并通過通信網(wǎng)絡(luò)節(jié)點(diǎn)的計(jì)算機(jī)可以有效地完成控制。溫濕度傳感器單片機(jī)rs485轉(zhuǎn)tcp/ip協(xié)議轉(zhuǎn)換器局域網(wǎng)pc機(jī)空調(diào)除濕機(jī)圖 1-2 以太網(wǎng)通信原理圖基于 tcp/ip 的以太網(wǎng)的監(jiān)控系統(tǒng)是擁有能兼容各種不同的小型系統(tǒng)、相互操作性良好等特點(diǎn)組成的標(biāo)準(zhǔn)開放式網(wǎng)絡(luò),能方便的與計(jì)算機(jī)和服務(wù)器相連接,但是在環(huán)境特別復(fù)雜和惡劣的情況下,尤其是強(qiáng)干擾的情況下,傳輸數(shù)據(jù)的可靠性還急需改善,還有在網(wǎng)絡(luò)負(fù)載很重的條件下可能出現(xiàn)網(wǎng)絡(luò)癱瘓的問題等。所以以太網(wǎng)技術(shù)現(xiàn)在還 很難取代總線通信在實(shí)時(shí)性和確定性方面的要求。還有就是在工業(yè)中要求的是簡(jiǎn)單經(jīng)濟(jì)計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明

23、書4實(shí)惠,但是以太網(wǎng)的價(jià)格昂貴且長時(shí)期需要人員維修,在應(yīng)用中不是很廣泛。1.2.31.2.3 基于基于 cancan 總線的監(jiān)控系統(tǒng)總線的監(jiān)控系統(tǒng)can 監(jiān)控系統(tǒng)的設(shè)計(jì)要求以最小成本及可靠性來接收和處理溫濕度數(shù)值,而單片機(jī)系統(tǒng)可以減少系統(tǒng)的成本和人員開發(fā)周期,并能對(duì)不同節(jié)點(diǎn)的不同數(shù)據(jù)的 進(jìn)行采集,根據(jù)當(dāng)前的實(shí)際情況進(jìn)行相應(yīng)的 溫濕度調(diào)整。如今這種監(jiān)控系統(tǒng)廣泛運(yùn)用于工農(nóng)業(yè)中,如圖 1-3 就是當(dāng)前主要用于工農(nóng)業(yè)的基于 can 總線的分布式遠(yuǎn)程溫濕度監(jiān)控系統(tǒng)。上位機(jī)can適配器can驅(qū)動(dòng)器82c250can驅(qū)動(dòng)器82c250can控制器sja1000can控制器sja1000單片機(jī)單片機(jī)溫度傳感器

24、濕度傳感器空調(diào)降濕機(jī)溫度傳感器濕度傳感器空調(diào)降濕機(jī)圖 1-3 當(dāng)前基于 can 總線的分布式遠(yuǎn)程溫濕度監(jiān)控系統(tǒng)基于 can 總線的監(jiān)控系統(tǒng)能在惡劣環(huán)境中保證數(shù)據(jù)的穩(wěn)定性和實(shí)時(shí)性,而且在工業(yè)運(yùn)用中很經(jīng)濟(jì)實(shí)惠,在安裝裁剪控制節(jié)點(diǎn)時(shí)都能簡(jiǎn)單操作,在將來工業(yè)通信中有很大的發(fā)展前景。所以本設(shè)計(jì)將研究并設(shè)計(jì)基于 can 總線的監(jiān)控系統(tǒng)。1.3 本設(shè)計(jì)的實(shí)用價(jià)值本設(shè)計(jì)的實(shí)用價(jià)值在當(dāng)前社會(huì),自動(dòng)化控制在科技發(fā)展的今天 顯得越來越重要,而在遠(yuǎn)程控制中,通信技術(shù)又是其中的靈魂,它們代表了一個(gè)國家的科技發(fā)展水平 。分析整個(gè)社會(huì)的發(fā)展現(xiàn)狀,可以看出,一個(gè)現(xiàn)代化的國家在工業(yè)自動(dòng)化控制必須要踏進(jìn)世界先進(jìn)行列,這樣才能滿足

25、當(dāng)前與之匹配的工業(yè)化發(fā)展的需求。隨著企業(yè)的發(fā)展,企業(yè)對(duì)于倉庫管理上,要求也越來越嚴(yán)格,為了保障庫房產(chǎn)品及零配件的安全,在溫濕度控制上要求更實(shí)時(shí)控制??萍寂c工業(yè)需求 共同發(fā)展,為了很好的解決這個(gè)問題,分布式監(jiān)控系統(tǒng)可以直觀的通過中央處理器來完成對(duì)數(shù)據(jù)的采集,控制和報(bào)警等功能。而各節(jié)點(diǎn)之間通過 can 總線更能實(shí)時(shí)傳遞溫濕度信息。避計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書5免了因?yàn)榄h(huán)境影響而使精密儀器受到損壞。使企業(yè)的經(jīng)濟(jì)得到保障。1.4 設(shè)計(jì)的理論意義設(shè)計(jì)的理論意義本文主要介紹了 can 總線的監(jiān)控系統(tǒng),可以實(shí)時(shí)掌握各節(jié)點(diǎn)的溫濕度信息,保障庫房的安全。在設(shè)計(jì)中,主要研究的難點(diǎn)是:完成監(jiān)控系統(tǒng)的硬件和軟件

26、設(shè)計(jì), 各節(jié)點(diǎn)之間的 can 通信,節(jié)點(diǎn)中各模塊器件的特性研究等。所以本設(shè)計(jì)的實(shí)際意義在于:(1)監(jiān)控系統(tǒng)的自動(dòng)化控制改變了以往人員利用溫濕度計(jì)的測(cè)量,使 測(cè)量值更具有可靠性和代表性。(2)避免了因?yàn)槿藛T讀數(shù)誤差,或者反應(yīng)不及時(shí)而導(dǎo)致的經(jīng)濟(jì)損失,只要中央監(jiān)控系統(tǒng)有工作人員就可以實(shí)時(shí)的對(duì)某個(gè)庫房進(jìn)行合理的操作。(3)使以前工作人員不能進(jìn)入的某些環(huán)境 也能進(jìn)行實(shí)時(shí)的監(jiān)控,從而保障了工作人員生命財(cái)產(chǎn)安全。(4)該系統(tǒng)性能好,價(jià)格經(jīng)濟(jì),使用廣泛,很好的推動(dòng)了工業(yè)監(jiān)控系統(tǒng)的發(fā)展,為將來工業(yè)自動(dòng)化發(fā)展的研究產(chǎn)生深遠(yuǎn)的影響。1.5 本課題的主要內(nèi)容和結(jié)構(gòu)本課題的主要內(nèi)容和結(jié)構(gòu)本課題較為詳細(xì)的介紹了以 stc

27、89c52rc 單片機(jī)為控制節(jié)點(diǎn)基于 can 總線遠(yuǎn)程分布式溫濕度監(jiān)控系統(tǒng),重點(diǎn)研究了單片機(jī)之間的硬件設(shè)計(jì)和通信原理,并闡述了其中的主要模塊 sja1000,mcp2515 以及 ds18b20,hs1101 的主要技術(shù)和軟件設(shè)計(jì)。論文的結(jié)構(gòu):第一章為緒論部分,主要介紹了課題的背景,國內(nèi)外現(xiàn)狀和主要設(shè)計(jì) 意義和價(jià)值。第二章對(duì)設(shè)計(jì)難點(diǎn)總線通信技術(shù)從基本簡(jiǎn)介和報(bào)文運(yùn)用做了詳細(xì)介紹。第三章為系統(tǒng)的硬件設(shè)計(jì),分別從主機(jī)和從機(jī)兩個(gè)方面對(duì)節(jié)點(diǎn)中各個(gè)模塊的電路進(jìn)行了設(shè)計(jì)。突出運(yùn)用的模塊的接口設(shè)計(jì)。第四章為軟件設(shè)計(jì)的實(shí)現(xiàn),也是從主機(jī)和從機(jī)對(duì)模塊的進(jìn)行軟件編寫,運(yùn)用程序流程圖更加直觀的理解程序編寫過程。 第五章

28、為監(jiān)控系統(tǒng)的生成以及調(diào)試。計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書6第 2 章 can 總線技術(shù)2.1 can 總線介紹總線介紹現(xiàn)場(chǎng)總線是安裝在生產(chǎn)過程區(qū)域的現(xiàn)場(chǎng)設(shè)備 /儀表與控制室內(nèi)的自動(dòng)控制裝置 /系統(tǒng)之間的一種串行、數(shù)字式、多點(diǎn)、雙向通信的數(shù)據(jù)總線, can(controller area network)是一種現(xiàn)場(chǎng)總線。20 世紀(jì) 80 年代初,首先由德國的 bosch 公司提出,用來解決汽車內(nèi)部的復(fù)雜硬信號(hào)接線,后來得到了 motorola,intel、philips、siemens等大公司的支持,1993 年 iso 正式公布了 iso11898can 高速應(yīng)用標(biāo)準(zhǔn)和iso11519can

29、 低速應(yīng)用標(biāo)準(zhǔn),前者是速率為 125kbps1mbps 的閉環(huán)總線,總線最大長度為 40m1mbps。后者速率為 10125kbps 的開環(huán)總線,最大長度為1km40kbps。目前 can 總線已成為工業(yè)數(shù)據(jù)通信的基礎(chǔ),被廣泛應(yīng)用于離散控制領(lǐng)域,can 總線特點(diǎn)如下:(1)can 總線采用了多主競(jìng)爭(zhēng)式總線結(jié)構(gòu),具有多主站運(yùn)行和分散仲裁的串行總線以及廣播通信的特點(diǎn)。另外,網(wǎng)絡(luò)上任意一個(gè)節(jié)點(diǎn)均可以在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息,而不分主從,通信方式靈活。(2)可連接的節(jié)點(diǎn)數(shù)量多。 can 網(wǎng)絡(luò)上的節(jié)點(diǎn)數(shù)主要取決于 can 總線收發(fā)器,目前最多可達(dá) 110 個(gè)。廢除了傳統(tǒng)的站地址編碼,而

30、代之以對(duì)通信數(shù)據(jù)塊進(jìn)行編碼。數(shù)據(jù)塊的標(biāo)識(shí)碼可由 11 位或 29 位二進(jìn)制數(shù)組成,因此可以定義 211 或 229 個(gè)不同的數(shù)據(jù)塊,這種按數(shù)據(jù)塊編碼的方式,還可使不同的節(jié)點(diǎn)同時(shí)接收到相同的數(shù)據(jù),這一點(diǎn)在分布式控制系統(tǒng)中非常有用。網(wǎng)絡(luò)上的節(jié)點(diǎn)(信息)按編碼可分成不同的優(yōu)先級(jí),可以滿足不同的實(shí)時(shí)要求。(3)采用非破壞性位仲裁總線結(jié)構(gòu)機(jī)制,當(dāng)兩個(gè)節(jié)點(diǎn)同時(shí)向網(wǎng)絡(luò)上傳送信息時(shí),優(yōu)先級(jí)低的節(jié)點(diǎn)主動(dòng)停止數(shù)據(jù)發(fā)送,而優(yōu)先級(jí)高的節(jié)點(diǎn)可不受影響地繼續(xù)傳輸數(shù)據(jù)。(4)通信方式多樣:can 只需通過報(bào)文濾波即可實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)(成組)及全局廣播幾種傳送方式。 can 總線上的任意兩個(gè)單元之間最大的傳輸距離與傳輸

31、速率有關(guān),最遠(yuǎn)可達(dá) 10km(速率 5kbps 以下) ,通信速率最高可達(dá) 1mbps(此時(shí)距離最長 40m) 。通信介質(zhì)可采用雙絞線,同軸電纜和光導(dǎo)纖維。(5)數(shù)據(jù)傳輸采用短幀結(jié)構(gòu),每一幀的數(shù)據(jù)段長度最多為 8 個(gè)字節(jié)。可滿足通常工業(yè)領(lǐng)域中控制命令、工作狀態(tài)及測(cè)試數(shù)據(jù)的一般要求。同時(shí), 8 個(gè)字節(jié)不會(huì)占用總線時(shí)間過長,從而保證了通信的實(shí)時(shí)性。每幀信息都有 crc 校驗(yàn)及其他檢錯(cuò)措施,數(shù)據(jù)出錯(cuò)率極低。節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下,具有自動(dòng)關(guān)閉總線的功能,以使總線上的其他節(jié)點(diǎn)操作不受影響。can 總線是雙向數(shù)據(jù)線,由高低雙絞線 can-high 和 can-low 組成,采用總線網(wǎng)絡(luò)拓樸結(jié)構(gòu),在一個(gè)網(wǎng)

32、絡(luò)上至少需要有 2 個(gè) can 總線節(jié)點(diǎn)存在。在總線的 2 個(gè)終端,各需要安裝 1 個(gè) 120 的終端電阻,實(shí)現(xiàn)總線匹配,防止數(shù)據(jù)在線端被反射,以計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書7回聲的形式返回,影響數(shù)據(jù)的傳輸;如果節(jié)點(diǎn)數(shù)目大于 2 個(gè),中間節(jié)點(diǎn)不要求安裝120 終端電阻,忽略終端電阻,會(huì)使數(shù)據(jù)通信的抗干擾性和可靠性大大降低,甚至無法通信。can 總線的網(wǎng)絡(luò)結(jié)構(gòu)如圖 2-1 所示。can 總線節(jié)點(diǎn)一般由微處理器mcu、can 控制器、can 收發(fā)器三部分組成。(1)微處理器 mcu:負(fù)責(zé)對(duì) can 控制器初始化。(2)can 控制器:can 的通信協(xié)議主要由 can 控制器完成。can 控制器

33、主要由實(shí)現(xiàn) can 總線協(xié)議部分和與微控制器接口部分電路組成。常用的集成 can 控制器有 philips 公司的 pcx82c200、sja1000 等,目前也出現(xiàn)了多種內(nèi)部集成 can 控制器的單片機(jī),如 c8051f040 單片機(jī)等。(3)can 收發(fā)器:can 控制器通過收發(fā)器聯(lián)接到 can 驅(qū)動(dòng)總線上的,集成can 收發(fā)器有 philips 公司的 pca82c50 和 pca82c51。can 收發(fā)器內(nèi)有一個(gè)接收器和發(fā)送器,接收器是利用差動(dòng)信號(hào)放大器將 can-high 線上的電壓(ucan-high)減去can-low 線上的電壓(ucan-low) ,并將差信號(hào)傳至控制單元的

34、can 接收區(qū)。用這種方法可以消除靜電平(對(duì)于 can 驅(qū)動(dòng)數(shù)據(jù)總線來說是 2.5v)或其它任何重疊的干擾電壓。發(fā)送器的任務(wù)是將 can 控制器輸出的較弱信號(hào)放大,使之達(dá)到 can 導(dǎo)線上的信號(hào)電平和控制單元輸入端的信號(hào)電平。can總線為“線與”邏輯,在總線上所有節(jié)點(diǎn)都處于空閑態(tài)(也稱隱性狀態(tài),邏輯“1”時(shí)) ,can-high線和can-low處于非激活狀態(tài),其電壓均為 2.5v,隱性差分電壓近似為0。在顯性狀態(tài)(邏輯“0”時(shí)) ,can-high線上的電壓值不低于3.5v,而can-low線上的電壓值可降至1.5v,差動(dòng)顯性輸出電壓為2v;mcucan控制器can收發(fā)器can總線12012

35、0節(jié)點(diǎn)2節(jié)點(diǎn)1節(jié)點(diǎn)3圖 2-1 can 總線原理圖2.2 can 總線報(bào)文介紹總線報(bào)文介紹網(wǎng)絡(luò)中交換與傳輸?shù)臄?shù)據(jù)單元,即一次性要發(fā)送的數(shù)據(jù)塊叫做報(bào)文 。報(bào)文分為 4種類型:數(shù)據(jù)幀、遠(yuǎn)程幀、出錯(cuò)幀、過載幀 。本軟件設(shè)計(jì)中只用到了數(shù)據(jù)幀,它采用計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書8了 11 位標(biāo)識(shí)符。數(shù)據(jù)幀的標(biāo)準(zhǔn)幀的幀結(jié)構(gòu)如表 2-1。下面具體分析數(shù)據(jù)幀的每一個(gè)位場(chǎng)。表 2-1 數(shù)據(jù)幀的標(biāo)準(zhǔn)幀的幀結(jié)構(gòu)位場(chǎng)幀開始仲裁場(chǎng)控制場(chǎng)數(shù)據(jù)場(chǎng)crc 場(chǎng)應(yīng)答場(chǎng)幀結(jié)尾位數(shù)1 位12 位6 位064 位162 位7 位1.1.幀起始(幀起始(sofsof)sof 標(biāo)志數(shù)據(jù)幀或遠(yuǎn)程幀的開始,僅由一個(gè) “顯性”位組成。只有在

36、總線空閑時(shí)才允許節(jié)點(diǎn)開始發(fā)送(信號(hào)) 。所有節(jié)點(diǎn)必須同步于首先開始發(fā)送報(bào)文的節(jié)點(diǎn)的幀起始前沿。2.2.仲裁場(chǎng)仲裁場(chǎng)仲裁場(chǎng)由標(biāo)識(shí)符和遠(yuǎn)程發(fā)送請(qǐng)求位( rtr 位)組成。rtr 位在數(shù)據(jù)幀中為顯性“0” ,在遠(yuǎn)程幀中為隱性“1” 。對(duì)于 can2.0a 標(biāo)準(zhǔn),標(biāo)識(shí)符長度為 11 位,按 id10到 id0 的順序發(fā)送,最低位是 id0,7 個(gè)最高位 id10-id4 不能全是“隱性” ,如圖 2-2 所示。圖 2-2 標(biāo)準(zhǔn)格式中的仲裁場(chǎng)3.3.控制場(chǎng)控制場(chǎng)控制場(chǎng)由 6 個(gè)位組成,標(biāo)準(zhǔn)幀和擴(kuò)展幀的控制場(chǎng)格式不同。標(biāo)準(zhǔn)幀的控制場(chǎng)包括ide 位(為顯性位,見上文)及保留位 r0、4 位數(shù)據(jù)長度代碼 dl

37、c3dlc0。數(shù)據(jù)長度代碼 dlc3dlc0 只能是 00001000(08) ,其他的數(shù)值不允許使用,如圖 2-3 所示。圖 2-3 控制場(chǎng)結(jié)構(gòu)4.4.數(shù)據(jù)場(chǎng)數(shù)據(jù)場(chǎng)數(shù)據(jù)場(chǎng)由數(shù)據(jù)幀里的發(fā)送數(shù)據(jù)組成。它可以為 08 個(gè)字節(jié),每字節(jié)包含了 8 個(gè)位,首先發(fā)送最高有效位。計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書95.5.循環(huán)冗余碼循環(huán)冗余碼 crccrc 場(chǎng)場(chǎng)crc 場(chǎng)包括 crc 序列(crc sequence) ,其后是 crc 界定符(crc delimiter) ,如圖 2-4 所示。圖 2-4 循環(huán)冗余碼 crc 場(chǎng)crc 序列由循環(huán)冗余碼求得的幀檢查序列組成,最適用于位數(shù)低于 127 的幀。為進(jìn)

38、行 crc 計(jì)算,被除的多項(xiàng)式系數(shù)由無填充的位流給定。組成這些位流的成分是:幀起始、仲裁場(chǎng)、控制場(chǎng)、數(shù)據(jù)場(chǎng)(假如有的話),而 15 個(gè)最低位的系數(shù)是 0。將此多項(xiàng)式被:x15+x14+x10+x8+x7+x4+x3+1多項(xiàng)式發(fā)生器除(其系數(shù)以 2 為模) ,所得的余數(shù)就是發(fā)送到總線上的 crc 序列。crc 序列之后是 crc 界定符,它包含一個(gè)單獨(dú)的 “隱性”位。6.6.應(yīng)答場(chǎng)(應(yīng)答場(chǎng)(ackack fieldfield)應(yīng)答場(chǎng)長度為 2 個(gè)位,包含 ack 間隙和 ack 界定符,如圖 2-5 所示。在 ack場(chǎng),發(fā)送節(jié)點(diǎn)發(fā)送兩個(gè)“隱性”位。當(dāng)接收器收到匹配 crc 序列的報(bào)文,接收器就會(huì)

39、在 ack 間隙期間向發(fā)送器發(fā)送一 “顯性”位以示應(yīng)答。ack 界定符是應(yīng)答場(chǎng)的第二個(gè)位,為“隱性”位。因此,ack 間隙被兩個(gè)“隱性”的位所包圍,也就是 crc界定符和 ack 界定符。圖 2-5 應(yīng)答場(chǎng)(7 7)幀結(jié)尾)幀結(jié)尾每一個(gè)數(shù)據(jù)幀和遠(yuǎn)程幀均由一標(biāo)志序列界定。這個(gè)標(biāo)志序列由 7 個(gè)“隱性”位組成?;?can 總線的監(jiān)控系統(tǒng)是多個(gè)并列的管理監(jiān)控單元,每個(gè)監(jiān)測(cè)單元之間的數(shù)據(jù)傳輸。計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書10第第 3 3 章章 硬件設(shè)計(jì)硬件設(shè)計(jì)3.1 系統(tǒng)硬件設(shè)計(jì)方案系統(tǒng)硬件設(shè)計(jì)方案在本設(shè)計(jì)中,我們將 can 總線作為通信方式,通過將各個(gè)節(jié)點(diǎn)串聯(lián),因?yàn)?can 總線通信距離很遠(yuǎn),

40、所以每個(gè)節(jié)點(diǎn)可以放在庫房的不同地方,這樣就可以采集到不一樣的溫度數(shù)據(jù)。從機(jī)主要采用單片機(jī) stc89c52rc 控制器,sja1000 和 82c250 分別為can 控制器和 can 收發(fā)器,用于采集溫濕度的外部傳感器采用數(shù)字式溫度傳感器ds18b20 濕度傳感器 hs1101。而主機(jī)由 mcp2515 和 tja1050 組成,而單片機(jī)控制報(bào)警及顯示模塊。can總線82c250sja1000stc89c52rc溫濕度傳感器空調(diào)機(jī)除濕機(jī)tja1050mcp2515stc89c52rc數(shù)碼管蜂鳴器圖 3-1 本設(shè)計(jì)的分布式監(jiān)控系統(tǒng)總體結(jié)構(gòu)本系統(tǒng)在設(shè)計(jì)時(shí),為了利于系統(tǒng)的推廣 ,充分采用簡(jiǎn)化的方法

41、,以盡量減少對(duì)操作人員專用知識(shí)的要求,便于進(jìn)行維修。另外,本系統(tǒng)的所有環(huán)節(jié)都應(yīng)該有可靠性的思想,要選用可靠性高的元器件。最后還要降低系統(tǒng)的成本,提高系統(tǒng)的性價(jià)比。3.1.13.1.1 控制模塊(控制模塊(stc89c52rcstc89c52rc)控制器采用 stc89c52rc,它的封裝方式采用塑料雙列直插式封裝,由 stc 公司研發(fā)制造,具有性能強(qiáng)大、能耗小等優(yōu)點(diǎn),內(nèi)置的 flash 存儲(chǔ)器大小為 8k。在同樣擁有51 內(nèi)核的單片機(jī)里,stc89c52rc 是應(yīng)用最為普遍的一種,與常見 51 板相比較,stc89c52 改進(jìn)了許多原來沒有的性能。 stc89c52rc 處理器位數(shù)為 8 位,

42、且內(nèi)置 flash存儲(chǔ)器,因此,它可以更方便更簡(jiǎn)單的解決很多傳統(tǒng)單片機(jī)無法解決的問題。stc89c52rc 主要功能包含 32 位引腳,看門狗電路,復(fù)位電路,且內(nèi)置 8k 內(nèi)存,512b 運(yùn)存,另外還包含 3 個(gè) 16 位定時(shí)器/計(jì)數(shù)器,4 個(gè)外部中斷,一個(gè) 7 向量 4 級(jí)中斷結(jié)構(gòu)(兼容傳統(tǒng) 51 的 5 向量 2 級(jí)中斷結(jié)構(gòu)),stc89c52rc 單片機(jī)工作模式是全雙工模式。另一大優(yōu)點(diǎn)是 stc89c52rc 單片機(jī)系統(tǒng)頻率可最低至 0hz,有兩種省電模式。在計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書11單片機(jī)閑置狀態(tài)時(shí),處理器不再運(yùn)行,但是可以保持運(yùn)存、計(jì)數(shù)、通信、中斷等部件運(yùn)行。當(dāng)單片機(jī)進(jìn)入掉

43、電保護(hù)時(shí),運(yùn)存的數(shù)據(jù)被記錄下來,而晶振則停止運(yùn)行,在系統(tǒng)被復(fù)位或下一次中斷之前,整個(gè)系統(tǒng)都被終止運(yùn)行。示意圖如圖 3-2。stc89c52rc圖 3-2 stc89c52rc 的引腳圖stc89c52rc 的引腳功能有:(1)主電源引腳vss第 20 腳,電路接地電平。vcc第 40 腳,一般運(yùn)行時(shí)都是+5v 的電壓。(2)時(shí)鐘源第 19 腳, 作為中反相器的輸入端,正常情況下與xtal1stc89c52rcxtal1晶振的一個(gè)引腳相連。特殊情況下,如果采用外部信號(hào)時(shí),那么這個(gè)引腳接地。第 18 腳,作為中反相器的輸出端。正常情況下與晶xtal2stc89c52rcxtal2振的另一個(gè)引腳相連

44、。特殊情況下,如果使用外部源,就與信號(hào)源相連,作為xtal2外部信號(hào)的輸入端使用。(3)控制、復(fù)用和選通第 30 腳,該引腳是地址鎖存允許信號(hào)和編程脈沖輸入端信號(hào)。progale/rst/vpd第 9 腳,rst/vpd 是復(fù)位信號(hào) reset 的輸入端。一般情況下,滿足rst/vpd 上連續(xù)施加兩個(gè)系統(tǒng)周期的復(fù)位信息,系統(tǒng)就進(jìn)入復(fù)位狀態(tài)。在電源信號(hào)無電時(shí),rst/vpd 就連通備用電,從而確保系統(tǒng)信息無損失。第 29 腳,外部 rom 訪問選通信號(hào)。psen(4)多功能 i/o 端口p0 口第 3239 腳,8 位真正的雙向數(shù)據(jù) i/o 口。p1 口第 18 腳,此端口是具 8 位準(zhǔn)雙向的

45、i/o 端口并且含有上拉電阻。p2 口第 2128 腳,與 p1 口一個(gè)功能類似,它是 8 位的雙向 i/o 口,并且含有上拉電阻。在兩種情況下 p2 口可作為高 8 位的地址總線,一種情況是單片機(jī)對(duì)存儲(chǔ)計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書12器訪問時(shí),另一種情況是當(dāng)對(duì)片內(nèi)的程序存儲(chǔ)器( eprom 型)程序編程及校驗(yàn)時(shí)使用。p3 口第 1017 腳,與 p1 端口和 p2 端口一樣,是 8 位的準(zhǔn)雙向 i/o 口。但是與 p1、p2 不同的是,它還提供特殊的第二功能。而且每一個(gè)引腳都可以單獨(dú)選擇任一功能使用。第二功能表的具體含義如表 3-1:表 3-1 p3 口的第二功能表端口引腳第二功能p3.

46、1rxd(串行通訊輸入口)p3.2txd(串行通訊輸出口)p3.3(外中斷 0)0intp3.4(外中斷 1)1intp3.5t0(定時(shí)/計(jì)數(shù)器 0)p3.6t1(定時(shí)/計(jì)數(shù)器 1)p3.7(外部數(shù)據(jù)存儲(chǔ)器寫選通)wrp3.8(外部數(shù)據(jù)存儲(chǔ)器讀選通)rd3.2 從機(jī)的硬件設(shè)計(jì)從機(jī)的硬件設(shè)計(jì)如圖 3-3 所示為 can 總線系統(tǒng)智能節(jié)點(diǎn)硬件電路原理圖。從圖中可以看出,電路主要由四部分所構(gòu)成:節(jié)點(diǎn)微控制器 stc89c52rc、獨(dú)立 can 通信控制器sja1000、高速光電耦合器 6n137 和 can 總線收發(fā)器 82c250。微處理器stc89c52rc 負(fù)責(zé) sja1000 的初始化,通過

47、控制 sja1000 實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送等通信任務(wù)。sja1000 的 ad0ad7 連接到 stc89c52rc 的 p0 口,cs連接到 stc89c52rc的 p2.0,p2.0 為 0 的 cpu 片外存貯器地址可選中 sja1000,cpu 通過這些地址可對(duì)sja1000 執(zhí)行相應(yīng)的讀寫操作。sja1000 的rd、wr、ale 分別與 stc89c52rc 的對(duì)應(yīng)引腳相連,接 stc89c52rc 的int0。stc89c52rc 也可通過中斷方式訪問sja1000。 為了增強(qiáng) can 總線節(jié)點(diǎn)的抗干擾能力, sja1000 的 tx0 和 rx0 并不是直接與82c250 的

48、txd 和 rxd 相連,而是通過高速光耦 6n137 后與 82c250 相連,這樣就很好的實(shí)現(xiàn)了總線上各 can 節(jié)點(diǎn)間的電氣隔離。不過應(yīng)該特別說明的一點(diǎn)是:光耦部計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書13分電路所采用的兩個(gè)電源 vcc和 vdd必須完全隔離。否則采用光耦也就失去了意義。電源的完全隔離可采用小功率電源隔離模塊或帶多 5v 隔離輸出的開關(guān)電源模塊實(shí)現(xiàn),這些部分雖然增加了節(jié)點(diǎn)的復(fù)雜,但是卻提高了節(jié)點(diǎn)的穩(wěn)定性和安全性。stc89c52rcsja1000p0p7ad0ad7csrdwraleintp2.0rdwraleint0tx0rx0in outtx0rx0inoutcan總線can

49、hcanl溫度傳感器濕度傳感器p3.6p3.56n137光耦82c250收發(fā)器圖 3-3 sja1000 與 c51 控制發(fā)送電路3.2.13.2.1 cancan 控制器(控制器(sja1000sja1000)sja1000 是一種獨(dú)立 can 控制器,具有兩種工作方式: basiccan 方式(pca82c200 兼容方式) 、pelican 方式(擴(kuò)展特性方式) ,工作方式通過時(shí)鐘分頻寄存器中的 can 方式位來選擇,上電復(fù)位默認(rèn)工作方式是 basiccan 方式。basiccan 和 pelican 方式的區(qū)別如下:在 pelican 方式下 sja1000 有一個(gè)重新設(shè)計(jì)的含很多新功

50、能的寄存器組,其支持 can2.0b 協(xié)議規(guī)定的所有功能(29 位的標(biāo)識(shí)符)。引腳功能如表 3-2。sja1000 可分為以下幾個(gè)模塊:接口管理邏輯(iml):解釋來自單片機(jī)的命令,控制 can 寄存器的尋址,向單片機(jī)提供中斷和狀態(tài)狀態(tài)信息。發(fā)送緩沖器:是單片機(jī)與位流處理器之間的接口,用于存儲(chǔ)一個(gè)完整的擴(kuò)展或標(biāo)準(zhǔn)的報(bào)文。最長為 13b(pelican 方式) 。由單片機(jī)寫入,位流處理器讀出。接收緩沖器:是單片機(jī)與驗(yàn)收濾波器之間的接口,用于存儲(chǔ)所收到的 can 總線上的報(bào)文,接收緩存器(13b)作為 rxfifo(64b)的一個(gè)窗口,可被單片機(jī)訪問,單片機(jī)在 rxfifo 的支持下,可以在處理報(bào)

51、文的同時(shí)接收其他報(bào)文。驗(yàn)收濾波器:把它其中的數(shù)據(jù)和接收的識(shí)別碼相比較以決定是否接收?qǐng)?bào)文。在純粹的接收測(cè)試中,所有的報(bào)文都保存在 rxfifo 中。位流處理器(bsp):是一個(gè)在發(fā)送緩沖器、 rxfifo 和 can 總線之間挖掘數(shù)據(jù)流的序列發(fā)生器,它還執(zhí)行錯(cuò)誤檢測(cè)、仲裁、總線填充和錯(cuò)誤處理。位時(shí)序邏輯(btl):監(jiān)視 can 總線,并處理與總線有關(guān)的位定時(shí)。在報(bào)文開計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書14始,由隱性到顯性的變換同步 can 總線的位流(硬同步) ,接收?qǐng)?bào)文時(shí)再次同步下一次傳送(再同步) 。btl 還提供了可編程的時(shí)間段來補(bǔ)償傳播延遲時(shí)間、(相位轉(zhuǎn)換例如由于振蕩漂移所引起的)以及定義

52、采樣點(diǎn)和每一位的采樣次數(shù)。 錯(cuò)誤管理邏輯 eml:負(fù)責(zé)傳送層模塊的錯(cuò)誤管制,它接收 bsp 的出錯(cuò)報(bào)告,并將錯(cuò)誤統(tǒng)計(jì)數(shù)字通知 bsp 和 iml。表3-2 sja1000引腳功能符 號(hào)引 腳功 能ad0ad72,1,2823地址/數(shù)據(jù)復(fù)用總線ale3ale 信號(hào)(intel 方式)或 as 信號(hào)(motorola 方式)/cs4片選輸入,低電平允許訪問 sja1000/rd5微控制器的讀信號(hào)(intel 方式)或 e 信號(hào)(motorola 方式)/wr6微控制器的寫信號(hào)(intel 方式)或讀寫信號(hào)(motorola 方式)clkout7sja1000 產(chǎn)生的,提供給微控制器的時(shí)鐘輸出信號(hào),

53、此信號(hào)由內(nèi)部振蕩器經(jīng)可編程分頻器得到,可編程禁止該引腳vss18邏輯電路地xtal19振蕩放大器輸入,外部振蕩放大器信號(hào)經(jīng)此引腳輸入,可接單片機(jī)的 x1xtal210振蕩放大器輸出,使用外部振蕩信號(hào)時(shí)此引腳必須開路mode11方式選擇輸入端:1=intel 方式,0=motorola 方式vdd312輸出驅(qū)動(dòng)器 5v 電源tx013由輸出驅(qū)動(dòng)器 0 至物理總線的輸出端tx114由輸出驅(qū)動(dòng)器 1 至物理總線的輸出端vss315輸出驅(qū)動(dòng)器地/int16中斷信號(hào)輸出端,當(dāng) ir 中有一位被置 1 時(shí),該引腳被激活,讀 ir 時(shí),ir 被清 0/rst17復(fù)位輸入端,用于重新啟動(dòng) can 接口(低電平

54、有效)vdd218輸入比較器 5v 電源rx0,rx11920由物理總線至 sja1000 輸入比較器的輸入端,顯性電平將喚醒處于睡眠方式的 sja1000。當(dāng) rx0 高于 rx1 時(shí)讀出為隱性電平,否則為顯性電平vss221輸入比較器地vdd122邏輯電路 5v 電源sja1000 對(duì)單片機(jī)而言,就是一種基于外部數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址的 i/o 器件,單片機(jī)可以像訪問外部數(shù)據(jù)存儲(chǔ)器一樣訪問 sja1000。sja1000 的內(nèi)部寄存器地址區(qū)包括控制段和信息緩沖區(qū)。 sja1000 有兩種工作模式:復(fù)位模式和工作模式??刂贫卧趶?fù)位模式時(shí)用來配置通訊參數(shù)的,一旦進(jìn)入工作模式,控制段中的存放通訊參數(shù)

55、的驗(yàn)收代碼、驗(yàn)收屏蔽、總線定時(shí)寄存器 0 和 1 以及輸出控制就不能改變了,只有重新進(jìn)入復(fù)位模式才可以訪問這些寄存器。當(dāng)硬件復(fù)位或控制器掉線時(shí),會(huì)自動(dòng)進(jìn)入復(fù)位模式。復(fù)位模式也可通過置位控制寄存器的復(fù)位請(qǐng)求位激活的。 sja1000 一旦檢測(cè)到有計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書15復(fù)位請(qǐng)求后將中止當(dāng)前接收 /發(fā)送的信息而進(jìn)入復(fù)位模式。一旦向控制寄存器的復(fù)位值傳送了 “1-0”的下降沿 can 控制器將返回工作模式。此時(shí)發(fā)送和接收的信息會(huì)被寫入發(fā)送緩沖器和接收緩沖器中。單片機(jī)通過讀狀態(tài)、中斷、接收緩沖器來獲取相關(guān)信息,通過寫發(fā)送緩沖器和命令、控制寄存器來控制can 總線通信和報(bào)文的收/發(fā)。發(fā)送信息

56、時(shí),信息并行寫入接收緩沖器但不產(chǎn)生接收中斷且接收緩沖區(qū)是不被鎖定的。所以,即使接收緩沖器是空的,最近一次發(fā)送的信息也可從接收緩沖器讀出,直到它被下一條發(fā)送或接收的信息取代。表3-3 sja1000內(nèi)部寄存器的配置值寄存器位符號(hào)名稱硬件復(fù)位軟件復(fù)位cr.7 cr.5-保留00cr.4oie1-超載中斷使能xxcr.3eie1-錯(cuò)誤中斷使能xxcr.2tie1-發(fā)送中斷使能xxcr.1rie1-接收中斷使能xx控制cr.0rr1-復(fù)位請(qǐng)求1(復(fù)位模式)1(復(fù)位模式)cmr.7 cmr.5-保留cmr.4gts1-睡眠,0-正常工作cmr.3cdo1-清除數(shù)據(jù)溢出cmr.2rrb1-釋放接收緩沖器c

57、mr.1at1-中止傳送命令cmr.0tr1-發(fā)送請(qǐng)求sr.7bs1-退出總線活動(dòng)狀態(tài)0(總線開啟)xsr.6es出錯(cuò)狀態(tài)0(ok)xsr.5ts1-正在發(fā)送0(空閑)0(空閑)sr.4rs1-正在接收0(空閑0(空閑sr.3tcs1-發(fā)送完畢狀態(tài)1(完畢)xsr.2tbs1-釋放發(fā)送緩沖器1(釋放)1(釋放)sr.1dos1-數(shù)據(jù)溢出狀態(tài)0(無溢出)0(無溢出)狀態(tài)sr.0rbs1-rxfifo有報(bào)文0(空)0(空)ir.7 ir.5-保留11ir.4wui1-喚醒中斷0(復(fù)位)0(復(fù)位)ir.3doi1-數(shù)據(jù)溢出中斷0(復(fù)位)0(復(fù)位)ir.2ei1-錯(cuò)誤中斷0(復(fù)位)ir.1ti1-發(fā)送

58、中斷0(復(fù)位)0(復(fù)位)中斷ir.0ri1-接收中斷0(復(fù)位)0(復(fù)位)btr0.7sjw.1x同步跳轉(zhuǎn)寬度1xxbtr0.6sjw.0同步跳轉(zhuǎn)寬度0xx總線定時(shí)0btr0.5btr0.0brp0.5brp0.0波特率預(yù)設(shè)值50xxbtr1.7sam1-采樣xxbtr1.6btr1.4tseg2.2tseg2.0時(shí)間段2.22.0xx總線定時(shí)1btr0.3btr0.0tseg1.3tseg1.0時(shí)間段1.31.0xx計(jì)算機(jī)信息工程學(xué)院畢業(yè)設(shè)計(jì)說明書16oc.7octp1輸出控制晶體管p1xxoc.6octn1輸出控制晶體管n1xxoc.5ocpol1輸出控制極性 1x1oc.4octp0輸出控

59、制晶體管p0xxoc.3octn0輸出控制晶體管n0xxoc.2ocpol0輸出控制極性 0xxoc.1ocmode1輸出控制模式 1xx輸出控制oc.0ocmode0輸出控制模式 0xx3.2.23.2.2 cancan 收發(fā)器(收發(fā)器(82c25082c250)can 總線收發(fā)器提供了 can 控制器與物理總線之間的接口,是影響系統(tǒng)網(wǎng)絡(luò)性能的關(guān)鍵因素之一。82c250can 總線收器最初是為汽車中的高速應(yīng)用(達(dá) 1mbps)而設(shè)計(jì)的,器件對(duì)總線提供差動(dòng)發(fā)送能力,對(duì) can 控制器提供差動(dòng)接收能力,完全符合“iso11898”標(biāo)準(zhǔn)。器件內(nèi)部具有限流電路,可防止發(fā)送輸出級(jí)對(duì)電源、地或負(fù)載短路。

60、在節(jié)點(diǎn)溫度超過 160時(shí),兩個(gè)發(fā)送器輸出端的極限電流將減少。由于發(fā)送器是功耗的主要部分,因此芯片溫度會(huì)迅速降低,ic 的其他所有部分將繼續(xù)工作。雙線差分驅(qū)動(dòng)有助于抑制汽車等惡劣電器環(huán)境下的瞬變干擾。引腳 rs 用于選定 82c250 的三種工作模式:高速工作模式:把 rs引腳接地可選擇高速工作模式,最高可達(dá) 1mbps,此時(shí)發(fā)送器輸出級(jí)晶體管被盡可能快地啟動(dòng)和關(guān)閉, 內(nèi)部沒有電壓輸出上升斜率和下降斜率的限制。但在該方式下,最大速率的限制和電纜的長度有關(guān)。 總線應(yīng)采用屏蔽電纜以避免射頻干擾問題的出現(xiàn)。 待機(jī)模式:rs引腳接高電平可選擇待機(jī)工作模式,此時(shí)發(fā)送器被關(guān)閉,接收器處于低電流工作,可以對(duì)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論