作者:Mike Lo
在Maker運動興起以後,3D Pinter以及DIY機器人相繼成為熱門話題,而物聯網(Internet of Thing, 以下簡稱IoT) 則是另外一個熱門話題之一。IoT雖然目前並沒有一個統一的通訊協定或者規格,但是基本上能夠連上網路的設備就可以稱為是IoT設備,而各家廠商在看到這股浪潮後,也不斷推出各類不同的晶片組,幫助Maker以及專業人士開發IoT的專案。
Particle Photon設計規格
說到開發專案,就不得不提到Particle開發的Photon,它算是一款在台灣Maker界較少被提起的開發版,其本身主要目的,就是針對開發IoT設備所必要的功能,而被設計出來的,這也意味著,Wi-Fi是Photon主打的強項。
如果以規格來看,Photon所使用的MCU(微控制器),是以STM32F205為基礎去開發的,想像一下,你的MCU有1 MB的 flash以及128KB的RAM,加上120MHz的時序,你能夠在這個晶片上做的事情已經多到無法想像了。
由於Photon本身所具備的條件就已經很好了,加上有Wi-Fi模組的加持,因此造就了Photon本身在IoT專案開發上極佳的先天優勢。
Particle Photon的優勢
依照我自己的使用經驗來看,在使用Particle的Photon開發IoT設備時,可以說是無往不利,其P0模組已經包含了所有必要的功能,像是Wi-Fi以及支援加密通訊協定,這讓Photon本身所具備的優勢更加如虎添翼,而使之優於其他市面上許多的開發版。除此之外,Photon本身還有具備RTOS(Real Time Operating System:即時作業系統),所以在開發原型的過程當中,已經省去許多在記憶體管理上不必要的麻煩。
Photon的硬體、韌體到行動設備的App都是開放源碼,如果使用者想重新設計自己的電路或者App,這完全不會產生任何的限制。而在Photon 的程式編寫上面來說,語法本身是C/C++的語法,加上其編寫的方式與Arduino完全一樣,這讓原先使用Arduino的開發者以及Maker都可以輕易的轉換到Photon上,這樣大幅降低了轉換系統所要突破的難度壁壘。
由於P0模組本身是可以單獨購買的,如果你需要做一塊屬於自己的Photon為基礎的板子,以現成的Wi-Fi功能上來說,已經無形中省下許多時間。
Particle Photon的缺點
當然說了這麼多Photon的優點,好像這個商品本身都萬無一失一樣,但是一個產品總是會有一些缺點,依照我自己開發一家公司的IoT設備來看,Photon本身最好是可以透過Mac OS X或者Linux的Terminal,來執行CLI(Command Line Interface)程式碼的編譯會比較方便,因為Photon自己提供的線上編譯器,會有無法連線的顧慮,加上Particle本身雲端圖表的服務,有時候無法按照需求來顯示數值,甚是造成資料遺失,這些問題也都讓Particle本身的雲端服務優勢大打折扣。
小結
然而,Particle Photon開放硬體以及軟體的本質,讓許多專業人士以及非專業的人都可以藉由自身的能力,完善提供整套系統,這是許多市面上的開發板所不及的部分。
(註:本篇文章要特別感謝MakerPro總主筆歐敏銓先生的邀約,以及Particle Photon資深硬體工程師BDub、資深Photon玩家ScruffR的協助,才得以有機會與大家分享。)
(本文同步發表於作者K.C.M.L.部落格)