我想通过 roslibjs 访问由 gps 节点在自定义 gps msg 中发布的数据。因此,我使用了本教程,但在我的情况下,订阅回调返回的消息对象始终只是undefined。
var listener = new ROSLIB.Topic({
ros : ros,
name : '/gps_raw',
messageType : 'gps_node/gps_raw'
});
listener.subscribe(function(message) {
console.log('Received message on ' + listener.name + ': ' + message.data);
});
结果:
Received message on /gps_raw: undefined
味精结构:
int32 gps_sats
float32 lat
float32 lon
int32 heading
int32 alt
https://github.com/MrGrimod/ros_airdrop/blob/master/src/gps_node/msg/gps_raw.msg
您的消息类型没有该字段data
。尝试在控制台日志中显示其他字段:gps_stats
,lat
,lon
等。
编辑:您还可以使用JSON.stringify来显示所有消息的内容,如下所示:
console.log(`Received message on ${listener.name}: ${JSON.stringify(message)`);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句