Arduino—电机控制

11 篇文章 0 订阅
5 篇文章 0 订阅

直流电机是指能将直流电能转换成机械能的机械设备。
因其良好的调速性能而在电力拖动中得到广泛应用。
功能:实现电机1和电机2循环正转1秒,然后反转1秒;

#define motor1pin 4
#define motor1pwm 5
#define  motor2pin 7
#define motor2pwm 6

void setup()
{}
void loop()
{
   motor(motor1pin,motor1pwm,1,180);      //电机1以180的速度正转,45口控制电机1
   motor(motor2pin,motor2pwm,1,180);      //电机2以180的速度正转,67口控制电机2
   delay(1000);
   motor(motor1pin,motor1pwm,2,180);      //电机1以180的速度反转
   motor(motor2pin,motor2pwm,2,180);      //电机2以180的速度反转
   delay(1000);
}
void motor(char pin,char pwmpin,char state,int val)//参数pin是输入的高低电平的IO口,pwmpin表示输入的PWM波形的IO口,state指电机状态(正转或反转),val是调速值大小0-255
{
    pinMode(pin, OUTPUT);    
  if(state==1)                             //当state为1时正转
  {  
    analogWrite(pwmpin,val);
    digitalWrite(pin,1);
   }
  else if(state==2)                     //当state为2时反转
{  
   analogWrite(pwmpin,val);
   digitalWrite(pin,0);
}
else if(state==0)                     //当state为0时停止
{
    analogWrite(pwmpin,0);
    digitalWrite(pin,0);
}
}
  • PWM调速:
  • PID调速:
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值