自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Heronita的博客

开源分享

  • 博客(51)
  • 资源 (9)
  • 收藏
  • 关注

原创 多移动机器人编队代码分享

关于多移动机器人编队所有的matlab代码,视频,文献资料,教程,实物实验都放在淘宝店handsfree,以及mini机器人产品资料中了。如有需要,可以搜索该店铺。????

2021-12-19 22:42:08 914 6

原创 第三部分 单机以及编队控制实验—中级教程之机器人自主导航实验(3)

3.3 Python编程_自主导航本章编写python程序,通过ros的navigation接口向move_base导航系统发送goal,让机器人导航到目标点。我们让机器人导航到目标点,就需要先确定目标点,然后将目标点告诉机器人。3.3.1 确定目标点首先我们需要学会一个技巧,通过rviz获取地图,我们通过仿真方式演示一下怎么获取目标点的坐标。打开终端,输入下面命令,开启一个仿真节点roslaunch handsfree_stage demo_handsfree_room_stage

2021-07-13 21:20:07 856 3

原创 第三部分 单机以及编队控制实验—中级教程之机器人运动控制实验(2)

3.2 Python编程_运动控制本小节将介绍如何通过编写的python代码,来控制机器人将消息发送给机器人,让机器人运动起来。我们将通过以下三点来进行演示:控制机器人直线运动 控制机器人转向运动 编写一个键盘遥控程序本小节会学习到如何使用ROS Service的功能,也可以参考ROS Wiki关于Service的教程 Writing a Simple Service and Client3.2.1 控制机器人直线运动我们要实现的是: 通过python程序控制机器人沿x轴上下移动。

2021-07-13 21:16:24 780 2

原创 第三部分 单机以及编队控制实验—中级教程之传感器数据读取实验(1)

3.1 Python编程_传感器数据读取本小节将介绍如何通过编写python代码,来获取机器人的基本数据。我们将通过以下四点来进行演示:获取机器人基本参数,并打印出来 获取IMU数据,并转化成欧拉角打印出来 获取雷达数据,并打印出来 获取摄像头数据,并python cv库显示出来3.1.1 获取机器人底层硬件基本信息,并打印出来机器人的底层硬件基本信息,是指嵌入式片上时钟,嵌入式cpu温度,电池电压和电池电量剩余等。只需要开启机器人的handsfree_hw节点,机器人的基本参数就.

2021-07-13 21:11:34 578 1

原创 第二部分 单机以及编队控制实验—初级教程之安卓APP使用教程(13)

2.14 安卓APP使用教程在前面的教程中,我们实现了通过远程计算机对机器人进行控制,在这一篇中,我们尝试通过手机远程操控机器人。2.14.1 准备开始1)下载安卓app想要实现手机控制机器人,手机app是必不可少的,需要先在手机上安装相关的安卓app,ROS官方提供了安卓平台的支持,以及一些测试的DEMO,官方源码地址。 为了让官方的代码能在HandsFree机器人上正常使用,我们做了一些改动源码地址,并打包生成可直接测试的安卓程序安装包,用户可以自行下载测试。HandsFree安卓.

2021-07-13 20:58:56 530 2

原创 第二部分 单机以及编队控制实验—初级教程之Gazebo仿真实验(12)

2.13 Gazebo仿真实验Gazebo是一个功能十分强大的三维仿真软件,与ROS可以无缝连接进行机器人仿真。更多关于Gazebo的信息请参考Gazebo官网和ROS官网的Gazebo Wiki。本章讲解如何控制HandsFree的机器人模型在Gazebo的三维世界中进行移动。在安装ROS的时候一般已经默认安装了Gazebo,ROS Indigo默认安装Gazebo2.0版本,ROS Kinetic默认安装Gazebo7.0版本。在如何配置环境章节已经安装了连接ROS与Gazebo的依赖包。通

2021-07-13 20:52:37 605

原创 第二部分 单机以及编队控制实验—初级教程之语音识别(11)

2.12 机器语音识别在节将介绍如何使用语音识别包来识别通过人体所发出的声音让机器人完成一些简单的运动。我们将分别通过以下两点为您介绍:语音识别;语音控制。2.12.1 准备开始1)安装支持库 sudo apt-get install ros-kinetic-audio-common libasound2 gstreamer0.10-* python-gst0.10sudo apt-get install pocketsphinx* pocketsphinx-en-...

2021-07-13 20:49:02 254

原创 第二部分 单机以及编队控制实验—初级教程之机器视觉_二维码跟踪(10)

2.11 机器视觉_二维码跟踪2.11.1 准备开始在进行二维码跟踪前,我们需要做一些准备。1) 打印二维码。维码放在了/handsfree_ros_ws/src/handsfree/handsfree_ar_tags/config目录下。tips:这里由于算法缘故,若将二维码在手机上打开进行识别,摄像头很难识别出来!2)确保摄像头可以正常工作,可以根据驱动测试中的rgbd_camera测试完成这一步。(如果之前已经测试完成,请忽略此步骤)注意:要关掉有进程正在运行的终.

2021-07-12 13:03:24 465 2

原创 第二部分 单机以及编队控制实验—初级教程之机器视觉_二维码识别(9)

2.10 机器视觉_二维码识别2.10.1 准备开始在进行二维码识别前,我们需要做一些准备。1)打印二维码.二维码放在了/handsfree_ros_ws/src/handsfree/handsfree_ar_tags/config目录下tips:这里由于算法缘故,若将二维码在手机上打开进行识别,摄像头很难识别出来!2)确保摄像头可以正常工作,可以根据驱动测试中的rgbd_camera测试完成这一步。(如果之前已经测试完成,请忽略此步骤)注意:要关掉有进程正在运行的终端.

2021-07-12 12:58:48 497

原创 第二部分 单机以及编队控制实验—初级教程之视觉案例(8)

2.9 机器视觉_简单的视觉案例HandsFree支持多种深度摄像头,包括Xtion Pro,奥比中光,Kinect等。本节将讲解如何使用Asus Xtion Pro进行几个视觉相关的小实验。2.9.1 测试摄像头参考硬件驱动测试教程,先测试一下深度摄像头是否正常工作:查看图片有3种方法,第一种方法,用终端打开rviz可视化roslaunch handsfree_camera view_xtion.launch此命令打开了摄像头驱动节点和rviz可视化界面。单独打开摄像头驱动节

2021-07-12 12:53:20 159

原创 第二部分 单机以及编队控制实验—初级教程之自主导航(7)

2.8 自主导航本小节使用上节教程雷达建图建好的地图,实现自主导航到目标点的实验。2.8.1 准备开始确保机器人已经上电,急停开关打开 确保机器人主机安装连接好了激光雷达USB接口和底盘的USB通讯接口。 确保前几节教程的实验正常测试通过 确保正常关闭前面的教程运行的程序和终端。2.8.2 详细步骤1)打开终端,运行机器人驱动节点:roslaunch handsfree_hw handsfree_hw.launch2)打开新终端,运行对应型号的激光雷达驱动节点(Hands.

2021-07-12 12:45:04 160

原创 第二部分 单机以及编队控制实验—初级教程之雷达建图(6)

2.7 雷达建图本小节介绍使用激光雷达构建二维地图并保存地图到指定目录。构建的地图会用于后面的自主导航实验。2.7.1 准备开始确保机器人已经上电,急停开关打开; 确保机器人主机安装连接好了激光雷达USB接口和底盘的USB通讯接口; 确保前几节教程的实验正常测试通过; 确保正常关闭前面的教程运行的程序和终端;2.7.2 详细步骤1)打开终端,运行机器人驱动节点:roslaunch handsfree_hw handsfree_hw.launch2)打开新终端,运行对应型号.

2021-07-12 12:42:03 493 1

原创 第二部分 单机以及编队控制实验—初级教程(5)

2.6 重要的话题Topics机器人有许多的功能,这些功能的实现是依靠着机器人各个模块之间的通信来完成。在ros中有两种通信方式,其中一种就是topic通信(异步通信),而另一种是service(同步通信)通信。本节只对rostopic做一些简单的讲解,详细的了解可以前往ros的wiki上的rostopic。如果您还想了解servicr,可以前往ros的wiki上的rosservice。我们先来了解一下异步通信和同步通信:异步通信:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方

2021-07-12 12:38:34 414 1

原创 第二部分 单机以及编队控制实验—初级教程(4)

2.5 遥控机器人本小节我们将通过两种常见的方式来介绍两种方法来遥控机器人通过电脑键盘来遥控机器人 通过PS3游戏手柄来遥控机器人2.5.1 准备开始如果要使用ps3游戏手柄,需要为其装上电池,将里面的Nano接收器插在工控机上。使用时,要打开游戏手柄背后的开关,然后在正面按MODE上方的按钮,点亮下面的LED灯。2.5.2 通过电脑键盘来遥控机器人2.5.2.1 简明步骤您只需要在工控机打开两个终端,分别输入下面两条指令即可roslaunch handsfree_hw ha

2021-07-12 12:33:47 376 1

原创 第二部分 单机以及编队控制实验—初级教程(3)

2.4 硬件驱动测试本节将介绍机器人驱动的测试,为了确保您手中机器人各个驱动在运送的过程中没有受到损坏。如果有问题,请及时联系我们。注意:要关掉有进程正在运行的终端,请在该窗口使用 Ctrl+C 来中断程序,然后在关掉该窗口。2.4.1 硬件介绍2.4.1.1 IMUIMU(英文Inertial measurement unit,简称 IMU)即惯性测量单元,是测量物体三轴姿态角及加速度的装置。一般的,一个IMU包含了三个单轴的加速度计和三个单轴的陀螺,加速度计检测物体在载体坐标系统独立

2021-07-11 15:01:26 243

原创 第二部分 单机以及编队控制—初级教程(2)

2.3 准备开始欢迎使用HandsFree机器人,本小节我们一步步来完成一个最基础的遥控测试的实验。我们将介绍如何使用机器人端的工控机(或PC)对机器人进行遥控。通过这个测试,来验证工控机的Ubuntu ROS和HandsFree的开发环境是否配置正确、机器人嵌入式系统是否工作正常、机器人嵌入式系统层和PC端ROS层的通讯是否正常。2.3.1 工控机环境配置和检查2.3.1.1 安装ROS和HandsFree如果购买了带工控机的HandsFree机器人套件,则系统环境都已经由官方配置完成

2021-07-11 14:51:16 332

原创 机器人单机以及编队控制_入门过程与方法

9.1.1 概述机器人是一个复杂系统,对理论和工程知识的要求综合度是非常高的,如果你没有足够的激情,不断学习的心态,独立解决困难的决心,建议你还是不要入这个神坑。即使你有上述的基本素质,机器人也不是想玩就能玩的,至少不是你有钱买个平台你就有能力玩起来的, 虽然我自己也很菜, 但是我还是得给新手指指方向。我觉得如果你能满足以下条件再开始你的HandsFree开发之旅会比较好一点。编程功底要够好 编程就和学英语一样,需要你在平时的科研进程中不断学习和练习,没有最强只有更强,不懂计算机语言永远别想..

2021-07-11 14:46:10 456

原创 第二部分 单机以及编队控制_初级教程(1)

在Stone机器人本体上,我们规划的初级教程旨在帮助用户成功地安装、使用和开发HandsFree机器人基础功能。2.1 视频教程列表(持续更新)第一讲: HandsFree机器人系统安装和环境配置。视频地址:https://handsfree-mv.oss-cn-shenzhen.aliyuncs.com/handsfree_wiki/video/Tutorial/Getting_Started/system_environmental.mp4第二讲: HandsFree机器人遥控,建图..

2021-07-11 14:42:35 304

原创 第一部分 Handsfree机器人产品介绍

我接下来把我们整个机器人团队所做的工作以及涉及到的开源方案,都搬运到这里,供大家参考学习。我保证认真学完,我发的这一系列教程后,你也会从此成为机器人行业的大神。首先我先介绍一下机器人本体的一些东西。我们用的Handsfree机器人拥有包含多个不同品类giraffe 机器人,st one 机器人,mini 机器人。具体可参考官网:https://www.taobotics.com/index.html。giraffe 机器人快速上手视频:视频教程 1(https://handsfree-mv.oss-

2021-07-11 14:37:07 810

原创 saber仿真建模(二)三相无刷电机驱动器建模与仿真

2020-09-17 15:01:31 683

原创 saber仿真建模(一)三相无刷电机驱动器建模与仿真

2020-09-11 17:54:59 1192 2

原创 领航跟随型编队(十四)室内定位技术概述

室外定位技术提出早、发展快且成果显著。室内定位技术相比而言起步较晚,该领域还有很多空白,但人们对室内定位技术的关注从未中断。美国联邦通信委员会FCC(Federal Communications Commission)在1996年制定了E-911定位标准[1],然后在各行业应用需求的推动下,室内定位技术得到了快速的发展。目前,国内外研究者们提出了蓝牙、红外线、RFID、WLAN、超宽带、超声波等室...

2020-03-19 22:57:10 1757 1

原创 领航跟随型编队(十)编队实验视频

实验一:圆形轨迹下编队生成与保持实验 如图 5-19 所示,两个机器人完成从随机状态形成编队并沿圆形轨迹保持编队运行, 且图中下方的窗口动态显示编队的运行情况。领航机器人初始信息:坐标(0.5m,0m),运 动方向 . /2 leader    ,线速度 0.05 / r m s   ,角速度 。跟随机器人初始信息:坐 标(0.5m,1.5m),方向 . 0 follower   ,...

2020-03-16 20:17:30 2942

原创 领航-跟随型编队 (六)避障问题综述

领航-跟随型编队避障问题指编队在运动过程中,领航机器人根据某种方式获取与识别前方障碍物,同时编队整体采取一定方法及时规避障碍物与防止内部碰撞,涉及到障碍物检测、编队避障规划、编队避碰协调,运动控制等问题。本文在总结现有文献的基础上,将编队避障问题主要分解为在以下几个方面[7-10]:(1) 避障规划与避碰协调问题。即在实现单个移动机器人路径规划问题的基础上,如何建立一个控制模型并以某种运动规则...

2020-03-16 19:47:37 9194 7

原创 领航跟随型编队 (九)发现一家移动底盘

最近发现了一家做移动机器人底盘硬件设备的,感觉还不错,觉得可以用来搞编队实验平台。主要是有学习文档,还是中文的。后面打算找找资料,把机子跑起来,然后把学习记录都写出来。????????不知道这是一种什么样巨大的工程。。...

2020-03-14 12:33:51 587 3

原创 移动机器人嵌入式系统详细篇

接触了移动机器人这么久,我觉得应该写点什么东西,分享一下最基础的自己关于移动机器人的理解,也作为笔记总结,留到以后查阅。目前我还是觉得自己刚入门,有时候总想的太多,不如实践来的更直接,下面总结之前的实践经验,来系统的梳理一下什么是移动机器人软硬件系统问题。文中涉及到的开源项目网站地址如下:开源项目网站Handsfree(https://github.com/HANDS-FREE/OpenRE)...

2019-11-22 14:26:37 4984

原创 STM32F103之实验7一阶互补滤波求解移动机器人的姿态代码

上一篇博客,采用的是DMP解算姿态,且给出了底层硬件配置及驱动方式,此处摒弃DMP直接由单片机自己实现姿态解算,接下来介绍由三轴陀螺仪和加速度计的值来使用四元数软件解算姿态的方法。我们先来看看如何用欧拉角描述一次平面旋转(坐标变换):设坐标系绕旋转α角后得到坐标系,在空间中有一个矢量在坐标系中的投影为,在内的投影为由于旋转绕进行,所以Z坐标未变,即有。转换成矩阵形式表示为...

2019-06-21 18:35:48 2096 3

原创 STM32F103之实验6 采用MPU6050及DMP解算移动机器人姿态实验

写在最前面,这篇博客写到的姿态解算是由DMP硬件完成的,介绍了底层驱动,重点例举了MPU6050的初始化函数,加速度计,陀螺仪原始数据的读取函数,设置传感器的量程范围,采样频率函数。下一篇博客,我会不采用DMP,直接用单片机实现姿态解算。如上图所示,SCL 和 SDA 是连接 MCU 的 IIC 接口,MCU 通过这个 IIC 接口来控制 MPU6050,另外还有一个 IIC 接口:AUX...

2019-06-12 23:39:23 15180 4

原创 导航中常用坐标系转换

2019-04-24 22:31:56 2843

原创 第六次大灭绝还远吗?––读《大灭绝时代》

生命的历史既不是均变论的,也不是灾变论的,而是两者的混杂。这部跌宕起伏的历史揭示了生命是极有韧性的,但并非没有极限。在生命的历史上有着平安无事的悠长阶段。历史上曾发生过多次物种大规模灭绝事件,其中著名的五次大灭绝事件均造成地球半数以上物种永久消失。 通过探索一系列正在灭绝或者说在智人出现后依次灭绝的生物,可以称之为全新世大灭绝,或是人类世大灭绝,或是——第六...

2019-04-24 22:09:19 885 2

原创 看见的与看不见的,你看见了吗?——读《1493-物种大交换》

看见的与看不见的,你看见了吗?这本书从细微处洞察大局,从哥伦布远航开始,世界的变迁正在悄然酝酿。1492年后,当欧洲船只将成千上万的物种运到大洋彼岸的新家园时,全球的生态系统开始了碰撞与融合。克罗斯比将其称为“哥伦布大交换”,正是它让意大利有了西红柿,美利坚有了橙子,瑞士有了巧克力,泰国有了辣椒。这场生物界的巨变也影响到了人类。我们在课堂上学到的很多历史事件背后都有“哥伦布大交换”的身影—...

2019-04-24 22:09:03 922

原创 一起学习SLAM(五):Kalman滤波大致过程

2019-04-24 22:07:56 962

原创 一起学习SLAM(四):深度理解SLAM过程

2019-04-24 22:06:26 702

原创 一起学习SLAM(三):SLAM大致过程

2019-04-24 22:03:33 808 2

原创 一起学习SLAM(二):理解贝叶斯估计

2019-04-24 22:01:51 610

原创 一起学习SLAM(一):理解协方差的意义

2019-04-24 22:00:18 1493 2

原创 UCOS 中的优先级判定

UCOS中优先级判定图1图2如上图1与2所示,OSRdyGrp确定了优先级的次低三位(bit5-bit3),OSOSRdyTbl确定了优先级的低三位(bit2-bit0)。OSRdyGrp = 0x011;  //0b00010001 此处表示D0位D4位被置位1,及存在OSRdyTbl[0]和OSRdyTbl[4]两个组包含优先级。OSRdyTbl[0] = 0x0a...

2018-07-24 20:21:59 2763

原创 微机原理原理与接口技术视频

这个视频还是感觉挺好的,对于基础薄弱的可以看看这个视频。https://i.youku.com/i/UMzk0Nzc3MjE2OA==/videos?spm=a2hzp.8244740.0.0

2018-07-02 21:23:05 1850

原创 STM32F103之DMA实验,内存通过DMA向串口1发送数据

#include "dma.h"////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////DMA...

2018-06-26 12:08:23 4349

原创 stm32f103之串口实验,串口相互通讯即用同一个单片机的串口1与串口3相互通讯

 串口1,串口3都接到电脑上,选上”Use MicroLIB”这是KEIL自带的一个简易的库,例如你用printf函数的时候,就会从串口1 输出字符串,直接默认定向到串口1。(此程序中两个波特率不匹配,接受会出错,在实践中要设置串口一致的波特率)以下是程序#ifndef __USART_H//头文件#define __USART_H#include "stdio.h" #in...

2018-06-24 19:37:42 13152 7

saber仿真反激拓扑,

反激拓扑设计

2020-12-29

11 PExprt和simplorer进行联合仿真设计.pdf

运用ANSYS公司的Simplorer、PExprt和Maxwell进行联合仿真,例如BUCK变换器设计中,我们可以利用PExprt进行变换器中所需电感的设计和优化,然后还可以借助Maxwell对所设计电感的磁力线分布和能量损耗分布进行观察,最后我们可以将PExprt中生成的模型导入Simplorer的实际电路中进行联合仿真

2020-12-29

7,LLC谐振最终分享汇报展示版本20201204.pdf

硬件工程师必备,电源工程师

2020-12-23

移动机器人路径规划Djskt.m

这个是移动机器人路径规划的一种算法,比较基础,下载后就可用。接触了移动机器人这么久,我觉得应该写点什么东西,分享一下最基础的自己关于移动机器人的理解,也作为笔记总结,留到以后查阅。

2020-03-16

路径规划中的Astar算法.m

路径规划中的Astar算法,开源项目网站Handsfree(https://github.com/HANDS-FREE/OpenRE); 项目网站和教程: http://wiki.hfreetech.org/ 开源代码 : https://github.com/hands-free

2020-03-16

Wheeled_Mobile_Robot.zip

受非完整约束的两轮式机器人的单机运动控制,涉及运动学与动力学的求解,可用于轨迹跟踪,路径跟随等。

2019-05-26

STM32F103之实验2控制1个电机并采用编码器读取电机转速(代码)

STM32F103之实验2控制1个电机并采用编码器读取电机转速(代码)

2018-06-19

STM32F103之实验1使用定时器驱动1个电机

STM32F103之实验1使用定时器驱动1个电机

2018-06-19

输入捕获实验

定时器输入捕获① 初始化定时器和通道对应IO的时钟。 ② 初始化IO口,模式为输入:GPIO_Init(); GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; //PA0 输入 ③初始化定时器ARR,PSC TIM_TimeBaseInit(); ④初始化输入捕获通道 TIM_ICInit(); ⑤如果要开启捕获中断, TIM_ITConfig(); NVIC_Init(); ⑥使能定时器:TIM_Cmd(); ⑦编写中断服务函数:TIMx_IRQHandler();

2018-05-18

空空如也

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

TA关注的人

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