![]() |
|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#5 |
Nhập môn đệ tử
Tham gia ngày: Nov 2009
Bài gửi: 4
: |
chào bác cho em hỏi đạt được tốc độ thực tế cho động cơ là 100/phút và 10 vòng/phút thì value em đặt khoảng bao nhiêu là đủ vậy?đc em dùng là 24v gắn encoder xuất 108 xung/p
vì đây chỉ là mô phỏng. còn thực tế em chưa làm nên em không biết nên đặt bao nhiêu cả. mong bác chỉ dùm đây là code của em #INCLUDE <16F877a.H> #DEVICE *=16 ADC=8 #FUSES HS,NOWDT,NOPUT,NOLVP #USE DELAY (CLOCK=20000000) #INCLUDE <LCD.C> unsigned int16 solantran=0; double time_per_circle=0; int16 tocdo=0; int16 tocdo_dat; int16 value; int16 count=0; #int_ext void demxung() { count++; if (count==1) { set_timer1(3036); break; } if (count<101) //khi dat 101 xung thi da duoc 1 vong rui (vi encoder 100 xung)-->ta bat dau tinh toc do theo cong thuc duoi { break; } else { time_per_circle=(solantran*0.1)+(get_timer1()*0.00 00015); //0.1 la thoi gian tran cua timer1 tocdo= (60)/(time_per_circle); //0.0000016=0.1/(65536-3036)--gia tri nhan cho get_timer1() solantran=0; count=1; set_timer1(3036); } } #int_timer1 void dem_solantran(){ solantran++; set_timer1(3036);} void main() { set_tris_a(0b10000); set_tris_b(0b00011111); set_tris_d(0b00000000); set_tris_c(0b00000000); lcd_init(); delay_ms(20); setup_timer_1(t1_internal|t1_div_by_8); set_timer1(3036); enable_interrupts(int_timer1); enable_interrupts(int_ext) ; ext_int_edge(l_to_h); enable_interrupts(global); setup_ccp1(ccp_pwm); setup_timer_2(T2_div_by_16,156,1); value=1000; set_pwm1_duty(value); delay_ms(5000); while(1) { if(input(pin_a4)) { tocdo_dat=100 ; value=900; set_pwm1_duty(value); lcd_gotoxy(1,1); printf(lcd_putc,"SPEED_SET : %3Lu",tocdo_dat); lcd_gotoxy(1,2); printf(lcd_putc,"SPEED : %3Lu",tocdo); } else { tocdo_dat=10; value=300 ; set_pwm1_duty(value); lcd_gotoxy(1,1); printf(lcd_putc,"SPEED_SET : %3Lu",tocdo_dat); lcd_gotoxy(1,2); printf(lcd_putc,"SPEED : %3Lu",tocdo); } } } thay đổi nội dung bởi: dovandoan06011, 24-11-2009 lúc 01:56 AM. |
![]() |
![]() |
|
|