收藏 分销(赏)

工业机器人控制系统设计与实现.pdf

上传人:自信****多点 文档编号:571596 上传时间:2023-12-29 格式:PDF 页数:5 大小:1.79MB
下载 相关 举报
工业机器人控制系统设计与实现.pdf_第1页
第1页 / 共5页
工业机器人控制系统设计与实现.pdf_第2页
第2页 / 共5页
工业机器人控制系统设计与实现.pdf_第3页
第3页 / 共5页
亲,该文档总共5页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、wwwele169com|21电子技术工业机器人控制系统设计与实现郭宁,郭志成(兰州工业学院 电气工程学院,甘肃兰州,730050)基金项目:甘肃省高等学校创新能力提升项目(编号:2019B-181)。摘要:机器人作为一种集多学科、多技术于一体的高科技产物,能够根据设计人员的要求,反复地进行特定的操作。此外,还能够利用人工智能、大数据及物联网技术,实时地收集相关数据,对环境状况进行分析,进而实现相关工作,在各个产业中发挥着关键的生产和服务作用。本文基于STM32单片机、微型计算机和移动终端设计了一套低成本、移植性好的工业机器人控制系统,通过对重点模块设计、硬件设计、单片机软件设计、编程语言及控

2、制软件设计等部分,希望能够对有这方面需求的企业或是研究人员提供一点帮助。关键词:工业机器人;控制系统;单片机;编程语言0 引言工业机器人作为现代制造业的重要组成部分,不断得到广泛的应用。工业机器人控制系统的设计和实现对于提高机器人的精度、灵活性和效率起着至关重要的作用1。本文基于 STM32 单片机、微型计算机和移动终端,设计了一套低成本、移植性好的工业机器人控制系统。本文介绍了控制系统的总体方案和重点模块设计,包括 MCU 模块、电机模块、测距反馈模块等。在硬件设计中,重点介绍了单片机基本电路和步进电机控制电路。在单片机软件设计中,分析了系统功能、通信协议和电机控制程序。编程语言及控制软件设

3、计部分介绍了编程语言概述和程序语言代码实现,旨在降低工业机器人控制系统的使用门槛,服务更多的制造企业。图 1控制系统功能图1 控制系统设计 1.1 控制系统功能工业机器人控制系统是一种典型的实时控制系统,其主要功能包括位置控制、速度控制、力控制、轨迹规划等。其中位置控制和速度控制是最基本的控制功能。位置控制是指通过控制机器人的运动轨迹,将机器人末端的位置移动到目标位置,实现定位、取放和装配等操作2。速度控制是指通过控制机器人的运动速度,控制机器人的运动过程,实现快速准确地到达目标位置。力控制是指通过控制机器人的输出力矢量,实现对工作件施加恰当的力,以实现切割、压合和拆卸等操作。轨迹规划是指通过

4、给定机器人末端的起始位置和目标位置,计算机器人的运动轨迹,以实现平滑的运动过程,避免碰撞和抖动等不良影响。综上所述控制系统功能如图 1 所示。1.2 总体方案首先参考市场上已有的工业机器人控制系统的功能,提出了一个低成本、移植性好的控制系统。该系统采用了STM32 单片机、微型计算机和移动终端,实现了电机控制、信号采集、信号输出和通信任务3。同时,对各种工业机器人结构和控制系统组成方案进行了分析,以便更好地设计出适合实际应用的控制系统。在具体实现上,设计了硬件和软件两部分。硬件部分包含了步进电机驱动器控制、TTL 转串口、输入输出信号以及 AD 信号采集等功能。软件部分则由三个模块组成:单片机

5、程序、计算机程序和手机 APP。单片机程序负责电机控制、信号采集和通信等任务;通过计算机软件,可以方便地对工业机器人的编程语言进行编辑和执行,对平台位置进行演示,对信号、点位等进行人机交互。根据以上功能需求设计系统方案如图 2 所示。1.3 重点模块介绍(1)MCU模块MCU 模块是工业机器人控制系统的核心模块,主要负图 2 系统方案图22|电子制作2023 年 7 月电子技术责电机控制、信号采集、信号输出和通信任务。本文选用STM32单片机作为MCU模块的核心控制芯片,具有高性能、低功耗、易扩展等优点。MCU 模块的主要功能如下:电机控制:控制步进电机和伺服电机的运动,实现位置控制和速度控制

6、;信号采集:采集编码器反馈信号、光电传感器信号等,实现位置和速度的反馈控制;信号输出:控制输出各种信号,如蜂鸣器、LED 指示灯等;通信任务:与计算机程序和手机 APP 进行通信,实现工业机器人编程语言的编辑和执行、平台位置示教、信号和点位信息的人机交互。(2)电机模块电机模块是工业机器人控制系统中非常重要的一个部分,其主要作用是控制电机或伺服电机的运动,实现机器人的位置和速度控制。在本文中,所使用的电机型号为宇辉电机 42BYGH47-401A,它是一种具有结构简单、驱动方式简单、适合低速大扭矩等特点的步进电机,具体参数如表 1所示。表1步进电机参数步距角转矩工作电压相电流相电感相电阻引线数

7、重量1855kgcm24V15A28mH164035kg42BYGH47-401A 电机具有扭矩大、精度高、运动平稳等特点,适用于一些要求精度较低的场合。在电机模块中,为了实现步进电机的最佳驱动效果,采用 A4988 芯片作为步进电机驱动器。A4988 芯片具有驱动能力强、运动平稳、精度高等特点,能够更好地满足工业机器人的控制需求。同时,还采用伺服电机控制程序,通过控制伺服电机的 PWM信号,实现机器人的位置控制和速度控制4。(3)测距反馈模块由以上的分析可知,该装置必须对 XYZ 三个轴线中的一些部位进行探测。伺服电机使用相对数值编码器和一个光敏转换器来完成,而步进电动机则不适用于另配编码器

8、和探测转换器。因此,距离测量元件的选取就必须加以考量。测距传感器有以下类型5。激光测距传感器是一种使用激光技术进行距离测量的传感器,利用激光束发射出去并经过反射后返回传感器,测量出激光束的往返时间,从而计算出物体与传感器之间的距离。激光测距传感器通常使用的激光波长为红外线或可见光范围内的波长。其测距精度通常能够达到几毫米到几厘米的范围,可以用于测量室内和室外的距离,例如在机器人导航、无人驾驶车辆、测量建筑物高度等领域中广泛应用。激光测距传感器的优点包括高精度、测量速度快、可靠性高、不受环境影响等。缺点则包括成本较高、易受光线干扰、测量距离有限等。超声波测距传感器是一种使用超声波技术进行距离测量

9、的传感器,利用超声波发射出去并经过反射后返回传感器,测量出超声波的往返时间,从而计算出物体与传感器之间的距离。超声波测距传感器通常使用的频率为 20kHz 至200kHz 之间的超声波。其测距精度通常能够达到几毫米到几厘米的范围,可以用于测量室内和室外的距离,例如在智能家居、机器人导航、无人驾驶车辆等领域中广泛应用。红外线测距传感器是一种使用红外线技术进行距离测量的传感器。它利用红外线发射出去并经过反射后返回传感器,测量出红外线的往返时间,从而计算出物体与传感器之间的距离。红外线测距传感器通常使用的波长为850nm 至 940nm 之间的红外线。其测距精度通常能够达到几毫米到几厘米的范围,可以

10、用于测量室内和室外的距离,例如在智能家居、机器人导航、自动售货机等领域中广泛应用。本系统最终选择 SHARP/夏普 GP2Y0A41SK0F红外线测距传感器。2 控制系统的硬件设计 2.1 单片机基本电路STM32 单片机外围电路设计主要用于控制系统硬件电路,实现与手机或计算机通信、根据指令控制步进电机驱动器以驱动电机运动,以及处理 IO 信号输入输出。单片机基本电路是控制系统硬件设计的核心之一,包括主晶振电路、复位电路、电源电路、ISP 下载电路等。主晶振电路的选取直接影响单片机的时钟信号,因此需要考虑稳定性、频率等因素。复位电路通过一个复位电路芯片,实现单片机的复位功能,需要考虑复位脉冲的

11、稳定性和电路的可靠性。电源电路包括 5V 电源、3.3V 电源和 12V 电源,需要考虑电源噪声和纹波等因素,以确保单片机和外围电路的稳定工作。ISP 下载电路通过一个串口芯片,实现单片机程序的下载和调试功能,需要考虑串口通信的稳定性和速度等因素。整个单片机基本电路的设计需要考虑多种因素,并进行充分测试和优化,以确保控制系统的稳定性和可靠性,电路原理图如图 3 所示。2.2 步进电机控制电路步进电机控制电路是工业机器人控制系统中的重要组成wwwele169com|23电子技术部分之一,其主要作用是控制步进电机的运动,实现机器人的位置控制和速度控制。步进电机控制电路包括步进电机驱动器、电流调节电

12、路和控制信号电路。其中,步进电机驱动器采用 A4988 芯片,具有驱动能力强、运动平稳、精度高等特点。电流调节电路采用电位器调节电流大小,以实现步进电机的最佳驱动效果。控制信号电路通过单片机控制步进电机的运动,实现机器人的位置控制和速度控制。在实际应用中,步进电机控制电路的设计需要根据具体机器人的需求进行合理地调整和优化。步进电机驱动器内部带有两个普通光耦EL817和一个高速光耦6N137,其电路原理图如图4所示。图 4步进电机驱动器接线图3 控制器单片机软件设计 3.1 单片机软件设计单片机作为控制系统底层元件,负责操作执行部件、信号采集与输出。在软件设计中,采用了 STM32F103 系列

13、芯片的库函数。当应用场景变化时,只需调整部分代码,而无需更改计算机端控制程序。为了减少代码量并便于针对特定应用场景进行控制系统移植开发,在单片机程序设计中采用了裸机开发方法(不使用实时操作系统)。主要技术包括 STM32 芯片的串口、ADC、定时器、PWM、中断和 GPIO 等。控制器单片机软件包含电机控制程序和通信程序两部分。电机控制程序实现步进电机和伺服电机的运动,实现机器人的位置控制和速度控制。通信程序实现与计算机程序和手机 APP 的通信功能,实现工业机器人编程语言的编辑和执行、平台位置示教、信号和点位信息的人机交互。具体来说,电机控制程序采集编码器反馈信号和光电传感器信号,实现位置和

14、速度的反馈控制,通过控制步进电机的脉冲信号和伺服电机的 PWM 信号,实现机器人的位置控制和速度控制。通信程序则采用串口通信,数据传输格式为 ASCII 码,通过与计算机程序和手机 APP 的通信,实现工业机器人编程语言的编辑和执行、平台位置示教、信号和点位信息的人机交互。根据以上功能设计软件,如图 5 所示。图 5单片机软件功能图 3.2 通信协议在工业机器人控制系统中,通信协议是控制器单片机与计算机程序和手机 APP 进行通信的重要手段。本文采用了串口通信,并将数据传输格式设定为 ASCII 码。具体的通信协议相关信息如表 2 所示。表2通信数据协议相关信息数据类型数据内容数据长说明帧头0

15、 xAA1byte固定值数据长度n1byte表示数据内容的长度命令cmd1byte表示通信的命令数据datan-2byte具体的通信数据校验和check1byte校验和,防止数据传输错误其中,帧头固定为 0 xAA,用于表示数据的开始;数据长度表示数据内容的长度,通过此值可以确定整个数据的长度;命令表示通信的具体命令;数据是通信的具体数据内容;校验和用于检查数据传输是否出现错误,采用简单的异或校验方式。通过上述通信协议,控制器单片机可以与计算机程序和手机 APP 进行可靠的通信,实现工业机器人编程语言的编辑和执行、平台位置示教、信号和点位信息的人机交互。同时,该协议简单易懂,易于实现。图 3电

16、源电路24|电子制作2023 年 7 月电子技术 3.3 电机控制程序PD_1PD_6 是利用步进电机的针脚分布,来控制电机启动的方向端口。对管脚GPIO 进行配置过程如下:为GPIO 的配置定义结构变量。在 GPIO_Pin 的structural变量中设定要进行配置的端口;将端口的输出方式设定为推挽式模式;配置端口速度。STM32F103 系列芯片内置了丰富的功能模块,为用户提供强大功能。定时器是嵌入式系统中常用的一种功能模块,其具有输入捕获、输出比较、PWM 和直流电机控制等多种功能。其中,PWM 功能在电子产品中应用广泛,可用于控制电机转速、LED 亮度、音频输出等。在 STM32 单

17、片机中,使用定时器的 PWM 功能需要将 TIM3 管脚复用映射到 PC6-PC8 引脚上。为了使定时器正常工作,还需要配置相关中断。配置步骤包括定义相关结构体变量和设置端口输出模式为复用推挽输出。在具体操作中:需要先定义 TIM_HandleTypeDef 结构体变量,并调用 HAL_TIM_PWM_Init 函数初始化定时器。使用 HAL_TIM_PWM_ConfigChannel 函数配置 PWM 输出通道,设置占空比等参数。设定 PWM 端口输出速度为 50MHz;配置定时器:重装载寄存器值设为 1249,分频系数为71,时钟分割为 0,计数方式为向上计数;将定时器输出模式设置为 TI

18、M_OCMode_PWM1;启用 PWM 输出,设置输出极性为低,CCR 寄存器值设为 625;配置定时器的中断功能。通过以上步骤,能成功地配置 STM32F103 的定时器,实现 PWM 功能,并利用管脚复用功能在 PC6-PC8 端口进行输出,为开发人员节省了资源,简化了开发过程,部分代码如下所示:/定义电机引脚intmotorPin1=2;/接L293D1号引脚intmotorPin2=3;/接L293D2号引脚intenablePin=9;/接L293D使能引脚voidsetup()/将引脚设置为输出模式pinMode(motorPin1,OUTPUT);pinMode(motorPi

19、n2,OUTPUT);pinMode(enablePin,OUTPUT);/设置初始电机方向digitalWrite(motorPin1,LOW);digitalWrite(motorPin2,HIGH);/启动电机analogWrite(enablePin,200);上述代码是一个基于 STM32 单片机的步进电机控制程序的示例代码。其中,Motor_Init 函数用于初始化步进电机控制 IO 口;Motor_Run 函数用于控制步进电机的运动,实现机器人的位置控制和速度控制;Motor_Stop 函数用于停止步进电机的运动;Motor_MoveTo 函数用于控制机器人的移动到指定位置;Mo

20、tor_MoveBy 函数用于控制机器人在当前位置的基础上移动指定的距离。其中,Motor_Run 函数的实现是步进电机控制程序的核心部分,它通过控制步进电机的脉冲信号实现机器人的位置控制和速度控制。在该函数中,首先判断电机运动的方向,然后通过GPIO 控制端口产生相应的脉冲信号,控制电机的运动。在每个脉冲信号后,通过 delay_us 函数控制脉冲的时间长度,从而控制电机的速度。3.4 控制软件计算机软件在控制系统软件领域发挥着核心作用,与单片机模块共同组成工业机器人控制系统,如图 6 所示。图 6模块关系图工业控制机软件设计选择 Windows 作为开发平台,采用基于 C+的 Qt 集成开

21、发环境,能够满足工业控制机的软件设计需求,使其更加稳定、高效和易于维护。Windows平台在工业控制领域被广泛应用,具有良好的兼容性及丰富的开发资源。而 Qt 则是一种跨平台的应用程序开发框架,提供了丰富的图形界面和工具库,使得开发者可以更加方便地创建和管理软件系统。工业机器人控制系统软件的总体设计分为三个步骤。首先,需要安装 Win7 操作系统并配置 Qt 开发环境。其次,将 DMC-2163 控制卡的动态链接库、头文件以及实现文件加入新建工程。最后,利用QMainWindow 作为主类,运用 QWidget 类和 QDialog 类的派生类来实现各功能模块,并通过 Qt 的信号/槽机制、全

22、局变量、事件处理、配置文件等来实现模块间的通信。软件系统的功能模块包括:指令程序管理、控制卡操作、机器人操作、轨迹规划、示教再现和系统设置。指令程序管理模块用于管理机器人的运动指令,包括创建、编辑、保存和执行指令程序。控制卡操作模块用于控制机器人的运动,包括设置控制卡参数、启动/停止机器人等。机器人操作模块用于控制机器人的姿态和位置,包括机器人的运动学分析、(下转第 47 页)wwwele169com|47智能应用主要有四种不同规模的版本。YOLOv5 的大部分性能改进来自 PyTorch,而模型架构仍然接近于 YOLOv4。YOLOv5 具有快速、精确且易于训练的优点。YOLOv5 核心思想

23、是将整张图作为网络的输入,在输出层直接回归出目标的位置坐标和类别,其特点是检测精度高、检测速度快,满足实时监测的需求3。图 5小车自主导航实测效果要实现图像识别,第一步需要制作数据集。我们共制作了 30 张垃圾的图片,对图片进行按顺序命名,把这些图片作为训练集。对这些图片进行手工标注。标注完成后,生成格式为.txt 的文件。第二步训练 YOLOv5。创建 garbage.yaml 文件,该文件用于配置存放数据集路径等参数。在 yolov5s.yaml 文件中。找到 nc 参数,nc 为类别数量,修改为 16,我们指定垃圾种类有 16 个类别。打开终端,执行命令,开始训练。训练完成后会生成对应的

24、.pt 文件,该文件就是我们所需的权重文件。将该权重文件载入到 YOLOv5 中,启动神经网络即可实现图像识别,效果如图 6 所示。图 6 图像识别效果4 结语本文设计了基于 ROS 的自导航智能移动小车,采用cartographer 算法建立二维栅格地图,结合导航算法功能包实现自主导航,采用 YOLOv5 实现图像识别。本课题为自主导航和服务型机器人提供了可行的解决思路和方案。未来,智能移动机器人将更多地运用在物流、工业和生活服务等领域。参考文献 1 董文康,陈少斌,黄宴委.基于 ROS 的小车自主建图与路径规划 J.福建电脑,2018,34(12):100-101+112.2 李建勇,刘雪

25、梅,李雪霞,杜博阳.基于 ROS 的开源移动机器人系统设计 J.机电工程,2017,34(02):205-208.3 张三林,张立萍,郑威强,郭壮,付子强.基于 YOLOv5 的核桃品种识别与定位 J.中国农机化学报,2022,43(07):167-172.逆运动学求解、坐标变换等。轨迹规划模块用于生成机器人的运动轨迹,包括直线轨迹、圆弧轨迹、样条曲线等。示教再现模块用于通过示教器来控制机器人的运动,包括手动示教和自动再现。系统设置模块用于设置软件系统的参数和配置文件,包括机器人的参数、控制卡的参数、通信协议等。4 结语本文设计了一个低成本、移植性好的工业机器人控制系统,该系统采用 STM32

26、 单片机、微型计算机终端实现了电机控制、信号采集、信号输出和通信任务。系统设计了一门简单的工业机器人编程语言,实现了位置控制和速度控制等功能。未来的工业机器人控制系统应该继续提高控制精度和稳定性,加强机器人的力控制和轨迹规划功能,以满足更高的工业生产需求。参考文献 1 韩锐.新工科背景下工业机器人实训课程设计与教学实践 J.时代汽车,2022(18):98-100.2 陆叶.基于工业机器人的 3C 产品自动生产线的设计 J.机电工程技术,2021,50(09):137-140.3 李显,朱青松,吕世霞,王学雷.基于多类型工业机器人的多功能实训设备设计 J.科技创新与应用,2021,11(22):100-102+105.4 黄福,赵崇杰,李俊杰,张国泉,杨勇,姚宇茏.工业机器人机械臂加强装置优化设计研究 J.广东技术师范大学学报,2021,42(03):20-25.5 吴斌.基于工业机器人的智能制造生产线设计 J.机床与液压,2020,48(23):55-59.(上接第 24 页)

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服