一种基于AM3358的示教机器人控制系统设计

2017-04-27 15:04张远平
电子技术与软件工程 2016年15期
关键词:工业机器人

张远平

摘 要 智能制造业的發展受到越来越广泛的关注,作为智能制造业核心的工业机器人,它的发达程度不仅可以决定当前制造业的水平,更是可以预见未来智能制造业的发展。因此,本文着眼于社会热点,提出一种基于AM3358的机器人控制系统设计,该控制系统相比于传统的控制系统,具有控制精度高、可拓展性强、性能优良等特点。

【关键词】工业机器人 AM3358 机器人控制系统

1 工业机器人发展历史及现状

从机器人的发展历史来看,机器人已经经过了两代的发展。第一代机器人通过读取文件或者示教的方式工作;第二代机器人在此基础上增加了传感器来达到对工作环境的感知,它能够在工作的时候获得工作环境和作业对象的部分相关信息,进行一定的处理之后,引导机器人进行作业。第二代机器人已进入了实用化,在工业生产中得到广泛应用。我国目前使用的机器人大部分属于第二代机器人。

2 系统设计流程

系统设计总共分为四个部分,分别是:原理图的设计、电路板的绘制、底层驱动的编写、应用程序的编写。

3 系统硬件设计

整个系统基于ARMA8进行开发,AM3358核心部分电路设计参考TI公司提供的评估板。

3.1 电源电路设计

电源电路部分参考tps65217c以及AM3358的数据手册设计而成,充分考虑了电源部分的滤波和高频干扰的处理。除此之外,保险管也能有效的防止因为各种原因造成的电流过大而会引起的安全隐患。供电方面,可以采用USB供电和交流供电两种方式。AM3358的电源部分,争取每个电源引脚都有一个去耦电容,保证电源干净的同时滤除杂波。不同的模块需要不同的电压,这一点TPS65217C可以完美的匹配。

3.2 时钟及复位电路设计

晶振方面采用24MHz的无源晶振,实时时钟(RTC)采用32.768KHz的无源晶振。如图1所示。

复位电路我们采用如下图2所示电路图,除了可以软复位,我们也可以按下SW1开关进行复位。

3.3 DDR3电路设计

由于DDR3是一个高速设备,所以我们更要保证其每个电源脚都要有一个电容,注意其参考电压是由AM3358引过来的。由于此处只有一个DDR3,所以不需要考虑增加上拉电阻来增强其驱动能力。

3.4 PCB电路板的设计

整个系统由于AM3358和DDR3的频率较高,并且封装都是BGA,为了减少高速线之间的串扰和板子的稳定性、增加一次制版的成功率,因此采用8层线路板布局。电路板采用模块化的布局方式,减少系统的干扰,同时方便PCB板的绘制。

4 系统软件设计

系统首先进行U-boot烧录,在此基础上进行开发。在整个开发过程中,采用TI公司提供的CCS V6.0作为编程工具。

4.1 串口输入输出

串口功能的实现非常重要,在移植U-BOOT或者调试过程当中我们可以通过查看串口的打印信息来判断程序运行的状态。串口调用AM335X_StarterWare内部的函数,对串口进行操作,能成功打印出字符串或者能输入字符则说明调试成功。

4.2 示教流程

当通过示教器进行示教的时候,示教器通过串口把数据发送给AM3358,AM3358处理后发送给机械臂,于是机械臂便朝着我们指定的方向移动,在此过程中,机器人控制系统对机械臂的位置进行采样并保存在板上的eMMC中。在示教完成之后,控制器控制机械臂回到原点,AM3358开始读取之前存储的数据并将数据发送给机械臂控制器,完成示教。

4.3 插补算法

模拟信号和数字信号最大的区别就是模拟信号是连续的而数字信号是离散的。机械臂的运动可以看作是连续的,但是AM3358对机械臂位置的采样却是离散的,因此,当机器人重现我们示教动作的时候,会因为之前采样的密集程度而呈现出不同程度的抖动,由此可能造成机械损坏或者次品率增加等一系列问题。为了解决这一问题,采用到插补算法。所谓插补,通俗的说,就是在机器人在重现我们教导的动作的过程当中,对读取到的两个点进行计算,使得原来只有两个点的路径增加更多的点。当这些点的数量达到一定数量,机器人再现我们教授的动作会变得很平滑,趋于一条直线。

5 系统测试

系统设计制作完毕后,进行系统测试,主要分为硬件测试和软件测试。

5.1 硬件测试

印制电路板制作完成、焊接完成之后,首先严格按照原理图检查是否有短路、虚焊等情况。确定无误后上电。

电源:系统上电后,检测输入以及各个输出是否正常合理。

晶振:上电后用示波器探头打晶振的引脚查看信号,确保晶振起震。

5.2 软件调试

JTAG:使用仿真器连接电脑和目标版,确保JTAG口能正常工作(通过JTAG口可以查看内部寄存器,是其他软件硬件调试的基础)。

UART:测试串口能否正常的输入输出数据,此串口非常重要,之后测试U-BOOT以及其他软件的时候可以查看打印信息以确定程序的运行状态以及实现简单的人机交互。

eMMC:eMMC是存储u-boot和应用程序以及相关数据的地方。确保eMMC能正确的读写。

IO口:调试过程中最直接,最基本的体现是在IO,通过控制IO的高低电平或者占空比来达到驱动LED或者电机的目的。也是通过IO高低电平的输入来进行示教的过程。

6 总结

在工业4.0和物联网的新兴概念的冲击下,此套系统虽然只是简单的完成了示教机器人控制系统的功能,实现了最简单的功能和原理。但是所采用的AM3358多达4组*31个GPIO,板载的256M DDR3和eMMC也提供更强更快的程序处理能力和数据存储能力。此外,AM3358还具有2个千兆工业以太网接口、6个串口、2个I2C接口以及一个SPI接口,在今后的开发中可拓展性极强。

参考文献

[1]克来格.机器人学导论(原书第3版)[M].北京:机械工业出版社,2006:5-7.

[2]郭彤颖.机器人学及其智能控制[M].北京:人民邮电出版社,2014:101-108.

[3]顾海洲.PCB电磁兼容技术--设计实践[M].北京:清华大学出版社,2004(29).

作者单位

成都理工大学信息科学与技术学院 四川省成都市 610059

猜你喜欢
工业机器人
浅谈工业机器人的安全生产
机械制造自动化方式解析
基于力传感器的工业机器人力控试验系统的研制