自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 ROS机械臂开发:从入门到实践---学习笔记(8)

第八章作业第一题 安装ROS摄像头驱动功能包,驱动笔记本摄像头,并使用ROS可视化工具显示图像1.1 安装驱动功能包ROS中有通用USB摄像头的驱动功能包——usb_cam,安装后很快就可以把摄像头跑起来,在该功能包的wiki上我们可以看到详细的接口说明,最终的图像将通过<camera_name>/image发布出来,订阅后就可以看到图像了。在终端输入依次输入:sudo apt-get install ros-melodic-usb-camroslaunch usb_cam usb_

2021-05-09 22:18:03 861 1

原创 ROS机械臂开发:从入门到实践---学习笔记(7)

第七章作业本次作业用的是Marm机械臂。过程如下:第一题 使用自己的机械臂模型,分别编写程序,实现以下功能:(1)圆弧运动:机械臂终端完成圆弧轨迹的规划运动,半径和圆心根据模型确定接口;(2)轨迹重定义:针对规划得到的轨迹,缩减1/4的轨迹点,并完成运动;例如:原来有20个轨迹点,每隔4个删掉一个,最后得到16个点(首尾两点不能删除),再完成运动;(3)多轨迹连续运动:完成至少两条轨迹的拼接、重规划和连续运动,具体运动类型不限制。1.1 第一小问:圆弧运动MoveIt!可以规划笛卡尔直线运动,

2021-05-06 21:17:56 2058 1

原创 Ubuntu中录屏软件、文档编写、Ubuntu中Codelite下载方法以及古月老师的编写的Ubuntu助手地址

终端中添加PPA:sudo add-apt-repository ppa:obsproject/obs-studio输入这条命令进行安装:sudo apt install obs-studio完成!

2021-04-12 21:31:09 524

原创 ROS机械臂开发:从入门到实践---学习笔记(6)

第六章作业第一题采用的是ur3机械臂,第二题采用的是老师的模型Probot_anno机械臂。过程如下:第一题 编写一个程序,实现以下运动控制功能:(1)在关节空间下,机械臂从起点A运动到B点(关节位置描述),再从B点运动到C点(终端姿态描述);(2)在笛卡尔空间下,机械臂从C点一次直线运动到D点和E点,最后回到初始A点。1.1 第一小问1.1.1 关节空间规划关节空间运动是以关节角度为控制量的机器人运动。虽然各关节达到期望位置所经过的时间相同,但是各关节之间相互独立,互不影响。机器人状态使用各

2021-03-26 20:32:07 1682 1

原创 ROS机械臂开发:从入门到实践---学习笔记(5)

第五章作业第一题 完成Moveit!+Gazebo仿真中涉及的参数配置、启动文件第一题使用的是MArm机器臂为例,过程如下:1 关节轨迹控制器Moveit!完成运动规划后的输出接口是一个命名为“FollowJointTrajectory”的action,其中包含一些列规划好的路径点轨迹,这些路径点可通过ros_control为我们提供的一个名为“Joint Trajectory Controller”的控制器插件来控制一组joint在Gazebo中的运动。1.1轨迹控制器的配置文件首先创建mar

2021-03-24 20:07:49 1683

原创 ROS机械臂开发:从入门到实践---学习笔记(4)

第四章作业第一题 完成Moveit! Setup Assistant的配置本次作业使用的是Probot与MArm两种机器臂为例,区别是后者有夹爪,过程如下:1.1Probot的配置(1)选择模型,如图1.1所示。图1.1 选择模型(2)设置自碰撞检测,如图1.2所示。图1.2 设置自碰撞检测(3)配置规划组,如图1.3、1.4、1.5所示。图1.3 算法选择图1.4 添加运动学工具链图1.5 配置完成(4)预定义位姿,如图1.6所示。图1.6 定义位姿(5)作者信息,

2021-03-22 23:23:34 1372 4

原创 ROS机械臂开发:从入门到实践---学习笔记(3)

第三章作业第一题 熟悉各参数的含义对颜色的修改: <material name="Skyblue"> <color rgba="0.095 1.58 1.60 1"/> </material>对底盘link0的修改:<xacro:property name=“link0_radius” value=“0.1” /><xacro:property name=“link0_length” value=“0.06” /&g

2021-03-21 21:02:23 894

原创 ROS机械臂开发:从入门到实践---学习笔记(2)

第二章作业第一题 练习ROS Tutorials教程如图1.1所示,熟悉了tutorials中所使用的基本命令。1.1 使用catkin_make在一个工作空间下:catkin_makecatkin_make install(可选,与devel功能类似)编译完成后使用ls命令即可看到build、devel、src文件,如图1.2,工作空间结构如图1.3。1.2 总结ROS开发大致分为四个步骤:1)创作工作空间:catkin_init_workspace2)编译工作空间:cd~cat

2021-03-21 20:56:08 1273

原创 ROS机械臂开发:从入门到实践---学习笔记(1)

1.安装melodic版本ROS2.通过键盘控制小海龟运动3.熟悉ROS命令:1)工作空间初始化:catkin_init_workspace2)创建功能包:catkin_create_pkg pkg_name reply3)编译工作空间中的功能包:catkin_make4)运行功能包中的可执行文件:rosrun pkg_name executable_file5)获取功能包信息:rospack find pkg_name6)查看软件包目录下的文件:rosls pkg_name7)切换至

2021-03-21 20:48:54 1043

原创 ROS中常用命令

1)工作空间初始化:catkin_init_workspace2)创建功能包:catkin_create_pkg pkg_name reply3)编译工作空间中的功能包:catkin_make4)运行功能包中的可执行文件:rosrun pkg_name executable_file5)获取功能包信息:rospack find pkg_name6)查看软件包目录下的文件:rosls pkg_name7)切换至此软件包目录:roscd pkg_name8)查看运行节点的列表:rosnode li

2020-11-22 17:47:39 4192 2

原创 进程与线程之间的关系

一: 什么是进程,线程,协程?1:进程是操作系统进行资源分配的基本单位。2:线程是CPU调度的基本单位。3:协程是开发者自己调度的基本单位。4:线程依附于进程,协程又叫微线程。二:进程与线程的区别?1、进程不能共享全局变量,线程可以共享全局变量,出现资源竞争问题,可以通过互斥锁和线程同步解决。2、创建进程的开销比创建线程的开销大3、进程是操作系统资源分配的单位,线程是cpu调度的单位4、线程依附进程存在,不能单独存在5、多进程编程比单进程多线程编程稳定性更好三:进程之间如何通信的?、

2022-04-15 09:54:54 323

原创 利用队列读取数组中最小的值

/******************************************************************************************************************************* Copyright (C), 2017-2020, Beijing Ikingtec Co., Ltd.* http://www.ikingtec.com.cn*** @file : min.cpp* @version

2022-03-16 22:42:16 532

原创 python中利用ros发布、订阅话题的demo

Publisher:#!/usr/bin/env python# -*- coding: utf-8 -*-import rospyfrom std_msgs.msg import Booldef run(): rospy.init_node('tempHum') pub = rospy.Publisher("temp", Bool,queue_size=1) rate = rospy.Rate(1) while not rospy.is_shutdown(): temp = 30

2022-01-09 22:31:50 772

原创 Ubuntu18.04 静态IP设置与ROS分布式多机通讯的配置与实现

静态IP设置Ubuntu18.04采用的是netplan来管理network。所以可以在/etc/netplan/目录下创建一个以yaml结尾的文件。比如01-netplan.yaml文件。然后在此文件下写入以下配置:network: version: 2 renderer: networkd ethernets: enp3s0: dhcp4: no addresses: [192.168.1.110/24] gateway4: 192.1

2021-12-05 14:43:40 519

原创 12345

sudo sh -c ‘echo “deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main” > /etc/apt/sources.list.d/ros-latest.list’sudo apt install curl # if you haven’t already installed curlcurl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros

2021-12-04 21:44:36 734

原创 怎样切换gcc、g++版本

首先查看自己的gcc与g++版本,是不是自己需要的打开终端一次输入$ g++ -v$ gcc -v确定不是自己需要的版本后,打开一个终端,cd /usr/bin目录下,查看已有的gcc版本(若没有自己需要的版本,自行安装) $ ls -l gcc* 然后输入下面两行指令切换版本sudo mv gcc gcc.bak #备份sudo ln -s gcc-4.8 gcc #重新链接我这边切换的是4.8同理,对g++也做同样的修改: $ ls -l g++* 然后输入sudo m

2021-12-02 17:43:21 1488

原创 ROS开机自启动

**ROS程序开机自启动**1、安装robot-upstart,命令如下sudo apt-get install ros-melodic-robot-upstart2、安装成功后,直接运行如下指令rosrun robot_upstart install prometheus_detection/launch/web_cam0.launch其中prometheus_detection是ros的功能包,launch/web_cam0.launch是运行文件的路径3 、运行完第2步以后终端

2021-11-26 17:27:32 1535

原创 数据结构实验病毒感染检测问题

研究者将人的DNA和病毒DNA均表示成由一些字母组成的字符串序列,然后检测某种病毒DNA序列是否在患者的DNA序列中出现过,如果出现过,这此人感染了该病毒,否则没有感染。例如,假设病毒的DNA序列为baa,患者1的DNA序列为aaabbba,则感染。患者2的DNA序列为babbba,则未感染。(注意:人的DNA序列是线性的,而病毒的DNA序列是环状的)。下面分别展示BF算法以及KMP算法的实现注:KMP算法理解起来比较困难,若想简单理解原理,则可参考天勤的讲解BF算法: 1 #include "st

2021-10-31 12:15:39 4603

原创 ubuntu18.04上Opencv的安装

sudo apt install python3-pipsudo apt install libopencv-devpip3 install -i [https://pypi.tuna.tsinghua.edu.cn/simple](https://pypi.tuna.tsinghua.edu.cn/simple) scikit-buildsudo pip3 install opencv-pythonopencv-python安装完成以后,在终端依次输入python3import cv2pr

2021-10-06 15:40:35 100

原创 自己的图片

sudo docker pull astrobee/astrobee:base-latest-melodic

2021-09-03 17:49:08 116

原创 2021-08-31

dockerhttps://mp.weixin.qq.com/s/jY_FVXl2KAiCHQDCZSlJ5w

2021-08-31 13:16:57 245

原创 Mavros Client md5sum Error

[ERROR]: Client [/mavros] wants topic /State to have datatype/md5sum [mavros_msgs/State/4048c9de2a16f4ae8e0538085ebf1b97], but our version has [mavros_msgs/State/18326976df9d29249efc939e00342cde]. Dropping connection.大概就是这样的错误这个问题的原因在于不同的ROS分布改变了可视化标记的M

2021-08-16 10:28:50 1055 1

原创 解决realsense2报错问题

注册服务器的公钥:sudo apt-key adv --keyserver keys.gnupg.net --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE将服务器添加到存储库列表中:sudo add-apt-reposit

2021-08-02 22:41:44 2419 1

原创 ubuntu下make、cmake及opencv版本查看

make:make -vcmake:cmake -versionopencv:pkg-config --modversion opencv

2021-06-28 11:36:00 1600

原创 利用rosbag记录主要话题、将话题导为txt文本、将.txt文本正确导入电子表格中

目录:1、利用rosbag记录主要话题2、将话题导为txt文本3、.txt文本正确导入电子表格中1、利用rosbag记录主要话题<node pkg="rosbag" type="record" name="bag_record" output="screen" args = "/prometheus/drone_state -o subset" launch-prefix="gnome-terminal --tab --"> </node> 将此节点加入到launch

2021-06-16 11:43:48 1790

原创 在launch文件中启动rosbag方法以及生产.bag.active包后的处理方法

<launch> <node pkg="turtlesim" type="turtlesim_node" name="turtlesim_node" output="screen"> </node> <node pkg="turtlesim" type="turtle_teleop_key" name="turtle_teleop_key" output="screen" launch-prefix="gnome-terminal

2021-06-07 18:56:15 1983 2

原创 E: Unable to locate package ros-melodic-***

利用命令安装二进制文件偶尔会遇到以下的错误E: Unable to locate package ros-melodic-***解决方法:1、确保自己命令没有打错2、打开一个终端,输入以下几条命令:sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'sudo apt-key adv --key

2021-06-07 14:13:18 5642 21

原创 页眉怎样从特定的一页开始以及word页眉页脚第几页共几页格式设置

一、页眉设置在使用word写论文的时候我们总是遇到在编辑页眉的时候,它总是给我们全部页面填上,下面提供如何在指定的一页添加页眉的方法第一步将光标置于指定页的前一页末尾处,然后在工具栏上点击页面布局—分隔符—下一页,如下图所示:第二步开始插入页眉,此时还是会发现文章所有页面的页眉还是一致,别着急,此时只需点选指定页页眉,然后点击链接到前一页页眉,取消与前面页眉的链接,如下图所示:接着选择前一页的页眉,然后点击插入—页眉—删除页眉就完成了页眉的设置二、第几页共几页设置首先在页眉或页脚输入第

2021-05-17 22:05:29 12207 1

原创 利用rosbag在ros下记录数据然后在MATLAB中进行处理的方法

1、ROS下数据存储可使用ros_bag功能包进行数据记录,通过如下指令存储轨迹追踪相关话题rosbag record -O subset /prometheus/drone_state /prometheus/reference_pose/prometheus/drone_state为无人机状态,包含了无人机位置、速度、姿态等信息/prometheus/reference_pose为无人机期望轨迹,包含了期望位置和期望姿态(期望姿态由控制器计算得到)2、MATLAB绘图处理若想在Matlab

2021-04-22 16:48:20 1986

原创 简单介绍下我认为比较强势的SLAM功能包——cartographer

它是由谷歌开源的cartographer的功能包,此功能包在算法层面上与hector、gmapping两个是完全不一样的,下面简单介绍下cartographer1.2016年10月5日,谷歌开源2.使用的是图网络的优化算法,可以在二维或者三维条件下实现定位及建图功能3.对输入的要求不高,可以有里程计也可以不用,但必须要有感到深度信息的传感器,如laser、kinect4.在运算资源比较有限的硬件上运行,并且效果也还可以5.未来可能会支持更多的传感器和机器人平台,同时不断增加新的功能接下来我们来看

2020-11-07 19:33:03 1179

原创 ROS(版本melodic)出现 Could not find a package configuration file provided by “move_base_msgs“ 的 解决方法

在终端上输入 sudo apt-get install ros-melodic-navigation就可以了我看很多人对此问题提供了解决方法,却没见到说为什么这样做的,下面我就简单解释下原因move_base_msgs:它是机器人做路径规划的消息(包括全局规划与局部规划),此处出现问题,那自然就是navigation没有下载好,针对这边修改就可以了我用的是melodic版本所以是ros-melodic-navigation,如果是其他版本,把melodic替换成自己的版本就可以了...

2020-11-07 15:11:00 1227 1

原创 在Matlab中生成代码前的配置详解

用simulin的同学都知道,在里面编写自己的算法将省去繁琐的代码编写步骤,只需要拖动几个模块,就像搭积木一般,轻松搭建自己的算法。但是在硬件上应用的都是些代码,那有没有一种方法可以在matlab中直接生成代码,从而免去编写代码的麻烦呢?答案肯定是有的。废话不多说,直接上图(自己弄得ppt,可能有不清楚的地方)图片上有详细的解释,看不清的可以私聊提供ppt~~生成代码的配置工作到这里就结束了,快去搭建自己的算法吧~~(记得要用离散的模块搭建,连续的可能会出现错误)...

2020-11-06 09:53:00 1799 3

原创 launch文件中param、rosparam以及arg之间的区别

param、rosparam以及arg都是对launch文件中的参数进行设置,下面说说它们三个之间的区别param与rosparam两个参数调用差不多,都是把launch文件中的一些参数直接设置到rosmaster(ros中的节点管理器)里面以便于各个节点的使用,主要不同在于param只对一个参数进行操作,使用方式如下:<param name="name" value="ture"/>rosparam可以对多个参数进行操作,前提时把这些参数放到.yaml文件中,使用方式如下:&lt

2020-11-02 11:44:51 8748 1

原创 ROS中自定义话题消息里面对编译规则的解析

在package.xml中添加功能包依赖<build_depend>message_generation</build_depend>message_generation:对应产生消息代码的一个功能包,即编译.msg时需要依赖的功能包;<exec_depend>message_runtime</exec_depend>message_runtime:对动态产生message一个支持,即msg运行时所依赖的功能包;在CMakeLists.txt添加编译

2020-11-02 11:19:24 494

原创 pip install --upgrade tensorflow下载慢的解决方法

pip install --upgrade tensorflow下载慢的解决方法在终端输入python -m pip install tensorflow -i https://pypi.douban.com/simple即可

2020-10-27 20:45:43 1885 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除