机器人智能6关节的驱动器_第1页
机器人智能6关节的驱动器_第2页
机器人智能6关节的驱动器_第3页
机器人智能6关节的驱动器_第4页
机器人智能6关节的驱动器_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章 绪论 第1章 绪论近年来随着人工智能技术、计算机技术以及网络技术等相关技术的飞速发展,机器人在各个领域已经得到了广泛的应用,成为了一类关键的基础设施装备。机器人关节是机器人的重要组成部分,每个完整的机器人系统都是由单个机器人关节驱动器组成。1.1 课题发展现状1.1.1 国外发展现状目前美国、英国、日本、新加坡、德国、法国、澳大利亚等国家都早已研制出机器人关节控制。如:东芝试制家用机器人“ApriAlpha”,该概念模型配备了新开发的利用分散对象技术的开放式机器人驱动器、控制器,因此可以很容易追加新功能。另外该公司建立了利用分散对象技术的“开放式机器人驱动器架构(ORCA)”,并基于该架构新开发出了其他驱动器以及控制器。采用模块化设计的IRC5驱动器是ABB公司最近推出的第五代机器人控制器,它标志着机器人控制技术领域的一次最重大的革新。 值得指出的是,由于将处理速度更高的微处理器引入至机器人驱动器以及控制器,从而显著地提高了机器人运动控制性能,使得机器人制造商能将诸如减振算法、前馈控制、预测算法等先进的现代控制理论嵌入到机器人控制器内。1.1.2 国内发展现状我国对机器人的研究始于20世纪70年代,通过“七五”的起步、“八五”和“九五”的科技攻关,我国已经基本掌握了机器人的设计制造技术、控制系统和驱动系统的设计技术和机器人软件和编程等关键技术。在“八五”期间的重点是围绕恶劣的环境的室外的移动式机器人,可用于处理核的废料的遥控移动式作业机器人、壁面爬行式机器人、水下污染自治的机器人、高精度的装配机器人等这五种类型而展开了先进的机器人的控制技术研究。在“九五”期间的重点则围绕汽车、家电等工业的机器人产业化和以水下6000米的机器人为代表的特种式机器人等的方面开展的先进机器人的关键技术和应用示范的研究。在“十五”期间则进一步拓宽了机器人的技术向自动化装备技术方面的发展:一方面是围绕国家急需要的关键性基础装备,其中包括了高精尖数控机床、全断面盾构掘进机、工程机械和自动化生产线等,开展了相应的关键性技术和应用示范研究;另一方面是围绕国家以及社会发展所需求的机器人和自动化装备,包括深海载人潜器、仿生仿人机器人、危险作业与反恐防爆机器人、医疗外科机器人等方面,开展了先进机器人驱动器以及控制器的研究。机器人关节驱动控制器在我国应用的主要问题是:(1) 机器人关节驱动器价格昂贵,许多企业和科学研究机构无法承受;(2) 机器人关节驱动器的许多标定基础是以国外标准进行的,由于技术保密和系统参数的修订,只能由机器人驱动器生产厂家来进行,无法适应我国产品品种多的现状。总之,无论从高校还是从企业来看,对机器人驱动器的研究都已有很大的进展。虽然还是落后于发达国家的研究水平,但随着我国对科研研究力度的加大,对机器人关节驱动的研究将更为深入,相信在不久的将来会研制出更加先进的机器人关节驱动器以及控制器。1.2 课题设计要求(1) 设计一个机器人智能6关节的驱动器;(2) 该驱动器能够通过人机界面控制机器人关节的相关动作:正反发行运动、速度及精确位置控制等;(3) 要能够在人机界面上显示当前关节的实际位置;(4) 整个装置要实现6关节联动;(5) 可以通过人机界面人工设定电机的转速以及加速度等信息。技术参数要求:(1) 驱动器功率大于100W;(2) 电机功率大于50W;(3) 位置分辨率小于0.36;(4) 电机转速:600-3000r/m。1.3 本章小结由于机器人关节驱动器的价格昂贵,我们设计一个机器人智能6关节的驱动器,并且能够通过人机界面对该驱动器进行正反发行运动、速度及精确位置的手动控制,从而让该关节到达预想的高精度的位置并且显示出来。- 7 - 第2章 系统设计方案 第2章 系统设计方案机器人智能关节驱动器包括硬件电路和软件系统。硬件电路是软件系统的载体,因此,设计机器人智能关节驱动器的电气部分先得确定硬件电路的设计方案,然后再通过软件系统控制其工作。2.1 方案的总体设计该系统是基于精密运动控制器,并且利用CAN现场总线与其他控制器进行通信的。机器人智能关节驱动器的总体设计方框图如下图21所示。图21 系统设计方框图在人机界面设定好各个运动参数后,通过主单片机向CAN总线发送数据,完成上位机的工作流程;后来当CAN总线接收到预执行的命令后,向下位机发出指令,从而控制电机的启停及预停留的位置,从而完成下位机的工作。当然,下位机的系统方框图如下图22所示:图22 下位机的系统框图2.2 系统各模块的选择2.2.1 电机的选择传统的直流电动机采用电刷,采用机械的方法进行换向,因而存在相对的机械摩擦,所以就会产生噪声、电火花、电磁干扰、摩擦损伤,使得电机的寿命缩短,而且还需要经常维修。一般的永磁无刷直流电机主要由电机本体、位置传感器、功率逆变电路三部分组成,根据位置传感器检测到的电机转子位置,供逻辑电路按一定的逻辑触发逆变器,给电机定子馈电,其目的是使永磁式无刷直流电机在运行过程中电机定子绕组所产生的磁场和转动中的转子磁钢所产生的永磁磁场,在空间上始终保持90度的电度角。经过比较,由于永磁式直流无刷电机既有交流电动机的结构简单、运行可靠、维护方便等一系列优点,同时还具有直流电动机的运行效率高、无励磁损耗、有良好的调速特性等优点,因此它从一面世就受到了人们的关注。2.2.2 单片机模块由于单片机控制起来简单、方便、快捷,在充分分析此次课题中的系统后,我们不难发现,主要是希望实现对无刷直流电机的自动控制。这样一来,我们选用单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能的特点。但是为了很好的控制电机,我们要求单片机的速度足够快,具有PWM口用来自动生成PWM波,有用于测频的捕捉功能,有用来对输出转速,输出电压以及电流模拟量进行摸/数转换的A/D转换器,有各种串行接口,有充足的内部ROM和RAM,以便控制系统的尺寸,同时有看门狗和电源管理等功能等。能满足要求的单片机有很多,通过专业基础课程的学习我们对标准的8051单片机比较熟悉。但是标准的8051单片机功能过于简单,通过仿真PWM口和查表法的控制方式也很不实用,所以通过各方面的考虑,我们选择一种与标准的8051单片机全兼容的单片机。2.2.3 运动控制模块因为单片机在控制无刷直流电机时要不断的换向操作,才能使电机转下去。这样, 常州工学院电子信息与电气工程学院毕业设计说明书 单片机的大部分时间都花在了换向工作中,同时还需要用户界面的监视,调速和转向操作的控制,因此单片机的负担较重。所以,设计中我们需要考虑使用专用集成电路,可以极大的减轻单片机负担,腾出时间进行与各模块之间的通讯,检测,故障诊断等工作。常用的专用集成电路芯片主要有两种:TDA5142T和LM629。TDA5142T是一种无转子位置传感器无刷直流电机的专用控制芯片,可以直接驱动小功率无转子位置传感器无刷直流电机,如果要控制大功率无转子位置传感器无刷直流电机必须外接功率MOSFET或功率晶体管。而且,无转子位置传感器无刷直流电机的控制要复杂得多,使用分立元件去控制是不实用的。而其他的元件大多成本比较高不易获取。LM629可以直接与外部PWM信号接口实现调速功能、有转向控制功能、有死区调节功能、有过流保护和欠压保护功能。因此,我们选择使用LM629来完成控制功能,分担单片机的工作压力。2.2.4 人机界面模块人机界面单元主要就是触摸屏,是为了方便对电机的监控,要求人机对话、向机器输入信号,所以人机接口最好选用操作方便,电路连接简单的输入接口。触摸屏作为一种新型输入设备,以其简单、方便、自然,必定成为人机交互方式的首选。在人机交互过程中,触摸屏以其易于使用、坚固耐用、反应速度快、节省空间等特点,让使用者越来越多地感受到使用触摸屏的优越性。由于在身边可利用的资源中,能找到一块型号为JM320240G的触摸液晶屏,且可以满足系统设计要求,所以我们选择用它来充当人机界面。2.2.5 电机驱动模块目前市面上有很多专门的驱动芯片,有大功率的也有效功率的,在各种控制系统的设计中都能起到很好的效果,技术非常成熟。不过因为在与其他人交流的过程中发现,已经有同学做了电机驱动器,是基于MC33033的电机驱动器设计。通过老师的指导发现完全能达到控制电机的目的,所以我们选择它来充当驱动单元来完成设计。2.3 系统工作原理运动控制芯片LM629用8位数据总线以及6根控制总线与C8051F506单片机的I/O口相连,单片机则通过数据线向LM629来发送位置、速度命令、设定PID的调节参数。LM629的输出脉宽调制的幅度信号以及方向信号,由功率放大后来驱动直流电机。增量式的光电编码器则提供闭环控制时所需的反馈信号(A、B、IN),检测电动机的实际位置,其输出信号经过LM629四倍频后进行解码,形成位置反馈值。梯形图产生器则计算出位置或速度模式下所需控制的运动轨迹,LM629接到主机传来的位置的信号后,按照梯形图生成加速、匀速、减速的速度曲线,曲线和坐标横轴所围的面积是指定的位置。指令值与反馈值的差值作为数字PID校正环节输入,由数字调节器PID计算,LM629输出的脉宽调制信号PWMM和方向的信号PWMS来控制,从而驱动电机走到指定的位置。LM629在位置控制的同时,还对速度进行控制。PID算法中的比例、积分和微分系数有时需要进行修改,因此将它们存储在单片机中。控制器和主机可以通过CAN现场总线进行实时通信。2.4 本章小结本章主要介绍了机器人智能关节驱动器的设计总方案,以及组成该系统所需要的模块所实现的功能,以及对其设计的具体要求,从而进行选择。- 9 - 第4章 系统的软件设计 第3章 系统的硬件构成机器人智能关节驱动器的硬件构成主要有:单片机最小系统设计、人机界面模块设计、运动控制模块设计、电源模块设计、电机驱动模块设计以及光电编码器的设计等。其中我所包含的设计主要包括:单片机最小系统设计、人机界面模块设计、运动控制模块设计以及电机驱动模块设计。3.1 单片机模块3.1.1 C8051F506简介1. C8051F506的特点C8051F506单片机能提供多达22个中断源,C8051F506单片机内部集成高精度振荡器,在整个电压和温度范围能够达到0.5%的精度,该精度能完全满足CAN现场总线控制器的定时标准,故无需外部石英振荡器。因此C8051F506可以作为机器人智能关节驱动器的微处理器。C8051F506单片机的特点如下:(1) 运行速度最快的8位单片机:指令执行速度最高可达100MIPS。(2) 集成众多ADC、DAC、电压比较器、高精度内部振荡器、UART、SPI、SMBUS、USB、CAN、LIN等众多模拟、数字外设。(3) 提供灵活多样的诸如IDLE、STOP、SUSPEND等低功耗运行模式。(4) 可进行动态分配的I/O机制。(5) 通过Silabs提供图形化的软件开发工具,可方便地对片内各个功能模块的寄存器进行配置,也支持Keil等多种开发环境。 (6) 可通过UART、USB、SPI、CAN、以太网等外设进行在线应用升级。基于以上特点,选择C8051F506单片机是可取的。2. C8051F506的引脚介绍C8051F506单片机的引脚图如下图31所示:图31 C8051F506单片机的封装引脚示意图其中,部分引脚介绍如下:引脚2(VIO):I/O端口电压,必须接;引脚3(VREGIN):电压校准器输入;引脚4(VDD):逻辑电压,必须接;引脚5(VDDA):模拟电压,必须接;引脚6(GND):逻辑地,必须接;引脚7(GNDA):模拟地,必须接;引脚9(P3.0/C2D):I/O口或双向数据信号的C2调试接口;引脚10(/RST/C2CK):复位或C2调试接口的时钟信号。3.1.2 JM320240G简介 常用的人机界面有:键盘、显示屏、触摸屏等,这里用的是深圳卓立恩公司的一款典型的触摸屏:JM320240G。1. 功能描述(1) 支持文字和图形两种混合显示模式;(2) 内致简体中文字库和ASCII字体的ROM;(3) 支持90度、180度、270度文字旋转显示功能;(4) 支持1倍到4倍字型放大功能(水平和垂直);(5) 支持粗体字和行与行间距设定功能;(6) 内建智能型键盘扫描控制器。2. 主要技术参数(1) 电源:VDD=+5V 或+3.3V;电流:240MA; (2) 显示内容:320(列)X 240(行); (3) 驱动方式:1/240 DUTY,1/17 BIAS; (4) 显示模式:STN蓝模负显(蓝底白字); (5) 背光特性:白色LED侧背光; (6) 控制芯片:RA8806(带键盘扫描、带触摸屏驱动)3. JM320240G的驱动JM320240G的驱动结构如下图32所示:图32 JM320240G的驱动结构框图该驱动电路是在原产品的背面附有的,其中RA8806是一个文字与绘图模式的点阵液晶显示控制器,它内建了智能型触控式扫瞄控制器,并支持4线电阻触控扫瞄式接口。其中可以程序化的脉宽调变器可用来调节LCD面板的对比度或背光强度。用户可通过合适的中断机制和轮询机制可以使用户轻易地操作触控式扫瞄、键盘式扫瞄、电源控制等功能。RA8806的触控屏幕电路如下图33所示:图33 RA8806的触控屏幕电路3.1.3 硬件电路1. 单片机的最小系统由于C8051F506单片机内部有高度集成的振荡器来提供时钟,故系统不需要再额外提供外部时钟电路,则C8051F506单片机的最小系统如下图34所示,在该图中,9个电容都是滤波作用。图34 C8051F506单片机的最小系统2. C8051F506的C2调试接口本次选用的C8051F506单片机是32脚的贴片形式,故需要调试接口对单片机芯片进行编程、调试等。它的接口如下图35所示:图35 C8051F506单片机的调试接口3. JM320240G接口电路JM320240G与单片机的接口电路如下图36所示,在该图中,4个电容是为了对现有电压进行滤波;一个滑动变阻器是用来调整光的对比度的。其中,部分引脚功能如下:引脚1(VSS):接地;引脚3(VR):参考电压;引脚4(BUSY):RA8806忙信号;引脚5(INT):RA8806中断输入;引脚6(/CS):片选(低有效);引脚7(RS):命令/数据选通;引脚19(LEDA):LED背光电源(+5V);引脚20(LEDK):LED背光电源(-0V); 图36 JM320240G与单片机的接口电路3.2 运动控制模块3.2.1 LM629简介LM629运动控制处理器致力于一些直流和直流无刷伺服电机或者其他具有积分位置反馈信号的伺服机制的设计工艺,它执行高精密数字运动控制所要求的精密实时的计算任务。它最大频率为6MHz和8MHz,用后缀6和8加以区分。1. LM629的特点LM629高精度运动控制器的特点如下:(1) 32位位置、速度和加速度寄存器(2) 可编程16位系数的数字PID滤波器(3) 可编程微分采样周期(4) 8位信号级PWM输出数据(5) 内部梯形速度曲线发生器(6) 速度、目标位置以及滤波器参数能在运行过程中修改(7) 位置、速度两种操作模式(8) 实时可编程主机中断(9) 8位并行异步主机接口(10) 带参考点输入的积分增量编码器接口基于以上优点,选择LM629高精度运动控制器作为本课题的电机运动控制器。2. LM629的引脚介绍LM629运动控制器的引脚如下图37所示:图37 LM629运动控制器的引脚图其中部分引脚介绍:引脚1(/IN):任选来自编码器的管脚脉冲信号。不用时必须置1,管脚的状态只有在引脚1、2、3为低电平时有效。引脚2和3(A和B):接收增量型编码器提供的两相积分信号。当电机正转时,2脚上的信号领先3脚上的信号90度。因为通过解码积分后,编码信号可获得4倍的分辨率,所以相应的最大编码器状态读取的速率为1.0MHz(=8.0MHz)或者750kHz(=6.0MHz)。对于其他时钟频率,编码器信号必须同样在每个状态保留至少8个时钟周期。引脚16(/PS):用于选择指令或者数据端口。低电平选择指令,高电平选择数据。当16脚为低电平时,向命令口写入指令或者状态字从命令口读出;当16脚为高电平时,通过数据口读写数据。引脚17(HI):这个高有效的信号提醒主机(通过主机中断服务程序)发生中断。引脚1819:在18脚输出一个PWM符号信号,在19脚输出一个PWM的量值信号。引脚27(/RST):低电平有效,上升沿触发,将LM629内部状态复位成以下状态。注意复位脉冲必须是逻辑低并且至少8个时钟周期。以下为复位后的:(1) 滤波器系数和轨迹参数置零。(2) 设置位置误差极限最大值(7FFFH),并且有效运行指令LPEI。(3) 屏蔽了SBPA/SBPR中断(禁止)。(4) 开放5个其它中断(使能)。(5) 初始化当前位置为0或者“终点”位置。(6) 设置微分采样间隔为2048/或者是用8.0MHz时钟的256us。(7) DAC端口输出一个12位DAC的零点800H,然后将8位DAC的零点转换成80H。3.2.2 LM629的典型应用LM629典型系统结构框图如下图38所示:图38 LM629典型系统结构框图该典型系统描述了一个由LM629构成的伺服电机系统。主处理器通过I/O口与LM629通信,从而减轻了配置梯形速度的曲线和数字滤波补偿器的困难。一个增量编码器提供闭环位置伺服系统的反馈;梯形速度曲线发生器为操作中的位置或速度模式计算必要的轨迹。在操作中,LM629从设定位置(曲线发生器位置)减去实际位置(反馈位置),得到的位置误差由数字滤波器处理来驱动电机到设定位置。1. 位置反馈接口LM629通过一个增量型编码器连接到电机,该运动控制器提供的三个输入有:两个积分信号(A、B)和一个索引脉冲信号(/IN),积分信号用于保持电机的轨迹和绝对位置。每次当一个逻辑转换发生在积分输入信号中的一个时,LM629的内部位置寄存器也相应的增加或减少。每个编码器信号输入都由LM629时钟进行同步,总共可提供编码器提供线数的四倍分频。有一些编码器提供了每转让逻辑状态变低一次的可以选择使用的索引脉冲输出。如果LM629是被用户这样编程的,那么它会在所有三个编码器输入都是逻辑低的时候把电机的绝对位置记录到一个专用的寄存器(索引寄存器)中。如果编码器不提供索引输出,LM629的索引输入仍然可以被用来记录电机的起始位置,在这种情况下,电机要闭合一个开关,使得能够在索引输入处造成逻辑低,然后LM629会在索引寄存器中记录电机位置并报警(中断)主机处理器。2. 速度分布发生器梯形速度分布发生器计算电机时间轴的渴望位置。在位置操作模式下,主处理器指定加速度、最大速度和最终位置,LM629利用这些信息通过具体的加速度值来达到最大速度或者必须开始减速去停到设定的最终位置。在速度操作模式下,电机按照设定的加速度值加速到设定速度并保持设定速度直到指令要求其停止为止。该速度是通过前进中的期望位置保持不变的,如果在运动中有干扰,总体的平均速度依旧保持不变。所有轨迹参数都是32位的,位置是有符号的数值,加速度和速度必须是具有16位精度的正整数。规定速度的整数部分决定电机在每个采样周期经过多少个计数值。在每个采样周期中,指令的加速度值会加到当前期望速度上来产生一个新的期望速度。为期望的运动确定轨迹参数需要进行如下计算:例如有一个500线的旋转编码器期望电机在达到600rpm之前的加速度为1r/s,然后减速停止在距离启动位置为100转的精确位置处,则可以如下计算轨迹参数:令:P=目标位置(编码器计数值)R=编码器线数*4(系统分辨度)=500*4=2000 得:P=2000*分辨度的期望数值=2000*100转=200,000计数值(要加载的数值)=00030D40(写到LM629的十六进制数)令:V=速度(计数值/采样周期)T=采样时间=341us(采用6MHz时钟)C=转换因数=1/60则:V=R*T*C*期望的转速值=2000*341E-6*1/60*600转=6.82 =6.82*65,536=446,955.52(近似值)=446,956(要加载的保留值)=0006D1EC(写到LM628的十六进制数)令:A=加速度(计数值/采样周期/采样周期)=V/采样周期=R*T*C*期望的转速值/采样周期=R*T*T*期望加速度(转/秒/秒)=2000*341E-6*341E-6*1转/秒/秒=2.33E-4=2.33E-4*65,536=15.24(近似值)=15(要加载的保留值)=0000000F(写到LM628的十六进制数)以上位置、速度和加速度值必须转换成二进制代码载入LM629,速度和加速度的值必须乘上65,536去跟输入数据需要的整数/分数的格式保持一样。注意在近似了速度和加速度值之后,原先小数数据不能被装载,数据必须被保留并转换成二进制。3. PID补偿滤波器LM629用一个数字PID滤波器来补偿控制环。通过向电机施加与位置误差成比例的+成积分的+成微分的恢复力,从而使得电机保持在期望的位置上。接下来的离散-时间方程式阐述了LM629的控制执行:这里u(n)是在采样周期n时的电机控制信号的输出,e(n)是在采样周期n时的位置误差,n表达了采样数据对应采样率的微分值,kp、ki和kd是用户装载的离散时间滤波器参数。(1) 比例环节比例环节提供一个与位置误差成比例的恢复力,就像遵循胡克定律的弹簧一样。(2) 积分环节积分环节提供一个随时间增长的恢复力,这样保证静态位置误差为零。如果有一个恒定的力矩负载,电机仍然能达到位置零误差。(3) 微分环节微分环节提供一个位置误差变化率的比例阻尼。微分环节的采样周期是用户选择的,这个使得LM629能通过提供更好的连续导数近似值来控制大惯量负载。总地来说,长的采样周期对于低速操作有用。在操作中,滤波器的算法从闭环总节点接收一个16位误差信号,这个误差信号被化解为16位数来保证预想的动作。所有滤波器的乘法都是16位操作的,只有结果中的低16位被使用。积分信号保持在24位,但只用前16位,这个缩放技术造成系数ki的取值有更大(不很灵敏)的有效范围,这16位被右移8位,然后用滤波器系数ki乘上它来完成组建电机控制输出的部分,再将这个乘积的绝对值与参数il比较,较小者加上适当的符号值后组合到电机的控制信号里。每个微分采样周期的微分信号乘上参数kd,这个结果组合到每个采样周期的电机控制输出中而不是用户自选微分采样周期。并把kp、ki和kd的积加起来形成一个16位数的量,随输出模式(字宽)把高8位或高12位变成电机控制的输出信号。3.2.3 硬件电路LM629接收来自C8051F506单片机的位置、速度和加速度等命令,经过内部梯形图发生器和PID调节器的运算,输出脉宽调制信号和方向信号,由引脚PWMM和PWMS输出到驱动器的(SV)端口和(FR)端口,来控制电机的正、反和停止。LM629高精度运动控制芯片的接口电路如下图39所示:图39 LM629高精度运动控制芯片的接口电路3.3 CAN总线模块3.3.1 CAN总线简介在本设计中采用的CAN现场总线来实现6关节控制器间的分布式的控制。机器人的各个智能关节均由直流无刷电动机来驱动,由增量式光电编码器来检测电动机运动的位置和速度构成关节控制器的闭环系统。将各关节控制模块挂靠在CAN总线上,以实现点对点,点对多点的分布式控制方式。CAN现场总线的显著的特点是:抗干扰能力较强、数据出错率较低等,可知非常适合用于6自由度的关节驱动器。CAN通信协议2.0B规定了4种不同的帧格式:数据帧、远程帧、错误帧和超载帧。其中数据帧是用来传输数据的,远程帧用于请求数据,超载帧用于拓展帧序列延迟时间,而每当局部检查出错误时,将会有一个全局的信号出错帧。在这里,我使用的是CAN2.0B协议。1. CAN2.0B标准帧CAN2.0B标准信息帧是11个字节,包括:信息帧和数据帧。前3个字节是信息部分,如下表31所示:7654321字节1FFRTRXXDLC(数据长度)字节2(报文的识别码)ID.10ID.3字节3ID.2ID.0RTR字节4数据1字节5数据2字节6数据3字节7数据4字节8数据5字节9数据6字节10数据7字节11数据8表31 CAN2.0B标准信息帧的内容分布2. CAN控制器配置CAN现场总线控制器在使用时,根据要完成目的的不同而进行的不同配置进行具体的描述。其中还包括报文式对象的初始化的处理、发送对象的信息配置、接收对象的配置、中断式处理的配置;另外还有发送式对象、位定时的寄存器的配置。(1) 报文式对象的初始化的处理报文式RAM中的报文式对象配置在用前须由处理器初始化到零或者被设置为无效。当CAN控制寄存器中的GRES位置为零,CAN控制器中协议控制器、状态机制和报文式处理机制将处理CAN现场总线的内部的数据流。接收的报文通过接收和滤波后放在报文式RAM中,而同时得到传输请求的报文则要移到CAN控制器的移位式寄存器里,并由CAN现场总线传出。(2) 发送式对象的配置当报文式对象为发送的对象时,仲裁式寄存器将被应用,其定义了将要发送的报文的识别符号和类型,如果用11位标准帧,那么选择的是ID0ID11,而ID12ID28将忽视。如果TxIE位置位,则TxOK位在该报文式对象被发送成功后置位;如果RxENA位被置位,在接收到相匹配的远距离帧时,将导致TxRqst位置位。如果数据式寄存器将被使用,TxRqst和RxENA在数据有用的前提下置位。屏蔽式寄存器可以用来允许一样识别符号的数据帧被接收。(3) 中断式处理报文式对象的中断顺序随着报文的编号的增大而减小。状态式中断通过看状态寄存器来清除,报文式中断通过消除报文对象的ENCHn位来清除。3.3.2 TJA1050简介1. TJA1050的特点TJA1050是PHILIPS公司生产的CAN总线高速收发器。这个器件提供了CAN控制器和物理总线间的接口和对CAN现场总线的差动式发送以及接收。TJA1050的主要特点如下:(1) 与ISO11898标准完美兼容;(2) 总线以及电源、地之间有短路保护;(3) 还优化了输出的信号CANH和CANL间的耦合,大大消除了电磁辐射;(4) 提高了在有电磁干扰下,这个宽工模式范围的差动式接收能力;(5) 没有上电的节点不会干扰总线;(6) 总线至少可连110个节点。2. TJA1050引脚功能TJA1050高速CAN现场总线收发器的引脚结构如下图310所示:图310 TJA1050总线收发器的引脚结构这其中,部分引脚功能如下:引脚1(TXD):传输数据输入,将数据从CAN现场总线控制器读入总线驱动器;引脚4(RXD):接收数据输出,将数据从总线驱动器读出到CAN总线控制器;引脚5(Vref):参考输出电压;引脚6(CANL):CAN总线的低端;引脚7(CANH):CAN总线的高端;引脚8(S):为高速模式或无通讯模式选择输入。3.3.3 硬件电路 CAN总线高速收发器由单片机C8051F506的P0.6I/O口将数据输入,又由单片机C8051F506的P0.7I/O口将数据输出。其中一个限流电路可以防止发送器的输出级对电源电压的正端和负端短路,虽然在出现这种故障条件时功耗将增加,但这种特性可以防止破坏发送器的输出级。TJA1050高速CAN总线收发器接口电路如下图311所示: 图311 TJA1050高速CAN总线收发器接口电路3.4 电机驱动模块机器人智能关节驱动器的系统框图如下图312所示:图312 系统框图驱动器模块主要是将运动控制器中的一些位置、速度、加速度等的信息进行放大,从而达到可以驱动电机所需要的电压。因此可以将运动控制器模块中LM629的引脚18(PWMS)和引脚19(PWMM)分别接驱动部分的正反向端口和(FR)测速端口(SV),并且用单片机的P0.3口的逻辑高低来控制电机的启停。3.5 本章小结本章主要介绍了机器人智能关节驱动器的一些硬件电路,主要包括:元器件的介绍、各引脚的功能以及常用的典型电路等。本系统主要包含的模块有:单片机模块、运动控制模块、CAN总线通信模块以及电机驱动模块。第4章 系统的软件设计一个系统是由硬件电路和软件程序来实现的,如果说硬件是一个系统的基础,那么软件则是一个系统的灵魂。由于上位机主要是实现数据的正确显示;下位机部分主要是单片机程序对LM629控制,从而实现6个电机间工作的顺序处理。因此,上位机程序主要包括:人机界面程序、CAN总线通讯程序、主程序;下位机程序主要包括:运动控制器LM629程序、CAN总线通讯程序、主程序。4.1 上位机软件设计4.1.1 主流程图上位机主程序流程图如下图4-1所示,图4-1 上位机主程序流程图给系统上电以后,进行系统初始化,触摸屏显示的画面是单片机里设定的。当用户对触摸屏进行操作时,就会通过单片机进行处理,然后通过CAN总线将一些指令传给下位机,再经过下位机进行适当的处理,最终驱动电机。4.1.2 子流程图1. 人机界面人机界面程序流程图如下图42所示:图42 人机界面程序流程图人机界面在系统当中充当人机交互的平台,负责实现人机交流,完成电机转速、位置、加速度等反馈信息的监控和管理。所以在人机界面程序的设计中,要求具有以下功能:(1) 系统自检和标定;(2) 实验设备参数的设置;(3) 实时故障检测与应急处理;(4) 人为操作和调整控制算法指令输入;液晶触摸显示屏工作流程:首先是内部寄存器的初始化,然后检测是否有按键按下,再根据按键给的命令进行液晶显示画面的切换和更新,同时执行的是按键功能子程序。按键处理子程序包括关中断选中RA8806再向RA8806写X和Y坐标控制命令,再读触摸屏上面按键的X坐标和Y坐标,根据其X坐标和Y坐标来决定跳转哪个相应的子程序。2. CAN总线CAN总线流程图如下图43所示:图43 CAN总线程序流程图CAN报文发送是由CAN控制器自动完成的,用户只需根据接收到的远程帧的识别符,将对应的数据转移到发送缓冲寄存器,然后将此报文对象的编写写入命令请求寄存器启动发送即可。4.2 下位机软件设计4.2.1 主流程图主程序流程图如图4-4所示:图4-4 主程序流程图初始化工作完成后,我们通过人机界面输入PID参数和各运动参数,系统会将这些参数存储到EEPROM寄存器中。参数确定之后,系统所需参数载入到LM629中,并起动电机,系统则开始工作。当系统完成了指定的任务之后,主程序将返回到参数设定环节以设定新的运动参数。4.2.2 子流程图1. LM629运动控制器LM629运动控制器的程序流程图如下图45所示:图45 LM629运动控制器的程序流程图工作时,由控制器对LM629给出加速度、速度和目标位置值,每个采样周期都用这些值计算出新的命令和位置给定值并送入求和点。由编码器来检测电机的实时位置,这个输出的信号由LM629内部的位置式解码器进行解码后当成求和点的另外一个输入来和给定值做差,得到的误差值当成数字PID校正环节的输入。这样可以方便地实时调整PID控制器的参数直到满足稳定性、响应时间、超调量等要求。而对于那些特性参数恒定不变的负载,则可在进行运动控制之前经过LM629写入PID参数;当然对于运动过程中特性参数发生变化的负载,可以在运动过程中,随时改变PID参数以适应不同特性需求。除了加速度,所有的运动参数均可在运动过程中加以改变。2. CAN总线 CAN总线程序流程图如下图46所示:图46 CAN总线程序流程图CAN总线通讯接口卡接收到上位机发出的命令后,向总线上的每个节点传送指令命令的数据。CAN总线上的下位机节点C8051F506单片机接收到命令后就开始对其进行处理,然后向驱动执行机构发送信号执行相应的动作。4.3 本章小结本章主要对设计中的软件进行系统的概述,包括上位机主程序流程图、液晶显示流程图,上位机CAN 总线程序流程图、电机间同步流程图、下位机主程序流程图、下位机CAN总线程序流程图、运动控制器LM629程序流程图,为程序的编写提供基础。 第3章 系统的硬件构成 第5章 系统检测与调试机器人智能关节驱动器的系统检测与调试,主要是分模块进行检测与调试,例如:人机界面模块检测与调试、运动控制及驱动模块检测与调试、CAN总线通信模块检测与调试。其中各个模块又分为硬件检测和软件调试。5.1 人机界面模块由于人机界面是由深圳卓立恩公司提供的,故需要对该人机界面进行检测与调试,看其是否有用。经过相关技术人员的指导,我试编了一下开机画面,由原来的卓立恩图标,变成了“常州工学院”的图标,故经过检测与调试发现效果是好的,如下图51所示:图51 检测人机界面的效果图5.2 运动控制及驱动模块5.2.1 硬件检测检查硬件焊接板的错线、开路、短路:(1) 首先将加工的印制板认真对照原理图,看两者是否一致;(2) 用数字万用表的蜂鸣器档重点检查系统总线(地址总线、数据总线和控制总线)是否存在相互之间的短路或与其它信号线短路功能,可以缩短排错时间。看元器件是否失效:(1) 检查元器件与设计要求的型号、规格和安装是否一致;(2) 换一个元器件来替代,看看是否还是一样的错误,如果是则说明选型有错误,如果不是则另寻原因。通电检查:(1) 要检查电源的电压的大小和极性,要不然很容易造成集成块的损坏。(2) 检查各个元件上引脚的电位,一般首先检查VCC和GND之间的电位,若在54.8V之间的才属正常。若有高压,会使应用系统中的集成块发热损坏。 其中,在检测驱动模块硬件电路时发现,不但电机根本不转,而且还有阻力存在,经过老师的提醒,发现,原来在烧PCB板子时,有一根线断了,也就是说在话原理图时,没有将接线准确无误的接上,使线路出现了断路。5.2.2 软件调试C8051F506单片机具有片内JTAG和调试电路,通过JTAG接口可以对板上器件进行非侵入式、全速的在线系统调试。SilabsIDE软件支持观测和修改存储器、寄存器,支持断点运行,堆栈指示器以及单步执行。调试时不占用MCU的其它资源,并且所有的模拟式和数字式外设都可以正常地工作。当处理器单步执行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论