78、基于STM32单片机学习型搬运机器人四自由度机械臂机械手遥感控制设计

毕设帮助、开题指导、技术解答(有偿)见文末。

目录

摘要

一、硬件方案

二、设计功能

三、实物图

四、原理图

五、PCB图 

六、程序源码

七、资料包括 


摘要

在当今大规模制造业中,企业为提高生产效率,保障产品质量,普遍重视生产过程的自动化程度,工业机器人作为自动化生产线上的直要成品,逐渐被企业所认同并采用。工业机器人的技术水平和应用程度在一定程度上反映了一个国家工业自动化的水平,目前,工业机器人主要承担着焊接、喷涂、搬运以及堆垛等重复性并目劳动强度极大的工作。工作方式一般采取示教再现的方式。


本文将设计一台四自由度的工业机器人,用干给冲压设备运送物料。首先,本文将设
计机器人的底座、大臂、小臂和机械手的结构,然后选择合适的传动方式、驱动方式,搭
建机器人的结构平台;在此基础上,本文将设计该机器人的控制系统,包括数据采集卡和
伺服放大器的选择、反馈方式和反馈元件的选择、端子板电路的设计以及控制软件的设计,
重点加强控制软件的可靠性和机器人运行过程的安全性,最终实现的目标包括:关节的伺
服控制和制动问题、实时监测机器人的各个关节的运动情况、机器人的示教编程和在线修
改程序、设置参考点和回参考点。

关键词:机器人,示教编程,伺服,制动

一、硬件方案

本系统采用STM32单片机+时钟晶振电路+复位电路(上电自复位,手动复位)+ 1.44寸TFT彩屏 + 四路舵机(搭配机械臂四个自由度控制) + 2路摇杆(四个方向)+ 按键及电源组成。 

二、设计功能

1、该系统由2个摇杆表达四个方向,对应驱动控制四个舵机的运行,搭配机械臂结构能够表达左右云台转动、前后机械臂运动、抓放轻物品及上下运动功能。

2、该系统分为“手动模式”、“学习模式”、“自动模式”,可以通过按键进行切换模式。上电默认是手动模式。

3、“手动模式”:通过2路摇杆左右、前后操作,控制四个舵机运动,搭配机械臂并能够抓取运输轻物品;摇杆操作时机械臂相应动作,不操作时静止不动。

4、“学习模式”:学习过程用到手动模式的操作,即通过2个摇杆的四个方向,分别能够控制四个舵机搭配机械臂运行。运动到某个需要记录的位置时,通过按键按下对当前四个自由度的舵机状态进行记录,最多记录20条动作,一般7个动作就能够表达出一个抓取、运输、投放等动作功能。并且对学习的动作步骤进行显示统计,方便在自动模式下进行运行。

5、“自动模式”:在学习模式学习后,进入该模式,(如果没有做过学习,无法进入自动模式)机械臂自动执行学习模式下学习的动作,比如学习模式中学习了,抓取、运输、投放等功能;该自动模式自动按照学习的运行动作反复抓取、运输、投放。并且能够显示当前操作步骤是学习模式下学习的第几步。

6、“复位模式”为隐含模式,任何情况下通过按键按下,能够恢复多节到原始位置。即按下其它按键后,四个舵机自动运行到上电时初始位置,然后退出复位模式返回到手动控制模式。

三、实物图

四、原理图

五、PCB图 

六、程序源码

七、资料包括 

需要完整的资料可以点击下面的名片,找我要资源压缩包的百度网盘下载地址及提取码。

  • 5
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
机械手搬运控制系统中的应用摘要:机械手是在机械化、自动化生产过程中发展起来的一种新型装置。它可在空间抓、放、搬运物体等,动作灵活多样,广泛应用在工业生产和其他领域内。应用PLC控制机械手能实现各种规定的工序动作,不仅可以提高产品的质量与产量,而且对保障人身安全,改善劳动环境,减轻劳动强度,提高劳动生产率,节约材料消耗以及降低生产成本,有着十分重要的意义。本文以日本三菱FX2N-48MR型的PLC为基础,介绍PLC在机械手搬运控制中的应用,并给出了详细的PLC程序设计过程。该程序已在工业机械手中获得了广泛应用,具有稳定、可靠的性能。关键词:PLC·机械手控制。应用1机械结构和控制要求如图1所示是一个将工件由A处传送到B处的机械手示意图,机械手的上升,下降和左移,右移的执行用双线圈二位电磁阀推动气缸完成。其中上升与下降对应电磁阀的线圈分别为YVl与w2,左行、右行对应电磁阀的线圈分别为YV3与YV4。当某个电磁阀线圈通电,就一直保持现有的机械动作,直到相对的另一线圈通电为止。气动机械手的夹紧,松开的动作由只有一个线圈的两位电磁阀驱动的气缸完成,线圈(YVS)断电夹住工件,线圈(YV5)通电,松开工件,以防止停电时的工件跌落。机械手的工作臂都设有上、下限位和左、右限位的位置开关SQl、SQ2和sQ3、SQ4,夹持装置不带限位开关,它是通过一定的延时来表示其夹持动作的完成。机械手在最上面、最左边且除松开的电磁线圈(YV5)通电外其它线圈全部断电的状态为机械手位。机械手的操作面板分布情况如图2所示,机械手具有手动、单步,单周期、连续和回位五种工作方式,用开关SA进行选择。手动工作方式时,用各操作按钮(SB5、SB6,SB7、SB8、SB9、SBIO、SBll)来点动执行相应的各动作l单步工作方式时,每按一次起动按钮(SB3),向前执行一步动作,单周期工作方式时,机械手位,按下起动按钮SB3,自动地执行一个工作周期的动作,最后返回位(如果在动作过程中按下停止按钮SB4,机械手停在该工序上,再按下起动按钮SB3,则又从该工序继续工作,最后停在位)j连续工作方式时,机械手位,按下起动按钮(SB3),机械手就连续重复进行工作(如果按下停止按钮SB4,机械手运行到位后停止);返回位工作方式时,按下。回位”按钮SBll,机械手自动回到位状态。2 LC的I/o分配如图3所示为PLC的I/O接线图,选用FX2N·48MR的PLC,系统共有18个输入设备和5个输出设备分别占用PLC的18个输入点和5个输出点。为了保证在紧急情况下(包括PLC发生故障时),能可靠地切断PLC的负载电源,设置了交流接触器KM。在PLC开始运行时按下“电源”按钮SBl,使KM线圈得电并自锁,KM的主触点接通,给输出设备提供电源;出现紧急情况时,按下“急停”按钮SB2,KM触点断开电源。 PLC程序设计3.1程序的总体结构如图4所示为机械手系统的PLC梯形图程序的总体结构,将程序分为公用程序、自动程序、手动程序和回位程序个部分,其中自动程序包括单步、单周期和连续工作的程序,这是因为它们的工作都是按照同样的顺序进行,所以将它们合在一起编程更加简单。梯形图中使用跳转指令使得自动程序、手动程序和回位程序不会同时执行。假设选择。手动”方式,则X0为ON、X1为OFF,此时PLC执行完公用程序后,将跳过动程序到P0处,由于X0常闭触点为断开,故执行“手动程序”,执行到P1处,由于X1常闭触点为闭合,所以又跳过回位程序到P2处l假设选择分“回位”方式,则X0为OFF、X1为ON,跳过自动程序和手动程序执行回位程序,假设选择“单步”或“单周期”或“连续”方式,则X0、X1均为OFF,此时执行完自动程序后,跳过手动程序和回位程序。3.2各部分程序的设计(1)公用程序公用程序如图5所示,左限位开关X12、上限位开关X10的常开触点和表示机械手松开的Y4的常开触点的串联电路接通时,辅助继电器M0变为ON,表示机械手位。公用程序用于自动程序和手动程序相互切换的处理,当系统处于手动工作方式时,必须将除初始步以外的各步对应的辅助继电器(M1I-M18)复位,同时将表示连续工作状态的M1复位,否则当系统从自动工作方式切换到手动工作方式,然后又返回自动
要实现使用基于STM32的三自由度机械臂控制程序,需要以下步骤: 1. 确定控制方式:可以选择串口通信、蓝牙通信或者WiFi通信等方式与上位机进行通信,获取控制指令。 2. 初始化程序:包括初始化STM32芯片、初始化电机、初始化传感器等。 3. 编写控制算法:根据机械臂的运动学模型,编写控制算法,实现控制。 4. 接收控制指令:通过串口、蓝牙或者WiFi接收上位机发送的控制指令。 5. 解析控制指令:将接收到的控制指令进行解析,得到控制参数。 6. 执行控制算法:根据解析得到的控制参数,执行控制算法,控制机械臂运动。 下面是一个简单的使用基于STM32的三自由度机械臂控制程序的示例,其中使用了串口通信方式: ```c #include "stm32f10x.h" #include "usart.h" #include "servo.h" #include "sensor.h" #include "control.h" int main(void) { // 初始化STM32芯片 SystemInit(); // 初始化串口 USART_Config(); // 初始化电机 Servo_Init(); // 初始化传感器 Sensor_Init(); // 初始化控制器 Control_Init(); while (1) { // 接收控制指令 uint8_t cmd[10]; USART_Receive(cmd, sizeof(cmd)); // 解析控制指令 int x, y, z; sscanf(cmd, "%d %d %d", &x, &y, &z); // 执行控制算法 Control_Run(x, y, z); } } ``` 其中,`USART_Config()`、`Servo_Init()`、`Sensor_Init()`、`Control_Init()`、`USART_Receive()`、`Control_Run()`等函数需要根据具体的硬件和控制算法进行实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冠一电子设计

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值