自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 IMU校准

IMU误差校准

2022-08-18 14:50:30 4317 1

原创 单片机ICP、ISP、IAP

单片机ICP、ISP、IAP

2022-08-01 09:58:50 538

原创 socket通信使用指定网卡

socket通信指定网卡

2022-07-13 10:25:47 7233

转载 ubuntu磁盘管理

关于Ubuntu18.04系统提示根目录空间不足的解决办法 - 有心有梦 - 博客园

2022-05-09 11:33:18 548

原创 vsftpd 上传文件出现“550 Permission denied.”

ubuntu上安装了vsftpd服务器,windows上向其上传一个文件时,出现了“550 Permission denied.”的提示,原因是vsftpd服务器的写权限没有打开。修改/etc/vsftpd.conf文件,打开写权限,并重启ubuntu即可。将#去掉,打开写权限,并重启ubuntu即可。...

2021-10-28 09:42:27 2754

原创 linux 下glog的安装

https://www.cnblogs.com/zhoug2020/p/5884598.html

2021-08-02 14:52:37 14897 3

原创 C语言查表法CRC32

#include <stdio.h>const unsigned int table[] = { 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90...

2021-06-15 14:36:45 1684

原创 C语言制表法CRC32

#include "stdio.h"static unsigned int table[256];//位逆转static unsigned int bitrev(unsigned int input, int bw){ int i; unsigned int var; var = 0; for(i=0;i<bw;i++) { if(input & 0x01) { var |= 1<...

2021-06-15 14:11:14 581

原创 zlog使用举例

int32_t zlog_init_m(void){ int32_t rc; rc = dzlog_init("zlog_m.conf","my_cat"); if (rc) { printf("dzlog init failed\n"); return -1; } dzlog_info("dzlog init successful\n"); retu...

2021-06-11 09:17:55 390

原创 ubuntu18.04设置程序开机自启动

检查系统目录/lib/systemd/system/rc-local.service,如果没有自己新建,文件内容如下图所示(如果文件存在本身是没有[Install]项的,需要自己添加进去)1、cd /lib/systemd/system/ sudo vimrc-local.service //这里一定要使用sudo切换管理员账户,否则无法修改rc-local.service2、...

2021-06-10 15:19:18 3413

原创 makefile

2021-06-05 11:24:12 63

原创 ubuntu18.04安装CUinit

ubuntu:18.04Cunit:2.1.3环境:ubuntu系统提前安装gcc、automake、libtool。使用apt命令安装即可。1、下载CUnit源码包。下载地址为https://sourceforge.net/projects/cunit/,点击Download,下载源码包。(选择源码包的下载路径,可以任意选择路径。我是将下载好的源码包放在~目录下。)2、解压 tar jxvf Cunit-2.1-3.tar.bz23、cd Cunit-2.1-34..

2021-05-22 11:29:55 616

转载 值得推荐的C/C++框架和库(真的很强大)

https://cloud.tencent.com/developer/article/1724036?from=information.detail.cppunit%20linux%E4%B8%8B%E8%BD%BD值得学习的C语言开源项目- 1、WebbenchWebbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写,

2021-05-19 14:00:23 859

转载 socket服务器远程关闭时导致client程序退出的处理办法

https://www.cnblogs.com/tfanalysis/articles/4241243.html当server端关闭一个socket连接时,如果client端继续发送数据,系统会发出一个SIGPIPE信号给进程,通知进程这个连接已经断开,不 应该再发送数据。而Linux系统的默认处理规则是对SIGPIPE信号执行terminate(终止、退出)处理,所以client端程序会异常退出, 为了避免这种情况发生,可以将SIGPIPE设为SIG_IGN。signal(SIGPIPE, SIG_

2021-04-28 10:32:51 753

转载 Linux进程间通信方式

作者:小林coding链接:https://www.zhihu.com/question/23995948/answer/1802584436来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。正文每个进程的用户地址空间都是独立的,一般而言是不能互相访问的,但内核空间是每个进程都共享的,所以进程之间要通信必须通过内核。Linux 内核提供了不少进程间通信的机制,我们来一起瞧瞧有哪些?管道如果你学过 Linux 命令,那你肯定很...

2021-04-19 17:32:29 191

原创 aubo机械臂控制方式

操作aubo机械臂的方法主要有三种:一、使用aubo官方提供的示教器来操作。示教操作的本质是,先演示一遍操作过程,过程中机械臂在必要的路径节点时记录机械臂各个joint的关节角的值。用这记录的一系列关节角的值组成waypoints。演示完成后,机械臂直接根据这一组waypoints循环运行即可。示教的优点是精度较高,操作简单。缺点是不够灵活,机械臂不能执行pointway之外的路径。二、使用ROS+MoveIt!进行运动学和逆运动学求解,使用aubo官方提供的中间件来...

2021-04-16 10:51:20 3879

原创 ROS kinetic+MoveIt!控制aubo机械臂笔记四 aubo开源代码底层机制

我们执行命令,运行aubo机械臂(以仿真环境为例):roslaunchaubo_i10_moveit_configmoveit_planning_execution.launchroslaunchaubo_demoMoveGroupInterface_To_Kinetic.launch执行命令rosnodelist,发现系统中活跃的节点有:/MoveGroupInterface_To_Kinetic/aubo_driver/aubo_joint...

2021-04-16 10:49:32 2648

原创 ROS kinetic+MoveIt!控制aubo机械臂笔记三 MoveIt! C++示例

在aubo提供的源码中,aubo_demo目录下有一个文件MoveGroupInterface_To_Kinetic.cpp,该文件示例了如何用MoveIt!提供的C++API进行路劲规划来操作aubo机械臂。我们以该文件为例子,注解以下如何操作aubo机械臂到达真实世界的指定位置。 我们打开该文件,里面只有一个main函数。 /*注册一个node,名称为MoveGroupInterface_To_Kinetic*/ros::init(argc,argv,...

2021-04-16 10:48:17 3067 1

原创 ROS kinetic+MoveIt!控制aubo机械臂笔记二 连接机械臂

-------------------------------------------------------------------------------------------------------------------------------------------------- 如果你现在没有真实的机械臂可用,或者你只是想验证你的程序,那么可以以仿真的形式进行。 执行如下令: roslaunchaubo_i10__mov...

2021-04-16 10:46:17 2322 2

转载 如何写一个Web服务器

https://www.jianshu.com/p/912fa6d0b5e0

2021-04-12 14:02:44 184

原创 ROS kinetic+MoveIt!控制aubo机械臂笔记一 搭建变成环境

ubuntu:16.04.7vmware:15.5ros:kinetic 参考前面的笔记,首先安装ros kinetic + moveit!.控制aubo机械臂,最好是不要用虚拟机,因为pc跟aubo机械臂需要通过TCP进行通信,虚拟机可能不太稳定,pc上直接安装个ubuntu系统会比较好些。这里只是做个笔记,实际产品中不要使用虚拟机。 这里使用的是ubuntu16.04+ros kinetic,其实也可以使用ubuntu18.04+ros melodic,因为接口都是一样的...

2021-02-27 10:08:53 2652 1

原创 aubo机器人报错

从gitee上下载aubo机器人的源码,按照readme编译成功后,运行如下命令时报错:报错内容如下: 原因是运行aubo机器人时找不到文件libmoveit_robot_trajectory.so.0.9.15.执行命令:find / -namelibmoveit_robot_trajectory.so* 发现在/opt/ros/kinetic/lib目录下文件libmoveit_robot_trajectory.so.0.9.18,版本号为18,而这里需要...

2021-02-22 14:55:57 1139

转载 C++静态库与动态库

转载:https://www.cnblogs.com/skynet/p/3372855.htmlC++静态库与动态库 2013-10-16 20:18 吴秦 阅读(147389) 评论(47) 编辑 收藏C++静态库与动态库这次分享的宗旨是——让大家学会创建与使用静态库、动态库,知道静态库与动态库的区别,知道使用的时候如何选择。这里不深入介绍静态库、动态库的底层格式,内存布局等,有兴趣的同学,推荐一本书《程序员的自我修养——链接、装载与库》。什么是库库是写...

2021-02-20 09:12:53 145 1

转载 机器人开发实践源码编译报错问题解决方法

ubuntu:16.04.7ros:kineticvmware: vmware15.5移植《机器人开发实践》源码包 ros_exploring,出现的问题都包含于以下内容中。书中提到,如果将源码包 ros_exploring 直接放到 catkin 工作空间中,需要将 ros2 文件夹移出到工作空间之外,否则编译失败。 将 ros2 文件夹移出之后仍然报错,具体信息如下: Could not find the required component ‘ecto’. T...

2021-02-19 15:59:59 750

转载 ROS launch文件解析

转载:https://www.jianshu.com/p/e55850b87c7d?from=singlemessage

2021-02-08 13:34:22 129

原创 MoveIt! RViz Visual Tools设置

在看wiki MoveIt!教程的MoveIt! Quickstart in RViz 章节时,教程里面设置RViz Visual Tools的“MotionPlanning - Slider”和RvizVisualToolsGui。这两个功能通过右键"Displays"来添加。如下图所示:

2021-02-06 11:13:12 2138 2

原创 《ROS机器人开发实践(胡春旭)》第十章MoveIt!机械臂控制 学习笔记三

按照古月老师给的例子,使用随机轨迹的代码时出现以下问题:test_random.cpp:#include <moveit/move_group_interface/move_group_interface.h>int main(int argc, char **argv){ ros::init(argc,argv,"move_group_interface_demo",ros::init_options::AnonymousName)...

2021-02-04 17:23:24 645 2

原创 《ROS机器人开发实践(胡春旭)》第十章MoveIt!机械臂控制 学习笔记二

按照之前的步骤,使用moveit setup assistant设置好配置文件后,继续往后学习,使用C++程序控制rviz中的机械臂。写完代码运行时,出现如下警告: 其中有个警告“The root link base_link has an inertia speciaied in the URDF,but KDL does not support a root link with an inertia.As a workaround, you can add an extra...

2021-02-04 17:01:03 633

原创 《ROS机器人开发实践(胡春旭)》第十章MoveIt!机械臂控制 学习笔记

在学习《ROS机器人开发实践(胡春旭)》第n10z章的MoveIt!时,因为在自己创建的工作空间中没有下载作者的源代码,所有有以下几个问题:1、使用moveit setup assistant时,需要一个机器人URDF的模型文件,这里找到胡春旭在github上的源代码https://github.com/peijian1998/ros_exploring/tree/master/robot_marm/marm_description/urdf/ram.xacro,打开ram.xacr...

2021-02-03 17:23:20 1151

原创 向github账号和gitee账号添加ssh key

vmware:15.5ubuntu:16.04.71、git --version 查看git是否已经下载。如果已经下载,则会提示git的版本号,如果未下载,则执行命令 sudo apt-get install git 进行下载,下载完成后执行 git --version查看版本号。2、初次运行git前的配置,主要是配置用户名和邮箱。 git config --global user.name "jupj" git config --global user.email "xx...

2021-01-26 11:03:00 674

原创 kinetick gazebo连不上服务器

环境:vmware:15.5ubuntu 16.04.7ROS: kinetic问题: 执行命令 roslaunch gazebo_ros empty_world.launch 运行gazebo最新环境时,gazebo起来了,但是gazebo显示黑屏,查看终端的,显示如下:解决: 执行命令:(export ROS_HOSTNAME=localhost //该命令可能需要可能不需要)(export ROS_MASTER_URI=http://...

2021-01-26 09:37:18 263

原创 ubuntu16.04.7安装ros kenitic

最近在学习ros,本来已经安装好了ros melodic+ubuntu18.04,但是很多ros的学习资料都是基于kinetic的,所以又重新安装了kinetic。安装过程参考wiki http://wiki.ros.org/kinetic/Installation/Ubuntuubuntu:16.04.7步骤:1.查看ubuntu 软件中心设置 sudo update-manager -c -d2、设置source.list sudo sh -c ...

2021-01-25 18:17:38 523

原创 ROS Melodic 自定义message

如果在ROS的标准中已存在消息类型,则应该使用该消息。然而有时候需要定义自己的消息。定义一个自己的消息类型,步骤如下:1、首先创建一个package,package名字为example_ros_msg。 cd ~/ros_ws/src catkin_create_pkg example_ros_msg std_msgs roscpp cd ~/ros_ws catkin_make echo "source ~/ros_ws/devel/se...

2021-01-20 15:23:44 453

原创 ROS Melodic 创建package

前提:已经创建好工作空间工作空间目录:~/ros_ws/src具体步骤:1、cd ~/ros_ws/src2、catkin_create_pkg my_minimal_nodes std_msgs roscpp3、cd ~/ros_ws4、catkin_make5、echo "source ~/ros_ws/devel/setup.bash" >> ~/.bashrc source ~/.bashrc工作空间已经创建好。ls ~/ros_ws/s...

2021-01-20 11:21:17 202

原创 ROS melodic安装注意事项

ROS版本:melodicubuntu版本:18.04.5 LTS (cat /etc/issue可查看ubuntu版本号)安装时参考官方安装指导: http://wiki.ros.org/melodic/Installation/Ubuntu注意事项: 一、安装时第一步要求查看ubuntu软件中心的设置,但是在ubunut 18.04版本中,桌面上找不到软件中心的图标(不能直接打开软件中心)。可通过以下命令打开软件中心:sudo update-manager -c -d...

2021-01-18 11:18:28 364

原创 为什么差分信号抗干扰能力强

差分信号又称差模信号,与传统使用单根信号线电压表示逻辑的方式有区别,使用差分信号传输时,需要两根信号线,这两个信号线的振幅相等,相位相反,通过两根信号线的电压差值来表示逻辑0和逻辑1。 相对于单信号线传输的方式,使用差分信号传输具有如下优点:1)抗干扰能力强,当外界存在噪声干扰时,几乎会同时耦合到两条信号线上,而接收端只关心两个信号的差值,所以外界的共模噪声可以被完全抵消。2)能有效抑制它对外部的电磁干扰,同样的道理,由于两根信号的极性相反,他们对外辐射的电磁场可以相互抵...

2020-12-29 16:14:28 7839

原创 中颖SH771651/1652笔记之TIM3

void PERI_Timer3Start(void){ /* Timer3选择外部晶振32.768KHz为时钟源,1分频*/ T3CON = 0x02; /*设置62.5ms溢出(0xFFFF - 0xF800 +1)*1000 / 32768 = 62.5ms */ TL3 = 0x00; TH3 = 0xF8; //开启Timer3 T3CON |= 0x04;}...

2020-12-04 11:04:44 260

转载 2020-11-16

Git教程https://www.liaoxuefeng.com/wiki/896043488029600

2020-11-16 17:32:41 75

原创 普通麦克风和多阵列麦克风的区别

普通麦克风是指单个的麦克风。或者说多个麦克风但是这些麦克风之间没有加入处理电路或芯片,那么这些也是普通麦克风。 麦克风阵列是多个麦克风按一定方式排列在一起,由于加入芯片,像昆虫的复眼一个能够精确定位,可以通过芯片,消除环境中各种干扰,比如回声,这就大提高了在恶劣环境中的音色识别性能,也可以降低噪音,主要用在人工智能上,实现远距离识别有用信号,也就是提高清晰度。现版在在远程会议,刑侦,庭审,录音笔上都有这种麦克风阵列。当前成熟的麦克风阵列的主要包括:讯飞的2麦方案、...

2020-10-16 14:39:24 7833

原创 FreeRTOS任务优先级设计原则

1、IRQ任务:是指通过中断服务程序进行触发的任务。此类任务应该设置为所有任务里面优先级最高的。2、高优先级后台任务:比如按键检测、触摸检测、USB消息处理、串口消息处理等可以归于这一类。3、低优先级时间片调度任务:比如emwin界面显示、LED数码管显示等不需要实时执行的都可以归为这一类。 这类任务不需要高实时性。4、空闲任务。特别注意: 1、IRQ任务和高优先级任务必须设置为阻塞式(调用消息等待或延时等函数)。只有这样,高优先级任务才会释放CPU的使用权,...

2020-09-02 17:47:24 1938

空空如也

空空如也

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

TA关注的人

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