1、Control system experiments show that the system can significantly improve the precision of control, and improve system stability, accuracy, so that the positioning accuracy of the robot arm has been greatly improved and enhanced. Key Words: Four Degrees Freedom Robot, STM32, Cortex-M3,Pulse Width Mo
2、dulation1绪论1.1机械臂概述1.1.1机械臂研究的意义早在几千年前,人类就开始了机器人的制造,以解决人类繁重的劳动。例如,古希腊诗人荷马在其长篇叙事诗伊利亚特中,描述了“火和锻冶之神”赫菲斯托斯用黄金锻造出一个侍女1。一直以来,人们也一直致力于将这些美丽的神话变为现实。1958年世界上的第一台机器人被发明以来,与工业机器人相关的技术得到了迅猛的发展,并且己经愈来愈广泛的应用在机械、电子、汽车等行业2。如今,机器人技术已成为衡量一个国家科技水平的标志之一3。作为近几十年来发展起来的一种自动设备,机械臂可以通过编写软件程序来完成目标任务,它不仅具有人和机器各自的很多优点,而且特别具有人的
3、智能性和适应性。在作业过程中,机械臂控制的准确性和对环境的适应性,已经使其在各个领域有着广阔的发展前景。高级类型的机械臂,可以执行更复杂的操作4。将机器臂运用于工业生产过程,除了可以提高生产率之外,还能够减弱工人的劳动强度,使生产过程实现自动控制。因此机械臂在近几年得到了愈来愈广泛的应用5。1.1.2国内外机械臂的研究现状及发展趋势机器人的研究始于二战后的美国。1958年第一台数控工业机器人诞生后,机器人在工业上的应用不断增加,日本、德国等国家也相继开始机器人的研制。中国对现代机器人的研制始于上世纪70年代后期,80年代进入到飞速发展时期。尤其在国家成立了863计划后,机器人技术得到特别的重视
4、,由此中国在机器人领域取得了飞速发展,相继研制出示教再现型的搬运、焊接、喷漆、装配等各种工业机器人,以及水下作业、军事和特种机器人。机械臂发展状况概括如下:第一代机械臂,即示教再现方式的机械臂。目前这种机械臂仍广泛应用于各种场合。这种工作方式只能按照事先设置的位置进行重复的动作,但是不能感知周围环境,其应用X围因此受到一定的限制。这类机械臂主要工作于原料搬运、喷漆、焊接等工作场合。第二代机械臂,即具有视觉、触觉等外部感觉功能的机械臂。这类机械臂可以根据周围环境的变化进行自适应,故可以完成较为复杂的工作。图1.1 一汽“红旗”轿车机器人焊接生产线第三代机械臂,这类机械臂不仅具有第二代机械臂的感觉
5、功能,而且还具有规划和决策的功能。从而在环境发生变化时进行自主的工作。但是目前这类机械臂依然处于研究阶段,还需要一段时间才能得到实际应用6。图1.2 演奏机器人从机械臂几十年来的成长进程来看,高精度,多功能,集成化,系统化以及智能化是机械臂在以后多年中的发展方向。1.1.3机械臂的分类机械臂一般从运动坐标形式分为直角坐标式机械臂、圆柱坐标式机械臂、极坐标式机械臂和多关节式机械臂。直角坐标式机械臂:由三个线性关节来确定手爪的位置,通常还带有附加的旋转关节用来确定末端执行器的姿势。这类机械臂虽然控制位置精度高、简单,但结构繁杂,占地面积大。圆柱坐标式机械臂:由两个滑动关节以及一个旋转关节来确定手爪
6、的位置,也可以再附加一个旋转关节来确定部件的位置。其位置精度仅次于直角坐标式机械臂,控制简单,但结构庞大,移动轴的设计复杂。极坐标式机械臂:它由一个滑动关节以及两个旋转关节来确定手爪的位置,也可以附加一个旋转关节来确定部件的姿势。这类机械臂占地面积小,结构紧凑,但有平衡问题,位置误差与臂长有关。多关节式机械臂:其关节都是旋转的,类似于人的手臂,是工业机械臂中最常见的构型。该类机械臂结构紧凑,占地面积小,工作空间大,但是位置精度较差,控制存在耦合,比较复杂。图1.31.6分别对应以上四种机械臂。图1.3 直角坐标式机械臂 图1.4 圆柱坐标式机械臂图1.5 极坐标式机械臂 图1.6 多关节式机械
7、臂1.2机械臂控制的研究内容1.2.1机械臂的驱动方式作为驱动方式,通常采用液压驱动、气压驱动和电机驱动三种类型。液压式:液压驱动机械臂通常由液动机(各种油缸、油马达)伺服阀、油泵、油箱等组成驱动系统,由驱动机械臂的执行机构进行工作7。气压式:其驱动系统通常由气缸、气阀、气罐和空压机组成。电动式:电力驱动的机械臂是目前应用最广泛的一种类型。驱动电机一般采用步进电机、直流伺服电机或交流伺服电机,其中交流伺服电机为目前主要的驱动形式。由于电机速度高,通常还需要减速机构8。1.2.2机械臂的机械结构传统的机械臂系统由于占地面积较大,所以在小空间的环境下不适用。在一些特殊的环境下,我们需要一种占地面积
8、小而且活动灵敏的机械臂。要实现机械手臂的控制,首先要分析机械手臂的机械结构,其中动力源以及动力传递方法应被予以重视。现在,电力传动的机械臂得到了广泛的应用,在动力传动方式上,有连杆式、齿轮式、绳索式等。以关节型为主流,80年代发明的适用于装配作业的平面关节型机械臂约占总量的1/29。鉴于汽车、建筑、桥梁等行业的需要,超大型机械臂应运而生。1.2.3机械臂的控制器选择一个性能较好的控制器对控制功能的实现来说是十分必要的。工业控制技术、软件和硬件技术的发展,为机械臂控制器的选择提供的充分的条件。可编程控制器(PLC)由于抗干扰能力强,故障率较低,设备易于扩展、维护,开发周期短等特点,被广泛应用于工
9、业场合10。但是其成本很高。数字信号处理器(DSP)采用数据和程序分离的哈佛结构和改进的哈佛结构,执行指令速度更快,它以处理能力强、内置较大的存储器、芯片功耗低及配置资源灵活等特点得到了广泛的应用11。但是其成本较高,高频干扰很大,功率消耗也很大。FPGA(FieldProgrammable Gate Array)灵活,设计周期短的特点使其特别适合用于小批量系统,提高系统的可靠性和集成度12。但是FPGA 的功耗非常大,而且跟硬件的的联系非常大,使用起来很有难度13。与上述各种微处理器相比,STM32F103ZET6处理器是意法半导体公司STM32系列芯片的一种,STM32F103ZET6采用
10、ARM 最新的Cortex-M3内核,具有低成本、高集成度、低功耗等优点14。ARM 微处理器资源丰富,具有很好的通用性,在很多领域都得到了广泛的应用。 1.2.4机械臂的控制算法应用于机械臂系统控制方法多种多样,包括传统的PID 控制,现代控制的轨迹控制、模糊控制、自适应控制等。PID控制的实用性很强。只要三个参数配合适当,便可实现速敏捷、平稳准确的控制。工业生产上的机械臂经常采用示教再现的方式。模糊控制和自适应控制精度高,是现代控制领域中应用广泛的控制方法,尤其体现在军工领域和航天领域中。机械臂的研究内容除以上主要内容外,智能化传感器的应用、机器人的编程语言以及网络通讯等技术对于机器人系统
11、也有非常重要的意义。1.3嵌入式系统简介在一般情况下,嵌入式系统是“执行特殊功能并受内部控制器控制的设备或系统”,即“嵌入到对象体系内的特定计算机系统”。“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。它主要负责信号的控制,体积小,可作为一个部件嵌入到所控制的装置中。它提供用户接口、有关管理信息的输入输出等,使设备及应用系统有较高的智能和性价比。进入微型计算机机时代后,科技人员开始了嵌入式系统的研究,之后迅速进入到独立发展的单片机时代,随后又迅速进入到电子技术领域中15。嵌入式技术的发展不仅使机器人在微型化、智能化等方面具有更明显的优势,同时又使机器人的价格大幅降低,实现了机
12、器人在更多领域广泛的应用。1.4本文的主要工作该设计主要负责四自由度机械臂控制系统相应的软件、硬件的设计与开发。该设计以四自由度机械臂为控制基础,以STM32F103ZET6为主控芯片,设计的机械臂控制系统,控制精度较高,稳定性较强,具体的内容包括如下几个方面:1.对机械臂系统的硬件设计进行分析,具体的电路以及芯片的选择进行了较为详细的介绍,并对其可靠性进行了深入的分析。2.对舵机的控制理论进行了深入的研究,分析讨论了控制系统所涉及的主控芯片。3.根据四自由度机械臂需要完成的工作任务,编写了系统的软件控制程序,对初始化、运行等模块展开了较为详细的介绍,之后对整个系统进行了反复的调试,调试结果表
13、明,所设计的机械臂控制系统可以实现较为精确的控制。2机械臂控制系统的总体方案设计2.1机械臂的机械结构设计2.1.1臂部结构设计原则作为机械臂的一个重要组成部分,手臂不仅起到支撑被抓物体、手爪和其他关节的作用,而且还可以驱动手爪抓取物体,并根据事先预定的位置将物体搬运到指定地点16。机械臂的结构形式必须基于其运动形式、动作自由度、抓取质量、受力情况和其他的因素来确定,整个系统的总质量比较大,受力也比较复杂,其运动部件的质量直接影响到机械臂的刚度和强度。所以,进行手臂的设计时,一般应注意下述要求:(1)刚度要大。为了避免机械臂在运动过程中发生较大的形变,要合理选择手臂的截面形状。(2)导向性要好
14、。为了避免机械臂在运动过程中发生不必要的相对运动,臂杆最好设计成方形或是花键等形式。(3)偏重力矩要小。要尽可能减小机械臂运动部分的质量。该设计根据机械臂的功能及搬运工作的任务的特点以及类型,为了使其在一定程度上具有操作的灵活性和运行性能的良好,经过多次的比较、讨论后,该设计选用多关节型的机械臂,它不仅具有动作的角度大的优点,还可以使机械臂在更大的空间内的运动。2.1.2机械臂自由度的确定机械臂的自由度是一个非常重要的参数,取决于机械臂的类型及其结构,并且在很大程度上直接决定到机械臂能否完成预定的任务。一般来说是根据机械臂的用途来设计机械臂的自由度。自由度越多的机械臂,具有更大的运动的灵活性,
15、通用性也越强,但结构较复杂,难以实现。所设计的搬运机械臂采用四个自由度就可以完成设定的搬运任务。其中机械臂的手臂的旋转关节包括腰关节、肩关节、肘关节和腕关节四个关节以及末端手爪的开合。2.2工作对象简介在工业现场采用机械臂进行的工作对象中袋装物品和箱装物品较为是常见的。在一般的情况下,箱装物品由于具有规则的外形,多使用吸附式的手爪;而袋装物品由于具有极易产生形变的特点,多使用夹钳式或者插板式的手爪。在该设计中,由于受机械臂硬件条件的限制,选择夹钳式的手爪搬运箱装物品。模拟的箱装物品的长、宽、高分别是55mm、36mm和30mm。在进行工作对象的选择过程中,共有3种型号可供选择。其中长、宽、高分
16、别是40mm、36mm、和30mm的工作对象由于超声波传感器的反射面较小,所以当其已经运动到指定搬运位置时,传感器不能准确的检测到物体,所以控制精度不够高,放弃采用。而长、宽、高分别是65mm、36mm和30mm的工作对象对于该手爪来说尺寸较大,在抓取和搬运的过程中经常出现掉落的现象,所以没有采用。2.3机械臂关节控制的总体方案2.3.1机械臂控制器类型的确定作为机械臂的心脏,机械臂控制器是根据程序指令和从传感器获得的传感信息来控制机械臂完成事先预定的动作或任务的装置,控制器的性能决定了机械臂控制性能的好坏。从计算机结构、控制方式方面来划分,机械臂控制器大约可分为3种:单CPU 集中控制方式、
17、多CPU 分布式控制方式、二级CPU 主从式控制方式。(1)单CPU 集中控制方式:单CPU 集中控制系统必须是一个强大的控制系统,它的全部控制功能是用一台功能强大的计算机实现的。Hero-、Robot- 等这些时代较早的机器人采用的就是这种单CPU 集中控制方式的结构,但由于在控制的过程中需要进行大量的计算,因此这种控制方式的控制速度一般比较慢。(2)多CPU 分布式控制方式:多CPU 分布式控制系统的最大特点就是一个CPU负责控制一个关节轴,同时在上位机与单轴控制的CPU 之间设计了一个并行接口,其主要负责上、下位机的通信,从而保证了数据的可靠传输。(3)二级主从式控制方式:该控制方式需要
18、主从两个CPU,即上位机和下位的单片机两层结构。上位机负责运动轨迹的规划、运动学计算等任务,根据预定的位置,计算出各个关节的运动量,以指令形式传送给下位的微处理器。下位的微处理器根据指令对各关节进行运动控制。本课题所设计的机械臂系统基于STM32微处理器,利用STM32强大的运算和处理能力,采用单CPU 集中控制方式即可满足要求。2.3.2机械臂控制系统结构本课题研究的机械臂控制系统采用单CPU 集中控制方式,系统框图如下:图2.1 机械臂控制系统结构图计算机用于完成整个系统的管理、发送指令、运动轨迹规划等。计算机通过J-Link仿真器将程序下载至STM32微处理器,向关节控制系统发出位置指令
19、,STM32根据指令输出PWM 波,从而使机械臂的各个关节转过指定的角度,进而使其按照预定的轨迹完成搬运任务。2.3.3关节控制系统的控制策略本课题设计的机械臂关节控制系统以STM32微处理器为核心,对直流伺服电机(舵机)进行较为精确的运动控制。关节控制系统的工作原理是:STM32微处理器内部的PWM 单元产生PWM信号,驱动直流伺服电机旋转。电机驱动舵机内部的齿轮组,其输出端带动一个线性的比例电位器作为位置检测,该电位器把转角坐标转换为一比例电压反馈给控制线路板,控制线路板将其与输入的控制脉冲信号比较,产生纠正脉冲,并驱动电机正向或者反向的转动,使齿轮组的输出位置与期望值相符,令纠正脉冲最终
20、趋于为0,从而达到使伺服电机的精确定位17。该关节控制系统的主要特点如下:(1)使用以Contex-M3为内核的STM32F103ZET6作为系统的微控制器,与传统的51单片机相比起来,具有功耗小,运算能力大大增强的优点。(2)采用直流伺服电机驱动机械臂的各个关节,根据STM32微控制器输出的PWM 控制信号的占空比来确定直流电动机的转速和转向,控制起来简单,准确。2.4本章小结本章介绍了4自由度机械臂的结构形式,根据腰关节、肩关节、肘关节和腕关节4个旋转关节的运动特点,从整体上确定了该机械臂控制系统的控制方案。首先确定了该关节控制系统采用单CPU 集中控制方式,然后说明了关节控制系统的工作原
21、理,最后介绍了本设计的关节控制系统的一些主要特点。3机械臂控制系统硬件设计3.1机械臂控制系统概述机械臂控制系统通常要满足如下几个基本的要求:(1)控制系统的微型化、轻型化和模块化。因为机械臂的控制系统是安装在机械臂上的,所以为了安装的方便和减轻机械臂的负载,控制系统应尽可能实现微型化和轻型化;另外,为了达到系统的各单元之间有要求的独立性的目的,要尽量实现模块化。(2)控制系统的实时性。为了满足机械臂的输入输出信息量大,并且计算量大,同时要保证较高的控制精度的要求,机械臂控制系统必须具有较好的实时性。(3)系统的稳定性和开放性。稳定是保证系统正常运行的前提和保证,所以机械臂控制系统必须具有一定
22、的稳定性以保证系统的低故障率。此外,为了实现控制系统以后的改进和可以方便的移植到其他的位置,这就要求控制系统具有好的开放性18。该机械臂控制系统由主控制模块、电机驱动模块和电源模块组成,每个子模块的功能如下:主控制模块:作为该控制系统的核心,包括 ARM Cortex-M3 内核和有关外围电路,主要负责完成 PWM 波(控制信号)的输出。驱动模块:负责机械臂各个关节的驱动,由舵机组成。电源模块:机械臂控制系统采用双电源供电模式,STM32单片机经过AMS1117-3.3V稳压芯片供电,舵机驱动模块采用7.2V可充电电池经LM2596 DC-DC 可调降压模块实现供电。3.2微处理器选型微控制器
23、作为机械臂运动控制系统的核心,其性能对控制效果起着至关重要的作用,因此高性能的CPU是必需的。微控制器的选择对机械臂系统的设计影响很大,所以要在具体分析了该控制系统的特点和要求后选择合适的微控制器,应基于整个系统的控制速度及其智能水平两个方面,以如下几个方面为重点进行微控制器的选择:系统时钟速度运算速度功能电机控制方式ROM及ROM的大小控制板的结构尺寸目前,应用于机械臂的微控制器有很多种,最广泛的有8/16位单片机和数字信号处理器两种。选择8/16位单片机进行控制系统的设计简单,开发周期较短,但数据处理能力弱,需要附加很多的外部设备如PID 调节器和PWM 发生器等才能完成较为复杂的控制,而
24、且系统的稳定性不强,开发板尺寸较大。相比于8/16位单片机,数字信号处理器具有处理能力强、速度快、开发板体积小等特点,但在中断处理、位处理方面,DSP 不如单片机的资料多,而且芯片的价格以及其相应的开发软件也比较贵,针对性性比较强,但是通用性一般比较差。具有同等性能的ARM 微处理器与DSP 相比,资源更加的丰富,通用性明显增强,它所具有的处理速度快、性价比高、功耗低等优点使其得到了广泛的应用。虽然作为32位的微处理器,但是由于ARM 内部具有16位的Thumb 指令集,这使其能够作为16位的单片机使用,却拥有了32位单片机的处理速度。所以,用单片机和DSP 实现的系统,ARM 都可以实现。在
25、上述分析的基础上,经过反复比较,本设计采用意法半导体公司的STM32处理器,如图3.1所示。STM32F103ZET6是基于32位ARM Cortex-M3内核的微处理器,不但支持实时仿真,而且嵌入了512KB的高速闪存。CPU 的最高工作频率为72MHz,支持Thumb-2。图3.1 STM32STM32的主要特性如下1922:内核为ARM32位的Cortex-M3CPU:存储器:512KB的闪存程序存储器;64KB的SRAM;带4个片选的静态存储器控制器。支持CF卡、SRAM、PSRAM、NOR和NAND存储器。时钟、复位和电源管理:低功耗:3个12位的模/数转换器:3倍采样和保持功能;温度传感器。2通道12位D/A转换器。12通道DMA控制器:调试模式:串行单线调试和JTAG接口;Cottex-M3内嵌跟踪模块。112个快速I/O端口。11个定时器。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1