新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > 電梯緩沖器復位時間測試儀的設計

        電梯緩沖器復位時間測試儀的設計

        作者: 時間:2009-07-03 來源:網絡 收藏

          2.2 數據采集方案

          下位機是一個基于高性能AVR單片機的超聲波測距系統,具有溫度校正和軟件補償,承擔現場恢復狀態的實時數據檢測采集,并按照一定的協議打包成數據包通過串口傳給上位機。測量最小距離4cm,最大距離500cm,分辨率為1cm。圖2為數據采集的硬件框圖:

        數據采集的硬件框圖

          3 系統軟件部分:

          Windows CE主要分為四個模塊,如圖所示,這四個模塊提供最重要的操作系統功能:內核,對象存儲模塊,網絡與通訊模塊和GWES模塊。

          Windows CE還包含其它可選模塊,支持如管理可安裝設備驅動程序和支持COM的任務,圖3為系統結構圖:

        系統結構圖

          3.1 定制操作系統

          為了把Windows CE移植到特定的目標平臺上,微軟提供了一套完整的開發工具Platform Builder。該工具以對象庫格式提供給操作系統,以便開發人員可以將其作為特定操作系統平臺的組件。

          首先,選擇造作系統的基本配置,并且為特定的平臺選擇相應的微處理器和板級支持包BSP(Board Suppor Packet)。本測試儀采用S3C2410處理器,因此我們改造了微軟提供的基于S3C2410的BSP,自定義了符合我們要求的BSP。

          其次,制定平臺,在此階段可開發設備驅動,適當地裁剪、添加組件。然后,封裝所需的各功能模塊,編譯生成OS鏡像文件。接著,把鏡像文件下載到目標設備,進行調試。在此階段,我們主要進行了串口和觸摸屏程序系統相關組件的添加和裁剪,編譯生成符合我們測試儀硬件要求的OS鏡像。

          最后,導出定制操作系統的SDK(Soltware Development Kit)軟件開發工具包,安裝到EVC中,便可以進行基于我們定制的測試儀硬件平臺的應用程序開發。如圖4所示為操作系統移植流程圖:

        操作系統移植流程圖

          3.2 應用軟件開發

          操作系統的主要任務是為了管理所有硬件資源,并且提供應用軟件一個合適的操作環境。將Windows CE操作系統移植到ARM平臺上以后,下一步工作就是進行應用軟件的開發。本系統的上位機軟件主要在EVC的環境下開發完成,使用C語言為主要編程語言。主函數主要包含以下幾個模塊:用戶界面模塊、上下位機串口通訊模塊、算法分析處理模塊。

          3.2.1 串口通訊協議說明

          模塊串口波特率9600,無奇偶效驗,一位停止位。控制命令通過一致的幀結構通訊,幀長度4字節:命令+數據0+數據1+校驗和。效驗和=命令+數據0+數據1的相加和的低8位。系統通過上位機串口直接對下位機模塊進行操作。上位機向下位機發送啟動16位距離讀取命令:Ox22+度數+NC+SUM。當測量完畢時,這時返回的數據是:Ox22+距離高+距離低+SUM;當測量無效時返回的距離高位和低位數據都是Oxff。(注:NC代表任意數據,SUM代表效驗和)串行端口在Windows CE下屬于流接口設備,是串行設備接口常規I/O驅動程序的調用與通信相關的具體函數的結合。串行設備被視為用于打開、關閉和讀寫串行端口的常規的可安裝的流設備。Windows CE的串口函數和Windows的串口函數基本相同,但有幾點值得注意:Windows CE只支持Unicode字符集,在編程時必須特別注意; Windows CE不支持重疊的I/O操作。在所有的流設備驅動程序中,均使用CreateFile來打開串行端口設備,如果這個端口不存在,CreateFile返回ERROR_FILE_NOT_FOUND。因此,用戶指定的端口必須是存在并且可用的,而且要遵循Windows CE流接口設備驅動程序的命名規則,即COM后接要打開的端口號再緊跟一個冒號。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 隆德县| 雷波县| 定南县| 阳信县| 金堂县| 彰化县| 铜陵市| 宁明县| 巴青县| 江津市| 沾化县| 华容县| 桂东县| 洪洞县| 望都县| 同德县| 东平县| 宝应县| 芜湖市| 崇信县| 淮南市| 夏邑县| 满洲里市| 淳安县| 于都县| 乐都县| 伊宁市| 开鲁县| 台州市| 崇阳县| 新竹市| 巴林右旗| 信阳市| 嘉祥县| 仁怀市| 齐河县| 茌平县| 瑞安市| 莫力| 西昌市| 郎溪县|