DIY微功耗基礎無線網絡
一、一個DIY 老兵心愿
記得和無線電第一次親密的接觸,還是30多年前的事情,那時我還在孩童時代,記得課余時間,自己動手第一次學裝收音機,我買來各種零件,雖然還不能明白其中的原理,甚至也搞不清楚零件的用途,只知道長長的那個叫“磁棒”,可以調節那個玻璃管叫“礦石”,還要個可以旋轉金屬部件的叫“可變電容器”,我將這些零件,按接線辦法(那時不懂什么是電路原理圖)連接在一起,居然做成了一臺自己的收音機,接上電池,拉上長長的天線,我居然成功了,接收到了來自遠方的廣播電臺的廣播…..當我聆聽著這由無線電波傳輸的聲音,感到如癡如醉,也感到這個自己組裝的小盒子是那樣的神秘,那么深奧,那么廣闊….. 后來我和千百萬那個時代的青年一樣,經歷了上山下鄉,回城就業,上大學等類似的人生歷程,也只好暫時告別了和無線電的那段情緣。
當我大學畢業后,被分配到一家大型國營電子研究所工作的時候,已經是20多年前事情,那時微處理器(單片機)技術還不普及,我開始了自己學習單片機和采用單片機進行設計工作的艱辛學習和實踐的歷程。雖然單片機(微處理器)那時和無線好像還沒有直接關系,但是動手去做硬件電路,設計電路板,開發單片機軟件代碼,仍然應該是在DIY的范圍,事實上我又回到了和無線電的情緣之中。
那時單片機的資料很貧乏,也沒有互聯網,我本人也很“貧困”,買不起昂貴的技術書籍,只好經常偷偷在書店中,用筆抄錄相關重要技術資料,自然引來不少店員的“白眼”。在和單片機打交到的日日夜夜里,我被單片機技術高深的背景和巨大的應用前景所吸引,并且為此付出了近似狂熱的努力。我常常通宵奮戰,為了一個新的電路設計或者為了排除一個軟件代碼的漏洞,甚至經常在機房和實驗室席地而眠….從入門到精通,在經歷許多失敗和挫折后,我也迎來了職業生涯的豐收時期,我親手將小小的單片機,安裝到了生產車間,對巨大的加熱爐進行精確的溫度自動控制;也親手將小小單片機也設計到新一代智能儀器中,成為新一代數字儀表的心臟。我的這一次又一次的設計實踐,和電子愛好者們的DIY 實踐和實戰,沒有本質的區別,不斷實踐,不斷學習,不斷創新,正是DIY的靈魂!
彈指一揮間,幾十年過去了,無論是做一個高級電子工程師,高級技術管理人員;還是在大洋彼岸和異國他鄉留學學習,在世界一流無線通訊和嵌入式設計企業就職和從事研究工作;還是在回國創立高科技企業,在市場經濟中拼搏…….我都沒有忘記關注《無線電》,也沒有忘記自己是如何從DIY開始,一步一步學習成長和充滿艱辛和愉快的里程,總是希望能有一天,能為DIY 做些什么,能為廣大電子愛好者做些什么……
二、拉一家工廠來“入伙”
技術發展,也在不斷開拓自己更大的領域,僅僅就新興的無線通訊領域而言,就有模擬廣播,數字廣播,數字通訊,無線網絡,衛星通訊,業余無線通訊等等領域。在互聯網技術高速發展的同時,最近幾年短距離微功耗無線通訊,個人區域網絡,無線傳感器網絡等新興技術,異軍突起,高速發展,涌現出一大批新的技術,包括ZigBee、藍牙、Wi-Fi等等,也涌現出很多使用這些技術的成功產品,如日本任天堂公司最新的風靡全球的Wii無線遙控動作游戲機等。這樣的新技術和產品的出現,必將改變我們的生活,無線無處不在,他將必然給無線電這個名詞,帶來新的含義;也必然將影響到電子DIY的生態。
為什么在這些新興無線技術發展熱火朝天的時候,我們DIY市場對這些新興技術卻如此冷漠?我個人認為主要原因是:
1、高頻設計,特別是高達2.4GHZ的高頻設計,需要更多的專業知識。
2、零件愈來愈小,像QFN、LGA 等微型封裝的零件,0402/0201封裝的電阻、電容、電感等元件,都只有在顯微鏡下才能看清楚,已經不能或者很難使用普通焊接工具自己手工焊接,而無線網絡要求必需要這樣的封裝。
3、軟件設計更加復雜,特別是無線網絡協議棧,抗干擾,抗沖突,自組織,路由算法,低功耗等,涉及更多高級的知識和經驗。無線網絡需要實現多個微控制器間(幾個到幾千個)通過無線連接,實現組網工作,和目前主要采用一個單片機,控制外圍的DIY,有本質區別,也更加困難。
我認為DIY需要向高智慧化方向發展,從自己拿烙鐵,將一堆零散的零件,焊接組裝到一起,逐步過渡到由專業化工廠,專門根據DIY的特點,設計生產適合DIY特點的套件,然后讓廣大電子愛好者集中在軟件開發上進行DIY,進行創造性的,個人化的設計。這是因為以單片機和微控制器為核心的新一代電子技術,核心是單片機軟件,是以C語言為核心的嵌入式軟件設計,在這個方面,可以最大限度的發揮我們人類的智慧,描繪出五彩斑斕的軟件世界,給專業化生產的DIY的硬件注入新的靈魂,開發出各種各樣的應用,這個改變,是電子DIY的一次創新,將帶領DIY進入一個以軟件創新為潮流的全新的境界。那么,有沒有專業工廠和公司愿意來為我們這些電子愛好者做這樣一個開頭?不僅要質量好,而且要價格低到人人都可以買得起,顯然不是賺大錢的事情。
我設計了一個計劃,要將最新的低功耗無線網絡, ZigBee無線網絡,低功耗藍牙網絡,低功耗Wi-Fi網絡等等最新技術,都可以陸續做成可以DIY的套件,不僅要具有強大的直觀演示能力和軟件開發功能,而且容易使用,價格也要低于目前市場上的單片機開發系統,讓大家都買得起。

圖1 DIYRF-2510
我和深圳無線龍科技的工程師們商議了這個計劃,他們非常支持我的想法。這家公司成了四年多,是一批朝氣蓬勃的年輕工程師團隊,4年來他們其實一直在DIY這個領域,他們提出了“無線單片機”的概念,希望能夠將無線網絡技術從大公司的實驗室里,解放出來,成為每個電子工程師,單片機愛好者自己掌握的技術;他們和北京航空航天大學合作,已經正式出版和發行了9本共約五百萬字的《無線單片機叢書》(全國的書店和網上書店都可以容易買到)。更重要的,他們有自己的生產車間,有高精密SMT自動生產線,包括激光定位,視覺定位等功能,專業大量生產高精度無線應用產品和無線模塊。
說干就干,設計硬件,開發軟件,準備生產,一個月奮戰,這套低功耗基礎無線網絡DIY套件就擺在我們面前,如圖1所示。這套系統可能和面前市場上的DIY系統完全不同,包含了三個功能:
1、普通8051單片機學習功能 ,DIY RF-2510系統包括一個類似JTAG功能的非入侵式高級在線仿真器,在不占用單片機任何資源前提下,實現軟件下載,單步,斷點和在C語言水平下實時調試功能,支持功能強大的IAR 電子平臺C51編譯,調試環境。
2、全功能基礎低功耗無線網絡功能展示和測試。
3、SimpliciTI無線基礎網絡軟件協議棧學習和開發功能,包括協議棧源代碼和表演軟件代碼;DIYRF-2510系統由一個無線網關(兼作單片機在線仿真器),兩個無線節點成套而成,無線節點上有最新傳感器和按鍵,顯示功能, 系統全部工作在2.4GHZ 全球免執照頻段。
更大的驚喜是DIYRF-2510 無線節點和網關板上,都有一個無線模塊擴展插座,在插座上擴展上對應的無線模塊,就可以容易升級到更高級的無線網絡DIY,例如我們下一個專題:DIY ZigBee網絡。同時用同樣方法,我們也可以容易升級到我們陸續推出微功耗Wi-Fi、藍牙 DIY專題。
大家可能會問,這樣一套高級的無線和單片機開發系統,我們買得起嗎?回答是:全套系統零售價僅僅為395元人民幣!為什么這樣廉價,是因為我們拉了一家工廠來“入伙”,充分利于他們的生產能力和零件批量采購能力。我們和一家工廠和高科技公司,一起來將DIY進行到底。
目前萬事俱備,讓我們裝上電池,連上USB電纜,開始我們在無線世界的翱翔…
三、出發前,先熱身,學點基礎知識
在我們出發準備暢游無線網絡世界前,我們需要先簡單了解一下,相關無線網絡的基礎。
簡單而言,最基本的無線網絡是由無線節點和網關(也稱AP)通過無線電波互聯組成,而無線網關和節點的最基本組成單元是單片機加上無線收發芯片組成,隨著技術進步,單片機和無線收發芯片被集成到一個芯片中,這個芯片簡稱為無線片上系統(SoC),我們也簡稱為無線單片機。DIYRF-2510中,使用的是美國TI公司生產的CC2510無線單片機,該單片機由一個高性能的8051微控制器和一個2.4GHZ的無線收發器集成組成,功能強大,價格低廉,芯片原理見圖2所示。

圖2 CC2510無線單片機電路原理圖
無線節點和節點間,無線節點和無線網關間,要進行無線網絡通訊,必然需要一個大家都明白的通訊規范和約定,這就是無線通訊的協議,DIYRF-2510中使用的無線通訊協議是免費的SimpliciTI 通訊協議,協議非常小,只占了CC2510無線單片機32K閃存中的 ¼ ,大約8K字節。
網絡間連接的結構,稱為網絡拓撲(NETWORK TOPOLOGY),SimpliciTI 通訊協議是一種入門級別的通訊協議,只支持基本的星狀拓撲,SimpliciTI 的網絡拓撲如圖3所示。

圖3 SimpliciTI 的網絡拓撲
DIYRF-2510構架的低功耗無線網絡結構圖如圖4所示。一根USB電纜,連接網關節點到PC機,將網關通過無線網絡獲得的信息或者PC發出的命令,通過無線網絡傳輸到節點。
無線節點板采用標準AAA電池供電,通過網絡協議,以自組織方式加入網絡,實現將傳感器數據和操作信號,通過無線網絡傳輸給無線網關(GATEWAY)。

圖4 DIYRF-2510網絡結構
四、出發上路,體驗無線網絡的魅力
首先你需要安裝無線龍DIYRF PC 監控軟件,這非常容易,按照說明書的安裝流程,很容易就完成了安裝,你運行DIYRF 軟件,PC會出現下面的圖5的歡迎圖畫:

圖5 DIY SimpliciTI無線網絡
然后從這里將USB電纜接如PC機USB接口。

圖6 連接你的網關到PC(USB)
點擊開始,軟件自動會搜索,網關的接口,然后出現下面畫面如圖7。

圖7 網關節點在屏幕中
如圖8,安裝你的無線節點的電池,然后打開電池開關到ON,設定DIP開關在全部關閉-000,你可以看見圖9畫面。

圖8 啟動你的無線節點

圖9 看到你的無線網絡中的全部節點
然后你對照說明書,改變PC屏幕上的實驗功能和無線節點上的DIP開關,確定進行下面豐富多彩的各種實驗,包括無線門鈴,無線溫度計,無線遙控器,無線紅綠燈,無線節能路燈控制,無線游戲搖桿等,如圖10所示:

圖10 各種無線網絡實驗
五、精彩刺激,無線動作遙控器
加速度傳感器是最新的動作監控傳感器,具有廣闊的應用前景,圖11是加速度傳感器的一些應用領域。

圖11 加速度傳感器電路原理和應用
著名游戲機廠家任天堂公司,采用加速度傳感器和無線技術,實現了電子游戲的無線動作傳感器,推出了轟動世界的Wii游戲機,DIYRF-2510無線節點板采用最新MMA7660FC加速度傳感器,讓你體驗將自己的動作,傳感到無線節點,然后通過基礎無線網絡,傳輸到PC,實現精彩刺激的動作游戲,同時讓你具有了開發無線加速度傳感器應用的可能性。

圖12 精彩刺激的動作游戲,使用DIY-2510可以實現
六、心動不如行動,自己動手做個最簡單的無線網絡軟件和應用
看了這些激動人心的應用,可能你會心情激動,希望自己也來動動手,看看自己能不能通過改寫軟件,實現對低功耗無線網絡的控制,DIYRF-2510 為你提供了這樣的無限可能。
對于已經熟悉8051系列單片機和C51語言的愛好者,可以直接上手下面的實驗(對于還不熟悉單片機的愛好者,仍然可以使用系統,從頭開始學習8051單片機和C語言,但是你需要入門教材和實驗,好在這些東西都可以很快在網絡上找到)。
對于已經有單片機和C語言的,并且熟悉IAR調試編譯工具的愛好者,讓我們開始一個簡單的低功耗無線網絡軟件DIY之旅。 DIY目標,使用兩個無線節點,不需要PC機,實現相互遙控對方的節點板上的小燈。步驟是:
1、安裝IAR C51編譯軟件(需要自己到IAR網站下載評估版本)。
2、按如下示意圖十三連接仿真器到PC USB 口, 注意這次是不同USB接口。

圖13 連接仿真器到PC USB 口
3、根據需要將仿真器分別連接無線節點板,進行下載和調試,首先進行第一號節點,作為AP使用。
4、打開工程軟件,DIYRF.PRJ 如圖14

圖14 IAR平臺 DIYRF工程文件和和源代碼
5、你可以在C語言源代碼中,修改和定義你使用無線節點上那個按鍵發射(也可以做你自己的任何修改),然后繼續編譯,如果提示正確,說明你成功完成編譯。
6、點擊下載(注意當你點擊這個鍵,DIYRF-2510中預先固化表演代碼,會完全丟失,如果你需要恢復,可以使用光盤中下載工具,下載HEX代碼,恢復表演代碼)
7、退出下載
8、按啟動(RESET)開始運行
9、仿真電纜連接 2號節點,定義為ED(終端節點) ,然后重復3-8步
10、1號 按下你在軟件中 定義的按鍵,對方相應的燈會亮器,在重復一次,對方燈會熄滅;2號也有相同功能。
11、實現了一個簡單的采用軟件修改,實現新的功能。

圖15 自己DIY軟件代碼后,實現無線網絡遙控功能
從這里出發,你可以采用軟件DIY實現各種高級的功能,如1號板監視溫度傳感器變化,讓無線網絡連接2號板遠程監視溫度變化。又如可以將2號板固定到你的筆記本電腦上,監視加速度傳感器,如果有任何移動,2號板通過無線網絡,向1號板發出報警信號(LED閃爍等),你也可以在LED控制線上并接蜂鳴器等,進行聲音報警,實現筆記本電腦和貴重物品高級無線防盜功能,又如,可以繼續增加購買無線節點板,自己建設更復雜的多節點無線傳感器網絡(SimpliciTI 單個網絡最大可以支持255個節點)…
總之,DIYRF-CC2510-SDK提供了許多可能,只要你發揮你的智慧,可以變幻出無窮無盡的軟件代碼和算法,實現你在廣闊的無線海洋中,天高任鳥飛,海闊憑魚躍的夢想。
七、還愿之旅剛剛啟程,期待更多精彩
寫到這里,這期特別企劃將告一段落,也不知道我的還愿之旅的第一步大家是否滿意,是否得到鮮花,還是臭雞蛋?我希望,這只是一個開頭。下一期,我們的題目是:《入門 ZigBee 無線傳感器網絡 》。大家知道ZigBee無線傳感器網絡技術,是一項建立在 IEEE802.15.4全球個人區域網標準之上的高級網絡技術,他具有很多更加神奇的功能 ,例如大型多跳網狀(AD-HOC)網絡,強大抗干擾能力和高級網絡自組織,自管理功能等等…… 我們只要將我們已經有的DIYRF-2510 上,插上DIYRF-2480 ZigBee升級套件(3個無線龍公司生產的LC2480 ZIGBEE無線模塊),3 分鐘內就順利簡單完成了硬件升級。ZigBee無線傳感器網絡又向我們展示了一個全新的DIY世界,一個更加五彩繽紛的無線空間正在等待我們。
圖16是升級后的一個典型無線節點,升級后,這已經是一個具有完整功能的ZIGBEE無線傳感器網絡節點。

圖16 升級后ZigBee無線傳感器網絡節點
我希望下面能給大家繼續帶來更精彩的還愿之旅,也給大家帶來更多驚奇和樂趣。