《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的三相函數信號發生器設計
基于FPGA的三相函數信號發生器設計
維庫開發網
摘要: 基于FPGA的三相函數信號發生器以DDS為核心,在Altera公司CycloneⅡ系列EP2C8T144C8上實現正弦波、方波、三角波和鋸齒波信號的產生,利用單片機PICl8F4550控制波形的頻率及相位差。同時單片機通過DAC0832控制波形數據轉換DAC902參考電壓實現在波形幅度的控制,D/A輸出的波形經過放大、濾波后輸出。波形參數的輸入輸出通過觸摸屏和液晶屏實現,測試結果顯示該系統具有較高的精度和穩定性。
Abstract:
Key words :

     摘要:基于FPGA三相函數信號發生器以DDS為核心,在Altera公司CycloneⅡ系列EP2C8T144C8上實現正弦波、方波、三角波和鋸齒波信號的產生,利用單片機PICl8F4550控制波形的頻率及相位差。同時單片機通過DAC0832控制波形數據轉換DAC902參考電壓實現在波形幅度的控制,D/A輸出的波形經過放大、濾波后輸出。波形參數的輸入輸出通過觸摸屏和液晶屏實現,測試結果顯示該系統具有較高的精度和穩定性。

  模擬函數信號發生器輸出波形易受輸入波形的影響,難以實現移相控制,移相角度隨所接負載和時間等因素的影響而產生漂移,頻率、幅度的調節均依賴電位器實現,因此精度難以保證,也很難達到滿意的效果。基于FPGA的數字式三相信號發生器,精度較高,移相控制方便,實現頻率為1 Hz~10 MHz、幅度0.1~10 V,分辨率為1°,頻率和幅度的調節均可程控的三相函數信號發生器。系統還具有輸出靈活、易于系統升級等優點。

  1 函數信號發生器的原理

  基于DDS原理,頻率控制字M和相位控制字P分別控制DDS輸出波形的頻率和相位。相位累加器是整個波形產生的核心,它有一個累加器和一個N位相位寄存器組成。每來一個時鐘脈沖,相位寄存器以步長M增加,如圖1所示。相位寄存器的輸出與相位控制字相加,其結果作為波形查找表的地址。波形查找表由ROM構成,內部存有一個完整周期的波形的數字幅度信息,每個查找的地址對應波形中0°~360°范圍的一個相位點。查找表輸入的地址信息映射達成波形幅度信號,同時輸出到數模轉換器的輸入段,DAC輸出的模擬信號經過程控濾波器,可得到一個頻譜純凈的波形。

  相位寄存器每經過2N/M個fc時鐘周期后回到初始裝狀態,相應地波形查表經過一個循環回到初始位置,DDS輸出一個波形。輸出的波形周期為Tout=(2N/M)Tc,頻率為

  DDS的最小分辨率為fmin=fc/2N,當M=2N-l(即一個周期內只取兩個點)時,DDS最高的基波合成頻率為foutmax=fc/2,根據取樣定理,這在理論上是可行的,考慮到失真度的問題,取i(i>2)個點,則最高頻率為當M=2N-3時,foutmax=fc/i。

  2 系統總體設計

  系統由單片機控制模塊、FPGA波形產生模塊、數模轉換模塊、濾波輸出模塊、觸摸屏輸入和液晶顯示模塊組成,單片機控制FPGA產生輸入頻率和相位差的三相正弦波、方波、三角波和鋸齒波,經過D/A轉換后濾波輸出,三相波形的幅度也由單片機通過改變D/A的參考電壓控制。具體系統框圖,如圖2所示。

  FPGA部分具體框圖,如圖3所示,基于DDS原理,主要由相位累加器、正弦波ROM查找表、方波發生器、三角波發生器、鋸齒波發生器和波形選擇模塊組成。根據單片機設置相移值調整三相波形的相位差,波形選擇也由單片機控制。

  2.1 分頻模塊設計

  為了對波形頻率精確控制,不同頻率段需要不同的輸入頻率。項目設計中采用50 MHz外部有源晶振,利用FPGA內部鎖相環將頻率鎖定在40.96 MHz,然后該頻率進行10 MHz,100 MHz,1 000 MHz,10 000 MHz,如圖4所示,這樣就得到了5個不同的頻率區間,最后通過5選1數據選擇器由單片機選擇所需要的時鐘頻率。時鐘頻率與輸出波形頻率之間具體關系,如表l所示。



 

  2.2 波形產生模塊設計

  2.2.1 正弦波

  正弦波的數據需要轉換為*.mif文件后存放到ROM中,mif文件有固定格式規定了每個字的位寬WIDTH、總字數DEPTH、地址進制基數ADDR-ESS_RADIX和數據進制基數DATA_RADIX。在Matlab環境中編程計算出正弦波數據,然后生成mif文件。

  EP2C8T144C8擁有較充裕的存儲空間。因此,設計中為了提高精度在ROM中存放4 096個正弦數據,頻率控制字、相位控制字由單片機控制產生,經過相位累加器組成地址發生器,產生的地址連到ROM的地址線上進行查表得到波形數據。

  2.2.2 方波

  方波算法比較容易實現。由于其只有高低電平兩種狀態。因此,只需要在一個周期的時間中間位置翻轉電平即可。由于相位累加器的值是線形累加的,地址address的值也是線形累加的,對所給地址值address進行判斷,當地址值的最高位為O時,便將波形幅值各字位賦值1,否則賦值0。就可以實現最簡單的占空比50%的方波。

  為了實現占空比可調,設計中增加一個變量PWM_zkb[11..0],讓地址值與WM_zkb[11..O]比較,Adress[11..0]

  2.2.3 三角波

  三角波的生成原理與方波生成原理相似,也是對地址Address的值進行判斷,當其最高位為0時,取其O~ll位為三角波的波形幅值,即令Data_out[11..0]=Address[11..0]。當其最高位為l時,對其0~1l位的值取反后再作為三角波的波形幅值,即令Data_out[11..0]=not(Address[11..0])。

  2.2.4 鋸齒波

  鋸齒波的產生也是基于上述原理,是對地址Address的值進行判斷,當其最高位為O時,取其0~ll位為三角波的波形幅值,即令。Data_ out[11..0]=Address[11..0]。當其最高位為1時,對其最高位的值取反后作為鋸齒波的波形幅值,即令Data_out,[11..0]=Address[11..0]and“011111111111”。

  2.3 相移的實現

  在A相地址的基礎上,增加一個累加器,輸入段分別是A相地址和偏移值,經過累加之后得到B相波形地址,然后根據此地址對ROM尋址或者在地址的基礎上生成方波、三角波和鋸齒波。如圖5所示,A相、B相及B相、C相之間的偏移量有單片機控制,數據經過鎖存后送入累加器。

  2.4 波形選擇的實現

  根據設計要求,每一相都可以實現正弦波、方波、三角波和鋸齒波任意一種波形的輸出,設計了一個4選1數據選擇器,控制端Sel[1.-.0]與單片機IO口相連,如圖6所示,以A相為例。

  2.5 幅度控制的實現

  參考電壓可通過INT/EXT端選擇內部和外部。當該端口為高電平時選擇外部參考電壓,只要改變參考電壓,就可以改變輸出波形的幅值。DAC902外部參考電壓范圍0.10~1.25 V,因此只需采用8位D/A既可實現0.01 V的步進。如圖7所示,DAC0832輸出接到DAC902參考電壓輸入端REFin,通過單片機控制DAC0832輸出,進而控制DAC902參考電壓。

  3 系統測試

  本系統波形參數設置通過觸摸屏輸入完成,用示波器測試50 Ω負載下的輸出波形,比較設置值與測試值之間的誤差,圖8為信號源輸出頻率為10 MHz,峰峰值為5 V,兩路信號相移分別為45°、90°、180°、270°時,在使用Fluck PM3394B 200 MHz Combiscope Instrument的“Analog”模式下,用數碼相機拍攝的正弦波的輸出波形。

  經過多次測試和反復改進,最終實現了如下技術指標:

  (1)輸出波形:正弦波、方波、三角波、鋸齒波。

  (2)輸出波形頻率范圍:0.1 Hz~10 MHz。

  (3)輸出頻率調節步長:0.01 Hz~10 kHz。

  (4)輸出電壓范圍:10 mV~10 V(峰峰值)可調,幅度步進最小10 mV。

  (5)方波占空比調節范圍:1%~99%。

  由于示波器只有兩個通道,因此只能測量兩項信號之間的相位差。

  在頻率穩定度方面,正弦波、三角波、方波和矩形波輸出波形穩定,這正是體現了DDS技術的特點,輸出頻率穩定度和晶振穩定度在同一數量級。由于采用了FPGA的內部時鐘,在倍頻分頻的結果后還是無法達到計算的時鐘,因此存在著誤差,但在頻率較高部分誤差稍明顯,因此設計中采用了軟件修正,從而減少了頻率較高部分的誤差。

  對于波形幅度的控制上,由于波形在電路網絡存在一定的衰減,因此在程序中采用軟件補償進行修正。從測試結果可以看書軟件補償做得越細致誤差越小。

  4 結束語

  本項目以多功能、低功耗、操作方便、結構合理、易于調試為主要設計原則,在系統設計過程中,力求硬件線路簡單,充分發揮軟件編程方便靈活的特點,并最大限度挖掘FPGA片內資源,來滿足系統設計要求。

  利用硬件描述語言VHDL編程,借助Ahera公司的Quartus II軟件環境下進行了編譯及仿真測試,在FPGA芯片上設計了函數發生器,產生正弦波、三角波、方波等多種波形,系統的頻率分辨率高,頻率切換速度比較快。設計采用了EDA技術,縮短了開發研制周期,提高了設計效率,而且使系統具有結構緊湊、設計靈活、實現簡單、性能穩定的特點。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 动漫精品欧美一区二区三区 | 色www视频永久免费 骚片免费 | zljzlj日本妈妈 | 狠狠躁狠狠躁 | 亚洲国产成人精品91久久久 | 日韩成人高清 | 国产欧美一区二区三区视频 | 91麻豆传传媒波多野衣久久看 | 欧美在线视频一区在线观看 | 在线欧美成人 | 日日噜噜夜夜狠狠 | 麻豆一区二区 | 一级片小视频 | 1024jd基地手机看国产 | 日日干夜夜操s8 | 91短视频在线观看免费最新91 | 久久成人免费观看全部免费 | 成人久久18免费网站 | 亚洲精品视频在线观看免费 | 免费男女网站 | 一级做a爰全过程免费视频 一级做a爰片鸭王 | 欧美激情精品久久久久久大尺度 | 日产欧产va高清 | a一级免费| 国产成人乱码一区二区三区 | 欧美成人看片黄a免费 | 美国一级毛片a | 日韩亚洲综合精品国产 | 欧美色图综合 | 欧美一区二区视频高清转区 | 天天插天天透天天狠 | 久久精品国产久精国产80cm | 国产精品亚洲高清一区二区 | 性欧美video视频另类 | 黄漫画黄网站在线观看 | 99综合在线 | 国产成人禁片免费观看视频 | 久久午夜夜伦鲁鲁影院 | 一级黄色大片免费 | 人人欧美| 2o2o天天看夜夜看狠狠看 |