ROS与arduino的通讯使用了ros_arduino_bridge,代码也是根据学校师兄的代码进行修改的,师兄说直接烧录就可以使用了但我还是遇到了很多问题,Debug的很难受,以下操作仅供参考,需要根据实际情况自行调整
L298N的使用

连接方式
- 不调速:直接与IN1、IN2连接,ENA、ENB键帽不动(键帽的作用是让ENA、ENB默认与5V连接,这样才能驱动电机转动,只有ENA、ENB处于高电平时对应的电机才能转动)
- 调速:IN1.2.3.4与arduino连接后,将ENA、ENB在IN平行一侧的针脚与arduino的PWM输出引脚连接,对ENA和ENB使能端输入PWM脉冲
- 也有文章说可以直接arduino的pwm输出直接连接IN1、IN2来调速,但是在多次尝试后发现不行
与arduino的连接
这里要注意L298N与arduino一定要共地,直接GND与arduino的GND连接,调试的时候可以将L298N的5V口与arduino连接供电(因为供电口键帽没有拔掉的时候5V可以用来输出)
附上接线部分代码
//电机定义,ENCODER_1代表编码器正极,A标号为左侧电机
#define PWMA 10
#define AIN1 4
#define AIN2 5
#define AENCODER_1 3 //INT1--

本文介绍了ROS与Arduino通讯及L298N的使用。L298N连接分不调速和调速两种方式,与Arduino连接需共地。选用Arduino Mega板有引脚多等优势。作者还分享了代码相关情况,包括宏定义、通讯部分修改,以及中断技巧和PID调试问题,代码已上传到GitHub。
最低0.47元/天 解锁文章
6839





