91视频免费?看_蜜芽MY188精品TV在线观看_国产免费无遮挡在线观看视频_深夜国产_亚洲精品欧洲精品_欧美黑人粗暴多交

  • 回復(fù)
  • 收藏
  • 點(diǎn)贊
  • 分享
  • 發(fā)新帖

發(fā)下我的數(shù)字電源的控制算法,,什么地方需要改變??

現(xiàn)在對PFC和軟開關(guān)都沒有要求,,只要穩(wěn)壓,,我這個程序如何 ??單環(huán)控制可以不???

 

void PI()                /* PI調(diào)節(jié)算法 */
{
  float V_REF=3.3;          
        Kp=100;          /* PI調(diào)節(jié)的比例常數(shù) */
        Ti=0.005;        /* PI調(diào)節(jié)的積分常數(shù) */
        T=0.001;         /* 周期,Ki=KpT/Ti=40*0.001/0.005=8 */                    
        Ki=8;
        ek=0;            /* 偏差e[k] */
        ek1=0;           /* 偏差e[k-1] */
        uk=0;            /* u[k] */
        uk1=0;           /* 對u[k]四舍五入取整 */
        adjust=0;        /* 調(diào)節(jié)器輸出調(diào)整量 */
        XPWM=0;          /* 占空比調(diào)節(jié) */

 { 
  ek=V_REF-AD_SIG0;
  if(ek<0.1)             /* 偏差小于0.1則調(diào)整值為0 */
  {
    adjust=0;
  }
  else 
  {   
    uk=Kp*(ek-ek1)+Ki*ek;/* 否則計算控制增量 */
    ek1=ek;
    uk1=(signed int)uk;
    if(uk>0)
    {
      if(uk-uk1>=0.5)
      {
        uk1=uk1+1;
      }
    }
    if(uk<0)
    {
      if(uk1-uk>=0.5)
      {
        uk1=uk1-1;
      }
    }
    adjust=uk1;
    XPWM=XPWM+adjust;
  } 
  return;
 }
 asm(" NOP ");           /* 請將光標(biāo)移到此處設(shè)置斷點(diǎn),并用debug->Animate監(jiān)測數(shù)據(jù) */
}

全部回復(fù)(8)
正序查看
倒序查看
2010-10-23 00:16

樓主電壓環(huán)路控制如何?

你的系數(shù)不用Q格式轉(zhuǎn)換?還是沒有貼出來?

0
回復(fù)
2010-10-23 00:21
@dongfangruxiao
樓主電壓環(huán)路控制如何?你的系數(shù)不用Q格式轉(zhuǎn)換?還是沒有貼出來?

樓主是用浮點(diǎn)數(shù)運(yùn)算?很好時間的。你是用什么芯片?

你的開關(guān)頻率大概多少?

0
回復(fù)
2010-10-27 08:59
@dongfangruxiao
樓主是用浮點(diǎn)數(shù)運(yùn)算?很好時間的。你是用什么芯片?你的開關(guān)頻率大概多少?

我就是不會如何轉(zhuǎn)化為Q格式,,你會不會???

0
回復(fù)
2010-10-27 10:22
@zhuzhouren
我就是不會如何轉(zhuǎn)化為Q格式,,你會不會???
**此帖已被管理員刪除**
0
回復(fù)
2011-01-01 16:53
@zhuzhouren
**此帖已被管理員刪除**

Q格式簡單,沒你想象那么難,

簡而言之:把小數(shù)y先放大2^n倍,計算后再把乘積左移n位。能把除法轉(zhuǎn)換為乘法和右邊解決,在保證精度前提下大大減少運(yùn)算時間。例如:

 213*x/1000 = 0.213*x = (872*x)>>12.

詳細(xì)請看教材《C2000程序員高手進(jìn)階》。

0
回復(fù)
2011-01-01 16:55
@dongfangruxiao
Q格式簡單,沒你想象那么難,簡而言之:把小數(shù)y先放大2^n倍,計算后再把乘積左移n位。能把除法轉(zhuǎn)換為乘法和右邊解決,在保證精度前提下大大減少運(yùn)算時間。例如: 213*x/1000=0.213*x=(872*x)>>12.詳細(xì)請看教材《C2000程序員高手進(jìn)階》。
或找TI例程看看,更容易理解怎么使用。
0
回復(fù)
ovie
LV.1
8
2012-04-30 18:04

程序只是個實(shí)現(xiàn)過程而已,關(guān)鍵是你的參數(shù)是否正確

0
回復(fù)
ovie
LV.1
9
2012-04-30 18:05
光看的你程序有那么小的數(shù),沒有使用定標(biāo),程序肯定不行,光數(shù)據(jù)截斷誤差都已經(jīng)無法忍受了
0
回復(fù)
發(fā)
主站蜘蛛池模板: 井陉县| 房产| 兴仁县| 包头市| 贵港市| 凤山县| 望城县| 德兴市| 聊城市| 南岸区| 昌江| 陈巴尔虎旗| 乳源| 东港市| 郑州市| 女性| 江门市| 新干县| 福建省| 彭水| 蓬莱市| 涞源县| 延津县| 清丰县| 凌云县| 三台县| 怀柔区| 涡阳县| 洪江市| 寿宁县| 高要市| 昌宁县| 周宁县| 甘孜| 威宁| 扬中市| 若尔盖县| 福鼎市| 玉树县| 曲周县| 长丰县|