首页 工业工程 供应链 查看内容

基于 LabVIEW 舵机机械臂控制

2017-5-6 00:01| 发布者: fengyemx| 查看: 415| 评论: 0

摘要:    0.引言  在我们的日常生活中,有很多劳动强度大、长时间单调重复的工作,或对产品质量要求高的工作,或需要人类在危险、恶劣的环境下作业 的工作,在这种背景下,近年来国内外对机械手臂的研究日趋深入。在 ...

   0.引言

  在我们的日常生活中,有很多劳动强度大、长时间单调重复的工作,或对产品质量要求高的工作,或需要人类在危险、恶劣的环境下作业 的工作,在这种背景下,近年来国内外对机械手臂的研究日趋深入。在机械手臂的研究过程中,多关节的协调控制是实现机械手臂抓取物体的基础。针对这个问题,本文设计了六自由度机械手,通过多路舵机控制器协调驱动各手部关节,最后通过虚拟仪器 LabVIEW 实验对其进行了验证。

  1.六自由度机械手硬件结构

  六自由度机械手具有6个舵机控制其关节,控制器采用STC89C52单片机,具有速度快、灵活度高、抗干扰的优点。机械手采用32路舵机控制器对各关节进行控制。1.1 机械臂在本文中,设计一个能够用于物品搬运的六自由度机械手臂,机械手臂的运动包括底座的旋转、大臂的转动、小臂的转动、手腕的上下摆动与左右旋转、手爪的张合,即机械手臂的自由度为6。六自由度机械臂模拟图见图1。本机械手臂中的各轴之间相互联系并相互独立运行,各机构互不干涉。

   1.2舵机

  舵机按照转动角度分有 180°舵机和 360°舵 机。180°舵机只能在0°到180°之间运动,如果超过这个范围,舵机就会因为超出量程而发生故障。360°舵机可以连续转动,我们可以控制它的转动方向和速度。

  以180°舵机为例,它有3条引线:电源线 VCC、地线 GND 与控制信号线。控制信号为直流偏置电压,由接收机的通道进入信号调制芯片获得。舵机内部有一个基准电路,产生周期为20 ms、宽度为1.5 ms左右的基准信号,舵机输出转角与输入信号脉冲宽度的关系见图2。舵机将获得的直流偏置电压与电位器的电压比较,获得电压差输出;将电压差的正负输出到机驱动芯片来决定电机的正、反转。

  图1 六自由度机械臂模拟图

  图2 舵机输出转角与输入信号脉冲宽度的关系

  

   2.舵机控制器通信  

   2.1舵机控制板

  舵机控制器的主要功能是驱动多路舵机,其内部写有与外部设备进行通信的串口协议,通过 PC 机操作上位机软件给控制器传递控制指令信号,即可实现多路伺服电机单独控制或同时控制。舵机控制板需要舵机电源和芯片电源两个电源。本文设计选用的电源在输出5V 电压时,可承受2A 的电流,可保证6路舵机的正常运转。而芯片电源所需的功率较小,PC的 USB口供电即可使证芯片正常工作。

   2.2 VISA 通信

  VISA 通信部分程序如图3所示。VISA 是虚拟仪器系统I/O 接口软件。基于自底向上结构模型的 VISA 创造了一个统一形式的I/O 控制函数集。常用的 VI包括 VISA 配置串口、VISA 写入、VISA 读取、VISA 关闭等子函数。VISA 部分 VI图标见图4。

  图3 VISA 通信部分程序

  舵机控制板的命令格 式为 “#1P%d#2P%d#3P%d#4P%d#13P%d#14P%d#1”。数据1,2,3,4,13,14 是 舵 机 的 通 道;字 母 P 后 面 是 6 个 舵 机 的PWM 脉宽值。本文用到了“格式化写入字符串”命令,这个函数左侧的6个输入端输入的数据就是格式字符串的6个%d所对应的实时舵机脉宽值,舵机脉宽值通过前面板旋钮来控制。然后将6个整数数据组合成的字符串送到 VISA 写入函数的写入缓冲区。

  图4 VISA 部分 VI图标

  LabVIEW 舵机控制部分程序如图5所示。

  图5 LabVIEW 舵机控制部分程序

  表1 控制角度变化表

   4.结论

  分析了六自由度机器人的特点及功能需求,设计了基于 LabVIEW 的多路舵机控制系统,硬件核心采用STC89C52单片机,关节驱动采用舵机控制。运用LabVIEW 完成了六自由度机械臂舵机控制的软件实现,并通过对机械臂的运动控制验证了该方法的可行性。LabVIEW的优点在于可以直接生成可执行文件,这使仿真调试到实际控制的过渡非常简单,简化了舵机控制系统的设计过程。实验结果显示,该系统运行平稳、控制效果良好并且协调性很高,对机械臂的研究具有一定的参考价值。

分享至:
| 收藏

最新评论(0)

关闭

站长推荐!biaoqi_ftprevious! /1 !biaoqi_ftnext!

1
QQ