在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于CPLD器件和ad9048轉換器實現CCD自動增益系統的設計

電子設計 ? 來源:電子元器件應用 ? 作者:趙斌,劉春浩 ? 2020-06-22 07:57 ? 次閱讀

ccd(charge couple device)是一種電荷藕合式光電轉換器件。在物體位移測量系統中,常常以ccd作為位移傳感器。當一束曝光器發出的激光照射到被測物體上并發生漫反射時,反射光將經透鏡聚焦后成像在ccd上,以使ccd光敏單元感光,從而產生轉移電荷。這樣ccd驅動電路就會產生一定頻率的驅動脈沖以反映物體位移信息,輸出的信號模擬信號。經a/d轉換后,便可由后續處理電路采集和運算。

實際測量工作中,由于工作環境、光照強度或被測物體的不同,會使得照射到被測物體表面的激光束的反射率變化比較大,因此,ccd上成像點的光強就會時強時弱。ccd光敏單元在過強或過弱光線照射下,會產生過飽和或不飽和的電荷,從而使輸出的模擬信號不能滿足數據采集要求,因而不能真實反映被測物體的位移信息,影響最后計算結果的準確性,而產生了較大的誤差。鑒于以上原因,為了能夠得到準確的被測物體的位移結果,應使ccd測量系統輸出的模擬信號峰值盡量穩定在某一范圍內。

cpld復雜可編程邏輯器件具有集成度高,體積小,速度快等特點。通過cpld能夠以廠家提供的cad工具為開發平臺,結合原理圖編輯與vhdl語言軟件編程,以在cpld中實現數字硬件中的大多數邏輯電路。因此,本文所設計的ccd自動增益系統的核心部分選用cpld來實現。

ccd信號的自動增益調整

ccd傳感器輸出的模擬信號與入射光光強、幀轉移頻率有關。其大小隨入射光光強的增大而增大,隨幀轉移頻率的增大而減小,因此,通過改變入射光的光強或幀轉移頻率就可以調整輸出的模擬信號峰值。本系統就是采用調節幀轉移頻率來達到自動增益調整的目的。

一般情況下,幀轉移脈沖由ccd驅動電路輸出,其頻率大小直接影響ccd傳感器的積分時間。幀轉移頻率越小,傳感器積分時間越長,相應地,ccd傳感器曝光時間也越長,光敏單元捕捉到的光量也越多。當幀轉移頻率過小時,光敏單元所產生的光電電荷就會達到過飽和狀態,輸出的模擬電壓峰值將會超過所要求的范圍。反之,輸出的模擬電壓峰值將會低于所要求的范圍。因此,可設計一個ccd輸出電壓峰值的采樣、保持電路,再對此峰值進行a/d轉換,同時與所要求的范圍進行比較。當其超出范圍值時,可增大幀轉移頻率;而當其值低于范圍時,則可減小幀轉移頻率。

系統整體結構

這種基于cpld的ccd自動增益調整驅動電路的整體結構如圖1所示,該系統共分為兩部分。第一部分為模擬/數字轉換電路,該部分采用一個轉換精度為8位的a/d轉換器來將ccd輸出的模擬電壓值轉換為數字量。第二部分為可自動調整增益的ccd驅動電路,此部分采用cpld進行配置,可自動完成增益調整及ccd驅動信號的輸出,并可為a/d轉換器提供轉換控制脈沖。

a/d轉換部分

ccd的輸出信號為模擬量,故須經a/d將其轉換成數字量,以便cpld進行處理。在本設計中,a/d轉換器采用的ad9048可工作在35msps的高速上,由cpld產生的單位轉移脈沖sp可為其提供轉換控制脈沖convert。在convert的上升沿到來后,a/d9048對ccd相應象素點上輸出的模擬電壓值進行采樣,并在convert下降沿到來之前輸出轉換結果,該結果由cpld寄存并最終得到一幀中ccd輸出的模擬電壓峰值的大小。

可自動增益的ccd驅動電路設計

此電路利用cpld設計,其內部可劃分為四個模塊(如圖2所示),整個芯片所需的時鐘由外部晶振或振蕩電路提供。

第一個分頻模塊dispart用于對外部時鐘進行一到八倍的分頻。第二個模塊mul tiplexer是一個多選一模塊,由compare控制。第三個模塊compare用于對a/d轉換的結果進行寄存,并將一幀結束后得到的ccd輸出電壓峰值與所設定的閾值進行比較,若超出閾值上限則輸出結果減一,multiplexer選出頻率較高的一路時鐘作為driver的輸入時鐘脈沖;反之,則對compare的輸出結果加一,multiplexer選出頻率較低的一路時鐘作為driver的輸入時鐘脈沖。第四個模塊driver用來產生驅動ccd的信號及一位單位轉移信號。

當multiplexer選出頻率較高的一路脈沖作為driver的輸入時鐘,再由driver產生ccd驅動信號時,驅動信號中的幀轉移脈沖sh頻率就會增加,從而使ccd傳感器的曝光時間變短,ccd輸出的模擬電壓峰值降低;反之,sh頻率減小,曝光時間變長,ccd輸出的模擬電壓峰值升高。這樣,通過以上過程,便可調節ccd模擬電壓峰值的范圍。

本設計應用的ccd器件為tcd1201d,采用二相驅動脈沖工作,驅動電路要產生六路工作脈沖,其中五路用作ccd提供工作脈沖,分別為幀轉移脈沖sh、電荷轉移脈沖t1、t2、復位脈沖rs、補償脈沖bt;另一路為單元轉移脈沖sp。此六路脈沖由cpld中的driver部分產生,此部分可用硬件描述語言vhdl進行設計。

產生補償脈沖bt和單元轉移脈沖sp時,由于bt占空比為2:1,因此應對輸入的時鐘脈沖三分頻,低電平占時鐘脈沖一個周期,高電平占時鐘脈沖兩個周期,其具體的程序部分如下:

process(clk)

begin

if(clk’event and clk=‘1’)then

counter1<=counter1+1;

if counter1=2 then

mbt<=‘0’;

counter1<=0;

else mbt<=‘1’;

end if;

end if;

bt<=mbt;

sp<=mbt and(not msh2);

end process;

該器件有2048位有效像元,工作時還要有46位啞像元輸出,一個掃描周期至少應有2094個像元時鐘周期,由于該器件兩并行輸出,因此,一個幀轉移周期內的t1、t2至少分別有1047個脈沖。由于t1、t2的周期相等,方向相反且周期為bt周期的二倍,因此,產生sh、t1、t2的程序進程如下:

process(mbt,clk)

begin

if (mbtevent and mbt=‘1’)then

mt<=not mt;

end if;

if(clk’event and clk=‘1’)then

t1<=mt and (not msh2);

t2<=(not mt)or msh2;

end if;

end process;

process(mt)

begin

if(mt’event and mt=‘1’)

then

counter2<=counter2+1;

if counter2=1100 then

counter2<=0;

msh1<=‘1’;

msh2<=‘1’;

elsif(counter2<=3)then

msh1<=‘1’;

msh2<=‘1’;

elsif(counter2>3 and counter2<=5)then

msh1<=‘0’;

msh2<=‘1’;

else

msh1<=‘0’;

msh2<=‘0’;

end if;

end if;

sh<=msh1;

end process;

產生rs的程序進程如下:

process(mbt,clk)

begin

if(clk’event and clk=‘0’)then

rs<=not mbt;

ned if;

end process;

至此,這樣ccd驅動電路的六路信號均產生完畢,可以進行仿真,其結果如圖3所示。

由圖3可看出,所產生的驅動信號滿足tcd1201d所需驅動時序關系。

dispart模塊是用來對外部時鐘進行分頻的,可應用vhdl語言描述。其中二、三分頻的程序如下:

process(clk)

begin

if(clk’event and clk=‘1’)then

mf1<=not mf1;

end if;

f1<=mf1;

end process;

process(clk)

begin

if(clk’event and clk=‘1’)

then

counter2<=counter2+1;

if counter2=2 then

mf2<=‘1’;

counter2<=0;

else

mf2<=‘0’;

end if;

end if;

f2<=mf2;

end process;

其他分頻數與之類似,這里不再贅述。

compare模塊是用來對a/d的轉換結果進行寄存,并在一幀結束后,對得到的電壓峰值進行判斷以確定其是否在所規定的閾值范圍內,從而控制多選一模塊multiplexer。應用vhdl語言描述時,其程序的主要部分如下:

process(clk)

begin

if(clk’event and clk=‘0’)then

if data>reg_data then

reg_data<=data;

end if;

end if;

end process

process(sh)

begin

if(sh’event and sh=‘1’)

then

if(reg_data>200)then

if(reg_q(2)or reg_q(1)or reg_q(0)=‘1’ then

reg_q<=reg_q-1;

end if;

elsif(reg_data<150)then

if(reg_q(2)and reg_q(1)

and reg_q(0)=‘0’ then

reg_q<=reg_q+1;

end if;

else reg_q<=reg_q;

end if;

end if;

q<=reg_q;

end process;

這里,第一個進程的作用是得到ccd輸出電壓的峰值,data為a/d轉換的結果。第二個進程的作用是判斷峰值是否在閾值范圍內,以調整輸出q,去控制多選一模塊選擇相應的時鐘脈沖來作為driver的輸入。

將設計好的各個模塊應用原理圖進行連接,然后進行器件選擇,本設計選cpld芯片為epm7128slc84-15,然后編譯,再進行仿真,即可所得,如圖4所示的時序圖。

觀察該時序圖中可以看到,如cpld的工作與最初的設計意圖相符,即可將程序下載到epm7128slc-15芯片中。

實驗結果

進行電路的原理圖設計,制成電路板,與ccd傳感器連接。將光束打在一反射物體上,反射光為ccd傳感器所接受,然后調節光照強度,利用示波器觀察sh,可以看到sh的頻率隨光強的增大而增大。

結束語

本文所設計的帶的ccd驅動電路,可集成于一片cpld芯片中,較過去的由幾十片芯片組成的驅動電路,其面積大大減小了,而且帶有自動增益調整功能,對頻率的選出采用逐次逼近的方式。因此,采用適當的步長,就可以將sh的變化控制在比較合適的范圍內,從而使峰值的收斂達到較好的效果。此外,自動增益調整也避免了人工調整的麻煩和誤差,提高了精度,降低了勞動強度。

責任編輯:gt


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 轉換器
    +關注

    關注

    27

    文章

    8741

    瀏覽量

    147725
  • cpld
    +關注

    關注

    32

    文章

    1257

    瀏覽量

    169518
  • 可編程邏輯
    +關注

    關注

    7

    文章

    517

    瀏覽量

    44144
收藏 人收藏

    評論

    相關推薦

    基于CPLD器件和tcd1201d芯片實現CCD自動增益系統的設計

    ccd(charge couple device)是一種電荷藕合式光電轉換器件。在物體位移測量系統中,常常以ccd作為位移傳感。當一束曝光
    發表于 07-15 17:36 ?1964次閱讀
    基于<b class='flag-5'>CPLD</b><b class='flag-5'>器件</b>和tcd1201d芯片<b class='flag-5'>實現</b><b class='flag-5'>CCD</b><b class='flag-5'>自動增益</b><b class='flag-5'>系統</b>的設計

    232485轉換器的軟件問題

    的GPIO口要重新設置其他兩個腳了,也將接收的中斷函數中的判斷回車換行代碼也刪去了)????????可以嗎?不可以的話那是為什么?232485轉換器,我們是應該根據232來編寫程序嗎?485會自動根據232電平來
    發表于 06-03 04:37

    為什么使用24位轉換器來替代多個12位器件

      在涉及到溫度測量、壓力測量、工業流程控制的便攜式醫療設備和工業自動化領域,12位轉換器足以成為我們理想的選擇。但是,如果考慮到整個多傳感系統設計,那么24位
    發表于 12-14 16:59

    請問怎樣去設計ccd自動增益系統

    ccd信號的自動增益調整ccd自動增益系統結構是由哪些部分組成的?怎樣去設計ccd
    發表于 04-29 06:04

    數據采集系統自動增益控制的實現

    詳細地介紹了一種由電壓比較囂、數模挾囂、MCS一51單片機組成的可以實現自動增益控.j的放大囂電路. 蛤出了詳..I的電路圈和實現自動增益
    發表于 11-06 15:48 ?17次下載

    基于CPLDCCD驅動電路自動增益調整

    摘要本文介紹了一種基于CPLD并具有自動增益調整功能的CCD驅動電路。CCD輸出的模擬電壓值與其曝光時間有著密切的關系,根據這一原理,對CCD
    發表于 04-29 08:58 ?39次下載

    自動增益控制技術應用?

    【摘 要】 分析了自動增益技術原理,設計了應用于第三代移動通信模擬基站的自動增益控制電路。    關鍵詞:自動增益
    發表于 05-10 19:53 ?4553次閱讀
    <b class='flag-5'>自動增益</b>控制技術應用?

    音頻信號自動增益控制系統

    音頻信號自動增益控制系統
    發表于 09-08 17:20 ?2395次閱讀
    音頻信號<b class='flag-5'>自動增益控制系統</b>

    基于CPLDCCD驅動電路自動增益調整

    基于CPLDCCD驅動電路自動增益調整 ccd(charge couple device)是一種電荷藕合式光電轉換器件。在物體位移測量
    發表于 12-14 14:04 ?953次閱讀
    基于<b class='flag-5'>CPLD</b>的<b class='flag-5'>CCD</b>驅動電路<b class='flag-5'>自動增益</b>調整

    基于IEEE1149_1至IEEE1149_7轉換器的研究與實現

    基于IEEE1149_1至IEEE1149_7轉換器的研究與實現
    發表于 01-08 14:47 ?11次下載

    數模模數轉換芯片AD9048

    數模模數轉換芯片AD9048
    發表于 02-28 21:36 ?4次下載

    使用ADC0808轉換器實現PWM實驗的程序和工程文件免費下載

    使用ADC0808轉換器實現PWM實驗的程序和工程文件免費下載
    發表于 09-04 15:28 ?8次下載
    使用ADC0808<b class='flag-5'>轉換器</b><b class='flag-5'>實現</b>PWM實驗的程序和工程文件免費下載

    使用單片機實現PCF8591轉換器應用的C語言實例

    本文檔的主要內容詳細介紹的是使用單片機實現PCF8591轉換器應用的C語言實例免費下載。
    發表于 03-31 14:45 ?12次下載

    AD9048:單片8位視頻A/D轉換器數據表

    AD9048:單片8位視頻A/D轉換器數據表
    發表于 04-21 16:58 ?8次下載
    <b class='flag-5'>AD9048</b>:單片8位視頻A/D<b class='flag-5'>轉換器</b>數據表

    實現D-CAP3轉換器的大占空比運行

    電子發燒友網站提供《實現D-CAP3轉換器的大占空比運行.pdf》資料免費下載
    發表于 09-03 11:52 ?0次下載
    <b class='flag-5'>實現</b>D-CAP3<b class='flag-5'>轉換器</b>的大占空比運行
    主站蜘蛛池模板: 美女扒开腿让男生桶爽网站| 高h文男主又粗又狠| 国产精品福利一区| 亭亭色| 伊人精品成人久久综合欧美| 亚洲人的天堂男人爽爽爽| 婷婷激情六月| 全黄h全肉边做边吃奶在线观看| 一级片aaa| 777黄色片| xxxxxxxxx18免费视频| 国产精品久久久久久久久免费| 人人草草| 日本aaaa毛片在线看| 亚洲人成网站在线| 日本资源在线| 精品日韩| 午夜激情福利网| 国产精品好好热在线观看| xxx性欧美在线| 一区二区三区影院| 日本免费三级网站| 国产视频三区| 手机看片免费福利| 我不卡老子影院午夜伦我不卡四虎| 亚洲视频一区在线观看| 亚洲国产精品久久久久婷婷软件| 三级在线看| 色天天综合网色鬼综合| 欧美高清一区二区| 俺去俺来也www色官网免费的| 天天干天天插| 男人天堂资源网| 男人和女人做爽爽视频在线观看 | 欧美成人xxxx| 91欧美精品激情在线观看| 久草干| 蝌蚪自拍网二区| 日韩a免费| 91激情网| 婷婷丁香啪啪|