ROS系统程序异常总结

ROS系统程序异常总结
单开一贴,记录日常代码中触碰到的ros程序异常及bug,备忘

2019/05/27

Terminate called after throwing a instance of ‘std::invalid_argument’ what():Empty port is invalid

wt61c串口通信项目:将串口编号通过launch文件上传到parameter service中,然后在程序中获取参数,编译通过,运行报错
param上传放在了node元素里面.
ROS系统程序异常总结_第1张图片wt61c.ruleslaunch文件
错误原因:launch文件在节点内部上传参数后,参数名称变为/node_name/parameter_name,所以在程序获取参数时:

n.getParamCached("sensor_uart/uart_com", com_); //com_为str型变量,用于存储串口名称

将参数上传语句放置节点外部也可通过.

ASCII codec can’t encode character u’\uff11’ in position 4: ordinal not in range(128)

wt61c串口通信项目:文件编译运行都能通过,然鹅过了位置时间再次编译运行产生了莫名其妙的错误…
运行报错错误原因:由于莫种神秘原因导致源码中多了一些神秘字符串(或许是午休睡觉脸输入的),导致ASCII码无法识别导致报错,解决办法,按照提示位置查找代码,删掉非法字符即可(注意:可能是一些不可见字符导致的),如果代码段是你想要的,而ASCII码无法识别,在报错代码后添加.encode(‘utf-8’)即可

你可能感兴趣的:(异常录)