基于ARM+FPGA的驱控一体机器人控制器设计

目前市场上工业机器人,数控机床等多轴运动控制系统普遍采用运动控制器加
伺服驱动器的分布式控制方式。在这种控制方式中,控制器一方面完成人机交互,另
一方面进行 NC 代码的解释执行,插补运算,继而将计算出来的位置指令通过轴组模
块下发给各个伺服驱动器。下发过程通常是由现场总线完成,总线周期为 4 ms 或者
更小。伺服驱动器接收位置指令,位置细分后通过三环控制最终驱动电机。在这个过
程,通常是一个伺服驱动器驱动一个电机,六关节机器人就需要六个驱动器完成,各
个伺服驱动器各自独立地完成位置控制功能,从而实现机器人末端达到指定位置。各
个伺服驱动器的数据交互需要依靠总线完成,但是现场总线通信受通讯速率限制不
能完成一些实时数据(比如电流)交互,因此,轴与轴的数据并不能完全实时共享。
在实际应用中,分布式机器人控制系统结构相对分散,一些复杂控制算法,比如
结合机器人的运动学动力学的电流前馈加反馈线性化的伺服控制算法,多轴精确同
步控制算法等在分布式控制系统中实现有一定难度,而且现场总线需要一定的布线
成本。鉴于以上缺点,有必要进一步简化运动控制系统结构。
控驱一体的运动控制系统结构将原来相互独立的控制器和各个伺服驱动器结合
在一起,在 SoC
System-On-Chip )芯片上实现控驱一体。这样做的好处是:
(1)整个运动控制系统的结构更加紧凑,控制电柜体积更小,集成度更高,适用
于物理空间有限的工作环境,同时方便运输和安装。
(2)基于单芯片 SoC 架构方案替代多单元控制器对多单元电机的驱动方式,不依
靠现场总线完成通讯,降低硬件和软件互连的成本,同时充分利用嵌入式 SoC 芯片特
性,满足运动控制器的功能性要求和伺服驱动器的实时性要求,降低控制器成本。
(3)控制器与驱动器更加紧密的耦合,有利于高级复杂运动控制算法实现。比如
多轴同步控制,速度加速度前馈,抖动抑制,摩擦补偿等。让运动学和动力学控制算
法参与或者得到伺服驱动中的电流环的运算结果,伺服驱动器也可以预测轨迹规划
的运算结果,有助于提高机器人控制性能。
(4)片内总线替代现场总线, 通信的带宽更高和稳定性更好 。与现在的工业现场
总线的分布式控制系统相比,信息交换完全依靠片内总线完成,它是一种并行总线,
相比于轮询式的串行现场总线,不仅考虑昂贵的布线成本,而且通讯速率受到串行通
讯方式限制。采用并行总线可以很好地保证多轴数据交互的同步性和实时性。
(5)控制器与驱动器之间数据交互的实时性能更好,控制器可以更加方便和及时
地利用驱动器的反馈状态信息,控制器根据反馈信息实时调整控制策略,从而使实现
更好的控制性能。
(6)控制器与驱动器的通讯速率得到提高,控制器的插补周期可以进一步减小,
位置环的刷新周期可以进一步减小,有助于实现高速状态下的高精,实现真正意义上
的高速高精。
(7)有利于控制器以更高的频率采集驱动器的运动变量参数,更精确的描述参数
的变化趋势,方便对机器人运动状态进行更细致分析。
1.3 国内外研究现状
1.3.1 伺服驱动系统的研究现状及发展趋势
典型的机器人控制系统在结构上大致分为三个层次:控制器,伺服驱动器,机器
人本体。近年来,出现了交流伺服驱动器的两种不同发展方向。第一种是运动控制器
保持不变,伺服驱动器和伺服电机一体化集成;第二种是伺服电机保持不变,伺服驱
动器和运动控制器一体化集成。
将伺服驱动器和伺服电机一体化集成对伺服驱动器要求较高,必须具备小型化,
散热好,高频特性的特点。目前国内对这方面研究正处于起步阶段。国外方面,以色
列的 ELMO 公司推出的 Twitter 伺服驱动器便是一种微小型高功率密度驱动器,如图
1-1 所示。采用 “快速软开关技术”,实现大于 99%的效率以及几乎可忽略不计的电

伺服电机保持不变,把伺服驱动器和运动控制器做一体化集成也是一种发展趋
势,即朝控驱一体方向发展。其优势包括:体积小,重量轻,成本低,可靠性高,部
署灵活,能够完成复杂的机器人算法,适合用于物理空间有限的工作场合等。目前国
内外公司已推出控驱一体化产品(如:固高、众为兴、台达、 KUKA ABB 等等),
大多采用分布式 CPU 方式进行控驱一体整合,国内用于 3C 机械臂,桌面机械臂等
对空间要求较高的场合,国外更多应用在人机协作,自动化生产线等场合。
国内,2018 年哈尔滨工业大学 HIT PEED 伺服组基于 zynq 平台开发出小批量
驱控一体化样机,一个芯片可以独立控制 4-6 轴,如图 1-2 所示(图片引自 2019 智
能制造&中国运动控制行业发展高峰论坛)。采用赛灵思公司的高性能 SoC 芯片,其
PL(Progarmmable Logic) 部分完成多轴电机驱动,带宽高、响应快, PS(Processing
System) 部分进行运动控制算法的实现和各类通讯及数据交互等功能。
总之,随着信号检测技术(例如高精度,低时延的采样技术),自动控制技术(例
如模糊控制,自适应,预测控制等),驱动控制技术(例如 PWM 调制技术,死区等
非线性因素补偿技术等),芯片技术( SoC 芯片技术)的发展,伺服系统发展趋势朝
着高性能,集成化和模块化,通用化和专用化,网络化和智能化的方向发展。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/58803.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Go项目实现日志按时间及文件大小切割并压缩

关于日志的一些问题: 单个文件过大会影响写入效率,所以会做拆分,但是到多大拆分? 最多保留几个日志文件?最多保留多少天,要不要做压缩处理? 一般都使用 lumberjack[1]这个库完成上述这些操作 lumberjack //info文件wr…

Java版工程行业管理系统源码-专业的工程管理软件-em提供一站式服务 em

​ Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下: 首页 工作台:待办工作、消息通知、预警信息,点击可进入相应的列表 项目进度图表:选择(总体或单个)项目…

弱监督语义分割伪标签可视化(把单通道灰度图转为voc格式语义分割标签的彩色形式)

一、目的 以图片2007_001960为例,voc数据集中的原图和对应的语义分割标签分别如下: 图1 图2 图像级标签WSSS任务第一阶段最后生成的pseudo mask如下: 图3 我们的…

【雕爷学编程】MicroPython动手做(33)——物联网之天气预报3

天气(自然现象) 是指某一个地区距离地表较近的大气层在短时间内的具体状态。而天气现象则是指发生在大气中的各种自然现象,即某瞬时内大气中各种气象要素(如气温、气压、湿度、风、云、雾、雨、闪、雪、霜、雷、雹、霾等&#xff…

react中PureComponent的理解与使用

一、作用 它是一个纯组件,会做一个数据的浅比较,当props和state没改变的时候,不会render重新渲染, 改变后才会render重新渲染,提高性能。 二、使用 三、注意 它不能和shouldComponentUpdate生命周期同时使用。因为它…

如何获取最新的底图边线数据(高德)

由于近期的大屏项目需要地图的边界线的数据,找了很多方式,都有局限性,就是不能保证是最新的,所以使用高德地图提供的边线数据,那就肯定是最新的了,之前仔细看文档,现在仔细看了,才发…

【云原生】k8s中Contrainer 生命周期回调/策略/指针学习

个人主页:征服bug-CSDN博客 kubernetes专栏:kubernetes_征服bug的博客-CSDN博客 目录 1 容器生命周期 2 容器生命周期回调/事件/钩子 3 容器重启策略 4 自定义容器启动命令 5 容器探针 1 容器生命周期 Kubernetes 会跟踪 Pod 中每个容器的状态&am…

Python 批量处理JSON文件,替换某个值

Python 批量处理JSON文件,替换某个值 直接上代码,替换key TranCode的值 New 为 Update。输出 cancel忽略 import json import os import iopath D:\\Asics\\850\\202307 # old path2 D:\\test2 # new dirs os.listdir(path) num_flag 0 for file…

【Spring练习项目】博客系统

目录 1.项目展示2.项目结构设计3.项目功能设计4 数据库准备4.1 建表4.2 DB相关数据 5.项目模块6.添加项目公共模块6.1 common6.2 实现前端界面 7.功能实现7.1实现博客列表约定前后端交互接口实现服务器代码实现客户端代码 7.2实现博客详情约定前后端交互接口实现服务器代码实现…

基于图片、无人机、摄像头拍摄进行智能检测功能

根据要求进行无人机拍摄的视频或图片进行智能识别,开发过程需要事项 1、根据图片案例进行标记,进行模型训练 2、视频模型训练 开发语言为python 根据需求功能进行测试结果如下 根据车辆识别标记进行的测试结果截图 测经过查看视频 8月1日

opencv-33 图像平滑处理-中值滤波cv2.medianBlur()

中值滤波是一种常见的图像处理滤波技术,用于去除图像中的噪声。它的原理是用一个滑动窗口(也称为卷积核)在图像上移动,对窗口中的像素值进行排序,然后用窗口中像素值的中值来替换中心像素的值。这样,中值滤…

【二等奖方案】Web攻击检测与分类识别赛题「机器学习」团队解题思路

2022 CCF BDCI 数字安全公开赛 赛题「Web攻击检测与分类识别」 地址:http://go.datafountain.cn/4Zj 机器学习战队 获奖方案 团队简介 我们团队由五名成员组成,对机器学习都非常感兴趣,同时在机器学习领域有着丰富的实战经验&#xff0c…

LeetCode 42. 接雨水(动态规划 / 单调栈)

题目: 链接:LeetCode 42. 接雨水 难度:困难 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2…

爆肝整理,Postman接口测试-参数关联实战(详细步骤)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 接口测试什么时候…

ES6及以上新特性

ES6(ECMAScript 2015)及以上版本引入了许多新特性,每个版本都有不同的增强和改进。以下是 ES6 及以上版本的新特性的详细描述: ES6(ECMAScript 2015): let 和 const 声明:引入块级作…

瑞吉外卖实战-笔记

软件开发的流程 角色分工 软件环境 开发环境的搭建 数据库环境 maven环境 1.创建完成后&#xff0c;需要检查一下编码、maven仓库、jdk等 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</a…

pytorch 中 view 和reshape的区别

在 PyTorch&#xff08;一个流行的深度学习框架&#xff09;中&#xff0c; reshape 和 view 都是用于改变张量&#xff08;tensor&#xff09;形状的方法&#xff0c;但它们在实现方式和使用上有一些区别。下面是它们之间的主要区别&#xff1a; 实现方式&#xff1a; reshap…

机器学习--课后作业--hw1

机器学习(课后作业–hw1) 本篇文章全文参考这篇blog 网上找了很多教程&#xff0c;这个是相对来说清楚的&#xff0c;代码可能是一模一样&#xff0c;只是进行了一些微调&#xff0c;但是一定要理解这个模型具体的处理方法&#xff0c;这个模型我认为最巧妙的它对于数据的处理…

HTTP(超文本传输协议)学习

关于HTTP补学 一、HTTP能干什么 通过下图能够直观的看出&#xff1a;“交换数据 ” 二、HTTP请求例子 一个 HTTP 方法&#xff0c;通常是由一个动词&#xff0c;像 GET、POST 等&#xff0c;或者一个名词&#xff0c;像 OPTIONS、HEAD 等&#xff0c;来定义客户端执行的动作。…

Django之JWT库与SimpleJWT库的使用

Django之JWT库与SimpleJWT库的使用 JWTJWT概述头部(header)载荷(payload)签名(signature) Django使用JWT说明jwt库的使用安装依赖库配置settings.py文件配置urls.py文件创建视图配置权限 SimpleJWT库的使用安装SimpleJWT库配置Django项目配置路由创建用户接口测试身份认证自定义…