[模組] Arduino + 藍芽 BLE 模組
物聯網一詞是今年相當熱門的話題之一,靠著萬物皆可連的概念讓未來的生活多出很多的想像空間。2015年初,金屬中心智慧系統組提出一個手持裝置偵測器的想法,首先浮出腦海的方式就是採用藍芽與手機連通。自從一兩年前開始,手機的藍芽規格逐漸發展並升級到4.0,加上有了低功耗的連接模式,資料擷取的應用便越來越多,比如家庭或工業上的監控訊號擷取,醫療量測的資料擷取...等。
為了開發設計出手持裝置偵測器,我們從網路上找到 HC-08 藍芽 4.0 模組,它讓使用者能比較快速進入藍芽通訊的領域,透過串列端口控制這塊模組的各項參數,縮短的開發時程。雖然藍芽模組縮短我們進入的門檻,但模組的擴充性卻有所限制,因此需要從外部搭配 MCU 晶片來整合全系統。不過,初步來看這樣的設計還不夠完美,卻也能達到基本的要求。下面的圖示就是以 Arduino Pro Mini 為控制核心,再加上藍芽模組所組成的系統。
為了開發設計出手持裝置偵測器,我們從網路上找到 HC-08 藍芽 4.0 模組,它讓使用者能比較快速進入藍芽通訊的領域,透過串列端口控制這塊模組的各項參數,縮短的開發時程。雖然藍芽模組縮短我們進入的門檻,但模組的擴充性卻有所限制,因此需要從外部搭配 MCU 晶片來整合全系統。不過,初步來看這樣的設計還不夠完美,卻也能達到基本的要求。下面的圖示就是以 Arduino Pro Mini 為控制核心,再加上藍芽模組所組成的系統。
圖一:Arduino Pro Mini + HC08 BLE 4.0 模組
設計一個手持裝置遇到最大的麻煩就是耗電,要解決這個問題,以目前的電路設計而言,分成運算時脈和系統的工作電壓兩點。以同等級的 MCU 來說,時脈變慢的話通常耗電量會降低 (雖然運算速度也變慢),假設裝置的運算量不複雜的話,倒是可以盡量讓輸入 MCU 的時脈變慢。通常市面上的 Arduino 板子都是 16MHz,不過用這個概念,我們找到 Arduion Pro Mini 8MHz 3.3V 的開發板。另外,要減少耗電量還可以考慮降低系統的電壓,選用的元件也盡量以低電壓為主,這樣整體耗電會比較低。
此外,在解決耗電問題上,可從 Arduino 韌體設計考慮,當藍芽未連接的情況下,讓 Arduino 進入 power down 模式,這樣可以達到省電的效果。而這塊藍芽模組也有四種操作模式可以設定,只要進入休眠情況,整體系統的耗電都能改善不少。底下是實驗的數據
<全速情況>
Arduino Pro Mini 耗電流大約 6 ~ 7 mA
HC-08 Bluetooth 4.0 耗電流大約 10 mA
底下影片是操作的過程。我們實際操作時,在藍芽未連接,系統總耗電流小於 2 mA。在藍芽連接後,兩塊模組都已全速運作,總耗電流約 17 mA。另外,藍芽模組也可以調整發射功率大小,如果應用面在於短距離,倒是可以將發射功率降低到欲操作的距離。
最後一點,如果開發的時程充裕的話,應該直接使用德州儀器的 cc2540 藍芽晶片開發,這樣可節省一顆外部 MCU 的耗電,系統的零件費用也能降低。
最後一點,如果開發的時程充裕的話,應該直接使用德州儀器的 cc2540 藍芽晶片開發,這樣可節省一顆外部 MCU 的耗電,系統的零件費用也能降低。
影片:系統操作的過程
留言
電源的部分,模組只需要 3.3V,不過市面上有的藍芽模組上有5V 轉 3.3.V 電路,這時就要輸入5V。
不好意思 因為電腦藍芽收尋不到 可是手機app可以 想說是否哪裡出錯
首先利用Uno進入ATmode 更改baud rate 為57600,在更改完之後發現電腦找不到該藍芽裝置。
但是手機app(lightblue iOS)可以找得到該裝置,而我的mac 卻無法找到該裝置,想請問該問題可能是在哪個環節出錯?
另外,把手機APP的該裝置徹底移除,再重新尋找一次,看能否再次找到。(有可能手機原本就記錄著舊資訊)
目前也正在使用HC-08藍芽模組,但是現在出現一個問題,現階段兩利用兩塊HC-08模組進行Slave & Master的連線配對傳輸,但是在Master端發現沒有關於連線Slave的AT Command可以使用,想請教一下關於Master連接Slave的方法,跪求指點!!感謝!!
請問是不是錯了甚麼...