zx
 
 
x
 
 
 当前位置  

【嵌入式原理与应用】基于STM32F1的物料分拣系统设计

2019年06月14日 18:40 16自动化(1)班 茹李波 点击:[]

摘要:机器人等相关技术经过近几年的快速发展,已经成为一种涉及多学科的现代工业化技术。机械臂是一种多用途机器人,现已广泛运用于工业现场。本设计提供了一种基于平面关节型机械臂的物料分拣方案,具有结构简单、控制方便的特点。

关键词:stm32  物料分拣  步进电机  

一、设计背景

机械臂是机器人技术领域中得到最广泛实际应用的自动化机械装置,在工业制造、医学治疗、娱乐服务、军事、半导体制造以及太空探索等领域都能见到它的身影。尽管它们的形态各有不同,但它们都有一个共同的特点,就是能够接受指令,精确地定位到三维(或二维)空间上的某一点进行作业。

对于一般的物料分拣场合,两自由度平面关节型机械臂由于其结构简单、成本较低、稳定性好等优势,得到了广泛的应用。

二、功能概述

本物料分拣系统利用stm32f1单片机控制一套自由度平面关节型机械臂以及一套转盘,实现根据颜色自动分拣转盘上物料至收集区的功能。所述机械臂为两自由度结构,使用两台步进电机驱动,具有旋转和升降的功能;所述转盘为一具有旋转自由度的圆盘结构,通过安装在转盘中心的步进电机驱动。

2.1 基于STM32F1的物料分拣系统

二、控制思路

准备阶段:

1.上电后,单片机控制机械臂上升和旋转直至检测到行程开关低电平信号

2.单片机控制机械臂下降和旋转至机械臂头部吸盘运动至装载点上方

3.打开气泵、打开电磁阀

复位动作完成,进入工作阶段。

工作阶段:

1.转盘连续定速旋转模拟流水线带动物块运动

2.传感器识别到物块即将到达装载点并识别物块颜色后反馈信号至单片机

3.转盘连续旋转一定角度后,等待机械臂动作。

4.单片机控制机械臂下降一定高度后吸盘吸合物块

5.机械臂先上升后旋转将物块运送至对应颜色的物料放置区

6.关闭电磁阀1s后打开、物料下落

7.机械臂上升和旋转至机械臂头部吸盘运动至装载点上方

在工作阶段内部循环。

三、性能指标

1、控制步进电机实现转盘的转动

2、控制步进电机实现机械臂的上升和下降

3、实现不同颜色物料的识别

4、实现物料的精确抓取和放置

5、实现机械臂和转盘步进电机的软启动

四、整体结构

4.1机械臂结构

设计采用一种两自由回转度机械臂,具有Z轴和A轴两个自由度、可以执行升降和旋转动作。

机械臂Z轴采用光轴限位、同步带驱动的方案,使用一台57两相六线步进电机作为动力,实际使用中电机按四线制接线以达到低速大扭矩的控制目标。Z轴上部安装有一个开光电开关用于复位。

机械臂A轴采用双轴承限位、同步带驱动的方案,使用一台42两相六线步进电机作为动力源。实际使用中电机按四线制接线以达到低速大扭矩的控制目标。A轴安装有一个光电开关用于复位。A轴的旋转小臂末端安装一个吸盘用于吸取物料。

4.1.1 机械臂实物图

4.2转盘结构

转盘使用一台57两相六线步进电机作为动力,实际使用中电机按四线制接线。转盘一侧安装有两个开关量灰度传感器用于检测物料的有无和物块的颜色。

4.2.1 转盘实物图

4.3气泵与电磁阀

气泵使用一台5W活塞泵,可以提供-35kpa气压和2L/min的流量。电磁阀使用高速型两位三通阀,额定电压12V、额定功率4W

4.3.1 气泵

4.3.2 电磁阀

四、程序流程

4.1 程序流程图

五、代码实现

控制代码包括主程序main和控制步进电机的stepper函数以及控制定时器的tim函数。

5.1  project所含文件

5.1main函数功能

5.1.1机械臂复位

程序启动时,机械臂进行复位动作,机械臂上升旋转直至运动到光电限位开关信号改变,复位完成。复位完成时,设定机械臂此时的绝对位置A_C-550 Z_C:7750。设定机械臂的目标位置A_T0 Z_T: 0,机械臂回到设定的原点。

5.1.2判断颜色

机械臂回到原点后,始终设定转盘步进电机的目标位置C_T与C_C相差100,使得转盘步进电机保持旋转。

通过两个不同传感器的返回值判断物块颜色,11为白色、10为红色。

5.1.3机械臂动作

机械臂动作改变控制步进电机目标值T来实现。在步进电机启动时,同时发出启动信号TIM4_TimeCounter = 0;,应用于后期的软启动操作。

5.2 stepper函数功能

5.2.1步进电机转动

步进电机的转动通过IO翻转实现,具体代码见69行及以后。步进电机的软启动代码见69行之前。IO翻转的频率由tim4的重装值与变量x的积决定,通过控制x的值控制IO翻转的频率,通过IO翻转频率控制步进电机转速。变量x的变化率由tim3的重装值决定,通过变量x的变化率控制步进电机软启动的加速度。

5.3 tim函数功能

Tim函数用于设置步进电机信号接口IO翻转的频率。

  • 附件【实物视频.mp4】已下载
  • 附件【程序.rar】已下载

上一条:【嵌入式原理与应用】角度、 位置双闭环平衡杆小车 下一条:【嵌入式原理与应用】基于STM32的电子琴制作

关闭