0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于LPC2138微处理器实现机器人手臂控制器的应用方案

电子设计 来源: 电子技术 作者:金一亮,陈佳品, 2021-04-07 09:24 次阅读

作者:金一亮,陈佳品,李振波

近年来,随着MEMS及相关技术的发展,微机器人领域已越来越来受人关注。但由于零件的尺寸很小,微机器人组件的装配需要很高的精确度,一般的装配方法无法满足要求。本文介绍了一个可进行微零件装配工作的机器人手臂控制系统的控制方法。

1 系统结构

考虑到多机器人手臂的使用,整个机器人控 制系统由上位机与多个下位机组成。下位机即是手臂控制器,每个下位机控制一个机械手臂的伸缩运动。上位机即为控制终端,通过不同配件组装方式生成每个手臂 的位置数据,并通过数据线传输给各个下位机,由下位机控制手臂到达目标位置并进行目标操作。整个系统的结构框图如图1所示。

o4YBAGBtFRWAIVhxAABJ5Z9OlsQ840.png

1.1 机械结构

如图2所示,手臂控制器的机械结构由直流减速电机、手臂、螺杆、减速齿轮、角度传感器组成。机器人手臂与机械螺杆相连,螺杆与直流减速电机通过减速齿轮耦合,各个手臂控制器通过控制电机转动来达到控制手臂位置的目的。同时,手臂控制器具有手动调节旋柄与螺杆相连,需要时可通过手动调节,改变手臂位置。

o4YBAGBxR7SASasVAABvWXheCcY734.png

1.2 电路结构

手臂控制器由使用ARM内核的PHLIPS LPC2138系列微处理器控制,电路结构主要分为主控制模块、测量反馈模块和通信模块,如图3所示。通过主控制模块控制电机状态,通过测量反馈模块得到螺杆移动距离和位置,在达到规定位置后停止电机。而通信模块则完成与上位机之间的数据交换。

pIYBAGBxR6-AXrl7AACeXKCKtGc464.png

2 电机控制

电机控制由主控制模块和测量反馈模块共同完成。

2.1 主控制模块

LPC2138引脚分配如表1所示。

o4YBAGBxR6qAXRxSAACnUlXLicQ486.png

主控制器使用PHLIPS LPC2138微处理器, 其具有64个引脚,31个双向I/O口,2个8路10们A/D转换器,能够进行电压测量的工作,符合设计要求,其引脚分配如表1所示。电机使用RA- 20GM-SD3 型直流减速电机,其减速箱的减速比达到了1/1000,在减速后,电机转速为4.5+/-0.9 rpm,在与1/2减速齿轮组进一步 耦合后,螺杆转速为2.25 rpm,在所用螺杆齿距为1mm时,手臂移动述牢为3.75×10-2mm/s。

由于本设计中电机需要正反转动,故选用了桥路驱动芯片TA8409,其具有两个输入口,两个输出口。微处理器通过控制输入电平组合即可控制电机的不同状态,包括正转、反转、刹车减速和停止状态。

它的输出电压与电机工作电压相符,即可直接驱动电机,不用增加放大电路。

电机驱动电路图如图4所示。

pIYBAGBxR6SAEQnJAAAi0gl0lRQ081.png

2.2 测量反馈模块

角度传感器采用了Midori的CP-2FC,它的机械角度范围为360度无限,传感器把角度变化量转化为电压量并通过电压测量电路反馈回微处理器A/D转换口,通过电压的变化量可计算得到螺杆的移动距离,这样就可以得知手臂位置,并以这个为标准对电机驱动器发送命令。

电压测量电路包含由运算放人器构成的电压跟随电路,如图5所示,它既可隔离电路,又可以完成电压跟随。

o4YBAGBxR5-APUIJAAAT3otzzIk085.png

3 通信模块

3.1 RS-422通信标准

RS-422标准的数据信号采用差分传输方式,也称作平衡传输,其全称是“平衡电压数字接口电路的电气特性”。

接收器采用高输入阻抗,发送驱动器有比RS232更强的驱动能力,故允许在相同传输线上连接多个接收节点,最多可接10个节点。即一个主设备(Master),其余为从设备(Salve),从发备之间不能通信,所以RS-422支持点对多的双向通信。

RS-422的最大传输距离为4000英尺(约1219m),最大传输速率为10Mbit/s。

3.2 数据交换功能实现

本系统通信模块采用RS-422标准,线路长度约为200m,故通信的可靠性可得到保证。差分线路驱动器使用AM26LS31芯片,差分接受器使用 AM26LS32芯片,微处理器的串行输出口和输入口分别与驱动器输入和接收器输出相连,并使用差分开路自动故障保险终端连接配置。

差分开路自动故障保险终端连接配置图如图6所示。

o4YBAGBxR5mAXFkjAAAeomLA1jQ667.png

从而在发送器输出端为高阻状态时保证接受器输入有至少200mV的电压信号,使输出不会出现未知的状态,提高可靠性,完成与上位机间的数据交换工 作。另外,考虑到多机器人手臂的应用情况,在手臂控制器中设有拨码开关来设定编号,与上位机的数据交换必须包含该编号,并由此来判断通信时目标控制器的具 体位置。

4 软件设计

在设计了手臂控制器硬件的基础上,我们设计了运行在微处理器上的软件应用程序。主程序流程图如图7所示。

pIYBAGBxR5KAKiiMAAB2gQ7qrAY408.png

在控制器上电后,首先读入拨码开关的控制器编号,然后进入等待模式。程序设定了UART中断,当上位机有数据传送过来时,中断发生。此时核对数据包 中的控制器编号,若传送编号与小控制器编号相符,则把数据读入,并计算得到电机运行方向和手臂移动距离。在电机运行时,不断读取传感器反馈电压,并进行计 算,判断手臂是否接近目标位置和是否进行刹车停车操作。电机停止后,即手臂到达目标位置,此时控制器对上位机回复工作完成(通信时始终附带控制器编号), 并再次进入等待状态。

本系统中,可使用两种算法来决定电机的减速停止命令的发送时机。

第一种是刚好是在测量得到手臂到达目标位置之时发送减速停止命令,此算法执行较为简单,但不可避免会存在电机停止时螺杆位置偏离了目标位置的情况。 不过工作时手臂移动速度很低,已经可以保证控制精度。第二种算法,即在接近目标位置时进行预测算法,在手臂到达目标位置前发送刹车减速命令,使得螺杆停止 位置与目标位置差距更小,此算法虽较为复杂,但精度较第一种更高,在本设计中,我们使用第二种算法从而保证更高的控制精度。

手臂控制器程序是通过不断读取传感器反馈值得到手臂位置的,虽然经过预测算法提高算法精度,但由于传感器本身也有一定的误差,手臂停止位置不免会有偏差,但由于高精度的硬件设计,此误差不会影响机械手臂大多数的工作。

5 结束语

本章设计了一个基于ARM核 微处理器的机器人手臂控制系统,对控制器的硬件设计进行了详细的叙述,并给出了系统结构图和部分电路的原理图;介绍了控制软件的设计并给出了程序的流程 图。由于使用了高减速比的减速箱来调整电机速度并配合了改良的算法,本手臂控制器的定位精度是比较高的。若在此基础上加装可控夹钳,即可完成简单可靠的装 配工作。

责任编辑: gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    206

    文章

    27004

    浏览量

    201351
  • mems
    +关注

    关注

    128

    文章

    3729

    浏览量

    188612
  • 微处理器
    +关注

    关注

    11

    文章

    2128

    浏览量

    81391
收藏 人收藏

    评论

    相关推荐

    基于ARM7微处理器LPC2138实现OLED显示器的应用系统设计

    ,所以越来越多新技术新产品逐渐出现,OLED就是一种。本文介绍了一种基于OLED的显示器VGS12864E的结构原理,给出了其在ARM7微处理器LPC2138系统应用中的硬件连接和具体程序设计。
    的头像 发表于 12-07 10:22 3911次阅读

    lpc2138 和 2440 哪个好学些

    大神们,lpc2138 和 2440 哪个好学些?
    发表于 11-04 22:34

    lpc2138中断

    51里面的中断函数比如定时0的中断函数是 void time0() interrupt 1,在keil里lpc2138的外部中断函数怎么写啊,求帮助啊
    发表于 01-09 21:14

    LPC2138资料

    LPC2138单片机芯片资料
    发表于 04-26 10:48

    LPC2138技术参数

    LPC2138技术参数.pdf
    发表于 09-19 08:13

    基于LPC2138的红外摄像机解决方案.pdf

    基于LPC2138的红外摄像机解决方案.pdf
    发表于 09-19 08:14

    基于LPC2138的秒表设计.pdf

    基于LPC2138的秒表设计.pdf
    发表于 09-19 08:15

    LPC2138(原理图).pdf

    LPC2138(原理图).pdf
    发表于 09-19 08:15

    基于LPC2138控制的LCD及触摸屏接口设计.pdf

    基于LPC2138控制的LCD及触摸屏接口设计.pdf
    发表于 09-19 08:16

    STM32的医疗康复机器人手臂控制系统

    建立的PID参数模型。结语本文提出了基于STM32微控制器的医疗康复机器人手臂控制系统。目前,本系统的样机已经进行了临床试验,并得到很好的试验效果。试验中的机器人手臂有 3个自由度,
    发表于 08-22 09:31

    基于LPC2138的注塑机控制器设计

    。    2 系统硬件电路的设计  该控制器由2个控制模块构成,采用主从式结构来控制注塑机的注塑过程、温度、人机界面、通信等工作。两个控制模块各由一个
    发表于 07-08 15:44

    单片机LPC2138相关资料推荐

    概述:LPC2138是飞利浦半导体公司生产的一款基于一个支持实时仿真和嵌入式跟踪的32/16 位ARM7TDMI-STM CPU 的微控制器,并带有32kB、64kB、512 kB 的嵌入的高速
    发表于 05-18 07:14

    LPC2138 RTC使用PCONP时的操作注意点

    LPC2138 RTC使用PCONP时的操作注意点
    发表于 07-23 15:29 24次下载

    基于LPC2138的超市收银机系统设计策略

    基于LPC2138的超市收银机系统设计策略  ARM7 LPC2138介绍    Philips公司的32位的ARM7 LPC2138控制器
    发表于 04-23 11:50 3543次阅读
    基于<b class='flag-5'>LPC2138</b>的超市收银机系统设计策略

    采用LPC2138微处理器和TA8409驱动芯片实现机器人手臂控制系统的设计

    近年来,随着MEMS及相关技术的发展,微机器人领域已越来越来受人关注。但由于零件的尺寸很小,微机器人组件的装配需要很高的精确度,一般的装配方法无法满足要求。本文介绍了一个可进行微零件装配工作的机器人手臂
    的头像 发表于 04-23 07:55 2723次阅读
    采用<b class='flag-5'>LPC2138</b><b class='flag-5'>微处理器</b>和TA8409驱动芯片<b class='flag-5'>实现</b><b class='flag-5'>机器人手臂</b><b class='flag-5'>控制</b>系统的设计