
ROS学习之路
guijiaqing
这个作者很懒,什么都没留下…
展开
-
octomap::OcTree的学习笔记
1,OcTreeKey adjustKeyAtDepth (const OcTreeKey &key, unsigned int depth) constAdjusts a 3D key from the lowest level to correspond to a higher depth (by shifting the key values)从最低级别调整3D关键点以对应更高的深度(通过移动关键点值)2 size_t calcNumNodes () constTraverses t原创 2022-01-18 12:18:22 · 1837 阅读 · 0 评论 -
nlopt优化库使用
nlopt简介:https://www.guyuehome.com/35109c++ nlopt库使用范例:https://www.guyuehome.com/35169nlopt库文件网站:https://nlopt.readthedocs.io/en/latest/NLopt_Algorithms/原创 2021-10-14 14:57:46 · 445 阅读 · 0 评论 -
C++获取系统时间,用于ros::header::stamp
uint64_t sys_time=std::chrono::duration_cast<std::chrono::microseconds> (std::chrono::system_clock::now().time_since_epoch()).count(); int32_t time_second=sys_time / 1000000; int32_t time_nsecs=sys_time %...原创 2021-08-17 09:35:42 · 2028 阅读 · 0 评论 -
ROS tf使用
1,静态tf发布<node pkg="tf" type="static_transform_publisher" name="link1_link2_broadcaster" args="x y z yaw pitch raw link1 link2 100" /><node pkg="tf" type="static_transform_publisher" name="link1_link2_broadcaster" args="x y z qx qy qz qw link1 l原创 2021-07-16 12:58:56 · 819 阅读 · 0 评论 -
vins_fusion使用realsenseD455的相机标定步骤
借鉴记录大神的:https://blog.youkuaiyun.com/xiaoxiaoyikesu/article/details/105646064原创 2021-03-18 16:29:22 · 1522 阅读 · 0 评论 -
TX2上布置vins_fusion_gpu指南
1,参考链接如果初次安装,新的TX2环境,请参考文档https://github.com/arjunskumar/vins-fusion-gpu-tx2-nano2,问题记录1,自己的环境情况我的环境是已经安装了ros和系统自带的opencv4.1,cuda10.2,平时也跑一些其他的程序,所以环境并不是纯净的,不需要安装ros,eigen,cere等库。2, 我的步骤(如果情况一样,一定要看完,这是我的步骤,会有坑)(1)直接按照步骤安装opencv3.4.1,配置也没有改,只更改了安装位置原创 2021-03-18 10:44:33 · 1198 阅读 · 0 评论 -
TX2 ubuntu18.04安装ros-melodic过程记录
ros官方的指导文件主流程还是得看官方流程http://wiki.ros.org/melodic/Installation/Ubuntu问题记录1,sudo apt update 无法更新尝试了网上很多源,都没有成功,最后找到一个可以更新成功的源,不知道是不是偶然,记录一下,如果你也碰到了类似错误,尝试一下:备份原来的源文件:sudo cp /etc/apt/source.list /etc/apt/source.list_bak修改/etc/apt/source.list# 默认注释了源码原创 2020-11-17 16:04:47 · 418 阅读 · 0 评论 -
ROS中Eigen库的引用
在CmakeList.txt中添加两个地方find_package(Eigen REQUIRED)include_directories(${Eigen_INCLUDE_DIR})如果找不到Eigen,我们将第一句改成find_package(Eigen3 REQUIRED)在代码中添加头文件#include <eigen3/Eigen/Dense>或者#include “eigen3/Eigen/Dense”如果写变量觉得带Eigen::比较麻烦应用命名空间using na原创 2020-05-20 14:46:45 · 1440 阅读 · 0 评论 -
ROS引用同工作空间其他功能包的自定义消息类型
参考:https://blog.youkuaiyun.com/weixin_43651761/article/details/85557291两点1.首先是需要修改被引用的A功能包CmakeList.txt2.修改自己B功能包的CmakeList.txtA的修改:1)catkin_package( INCLUDE_DIRS include #LIBRARIES motordriver #CATKIN_DEPENDS roscpp rospy std_msgs #DEPENDS sy原创 2020-05-09 09:40:12 · 1770 阅读 · 5 评论 -
hokuyo雷达驱动安装
如果你是新手,对下载安装雷达驱动包很感兴趣的话,或者你使用的不是ros2go系统,你需要在系统中安装驱动,那么下面的教程很适合你。步骤一: 打开终端,创建工作空间,下载代码到catkin_ws中,编译$ mkdir -p ~/catkin_ws/src$ cd ~/catkin_ws/src$ catkin_init_workspace$ git clone https://g...原创 2020-04-29 21:09:24 · 1338 阅读 · 1 评论 -
思岚科技A1,A2雷达驱动安装
如果你是新手,对下载安装雷达驱动包很感兴趣的话,或者你使用的不是ros2go系统,你需要在系统中安装驱动,那么下面的教程很适合你。步骤一: 打开终端,创建工作空间,下载代码到catkin_ws中,编译$ mkdir -p ~/catkin_ws/src$ cd ~/catkin_ws/src$ catkin_init_workspace$ git clone https://git...原创 2020-04-27 21:10:33 · 4945 阅读 · 1 评论 -
ubuntu切换python2和python3的操作
检查自己的python的版本python -Vpython3 -V切换操作查看update-alternatives --list python切换sudo update-alternatives --config python原创 2020-03-25 14:20:00 · 712 阅读 · 0 评论 -
如何通过ssh来远程操作机器人上的计算机
安装ssh1安装同步时钟sudo apt-get install chronysudo ntpdate ntp.ubuntu.com2安装sshsudo apt-get install openssh-server当然可以先查看ssh状态sudo service ssh status设置两个计算机的.bashrc文件1获取两个计算机的ip地址分别在客户端执行ifconfi...原创 2019-11-21 21:17:50 · 669 阅读 · 0 评论 -
为自己的USB挂载设备重命名.rules
文件放的位置/etc/udev/rules.d/文件格式后缀名.rules内容:是匹配键,=是赋值键,只有一个设备匹配了所有的匹配键,才会执行赋值键KERNEL"tty", ATTRS{idVendor}“0403”, ATTRS{idProduct}“6001”, ATTRS{serial}==“kobuki*”, MODE:=“0777”, GROUP:=“dialout”, SYM...原创 2019-11-21 20:33:32 · 1572 阅读 · 0 评论 -
move_group接口简介
一般步骤1)创建模型对象moveit::planning_interface::MoveGroup group(“arm”); //括号中是模型运动组名称,为控制的对象,这里是arm2)定义场景接口moveit::planning_interface::PlanningSceneInterface planning_scene_interface;//下面定义障碍时会用到3)定义展示的轨...原创 2019-11-13 14:23:12 · 2324 阅读 · 0 评论 -
机器人学空间描述和坐标变换
机器人基础我觉得这一章很重要,看了几遍,有时候还是会忘,1是没有真正的应用,2是没有理解透彻。今天又看了一遍,有些收获,得将笔记记载这里,希望下次再来看的时候能一看秒懂,理解更深入。1...原创 2019-11-04 13:51:44 · 884 阅读 · 0 评论 -
ROS之话题创建(三) 编译过程
编译配置创建了两个.cpp文件,需要对这两个源文件进行编译,生成可执行文件,如果是Python写的就可以跳过这一步,本身就是可执行文件ROS使用的编译器是CMake,所以编译规则在CMakeLists.txt中设置,打开CMakeLists.txt文件,其中很多必要部分都是用注释显示的,在必要的地方打开注释,就可以得到一些必要的配置语句。1)设置头文件的相对路径添加include文件夹,头...原创 2019-10-21 10:38:57 · 403 阅读 · 0 评论 -
ROS之话题创建(二) 接受者创建
话题发布者循环发送,话题的接受者的等待接收是将节点程序阻塞起来,节点没有结束,就可以一直等待接收话题接收者创建#include “ros/ros.h”#include “std_msgs/String.h”//回调函数void chatterCallback(const std_msgs::String::ConstPtr& msg){ROS_INFO(“I heard: [...原创 2019-10-21 09:36:20 · 660 阅读 · 0 评论 -
ROS之话题创建(一) 发布者创建
发布者Publisher#include #include “ros/ros.h”#include “std_msgs/String.h”int main(int argc, char **argv){ros::init(argc,argv,“name”);//ROS节点初始化,节点名称ros::NodeHandle n;//创建节点句柄//创建发布者,定义话题名ros::Pub...原创 2019-10-21 09:15:40 · 1371 阅读 · 0 评论 -
ROS创建自己的工作空间和功能包流程
创建自己的工作空间ROS代码的编译,需要放进固定的工作空间里,这里的工作空间物理上是文件夹,但是有特定的编译规则,就不能只看成是文件夹了,通过编译,它为里面的功能包提供一个可用的适宜的环境,比如有包括依赖等,总之为ROS功能包编辑使用,提供一个少操心的环境;创建工作空间的步骤:1)创建工作空间文件夹和代码空间文件夹2) 初始化工作空间3)编译整个工作空间4)设置环境变量5)确认环境变...原创 2019-10-18 15:55:31 · 1187 阅读 · 1 评论 -
ROS运行小乌龟
小乌龟是ROS的吉祥物,控制小乌龟三步走:1)运行启动ROS2)运行小乌龟的仿真节点3)运行键盘控制节点(方向键控制)roscorerosrun turtlesim turtlesim_noderosrun turtlesim turtle_teleop_key...原创 2019-10-18 11:30:09 · 1163 阅读 · 0 评论 -
ROS基础笔记
三种通讯机制1,订阅/发布,topic ,这是一种异步通讯方式,节点都可以发布和接收话题,节点之间彼此并不了解;2,客户端/服务器,service,这是一种同步通讯模式,一个请求,另外一个立即应答,和topic不同的是,一个ROS只能有一个节点命名服务;3,动作,action,动作讲究的是,互动,如果做一件事情需要很从的时间,两边在这很长的一段时间里就没有任何通讯了,这时需要建立action...原创 2019-10-18 11:24:12 · 169 阅读 · 0 评论 -
ubuntu安装备份软件systemback
备份系统配置好的系统,想分享给别人或者留着以后恢复sudo add-apt-repository ppa:nemh/systembacksudo apt-get updatesudo apt-get install systemback参考:原创 2019-10-16 22:25:08 · 705 阅读 · 0 评论 -
Linux下运行Hello world(三)
如何将程序定义成库函数原创 2019-10-10 22:24:23 · 256 阅读 · 0 评论 -
ROS环境搭建
我自己的系统环境是ubuntu 16.04LTS,安装好系统,连好网络后就开始搭建ROS环境连,我自己对于ROS 的理解就是一个机器人通讯框架,也是一种软件,需要下载运行才能在ROS框架上写代码,让机器人工作,今天就干一件事,下载这款框架,也就是在系统上安装这款软件。 第一步:配置系统软件源,如果是新安装的系统,没有修改的话,应该是不用设置的; 系统配置(齿轮和扳手的图标)>>...原创 2019-10-09 10:14:07 · 5135 阅读 · 2 评论 -
Linux下运行Hello world(二)
多程序管理编译单个程序可以使用g++命令来编译,当一个工程很多都需要编译时,这种方法是低效率的,今天学习了一种cmake新工具;过程简单可以理解成,首先cmake一个文件夹,cmake的规则写在一个CMakeLists.txt文件中,cmake整个文件夹,会生成一个中间文件夹makefile,然后再利用make命令对makefile进行编译,得到CMakeLists.txt中记载的想要的结果(...原创 2019-10-07 22:50:05 · 221 阅读 · 3 评论 -
Linux下运行Hello world(一)
ROS学习第一步掌握基本的Linux系统知识###1,g++运行一个hello world程序1.第一步安装编译器;在win系统下写一个程序需要接触到IDE环境,但是ubuntu中没有,只要写一个文本就可以,然后使用编译器编译成可执行文件就可以运行了。Ubuntu下也没有现成的像WIN系统下的文本编译器,我的选择是安装vim和gedit; sudo apt-get install vim ...原创 2019-10-07 22:46:42 · 1625 阅读 · 0 评论 -
@Intel NUC DN2820微型计算机装机过程
@Intel NUC DN2820微型计算机装机过程 最近准备慢慢自学ROS机器人,从闲鱼上入手了和二手微型电脑,本来准备买一个树莓派什么的开发板学习,后来大神推荐价格差不多的可以直接从X86框架的微型计算机开始,同样的价格,功能更为强大,系统的可移植性也很高。长话短说,就此开始了自己的ROS小白之路,学习之路还望各位大神指点一二。 这是2014年的产品,感觉就是处理器还是略差了一点,赛扬...原创 2019-10-06 21:49:41 · 1740 阅读 · 0 评论