基于STM32的机械臂驱动系统设计
摘要
由于机械臂在各行各业中得到了愈来愈广泛的应用,机械臂控制的多样化、复杂化的需要也随之日趋增多。作为当今科技领域研究的一个热点,提高机械臂的控制精度、稳定性、操作灵活性对于提高其应用水平有着十分重要的意义。
本课题主要对四自由度机械臂控制系统进行了研究与设计。作为运动控制系统的一种,该控制系统主要面向底层,力争开发出一套稳定性高,可靠性强并且定位准确的工业机械臂系统。
首先根据机械臂系统的控制要求,整体上设计出单CPU 的系统控制方案,即通过控制主控制器输出的PWM 波的占空比实现对舵机转动的控制,进而实现各个关节的位置控制。在硬件方面,主要论述了如何以ARM 微处理器STM32F103ZET6、MG995舵机、MG945舵机、超声波传感器和电源模块为主要器件,通过搭建硬件平台和设计软件控制程序构建关节运动控制系统。然后按照结构化设计的思想,依次对以上各部分的原理和设计方法进行了分析和探讨,给出了实际的原理图和电路图。在软件设计方面,按照模块化的设计思想将控制程序分为初始化模块和运行模块,并分别对各个模块的程序进行设计。
实验表明,该机械臂控制系统不仅具有很好的控制精度,还具有很好的稳定性、准确性,而且在很大程度上改善了定位精度。
关键词:四自由度机械臂,STM32,Cortex-M3,脉冲宽度调制
the Design of Manipulator Drive System Based on STM32
Abstract
In recent years, robot arm is widely used in industry control, special robot, medical device and home service robots. Research of robot arm control system is a focus in robot area. It is meaningful to increase the performance in accuracy, stability and feasibility.
This paper is the research and design about a control system based on a four degrees freedom’s design. And, we strive to develop a high stability, reliability and accurate control system.
Firstly, according to the control requirements of the robotic system, the overall design of the system control program is based on a single CPU. Turn the steering control to achieve the control of the duty cycle of the PWM wave output by the main controller, so as to realize the position control of each joint. In terms of hardware, the paper mainly discusses how to use the ARM microprocessor STM32F103ZET6, MG995 Servo, MG945 servos, ultrasonic sensors and power supply module as the main components, build a joint motion control system by building hardware platforms and software con
trol program. Then follow the structured design ideas, principles and design methods sequentially over each part is analyzed and discussed, and then give the actual schematic or circuit diagram. In software design, the control program is divided into the run modules and the initialization module and design program of each module separately.
Control system experiments show that the system can significantly improve the precision of control, and improve system stability, accuracy, so that the positioning accuracy of the robot arm has been greatly improved and enhanced.
Key Words: Four Degrees Freedom Robot, STM32, Cortex-M3, Pulse Width Modulation
目录
1绪论 (1)
1.1机械臂概述 (1)
1.1.1机械臂研究的意义 (1)
1.1.2国内外机械臂的研究现状及发展趋势 (1)
1.1.3机械臂的分类 (2)
1.2机械臂控制的研究内容 (4)
1.2.1机械臂的驱动方式 (4)
1.2.2机械臂的机械结构 (4)
1.2.3机械臂的控制器 (5)
1.2.4机械臂的控制算法 (5)
1.3嵌入式系统简介 (5)
1.4本文的主要工作 (6)
2机械臂控制系统的总体方案设计 (7)
2.1机械臂的机械结构设计 (7)
2.1.1臂部结构设计原则 (7)
2.1.2机械臂自由度的确定 (7)
2.2工作对象简介 (7)
2.3机械臂关节控制的总体方案 (8)
2.3.1机械臂控制器类型的确定 (8)
2.3.2机械臂控制系统结构 (9)
2.3.3关节控制系统的控制策略 (9)
2.4本章小结 (9)
3机械臂控制系统硬件设计 (11)
3.1机械臂控制系统概述 (11)
机械论文3.2微处理器选型 (11)
3.3主控制模块设计 (13)
3.3.1电源电路 (13)
3.3.2复位电路 (14)
3.3.3时钟电路 (15)
3.3.4 JTAG调试电路 (15)
3.4驱动模块设计 (16)
3.5电源模块设计 (17)
3.6传感器模块设计 (19)
3.7本章小结 (19)
4机械臂控制系统软件设计 (20)
4.1初始化模块设计 (20)
4.1.1系统时钟控制 (20)
4.1.2 SysTick定时器 (22)
4.1.3 TIM定时器 (23)
4.1.4通用输入输出接口GPIO (24)
4.1.5超声波传感器模块 (24)
4.2运行模块设计 (25)
4.3本章小结 (26)
5 系统的整机调试 (27)
5.1硬件调试 (27)
5.2软件调试 (28)
5.3故障原因及解决方法 (31)
5.4本章小结 (32)
结论 (33)
致谢 (34)
参考文献 (35)
附录 (37)
附录A (37)
附录B (46)
附录C (47)
1绪论
1.1机械臂概述
1.1.1机械臂研究的意义
早在几千年前,人类就开始了机器人的制造,以解决人类繁重的劳动。例如,古希腊诗人荷马在其长篇
叙事诗《伊利亚特》中,描述了“火和锻冶之神”赫菲斯托斯用黄金锻造出一个侍女[1]。一直以来,人们也一直致力于将这些美丽的神话变为现实。1958年世界上的第一台机器人被发明以来,与工业机器人相关的技术得到了迅猛的发展,并且己经愈来愈广泛的应用在机械、电子、汽车等行业[2]。如今,机器人技术已成为衡量一个国家科技水平的标志之一[3]。
作为近几十年来发展起来的一种自动设备,机械臂可以通过编写软件程序来完成目标任务,它不仅具有人和机器各自的很多优点,而且特别具有人的智能性和适应性。在作业过程中,机械臂控制的准确性和对环境的适应性,已经使其在各个领域有着广阔的发展前景。高级类型的机械臂,可以执行更复杂的操作[4]。将机器臂运用于工业生产过程,除了可以提高生产率之外,还能够减弱工人的劳动强度,使生产过程实现自动控制。因此机械臂在近几年得到了愈来愈广泛的应用[5]。
1.1.2国内外机械臂的研究现状及发展趋势
机器人的研究始于二战后的美国。1958年第一台数控工业机器人诞生后,机器人在工业上的应用不断增加,日本、德国等国家也相继开始机器人的研制。
中国对现代机器人的研制始于上世纪70年代后期,80年代进入到飞速发展时期。尤其在国家成立了863计划后,机器人技术得到特别的重视,由此中国在机器人领域取得了飞速发展,相继研制出示教再现型的搬运、焊接、喷漆、装配等各种工业机器人,以及水下作业、军事和特种机器人。
机械臂发展状况概括如下:
第一代机械臂,即示教再现方式的机械臂。目前这种机械臂仍广泛应用于各种场合。这种工作方式只能按照事先设置的位置进行重复的动作,但是不能感知周围环境,其应