• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
  • slider image 488
  • slider image 491
:::

論壇索引


Board index » All Posts (Ronald3112)




dsPIC33FJ64GS610如何撰寫Modbus通訊
初級會員
初級會員



發表於: 2011/1/12 16:13
頂部


Re: 解決PWM亂開問題
#2
初級會員
初級會員


謝謝edwardlee回答:
我再解釋一下,因為我們求出來Kp與Ki值就是這麼大,所以已經不需要Q格式的問題,現在我的規格就是要達到D_now=4680*(e_now-e_last)+195*e_now+D_last;,其實一開始就是用這個規格去測試,結果就是會造成我所謂的"亂開"因此將Kp與Ki值降到很小便不會出現"亂開",變大就會。

若以大的規格去測試,那我該從程式的哪方面去下手解決掉震盪的問題?麻煩了

發表於: 2009/8/20 13:32
頂部


解決PWM亂開問題
#3
初級會員
初級會員


請教各位
之前已有提問過PWM亂開這個問題,也請教過microchip的FAE,圖為亂開之波形,以下為部份程式碼
PTCONbits.EIPU=0;
PTCONbits.SYNCOEN = 1;
PTCONbits.SYNCSRC = 0;
PTCONbits.SEVTPS = 1;

long Vo;
long e_now,e_last;
long D_now,D_last;
long duty;
long Vref=3720; /*以1.5V當做參考電壓,1.5V顯示為3720 =>(1.5/3.3)*1023*8=3720*/

void __attribute__((interrupt, no_auto_psv)) _PWM2Interrupt()
{

IFS5bits.PWM2IF=0;
ADSTATbits.P1RDY=0;
ADSTATbits.P2RDY=0;
PHASE2=duty+380;


Vo=ADCBUF5*8;

e_now=Vref-Vo;

D_now=1*(e_now-e_last)+0.0097*e_now+D_last;

if(D_now>3773)
{
D_now=3773;
duty=3773;
}
else if(D_now<=0)
{
D_now=0;
duty=0;
}
else
{
duty=D_now;
}
e_last=e_now;
D_last=D_now;


// PHASE2=duty+380;
}
問題如下:
D_now=1*(e_now-e_last)+0.0097*e_now+D_last; /*PI Controller:Kp=1,KiTs=0.0097*/

不會亂開的原因就在於Kp與KiTS很小,所以測試是成功的,但現在的規格必須要為:
D_now=4680*(e_now-e_last)+195*e_now+D_last; /*PI Controller:Kp=4680,KiTs=195*/

就是只要Kp與KiTs數值過大,測試結果就會亂開,如果這樣要如何解決呢?

Attach file:



jpg  (0.00 KB)


發表於: 2009/8/19 15:16
頂部


關於dsPIC33F並聯問題
#4
初級會員
初級會員


請教各位:
1.現在要開發並聯的架構,要使用4顆dsPIC33FJ16GS502來做,若要達到同步執行的動作,在程式上要做些什麼設定,可提供相關範例參考嗎?

2.在並聯模式下,要作均流的動作,例如大於3KW啟動2組、大於6KW啟動3組,這類的動作一樣有相關範例參考嗎?

發表於: 2009/8/17 8:52
頂部


關於dsPIC33FJ16GS502的soft-start問題
#5
初級會員
初級會員


請教各位
現在我要設計一個當dsPIC啟動時要慢慢的讓電壓上升不要一次就達到設定的值,這應該是有關soft-start的部份,有這方面的資料或程式範例嗎?

發表於: 2009/7/21 13:38
頂部


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


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

發表於: 2009/7/3 16:28
頂部


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


請教各位:
以下的程式碼是我參考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
頂部


使用單晶片設計數位電錶
#8
初級會員
初級會員


請問各位使用單晶片的高手,有人使用單晶片設計數位電表嗎?此數位電表並非一般拿來量電壓或電阻的那種電表,而是有可以用來監控負載端或電力品質的改善那種。
有此方面的訊息可否提供一下,謝謝

發表於: 2009/6/5 15:31
頂部


Re: 請問有關於撰寫PI控制器的範例嗎?
#9
初級會員
初級會員


tdzuc:
那就麻煩您寄給我參考看看
還有提到AN696要去哪裡搜尋呢?我目前沒找到
謝謝,以下是我的信箱
TW006769@chem.com.tw

發表於: 2009/5/25 8:10
頂部



(1) 2 3 »



:::

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... ]

教育訓練中心

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