你现在位置:首页>技术论文>电气常识>电机与传动>正文
新型PID应用直流电机速度调节
日期:2008-5-3 14:44:21 来源:本站整理  
点击: 作者:
点击【】放大字体.
WWW.PLCJS.COM——可编程控制器技术门户

#include <mega16.h> 
plcjs.技.术_网

#include<math.h>
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

#include<delay.h>
WW.W_PLCJS_COM-PLC-技.术_网

#include "lcdbn.h"
plcjs.技.术_网

uchar data1[4]={0,2,5,0};
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

uchar data2[4]={0,0,0,0};
——可——编——程——控-制-器-技——术——门——户

uchar j,key=0;
WWW_PLC※JS_COM-PmLC-技.术_网

uchar chr[]="pre:   *2%";
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

uchar *chr1[3]={"openc V:      ",
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

                "shutc V:      ",
WWW_P※LCJS_CO※M-PLC-技-.术_网

                "acceler:      "} ;
W1WW_P4LCJS_COM-PLC-技.术_网

uchar counter1=0x84;
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

uchar counter2=0xc8;
W1WW_P4LCJS_COM-PLC-技.术_网

uchar flag;       //flag为开闭使能 
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

int E1r;
P.L.C.技.术.网——可编程控制器技术门户

int E2r=0,E3r=0;
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

uint  speedr=15,c_r=0;//maxc=700;
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

void init_intr(void)
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

{
WWW_P※LCJS_CO※M-PLC-技-.术_网

SREG=0x80;
WW.W_PLC※JS_C,OM-PL,C-技.术_网

TIMSK=0x40;
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

TCCR2=0x06;
P.L.C.技.术.网——可编程控制器技术门户

TCCR1A=0xe3; //A比较高电平,B比较低电平
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

TCCR1B=0x0a; 
WW.W_PLCJS_COM-PLC-技.术_网

MCUCR=0x0a; ///外部INT1/0中断上升有效
WWW.PLCJS.COM——可编程控制器技术门户

GICR=0xc0; 
WWW_P※LCJS_COM-PLC-)技.术_网

P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

////////////////////////////////////
W1WW_P4LCJS_COM-PLC-技.术_网

/////左右电机pwm设置
WWW_P※LCJS_COM-PLC-)技.术_网

///////////////////////////////////
WWW_PLCJS@_COM%-PLC-技.术_网

void setpwmr(uchar *p)
WWW_PLCJS_COM-PLC-技.术_网

{ uint temp1;
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

temp1=(uint)p[1]*10+p[2];
plcjs.技.术_网

if(temp1<25)
WWW_PLCJS@_COM%-PLC-技.术_网

{
WWW_PLCJS@_COM%-PLC-技.术_网

speedr=(uint)28-temp1*28/25;
WWW_PLCJS_COM-PLC-技.术_网

}
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

else
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

{
WWW_PL※CJS_COM-PLC-技.术_网

speedr=(uint)temp1*28/25-28;
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

}
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

temp1=1023*temp1/50;
WWcW_PLCJS_COM-PLC-技.术_网

OCR1A=temp1;
WWW_P※LCJS_CO※M-PLC-技-.术_网

OCR1B=temp1;
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

W1WW_P4LCJS_COM-PLC-技.术_网

/////转速加/减调速//////
plcjs.技.术_网

void add(uchar*p)  
WW.W_PLC※JS_C,OM-PL,C-技.术_网

{
WW.W_PLC※JS_C,OM-PL,C-技.术_网

if(p[1]!=5)
WW.W_PLCJS_COM-PLC-技.术_网

{
WWW_PLC※JS_COM-PmLC-技.术_网

p[2]++;
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

if(p[2]==10)
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

{
plcjs.技.术_网

p[2]=0;p[1]++;
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

}
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

}
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

}
WWW.PLCJS.COM——可编程控制器技术门户

void sub(uchar *p)
WW.W_PLCJS_COM-PLC-技.术_网

{
WWW_PLC※JS_COM-PmLC-技.术_网

uchar temp;
——可——编——程——控-制-器-技——术——门——户

temp=p[1]*20+p[2]*2;
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

if(temp!=0)
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

temp=temp-2;
WWW_P※LCJS_CO※M-PLC-技-.术_网

p[1]=temp/20;      //设定值还原//
W1WW_P4LCJS_COM-PLC-技.术_网

p[2]=(temp-p[1]*20)/2;
——可——编——程——控-制-器-技——术——门——户

WWW.PLCJS.COM——可编程控制器技术门户

void display()
WWW_P※LCJS_COM-PLC-)技.术_网

{  write_string(0x80,chr); 
——可——编——程——控-制-器-技——术——门——户

    write_string(0xc0,chr1[key]);
WWW.PLCJS.COM——可编程控制器技术门户

    write_order(counter1+0); 
W1WW_P4LCJS_COM-PLC-技.术_网

    write_Data(data1[0]+0x30);
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

   for(j=1;j<3;j++)
plcjs.技.术_网

     {write_order(counter1+j); 
WWW_PLC※JS_COM-PmLC-技.术_网

      write_Data(data1[j]+0x30);
plcjs.技.术_网

      }
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

      for(j=0;j<4;j++)
WWW_PLC※JS_COM-PmLC-技.术_网

     {
WWW_P※LCJS_CO※M-PLC-技-.术_网

     write_order(counter2+j); 
WWW_PLCJS_COM-PLC-技.术_网

      write_Data(data2[j]+0x30);
WW.W_PLC※JS_C,OM-PL,C-技.术_网

      }  
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

}
WW.W_PLC※JS_C,OM-PL,C-技.术_网

//////速度调节////
P.L.C.技.术.网——可编程控制器技术门户

void speed_change(void)
plcjs.技.术_网

{
WWW_P※LCJS_COM-PLC-)技.术_网

if(PINA.1==0)
plcjs.技.术_网

{
WW.W_PLC※JS_C,OM-PL,C-技.术_网

delay_ms(100);
WWW.PLCJS.COM——可编程控制器技术门户

if(PINA.1==0)
WWW_PLCJS@_COM%-PLC-技.术_网

{add(data1); }
W1WW_P4LCJS_COM-PLC-技.术_网

}
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

 if(PINA.2==0)
WWW_PLC※JS_COM-PmLC-技.术_网

{delay_ms(100);
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

if(PINA.2==0)
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

{sub(data1);}
WWW_P※LCJS_COM-PLC-)技.术_网

WWW_P※LCJS_CO※M-PLC-技-.术_网

——可——编——程——控-制-器-技——术——门——户

/////键盘读取////
WWcW_PLCJS_COM-PLC-技.术_网

void testkey(void)
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

WWW_P※LCJS_COM-PLC-)技.术_网

uchar flag2=0;
WWW_P※LCJS_CO※M-PLC-技-.术_网

if(PINA!=0x0f)
WW.W_PLCJS_COM-PLC-技.术_网

{  delay_ms(10);
——可——编——程——控-制-器-技——术——门——户

  if(PINA!=0x0f)
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

  {flag2=1;}
WWW_PLCJS_COM-PLC-技.术_网

}  
WWW_PLC※JS_COM-PmLC-技.术_网

if(flag2)
WWW_PLCJS_COM-PLC-技.术_网

{
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

  while(PINA.3!=0)
P.L.C.技.术.网——可编程控制器技术门户

 {   
WWW_P※LCJS_CO※M-PLC-技-.术_网

  while(PINA.0==0)
WWcW_PLCJS_COM-PLC-技.术_网

  { delay_ms(100);
WWW_P※LCJS_COM-PLC-)技.术_网

  if(PINA.0==0)
WWW_P※LCJS_COM-PLC-)技.术_网

 {
WWW_P※LCJS_COM-PLC-)技.术_网

 if(key<2)
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

  {key++;}
plcjs.技.术_网

  
WW.W_PLCJS_COM-PLC-技.术_网

  else 
WWW_PL※CJS_COM-PLC-技.术_网

  key=0;}
P.L.C.技.术.网——可编程控制器技术门户

  }
WW.W_PLCJS_COM-PLC-技.术_网

  
WWW.PLCJS.COM——可编程控制器技术门户

switch (key)
W1WW_P4LCJS_COM-PLC-技.术_网

{case 0:          //模式1PID调节

本新闻共3页,当前在第11 2  3  
WWW_P※LCJS_COM-PLC-)技.术_网

评论内容
载入中...
载入中...
P
L
C



|










|


P
L
C









·最新招聘信息
·最新求职信息
·推荐产品
·推荐厂商
·栏目热门排行
·站内热门排行