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


Browsing this Thread:   1 Anonymous Users






Re: 利用LCD 秀轉速~為什麼轉速是有高到低
#6
新會員
新會員


查看用戶資訊
各位先進:
我在秀ActualSpeed的值在lcd上的時候,它的轉速確是由高到低,也就是當我DUTY開大時,馬達的轉速變快,可是LCD上面的轉速確是逐步下降。
是我在timer3的設定有問題嗎?我是用預除器
void InitTMR3(void)
{
T3CON = 0x8030; // internal Tcy/256 clock
TMR3 = 0;
PR3 = 0xFFFF;
}

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
ActualSpeed = SPEEDMULT/timer3avg

timer3avg:是計算由hall senser的變化計時馬達轉一圈時的時間

SPEEDMULT:SPEEDMULT 6912000 // factor used to calculate speed , [60*(Fcy/256)],FCY=29491200

FCY 29491200 // // Fosc = 7.3728 MHz , XT_PLL16


ActualSpeed = 6912000/timer3avg

SPEEDMULT是馬達的頻率吧!!那我想剩下的問題只timer3avg
所以我才猜是不是timer3的問題~因為秀出的轉速從高到低,值也有點問題。

麻煩各位先進......

還有謝謝板主~~秀值在lcd上沒問題了....只是lcd後面有黑黑的正方形可能是位址的問題。

發表於: 2007/12/5 22:12
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 利用LCD 秀轉速(變數)
#5
版主
版主


查看用戶資訊
參照:
Speed[0]=(j000000+'0');
Speed[1]=(j00000+'0');
Speed[2]=(j0000+'0');
Speed[3]=(j000+'0');
Speed[4]=(j00+'0');
Speed[5]=(j0+'0');
setcurLCD(0,1) ;
putrsLCD(Speed);

改用 putsLCD(Speed) ; putrsLCD( ) 是指向 ROM Data 的,照理說在編譯時就會出現型態不符的警告才對,請在檢查 Build All 後的結果。

發表於: 2007/11/29 12:01
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


利用LCD 秀轉速(變數)
#4
新會員
新會員


查看用戶資訊
個位先進:ActualSpeed是一個變數隨HALL SENSER而變化,我想要把ActualSpeed秀在LCD上面可是以下所寫的程式在LCD上確不會有任何變動,出現其怪的代碼。
不知道是那邊有設錯....是指令有問題嗎???

unsigned int ActualSpeed //ActualSpeed 是變數
char Speed[]={0,0,0,0,0,0};
char j0;
char j00;
char j000;
char j0000;
char j00000;
char j000000;

j000000=ActualSpeed/100000;

j00000=(ActualSpeed-j000000*1000000)/10000;

j0000=(ActualSpeed-j000000*1000000-j00000*100000)/1000 ;

j000=(ActualSpeed-j000000*1000000-j00000*100000-j0000*10000)/100;

j00=(ActualSpeed-j000000*1000000-j00000*100000-j0000*10000-j000*1000)/10;

j0=(ActualSpeed-j000000*1000000-j00000*100000-j0000*10000-j000*1000-j00*100);

Speed[0]=(j000000+'0');
Speed[1]=(j00000+'0');
Speed[2]=(j0000+'0');
Speed[3]=(j000+'0');
Speed[4]=(j00+'0');
Speed[5]=(j0+'0');
setcurLCD(0,1) ;
putrsLCD(Speed);

在setcurLCD(0,1)出現其怪的代碼~~而ActualSpeed不會隨HALL SENSER而變化,不知道是不是程式的寫法有問題
還是有奇他秀轉數的方式!!!!

請各位先進~~~指教!!!!!

發表於: 2007/11/28 13:15
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於AN957裡面的問題
#3
資深會員
資深會員


查看用戶資訊
ActualSpeed = SPEEDMULT/timer3avg;

AcutalSpeed 由 timer3 的值換算而來
timer3avg 指加權平均值, 前平均值加新值除以2
timer3avg = ((timer3avg + timer3value) >> 1);
展開後為 Timer3[n]/2+ Timer3[n-1]/4 + Timer3[n-2]/8 + ....
============================
SPEEDMULT 是轉換系數 須根據 system clock 和 timer3 clock , motor pole number來求得

#define SPEEDMULT 2343750 -- SensoredBLDC.h
system clock: Fin = 8Mhz -- SensoredBLDC.h
timer3 clock: T3CON = 0x0030; // timer3 internal Tcy/256 clock -- init.c

// AN957
speed S = 60/(P/2*T) rpm
P: the number of poles of the motor.
T: the time(seconds) for one electrical cycle 須從 Fin, timer3 求出
S: ActualSpeed
============================
DesiredSpeed = ADC1BUF0 * POTMULT; // value for speed control

#define POTMULT 4 // pot to speed ratio

1023* POTMULT 馬達的最大轉速, POTMULT 設越大最大轉速越高

發表於: 2007/11/23 17:54
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 關於AN957裡面的問題
#2
新會員
新會員


查看用戶資訊
~~~~有人會嗎嗎嗎?????????????/
看不太懂!!

發表於: 2007/11/21 8:08
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


關於AN957裡面的問題
#1
新會員
新會員


查看用戶資訊
個位先進:
void CalculateDC(void)

ActualSpeed = SPEEDMULT/timer3avg;
DesiredSpeed = DesiredSpeed*POTMULT(什麼意思);
SpeedError = DesiredSpeed - ActualSpeed

ActualSpeed(實際轉速)他算出來的單為應該是RPM

DesiredSpeed(理想轉速)為什麼可以寫成

ADCBUF0*4-------ADCBUF0是10BIT是AD裡面的暫存器
可看成1023*4=4092-------那這單位又可以看成是RPM嗎??

那他算出來的單為又是什麼為什麼可以在SpeedError相減

在PI控制那區塊看不太懂所以上來問問麻煩各位先進

小馬車留...11/20

發表於: 2007/11/20 15:00
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... ]

教育訓練中心

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