36 小時,程序員可以開發出什麼?

開發一個項目需要多長時間?

有程序員說,或兩天、或一週、或是幾個月、一年甚至於更久,這將取決項目的具體需求。那麼反而言之,給你 36 個小時,項目主題及需求隨你定,你可以開發出什麼樣的項目呢?

36 小時,程序員可以開發出什麼?

近些年來,編程馬拉松(Hackathon)逐步在程序員、開發者、極客、設計師之間流行起來,這項不以商業利益為驅動、不以傳統思維為定式的活動使得無數的程序員在有限的時間內碰撞出許多顛覆性創新的靈感和火花。而正是在這樣的背景之下,全球知名的芯片公司 Qualcomm 於 12 月 21 日攜手國內物聯網(IOT)雲服務平臺機智雲、上海移遠通信和 CSDN 隆重舉辦了為期 36 小時的“Qualcomm LTE 物聯網應用開發者大賽”,經過前期初賽、半決賽激烈的角逐,最終來自全國各地的八強開發者團隊相聚於深圳,以創意、應用決戰物聯網之巔。

做開發,沒有一款利器如何了得?

大賽伊始, Qualcomm 的產品市場部邱萍女士表示道,預計未來十年,物聯網應用將實現快速增長。由此產生的海量物聯網設備連接成為當前整個行業亟待滿足的需求之一。對於廣域應用而言,如今的蜂窩技術就可以滿足跨市場或行業的各種新服務需求,且其中針對物聯網領域,以 LTE 為代表的蜂窩技術能夠很好地提供可擴展的物聯網平臺,以連接海量的物聯網設備。

36 小時,程序員可以開發出什麼?

Qualcomm 產品市場部邱萍女士

事實上,回憶最初的 LTE 應用,彼時的它更多地是被開發用於提供更快的移動寬帶接入,為替代 2G 和 3G 做鋪墊。如今經歷了多年的發展,LTE 早已能夠通過載波聚合和高階 MIMO 等先進技術進行擴展以實現千兆級吞吐量。但是在此前的物聯網環境下,LTE 似乎遠遠還不能夠滿足企業及開發者的需求。因此 LTE IoT 從 3GPP 標準的第 13 版開始,引入了兩種新的窄帶 LTE 技術,即物聯網專用的 eMTC(Cat M)和 NB-IoT(CatNB1)。這兩種通訊技術也就是廣為人知的低功耗窄帶物聯網連接技術。二者可以極大程度上降低終端的設計複雜度及使用功耗,也可以實現更多空口接入以提升頻譜效率,更深層收發以達到更好覆蓋,並有望滿足 IMT-2020 的要求。二者之間的重要區別在於,eMTC 在帶寬更高的同時,也支持移動性和語音功能。

基於此,Qualcomm 研發了一款支持全球多模多頻 eMTC、NB-IoT、GPRS 的 Qualcomm®9206 LTE調制解調器,它能夠與全新的 LTE IoT SDK 配合,為開發者提供極具成本效益的低功耗終端工具。在此次開發者大會中,該調制解調器的 A7 核的可二次開發的 QAPI 和 SDK,也為開發團隊提供了諸多的便利。

36 小時,程序員可以開發出什麼?

Qualcomm® 9206 LTE 調制解調器

隨後,來自機智雲的市場總監李蓮健表示,機智雲作為全棧物聯網雲服務的領導者,根據不同角色的需求提供不同緯度的產品和服務,其 IoT 設備自助開發平臺,將以更低的成本、更快的解決方案,助力用戶快速追趕物聯網浪潮。今年二月,機智雲和 Qualcomm 聯合推出一款名為 GoKit4.0(G) 全棧 IoT 開發套件(以基於 Qualcomm® MDM9206 LTE 物聯網調制解調器及全新LTE IoT軟件開發包(SDK)的Quectel BG96 蜂窩模塊為特徵),支持 NB-IoT/eMTC 及電信網絡。

36 小時,程序員可以開發出什麼?

機智雲市場總監 李蓮健

在本次開發者大賽中,開發者可基於機智雲的 GoKit4.0(G) 開發板,快速實現智能設備數據採集、遠程控制等產品原型開發和驗證,並通過機智雲開發平臺代碼生成工具,調用 Qualcomm LTE IoT SDK 的相關接口/協議/工具用於產品研發等等。

36 小時,程序員可以開發出什麼?

機智雲 GoKit4.0(G)

最後,來自上海移遠通信的市場總監張欲與大家分享了 LPWAN(低功耗廣域)的技術演進歷程。他表示,移遠通信作為首批推出基於 Qualcomm9206 芯片組的多模 PWA 模組,將於明年計劃推出基於高通下一代 LPWAN 芯片的 BG35&BG17 模組。此外,他還詳解了於 2017 年推出的 BG36 技術原理,BG36 是一款集成式的 LTE Cat M1 和 Cat NB1 解決方案,支持最大上下行速率 375Kbps,並具有超低功耗。它在設計上兼容移遠通信 LTE 系列的 EG91/EG95、LTE Cat NB1(NB-IoT)系列的 BC95、UMTS/HSPA系列的 UG35/UG96 以及 GSM/GPRS 系列的 M35,可以方便企業或開發者快速、靈活地進行產品設計和升級。

36 小時,程序員可以開發出什麼?

上海移遠通信市場總監張欲

八強爭鋒,誰主沉浮?

正是基於以上的開發利器,進入八強的選手展開了為期 36 小時的編程馬拉松開發,如今大賽賽已完美收官,接下來,我們將一窺本場決賽究竟誕生了哪些值得期待的產品雛形,其未來商用的可能性又有多大呢?

No.1 壁掛爐遠程控制

拔得本次“Qualcomm LTE 物聯網應用開發者大賽”頭籌的是來自上海的 HVAC 工程師(Heating,Ventilation and Air Conditioning,供熱通風與空調工程)李小磊,他研發的項目為“壁掛爐遠程控制”。

36 小時,程序員可以開發出什麼?

李小磊

該項目的靈感主要來源於壁掛爐在生活中的不便,對此,李小磊解釋道:

  • 日常,時刻為供暖準備的壁掛爐必須保持常開狀態,這自然導致了能源損耗等問題;
  • 按照正常用戶習慣,家中的壁掛爐主要安裝於廚房或者陽臺等位置,因此當用戶想要調節溫度時,必須人工進行操作,耗時耗力;
  • 家用的壁掛爐時常會受到系統水壓的影響,當系統水壓很小時,會導致壁掛爐水泵燒壞,因此也需要人工檢查系統水壓;
  • 壁掛爐漏水時,用戶很難發現。

基於這些痛點,是否有比較好的解決方案呢?在此,李小磊通過各方考量,慎重決定將傳統的 HVAC 技術與新興的物聯網技術結合,希望可以通過遠程控制系統有效地改善以及提高壁掛爐的使用舒適性,為大家提供更節能、更智能的家居環境。

在本項目中,考慮到壁掛爐的安裝位置或許離家中的 WiFi 比較遠,從而導致信號不穩定的情況,李小磊決定採用了 NB-IOT 的連接方式,並基於 Windows 操作系統,探索出了以下的解決方案:

  • 使用 NB-IOT 的 module 將採暖溫度上傳到機智雲的雲端,通過手機 App 遠程控制壁掛爐開關,這樣用戶可以在下班前 2 個小時通過 App 打開壁掛爐,當下班到家的時候,既讓家裡溫度適宜,也不會浪費不必要的能源;
  • 對於以上第二個問題,可通過 open-therm(簡稱 OT 協議)接口將需要設定的溫度通過 App 下發給壁掛爐,使壁掛爐根據設定的目標溫度進行運行;
  • 通過遠程傳輸將系統水壓傳到 App 端,只需輕鬆點開 App,就可知道當前系統的水壓值,防止水壓過低將水泵燒壞。
  • 最後,檢測壁掛爐周圍溼度,並將信息傳到機智雲,任何地方App 輕鬆點開查看溼度。
36 小時,程序員可以開發出什麼?

項目系統圖

在整個開發項目過程中,李小磊表示開始之初在環境構建花費了一定的時間,此外由於國內 NB-IoT 的網絡部署並未滲透到每片區域,導致項目調試連接時總出現了連接不上網的狀況,不過慶幸的是,最終在機智雲工程師的幫助下,將網絡通訊時間延遲了 5 秒,解決了該問題。

當談及到參加此次編程馬拉松有何感受時,李小磊興奮地說道:“對技術開發者來說,這種賽制的比賽,是一種動力,既可以讓開發者更快熟悉這個平臺的使用,讓自己在短時間內獲得很多專業的知識,還能夠認識更多行業內的朋友,為未來的強力的開發帶來更多的思路。”

36 小時,程序員可以開發出什麼?

壁掛爐遠程控制項目產品圖

NO.2 超早期消防預警系統

獲得本次大賽第二名的是來自佛山和金科技有限公司和佛山大學共同組建的開發者團隊,其研發的項目名為“超早期的消防預警系統”,旨在對消防預警的系統的開發與研究。

36 小時,程序員可以開發出什麼?

劉勇和他的團隊

雖然當前我國的消防防火工作已經取得了一定成績,但往往因人們的消防防火安全意識不強、消防知識較為缺乏等因素,火災還是極為容易地發生。據研究發現,當火災發生時,可燃物質燃燒的面積會隨時間推移而擴大,一般 15 分鐘之內火勢就會達到很難控制的燃燒的階段,因此是否可以在火災還未到達即火災初期階段就能及時地發現火情並作出措施?

對此,該開發者團隊成員之一的劉勇表示,通過查閱中國科學技術大學馬綏華、張啟興博士的論文發現,當物體處於陰燃狀態的時候,空氣中許多細小的特有顆粒含量會迅速增加,與沒有火災隱患時候的顆粒含量有很大的區別。在這個基礎上,劉勇團隊利用高精度的傳感器、精密的電路和 Gokit4(G)搭建了硬件環境,並加上了大數據後臺分析,組裝成一個能通過分析空氣中特定顆粒濃度來判斷是否有物體處於陰燃階段的系統。

該系統的基本原理簡要來說,就是不同材質燃燒時釋放的顆粒對光反射的波長不同,來判斷是否有物體處於陰陽狀態。劉勇表示,這個系統主要由三方面構成:

  • 數據存儲,需要預先在大數據後臺記錄不同材質燃燒時產生的顆粒物反射情況;
  • 網絡通信,利用物聯網技術,用 NB-IoT 芯片發送實時檢測到的數據,到大數據後臺進行比對分析;
  • 自動報警,檢測空氣中特有粒子的含量是否超標。超標進行預警,及時報告火勢的發展情況。

通訊實現原理圖如下:

36 小時,程序員可以開發出什麼?

該系統相較於其他火災預警裝置究竟有何特別?對此,劉勇解釋道,該項目的先進之處在於這是利用互聯網技術打造的一個純新的網絡系統,它與傳統的不同是它在於能夠更早、更及時準確的發現有火災,然後能夠及時的預警減少傷亡。獨特之處在於現在的消防系統一般都是溫度傳感器,或者是煙霧傳感器,就該系統而言,它能夠實時檢測空氣中 20nm-0.8um 之間的粒子濃度,並開啟預警功能。其次,它還能分析出到底是哪種器件會燃燒,這對消防部門而言,可以更早獲得起火的類型,從而準備有針對性的材料,達到了更好的滅火效果。

36 小時,程序員可以開發出什麼?

超早期消防預警系統項目產品圖

NO.3 小型智能氣象站

本次大賽第三名的得主是來自北京的物聯網愛好者武志忠,其研發的項目為一個小型的智能氣象站。

36 小時,程序員可以開發出什麼?

武志忠

不同於傳統的氣象站單一的播報氣象功能,武志忠表示自已研發的小型智能氣象站可廣泛應用於氣象、農業、環境檢測和治理等領域。該項目開發的氣象站原型樣機,基於 Qualcomm MDM9206 的 BG96 轉接板模塊作為 SOC 控制器,以機智雲 Gokit4.0(G) 傳感器底板外接多種傳感器和控制器,實現多種氣象元素的採集,並上傳機智雲平臺。通過手機 App 實現數據展示,同時可以通過手機 App 遠程控制水泵開關,實現環境土壤溼度,如外接風扇或空調也可以實現空氣溫溼度控制。

結構圖如下所示:

36 小時,程序員可以開發出什麼?

當前,該項目已經實現了測量風速、土壤的溼度檢測、環境光照檢測、水泵的開關控制、環境溫溼度檢測、下雨指示、風向測量、PM2.5/PM 10 測量、雨量的檢測等功能。

從應用的角度來看,無論是 SOC 端、App 端,還是機智雲平臺運用,武志忠表示,其均可以作為一套教學案例,包括軟件設計的方向、機械設計、3D 打印、傳感器使用等方面,此外,該項目也可以應用於智慧農業大棚、家庭菜園、智能插座、智能鎖、室內環境監測控制。

談到對於本次參賽的有何心得時,武志忠建議,對於不熟悉和剛接觸的項目,首先要研讀文檔和原代碼;其次在開發過程中,要採用增量式開發,步步為營;第三點,和開發者多交流,畢竟三人行必有我師焉。

36 小時,程序員可以開發出什麼?

小型的智能氣象站項目產品圖

當然除了以上一二三等獎外,還有五名開發者/團隊榮獲入圍獎(以下排名不分前後)。

遠程控制和數據採集——面向小型無人駕駛系統

獲得入圍獎的有來自浙江的朱忠和貴州的王澤優共同研發的“遠程控制和數據採集系統”項目,它主要面向的是小型的無人駕駛系統,譬如無人車、無人船、無人機等無人設備。

36 小時,程序員可以開發出什麼?

朱忠(左)和王澤優(右)

而之所以會有這樣看似天馬行空般的想法,還是因為現實中無人系統操控的距離限制帶來的困擾。大多數情況下,當前的遙控器可遙控的距離不超過 3 km,這導致無人船、無人車、無人機等設備只能在有限的範圍內活動,侷限性太強。基於此,朱忠和王澤優二人一直在思考是否可以讓模型飛機或者模型船在到達一個足夠遠的地方時,還可以受到開發者控制且能夠查看該設備當前的狀態。

有想法不如付諸於實踐,由於時間限制,朱忠表示其團隊僅來得及開發出一個無人車模型,該模型相當於軌道自動巡航小車,實際上,這與我們平時聽到的自動駕駛效果相當。該模型基於廣覆蓋的移動網絡、GNSS 定位功能以及 A7 核心板等技術及硬件,可通過 App 直接控制車的前進、後退、轉向等功能,也可以實現遠程輸入軌跡,小車可以按照軌跡運行。

36 小時,程序員可以開發出什麼?

遠程控制和數據採集系統的無人車模型

基於高通和機智雲的 GoKit 4.0(G) 家用快遞櫃

由於送快遞時間的不定性,我們往往不是那麼容易湊巧順利地取到快遞。因此,當家中無人,是否也可以安心地收快遞呢?

基於這樣一個願景,來自北京的呂樹樳與李金穎帶來了“家用快遞櫃”項目。

36 小時,程序員可以開發出什麼?

呂樹樳

該項目主要分為設備端、服務端和移動端三大模塊。當收到快遞員電話時,用戶可以通過手機移動端遙控家用快遞櫃的開關,然後發送指令給服務端,最終設備端收集到門開閉狀態,並執行開門命令,之後當快遞員打開快遞櫃,系統會記錄開鎖時間,當快遞員放好貨品後關閉快遞櫃,系統也會記錄閉合時間,收貨人回家後開鎖,打開快遞櫃取件後關閉快遞櫃,系統同樣記錄操作和時間,至此整個流程結束。

36 小時,程序員可以開發出什麼?

技術架構

36 小時,程序員可以開發出什麼?

家用快遞櫃項目產品圖

物聯網圖形化編程平臺

其實就當前技術範圍較為廣泛的物聯網而言,很多開發者還是在入門時就開始了迷茫,根本不知道如何上手。在本次物聯網應用開發者大賽上,來自創客教育行業的資深創客劉大海為大家帶來了一款物聯網圖形化可編程的平臺,該平臺旨在為開發者降低物聯網的入門門檻。

36 小時,程序員可以開發出什麼?

劉大海

簡單來說,只要開發者有一定的邏輯基礎和鼠標使用技能,就可以實現心目中的物聯網的項目。就項目而言,其使用了 GoKit 4.0(G) 開發板,利用了藍牙、GPL、ADC、DAC 等特性,通過圖形化的硬件來降低物聯網的開發難度。此外,劉大海表示,自己還研發了一個 App 端的圖形化編程。該項目可分為幾個部分,一是設備端,即 App 可以調用手機功能,比藍牙等功能,當點擊後臺的‘+’時,就可以將設備上的功能添加到標準的模板中,而用戶可以將該功能移植到 App 中,在 App 中點擊該功能的按鈕時可以查看到其背後的邏輯和數據。

36 小時,程序員可以開發出什麼?

正是通過添加這些模塊再配套標準的模板,開發者就可以任意向裡面添加模塊,來實現自己不同功能的需求。

36 小時,程序員可以開發出什麼?

物聯網圖形化編程平臺項目產品圖

智能家居多路智能開關

萬物互聯時代,智能家居的應用的落地才真正將物聯網技術融入我們的日常生活。在本次大賽中,均有 7-8 年嵌入式開發經驗的開發者張國財和餘黔江為大家展示了的智能家居的智能開關項目。

36 小時,程序員可以開發出什麼?

張國財

之所以會有這樣的項目誕生,張國財表示這源於其創業的技術理念,當前市面上的智能家居產品大多是基 WiFi、ZigBee、BLE 等無線通信協議,依賴於家庭網關的聯網控制。而本項目將傳統智能家電設備接入 NB-IOT 蜂窩網絡,去家庭網關化,實現移動 App 隨時隨地的控制,以提高智能家居設備的靈活性並降低成本。

此次 36 小時研發的智能開關項目主要基於 Qualcomm MDM9026 NB-IOT 網絡,三路 AC 220V 輸出,單路額定負載 2500W。目前,該項目可成功控制照明燈、電風扇、窗簾電機的運行,並將設備狀態上傳到雲端和手機 App 端。

具體結構圖如下所示:

36 小時,程序員可以開發出什麼?

通過此次比賽,張國財表示可以與更多的開發者溝通交流,從中受益匪淺,但遺憾的是,因時間限制此次的項目還有不少 Bug 尚未解決,他相信未來該項目會有很大的發展空間。

36 小時,程序員可以開發出什麼?

智能家居多路智能空間項目產品圖

智能遙控家用電源控制系統

以技術為驅動的世界,諸如家中因跳電需要重開電閘這種事也可以躺在床上分分鐘搞定了。而這樣的項目出自浙江豐邦智能科技的王翦之手。

36 小時,程序員可以開發出什麼?

王翦

該項目的創意來源於目前電網的的智能化欠缺,當跳電或交完欠費單時,很多用戶還得人為合閘,耗時耗力。因此,王翦計劃改進傳統斷路器,以實現其自動重合閘功能,這樣設計出來的硬件不但可以裝在智能電網器上,也可以裝在用戶的家中。具體來說,它可以分開控制總電源、插座電源、以及各個房間的照明電源,從而可以讓不太好動的人們在床上、上班族在公司、商人在國外等場地進行實時控制及瞭解家中或公司及辦公室的用電情況。

總電源控制如圖所示:

36 小時,程序員可以開發出什麼?

王翦解釋道,通過控制器,後續可以在項目中把不同產品的用電量細化出來,從而用戶可以分別掌控家中的用電量。

寫在最後

至此,36 小時八組開發者團隊的成果已全部展現,對於參賽團隊來說,無論獲獎與否,這一次的參與都是對自己的一種歷練及提升。對於整個行業來說,可以通過短時間催生出諸多優秀的創意,為傳統下的企業注入新的活力,這未嘗不是一件好事。

而本次大賽的本質也正呼應了 Linux 創始人 Linus Torvalds 的經典名句: Talk is cheap,show me the Code!

那麼對於這一次的編程馬拉松大賽中,你最看好哪一個項目呢?歡迎下方留言,分享你的看法。


分享到:


相關文章: