slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
EIS 實驗室 PowerPoint Presentation
Download Presentation
EIS 實驗室

Loading in 2 Seconds...

play fullscreen
1 / 19

EIS 實驗室 - PowerPoint PPT Presentation


  • 109 Views
  • Uploaded on

EIS 實驗室. 在 QT2410 上實現 PWM 功能. 693415003 王兆慶 693415083 朱育昇. 脈波寬度調變簡介 (1/3). 離散信號的例子有:脈衝振幅調變 (PAM) 脈衝相位調變 (PPM) ,脈衝寬度調變 (PWM) ,它們代表信息的參數完全隨信息的變化而變化。 所謂脈波寬度調變 (Pulse Width Modulate 簡稱 PWM) 信號就是一連串可以調整脈波寬度的信號。 脈寬調變是一種調變或改變某個方波的簡單方法。在它的基本形式上,方波工作周期( duty cycle )是根據輸入信號的變化而變化。

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'EIS 實驗室' - vevay


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

EIS 實驗室

在QT2410上實現PWM功能

693415003 王兆慶

693415083 朱育昇

slide2
脈波寬度調變簡介(1/3)
  • 離散信號的例子有:脈衝振幅調變(PAM)脈衝相位調變(PPM),脈衝寬度調變(PWM),它們代表信息的參數完全隨信息的變化而變化。
  • 所謂脈波寬度調變(Pulse Width Modulate簡稱 PWM)信號就是一連串可以調整脈波寬度的信號。
  • 脈寬調變是一種調變或改變某個方波的簡單方法。在它的基本形式上,方波工作周期(duty cycle)是根據輸入信號的變化而變化。
  • 工作周期(duty cycle)是指方波的高電平時間和低電平時間之比。

Embedded System Course

slide3
脈波寬度調變簡介(2/3)
  • PWM有許多應用,其中包括電動機控制、伺服控制、光線調整、開關電源,甚至某些音頻放大器。
  • 在直流馬達控制系統中,為了減少流經馬達繞線電流及降低功率消耗等目的,常常使用脈波寬度調變信號(PWM)來控制交換式功率元件的開與關動作時間。 其最常使用的就是藉著改變輸出脈波寬度或頻率來改變馬達的轉速 。
  • 若將供應馬達的電源在一個固定週期做ON 及OFF 的控制,則ON 的時間越長,馬達的轉速越快,反之越慢。
  • 此種ON 與OFF 比例控制速度的方法即稱為脈波寬度調變,ON 的期間稱為工作週期(duty cycle),以百分比表示。

Embedded System Course

slide4
脈波寬度調變簡介(3/3)

PWM脈波寬度調變信號圖

若直流馬達的供應電源電壓為10伏特,乘以20%的工作週期即得到2伏特的輸出至馬達上,不同的工作週期對應出不同電壓讓直流馬達轉速產生不同的變化。

Embedded System Course

slide5
直流馬達控制電路(1/2)
  • 本次實驗,直流馬達的速度控制主要是仰賴S3C2410所產生的脈波寬度調變(PWM)做為速度的控制方式,藉由利用改變輸出的脈波寬度或頻率來使直流馬達有精準的速度輸出。
  • 但因S3C2410輸出的是3.3伏特PWM訊號,並不是太足夠用來推動馬達到一定的速度,故在此使用了一光耦合器(PC817)做為將3.3伏特PWM訊號轉換成為10伏特的PWM訊號。

光耦合器內部電路架構

Embedded System Course

slide6
直流馬達控制電路(2/2)

DC

Motor

I/O

S3C2410

Motor

Controller

TA7291

PWM

光耦合器

PC817

  直流馬達控制方塊圖

Embedded System Course

ta7291p
TA7291P

Embedded System Course

ta7291p block diagram
TA7291P BLOCK DIAGRAM

Embedded System Course

ta7291p pin function
TA7291P PIN FUNCTION

Embedded System Course

ta7291p1
TA7291P 操作模式

其共有四種電壓的輸出方式,分別是正轉、逆轉、停止及剎車

Embedded System Course

slide11
Demo
  • 實作講解

Embedded System Course

slide12
系統時脈

Embedded System Course

pwm init
PWM_init
  • FCLK 200MHz
    • s3c2410_get_cpu_clk()
  • HCLK 100MHz
    • s3c2410_get_bus_clk(GET_HCLK)
  • PCLK 50MHz
    • s3c2410_get_bus_clk(GET_PCLK)
  • MPLL = (m * Fin) / (p* 2^ s )
    • m = MDIV p = PDIV s = SDIV
  • UPLL USB裝置 48 MHz

Embedded System Course

slide14
pwm驅動程式的函式
  • File_operations PWM_fops
    • Open
      • 開啟驅動程式
    • Release
      • 釋放PWM驅動程式
    • Read
      • 暫不使用
    • Ioctl
      • 設定馬達正反轉、PWM時脈和脈波寬度
    • Write
      • 暫不使用

Embedded System Course

slide15
PWM 驅動程式
  • Ioctl參數
    • PWM_IOC_2HZ_INITIAL輸出頻率為2HZ
    • PWM_IOC_5KHZ_INITIAL輸出頻率為5KHZ
    • PWM_IOC_READ_TCMPB讀取脈波寬度
    • PWM_IOC_SET_TCMPB輸出脈波寬度
    • PWM_IOC_SET_MOTOR設定正反轉

Embedded System Course

slide16
PWM 驅動程式

Embedded System Course

pwm ioc 2hz initial
PWM_IOC_2HZ_INITIAL
  • TCFG0
    • 設定prescaler0的時脈 0 ~~ 255
  • TCFG1
    • 設定Clock Divider(除頻器) 1/2、1/4、1/8、1/16
  • 輸出時脈為PCLK/(presclaer +1)/(divider)
  • 50MHZ / (31+1) / (1/16) = 97.656KHZ
  • 50MHZ / (0 + 1) / (1/2) = 25MHZ

Embedded System Course

pwm ioc 2hz initial1
PWM_IOC_2HZ_INITIAL
  • TCNTB0
    • 設定計數器的值 TCNTB0 = 0xbebc(48828)
    • 50MHZ / (31+1) / (1/16) = 97.656KHZ
    • 97.656KHZ / 48828 = 2Hz
    • 相同方式可設定出5KHz時脈
  • TCNPB0
    • 設定比較暫存器,去決定脈波寬度
    • TCMPB0 = TCNTB0 >>1 為50%脈波寬度

Embedded System Course

slide19
PWM_IOC_READ_TCMPB
    • 讀取脈波寬度
  • PWM_IOC_SET_TCMPB
    • 輸出脈波寬度
  • PWM_IOC_SET_MOTOR
    • 設定GPIO (GPG)使其達到正反轉功能

Embedded System Course