<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 牛人業(yè)話 > 電路板狂人的鎮(zhèn)宅之寶

          電路板狂人的鎮(zhèn)宅之寶

          作者: 時間:2014-05-16 來源:網(wǎng)絡(luò) 收藏

            上面兩個板子是我業(yè)余時間幫一個研究生朋友設(shè)計的。前面一個主要是圖像采集和壓縮,然后經(jīng)網(wǎng)絡(luò)傳輸,后面的增加了NAND FLASH存儲和CMOS傳感器接口。

          本文引用地址:http://www.ex-cimer.com/article/246995.htm

          CMOS傳感器視頻采集板

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

          TMS320F2812電機(jī)控制+字符疊加板

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

            第一版硬件沒有做任何修改 實現(xiàn)了所有功能。通訊和菜單部分代碼是由另一位軟件工程師編寫外,其余系統(tǒng)整體設(shè)計及軟硬件設(shè)計由我完成。新方案達(dá)到128細(xì)分,加入了正余弦補(bǔ)償,轉(zhuǎn)臺 低速可達(dá)0.1度/秒,運(yùn)轉(zhuǎn)平滑順暢。驗證轉(zhuǎn)臺最高轉(zhuǎn)速可達(dá)到480度/秒,通過軟件設(shè)置增加電流后可以進(jìn)一步提高電機(jī)的轉(zhuǎn)速和加速度。配合專門訂做的步 進(jìn)電機(jī),優(yōu)化后的加速方案使得球機(jī)在低于原功耗30%的情況下轉(zhuǎn)速提高了50%,從停止加速到最高速只需0.33秒,電機(jī)運(yùn)轉(zhuǎn)時聲音非常低,控制板和電機(jī) 的發(fā)熱量也比原先減小了很多。另外,除個別函數(shù)使用匯編外,都改用了C代碼,使電機(jī)控制程序?qū)砜梢栽诓煌钠脚_上移植,也易于與其它控制程序接口。

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

          300度/秒加速曲線圖

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

          中文菜單疊加效果

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

          球機(jī)裝配效果圖

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

            移植完成后我便離開江蘇回到北京。一直到離職前一兩周才得到TI的TMS320F28027樣片。當(dāng)時想有時間的話可以把它用起來,并且把電機(jī)控制算法改一下,使它適用于自動跟蹤平臺,實現(xiàn)平滑跟蹤??墒蔷拖衩\(yùn)捉弄一樣,一直到今天都沒有閑下來過,時間都被這樣那樣的事給擠滿了,就連周六日也都像有導(dǎo)演 精心安排的一樣塞滿雜事。

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

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

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

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

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

          電路相關(guān)文章:電路分析基礎(chǔ)


          51單片機(jī)相關(guān)文章:51單片機(jī)教程


          電路圖符號相關(guān)文章:電路圖符號大全


          負(fù)離子發(fā)生器相關(guān)文章:負(fù)離子發(fā)生器原理
          離子色譜儀相關(guān)文章:離子色譜儀原理


          關(guān)鍵詞: 元器件 DSP LED

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();