[蘭州大學報]讀書讀來的研究靈感———無人值守遠程小型氣象站系統的研製

日期: 2021-04-27 閲讀: 來源: 關鍵詞:

三支隊伍的合照

用户組裝展示

STM32控制板

小型氣象站內部結構

上位機實際現實畫面

原創·首發·獨家

對於物理專業的學生而言,全國大學生嵌入式芯片與系統設計競賽既是一次聚集優秀物理學生的學術交流會,也是一場物理設計展覽、物理思維碰撞的芯片盛宴。為了這次比賽,蘭州大學物理科學與技術學院的三支本科生隊伍在李訓栓老師的帶領下,早早就開始了準備。其中2018級張雲龍團隊的“無人值守遠程小型氣象站系統”可以實現離網供電、遠程監測,為基礎設施不完善地區的氣象監測提供了可能;2018級李宇潭團隊的“基於雲平台的遠程智能水培系統”可以將雙手完全從人工種植中解放出來,實現科學、營養、徹底的自動種植;2019級周浩航團隊的“基於飛行測距模塊(TOF)傳感器的手勢識別與運用”可以用於隔空控制電腦、手機等終端,低成本實現無接觸的人機交互。

2020年11月25日至27日,作為從2009支隊伍中脱穎而出的3/69,他們在南京參加了第三屆全國大學生嵌入式芯片與系統設計大賽暨智能互聯創新大賽,分別獲得了全國二等獎、全國三等獎和全國三等獎。設計什麼?怎麼設計?為什麼設計?……一系列從無到有、從易到難的問題推着他們一步步朝前走去。不斷完善,永無止境,這個看似簡單的道理在這次科研的小嚐試中讓他們獲益良多。

2020年3月,因為疫情被困在家中學習的張雲龍偶然讀到一篇文章,文章介紹了氣象站的特點、作用以及全國範圍內自動氣象站快速發展的趨勢,並提到目前新疆、西藏境內的氣象站還不太完善。正是這一“不太完善”的判斷,讓張雲龍捕捉到了一絲做研究的可能性。他很快將自己的想法告訴了學院的李訓栓老師,經過一番商量,他們決定就此做一個項目,並將課題確定為“無人值守遠程小型氣象站系統的研製”,目的是研究一種可以實現離網供電、無線傳輸、實時監測的無人值守氣象站。

要完成這一氣象站的研製,既需要設計編程監控來實施監控當地的氣象狀況,又需要設計上位機軟件程序以實時接收氣象信息。由於項目涉及的工作量比較大,一個人很難完成,於是張雲龍詢問了同學李佳月,因為本來就對編程設計感興趣,李佳月非常痛快地加入了項目組。

商議過後,兩人決定選擇實驗室自主設計並製造的STM32F4系列單片機。之所以如此選擇,是因為這一芯片的內部資源非常豐富,有着豐富而完整的寄存器和外設功能,而且穩定性、靈活性、可編程性都很高。由於張雲龍之前有學習51單片機的基礎,他主動承接了STM32單片機的編程工作,而李佳月則攬下了她“更感興趣”的上位機軟件的編程與設計。

分好工後,兩人趁着假期簡單地瞭解了32單片機和上位機軟件,對即將展開的工作有了初步的理解和計劃。5月開學,經過李訓栓的系統培訓,兩人對單片機和上位機的瞭解進一步加深,很快就開始了正式的編程工作。由於李佳月大一時學習的編程語言是For鄄tran,而上位機軟件使用的是C#語言,李佳月的編寫過程並不算順利,“當時自學和培訓的時候覺得還行,自己真的上手寫還是有點難”。為此,李佳月只能邊寫邊學,遇到寫不明白的地方就反覆看文本、看視頻,一點一點修改自己寫的代碼,偶爾遇到實在解決不了的難題“也會求助李訓栓老師”,而李老師作為物理學院常年指導學生參加各種創新比賽的專業指導老師,不僅能夠非常迅速地看出學生的問題所在,還能積極引導學生自己發現問題、解決問題,“這樣學來的知識才是自己的”。

而張雲龍這邊,同樣遇到了一隻巨大的編程攔路虎,就是NRF無線傳輸編程。據張雲龍説,這種遠程傳輸編程比一般的傳感器編程難得多,又因為此前從未接觸過這方面的編程,寫起來就更難了。從他買回NRF板塊到寫完第一版代碼,用了整整三個月的時間。這段時間裏,他也是邊學邊寫、邊寫邊學,遇到難題就一遍一遍地閲讀技術指導手冊,“書都快要翻爛了”。遇到自己實在解決不了的難題,他會去32論壇上求助。32論壇是一個專門討論STM32單機片的網絡論壇,上面彙集了各種痴迷研究32單片機的人。張雲龍的問題發到上面後,一般都會收到比較滿意的答案,而他在論壇上看到自己擅長的問題,也會詳細地寫下解決步驟,“回答、提問,都是深化認識的過程,在論壇上確實學到了很多東西”。也許是論壇裏大家對技術的痴迷感染了他,也許是對無人值守氣象站的執念,張雲龍在經歷了無數次編輯不通過和嚴重死機後,依然沒有放棄。最終,他寫出了一個“還能用的程序”。但寫完程序的他並沒有特別開心,“總感覺還可以做得更好”。於是,他仍然保持着逛論壇、讀文獻的習慣,終於在紛繁複雜的文件資料中,他被姚作新的文章《基於北斗衞星短信通信方式的無人值守自動氣象站網》點醒了,其中提到的遠距離傳輸數據功能深深啓發了他。在和隊友商量後,他決定推翻已經寫完的程序,重新購買了一個可以容納遠距離傳輸的NRF模塊,重新編寫程序。由於此前好幾個月的死磕,這一次程序編寫很快就完工了,而張雲龍也因為“實現了長達1000米的遠距離傳輸”,真正宣佈了單機片編程的結束。在這一程序中,STM32控制整個系統,既能接收温濕度傳感器、風速變送器和顆粒物傳感器監測的數據,也能將數據實時傳給上位機,人們通過上位機就能遠程監控被監測地的氣象狀況。

由於疫情影響,主辦方推遲了比賽時間,按照原計劃完成編程的張雲龍和李佳月決定再設計一套自供電系統。經過大量查閲資料和深入學習,兩人決定利用太陽能電池和鋰電池製作供電系統。按照設計,當光照強度充足時,太陽能板吸收太陽能給電機供電,同時給鋰電池充電;光照不足時,就由鋰電池給電機供電,這樣就能實現離網供電,可以直接在電網設備不完善的地方使用。但是由於此前沒有相關經驗,也找不到可以直接借鑑的相關器件參數,兩人在購買器件上花了很多時間。太陽能板、鋰電池、升降壓電路、追光模塊等器件,在買回來組裝的過程中,有的是單個原件本身的指數不達標,有的是合成系統後參數不合適,都只能調整參數重新購買。在嚴格控制成本的理念支撐下,經過“不記得多少次”試驗,他們終於完成了自供電系統的設計,“比最初設想的還要好一些”。主要是為了減少對鋰電池的損害,他們在電路中增加了變壓模塊,當太陽能板給鋰電池充電時,降壓模塊會將電壓降到4V,鋰電池給電機充電時則會相應升高電壓,而且在光照強度不足時,電源充電管理模塊還會自動斷開太陽能板和鋰電池的連接,這樣就有效避免了鋰電池過度充電或者過度放電,進而延長鋰電池的使用期限。

一切工作完成後,張雲龍和李佳月開始對系統進行最終的整體測試,他們運用吹風機、加濕器等工具模擬天氣,多次測試後發現一切正常,發送端與接收端的數據傳輸滿足1秒一接收,NRF無限傳輸模塊可以實現長達1KM的遠距離傳輸,最多可以傳輸32個字符串。這樣的結果完全達到了張雲龍和李佳月的預期,可以應用於交通、供電、通信基礎設施都非常薄弱的偏遠地區,也可以滿足日益增長的對實時現場天氣信息的需求,可以幫助氣象局等相關組織對影響安全和操作的天氣條件做出相應對策。

張雲龍表示,作品還有很多可以改進的空間,比如“電源模塊可以增加控制功率模塊”“單片機和上位機軟件的通訊可以優化”“NRF無線傳輸模塊可以採用更好的技術”……在之後的學習中,他們會進一步專注專業學習、思考社會所需,爭取“做出更好的作品”。

(《蘭州大學報》第984期 2021年4月2日 第3版 教學科研)

發現錯誤?報錯
文:孔子俊,蔣雲鑫
圖:
視頻:
編輯:陳柄霖
責任編輯:許文豔

推薦關注

閲讀下一篇