机器人里程计数据可视化

stm32端返回的x轴线速度、y轴线速度是相对于自身的机体坐标系的速度,而机器人的位置信息是相对于世界坐标系的位置,所以在对速度进行积分前, 要先将机体坐标系下的x轴线速度、y轴线速度转换到世界坐标系 ,如图:
这个坐标变换可以通过一个简单的旋转矩阵来实现
其中θ就是机器人的偏航角。相应的程序如下:
/* 对速度进行积分得到位移 */// 获取当前时间current_time = ros::time::now();// 获取积分间隔double dt = (current_time - last_time).tosec();last_time = current_time;// 将机体系速度转换到里程计坐标系double delta_x = (vx * cos(th) - vy * sin(th)) * dt;double delta_y = (vx * sin(th) + vy * cos(th)) * dt;// 速度积分x += delta_x;y += delta_y;在机器人中,一般使用四元数/旋转矩阵的形式来表示机器人的姿态,而不是欧拉角形式。所以需要将stm32返回的偏航角转换为四元数,程序如下:
geometry_msgs::quaternion odom_quat = tf::createquaternionmsgfromyaw(th);以上就获取了完整的机器人里程计数据,接下来需要将里程计数据发布到ros中。
nav_msgs::odometry odom;geometry_msgs::transformstamped odom_trans;odom_trans.header.stamp = current_time;odom_trans.header.frame_id = odom;odom_trans.child_frame_id = base_link;odom_trans.transform.translation.x = x;odom_trans.transform.translation.y = y;odom_trans.transform.translation.z = 0.0;odom_trans.transform.rotation = odom_quat;// 发布坐标变换odom_broadcaster.sendtransform(odom_trans);odom.header.stamp = current_time;odom.header.frame_id = odom;odom.child_frame_id = base_link;// 设置机器人的位置和姿态odom.pose.pose.position.x = x;odom.pose.pose.position.y = y;odom.pose.pose.position.z = 0.0;odom.pose.pose.orientation = odom_quat;// 设置机器人的速度odom.twist.twist.linear.x = vx;odom.twist.twist.linear.y = vy;odom.twist.twist.angular.z = vth;// 发布里程计消息odom_pub.publish(odom);运行后,打开pc上的ubuntu,配置ip从而实现远程连接嵌入式处理器上的ros系统,参照:ros多机通信(https://blog.csdn.net/qq_42688495/article/details/115260247)
配置完成后,重新打开一个终端,输入:rviz,打开ros的可视化工具,按照下图操作即可
可视化结果如下:
最后将该rviz配置保存至文件,点击file→save config as,将配置保存为xxxx.rviz。下次打开时,在命令行运行:rosrun rviz rviz -d xxxx.rviz即可。

openharmony源码下载地址在哪
基于LTC5588-1设计的0.2-6GHz直接变换调制解决
先小米6一步,小米两款新机现身,独家处理器已成真
2022年度中国仪器仪表学会奖学金获奖者名单公示
亨通主导的PEACE海缆项目将于2020年一季度投入运营
机器人里程计数据可视化
食品安全检测仪有哪些功能特点
怎样使用CORDIC算法求解角度正余弦呢?
中国电信将全面探路LTE
物理隔离
荣耀9X确认采用Type-C接口
澳大利亚启动太阳能电池板回收计划,是危机还是机遇?
(艾默生)UPS面板指示灯说明及使用注意事项
区块链和法律科技之间是怎样的关系
可穿戴设备的安全系统定义根据应用不同或将有所不同
redis的increment方法
西数5毫米500GB硬盘,让Ultrabook轻松“瘦身”
六要素智能气象传感器的功能特点介绍
7进制计数器设计方案汇总(三种模拟电路设计过程详细)
诺基亚8什么时候上市?诺基亚8最新消息:蔡司镜头+骁龙835+6GB,对比诺基亚6升级可不止一点