simuling to ros float64multiarray publish layout problem
17 次查看(过去 30 天)
显示 更早的评论
Hi,
I am trying to publish 1x4 float64multiarray type message (exact message= [50, -50, 50, -50]) from simulink to ros topic. Although I followed regular procedure to do so; and did not feed in anything for layout at first, I am encountering this error from ros/gazebo simulation:
[ERROR] [1598824459.302691869, 6043.341000000]: Dimension of command (0) does not match number of joints (4)! Not executing!
I managed the array sizes for ROS message as 4 (which it is for [50, -50, 50, -50]). Thus, I think I have problem with layout. How can I resolve this problem? Which layout data shall I feed in for bus assignment?
Further details can be found from picture.
Best regards.
EG
(from terminal simulation runs if I write " rostopic pub -l /***/joint_motor_controller/command std_msgs/Float64MultiArray "data: [50, -50, 50]" ")
1 个评论
Ali Aflakian
2021-2-22
Hi,
I have exactly the same proplem. Could I possible ask, did you managed to solve that and how?
Regards,
Ali
回答(1 个)
Tohru Kikawada
2021-4-24
In your case, you'll need to use MATLAB Function block for the nested message type, so it's a bit complicated. I've attached an example to assign an array to std_msgs/Float64MultiArray. Pleasse refer Work with Nested Arrays of Messages section in the following documentation for details.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Publishers and Subscribers 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!