新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 一種基于STM32的嵌入式低功耗無線手持控制器設計

        一種基于STM32的嵌入式低功耗無線手持控制器設計

        作者: 時間:2016-09-12 來源:網絡 收藏
        一種基于STM32的嵌入式低功耗無線手持控制器設計

        除系統初始化外,其余的任務在調度器的管理下,按照各自的優先級和執行周期循環運行,模塊間通過全局的數據緩沖區進行通信。各任務的主要屬性如表2所示。下面對其中較為重要的nRF24L01收發和指令處理任務進行說明。

        3.1 nRF24L01收發任務

        nRF24L01收發任務位于控制器和驅動系統的數據鏈路層,它將指令緩沖區中打包好的幀通過nRF24L01發送出去,并且將nRF24L01接收到的數據送入緩沖區,由指

        令處理任務進行解析。

        一種基于STM32的嵌入式低功耗無線手持控制器設計

        手持控制器和驅動系統之間的通信是半雙工的,因此nRF24L01收發任務需要根據通信狀態正確配置nRF24L01的工作模式,從而控制其收發數據。nRF24L01內部通過應答和重發功能實現了數據鏈路層的可靠通信,這極大的方便了用戶應用層程序的編寫。nRF24L01收發任務采用了時間觸發的狀態機方式實現,狀態狀態轉移圖如圖6所示,狀態機執行周期為20 ms。

        一種基于STM32的嵌入式低功耗無線手持控制器設計

        3.2 指令處理任務

        指令處理任務位于控制器和驅動系統的應用層,將用戶的操作打包成幀送入指令緩沖區,并且從nRF24L01收發任務送入指令緩沖區的幀中提取出數據,更新LCD顯示。指令處理任務的運行方式為周期執行+事件觸發,前者指每隔10ms刷新一次LCD上機械手XYZ坐標并且處理一次編碼器數據,如果編碼器數據有變化則將變化量打包成幀,后者指用戶通過按鍵進行機械手工作模式切換、機械手急停等操作,這些操作不經過指令處理任務而是由按鍵掃描任務直接將指令打包送入指令緩沖區,確保盡快由nRF24L01收發任務將指令發送出去,以提高實時性。指令處理任務流程圖如圖7所示。

        一種基于STM32的嵌入式低功耗無線手持控制器設計

        4 測試結果

        首先對設備通信(默認無線方式)可靠性進行了測試。根據表3的測試結果和實際使用效果,本設備通信穩定可靠。

        一種基于STM32的嵌入式低功耗無線手持控制器設計

        注:本設備正常使用時和顯微驅動系統距離約30 cm,測試時間90 s,通信速率2 Mbps。

        其次,功耗測試結果如表4所示,設備待機和工作時間可滿足用戶的使用要求。

        一種基于STM32的嵌入式低功耗無線手持控制器設計

        5 結論

        隨著機械、控制、微電子、嵌入式和等技術的發展,使得顯微注射操作從人工化進入自動化時代。本文開發的手持控制器,通過電池供電和無線通信的方式,替代了原實驗系統中有線控制器,消除了通訊線、電源線的連接給用戶帶來的不便以及不可靠因素。增加了LCD顯示功能,方便用戶實時監控實驗系統狀態及參數。測試結果表明:本設備功耗低、可靠性高、操作簡便,具有較高的實用價值。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 綦江县| 霍林郭勒市| 从江县| 武威市| 日照市| 保德县| 个旧市| 葫芦岛市| 新丰县| 固安县| 农安县| 桐梓县| 镇坪县| 五家渠市| 高平市| 紫云| 静宁县| 隆昌县| 海南省| 潍坊市| 阿荣旗| 麦盖提县| 延长县| 隆回县| 连云港市| 盐山县| 安顺市| 栖霞市| 砚山县| 合肥市| 天祝| 祁阳县| 武功县| 临泉县| 安龙县| 河北省| 武夷山市| 溆浦县| 桃江县| 田阳县| 民勤县|