電路板狂人的鎮宅之寶

第一次做電路板是讀高中的時候,從每週20塊錢的生活費裡省下一半來買元器件和材料。那樣糾結著做出了自己的第一塊電路板。敷銅板,透明膠帶,三氯化鐵,松香,焊條,現在想來還帶著那麼一種讓人難以釋懷的親熱勁兒。原理一知半解的,照著書上的原理圖在敷銅板上畫出線,然後用透明膠帶裁成細條粘到需要保留的部分,再放到三氯化鐵溶液裡腐蝕。一晚上起來看好幾次,翻翻攪攪,最後一次醒來發現漂亮的小板已經腐蝕好了。然後焊接調試……

可惜第一次以失敗告終,板子沒有調試成功。現在已經回憶不起當時的感受了,不過,肯定是十分美妙的,即便沒有成功,也有了很多欣喜!最重要的是,我從此邁出了自己的第一步。雖然摔倒了,但也從此開始體會到更多的快樂。遺憾的是現在已經找不到那塊對我來說意義非凡的板子了,不過,它留給我一串的美好回憶。

那一年,就是我的電子元年。

進了大學就像放歸了草原的餓羊,看見綠的就想啃,抱本書就捨不得放。專業的書看起來沒夠,紮在圖書館就懶得出來(我們學校一般,不過,圖書館藏書還是著實不錯的)……可是,因為沒有基礎,學的又沒有條理,所以學起來很費勁。還好,我有世界上最強大的導師——興趣。

雖然高中的時候做了第一塊電路板,但實際對電子知識還是很懵懂。大一是我開化的一年。這一年在系裡的電子科協做了不少電子製作:電子感應查線器,早上太陽出來會叫的鳥,循環閃爍的燈,手觸延時的開關……都是一些比較簡單的小製作。

大一在電子科協做義務維修的過程中翻閱了不少模擬電路相關的書籍和資料,知識和動手能力得到了很大的提升。

大二的時候啃書為主:數電,模電,單片機,DSP,X86,VHDL……見什麼啃什麼,雖然啃不出味,但也能充飢。當時就通過這樣硬填的方式雜七雜八的學了一堆東西。不過,也算 因禍得福,正因為當時那樣沒有條理的亂學東西,所以瞭解的知識面比較寬,填的也還算紮實。內功紮實了,再學套路就比較快了。

大二的時候做了聲音採集 板,音調調理板。當時還做了一塊DSP板,使用的主芯片是TMS320C5402。不過,又是以失敗告終了。起初仿真器還能連DSP,後來過一段時間就連不上了。之後分析應當是CPLD邏輯導致的總線衝突燒壞了DSP。當時對DSP和高速設計的理解還不行,從那次的失敗裡我又學習到很多新東西。一直很感 激當時學校的老師為我提供的那些做板的機會,也慶幸自己是在那所學校讀書,好些的學校或差些的學校都未必能有那樣的機會。

電路板狂人的鎮宅之寶

音調調理板

可惜當時都沒有留下照片,現在連電路圖也找不到幾張了。上面是音調調理的板子,可以控制高、中、低頻的增益。現在看著老土了,瞅著它,感覺就像看著自己小時候的照片,呆呆傻傻的,卻又滿溢著溫馨和甜蜜……

大三上學期參加了全國大學生電子設計競賽,製作的30M數控正弦波發生器。比賽過後利用週末時間在廊坊一家公司兼職做電子節能燈設計。也是從那時起,自己研發的東西開始量產並進入人們的日常生活。

電路板狂人的鎮宅之寶

USB主機接口板——現在看當時真的把蛇形線畫的太“幽默”了

大四以學習和畢業設計為 主。畢業設計是做USB主機,不過,時間比較緊,方法也不得當(當時是想著自己寫所有代碼),最終還是沒有調試完就到了畢業的那一天。現在想想的話有很多省事的方法,實現起來也比較簡便。大四期間也零星做過一些兼職。現在天津很多公交車前面的LED顯示牌就是我那時候做的。到現在每次迴天津的時候都能看到載著自己LED車牌的公交車,總會有一種莫名的親切感。

電路板狂人的鎮宅之寶

動態LED驅動核心板——當時想捲動中國高校風潮的凌陽61單片機

也是大四那年犯了刻骨銘心的一個錯誤。當時做一個高亮LED驅動板,準備用於替換公交車上的一些顯示固定的車牌,那樣就不用為不同的公交車做不同的顯示牌了。當時MOS管使用不當,導致了項目的失敗,成為自己很大的一個遺憾……

05年畢業後在華為數通產品線做硬件測試。這一年積累並強化了很多專業知識,分析問題解決問題的能力也得到了很大的提升。

電路板狂人的鎮宅之寶

高速球中的電源及協議板

06年離開北京到天津一家 安防公司做研發工作。主要從事高速球的研發。先是基於51單片機平臺的產品改造和升級。成功完成幾次產品升級並得到單位的認可後,便開始著手DSP項目設 計。這次使用的DSP是比較高端的視頻處理器——TMS320DM642,現在幾乎所有接觸視頻硬件的人都聽說過的一款經典型號,它也是至今很多新型視頻 處理DSP運算性能評估的一個標尺。但在06年,DM642的資料還是相當難找,而我們只有幾個人的小單位,又得不到TI和其他有效的技術支持。而且由於經費和精力有限,我們要求只能一版成功,硬件由我設計,軟件和算法由另外一名工程師負責。

困難就不多說了,大概三個月後,我們自己的DSP板小系統調通了。也是那時候,我們單位負責軟件的工程師出國,項目便擱置了。

電路板狂人的鎮宅之寶

TMS320DM642視頻板——被我拍的破相了

這就是我的第一塊DM642視頻採集板。開發過程中沒有任何開發板參照,只能在網上四處蒐羅資料,查看大量的數據手冊和文檔。單位要求一版成功,終於三個多月用四層板實現了這個設計。

自己花了挺大精力做出來的 板子被這樣封存起來,心裡還是挺難受的。當時DM642的資料很難找,設計中的各種艱辛只有做過的人才有體會。而DM642的確是當時很有應用前景的一個 芯片。於是後來把設計做了一些刪減和更改,將完整工程公佈到了網上,包括PROTEL99格式的原理圖、網表和4層的PCB文件(後來還在自己博客陸續補 寫了設計說明以及CPLD邏輯等)。後來還發布了針對這個PCB的SDRAM仿真過程及結果,以供別人借鑑參考。只希望能為後來做DM642的工程師朋友提供第一手的資料,減少一些困難,縮短開發時間,也為很多中小企業節省一些不必要的經費開支。

電路板狂人的鎮宅之寶

錯誤修正後的DM642視頻採集板

電路板狂人的鎮宅之寶

帶NAND FLASH和數字傳感器接口的642採集板

上面兩個板子是我業餘時間幫一個研究生朋友設計的。前面一個主要是圖像採集和壓縮,然後經網絡傳輸,後面的增加了NAND FLASH存儲和CMOS傳感器接口。

電路板狂人的鎮宅之寶

CMOS傳感器視頻採集板

這個CMOS傳感器板是 2010年初做的,配合前面的DM642板完成了CMOS圖像的採集。傳感器選用MICRON的MT9V032。該傳感器具有全局曝光功能,可以拍攝快速 運動的物體,不會像逐行曝光傳感器那樣存在運動物體傾斜。經過對比,這顆傳感器在暗光線時性能超過一般的CCD傳感器。

電路板狂人的鎮宅之寶

TMS320F2812電機控制+字符疊加板

這個是我2007年做的高 速球轉檯控制板,完全更改了以前基於雙51單片機的設計方案。雖然從51平臺升級到DSP平臺,但整體成本沒有明顯的增加。利用一片DSP代替了兩片 51,使系統結構簡化;利用DSP的SPI、PWM配合一個LM2903比較器和一個模擬切換芯片實現了中文菜單疊加,省去了一顆日產OSD疊加芯片;電機控制採用新的單顆DMOS工藝美產芯片,替換了兩顆日產電機控制芯片;使用DSP的PWM加阻容濾波實現了4路DA,用來控制電機電流,省掉了一顆4通 道DA。重新設計了步進電機控制算法和加減速方案,並且針對實測結果對正餘弦進行了補償。

第一版硬件沒有做任何修改 實現了所有功能。通訊和菜單部分代碼是由另一位軟件工程師編寫外,其餘系統整體設計及軟硬件設計由我完成。新方案達到128細分,加入了正餘弦補償,轉檯 低速可達0.1度/秒,運轉平滑順暢。驗證轉檯最高轉速可達到480度/秒,通過軟件設置增加電流後可以進一步提高電機的轉速和加速度。配合專門訂做的步 進電機,優化後的加速方案使得球機在低於原功耗30%的情況下轉速提高了50%,從停止加速到最高速只需0.33秒,電機運轉時聲音非常低,控制板和電機 的發熱量也比原先減小了很多。另外,除個別函數使用匯編外,都改用了C代碼,使電機控制程序將來可以在不同的平臺上移植,也易於與其它控制程序接口。

期間我用EXCEL重新制 作了加速表格,主要依託於電機功率來自動完成加速表格數據設計,生成DSP中控制電機運轉所需的所有數據。另外,還會伴隨參數調整自動生成加速曲線圖,可 以直觀的看出電機加速過程,並有助於分析其中可能出現的問題。避免出現某些特殊點或段存在加速功率需求過高而導致丟步的現象。

電路板狂人的鎮宅之寶

300度/秒加速曲線圖

這個圖便是大家常稱的S加速曲線,前段緩慢加速是防抖動和避免頓挫感,後段則主要是等功率升速曲線。圖中只取到了300度/秒,可以通過在EXCEL表格中向下拖拉填充自動生成後面的數據。

電路板狂人的鎮宅之寶

中文菜單疊加效果

這個是菜單疊加效果。通過LM2903比較器提取複合同步脈衝,判斷到行同步後使用SPI的16字的FIFO完成每行256點的疊加點位輸出,PWM+阻容濾波實現疊加電平控制。

電路板狂人的鎮宅之寶

球機裝配效果圖

08年公司被收購,我們部 門遷到江蘇,在江蘇近一年的時間進一步完善了基於F2812的高速球。其實在設計這個方案的時候是瞄準了TI當時還沒有推出的TMS320F28027這 一系列,看TI的宣傳以及提前發佈的芯片資料,這顆芯片批量價格應該可以在20元以內,性能和功能可以滿足我們的設計需求,只要芯片一出來,馬上就可以把 F2812上的程序移植過去。這樣,整體的成本會往下降一大截,體積也可以小很多,控制板大致可以做到火柴盒的大小。後來公司做基於DM6437的智能高 速球,除智能算法外,還剩餘一些運算資源。我便把F2812裡的電機控制算法移植到了DM6437裡。在單一芯片裡集成了智能分析和電機控制,使系統得到 了很大簡化。

移植完成後我便離開江蘇回到北京。一直到離職前一兩週才得到TI的TMS320F28027樣片。當時想有時間的話可以把它用起來,並且把電機控制算法改一下,使它適用於自動跟蹤平臺,實現平滑跟蹤。可是就像命運捉弄一樣,一直到今天都沒有閒下來過,時間都被這樣那樣的事給擠滿了,就連週六日也都像有導演 精心安排的一樣塞滿雜事。

關於電機控制,我寫過一個 PPT文檔《步進電機細分控制原理及仿真分析》,並將其共享到網絡上。其中分析了步進電機細分控制原理,以及其中存在的問題和需要注意的地方。並且利用 MULTISIM建立了驅動電路仿真模型,針對各點電壓和電流仿真波形進行了分析。以供別人借鑑參考,希望那些對電機控制感興趣的朋友能夠快速入門並且瞭解步進電機控制的關鍵所在。電機控制是一門看似簡單實際有著自己完整理論體系的科學,三年前,我在江蘇一個二線城市拿到13.5K的工資,主要靠的就是步進電機控制。實際上,對於真正的電機控制來說,我也就是剛瞭解了步進電機控制裡的一些皮毛。電機控制這方面還是很缺少能深入的人才的。

電路板狂人的鎮宅之寶

基於FPGA的圖形疊加板(正面)

電路板狂人的鎮宅之寶

基於FPGA的圖形疊加板(反面)

上面的圖形疊加板是我09 年做的一個項目。當時從江蘇回到北京有三個月沒有上班,就在大興一所民宅蝸居了三個月做這個東東。因為項目要求體積很小,而且又要3個串口,對疊加質量和 分辨率又要求很高。最後只能用FPGA內嵌軟核的方式才能實現。用ARM或DSP都無法完美滿足所有要求。

因為前面接觸過CPLD,也有一些邏輯方面的基礎, 3個月期間邊學邊試,還算順利的完成了所有的硬件和軟件設計。第一次使用軟核之後就深深的喜歡上了這架構,強大的性能和獨有的靈活性讓人禁不住用過一次就會愛上它。

這個板子第一版存在一個問 題,因為採用三極管做視頻鉗位,三極管的BE結之間的電壓有一個-2.1mV/℃的溫漂。當時沒有太在意這麼小的一個參數,最終環境實驗時高低溫100度的溫度變化導致了210mV的視頻同步頭電平偏移,致使同步脈衝提取出錯。後來在電路中加入了二極管做溫度補償才解決問題。

電路板狂人的鎮宅之寶

FPGA疊加效果圖

這塊板子可以實現從黑到白 的多種灰度疊加,並且支持自動生成黑邊,可以接收從3個串口來的控制信息及要顯示的數據,用於進行控制操作或將傳感器反饋的數據顯示在特定的位置。疊加分辨率為640*540,一個疊加主圖像和三個數據顯示窗口位置都能夠水平垂直以1像素進行移動。

電路板狂人的鎮宅之寶

基於DM642的數據採集系統

這個是09年做的一個數據 採集板,幫一個朋友畢業設計做的。腦殘級的方案,用DM642做一個幾十K的AD採集。哈工大的一個博士逼著一個碩士做的,估計是那博士是對DM642有 別的想法吧,不告訴碩士幹什麼用,就讓做出這麼個東西。剛好碩士是我朋友,最後找到我幫忙……結果這個項目成為我歷史上最失敗的項目之一,本來一個低端 FPGA就可以搞定的東西,非要用DM642來實現,數據格式轉來轉去的……最後一個細節沒注意到,飛了好幾根線。而且總趕時間,板子佈局醜得讓自己一直耿耿於懷。正如一個朋友說的,對工程師來說,最痛苦的莫過於做自己不認同的設計。

電路板狂人的鎮宅之寶

EP3C10核心板

2010年做的一款 FPGA核心板,使用國內剛上市不久CYCLONE III 系列中的EP3C10,搭配32M的DDR2芯片。板子主要是用於實現一些簡單的音、視頻處理和數據採集及處理。通過內嵌NIOS軟核配合剩餘邏輯加上高速DDR2,再結合NIOS軟核特有的C2H硬件加速,可以滿足常用的絕大多數中小規模應用需求。

電路板狂人的鎮宅之寶

視頻疊加板2.0

電路板狂人的鎮宅之寶

智能驗鈔機算法板

這是我09年在江蘇的時候 利用業餘時間做的智能驗鈔機系統硬件,使用CIS傳感器掃描錢幣在不同光譜下的圖像,然後由TMS320DM642對圖像進行分析鑑別。算法部分是我現在所在的清華大學實驗室做的。後來還進行過幾款基於DM648的驗鈔機硬件設計,可同時進行雙面圖像採集並進行處理。

電路板狂人的鎮宅之寶

基於OMAP3530的視頻系統

這個是新近完成的一個設 計,使用的OMAP3530主芯片。OMAP是前兩年TI推出的高性能雙核處理器,一個BGA內集成了600M主頻的ARM CORTEX-A8 內核和430M的64+ DSP內核,另外還集成有POWERVR SGX 3D加速協處理器。其ARM內核性能是普通ARM9的4倍,DSP內核性能大概相當於一顆600M DM642的處理能力。使用集成LPDDR2和NAND FLASH的MCP存儲器和專用電源管理芯片,結構緊湊,功能強大,整體功耗非常低。


分享到:


相關文章: