ros

Difference between spin and rate.sleep in ROS

旧巷老猫 提交于 2020-11-30 12:55:09
问题 I am new to ROS and trying to understand this powerful tool. I am confused by the spin and rate.sleep functions. Could anyone help me with difference between those two functions and when to use which? Thanks. 回答1: ros::spin() and ros::spinOnce() are resposible to handle communication events, e.g. arriving messages. If you are subscribing messages, services or actions you must call spin to process the events. While ros::spinOnce() handles the events and returns immediately, ros::spin() blocks

Difference between spin and rate.sleep in ROS

梦想的初衷 提交于 2020-11-30 12:50:27
问题 I am new to ROS and trying to understand this powerful tool. I am confused by the spin and rate.sleep functions. Could anyone help me with difference between those two functions and when to use which? Thanks. 回答1: ros::spin() and ros::spinOnce() are resposible to handle communication events, e.g. arriving messages. If you are subscribing messages, services or actions you must call spin to process the events. While ros::spinOnce() handles the events and returns immediately, ros::spin() blocks

云上自建数据库,秒级备份,看这篇就对了!

帅比萌擦擦* 提交于 2020-11-26 17:50:49
导读:数据是企业重要资产,作为存储数据的介质,IT设施发生问题是不可避免。因此,每一个企业都应该做好数据备份,保证数据的安全与业务的可用。 本次分享将重点介绍如何利用阿里云快照极速可用特性和一致性快照组,便捷地完成云上自建数据库的数据备份。 作者 | 阿里云技术专家 余初武 来源 | 弹性计算百晓生 极速可用特性——秒级,非一致性数据备份 阿里云ECS的极速可用特性主要包括四个方面,分别是快照秒级可用、云盘回滚性能0损失、ESSD增值特性以及全地域支持等。 阿里云ECS极速可用特性的典型使用场景包括快速搭建研发测试环境;业务关键配置的变更保护,实现秒级备份相关磁盘数据;云盘极速回滚,并实现回滚的磁盘性能无损耗。 基于极速可用的特性,用户仅需要几秒钟的时间就可以复制出一个新磁盘。 这一过程也非常简单,首先创建一个带极速可用特性的快照,关键参数的设置如下图所示,主要包括InstantAccess和InstantAccessRetentionDays,前者设置为True就可以设置成为极速可用的快照,后者则是极速可用特性的保留天数,可以让这特性到期之后就会自动被关闭。当快照创建完成(极速可用特性开启的情况下,不需要等快照进度完成)之后,就能够快速创建磁盘并立即挂载使用。 案例:自建数据库,磁盘空间不够,怎么办? 在这样的情况下,最直接能想到的解决方案是纯人工方式。 首先

联想 Yoga 14s 2021 (Intel) 安装 ubuntu

↘锁芯ラ 提交于 2020-11-23 09:45:52
@[TOC](联想 Yoga 14s 2021 (Intel) 安装 ubuntu) 新设备最容易遇到驱动问题。Yoga 14s 2021 安装ubuntu就遇到了屏幕闪烁、键盘和触摸板失灵的问题。到askubuntu上提问,最后也只能自问自答。以下是折腾几天找到的解决方法。 1.屏幕 screen flickering 屏幕闪烁、黑屏的问题与Xorg有关,暂时只有ubuntu 20.10 的驱动能正常使用屏幕。 2.键盘和触摸板 keyboard and touchpad not working 触摸板在20.10可正常使用,而键盘则需要修改grub的命令: /etc/default/grub 中修改 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i8042.nopnp i8042.nomux=1 i8042.reset" 即添加 i8042.nopnp i8042.nomux=1 i8042.reset 三个参数,参数含义在 kernel parameters 查看。 修改live启动盘的grub参数,在live中也能正常使用键盘,而触摸板则需要5.7以上的kernel。 3.雷电驱动 thunderbolt driver 需要5.7以上的kernel。雷电驱动偶见usb失灵现象,需重启。 4.安装ROS compile from

Edge2AI自动驾驶汽车教程

Deadly 提交于 2020-11-23 05:40:33
介绍 我们在前面介绍过Edge2AI自动驾驶汽车的解决方案,参见《 Edge2AI 自动驾驶 汽车: 在小型智能汽车上收集数据并准备数据管道》,《Edge2AI 自动驾驶 汽车: 构建Edge到AI数据管道》,《 Edge2AI 自动驾驶 汽车: 训练模型并将其部署到边缘 》 。在这里我们从实操教程的角度来看如何一步一步的构建Edge2AI自动驾驶汽车的应用,这个教程也是分成了三个部分,今天的内容是总体介绍这个教程。 自动驾驶汽车是Cloudera自动驾驶汽车的开源版本。这款无人驾驶微型汽车由3个摄像头,LiDAR和游戏控制器提供动力,并连接到Jetson TX2板上。TX2运行机器人操作系统(ROS)并控制汽车的运动。最终,如果我们有多辆汽车,我们可以在汽车上训练模型,然后将该模型发送给CDSW并执行联合学习。在本教程中,我们将汽车数据发送到云中的Hadoop HDFS。我们使用CDSW运行Keras训练模型,然后将模型保存到HDFS。该模型经过训练,可以从跑道上克隆人的驾驶行为,以基于中心摄像头框架预测转向角,该摄像头框架使用ROS控制汽车。最后,将模型重新部署到汽车中,以说明Edge To AI的生命周期。 学习目标 • 将MiNiFi C ++代理安装到Jetson TX2上 • 了解TX2的汽车传感器数据 • 构建用于Emi数据管道的ETL数据管道,以用于CEM •

cpe动态ip,做端口映射方案

帅比萌擦擦* 提交于 2020-11-21 04:05:23
cpe介绍 无线cpe,实际是一种接收移动信号并以无线WIFI信号转发出来的移动信号接入设备。 应用场景 机场施工难度大,费用高,走有线通讯方案困难,因此,用5G cpe插流量卡,解决有线通讯短板。 问题 管理后台有ros websocket数据通讯以及rtsp流地址播放视频的需求,但是这两个需求都要求使用静态ip,与cpe每次重启随机分配的动态ip冲突 解决办法 运用VPN组建局域网,设定固定虚拟ip,然后做端口映射方案,解决cpe动态ip通讯问题。 来源: oschina 链接: https://my.oschina.net/u/4322161/blog/4654780

无人艇路径跟踪(vrep仿真和实艇控制,含ros通信、gps、imu,基于模糊控制、pid差速、los等方法)

≡放荡痞女 提交于 2020-11-18 15:36:00
占个坑,本月持续更新 2020\11\16 更新:vrep仿真,基于ros\gps\简单pid 仿真环境: vrep最新版本(CoppeliaSim)、ros-kinetic、Ubuntu16.04、Python 2.7,仿真时记得先打开ros,再打开vrep,这样会自动加载vrep_ros interface插件。 两推进器船、有波浪的水面、目标为树的位置、ros发送目标位置和船当前gps位置,接收推进器力的大小(改编自github某不知名环境) 控制量: 两推进器的力的大小,正数,基于差速模型的pid控制 坐标系: 1、仿真环境中有一个世界坐标系,所有位置信息都是基于这个世界坐标系的。例如gps发送的位置不是经纬度,而是在环境中的(x,y,z)。 2、船的航向角,从x轴正方向顺时针为正逆时针为负(这里记不太清了),范围为(-1,1)。但是在某个方向好像有奇怪的跳变,这里问题还没有解决,不过没有影响到仿真。 imu订阅话题回调函数 ROS信息传输: 1、先打开ros再打开vrep,自动加载ros插件后,执行命令 rosnode list会发现有一个 sim_ros_interface的节点,这样我们在vrep环境中发送的消息都是基于这个节点。 2、在vrep界面中,双击每个名字后面的小文档(child_script),会出现该物体的lua执行代码。vrep端发送的话题主要有

ubuntu下ROS安装时sudo rosdep init和rosdep update的解决方法

一世执手 提交于 2020-11-09 15:35:51
ubuntu下ROS安装时sudo rosdep init和rosdep update的解决方法 参考文章: (1)ubuntu下ROS安装时sudo rosdep init和rosdep update的解决方法 (2)https://www.cnblogs.com/wangyarui/p/6059688.html 备忘一下。 来源: oschina 链接: https://my.oschina.net/stackoom/blog/4709817

机器人操作系统ROS1和ROS2各版本联通性笔记

老子叫甜甜 提交于 2020-11-09 10:35:33
ROS1在windows和linux下,indigo,kinetic,melodic和noetic,都能互通,不会遇到问题。 ROS2的DDS版本有差异性,dashing和foxy有不能联通情况,与micro-ros也有一些不稳定问题。 安装ROS2 foxy非常简单: 使用windows或linux的dashing版本,一切正常如下: 但是如果使用foxy,调试结果如下: 有问题的。版本不匹配,如果匹配一切ok。 https://micro-ros.github.io/blog/2020/07/24/foxy_release/ https://micro-ros.github.io/blog/2020/08/27/esp32/ https://micro-ros.github.io//docs/tutorials/core/overview/ 上面网址提供了许多教程用来学习微型ROS,微型ROS支持的不同RTOS的相关工具。主要分为两部分: 核心教程 和 高级教程 。 如果不熟悉micro-ROS,强烈建议按以下顺序学习教程: Linux上的第一个micro-ROS应用程序 本教程说明如何安装micro-ROS框架和工具。然后在Linux下开发自己的第一个micro-ROS应用程序。(如果已经知道ROS 2,将看到这些工具已与标准ROS 2很好地集成在一起。)