从零开始研发GPS接收机连载——1、想法的萌发
提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔
從零開始研發GPS接收機連載——1、想法的萌發
- 前言
- 預期的目標
- 硬件平臺
- 總結
前言
堅持寫博客也已經半年了,很慶幸目前還在堅持,而且勁頭也還沒有減少。每一篇博客要么是經過了自己的思考、要么是經過了自己的實操、要么是自己總結了經驗,還是非常認真對待的,絕大部分博客寫下來所花時間短的兩三個小時,長的五六個小時都有。那花這么多時間寫博客的目的是什么?當然不是為了做雷鋒了,最重要的就是為了自己回顧知識,同時展示自我了。盡管寫這些東西大概率對我不會帶來什么本質的變化,但可以當做一個知識素材的原始積累吧,積累了記錄了總比隨著時間消散了還是強多了。
但之前的知識越來越模糊了,不去回過頭來實踐一下是很難完全撿起來了的。所以最近突然就有了一個大膽的想法,要在家里利用手中的資源來開發一個GPS接收機。
預期的目標
利用手中的資源開發一個GPS接收機?當然不是簡單的買一個現成的ublox模塊來輸出定位信息就完事了啊,我的想法是從捕獲、跟蹤、解算全流程都在FPGA中實現了,一般來說這往往是需要一個團隊才能搞定,但現在我要看看一個人能不能搞定。因為有了之前的基礎,我感覺自己還是有信心的,但也不敢說能夠實現,也許這個連載寫著寫著就寫不下去了也是有可能的。
很長一段時間,我是以全棧工程師的目標來要求自己的,盡管目前越大的公司分工越細,各個專業間的壁壘也是越來越厚,但我也是本著能多學一點是一點的想法,各個專業都希望去涉獵一點。特別是后面在一家創業公司后,這種”全棧”的能力得到了很大的鍛煉,當然了越小的公司就越希望你啥都會,最好是你一個人全包了最好了。
但”全棧”并不意味著全部都精通,這也是不可能的。在精通FPGA的基礎上,把與FPGA交互的一些專業也能做到有所熟悉,如果能夠達到其他專業的工程師一兩年的水平,無論是對于你排查問題的思路,工作的效率都能有極大的提升,因為你又多了純FPGA工程師不具備的一些手段來解決問題,甚至在某些關鍵的時候能夠脫穎而出。
研發一個GPS接收機涉及的內容如下圖,涉及的內容和專業還是非常多的。其他的東西都有信心能夠搞定,但硬件實在不行,我曾經不止一次想自學硬件,包括原理圖和PCB這些東西,但到后面都是從入門到放棄。所以我很佩服那些又會硬件又會軟件的人,估計我是沒有機會能夠學會硬件了。
硬件平臺
那如果沒有硬件那豈不是空中樓閣,怎么搞得起來呢?
其實我應該算是一個無線電愛好者,從學校開始到現在各種開發板之類的七七八八的也差不多買了將近上萬塊錢了。還是很舍得給自己投資的。
1、 從最開始的51單片機最小系統
這是大學的時候搗鼓這些東西
2、 CYCLONE II FPGA開發板——我的第一塊FPGA開發板
盡管當時實驗室有不少板子可以調的,但我還是希望有一塊自己的板子。實驗室板子都是XILINX的V4、V5系列的,再當時還是很高端的。但當時還是學生嘛,也就囊中羞澀了,花了四五百塊買了個黑金的Altera CYCLONE II的開發板。因為當時xlinx的開發板不多而且還貴,滿淘寶都是Altera的板子,所以也就沒得選了。
3、 CYCLONE III FPGA開發板
只所以買第二塊FPGA開發板,是因為當時我突然了解到CYCLONE III或者IV器件支持通過在線升級FPGA,例如通過串口升級FPGA。當時我被這種功能強烈吸引了,但我手上的CYCLONE II卻不支持這種功能。就是為了單純想自己實現這個功能,咔擦,花一千大洋搞了一塊CYCLONE III的開發板。欣慰的是最后還真讓我實現了這個功能。只是現在真的太久沒用過ALTERA的板子了,基本上不怎么記得怎么實現的了。
4、 野火ARM開發板
對于這個開發板我實在是不知道該說啥,也是一時興起,幻想著能夠也精通ARM。結局就是 從入門到放棄!
這個板子就不了了之了,也是花了至少七八百。
5、 MiniEye開發板 AD9363 + zynq7030
這是我買的最貴的一個開發板了,2500大洋。教程基本都消化了一遍,基本都是視頻教程,目前已經看不到了。但板子卻沒怎么用起來
6、 HackRF One 軟件無線電平臺
這個東西是在疫情剛開始的時候買的,這東西也花了一千多,正好在換工作的空檔期間,就想買一個這個來玩一玩,聽說能模擬和接收各種信號,例如GPS、LTE信號等。甚至還能接收民航客機的無線電等等。盡管有很多功能我都沒去折騰,當時作為GPS模擬器還是知道怎么弄了。這樣對于我現在要開展的工作也就夠了
7、 簡易信號源
支持137.5M~4400M的頻率的信號源,只要兩百多塊錢,還能要求啥。買了
8、 簡易頻譜儀
號稱支持35M~4400M,但效果真的是不太好,只有將SPAN打成350MHz的時候,勉強看起來還算正確,只要SPAN打小點立刻就會失真很嚴重。所以這東西感覺有點雞肋。花了五百多塊錢買的淘寶貨。還能要求什么呢。
說了這么多,要準備干一番大事了。我現在主要能用的資源就是
1、 MiniEye開發板 AD9363 + zynq7030
2、 HackRF One 軟件無線電平臺
3、 簡易信號源
4、 簡易頻譜儀
因為接收機只要接收,頻譜儀基本用不上(基于它這個性能,其實根本也用不了,/(ㄒoㄒ)/~~)
信號源可以用來測試點頻,來驗證ADC是否能夠正常接收信號。
最重要的就是AD9363 + zynq7030開發板和HackRF One 軟件無線電平臺
AD9363 + zynq7030開發板就是接收機的主體了。
HackRF One 軟件無線電平臺作為GPS模擬器。
為啥不直接接天上的信號呢?
1、 我住的地方高樓林立,可見天被遮擋了大半,不清楚當前時間天上衛星狀況
2、 不想在買GPS有源天線,而且這個AD9363 + zynq7030開發板的RX SMA頭估計沒有饋電輸出,無法驅動天線低噪放。
所以估計就怕到天線等東西準備好了還是無濟于事。
因此采用GPS模擬器來進行測試。好處肯定顯而易見了:模擬器出來的信號強度可以控制,而且模擬器信號中包含多少衛星信號也是已知的,可以先直接拿手機接收信號來確認衛星信息。
最后,曬一張硬件平臺的真容:
鄙人房子太小,為了充分利用空間,在陽臺的墻上搭了個臺子。O(∩_∩)O哈哈~
總結
通過這個系列,希望能夠從算法、FPGA、嵌入式開發、Linux等方面做一個全面回顧,以博文的形式做好記錄,為博文添加素材,同時也對知識技能做好管理,以免自己的知識技能隨著時間而流失。
當然了,對于大家想參考的話,連載文章只提供思路,和一些方案。文章中是不會提供詳細的代碼的,學武功沒有捷徑,靠的就是自己的主觀能動性和日積月累
最后要說的是,這是一個巨大的工程,本人寫這篇文章的時候,工作完全還沒有開始,因此連我自己都不知道到哪個節點會不會卡住無法進行下去而被迫中止,畢竟個人的能力還是有限的,只能希望不要有這種事情發生。
總結
以上是生活随笔為你收集整理的从零开始研发GPS接收机连载——1、想法的萌发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql 水晶报表_Crystal R
- 下一篇: [256个管理学理论]006.刺猬效应(