最近玩智能小车的朋友很多,我也研究过,所以就写个关于智能小车的教程,包括电机,超声波,舵机,蓝牙,测速等等,写到哪算哪吧……
直流电机是智能小车必不可少的组成部分,而对于普通直流电机,由于转速比较高,具体应用时应加齿轮传动机构,当然也可以直接选择直流减速电机,但arduino不能直接驱动电机,因为电机属于大功率的器件,转动时电流很大,会烧毁arduino,所以要加电机驱动模块,常见的电机驱动模块像l298n,l293d等,l298n与L293D的差别是输出电流更大,可以驱动大功率直流电机,步进电机,所以更受欢迎……
l298n可以实现电机的正反转,实现此功能只需要改变输入端的逻辑电平,并且可以调速

这张图各引脚接线标注的很清楚了,IN1,IN2是控制电机A的正反转,IN3,IN4是控制电机B的正反转,ENA,ENB是使能端,你可以把它理解为总开关,只有当它们是高电平的时候电机才能工作,也能调速,可以通过短路帽直接连接5v,当然这就是全速了,具体是怎样实现正反转呢,请看下图

当IN1是1,IN2是0,那么电机A就可以正转了,同样IN3是1,IN4是0,电机B就是正转,两个电机都是正转,那么小车就能前行了,如果想要后退,只要两个电机都反转就能实现后退,那么怎么转弯呢,很简单,只要改变两个轮子的速度差,就能实现差速转弯,有两种方法:
第一种比如小车向左转,左轮停止,右轮继续转动,这样可实现左转,这种方式实现小角度的转弯,在角度不大时可采用此种方式。
第二种小车向左转,可以是左轮反转,右轮正转,这样可以实现大角度的左转,甚至可以进行原地打转。同理可推出小车如何向右转向。
对于电机的调速,可以采用PWM调速的方法,电机的转速与电机两端的电压成比例,改变PWM占空比就可以改变电压,因此占空比越大电机转的就越快,ENA,ENB可以接uno的3,5,6,9,10,11引脚,analogWrite(3,a),a的范围是0-255,255就是全速。
直流电机是智能小车必不可少的组成部分,而对于普通直流电机,由于转速比较高,具体应用时应加齿轮传动机构,当然也可以直接选择直流减速电机,但arduino不能直接驱动电机,因为电机属于大功率的器件,转动时电流很大,会烧毁arduino,所以要加电机驱动模块,常见的电机驱动模块像l298n,l293d等,l298n与L293D的差别是输出电流更大,可以驱动大功率直流电机,步进电机,所以更受欢迎……
l298n可以实现电机的正反转,实现此功能只需要改变输入端的逻辑电平,并且可以调速

这张图各引脚接线标注的很清楚了,IN1,IN2是控制电机A的正反转,IN3,IN4是控制电机B的正反转,ENA,ENB是使能端,你可以把它理解为总开关,只有当它们是高电平的时候电机才能工作,也能调速,可以通过短路帽直接连接5v,当然这就是全速了,具体是怎样实现正反转呢,请看下图

当IN1是1,IN2是0,那么电机A就可以正转了,同样IN3是1,IN4是0,电机B就是正转,两个电机都是正转,那么小车就能前行了,如果想要后退,只要两个电机都反转就能实现后退,那么怎么转弯呢,很简单,只要改变两个轮子的速度差,就能实现差速转弯,有两种方法:
第一种比如小车向左转,左轮停止,右轮继续转动,这样可实现左转,这种方式实现小角度的转弯,在角度不大时可采用此种方式。
第二种小车向左转,可以是左轮反转,右轮正转,这样可以实现大角度的左转,甚至可以进行原地打转。同理可推出小车如何向右转向。
对于电机的调速,可以采用PWM调速的方法,电机的转速与电机两端的电压成比例,改变PWM占空比就可以改变电压,因此占空比越大电机转的就越快,ENA,ENB可以接uno的3,5,6,9,10,11引脚,analogWrite(3,a),a的范围是0-255,255就是全速。