發布日期:2022-04-27 點擊率:137
1系統硬件電路的設計
1.1系統的功能框圖
系統的主要組成部分包括:溫度傳感器DS18B20、PIC16F877單片機、可編程鍵盤/顯示器接口芯片8279、OCM4X8C液晶顯示器、MODEM、ISD2560語音芯片和信號音檢測模塊CR6230,系統的功能框圖如圖1所示。
系統選用美國Microchip公司生產的價格低廉、性能優良的PIC16F877單片機作為控制主體,充分利用其提供的軟硬件資源,可使控制系統硬件電路設計相對簡潔,提高系統的可靠性。但由于系統中的各種功能模塊較多,每個模塊都需要單片機給出一定數量的控制線、數據線等來完成相應的功能,而單片機的I/O資源有限,所以必須進行I/O擴展。這里是通過由單片機的3個I/O引腳(RC1-RC3)控制譯碼器74LS138從而給出8個選通信號,分別選通幾個74LS373和74LS245來實現對各模塊的控制與通信的。
此外,需要給單片機設計復位電路,這里采用RC復位電路,頻率約為4MHz。
1.2多路溫度采集
針對測量環境、精度和系統主機對監測點傳輸距離的不同要求,以及考慮元件的成本,選擇美國DALLAS半導體公司最新推出的一種數字化單總線器件DS18B20。在硬件上,DS18B20與單片機的連接有兩種方法。一種是將DS18B20的UDD接外部電源,GND接地,其I/O與單片機的I/O線相連;另一種是用寄生電源供電,此時DS18B20的UDD、GND接地,其I/O接單片機I/O。無論是內部寄生電源還是外部供電,DS18B20的I/O口線要接5K見左右的上拉電阻。DS18B20有六條控制命令,如表1所示。
CPUCPU對DS18B20的訪問流程是:先對DS18B20初始化,再進行ROM操作命令,最后才能對存儲器操作和對數據操作。DS18B20每一步操作都要遵循嚴格的工作時序和通信協議。
1.3信息顯示
采用OCM4X8C液晶顯示模塊作為輸出顯示。可顯示漢字及圖形,采用單片機8位并行連接方式,通過給定命令和顯示數據完成不同界面的顯示。當單片機通過譯碼器對連接液晶顯示模塊的雙向鎖存器74LS245使能,并且相關引腳通過單片機傳送適當的電平時,給出一定的指令字。實現顯示的過程是:在傳送命令的狀態下先選擇指令集清屏,然后指定在資料寫入或讀取時游標的移動方向及顯示的移位,開顯示,設定顯示地址,然后進入傳送數據的狀態,根據要顯示的內容從中文字庫中找出相應的16進制代碼并將其依次傳給液晶顯示器(此時要注意每行顯示的字數限制),之后單片機就可以對液晶顯示模塊進行讀寫操作。
1.4撥號設計
采用外置MODEM來實現撥號功能,單片機與MODEM之間采用串行通信,連接方式見圖2。將電話線接入MODEM后,單片機按照RS232通信標準與MODEM相連,這里是通過MAX232芯片來實現TTL電平與RS232電平的轉換,按照MODEM的工作波特率(9600bps)設置后,單片機串口發出相應AT命令可實現對MODEM的控制,同時MO-DEM在執行該命令后會返回一定的信息。返回信息對于判斷MODEM是否正常工作以及電話是否撥通和被接聽都有重要的作用。
選用4選1模擬開關4052芯片完成單片機與MODEM串行通信外和傳感器模塊的MAX485串行通信的控制。當單片機端口C的RC3=1、RC2=0、RC1=1時,譯碼器74LS138的譯碼線Y5有效,使得74LS373有效,因而來自單片機的RD4位鎖存至4052的INH端,此時RD4的低電平來控制4052的選通。因4051的INH端通過反相器連接4052的INH端,所以不被同時選中。
為了實現MODEM與單片機的實時通信,將系統板上用于連接MODEM的D型插口的RST與CTS互聯,DTR與DSR互聯。
1.5語音控制模塊
該部分主要是通過單片機控制語音芯片ISD2560來實現多段語音存儲和播放。通過給定相應段地址和控制信號(錄放音P/R和使能控制CE),ISD2560及其外圍電路即可實現對多段語音的存儲和播放。由于語音的存儲有600個地址,所以要用A0-A9共十位進行表示,對ISD2560輸入地址,首先單片機的端口D通過74LS373輸入A0-A7八位地址,然后再單獨輸入A8、A9兩個高位地址。錄音和放音是單片機通過RD7控制錄放音引腳P/R實現的。
1.6信號音檢測模塊
信號音檢測模塊CR6230用于實現準確識別各種電話信號音,包括撥號音、回鈴音、忙音和催掛音等功能。即:若得出某種結果后,相應的信號引腳則輸出有效TTL電平。
接聽的判斷過程是單片機控制MODEM撥號后,識別回鈴音信號是否有效,若無效則重撥或改撥號碼;回鈴音信號有效則等待,若其變為無效則判斷此時對方是否接聽,此后還要根據MODEM的返回值來進一步確定是否真被接聽。信號的識別需要一定的周期才可以保證可靠性和準確率,所以在檢測到信號音后要延時大約1s的時間,以保證準確的識別結果;同理,當信號消失后也應略有延時再清除。硬件設計是將電話線路經通信變壓器CRE變換隔離后接入到CR6230的信號輸入端IN引腳。通信變壓器CRE3用于電話終端產品和中繼線產品的線路接口部分,技術指標符合郵電部入網標準。將CR6230的BS、RS、PS、SS引腳分別通過鎖存器74LS373與單片機的D3~D0連接,單片機通過讀取端口D的低四位就能獲得CR6230返回的當前信號狀態。另外,若單片機通過控制譯碼器的Y2引腳將CR6230的CS引腳設置為接收低電平時,BS、RS、PS、SS引腳也將被設置為低電平,這樣,其上的信號被清除以等待接收新的信號。
2系統的軟件設計流程圖
系統軟件設計的難點在于對DS18B20的控制(如圖3)。
3結語
設計以PIC單片機系統為核心,由單片機、溫度傳感器、RS-485串口通信和計算機組成,利用了DS18B20“一線總線”數字化溫度傳感器,能夠對多點的溫度進行實時巡檢。各檢測單元(從機)能獨立完成各自功能,同時能夠根據主控機的指令對溫度進行定時采集,測量結果不僅能在本地顯示,而且可以利用單片機串行口,通過RS-485總線及通信協議將采集的數據傳送到主控機,進行進一步的存檔、處理。主控機負責控制指令的發送,控制各個從機進行溫度采集,收集測量數據,并對測量結果(包括歷史數據)進行整理、顯示和存儲。主控機與各從機之間能夠相互聯系、相互協調。本系統運行穩定、工作精度高,經測試,在-10℃~+70℃間測得誤差為0.25℃,80℃到105℃時誤差為0.5℃,當T105℃誤差增大到1℃左右。實踐證明,該控制系統操作方便,維修簡單,運行穩定、可靠。
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV