直流電機的速度環(huán)PI控制-速度電流檢測部分仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
QQ截圖20180528094758.png (102.06 KB, 下載次數(shù): 36)
下載附件
2018-5-28 10:11 上傳
QQ截圖20180528093228.png (70.91 KB, 下載次數(shù): 38)
下載附件
2018-5-28 10:11 上傳
QQ截圖20180528093054.png (68.91 KB, 下載次數(shù): 24)
下載附件
2018-5-28 10:11 上傳
QQ截圖20180528093026.png (14.41 KB, 下載次數(shù): 33)
下載附件
2018-5-28 10:11 上傳
單片機源程序如下:
- #include <absacc.h>
- #include <reg51.h>
- #define IN0 XBYTE[0x7ff8]
- unsigned char disbit[]={0xfe,0xfd,0xfb,0xf7};
- unsigned char code discode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
- unsigned int disbuf[4]={0,0,0,0};
- unsigned int ad=100;
- unsigned char q=0;
- unsigned char *Adr;
- unsigned char count,miaoshu;
- unsigned char sec,tcnt;
- sbit p26=P2^6;
- void delay(unsigned char N)
- {
- unsigned char i;
- for(i=0;i<N;i++);
- }
- void display(unsigned char ch)
- {
- unsigned char k; //顯示,常用的一種程序,可以把disbuf數(shù)組變成一個暫時變量輸出
- disbuf[0]=ch%10;
- disbuf[1]=(ch%100)/10;
- disbuf[2]=ch/100%10;
- disbuf[3]=1;
- for(k=0;k<4;k++)
- {
- P2=0xff; // p2作為輸出,必須先置高電平
- P1=discode[disbuf[k]];
- P2=disbit[k];
- }
- }
-
- void read_ch(void) interrupt 0 using 0
- {
-
- ad=*Adr;
-
- }
- void t0(void) interrupt 1 using 0 //定時T0中斷服務函數(shù)
- {
- tcnt++; //每過250ust tcnt 加一
- if(tcnt==40) //計滿40 次(1/100 秒)時
- {
- tcnt=0; //重新再計
- sec++;
- if(sec==10) //定時0.1 秒,在從零開始計時
- {
- sec=0;
- TH0=0x06; //對TH0 TL0 賦值
- TL0=0x06;
- miaoshu=count;
- count=0;
- }
- }
- }
- void sdf(void) interrupt 2 using 0 //計數(shù)T1中斷服務函數(shù)
- {
- count=count+1;
-
-
- }
- main()
- {
- unsigned int m;
- unsigned char s1=0x44;
- EX0=1;
- IT1=1;
- Adr=&IN0;
- TMOD=0x02; //定時器T0工作在方式2 自動重裝方式,計數(shù)器T1工作在方式2 自動重裝方式
- TH0=0x06; //對TH0 TL0 賦值
- TL0=0x06;
- TR0=1; //開始定時
- ET0=1; //允許T0 產(chǎn)生中斷
- EA=1;
- EX1=1;
- TR1=1;
- IT1=1;
- EA=1;
- sec=0;
- SCON=0x90; //MODER1,REN=1;
- PCON=0x00;
- miaoshu=0;tcnt=0;count=0;
- while(1)
- {
- *Adr=0;
- for(m=0;m<5000;m++)
- {
- if(p26==1)
- {display(ad);
- }
- else
- { display(miaoshu);
- }
- }
- do{
- SBUF=0xff;
- while(TI==0);TI=0;
-
- while(RI==0);RI=0;
- }while(SBUF!=0xbb);
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
0.png (41.53 KB, 下載次數(shù): 38)
下載附件
2018-5-28 18:58 上傳
所有資料51hei提供下載:
速度電流檢測部分.zip
(226.67 KB, 下載次數(shù): 85)
2018-5-28 10:11 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|