No action when using Simulink ROS Publish block
2 次查看(过去 30 天)
显示 更早的评论
Hi everyone.
This is a strange problem. I'm trying to use simulink Ros block to monitor and actuate a robotic arm. After several attempts, the Subscribe block is finally capable to provide real time measures of the robot sensors (Joint Positions).
What I'm trying to do now is to Publish torque command in order to achieve one task.
So I input Sine wave signals to all my joints (fixed array [7 x 1]) just to see what happens when I publish it with Ros Publish Block. From time to time I got a Segmentation Fault in my Robot Ros node, but most of the time nothing happens.
I really don't understand what is the problem.
So anybody experience would be welcome.
Sincerely
0 个评论
采纳的回答
Sebastian Castro
2018-10-3
In the Simulink-ROS interface, all arrays are treated like C arrays. You need both the content and the length of the array to successfully publish.
In addition to setting the Effort signal, you need to go into the Effort_SL_Info > CurrentLength signal and set its value to the dimension of the vector -- in this case, a uint32 valued 7.
Check this link for more information: https://www.mathworks.com/help/robotics/examples/work-with-ros-messages-in-simulink.html
- Sebastian
更多回答(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!