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

          新聞中心

          EEPW首頁 > 物聯(lián)網(wǎng)與傳感器 > 設(shè)計應用 > 攝像頭智能車硬件設(shè)計方案

          攝像頭智能車硬件設(shè)計方案

          —— Design of CCD Smartcar
          作者:清華大學三角洲CCD隊 方川 曾龍 魏弘川;指導老師陸耿 劉誠哲 時間:2010-03-09 來源:電子產(chǎn)品世界 收藏

            摘要:本文主要對車模整體設(shè)計思路,硬件與軟件設(shè)計及車模的裝配調(diào)試過程作簡要的說明。通過實時對自身運動速度及方向等進行調(diào)整來“沿”賽道運動。運動策略的制定主要是依靠對傳感器得到的道路及行駛信息進行采集、分析、決策、執(zhí)行四個步驟來進行的。

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

            傳感器電路設(shè)計
            延續(xù)往屆的傳感器方案,今年仍然采用了作為傳感器,但采用了信號質(zhì)量更佳,黑白對比度更大的Sony系列,當安裝高度為30cm,俯角為30°時,其最大黑白電壓差可達到1V。

            為了從輸出的PAL制式信號中提取賽道信息,秉承硬件二值化的指導思想,將灰度圖像轉(zhuǎn)換成黑白圖像,由于普通I/O和PAC的操作速度要比A/D快,可提高分辨率和前瞻。通過硬件預處理提取賽道信息,目前有兩種主要途徑:微分邊緣檢測和閾值比較檢測。

            微分邊緣檢測:通過數(shù)據(jù)采集程序效率的優(yōu)化,在總線頻率24MHz條件下可以準確捕獲寬度1.5ms的黑線信號。并可以達到1200多的行分辨率和很高的中心解析精度。在直道上,由于遠處的黑白之間的電壓差較小,遠處的賽道信息提取不到,得到的預處理圖像是不可信的。另外,在近處也經(jīng)常發(fā)生丟失賽道邊緣的情況。

            數(shù)字閾值比較檢測 :利用快速A/D采集CCD信號,MCU輸出信號作為閾值與快速A/D得到的信號通過數(shù)字比較器得到二值化信息。 這個電路的優(yōu)勢在于可以通過MCU輸出不同的閾值從而得到良好的信噪比,另外,快速A/D得到的信號可以輸入給單片機,硬件預處理效果不佳的時候可以切換到片外A/D模式,使算法更加靈活。但由于單片機的計算能力有限,切換到片外A/D模式之后數(shù)據(jù)量過大,最終沒有采取這種方案。

            模擬閾值比較檢測 :模擬閾值比較檢測與上述數(shù)字閾值比較檢測原理相似,只是用D/A輸出閾值與CCD輸出信號進行比較得出賽道信息。該方案可以達到3m的直線前瞻,1.5m的彎道前瞻,但該方案最大的缺點就是受光線的影響較大,如果不事先適應場地光照條件,信號質(zhì)量難以保證。最終我們采取了第三種方案,圖1是最終版本的模擬閾值比較電路,利用LM1881芯片獲得行同步信號和場同步信號使單片機(MCU)與CCD保持同步,采集每行的邊沿信息得到賽道信息。

          模擬信號相關(guān)文章:什么是模擬信號


          攝像頭相關(guān)文章:攝像頭原理

          上一頁 1 2 3 下一頁

          評論


          相關(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); })();