• slider image 514
  • slider image 516
  • slider image 517
  • slider image 518
  • slider image 519
:::


Browsing this Thread:   2 Anonymous Users






Re: 請教用dsPIC33F撰寫PI控制器
#5
中級會員
中級會員


查看用戶資訊
比例積分器要在程式展現確實,蠻難的,主要是你對數學觀念熟不熟

若放在PWM中斷的話就要去算你的PWM執行週期才能回推你的積分Time_constant要設多少

再加上電容的解析度太低也會使控制目標無法追近的狀況,你應該是電容解析度弄得太低所致吧

發表於: 2009/7/10 23:54
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教用dsPIC33F撰寫PI控制器
#4
初級會員
初級會員


查看用戶資訊
謝謝Ryang的答覆:
透過Microchip FAE協助後,已解決PWM亂開的問題,解決方式是透過將宣告為long的函數改為int的函數,再透過計算時間的方式應該類似您提共的方法。
但解決之後卻發生了波型不動的狀況,等於是停住的現象,而FAE提共的解決方向為,寫一個能將ADC轉換後的數值,透過ADC中斷,將此值轉存到一個自訂的buffer中,如此將它成為一個完整轉換過的值,之後當PWM產生中斷時便讀取buffer中的值,請問這種方式要如何實現,可否提供簡單的範例。謝謝

發表於: 2009/7/3 16:28
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教用dsPIC33F撰寫PI控制器
#3
版主
版主


查看用戶資訊
有關 DMCI的使用方式可以參考MPLAB IDE 下的 Help 選項,在 Topics 選項下裡有 Tools 下的第三項就是了。建議使用 ICD3 & Real ICE 才能發揮效果。

Attach file:



jpg  (0.00 KB)


發表於: 2009/6/30 10:00
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請教用dsPIC33F撰寫PI控制器
#2
版主
版主


查看用戶資訊
PWM 會開應是你的計算結果有誤導制 PWM 的 duty錯誤所致。因為這是一種 Real-Time 錯誤要花點時間去抓,個人建議是否可以同步的將送去 Duty 的數值也利用指標方式同步存一份資料在RAM 裡後再利用斷點設定方式停下來檢查一下 Duty 的數值變化,同時也可以利用 Tools --> DMCI 工具將RAM資料以圖形方式顯示,或利用 ICD3 & Real ICE 做即時的資料觀測,同時DMCI 也可以用調整 PI 參數的方式人工直接調整數值大小來驗證PI的最佳效果。

發表於: 2009/6/30 9:54
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


請教用dsPIC33F撰寫PI控制器
#1
初級會員
初級會員


查看用戶資訊
請教各位:
以下的程式碼是我參考TI所寫的PI控制器程式碼,之前是用在dsPIC30系列,如今要改用在dsPIC33FJ16GS502上,測試結果發現會有PWM亂開的現象,請問是哪裡出問題嗎?有啥解決方式可以提供給我參考,謝謝。
void __attribute__((interrupt, no_auto_psv)) _PWM2Interrupt()
{
long Vo;
long e_now,e_last;
long D_now,D_last;
long duty;
long Vref=3720; /*以1.5V當做參考電壓,*/

IFS5bits.PWM2IF=0; ADSTATbits.P2RDY=0;
ADSTATbits.P3RDY=0;

Vo=ADCBUF5*8;
e_now=Vref-Vo;
D_now=4680*(e_now-e_last)+195*e_now+D_last; /*PI Controller:Kp=4680,KiTs=195*/

if(D_now>3773)
{
D_now=3773;
duty=3773; /*限制 PWM1L(PWM1H) 與PWM2L(PWM2H) 相移量最小時,Duty重疊限制為40%*/
}
else if(D_now<=0)
{
D_now=0;
duty=0; /*限制 PWM1L(PWM1H) 與PWM2L(PWM2H) 相移量最大時,Duty重疊限制為0%*/
}
else
{
duty=D_now;
}
D_last=D_now;
e_last=e_now;

PHASE2=duty+283;
}

發表於: 2009/6/29 10:09
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------