arduino编码器计数_Arduino编码器小车左右转速同步的PID调节实验二

该博客介绍了一个使用Arduino进行编码器计数的实验,通过PID调节实现小车左右轮电机转速同步。实验中,编码器的信号连接到Arduino的外部中断端口,中断子程序用于计数,并根据转速差调整右轮电机的PWM功率,确保两轮速度一致。
摘要由CSDN通过智能技术生成

//定义变量程序段

//把小车左轮电机编码器码盘的OUTA信号连接到Arduino控制器的数字端口2,

//数字端口2是Arduino的外部中断0的端口。

#define PinA_left 2 //外部中断0

#define PinB_left 8 //小车左车轮电机编码器码盘的OUTB信号连接到数字端口8

//把小车右车轮电机编码器码盘的OUTA信号连接到Arduino控制器的数字端口3,

//数字端口3是Arduino的外部中断1的端口。

#define PinA_right 3 //外部中断1

#define PinB_right 9 //小车右车轮电机编码器码盘的OUTB信号连接到数字端口9

int E_left =5; //L298P直流电机驱动板的左轮电机使能端口连接到数字接口5

int M_left =4; //L298P直流电机驱动板的左轮电机转向端口连接到数字接口4

int E_right =6; //连接小车右轮电机的使能端口到数字接口6

int M_right =7; //连接小车右轮电机的转向端口到数字接口7

int val_right; //小车右轮电机的PWM功率值

int val_start;//上位机控制字节,用于控制电机是否启动;

int val_FB;   //上位机控制字节,用于控制电机是正转还是反转;

int val_left;//上位机控制字节,用于提供给左轮电机PWM功率值。

int count1 = 0;  //左轮编码器码盘脉冲计数值

int count2= 0; //右轮编码器码盘脉冲计数值

int rpm1 = 0;  //左轮电机每分钟(min)转速(r/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值