rs485轉(zhuǎn)rs232接口電路
由于adc0809芯片內(nèi)部沒有時鐘脈沖源, 可利用單片機89c51提供的地址鎖存控制輸入信號ale經(jīng)d觸發(fā)器四分頻后,作為adc0809的時鐘輸入。當cpu訪問外部存儲器時.ale的輸出作為外部鎖存地址的低字節(jié)的控制信號:當不訪問外部存儲器時,ale端以1/6的時鐘振蕩頻率固定地輸出正脈沖,可取單片機的時鐘頻率為12 mhz。則ale端輸出的頻率為2 mhz。再經(jīng)四分頻后為500khz,符合adc0809對時鐘的要求。
如圖2所示。adc0809內(nèi)部設(shè)有地址鎖存器,通道地址由p2口的低3位直接與adc0809的a、b、c相連,通道基本地址為0000h~0007h。模擬量由adc0809的in0~in7輸入.數(shù)字量由adc0809的do~d7輸出并接到單片機i/o口的p0口,adc0809其他引腳如:start、oe、ale、a、b、c等直接接到單片機的p2口。最后adc0809的結(jié)束信號端口直接接到單片機的p2.7口。
圖2 adc0809與單片機的接口電路
3 軟件設(shè)計
3.1 單片機程序設(shè)計
下位機程序完成a/d轉(zhuǎn)換和通信收發(fā)的功能,串口接收采用中斷方式.為方便上位機識別數(shù)據(jù)以及減少錯誤率,發(fā)送時加上前后校驗碼。照度、溫度、電壓、電流4類數(shù)據(jù)分別采用不同的前后校驗碼。在主程序中,a/d轉(zhuǎn)換完成后,將數(shù)據(jù)處理后并儲存,緊接著查看上位機發(fā)送回來的信息,將指定類型數(shù)據(jù)發(fā)送給上位機。
3.2 上位機程序設(shè)計
上位機主要是完成3項任務(wù):與下位機的通信;將下位機發(fā)送回來的數(shù)據(jù)進行處理及存儲:設(shè)計一個顯示界面。把數(shù)據(jù)變化情況以圖表形式顯示出來。
程序采用labview軟件平臺進行編寫,labview是當下最流行的圖形化編程開發(fā)軟件,利用它可以大量使用圖表、菜單、圖形等可視化工具,使系統(tǒng)具有豐富、靈活的畫面和圖表顯示功能。
labview通過visa與串行接口儀器通信。visa是應(yīng)用于儀器編程的標準i/o應(yīng)用程序接口(api),它本身并不具有儀器編程能力,而是為用戶提供了一套獨立的可方便調(diào)用的標準i/o底層函數(shù)。利用hbview中的visa函數(shù),可實現(xiàn)上位機與單片機之間的通信。通過labview平臺內(nèi)豐富的底層函數(shù),可進行高速精確的數(shù)據(jù)處理。其設(shè)計分為前面板和后面板,前面板為可視化的用戶界面,而后面板就是支撐系統(tǒng)運行的程序,并且采用圖形化的編程,數(shù)據(jù)的傳輸通過各函數(shù)之間的連線實現(xiàn)。
在前面板設(shè)立5個波形圖表控件,分別用于顯示照度、溫度、電流、電壓、功率5類數(shù)據(jù)信息的實時變化情況,若干數(shù)值顯示控件用于顯示各數(shù)據(jù)的平均值及發(fā)電量總值。
后面板串口通信利用labview中的visa配置串口函數(shù)、visa寫入函數(shù)、visa讀取函數(shù)可完成對串口的配置及串口收發(fā)。visa關(guān)閉函數(shù)用于關(guān)閉visa資源名稱指定的串口會話句柄或事件對象。是一個串口接收和發(fā)送的子vi,上位機可以向單片機發(fā)送命令及接受單片機發(fā)送回來的 數(shù)據(jù)。
主程序采用平鋪式順序結(jié)構(gòu),先利用子vi生成5個電子表格文件以保存當天的數(shù)據(jù),然后在循環(huán)結(jié)構(gòu)下,調(diào)用串口收發(fā)子vi為每類數(shù)據(jù)分別發(fā)送獲取指令,讓下位機把相應(yīng)數(shù)據(jù)發(fā)送過來。接收數(shù)據(jù)后,比對前后校驗碼,若有誤則重新發(fā)送,若正確則獲取數(shù)據(jù)碼進行數(shù)據(jù)處理。數(shù)據(jù)處理包括將數(shù)據(jù)還原、存人相應(yīng)表格文件以及送人波形圖表控件進行顯示。
此外。設(shè)計子vi從各電子表格文件中獲取儲存的累計數(shù)據(jù).則可計算各類數(shù)據(jù)的平均值以及總發(fā)電量,便可得到光伏發(fā)電系統(tǒng)的發(fā)電信息。在labview中可自行設(shè)立用戶菜單,程序運行時操作用戶菜單,可方便用戶設(shè)置串vi參數(shù)及查看歷史數(shù)據(jù)。
4 結(jié)語
經(jīng)系統(tǒng)實際運行測試。系統(tǒng)可穩(wěn)定地監(jiān)測到各類參數(shù)的變化情況。各類參數(shù)的平均值和總發(fā)電量通過儲存的累計數(shù)據(jù)得到,并通過控件顯示。整個系統(tǒng)可完成數(shù)據(jù)的采集、處理、儲存、統(tǒng)計、顯示等功能,實現(xiàn)對光伏發(fā)電系統(tǒng)的監(jiān)測目的。將系統(tǒng)運用到光伏發(fā)電領(lǐng)域中,能夠供電站工作人員實時了解電站的環(huán)境情況及發(fā)電信息,還可對歷史數(shù)據(jù)進行統(tǒng)計分析。通過監(jiān)測界面能夠及時有效地發(fā)現(xiàn)電站運行故障。以實現(xiàn)系統(tǒng)檢修及有針對性地進行維護,提高光伏運行效率。
評論