使用慧鱼机器人探索包,在ROBO PRO中应用PID算法(只使用比例运算控制)实现小车对黑色轨迹的循迹功能以及对障碍物的规避功能

文章介绍了一种基于ROBOPRO图形化编程的智能车控制系统,利用PID调节双电机实现平滑转弯和避障。通过摄像头识别黑线并计算偏差,结合比例系数调整电机输出,确保小车精确循迹。此外,还包含了避障和直角拐弯的模块设计,当检测到特定颜色或障碍物时,智能车能够自动调整行驶路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

慧鱼机器人包是一个简易比较容易上手的机器人学习包。其控制板可以通过ROBO PRO进行图形化编程实现对电机等原件的输出、对红外、视觉等传感器的信号接收处理。

这里提供了一个基于ROBO PRO编程实现的智能车控制程序,本程序实现了使用PID进行双电机的输出,可以做到丝滑地使小车拐弯以及避障,程序以及小车如下:

 

ROBO PRO的编程类似于流程图。从开始一步一步地往下执行。

程序开始给了一个三秒地延时,是给摄像头地启动时间,保证摄像头开始输出就可以获得清晰明了的图像数据。 摄像头通过判断黑线在视野中的位置与0位置的偏差(即坐标)输入整形的位置数据,寄存到变量pos中方便后续使用。

棱形模块为条件判断模块,有4个引脚。其中上方引脚类似于一个使能端,左边引脚为条件输入,下边引脚为判断条件符合给定边界的输出,右边引脚为判断条件不符合给定边界的输出。我们可以通过对左右引脚下面加入控制模块对程序的控制功能进行实现。

本程序中设定了一个电机的初始输出值为c=300。KP为比例系数,M1、M2为输出其中用到控制的比例计算公式如下:(公式中的+和-需要结合自身小车的电机安装方式进行调整)

                                                 M1=c-KP*pos

                                                 M2=c+KP*pos

通过对公式中的KP进行调整,可以找到一个适合于本小车的系数,使M1、M2的输出现差距,从而实现对小车的位置偏差修正,达到对小车的控制目的。

此处为摄像头识别到红色就结束本次程序运行的控制模块,原理以及编写简单。

 此处为避障模块和直角拐弯模块。直角拐弯原理为在摄像头视野的左右两侧加入数值的识别坐标,当该两坐标识别到特征,马上停止主程序的运行,跳转到分支中执行相应方向的转弯。

避障原理也相对简单,当距离传感器识别到障碍物进入了一定距离,程序马上执行避障分支,即控制两个电机暂时不黑线循迹,而是按一定的速度差和时间,避开障碍物再回到线路上继续循迹。

这是摄像头控制模块。其中水平坐标为循迹坐标,是比例算法的偏差输入源。两条竖直坐标为直角拐弯识别输入。。绿色方框为颜色识别模块,控制程序的中止运行。

对于这种小车的控制是通过对两个电机的控制来实现的,不同的转速差距可以拐不同曲率的弧线。 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值