两关节机械手在工业生产和加工中有着广泛应用,其中的旋转电机和抓取电机控制着机械手的运动方向和姿态。现有的机械手控制技术大多采用大型控制器和贴片式力传感器对电机进行控制,功耗大,精度低,控制方案复杂。为了实现此类机械手的高精度和低成本控制,本文提出了一种基于Arduino的两自由度机械手控制系统。系统设计简单易行,能够实现机械手位置和力的精确控制,便于维护。
号的开发板,软件部分使用Arduino IDE集成开发环境,具有非常强的扩展性和灵活性[1]。Arduino的源代码是开放的,具有类似Java、C语言的Processing/Wiring开发环境
[2]
。本设计方案采用Arduino Uno开发板。它采用ATmega328
包括一系列IO引脚、晶体振荡器、USB接口、微处理器[3],
可以采用 ATmega328 芯片进行 ICSP接头和复位按钮等[4],USB到串行数据的转换。
2.2 电机驱动芯片L298N
双H桥电机驱动芯片L298N是一种应用广泛的电机驱动芯片,由SGS公司生产。其内部包含两个H桥的高电压大电流双全桥式驱动器(四通道逻辑驱动电路),逻辑部分为标准TTL逻辑电平信号,功率部分可驱动电压46V、电流2.5A以下电机。由L298N内部电路构成来看,两个H桥的下侧桥晶体管发射极连在一起,功率放大器的工作形式为单极可逆模式,其引脚排列形式如图2所示,其中2脚和19脚可连接电流采样传感器,检测输出电流;7、9、13、15脚接输入控制电平,控制电流输出方向;ENA、ENB接控制使能端,控制功率输出禁止或有效。四个输出端OUT1~OUT4可接两台小型直流电机或一台两相步进电机。
1 系统总体设计方案
本方案中,机械手共有两个动作,即旋转和抓取。电机1控制机械手的旋转,电机2控制夹爪开合。通过两电机的配合,机械手在旋转至合适角度后能够张开夹爪,将目标物体夹紧。
系统总体设计方案采用Arduino开发板与L298N驱动芯片相连,通过驱动电机的反馈电流来判断机械手是否已夹紧目标物体,从而实现对电机运行状态的控制。
ArduinoL298N电流M图1 系统总体设计方案示意图
2.3 电流互感芯片ACS712
线性电流传感器芯片ACS712是Allegro公司推出的一种精确电流检测产品。该器件通过内置的线性霍尔传感器电路,将流过器件的交流或直流电流转换成正比例输出的电压信号;与其他电流检测方式相比,具有低偏置、低噪声,响应时间快(上升时间5μs)等特点,检测输出误差最大4%,检测灵敏度高(66mV/A-185mV/A),使用方便;具有极高的性价比,电气绝缘特性好;被测电流流经的通路的内电阻通常是
2 系统硬件设计
系统以Arduino Uno主控板为核心,包括Arduino Uno开发板、L298N电机驱动芯片、电流互感器芯片和电压调整模块等。
2.1 Arduino Uno开发板
Arduino是一款开源电子平台,其硬件部分包括各种型
45设计研发2019.07图2 系统硬件设计1.2mmΩ,基本不影响被测电路。基于以上特点,该芯片被广泛用于要求电气绝缘而未使用光电隔离或其他绝缘技术的应用场合,比如电机控制、电流负荷载荷检测和功耗管理等。2.4 电压调整器LM317LM317是一种常用的电压调整器,有输入、输出、调整三个管脚,输出电压范围为1.2V~37V,输出电流范围为0A~1.5A(加散热片可提高到3A);外部电路简单,只需要两个电阻来设置输出电压(为调整方便,其中一个采用电位器)。该调整器具备限流、热保护等功能。LM317一般用于简易稳压输出,电压要求不太高且不要求隔离的场合。
Arduino板与L298N驱动芯片相连,电流互感器芯片D1、D3分别与Arduino的模数转换AD1和AD2相连,将电机绕组电流反馈至控制器。控制器对模拟信号进行采样和量化,将得到的数字信号作为输入控制参数,从而实现达到通过电流来控制电机力矩大小的目的。Arduino控制器的IO1-3和IO4-6输出端分别控制旋转电机和抓取电机的正反转。A1、A2为电压调整模块,分别将供电电源VSS调整为+7V、+5V。3 系统软件设计系统软件总体流程如图3所示。启动后,控制机械手旋转方向的电机1首先进入工作状态,当机械手旋转至合适方向后,控制夹爪开合的电机2开始工作。夹爪先张开一定角度,随后开始合拢。以电流为判断条件,将夹爪夹紧信号设定若夹爪为电机2在t0时间内持续输出某强度为I0的电流。已夹紧目标物体,则程序结束,否则返回上一步,直至夹紧为止。图3 系统软件设计流程图参考文献[1]雒亮,祝智庭.开源硬件:撬动创客教育实践的杠杆[J].中国电化教育,2015(04):7-14.[2]向红标,巴简程,杨璐,黄战华,刘会平.基于Arduino的智能楼宇无线多传感器监控系统设计[J].中国测试,2019,45(03):95-100.[3]桂淮濛.基于Arduino的电子产品设计[J].电脑编程技巧与维护,2018(09):59-60+88.[4]李红渊.基于Arduino语音控制的五指灵巧手[J].电子技术与软件工程,2018(21):60-61.4 结语为了解决机械手控制过程中的成本高、精度低等问题,本文提出了一种基于Arduino的机械手控制系统。系统通过驱动电机的反馈电流来判断机械手是否已夹紧目标物体,从而实现对电机输出力矩大小的控制。本控制方案可靠性高,能够实现机械手的高精度低成本控制。(上接第125页)[6]俞智炯,吴程.数字技术在工业电气自动化中的应用[J].通信电源技术,2018,35(06):109-110+112.[7]王康,宁建春.数字技术在工业电气自动化的应用与创新[J].中国新通信,2018,20(12):219.46
因篇幅问题不能全部显示,请点此查看更多更全内容