Skip to content

Latest commit

 

History

History
49 lines (30 loc) · 1.53 KB

README.md

File metadata and controls

49 lines (30 loc) · 1.53 KB

ros2 + Matlab simulation

3.1 设计思路

直接基于 sl_drivepoint 模型,订阅机器人的 /neor_foxy_mini/pose坐标信息 xy,将其作为反馈信息求出前轮偏转角 gamma和速度 v(两个公式),发布一个自己的topic节点 sim_akm_topic ( AckermannDrive类型的信息),自己在wsl写一个订阅节点,订阅 sim_akm_topic并将信息转化为 AckermannDriveStamp类型发布给 /neor_foxy_mini/cmd_ackermann话题

💡 这里应该可以在Simulink中直接发送AckermannDrive

3.2 simulink模型

Untitled (1)

3.3 仿真流程以及仿真结果

S1 在matlab界面用ros2genmsg()加入ackermann_msgs_master中的AckermannDrive.msg

使用教程:

[Generate custom messages from ROS 2 definitions - MATLAB ros2genmsg

S2 在wsl中 (1)终端1中打开empty_world

cd neor_mini/sim_20_ws
source install/setup.bash
ros2 launch neor_mini_foxy neor_mini_gazebo.launch.py world:=empty

(2)终端2打开中介节点

cd akm/akm_ws
source install/setup.bash
ros2 run ackermann_interface akm_topic

S3 在simulink中,打开drpoint.slxc,配置好ros2之后运行

仿真结果:

Untitled (2)

小车到达了(5,5)的位置并停止