qq_33670784 2017-11-30 02:16 采纳率: 50%
浏览 2035
已采纳

请教一个ROS编写发布者程序的问题

按照机器人操作系统浅析中发布者程序编写的步骤 到最后一步catkin时候一直报错报错如下:
[ 50%] Built target hello
[ 75%] Building CXX object agitr/CMakeFiles/pubvel.dir/pubvel.cpp.o
/home/lucky/ros/src/agitr/pubvel.cpp:12:3: error: stray ‘\342’ in program
msg.angular.z=2*double(rand())/double(RAND_MAX)−1;
^
/home/lucky/ros/src/agitr/pubvel.cpp:12:3: error: stray ‘\210’ in program
/home/lucky/ros/src/agitr/pubvel.cpp:12:3: error: stray ‘\222’ in program
/home/lucky/ros/src/agitr/pubvel.cpp: In function ‘int main(int, char**)’:
/home/lucky/ros/src/agitr/pubvel.cpp:12:53: error: expected ‘;’ before numeric constant
msg.angular.z=2*double(rand())/double(RAND_MAX)−1;
^
agitr/CMakeFiles/pubvel.dir/build.make:62: recipe for target 'agitr/CMakeFiles/pubvel.dir/pubvel.cpp.o' failed
make[2]: *** [agitr/CMakeFiles/pubvel.dir/pubvel.cpp.o] Error 1
CMakeFiles/Makefile2:963: recipe for target 'agitr/CMakeFiles/pubvel.dir/all' failed
make[1]: *** [agitr/CMakeFiles/pubvel.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j1 -l1" failed

pubvel 文件为
#include
#include
#include
int main (int argc,char **argv) {
ros::init(argc,argv,"publish_velocity") ;
ros::NodeHandle nh ;
ros::Publisher pub=nh.advertise("turtle1/cmd_vel",1000); srand(time(0));
ros::Rate rate(2);
while(ros::ok()){
geometry_msgs::Twist msg;
msg.linear.x = double (rand ( ) ) / double(RAND_MAX);
msg.angular.z=2*double(rand())/double(RAND_MAX)−1;
pub.publish(msg);
ROS_INFO_STREAM("Sending random velocity command:"<<"linear="<<msg.linear.x<<"angular="<<msg.angular.z);
rate.sleep();
}
}

  • 写回答

3条回答 默认 最新

  • zxtchiu 2018-04-21 02:51
    关注

    msg.angular.z=2*double(rand())/double(RAND_MAX)−1;

    这句代码你是从pdf上粘贴过来的吧,问题在于最后的-1,前面的不是减号,可能被翻译成中文的了!!!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)