有多少人工,就有多少智能

06 2024 档案

摘要:本文介绍了如何拓展MicroROS的Agent,将其作为一个功能包进行源码编译,并提供了详细的步骤如下:一、下载microros-agent首先,我们需要下载MicroROS的Agent源码,并准备相应的依赖。以下是下载和准备的步骤:安装必要的依赖项: sudo apt-get install -y 阅读全文
posted @ 2024-06-29 21:53 lvdongjie-avatarx 阅读(112) 评论(0) 推荐(0) 编辑
摘要:系统框架图,下面再一一介绍。 一、特点1:运行在微控制器上的ROS2 首先从名称看,Micro-ROS,Micro指的就是microcontrollers即微控制器。 核心作用就是上面这句话micro-ROS puts ROS 2 onto microcontrollers。既然是在微控制器上,因硬 阅读全文
posted @ 2024-06-29 19:17 lvdongjie-avatarx 阅读(248) 评论(0) 推荐(0) 编辑
摘要:Franka机器人,特别是Franka Emika Panda,实际上在医疗系统中也具有非常广泛的应用潜力和优势。尽管其驱动电机主要是无刷直流电机,但其设计和功能特点使其非常适合在医疗领域的多个应用场景中使用。以下是Franka机器人在医疗系统中的一些优势和潜在应用:1. 高精度和可靠性 精确操作: 阅读全文
posted @ 2024-06-29 19:02 lvdongjie-avatarx 阅读(27) 评论(0) 推荐(0) 编辑
摘要:Franka机器人,特别是Franka Emika公司的Franka Emika机器人(例如Franka Emika Panda),主要采用的是无刷直流电机(Brushless DC Motor,BLDC Motor)。这些电机被广泛应用于机器人手臂等高性能设备中,具有高效、精确和可靠的特性。为什么 阅读全文
posted @ 2024-06-29 18:59 lvdongjie-avatarx 阅读(84) 评论(0) 推荐(0) 编辑
摘要:PID(比例-积分-微分)控制是一种广泛应用于工业控制系统的控制方法,它适用于多种类型的电机控制,包括步进电机、直流电机和交流电机等。不同类型的电机有不同的动态特性和应用场景,PID控制能够根据这些特性进行调整,从而实现高精度的控制。以下是PID控制适用于不同类型电机的详细分析:1. 直流电机(DC 阅读全文
posted @ 2024-06-29 18:54 lvdongjie-avatarx 阅读(71) 评论(0) 推荐(0) 编辑
摘要:步进电机和直流电机是两种常见的电机类型,它们在结构、工作原理、控制方式和应用领域上都有显著区别。以下是步进电机与直流电机的详细比较: 1. 工作原理 步进电机 工作原理:步进电机是一种将电脉冲信号转换为相应的角位移或线位移的电机。每接收到一个电脉冲信号,电机会旋转一个固定的角度,这个角度被称为步距角 阅读全文
posted @ 2024-06-29 18:51 lvdongjie-avatarx 阅读(273) 评论(0) 推荐(0) 编辑
摘要:经过前面三节的铺垫,我们只需要再编写一个launch文件启动nav2就可以让fishbot自己动起来了。1.编写launch文件我们将地图、配置文件传递给nav2为我们提供好的launch文件中即可。再一个launch文件中包裹另一个功能包中的luanch文件采用的是IncludeLaunchDes 阅读全文
posted @ 2024-06-28 19:50 lvdongjie-avatarx 阅读(126) 评论(0) 推荐(0) 编辑
摘要:配置Nav2安装好了Nav2,我们开始针对我们的fishbot改变一些参数进行导航相关的参数配置。Nav2可配置的参数比起Cartographer更多,但是不要害怕,因为大多数参数我们可能不会改变。有关Nav2的更多参数介绍和详细的配置意义,可以参考Nav2中文网配置指南一节。本节主要准备两个文件给 阅读全文
posted @ 2024-06-28 19:26 lvdongjie-avatarx 阅读(163) 评论(0) 推荐(0) 编辑
摘要:在ROS 2(Robot Operating System 2)中,nav2(Navigation2)节点的生命周期管理是通过ROS 2的生命周期节点(Lifecycle Node)实现的。生命周期节点提供了一种标准化的方法来管理节点的状态转换,使得节点可以被更精细地控制和管理。这样可以提高系统的灵 阅读全文
posted @ 2024-06-28 18:58 lvdongjie-avatarx 阅读(211) 评论(0) 推荐(0) 编辑
摘要:1.Nav2是什么Nav2项目继承并发扬ROS导航栈的精神。该项目力求以安全的方式让移动机器人从A点移动到B点。Nav2也可以应用于其他应用,包括机器人导航,如下动态点跟踪,在这个过程中需要完成动态路径规划、计算电机的速度、避免障碍、恢复行为。2.Nav2如何做到的Nav2使用行为树调用模块化服务器 阅读全文
posted @ 2024-06-28 18:40 lvdongjie-avatarx 阅读(386) 评论(0) 推荐(0) 编辑
摘要:1.地图文件介绍1.地图数据文件.pgm介绍OccupancyGrid由一个.yaml格式的元数据文件,和.pgm图片格式的地图数据文件组成。从上节课建图后保存的文件也可以看出。 . ├── fishbot_map.pgm └── fishbot_map.yaml 0 directories, 2 阅读全文
posted @ 2024-06-28 15:24 lvdongjie-avatarx 阅读(137) 评论(0) 推荐(0) 编辑
摘要:cartographer,这节课我们就开始配置cartographer进行建图。我们需要创建一个功能包,将参数文件和Cartographer启动文件放到一起然后启动。 1.创建fishbot_cartographer功能包 在src目录下,使用创建功能包指令,创建功能包 cd src ros2 pk 阅读全文
posted @ 2024-06-28 15:13 lvdongjie-avatarx 阅读(829) 评论(0) 推荐(0) 编辑
摘要:Cartographer是Google开源的一个可跨多个平台和传感器配置以2D和3D形式提供实时同时定位和建图(SLAM)的系统。 github地址:https://github.com/cartographer-project/cartographer 文档地址:https://google-ca 阅读全文
posted @ 2024-06-28 14:11 lvdongjie-avatarx 阅读(163) 评论(0) 推荐(0) 编辑
摘要:SLAM就是解决地图和定位问题的。 1. SLAM是什么SLAM是同步定位与地图构建(Simultaneous Localization And Mapping)的缩写。 2. SLAM如何解决建图定位问题 机器人通过自身传感器数据处理进行位置估计,同时通过不断移动完成对整个未知环境的地图构建。这就 阅读全文
posted @ 2024-06-28 13:23 lvdongjie-avatarx 阅读(99) 评论(0) 推荐(0) 编辑
摘要:我们先了解下什么是栅格地图(Grid Map)。 如上图将地图数据分割为一块块的栅格来表达地图信息,就是栅格地图。那什么是占据(Occupancy)呢?机器人通过激光雷达等传感器来感知深度信息,但我们知道,传感器都是有噪声的(在前面的机器人仿真建模过程中,我们为了更加真实给激光雷达还添加了高斯噪声) 阅读全文
posted @ 2024-06-28 13:06 lvdongjie-avatarx 阅读(96) 评论(0) 推荐(0) 编辑
摘要:1.图像常见格式及存储在日常生活中,我们会用到各种各样的地图,比如交通轨道图、城市地图、世界地图。 1.地图分类我们根据地图所表达信息的不同可以将地图分为三类:1.1 尺度地图(Metric Map)尺度地图用于表示尺寸距离,可以理解为把真实世界按比例缩小,尺度地图中每个点都可以使用一个经纬值进行表 阅读全文
posted @ 2024-06-28 13:04 lvdongjie-avatarx 阅读(25) 评论(0) 推荐(0) 编辑
摘要:FishBot上采用的是一个额定电压12V的370减速电机,额定转速为130转/分、额定电流0.5A,转矩600克力厘米。 电机相信你很熟悉,那什么是减速电机呢?减速电机指的是带减速器的电机, 减速器的作用是将高转速低扭矩转化为低转速高扭矩。 电机一般由定子和转子组成的,一般转速都比较快,但输出的力 阅读全文
posted @ 2024-06-28 12:38 lvdongjie-avatarx 阅读(23) 评论(0) 推荐(1) 编辑
摘要:在移动机器人中我们需要实时的获取到机器人各个轮子的转速,通过转速根据机器人的运动学模型将轮子的速度转换成机器人的速度,通过对速度进行积分(速度*距离)得到机器人行走的距离。 我们对轮子速度的测量所使用的传感器就是编码器,在FishBot上,我们采用的是AB电磁编码器。 电磁编码器是由1和2两个霍尔传 阅读全文
posted @ 2024-06-28 12:34 lvdongjie-avatarx 阅读(22) 评论(0) 推荐(0) 编辑
摘要:一般激光雷达的测距原理是三角测距法:单线激光雷达原理揭秘:三角测距 VS ToF测距-射频/微波 从上图可以看出,当我们已知L(机械安装值)和d1(CCS测量值)和f(机械安装值)的情况下,我们可以得到D1的值,即激光雷达到被测物体的距离: 激光头通过不断旋转,这样就可以测量出360度的深度信息。 阅读全文
posted @ 2024-06-28 12:27 lvdongjie-avatarx 阅读(57) 评论(0) 推荐(0) 编辑
摘要:在Franka Emika Panda机器人中,robot.setCollisionBehavior 函数用于设置机器人在检测到碰撞时的行为。这些设置确保机器人能够及时检测到外部干扰,并采取适当的响应措施,以保护机器人自身和周围环境的安全。以下详细解释了设置碰撞行为后的响应与未设置情况下的响应差异。 阅读全文
posted @ 2024-06-27 14:45 lvdongjie-avatarx 阅读(26) 评论(0) 推荐(0) 编辑
摘要:在Franka Emika Panda机器人中,robot.setCollisionBehavior 和 robot.setJointImpedance 是可以同时使用的。这两个函数分别负责设置机器人在不同场景下的碰撞行为和关节阻抗,它们共同协作,确保机器人在力控制和运动过程中能有效地应对外界的干扰 阅读全文
posted @ 2024-06-27 14:38 lvdongjie-avatarx 阅读(17) 评论(0) 推荐(0) 编辑
摘要:robot.setCollisionBehavior 函数在Franka Emika Panda机器人中用于设置机器人在碰撞情况下的行为。这个函数的参数是一个4×7的双精度浮点数组,其中每一行的7个值分别表示机器人7个关节的阈值或灵敏度。每一行代表不同类型的控制策略,因此总共有四行。 具体来说,这四 阅读全文
posted @ 2024-06-27 14:31 lvdongjie-avatarx 阅读(30) 评论(0) 推荐(0) 编辑
摘要:了确保运动的停止条件,必须添加一些机制来决定控制过程何时结束。通常,有几个常见的方法来设置停止条件: 基于位移或位置的停止条件: 当机器人的末端执行器达到目标位置或超过某个位移阈值时,停止运动。 可以通过比较当前的末端位置和目标位置来判断是否应该停止。 基于力的停止条件: 当外部施加的力达到或超过某 阅读全文
posted @ 2024-06-27 14:16 lvdongjie-avatarx 阅读(31) 评论(0) 推荐(0) 编辑
摘要:在Franka Emika Panda机器人中,力控制结合位置控制是一种常见的控制方法,能够实现复杂的任务,如沿特定路径运动的同时感知和响应外部施加的力。这种控制方法在需要精确定位和同时需要感知外部力的场景中非常有用,比如在装配、抛光、打磨等工业任务中。 下面我们通过一个示例来展示如何使用 libf 阅读全文
posted @ 2024-06-27 14:14 lvdongjie-avatarx 阅读(174) 评论(0) 推荐(0) 编辑
摘要:Franka Emika Panda机器人能够实时获取力的能力是由于其设计中集成了高精度的力/扭矩传感器和先进的控制算法。这些特性使得机器人在执行任务时可以实时感知和反馈外界施加的力,从而实现精确的力控制和复杂的交互操作。以下是详细解释: 1. 高精度力/扭矩传感器 Franka Emika Pan 阅读全文
posted @ 2024-06-27 13:59 lvdongjie-avatarx 阅读(65) 评论(0) 推荐(0) 编辑
摘要:在Franka Emika Panda机器人中,速度控制是实现精确操作和动态响应的关键部分。您可以通过设置关节速度或笛卡尔速度来控制机器人的运动速度。下面,我将详细解释如何在C++代码中实现速度控制。 1. 设置关节速度 关节速度控制是直接控制每个关节的速度。您可以设置目标速度,然后通过相应的API 阅读全文
posted @ 2024-06-27 13:57 lvdongjie-avatarx 阅读(56) 评论(0) 推荐(0) 编辑
摘要:背景 在机器人控制中,阻抗控制(Impedance Control)是一种常见的控制策略,用于调整机器人在面对外部干扰时的力和位置的响应。通过阻抗控制,机器人可以在力控制和位置控制之间取得平衡,使其对外部环境的变化作出相应的反应,从而更加安全和灵活。 主要参数 setJointImpedance 方 阅读全文
posted @ 2024-06-27 13:53 lvdongjie-avatarx 阅读(32) 评论(0) 推荐(0) 编辑
摘要:1. 力传感器 Franka Emika Panda 机器人的关节中内置了力/扭矩传感器,可以测量每个关节的力和扭矩。通过这些传感器,机器人可以实时感知在操作过程中受到的外力。 2. 实时力反馈 Franka Emika 的控制系统支持实时力反馈,机器人可以在操作过程中持续监测和调整施加的力。例如, 阅读全文
posted @ 2024-06-27 13:52 lvdongjie-avatarx 阅读(215) 评论(0) 推荐(0) 编辑
摘要:1. 运动学求解,如KDL,Trac-IK, IK-Fast 2. 路径规划:OMPL, CHOMP,SBPL 3. 碰撞检测:FCL, PCD... 阅读全文
posted @ 2024-06-27 00:27 lvdongjie-avatarx 阅读(20) 评论(0) 推荐(0) 编辑
摘要:1. 应用场景 2. moveit 2017年 支持的机器人 MoveIt是什么? 传统的示教器需要人手拖动机械臂示教控制, moveit则不需要: 阅读全文
posted @ 2024-06-26 23:50 lvdongjie-avatarx 阅读(20) 评论(0) 推荐(0) 编辑
摘要:1. 以UR3机器人为例, 先设计solidwork模型, 下载并安装sw_urdf_expoter 插件: 2. 下载机器人模型文件,加载进solidworks: 插入基准轴: 一共6个旋转轴: 设置好旋转轴后,接下来,导出URDF文件: 配置URDF: 将link加进来: 点击“Preview 阅读全文
posted @ 2024-06-26 23:10 lvdongjie-avatarx 阅读(160) 评论(0) 推荐(0) 编辑
摘要:机器人建模文件样例: 6轴机器人建模 <?xml version="1.0"?> <robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="test"> <xacro:property name="length" value="0.6"/> < 阅读全文
posted @ 2024-06-26 21:58 lvdongjie-avatarx 阅读(27) 评论(0) 推荐(0) 编辑
摘要:1. 基本建模文件 URDF 基本单位:弧度 弧度/s 米 2. URDF进化版本 - xacro模型文件 阅读全文
posted @ 2024-06-26 20:36 lvdongjie-avatarx 阅读(17) 评论(0) 推荐(0) 编辑
摘要:主要包括三部分: 1. MoveIt机器人驱动接口。 2. MoveIt控制接口配置。 3. MoveIt驱动接口编程。 阅读全文
posted @ 2024-06-25 20:20 lvdongjie-avatarx 阅读(11) 评论(0) 推荐(0) 编辑
摘要:1. 通讯协议的定义 PC擅长于计算, 嵌入式下位机精通于控制, 二者需要数据传输。 通讯协议的设计: 需要考虑的问题? 阅读全文
posted @ 2024-06-25 18:42 lvdongjie-avatarx 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2024-06-25 16:55 lvdongjie-avatarx 阅读(11) 评论(0) 推荐(0) 编辑
摘要:伺服电机 -》 步进电机 - 》 舵机-》关节模组 编码器-》压力传感器 -》 限位器(电位器) 阅读全文
posted @ 2024-06-25 16:31 lvdongjie-avatarx 阅读(15) 评论(0) 推荐(0) 编辑
摘要:1. 机器人组成部分主要分为4大部分:控制系统(类似于人类大脑),驱动系统(类似于肌肉), 执行机构(类似于手脚), 传感器( 类似于感官)。 控制系统: 包括关节控制,人机交互,算法计算, 运动规划等。 驱动系统:主要包括电驱动,液压驱动, 气压驱动等。 执行机构: 主要包含:步进电机,伺服电机, 阅读全文
posted @ 2024-06-25 16:04 lvdongjie-avatarx 阅读(34) 评论(0) 推荐(0) 编辑