基于單片機(jī)和FPGA的遠(yuǎn)程溫度監(jiān)控系統(tǒng)
單片機(jī)與上位機(jī)的通信電路如圖3所示。8051單片機(jī)本身提供了一組全雙工串行傳輸接口,由TXD引腳來傳送串行數(shù)據(jù)而由RXD引腳來接收數(shù)據(jù),可是其工作邏輯電平皆為TTL電平(0 V,5 V)。所以單片機(jī)與PC之間的數(shù)據(jù)通信必須經(jīng)過RS 232信號(+12 V,-12 V)電平的轉(zhuǎn)換。本系統(tǒng)使用MAX232電平轉(zhuǎn)換芯片,只要加4只電容就能完成接口電平的轉(zhuǎn)換。單片機(jī)的11腳(TXD)接232的10腳,單片機(jī)的10腳(RXD)接232的9腳。與上位機(jī)連接的RS 232-C接口采用DB-9的9芯插頭座,傳輸線采用屏蔽雙絞線。電源部分采用市售的9 V直流穩(wěn)壓電源,經(jīng)7805后濾波穩(wěn)壓得到穩(wěn)定的5 V電源。
2.3.3 基于NiosⅡ嵌入式上位機(jī)
系統(tǒng)主要包括以下幾個部分:包括NiosⅡ軟核CPU、操作系統(tǒng)使用的定時(shí)器、網(wǎng)絡(luò)協(xié)議棧使用的定時(shí)器、CPU同外圍設(shè)備的接口(Avlaon總線);EPCS4用來在上電時(shí)對FPGA進(jìn)行配置;FLASH主要用來存放軟件代碼以及一些需要保存的參數(shù);SRAM用來在系統(tǒng)運(yùn)行時(shí)的代碼和數(shù)據(jù)存儲;網(wǎng)絡(luò)接口芯片采用Smsc公司的LAN91C111芯片作為網(wǎng)絡(luò)接口。該器件是一個以太網(wǎng)控制器,實(shí)現(xiàn)了網(wǎng)絡(luò)7層協(xié)議棧中的傳輸層和MAC層的功能。另外,它具有10/100 Mb/s自適應(yīng)、雙工/半工自適應(yīng)等功能,有很好的網(wǎng)絡(luò)兼容性。采用串口UART和單片機(jī)通信。利用QuartusⅡ中的SOPC Builde構(gòu)建的CPU如圖4所示。
3 監(jiān)控系統(tǒng)的軟件系統(tǒng)設(shè)計(jì)
單片機(jī)控制程序設(shè)計(jì)框圖如圖5和圖6所示。
串口中斷程序功能為接收由上位機(jī)發(fā)送的數(shù)據(jù)采集周期以及開始、停止指令。溫度信號濾波通過軟件實(shí)現(xiàn)。濾波算法采用加權(quán)平均值法,即對最新檢測到的N個溫度信號序列去除最大值和最小值,并取加權(quán)平均運(yùn)算。
4 基于NiosⅡ的Web服務(wù)器的實(shí)現(xiàn)
把構(gòu)建好的CPU及相應(yīng)的模塊進(jìn)行分析引腳分配、綜合后再進(jìn)行編譯,用NiosⅡIDE(集成開發(fā)環(huán)境)通過移植實(shí)時(shí)操作系統(tǒng)μCLinux來實(shí)現(xiàn)嵌入式實(shí)時(shí)多任務(wù)控制系統(tǒng),開發(fā)相應(yīng)的網(wǎng)頁并進(jìn)行服務(wù)器移植和配置。本系統(tǒng)采用μCLinux下的Boa。Boa是一個單線程的HTTP服務(wù)器,它不同于其它傳統(tǒng)的Web服務(wù)器,不為每個連接創(chuàng)建一個進(jìn)程,只有當(dāng)CGI程序運(yùn)行時(shí)才創(chuàng)建一個新的進(jìn)程。通過移植Boa來實(shí)現(xiàn)智能監(jiān)控系統(tǒng)的Web服務(wù)器功能,最后通過編寫CGI程序并結(jié)合Flash動畫實(shí)現(xiàn)了動態(tài)Web交互功能。
5 結(jié)語
采用AT89S51系列單片機(jī)、傳感器DS18B20和NiosⅡ設(shè)計(jì)的遠(yuǎn)程溫度控制系統(tǒng)具有結(jié)構(gòu)新穎、電路簡單、體積小和控制方便等優(yōu)點(diǎn)??梢詮V泛用于電站、學(xué)校、醫(yī)院等相關(guān)重點(diǎn)設(shè)備的溫度遠(yuǎn)程監(jiān)控。也適用于人體無法接近的高溫或危險(xiǎn)場所的溫度監(jiān)控。如果變換傳感器稍加改變也可以成為其他參數(shù)的遠(yuǎn)程監(jiān)控系統(tǒng),如壓力、濕度或瓦斯等。
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號放大器
評論