基于MPC的轨迹跟踪以及ROS与Simulink、prescan的联合仿真实践

基于MPC的轨迹跟踪以及ROS与Simulink、prescan的联合仿真实践

附赠自动驾驶最全的学习资料和量产经验:链接

01  准备工作

· 硬件基础:PC1和PC2连接在同一局域网下;

· PC1为Ubuntu系统,运行MPC控制算法;

· PC2为Windows系统,运行Simulink程序。

02  ROS通讯节点的建立

2.1 局域网的建立

将PC1和PC2用网线/路由器链接,查看PC1和PC2的IP地址,并修改在同一网段下。Windows端在此使用IP: 192.168.62.10,Ubuntu端在此使用IP: 192.168.62.199,具体修改两者以太网IP操作在此不详细讲解。

2.2 修改ROS的IP与PC1的IP一致,将其写入到.bashrc文件

桌面打开终端,进入.bashrc文件(注:这里安装了sublime编辑器,也可使用gedit,vim等)。

image

打开后加入以下命令(ROS的IP改为PC1的IP),然后保存退出。

image

2.3 启动roscore,并在PC2的Matlab命令行输入以下指令,若返回下图信息,则ROS与Matlab连接成功。

image

03  ROS与Simulink之间节点的订阅和发布

在此,拟采用std_msgs/Float64MultiArray和geometry_msgs/Twist来传递路径信息和车辆位置信息给ROS,使用geometry_msgs/Twist来传递ROS中MPC程序的计算结果返回于Simulink。

3.1 Simulink message的发布

打开simulink,找到ROS模块库,选择Blank Message和Publish模块,找到Simulink/Signal Routing部分,选择Bus Assignment模块。

image

image

Blank Message模块用指定的消息或服务类型创建一个空白消息Bus Assignment模块可以修改总线信号中的特定字段。

在Blank Message模块选择要传输的message类型,并连接至Bus Assignment的Bus端,Bus Assignment选择数据和数据长度(注:数据长度为必选项,否则会出现数据异常,ROS端能接收到话题但无数据)。

image

  • 30
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ROS(机器人操作系统)是一个开源的软件框架,用于实现机器人系统的开发、控制和通信。Simulink是由MathWorks公司开发的一个用于进行模型创建、仿真和分析的图形化编程环境。CARSim是一款用于进行车辆动力学仿真的软件工具。 ROSSimulink联合仿真可以实现ROS系统与Simulink模型之间的交互与通信。通过ROS节点,可以将Simulink模型作为ROS的一个节点进行集成。这样,Simulink模型可以订阅和发布ROS的消息,与其他ROS节点进行数据交换和通信。 在ROSSimulink之间建立通信桥梁的方法是使用ROS库和工具包,如ROS Toolbox、Robotics System Toolbox等。通过使用这些工具包提供的功能和接口,可以在Simulink中实现与ROS的通信机制。 在联合仿真中,Simulink可以接收和发送由ROS节点发布的传感器数据和控制指令,从而实现与ROS系统的数据交互。同时,Simulink模型也可以将结果数据发送给ROS节点,用于进行可视化、数据记录和其他后续处理。 通过ROSSimulink联合仿真,可以实现对车辆行为和动力学的建模和仿真。在Simulink中,可以构建车辆动力学模型,基于各种传感器数据进行感知和控制。通过与ROS节点的通信,可以将模型与真实车辆进行实时交互,测试和验证控制算法和行为模式。 总之,ROSSimulink联合仿真为车辆系统的开发和测试提供了一个强大的工具。它允许开发人员在一个综合的环境中进行系统仿真、控制算法开发和硬件接口集成。通过这种方式,可以提高开发效率,减少系统开发周期,并增强对车辆行为的理解和预测能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值