基于Arduino的6自由度智能机械臂创新实验平台

2018-06-30 06:27李知菲
中国信息技术教育 2018年10期
关键词:舵机连杆控制器

摘要:智能机器人是我国“十三五”期间的重大科研方向和热点应用领域,在高等院校相关专业中,智能机器人方向的教学资源建设和教学改革实践方兴未艾。同时,智能机器人是较为典型的机械、电子和计算机等先进技术结合的一体化系统,将其作为大学生工程教育和创新教育的实验平台非常适合。在众多类型的机器人中,多自由度机械臂是市场应用最为广泛的一种智能机器人,由此,本文详细论述了浙江师范大学数理与信息工程学院基于Arduino的6自由度智能机械臂的设计。教学实践表明,该设计的创新实验平台具有较强的专业知识综合性,较能调动学生学习的主动性,在培养学生实践能力和创新素养方面效果良好。

关键词:智能机器人;6自由度机械臂;创新实验;Arduino;创新能力

中图分类号:G434 文献标识码:A 论文编号:1674-2117(2018)10-0099-03

引言

创新实验平台[1]是高等院校在进行工程教育和创新教育时,将理论知识、实践技能和创新能力有机融合的高层次、综合性教学手段。随着近年来智能机器人技术的发展,以智能机器人开发或应用为核心的创新实验平台成为热点。[2]智能机器人是一种典型的融合了材料、机械、电子以及计算机技术、传感技术、可编程控制和人工智能等先进技术的一体化系统,与之相关的研究所涉及的学科多,应用领域广,是目前世界各国高校和研究机构进行教学研究与工程训练的理想实验平台。[3]

在众多类型的机器人中,多自由度机械臂[4]可完成码垛、装配、切削、焊接或喷涂等工业生产作业,是最为常见且应用最广泛的一种智能机器人,本文以我国目前市场占有率最高的ABB公司6自由度关节机械臂4600为参考对象(如图1),首先基于D-H参數法进行运动学分析[5],在建立参数模型后,采用通用模型套件设计了6自由度机械臂模型。模型控制系统采用Arduino控制器,通过编程控制多个舵机完成所需动作序列。用于学生创新实验时,以动作序列编程为主,设计了上下料、抛光和喷涂三种基本动作序列要学生编程实现,如果配合末端执行器,可执行夹取或装配等更复杂动作。

智能机器人的运动学模型及系统硬件

智能机器人利用控制系统进行运动轨迹规划和实时运动控制,其数学基础是机器人运动学,此类问题一直是机器人和人工智能领域的研究热点。机器人运动学描述了机械运动关节与机器人运动组件(如连杆等)的各刚体之间的运动关系。进行机器人设计时,首先应该对其进行运动学分析,并建立参数模型。根据ABB 4600 6自由度机械臂的固有物理结构,本文采用如图2所示的D-H参数模型来描述机器人各个运动部件之间的数学关系。

在图2中,设连杆长度为αi,连杆扭角αi表示垂直于公共法线所在平面内两轴的夹角,连杆距离di表示两连杆的相对位置,关节角θi表示两连杆法线的夹角。由此,可以用ai和αi来描述单个连杆,而用di和θi描述两个连杆之间的关系。同时,连杆长度ai、连杆扭角αi和连杆距离di均只与机器人物理结构相关,可视为常量,具体定义见右下表。

为了使智能机器人创新实验平台搭建方便快速,笔者采用了目前流行的智能机械臂通用硬件,主要包括机械臂通用组件、舵机和Arduino控制器,具体如下:

(1)机械臂通用组件:这套组件的作用是组成机械臂各个位置的连杆,材质为铝合金,外观如图3所示。

(2)舵机:舵机驱动连杆转动一定角度,多个舵机协同作用,可以使机械臂做出各种动作。本文选用的舵机如下页图4所示。

(3)Arduino控制器:Arduino是一个支持多个扩展接口的开源硬件平台。以Arduino为控制器的机器人拥有许多功能,如使机器人连接各类传感器、驱动不同类型的电动机或存储一组预定义动作序列等。本文选用的型号是常见的Arduino UNO,如下页图5所示。

基于Arduino的智能机器人控制系统

机器人能够顺利执行预先编辑好的各种动作,依赖的是基于单片机或智能控制器的控制系统。本文选用最近流行的Arduino UNO控制器,其编程环境较为简单,且是开源系统,相关资源较多,扩展性强,满足创新实验平台的实验仿真需求。

本文的6自由度智能机器人共使用6路舵机,是较为典型的多路舵机控制案例。6个舵机都支持180度转角,舵机的转动角度是通过调节脉冲宽度调制(PWM)信号的占空比来实现的,标准PWM信号的周期固定为20ms(50Hz),脉宽在500us到2500us之间,脉宽和舵机的转角0度~180度相对应。所谓动作序列的编辑,就是同时实验测试,找出PWM脉宽和各个舵机转角值(对应着不同动作)之间对应的时序关系,并把这种时序关系存储起来,当需要机器人重复该动作序列时,按照预先存储好的时序驱动各个舵机,完成动作。

利用Arduino的编程环境,可以完成上述实验过程,学生在编程调试过程中,能够更形象直观地理解智能机器人控制系统的工作流程,较深入地将理论知识点与实践结合起来,同时,编辑新的动作序列也能较好地培养学生的创新能力。本文实验采用的编程软件环境如图6所示。

控制舵机角度等的范例程序如下:

pos1 = pos1+20;

servo1.write(pos1);

delay (30);

if(pos1>170)

{ pos1=170;

servo1.write(pos1);}

每个不同的动作序列都需要根据分解后的各个动作设置对应舵机的参数,并校正上面程序中的变量值,对于多个舵机而言还需考虑时延等情况。

综上所述,从整个创新实验平台的软硬件以及实验的过程来看,本文的创新实验平台具有较强的综合性,结合了智能机器人的控制与应用,虽有难度,但也较好地调动了学生的积极性。

结论

随着智能机器人应用领域的不断扩大,人们对机器人性能的要求越来越高,高速、高精度、智能和模块化成为目前机器人发展的主要趋势。而6自由度关节式智能机器人的操作空间大且结构紧凑,所以它的应用范围最广泛。本文选择ABB公司的4600型机器人为研究对象,建立D-H参数模型,搭建了以Arduino控制器为核心的6自由度机械臂软硬件系统,并将该系统作为创新实验平台,用于机器人实践教学,取得了较好的教学效果。

参考文献:

[1]钟丽鸿,金京姬,王强强.开放性创新实验教学管理模式初探[J].教育现代化,2017,4(28):210-213.

[2]张则,苏贵章,李春江,等.大学生创新性实验计划实施策略[J].中国科技信息,2015(11):1-3.

[3]董爱梅.以智能机器人为平台专业学位研究生培养模式的研究[J].教育教学论坛,2017(45):170-171.

[4]左骏秋,张磊,喜冠南,等.关节半解耦6自由度服务机器人的设计与运动学研究[J].机械设计,2017,34(6):88-94.

[5]Loh B G,Rosen J. Kinematic analysis of 7 degress of freedom upper-limb exoskeleton robot with tilted shoulder abduction[J].International Journal of Precision Engineering and Manufacturing,2013,14(1):69-76.

作者简介:李知菲,男,讲师,研究方向为智能机器人、虚拟现实与动作捕捉。

猜你喜欢
舵机连杆控制器
南京溧水电子3款控制器产品
水泥生料立磨压差变参数二型模糊控制器设计
基于NFV的分布式SDN控制器节能机制
海太克HS—1100WP数字舵机
超音速舵机保护器
菜鸟看模型
发动机连杆螺栓防折断技术措施
舵机的应用
智能液位控制器在排水系统中的应用