專利名稱:多功能數據采集與輸出教學實驗裝置及其控制方法
技術領域:
本發明涉及一種數據采集與數字通信技術領域中的多功能教學儀器實 驗設備,具體地說是一種多功能數據釆集與輸出教學實驗裝置及其控制方 法。
°
背景技術:
教學儀器是教學中的一項重要環節,它能使學生將課堂上所學的理論 知識得到實踐,但是由于常規的教學儀器是由專門的生產廠家開發的,出 于技術上的保密或其它方面的原因,整個教學儀器的開放性不是很強,只 能按照廠家規定好的步驟去操作,學生不能按照自己的想法去定制或實踐 所需要的實驗內容。學校由于資金方面的原因,也不可能購買多種實驗裝 置,只能做幾種多年不變的實驗。因此,學生在學習過程中對教學實驗的 興趣也不是很大,又由于學生在學習期間沒有多余的資金自己去實現教學 實驗,這使得教學和實驗在時間和空間上造成脫節。
伴隨教育向大眾化發展,學生數量急劇增加,原有的教學設備無法滿足現 有的使用要求,供需矛盾在逐漸加劇。同時隨著電子技術、傳感器技術、 通信技術的發展,實驗設備也需要進一步更新換代,而教學設備要達到同 步的更新也是不現實的,無法滿足當代的教學實驗需求。另外,現在大學 畢業設計,由于經費上的原因,很多畢業設計都停留在紙面上,沒有得到 實際檢驗,畢業生的實踐能力沒有得到提高和鍛煉,難于適應當今的就業 要求。
發明內容
為了克服上述不足,本發明要解決的技術問題是提供一種具有多種信 號類型接口,并且具有多種通信接口的可由使用者自行配置所需功能的多 功能數據釆集與輸出教學實驗裝置及其控制方法。
為解決上述技術問題,本發明采用的技術方案是
包括單片機,存有控制程序,為整個裝置的控制核心,可釆集或輸
出數字量、模擬量信號;數字量輸入接口,由單片機通過i/o擴展模塊連接 到數字量輸入端子形成;數字量輸出接口,由單片機通過鎖存器接至數字 量輸出端子形成;模擬量輸入接口,由單片機通過模擬量釆集模塊接至模 擬量輸入端子形成;模擬量輸出接口,由單片機通過模擬量輸出模塊接至 模擬量輸出端子形成;顯示接口 ,由顯示端子與單片機的1/0管腳相連形成。
本發明裝置還具有CAN協議網絡接口 ,由單片機通過CAN協議模塊、 CAN驅動模塊連接到CAN總線端子形成。本發明裝置還具有RS _ 232接口 ,由單片機的串行通信接口經RS - 232 協議模塊接于232串口端子形成;RS-485接口,由單片機的串行通信接 口經RS-485協議模塊接于485串口端子形成;選擇開關,對RS - 232協 議模塊及RS - 485協議模塊以擇一方式選通接于單片機的串行通信接口 。
所述控制程序包括主程序和中斷服務處理程序,主程序的具體流程為
執行初始化后處于循環狀態;
按程序設定的順序對DI采集標志、AI釆集完畢標志、CAN中斷標志 或串口通信模式進行判斷,若相應的判斷結果為真,則調用相應的程序處 理模塊進行處理,各程序處理模塊的功能為通過DI數據釆集模塊進行DI 數據釆集、通過AI數據采集模塊進行AI數據采集、通過CAN總線接收與 發送模塊進行CAN指令接收與CAN數據發送處理或通過接收串口指令和 回送串口數據模塊對串口通信數據進行處理;
若上述相應的程序處理模塊執行完畢,或者與之相應的判斷結果為假, 則按程序設定的順序向下執行;
執行用戶應用程序;
按程序設定的順序判斷是否有DO輸出標志、AO輸出標志以及刷新顯 示標志,若上述相應的標志為真,則調用相應的程序處理模塊進行處理, 各語序處理模塊的功能為通過DO數據輸出模塊輸出DO數據、通過AO數 據輸出模塊輸出AO數據以及通過顯示數據刷新模塊刷新顯示數據;
若上述相應的程序處理模塊執行完畢,或者與之相應的判斷結果為假, 則按程序設定的順序向下執行。
所述用戶應用程序包括對釆集到的AI、 DI數據和通過串口或CAN 總線接收的命令根據用戶需求進行處理并置AO、 DO和刷新顯示數據的 輸出標志,生成對外通信輸出數據。
所述中斷服務處理程序分別為定時中斷、AD中斷、串口接收中斷、串 口發送中斷和CAN中斷,進入中斷后,單片機根據中斷類型轉到相應的中 斷處理程序,每個中斷處理程序處理完相應的任務后,返回到中斷時的主 程序,主程序繼續執行。
如果判斷是否有DI采集標志、AI釆集完畢標志、CAN中斷標志以及 是否進入串口通信模式的結果若為真,則執行相應的子程序模塊,若為假, 則分別順次執行下一步驟。若判斷是否有DO輸出標志、AO輸出標志以及 刷新顯示標志的結果若為真,則執行相應的子程序模塊,若為假,則分別 順次執行下一步驟。 ■
本發明具有如下優點.,
l.功能多用,靈活性強,經濟實用。本發明裝置可根據教學或實驗的特 點進行定制,不用更改本裝置的硬件電路,在原來程序基礎上可由用戶自 己編寫程序,通過本裝置的接口 ISP進行下載,在不增加任何成本的前提 下,就可成為一種其它類型的獨立的控制裝置,非常適合學生的教學、畢業設計以及課外實踐使用,而且可以重復使用。
2. 接口豐富,應用廣泛。本發明裝置不但具有通用的數字量輸入/輸出、
模擬量輸入/輸出接口、標準的RS-232接口、 RS-485接口,而且還擴展了 學生易于理解和掌握的CAN總線接口以及具有一定顯示功能的液晶顯示接 口,因此該裝置既可作為教學和實驗用,又可作為學生畢業設計時使用, 也可在工程項目中使用。
3. 軟件通用性好。本發明控制方法釆用模塊化設計,具有開放式的架 構結構,組態靈活。本發明控制方法中的輸入/輸出、通信及中斷等子程序 模塊可以直接利用,無需再由用戶進行編寫,用戶在編寫程序時只需調用 相應的子程序模塊即可,節省了大量的編程時間。
4. 擴展性好。本裝置可以單獨使用,也可以將多個該裝置通過RS-485 接口或C AN總線接口進行擴展,組成 一 個分布式控制網絡。
5. 使用方便。由于本發明裝置具有液晶顯示接口,為該裝置增添了一個 信息顯示窗口,尤其是該裝置作為遠程采集和輸出控制中顯得非常便利。
圖l為本發明裝置的組成框圖; 圖2為本發明裝置電氣硬件原理圖; 圖3為本發明主程序流程圖; 圖4為本發明中斷服務程序流程圖。
具體實施例方式
下面結合附圖和實施例對本發明作進一步詳細說明。 如圖1、 2所示,本發明裝置以AVR單片機為控制核心,具有數字量 輸入接口、數字量輸出接口、'模擬量輸入接口、模擬量輸出接口、 CAN協 議網絡接口、 RS-232接口或RS-485接口以及顯示接口,其中數字量輸 入接口 DI由單片機MCU1 (采用MEGA64 )通過I/O擴展模塊連接到數字 量輸入端子形成,即通過第1、 21/0擴展模塊UD1、 UD2 (釆用74HC245) 從第1、 2數字量端子JDI—1、 JDI—2采集16路數字量輸入DI信號;數字 量輸出接口由單片機MCU1通過第1、 2鎖存器U1、 U2 (釆用74HC573 ) 輸出16路數字量輸出信號到第1、 2數字量輸出端子JDO—1、 JDO一2進行 DO信號的控制輸出;模擬量輸入接口由單片機MCU1 ^過模擬量釆集模 塊AD1 (釆用TLC2543 )接至模擬量輸入端子JAI一1形成,即從模擬量輸 入端子JAI—1釆集8路模擬量輸入信號;模擬量輸出接口由單片機MCU1 通過模擬量輸出模塊UAOl (釆用AD5628)接至模擬量輸出端子JAO—1 形成,即通過模擬量輸出芯片UAOl輸出8路模擬量信號到端子JAO—1;
單片機MCU1通過CAN協議模塊UT1(釆用MCP2510)和CAN驅動模 塊UT2 (采用82C250 )連接到CAN總線端子JCAN形成CAN協議網絡接 卩;
由單片機MCU1的串行通信接口 UART經RS _ 232協議模塊US1 (釆用MAX232E )接于232串口端子J232形成標準的RS - 232接口 ;由單片機MCU1的串行通信接口 UART經RS - 485協議模塊US2(釆用MAX483E )接于485串口端子J485形成標準的RS - 485接口 ; RS - 232協議模塊US1及RS-485協議模塊US2通過選擇開關Sl切換進行選擇,以擇一方式選通接于單片機MCU1的串行通信接口 UART;
單片機MCU1的1/0管腳連接到端子LCM1上,成為液晶顯示端口;另外接口 ISP用于單片機控制程序的下載。
單片機控制程序采用C語言編制,采用模塊化程序設計,每個子程序模塊對應一個功能,程序匯編后儲存在單片機的電可擦除存儲器里,上電后自動運行。所述模塊化子程序中包括DI數據釆集模塊、AI.教據釆集模塊、CAN總線接收與發送模塊、接收串口指令和回送串口數據模塊、DO數據輸出模塊、AO數據輸出模塊以及顯示數據刷新模塊。
單片機程序主要包括主程序和中斷處理程序。如圖3所示,主程序的具體流程為
先執行初始化,然后處于循環狀態;
在循環中判斷是否有DI釆集標志,當有DI釆集標志時,調用DI數據采集模塊進行DI數據釆集;
'DI數據釆集完成后,或者沒有DI釆集標志時,判斷是否有AI釆集完畢標志,如有則調用AI數據釆集模塊進行AI數據釆集;
AI數據采集完成后,或者沒有AI釆集完畢標志,判斷是否有CAN中斷標志,如有則調用CAN總線接收與發送模塊進行CAN指令接收與CAN數據發送處理;
CAN指令接收與CAN數^發送處理完成后,或者沒有CAN中斷標志,判斷是否有串口通信模式,如有串口通信模式,則調用接收串口指令和回送串口數據模塊對串口通信數據進行處理;
接收串口指令和回送串口數據完成后,或者沒有串口通信模式,則執行用戶應用程序;
判斷是否有DO輸出標志,有則調用DO數據輸出模塊輸出DO數據;
輸出DO數據完成后,或者沒有DO輸出標志,則判斷是否有AO輸出標志;如有AO輸出標志,則調用AO數據輸出模塊輸出AO數據;
輸出AO數據完成后,或者沒有AO輸出標志,則判斷是否有刷新顯示標志,如有則調用顯示數據刷新模塊對顯示數據進行刷新;,
刷新顯示數據完成后,或者沒有刷新顯示標志,則回到判斷是否有DI采集標志步驟,如此循環執行。這樣做的好處是節省程序執行.的時間。
上述用戶應用程序包括對釆集的AI和DI數據以及通過串口或CAN總線接收的命令,根據用戶需求進行處理,即計算DO輸出值、AO輸出值和顯示數據,并置DO、 AO和刷新顯示數據的輸出標志,生成對外通信輸出數據,為對外的輸出、顯示和通信命令準備好數據。如圖4所示,中斷服務處理程序主要執行5個中斷服務程序,分別為
定時中斷、AD中斷、串口接收中斷、串口發送中斷以及CAN中斷,進入中斷后,單片機根據中斷類型轉到相應的中斷處理程序,每個中斷處理程序處理完相應的任務后,返回到中斷時的主程序,主程序繼續執行。其中各中斷處理包括定時中斷,定時的時間間隔為200ms,定時中斷后,置DI采集標志;AD中斷,采集AD數據后置AI采集完畢標志;串口接收中斷,填充接收緩沖區;串口發送中斷,將發送緩沖區中數據逐字節送出;CAN中斷,置CAN中斷標志。
權利要求
1.一種多功能數據采集與輸出教學實驗裝置,其特征在于包括單片機(MCU1),存有控制程序,為整個裝置的控制核心,可采集或輸出數字量、模擬量信號;數字量輸入接口,由單片機(MCU1)通過I/O擴展模塊連接到數字量輸入端子形成;數字量輸出接口,由單片機(MCU1)通過鎖存器接至數字量輸出端子形成;模擬量輸入接口,由單片機(MCU1)通過模擬量采集模塊(AD1)接至模擬量輸入端子形成;模擬量輸出接口,由單片機(MCU1)通過模擬量輸出模塊(UAO1)接至模擬量輸出端子形成;顯示接口,由顯示端子(LCM1)與單片機(MCU1)的I/O管腳相連形成。
2. 按權利要求1所述的多功能數據釆集與輸出教學實驗裝置,其特征東 于還具有CAN協議網絡接口,由單片機(MCU1)通過CAN協議模塊(UT1)、 CAN驅動模塊(UT2),連接到CAN總線端子(JCAN)形成。
3. 按按權利要求1所述的多功能數據釆集與輸出教學實驗裝置,其特征 在于還具有 .RS-232接口,由單片機(MCU1)的串行通信接口經RS-232協議 模塊(US1)接于232串口端子(J232)形成;RS-485接口,由單片機(MCU1)的串行通信接口經RS-485協議 模塊(US2)接于485串口端子(J485)形成;選擇開關(Sl ),對RS - 232協議模塊(US1 )及RS - 485協議模塊(US2 ) 以擇一方式選通接于單片機(MCU1)的串行通信接口。
4. 按權利要求1所述的多功能數據采集與輸出教學實驗裝置的控制方 法,其特征在于所述控制程序包括主程序和中斷服務處理程序,主程序 的具體流程為執行初始化后處于循環狀態; ' 按程序設定的順序對DI采集標志、AI釆集完畢標志、CAN中斷標志 -或串口通信模式進行判斷,若相應的判斷結果為真,則調用相應的程序處 理模塊進行處理,各程序處理模塊的功能為通過DI數據采集模塊進行DI 數據釆集、通過AI數據釆集模塊進行AI數據釆集、通過CAN總線接收與 發送模塊進行CAN指令接收與CAN數據發送處理或通過接收串口指令和回送串口數據模塊對串口通信數據進行處理;若上述相應的程序處理模塊執行完畢,或者與之相應的判斷結果為假, 則按程序設定的順序向下執行;執行用戶應用程序;按程序設定的順序判斷是否有DO輸出標志、AO輸出標志以及刷新顯 示標志,若上述相應的標志為真,則調用相應的程序處理模塊進行處理,各語序處理模塊的功能為通過DO數據輸出模塊輸出DO數據、通過AO數 據輸出模塊輸出AO數據以及通過顯示數據刷新模塊刷新顯示數據;若上述相應的程序處理模塊執行完畢,或者與之相應的判斷結果為假, 則按程序設定的順序向下執行。
5. 按權利要求4所述的多功能數據釆集與輸出教學實驗裝置的控制方 法,其特征在于所述用戶應用程序包括對釆集到的AI、 DI數據和通過串 口或CAN總線接收的命令根據用戶需求進行處理,并置AO、 DO和刷新 顯示數據的輸出標志,生成對外通信輸出數據。
6. 按權利要求4所述的多功能數據釆集與輸出教學實驗裝置的控制方 法,其特征在于所述中斷服務處理程序分別為定時中斷、AD中斷、串口 接收中斷、串口發送中斷和CAN中斷,進入中斷后,單片機根據中斷類型 轉到相應的中斷處理程序,每個中斷處理程序處理完相應的任務后,返回 到中斷時的主程序,主程序繼續執行。
7. 按權利要求4所述的多功能數據釆集與輸出教學實驗裝置的控制方 法,其特征在于如果判斷是否有DI采集標志、AI釆集完畢標志、CAN 中斷標志以及是否進入串口通信模式的結果若為真,則執行相應的子程序 模塊,若為俊,則分別順次執行下一步驟。 '
8. 按權利要求4所述的多功能數據釆集與輸出教學實驗裝置的控制方 法,其特征在于若判斷是否有DO輸出標志、AO輸出標志以及刷新顯示 標志的結果若為真,則執行相應的子程序模塊,若為假,則分別順次執行 下一步驟。
全文摘要
本發明涉及一種多功能數據采集與輸出教學實驗裝置及其控制方法,裝置包括單片機,存有控制程序,為整個裝置的控制核心,可采集或輸出數字量、模擬量信號;數字量輸入接口,由單片機通過I/O擴展模塊連接到數字量輸入端子形成;數字量輸出接口,由單片機通過鎖存器接至數字量輸出端子形成;模擬量輸入接口,由單片機通過模擬量采集模塊接至模擬量輸入端子形成;模擬量輸出接口,由單片機通過模擬量輸出模塊接至模擬量輸出端子形成;顯示接口,由顯示端子與單片機的I/O管腳相連形成。所述控制程序包括主程序和中斷服務處理程序。本發明功能多,靈活性強,非常適合學生的教學、畢業設計以及課外實踐使用,可以重復使用,接口豐富,軟件通用性好,擴展性好。
文檔編號G05B19/042GK101526806SQ20081001056
公開日2009年9月9日 申請日期2008年3月7日 優先權日2008年3月7日
發明者悅 周, 鳳 張, 李界家, 王燦平, 闞風龍 申請人:沈陽建筑大學