基于C8051F060單片機(jī)的數(shù)字傳感器系統(tǒng)硬件設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
隨著科學(xué)技術(shù)的發(fā)展,智能控制技術(shù)開始在電子測試領(lǐng)域廣泛地應(yīng)用。在現(xiàn)代工業(yè)測控系統(tǒng)中,人們往往將各種傳感器掛接在現(xiàn)場總線上,組成傳感器網(wǎng)絡(luò)系統(tǒng),各種傳感器設(shè)備分別作為其中的一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),通過現(xiàn)場總線實(shí)現(xiàn)節(jié)點(diǎn)與控制中心之間以及節(jié)點(diǎn)與節(jié)點(diǎn)之間的信息傳輸。通常,人們選用CAN總線將大部分傳感器連接起來,因此,傳感器也需相應(yīng)地智能化并統(tǒng)一數(shù)據(jù)接口。本文基于C8051F060單片機(jī)設(shè)計(jì)一款帶有CAN通信接口的溫濕壓數(shù)字傳感器系統(tǒng),該系統(tǒng)能對(duì)壓力傳感器輸出的壓力模擬信號(hào)進(jìn)行信號(hào)調(diào)理和模數(shù)轉(zhuǎn)換;能處理并傳輸溫度、濕度和壓力數(shù)據(jù),搭建CAN總線傳感器網(wǎng)絡(luò)以實(shí)現(xiàn)數(shù)據(jù)的采集和通信。
數(shù)字傳感器系統(tǒng)總體方案設(shè)計(jì)
根據(jù)數(shù)字傳感器系統(tǒng)的任務(wù)和功能,系統(tǒng)工作原理如圖1所示。首先傳感器采集壓力信號(hào),并對(duì)壓力信號(hào)進(jìn)行跟隨濾波處理,然后采集溫濕度數(shù)據(jù),并進(jìn)行數(shù)據(jù)的編幀處理及數(shù)據(jù)的通信。經(jīng)過傳感器采集和預(yù)處理之后的數(shù)據(jù)按照指定的CAN應(yīng)用協(xié)議,通過CAN數(shù)據(jù)通信接口傳輸?shù)紺AN總線,數(shù)據(jù)由相應(yīng)的節(jié)點(diǎn)采集并存儲(chǔ),或者直接傳送給上位機(jī),通過上位機(jī)軟件實(shí)時(shí)監(jiān)測各個(gè)節(jié)點(diǎn)的數(shù)據(jù)。
圖1 數(shù)字傳感器系統(tǒng)工作原理圖
數(shù)字傳感器系統(tǒng)主要由控制中心模塊、壓力采集模塊、溫濕度采集模塊、CAN總線模塊及電源模塊等部分組成??刂浦行哪K選用C8051F060單片機(jī);為了實(shí)現(xiàn)溫濕壓數(shù)據(jù)的采集,數(shù)據(jù)采集模塊選用SHT15、MPX4200A、TLV2402和MAX291等器件;為了完成組建通信網(wǎng)絡(luò)、傳輸數(shù)據(jù)和實(shí)現(xiàn)總線冗余,CAN總線模塊選用高速光耦、CD4052、TJA1050等器件。
數(shù)字傳感器系統(tǒng)硬件設(shè)計(jì)
控制中心模塊設(shè)計(jì)
控制中心模塊選用C8051F060單片機(jī),它是美國Cygnal公司推出的完全集成混合信號(hào)片上系統(tǒng)型MCU。C8051F060單片機(jī)采用與8051兼容的專利內(nèi)核CIP-51,速度高達(dá)25MIPS,并具有59個(gè)數(shù)字I/O引腳、5個(gè)16位通用定時(shí)器、6個(gè)帶有捕捉/比較模塊的可編程定時(shí)器/計(jì)數(shù)器陣列。同時(shí),片內(nèi)還集成了兩個(gè)16位、1Msps的ADC和2個(gè)12位DAC、3個(gè)電壓比較器、看門狗定時(shí)器,VDD監(jiān)視器和溫度傳感器。該芯片上集成有64KB的FLASH和4352B內(nèi)部RAM,以及硬件實(shí)現(xiàn)的SPI、SMBus/I2C和2個(gè)UART串行接口。最重要是,C8051F060單片機(jī)還集成了CAN總線控制器,這使得采用CAN總線開發(fā)C8051F060單片機(jī)具有抗干擾性強(qiáng)、開發(fā)費(fèi)用低廉、可適用于工業(yè)現(xiàn)場應(yīng)用等特點(diǎn)。
控制中心模塊的工作原理如圖2所示,C8051F060單片機(jī)作為控制中心模塊的核心器件,主要負(fù)責(zé)控制SHT15采集溫濕度數(shù)據(jù)以及采集和轉(zhuǎn)換經(jīng)過跟隨濾波之后的壓力數(shù)據(jù),然后對(duì)這些信號(hào)進(jìn)行數(shù)據(jù)處理(濾波處理、數(shù)據(jù)編幀、數(shù)據(jù)緩存等);同時(shí),由于C8051F060單片機(jī)自身具有CAN通信接口,因此它還可以實(shí)現(xiàn)數(shù)據(jù)傳輸。
依據(jù)圖2設(shè)計(jì)的控制中心模塊具體電路如圖3所示。C8051F060單片機(jī)正常運(yùn)行之前,必須初始化應(yīng)用端口和時(shí)鐘,C8051F060單片機(jī)的端口引腳都能承受3V~5V電壓值,而且P0~P3管腳的模式狀態(tài)都是可以根據(jù)需求配置的;為了實(shí)現(xiàn)系統(tǒng)時(shí)鐘,本設(shè)計(jì)采用外部晶體振蕩驅(qū)動(dòng)電路驅(qū)動(dòng)外部晶振。
圖2 控制中心模塊工作原理圖
圖3 控制中心模塊電路圖
壓力采集模塊設(shè)計(jì)
根據(jù)數(shù)字傳感器系統(tǒng)的要求,壓力采集模塊主要由模擬傳感器、電壓跟隨電路及低通濾波電路等組成。
模擬傳感器選用MPX4200A,用于獲取被檢測信息以及負(fù)責(zé)模數(shù)轉(zhuǎn)換。為了保證所采集信號(hào)的精度,壓力信號(hào)需經(jīng)過跟隨濾波模塊的處理。濾波電路用于對(duì)傳感器檢測到的壓力信號(hào)進(jìn)行的跟隨和模擬濾波處理。模擬濾波能大大提高傳感器采集精度,本設(shè)計(jì)選用開關(guān)電容濾波器MAX291作為對(duì)傳感器壓力信號(hào)進(jìn)行模擬濾波的核心元件。MAX291是MAXIM公司生產(chǎn)的八階巴特沃斯型開關(guān)電容式有源低通濾波器,它的3dB截止頻率可以在0.1kHz~25kHz之間選擇。開關(guān)電容濾波器需要由一個(gè)時(shí)鐘來驅(qū)動(dòng)電路工作,該時(shí)鐘的頻率應(yīng)為3dB截止頻率的100倍,可以采用外時(shí)鐘或內(nèi)時(shí)鐘2種方式。壓力采集模塊的跟隨濾波原理如圖4所示,模塊主要包含MPX4200A組成的壓力采集敏感頭、TLV2402組成的電壓信號(hào)跟隨電路和MAX291組成的低通濾波電路。其工作過程是:MPX4200A將采集到的壓力信號(hào)轉(zhuǎn)換成電信號(hào)之后傳輸給TLV2402,TLV2402完成信號(hào)跟隨之后將信號(hào)傳送給MAX291進(jìn)行模擬濾波處理,之后在C8051F060單片機(jī)的控制下,由單片機(jī)內(nèi)嵌的ADC1(16位A/D轉(zhuǎn)換模塊)采集轉(zhuǎn)換壓力信號(hào),最后將采集轉(zhuǎn)換的數(shù)據(jù)經(jīng)編幀處理后通過CAN通信模塊傳遞給數(shù)據(jù)記錄器。本設(shè)計(jì)之所以選用C8051F060單片機(jī)內(nèi)嵌的ADC1采集轉(zhuǎn)換壓力信號(hào),是為了滿足系統(tǒng)微小化設(shè)計(jì)的需求,C8051F060單片機(jī)內(nèi)部嵌有ADC1和ADC0兩個(gè)16位AD轉(zhuǎn)換模塊,它們的轉(zhuǎn)換速度最高可達(dá)1Msps。
圖4 壓力采集模塊跟隨濾波原理圖
溫濕度采集模塊設(shè)計(jì)
溫濕度采集模塊結(jié)構(gòu)組成如圖5所示,在該模塊的電路中,C8051F060單片機(jī)I/O口與溫濕度傳感器SHT15直接連接,C8051F060單片機(jī)引腳P2.1端口與SHT15的時(shí)鐘管腳SCK相連以作為時(shí)鐘線,C8051F060單片機(jī)引腳P2.0端口與SHT15的數(shù)據(jù)管腳DATA相連以作為數(shù)據(jù)線,這種連接方式具有接口方便、控制簡單、通信速率高等優(yōu)點(diǎn)。溫濕度采集模塊工作原理是:C8051F060單片機(jī)通過數(shù)據(jù)線和時(shí)鐘線向SHT15發(fā)送控制命令,并且接收SHT15采集、轉(zhuǎn)換的溫濕度數(shù)據(jù),C8051F060單片機(jī)接收到溫濕度數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行簡單編幀等快速處理,最后通過CAN總線接口傳輸給數(shù)據(jù)記錄器(上位機(jī))進(jìn)行數(shù)據(jù)處理與實(shí)時(shí)監(jiān)測。
圖5 溫濕度采集模塊結(jié)構(gòu)組成圖
本設(shè)計(jì)選用溫濕度傳感器SHT15采集溫濕度數(shù)據(jù)。SHT15是瑞士Sensirion公司推出的一款數(shù)字溫濕度傳感器芯片,其主要特點(diǎn)是:①將溫濕度感測、信號(hào)變換、A/D轉(zhuǎn)換和I2C總線接口等功能集成到一個(gè)芯片上;②提供兩線數(shù)字串行接口SCK和DATA,并支持CRC傳輸校驗(yàn);③提供溫度補(bǔ)償和濕度測量值以及高質(zhì)量的露點(diǎn)計(jì)算功能;④測量精度可編程調(diào)節(jié),內(nèi)置A/D轉(zhuǎn)換器;⑤由于采用了CMOSensTM技術(shù),SHT15可浸入水中進(jìn)行測量。SHT15的性能參數(shù)如下:①溫度測量范圍是-40~+123.8℃;②濕度測量范圍是0~100%RH;③溫度測量精度是±0.3℃;④濕度測量精度是±2.0%RH;⑤響應(yīng)時(shí)間是8s。數(shù)字式溫濕度傳感器SHT15是8引腳SMD表面貼片封裝形式,其引腳1接地,引腳4接電源,工作電壓為2.4~5.5VDC,為了達(dá)到SHT15的最高精確度,供電電壓為3.3V適宜;引腳2為數(shù)據(jù)線,引腳3為時(shí)鐘線,引腳5~8為空管腳。SHT15包含1個(gè)用能隙材料制成的溫度敏感元件和1個(gè)電容性聚合體濕度敏感元件,這兩個(gè)敏感元件分別將溫度和濕度轉(zhuǎn)換成電信號(hào),電信號(hào)首先由微弱信號(hào)放大器進(jìn)行放大,然后進(jìn)入1個(gè)14位的A/D轉(zhuǎn)換器,最后經(jīng)由二線串行數(shù)字接口輸出數(shù)字信號(hào)。
CAN總線模塊設(shè)計(jì)
CAN總線模塊是數(shù)字傳感器系統(tǒng)中用來實(shí)現(xiàn)CAN總線協(xié)議、完成報(bào)文收發(fā)等功能的元器件的集合,該模塊由C8051F060單片機(jī)、高速光耦HCPL0600以及CAN總線驅(qū)動(dòng)TJA1050等組成。為了保護(hù)CAN控制器,提高抗干擾能力,總線驅(qū)動(dòng)與CAN總線的接口部分采用一定的安全和抗干擾措施:TJA1050的CANL和CANH引腳各自通過一個(gè)5 的電阻與CAN總線相連,電阻可以使TJA1050免受過流的沖擊;CANL和CANH與地之間各自都并聯(lián)了一個(gè)30pF的小電容,能夠盡量濾除掉總線上的高頻干擾,以及提高總線的防電磁輻射的能力。
為了保證通信網(wǎng)絡(luò)的可靠性,CAN總線模塊采用網(wǎng)絡(luò)冗余方法對(duì)總線及其驅(qū)動(dòng)進(jìn)行可控的總線冗余設(shè)計(jì),CAN總線模塊冗余設(shè)計(jì)原理如圖6所示。該模塊CAN通信接口由一個(gè)CAN控制器、兩個(gè)CAN總線驅(qū)動(dòng)和兩對(duì)差分線組成。我們可以通過控制模擬多路開關(guān)CD4052在兩個(gè)總線之間進(jìn)行切換,A1、A0為CD4052的控制信號(hào),由節(jié)點(diǎn)的主控制器控制。當(dāng)A1A0=01時(shí),X通道選通X3、Y通道選通Y3,此時(shí)總線驅(qū)動(dòng)U4工作,數(shù)據(jù)通過總線1傳輸;當(dāng)A1A0=10時(shí),X通道選通X2、Y通道選通Y2,此時(shí)總線驅(qū)動(dòng)U3工作,數(shù)據(jù)通過總線2傳輸。CAN網(wǎng)絡(luò)正常工作時(shí),兩條總線互為備用(一條總線工作,另外一條處于備用狀態(tài))。為了檢測各個(gè)節(jié)點(diǎn)的工作狀態(tài),CAN網(wǎng)絡(luò)會(huì)以固定的頻率發(fā)送檢測命令,該檢測命令通常由CAN網(wǎng)絡(luò)上的一個(gè)固定的主節(jié)點(diǎn)來發(fā)送的,主節(jié)點(diǎn)發(fā)送檢測命令后,根據(jù)預(yù)定的應(yīng)答情況判斷是否有節(jié)點(diǎn)損壞以及是哪個(gè)節(jié)點(diǎn)損壞;其他節(jié)點(diǎn)稱為副節(jié)點(diǎn),副節(jié)點(diǎn)接收主節(jié)點(diǎn)發(fā)送的檢測命令,若接收到檢測命令,則及時(shí)返回應(yīng)答信息給主節(jié)點(diǎn),若超過了預(yù)定時(shí)間主節(jié)點(diǎn)還未接收到檢測信息,則由控制器控制切換總線并報(bào)警。
圖6 CAN總線模塊冗余設(shè)計(jì)原理圖
電源模塊設(shè)計(jì)
根據(jù)現(xiàn)場情況,CAN網(wǎng)絡(luò)提供24V電壓給傳感器,而傳感器需要5V或3.3V的電源供電,因此,需要電源模塊將24V電壓轉(zhuǎn)換為5V和3.3V。本設(shè)計(jì)選用TPS5410將24V電壓轉(zhuǎn)換為5V,選用MAX1658將5V電壓轉(zhuǎn)換為3.3V;另外,為了給光耦和CAN驅(qū)動(dòng)供電,CAN通信電路需要一個(gè)與前面電源不共地的5V電源,在此選用DCR010505來實(shí)現(xiàn),定義該隔離出來的5V為W5V,它的地為W5VGND。
TPS5410電壓轉(zhuǎn)換電路如圖7所示。TPS5410是TI公司SWIFT系列的一款開關(guān)電源芯片,具有5.5V~36V的輸入電壓范圍;開關(guān)轉(zhuǎn)換頻率為500KHz;轉(zhuǎn)換效率高達(dá)95%;具有過流、過壓和熱過載保護(hù)功能;能夠提供最大為1A的電流;外圍電路簡單。
圖7 TPS5410電壓轉(zhuǎn)換電路圖
MAX1658電壓轉(zhuǎn)換電路如圖8所示。MAX1658是MAXIM公司的一款5V轉(zhuǎn)3.3V的開關(guān)電源芯片,轉(zhuǎn)換效率高達(dá)95%;具有2.7V~16.5V的輸入電壓范圍;具有過流、熱過載保護(hù)和電源反接保護(hù)功能;能夠提供最大為350mA的電流;外圍電路簡單。
圖8 MAX1658電壓轉(zhuǎn)換電路圖
DCR010505隔離5V電路如圖9所示。DCR010505是TI公司的一款隔離型開關(guān)電源芯片,能夠?qū)?V電壓隔離為另外一個(gè)不共地的5V;開關(guān)轉(zhuǎn)換頻率為400KHz;轉(zhuǎn)換效率為80%;具有1000Vrms的隔離能力和過熱保護(hù)能力;提供最大200mA的電流;最大輸入電壓為7V。
圖9 DCR010505隔離5V電路圖
結(jié)束語
隨著電子技術(shù)、傳感器技術(shù)及現(xiàn)場網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,帶有CAN通信接口的數(shù)字化傳感器也得到了迅速的發(fā)展。本文基于C8051F060單片機(jī)設(shè)計(jì)了一款帶有CAN通信接口的溫濕壓數(shù)字傳感器系統(tǒng)。首先介紹了數(shù)字傳感器系統(tǒng)總體設(shè)計(jì)方案,然后詳細(xì)闡述了系統(tǒng)的硬件設(shè)計(jì),包括控制中心模塊、壓力采集模塊、溫濕度采集模塊、CAN總線模塊以及電源模塊設(shè)計(jì)。該數(shù)字傳感器系統(tǒng)性能穩(wěn)定,集成了溫濕度傳感器、壓力傳感器等,帶有CAN通信接口,具有集成化、小型化等特點(diǎn)。