%Author:Jack Ju
%Function:两轮差速履带车跟踪控制验证
%HIT
%20200710
clear
%%%%两轮差速履带车数学模型建立%%%%%%
%%参数设置
L=4;%两个轮子间的距离
T=0.1;%采样时间
x=2;%初始化位置x坐标
y=1;%初始化位置y坐标
theta=pi/2;%初始化位置theta坐标
x_goal=10;%终点位置坐标
y_goal=10;%终点位置坐标
x_push=[x];
y_push=[y];
theta_push=[];
theta_push=[theta];
k=10;%比例
ki=0.1;%积分
kd=0.1%微分
k2=1;
error_sum=0;
pre_error=0;
while((x-x_goal)^2+(y-y_goal)^2 >0&&(x-x_goal<=0))
%%%%%%%%%这一段设置跟踪器,跟踪一段直线%%%%%%
%%%第一个航向角pid控制器,输出w
%%%计算当前与目标的朝向误差
theta_goal=atan((y_goal-y)/(x_goal-x));
theta_error=theta-theta_goal;
error_sum=error_sum+theta_error;
w=-k*(theta_error)+ki*error_sum+kd*(theta_error-pre_error);
pre_error=theta_error;
%%%%第二个距离的pid控制器,输出v
dist=((x-x_goal)^2+(y-y_goal)^2)^(1/2);
v=k2*dist;
%%%%控制输入,左电机和右侧电机。
vr=v+w*L/2;%控制输入需要你去更改//4代表着你想让车走多快,我这里未考虑到。
vl=v-w*L/2;%控制输入需要你去更改
%%%%process model
%%%运动模型
v=(vl+vr)/2;%中心速度
w=(vr-vl)/L;
x=x+v*cos(theta)*T;
y=y+v*sin(theta)*T;
theta=theta+w*T;
x_push=[x_push;x];
y_push=[y_push;y];
theta_push=[theta_push;theta];
end
plot(x_push,y_push,'-+')%,'LineWidth',2)
xlabel("X")
ylabel("Y")
title("轨迹图,初始航向角pi/2")
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1.项目代码功能经验证ok,确保稳定可靠运行。欢迎下载使用! 2.主要针对各个计算机相关专业,包括计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师或企业员工使用。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、初期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时私信沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈! 【资源说明】 基于matlab实现的两轮差速履带车跟踪控制及验证源码+超详细注释+项目说明.zip 可用于无人船轨迹跟踪控制 一个关于基于Matlab跟踪追踪的验证 数学模型基于两轮差速的小车模型 Trajectory and Control.m文件中代码中主要用PID环节对航向角进行控制,迫使小车走向目标。 trajectory(两个闭环).m文件中主要用PID环节对航向角和距离进行控制,迫使小车走向目标。(效果很好) 我会设置小车起点坐标: x=2,y=1,theta=pi/6,终点只是限制x=10,y=10; x=2,y=1,theta=pi/2,终点只是限制x=10,y=10; 可以得到两个不同轨迹图(只是修改了航向角theta,你也可以修改起点坐标) 附件参见附件。 基于matlab实现的两轮差速履带车跟踪控制及验证源码+超详细注释+项目说明.zip 基于matlab实现的两轮差速履带车跟踪控制及验证源码+超详细注释+项目说明.zip 基于matlab实现的两轮差速履带车跟踪控制及验证源码+超详细注释+项目说明.zip
资源推荐
资源详情
资源评论
收起资源包目录
基于matlab实现的两轮差速履带车跟踪控制及验证源码+超详细注释+项目说明.zip (6个子文件)
Trajectory and Control.m 1KB
项目说明.md 656B
(2 1 pi 6).jpg 254KB
(2 1 pi 2).jpg 258KB
Trajectory and Control.asv 1KB
trajectory(两个闭环).m 2KB
共 6 条
- 1
资源评论
- 2301_766994512024-04-23感谢资源主分享的资源解决了我当下的问题,非常有用的资源。
- Peterva2024-03-19资源有很好的参考价值,总算找到了自己需要的资源啦。
- m0_689114842024-03-06资源简直太好了,完美解决了当下遇到的难题,这样的资源很难不支持~北航程序员小C2024-03-12嗯嗯,感谢您的支持和认可呀,欢迎交流学习~
北航程序员小C
- 粉丝: 2726
- 资源: 1829
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- n.cpp
- jdk-8u411-windows-x64下载安装可用
- vgg模型-图像分类算法对水果识别-不含数据集图片-含逐行注释和说明文档.zip
- KMP算法(Knuth-Morris-Pratt算法
- vgg模型-python语言pytorch框架训练识别化妆品分类-不含数据集图片-含逐行注释和说明文档.zip
- KMP算法(Knuth-Morris-Pratt算法
- shufflenet模型-基于人工智能的卷积网络训练识别狗的表情-不含数据集图片-含逐行注释和说明文档.zip
- shufflenet模型-python语言pytorch框架训练识别张嘴闭嘴-不含数据集图片-含逐行注释和说明文档.zip
- resnet模型-基于人工智能的卷积网络训练识别面部表情识别-不含数据集图片-含逐行注释和说明文档
- resnet模型-python语言pytorch框架训练识别香蕉品质-不含数据集图片-含逐行注释和说明文档.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功