云台之家-基于STM32的云台控制-技术论文

更新时间:2023-12-22 14:31:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于STM32的云台控制

学 校:XXXXXXXXXXXX

队 伍:云台之家 组 长:XXXXXX 队 员:XXXXXX 队 员:XXXXXX 指导老师:XXXXX

目录

摘要 .................................................................................................................................................. 3 Abstract........................................................................................................................................... 4 第1章 绪论 ..................................................................................................................................... 5

1.1 课题研究背景 ................................................................................................................... 5 1.2 国内外云台研究发展现状 ............................................................................................... 5 1.3 本文的主要工作和结构安排 ........................................................................................... 6 第2章 系统概述 ............................................................................................................................. 8

2.1 STM32F103处理器 .......................................................................................................... 8

2.1.1 STM32 F107处理器概述 .................................................................................... 8 2.1.2 STMF103处理器系统结构 .................................................................................. 9 2.1.3 STM32微处理器对电机的控制 .......................................................................... 10 2.1.4 STM32F103处理器低功耗 .................................................................................. 11 2.2 电机的定义及控制原理 ................................................................................................. 11

2.2.1 直流电机定义 ..................................................................................................... 11 2.2.2 直流无刷电机工作原理 ..................................................................................... 12

第3章 直流电机控制模块 ........................................................................................................... 13

3.1 直流电机驱动电路 ......................................................................................................... 13

3.1.1 直流电机驱动芯片L293D .................................................................................. 13 3.2 直流电机转速PWM控制 ................................................................................................. 14 3.3 直流电机闭环控制 .......................................................................................................... 15

3.3.1 PID控制算法 ...................................................................................................... 15

第4章 倾角检测模块 ................................................................................................................... 17

4.1加速度传感器 .................................................................................................................. 17 4.2测倾角原理 ...................................................................................................................... 18 第5章 基于STM32云台系统硬件设计 ....................................................................................... 21

5.1 驱动电路的介绍 ............................................................................................................. 21 5.2 倾角检测电路的介绍 ................................................................................................... 22 第6章 基于STM32云台控制系统软件设计 ............................................................................... 23

6.1 软件设计流程图如下 ................................................................................................... 23 第7章 总结 ................................................................................................................................... 24

7.1 总结 ................................................................................................................................. 24

2

摘要

随着经济社会的发展,人们对于想在高空拍摄地面图片的要求越来越高,云台技术得到了迅速发展并逐步开始应用各个领域。为了能够扩大拍摄视野,便于远程操作,常借助于云台,即把摄像机安装在云台上,通过云台转动来带动摄像机转动,同时通过云台控制协议设置摄像机镜头参数,云台在拍摄系统中起着非常重要的作用。而现在又的云台控制系统普遍采用步进电机作为驱动源,存在着稳定性差、功耗大、计数不准确等特点,而采用体积小,节能环保的直流电机作为驱动源的云台控制系统成为研究的热点,并且具有广阔的应用前景。

本文提出以低功耗云台设计为出发点的系统设计方案。以现有的单片机技术和控制理论为依托,研究如何从硬件和软件两方面,对系统进行低功耗设计。硬件核心处理器采用的是意法半导体公司的STM32F103芯片,该芯片使用好高性能且低功耗的的ARM Cortex-M3处理器。云台驱动源采用低功耗的直流无刷电机,在角度计数方面采用加速度计来检测倾角从而实现云台的精确定位功能。

论文采用模块化的设计概念,以STM32处理器为核心,通过外围电机驱动电路来驱动无刷直流电机,实现电机的正传与反转,同时由直流电机的转速与其电枢两端的电压成正比,根据这一特性可通过STM32单片机PWM外设控制直流电机的转速。STM32微处理器根据为角度编写的PID算法来调节PWM输出,保证了云台的匀速、稳定、精确运行。

关键词:STM32 直流电机驱动 PWM 陀螺仪

3

Abstract

With the development of economy and society, people who want to shoot at high altitude ground pictures have become increasingly demanding, PTZ technology has been developing rapidly and gradually began to apply in various fields. To be able to shoot horizons expand, easy remote operation, often by means of PTZ camera that is mounted on the head, led by head rotation to rotate the camera, while the camera lens control protocol parameters set by the head, the head in the shooting system plays a very important role. And now the head stepper motor control system widely used as a driving source, there is a poor stability, power consumption, the count is not accurate, etc., and the use of small, energy-saving DC motor as a driving source tilt control system become a hot research and has broad application prospects.

This paper presents the design of low-power system design PTZ starting point. Existing microcontroller technology and control theory as the basis, to study how the hardware and software aspects of the system low-power design. Hardware core processor uses the STMicroelectronics STM32F103 chip that good use of high-performance and low-power ARM Cortex-M3 processor. PTZ driver source using low-power DC motor, using gyroscopes to achieve in terms of the angle of the head count of the precise positioning.

Paper uses a modular design concept to STM32 processor as the core, through the peripheral motor drive circuit to drive the brushless DC motor to achieve Story and reverse the motor, while the voltage is proportional to the rotational speed of the DC motor armature ends its according to this feature DC motor speed can be controlled by STM32 microcontroller PWM peripheral. STM32 microprocessor prepared according to the angle of the PID algorithm to adjust the PWM output to ensure that the head of the uniform, stable and accurate operation.

4

第1章 绪论

1.1 课题研究背景

随着社会的快速发展,视频监控和拍照得到了越来越广泛的应用。目前在国内可知,拍照技术大部分都是利用手持摄像机来拍照,这样拍照有个缺点就是,摄像机不能随着的控制拍照方向和角度。因此,为了,解决这个问题。我们就把摄像机安装在云台上,利用无刷电机来控制其自由转动。由于自身行业领域中的丰富项目经验,赢得了更多的市场机会。云台控制拍摄应用于各种领域,比如应用于小区,学校,医院等楼宇监控。用在最大的地方是航模拍摄。

而目前市面上的传统的云台只重视功能的实现,忽略了云台的结构设计,大多数采用能耗高,便于实现的步进电机作为驱动源,对于太阳能和风能提供电源的的森林防火系统来说无疑是致命的,功耗的大小直接决定着云台的运行时间,而云台的运行时间是整片安全与否的最直接体现。

由上可知,既有强大的完善的功能,又可实现低功耗长时间可靠的云台控制系统才是最受好评的云台控制系统。

为了满足这种需求,本文硬件以STM32驱动无刷直流电机为基础,配合加速度计来设计一种基于STM32低功耗云台控制系统。

1.2 国内外云台研究发展现状

在国内,随着科技进步和社会的发展越来越多的云台摄像项目在各地域分布广泛,并且应用也非常的广泛。电动云台控制器有内置解码器和外置解码器两种,外置是指将各种接线引出云台机械结构的外部,通过控制器给出相应的控制信号。相反,内置解码器就是安装在云台内部,这样看起来与云台是一体的,通过串行通讯来控制云台。为了满足摄像系统一体化的要求,渐渐采用了内置解码器的方式。

最初云台是固定不能转动的,主要是为了支撑和保护摄像头。安装过程中可以调节摄像头的水平和俯仰角度,达到合适位置后锁定调整结构就可以了。后来

5

在云台内部安装了两个执行电机,发展可以水平、垂直方向转动的电动云台,可以通过发送控制信号来调节角度,并且扩大了摄像范围。

由于快速球型一体化设计,曾经一度领先云台的发展。但是随着智能云台的改进、更新,在技术方面已经可以和快速球型摄像机相媲美。由于云台外观结构的特殊性,使云台的性能在其他方面甚至超过了快速球型摄像机。

国内的云台最初也是从国外引进的,像美国的派尔高、日本的索尼等公司的云台产品。随着一体化摄像机的发展,国内也涌现出了一部分公司开发云台,如艾力克、明景等表现不俗。虽然在知名度上与外国品牌还有一定的差距,但是中国还是有了自己的品牌。随着市场需要的扩大,越来越多的的公司加入到云台技术的研究当中去,使得云台技术渐渐成熟,在高、中、低端设备各个档次的都有。 根据不同的场合,产生了不同的特殊功能的云台。如在室外,就要求能适应恶劣的室外环境,防水、防尘,低温的地域要求在很低的温度下设备依然运行正常,腐蚀性严重的地方要求能防腐蚀。在不同场合要求结构不同,随着摄像机云台的集成化、一体化、数字化、网络化,智能云台也发展起来了。不再满足于最初的仅仅控制转动方向和摄像头参数,向着智能化、人性化的方向,与摄像机取长补短,共同发展。

1.3 本文的主要工作和结构安排

第一章主要首先主要阐述了本文的研究背景和意义,阐述了云台摄像机系统的发展历程,并对国内外云台技术发展状况和未来的发展作了介绍。

第二章对系统的硬件组成部分进行阐述,首先对STM32微控制器的高性能、低功耗进行了阐述。其次阐明了直流电机的分类,最后详细介绍其工作原理。

第三章主要是直流电机的驱动,首先介绍了一款高电压、大电流驱动芯片L298N,该芯片可以同时驱动两台直流电机。其次阐述闭环控制理论及其PID控制算法。

第四章主要介绍的是如何利用加速度计进行倾角检测。其主要原理就是利用重力加速度在各轴上产生的分量,构建三角函数关系,然后通过求反三角函数计算出倾角。

第五章主要介绍了基于STM32低功耗云台控制系统的硬件设计电路,并对

6

STM32最小系统做详细的说明,其次介绍了针对于电机驱动芯片L298N的电机驱动。

第六章主要针对基于STM32低功耗云台控制系统的软件设计方案,对于云台控制协议进行详细的讲解,针对第三章讲解的PID算法控制理论给出了电机转速控制的PID算法,最后详解基于STM32的PWM电机驱动。

7

第2章 系统概述

2.1 STM32F103处理器

2.1.1 STM32 F107处理器概述

STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。

图2-1 STM32F103

它具有如下特点: 1. 哈弗结构

2. Thumb-2指令以16位代码密度带来了32位的性能 3. 单周期乘法指令和硬件触发指令 4. 内置快速的中断控制器

8

5. 与ARM7TDMI相比运行速度最多可快35%区代码最多可节省45%

2.1.2 STMF103处理器系统结构

在STM32F103产品中,主要由以下部分构成 五个驱动单元:

Cortex-M3内核Dcode总线和系统总线 通用DMA1和通用DMA2 以太网DMA 三个被动单元: 内部SDAM 内部闪存存储器

AHB到APB的桥,它连接所有的APB设备

这些都是通过一个多级的ANB总线架构相互连接,如图2-2所示:

图2-2 STM32总线架构

9

ICode总线

该总线负责连接Cortex-M3内核的指令和闪存指令接口。指令预取操作在此总线上完成。 Dcode总线

该总线负责连接Cortex-M3内核总线和闪存存储器的数据接口。 系统总线

此总线负责连接Cortex-M3内核的系统总线接口和总线矩阵接口,总线矩阵协调这内核和DMA间的访问。 DMA总线

此总线负责连接DMA的AHB主控接口和总线矩阵接口,总线矩阵负责协调CPU的Dcode和DMA到SRAM存储器、闪存存储器和外设访问。 总线矩阵

总线矩阵负责协调DMA主控总线和内核系统总线之间的访问仲裁,仲裁采用轮换算法。在互联型产品中,总线矩阵包含5个驱动部件(CPU的Dcode总线,系统总线,以太网DMA、DMA1总线和DMA1总线)和3个从动部件(主闪存存储器接口、SRAM和AHB2APB桥)组成。在其他产品中总线矩阵由4个驱动部件(CPU的Dcode总线,系统总线,以太DMA1总线和DMA1总线)和4个被动驱动(主闪存存储器接口、FSMC、SRAM和AHB2APB桥)组成。AHB外设通过总线矩阵与系统总线相连接,允许DMA访问。

2.1.3 STM32微处理器对电机的控制

直流电机具有优良的调速特性,调速平滑、方便,调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速启动、制动和反转;能满足生产自动化系统各种不同的特殊运行要求。直流电机的工作状态可分为两种:开环状态和闭环状态。直流电机工作在开环状态时,电路相对简单,但其定位性能比较差。直流电机工作的闭环状态时,其定位性能精确,但是相对开环状态又要增加很多检测器件,使用的元器件多,电路非常复杂。

10

根据递推原理,可写出(k-1)次的PID输出表达式:

P(k?1)?Kp{E(k?1)?用式3-5减去式3-6,可得:

TTlj?0?E(j)?TTk?1D[E(k?1)]?E(k?2)]} (3-6)

P(k)?P(k?1)?KP[E(k)?E(k?1)]?KlE(k)?KD[E(k)?2E(k?1)?E(k?2)](

3-7)

式中,Kl?KPTTl为积分系数;KD?KpTD 为微分系数。

T由式3-7可知,要计算第k次输出值P(k),只要知道P(k-1),E(k),E(k-1),E(k-2)即可,比式3-5计算要简单得多。

由式3-5可写出第k次采样时PID的输出表达式:

P(k)?KPE(k)?Kl?E(j)?KD[E(k)?E(k?1)] (3-8)

j?0k?1设比例项输出:

Pp(k)=KpE(k)

积分项输出:

P(k)?K?E(j)?KE(k)?K?E(j)?KE(k)?P(k?1)

llj?0llj?0llk?1k?1微分项输出:

P所以式3-8可改写为:

D(k)?KD[E(k)?E(k?1)]

P(k)?Pp(k)?Pl(k)?PD(k) (3-9)

16

第4章 倾角检测模块

4.1加速度传感器

加速度计,是测量运载体线加速度的仪表。加速度计由检测质量(也称敏感质量)、支承、电位器、弹簧、阻尼器和壳体组成。检测质量受支承的约束只能沿一条轴线移动,这个轴常称为敏感轴。当仪表壳体随着运载体沿敏感轴方向作加速运动时,根据牛顿定律,具有一定惯性的检测质量力图保持其原来的运动状态不变。它与壳体之间将产生相对运动,使弹簧变形,于是检测质量在弹簧力的作用下随之加速运动。当弹簧力与检测质量加速运动时产生的惯性力相平衡时,检测质量与壳体之间便不再有相对运动,这时弹簧的变形反映被测加速度的大小。电位器作为位移传感元件把加速度信号转换为电信号,以供输出。加速度计本质上是一个一自由度的振荡系统,须采用阻尼器来改善系统的动态品质。

随着社会的进步与发展,与数字信号处理技术的提升,加速度计不仅仅只作为功能单一的测量设备,它与传感器结合形成了用途广泛的加速度传感器。如今加速度传感器已应用到各行各业。

一般加速度传感器就是利用了其内部的由于加速度造成的晶体变形这个特性。由于这个变形会产生电压,只要计算出产生电压和所施加的加速度之间的关系,就可以将加速度转化成电压输出。当然,还有很多其它方法来制作加速度传感器,比如压阻技术,电容效应,热气泡效应,光效应,但是其最基本的原理都是由于加速度产生某个介质产生变形,通过测量其变形量并用相关电路转化成电压输出。

伴随着设备仪器小型化与智能化的浪潮,MEMS技术应运而生。MEMS是指微机电系统。它是以半导体制造技术为基础发展起来的,要求在芯片上的集成电路和机械。这就决定了它具有体积小、重量轻、功耗低、耐用性好、价格低廉、性能稳定等优点

MEMS加速度传感器也被称为MEMS加速度计,是一种线性加速度测量装置,按照敏感信号的类型可分为电容式、压电式、压阻式、隧道电流式、电热式和共

17

振式等几种类型。电容式MEMS加速度计是目前普遍使用的MEMS加速度计,一般包含检测质量块和悬挂系统两大部分,其结构原理如图4-1所示

4-1 加速度计结构图

如图4-1所示,传感器的敏感单元由检测质量块、上下固定极板和上下可动极板组成,上可动极板与上固定极板组成电容C1,下可动极板与下固定极板组成电容C2。当没有加速度输入时,理想情况下检测质量块位于上下固定极板的中间,因此电容Cl、C2相等,传感器输出值为0;当外界有加速度输入时,检测质量块在惯性力的作用下带动活动极板沿加速度方向产生位移,从而导致质量块偏离上下固定极板的中间位置,电容Cl、C2不相等。电容Cl、C2的电容差值被信号转换电路转换为电压信号,在经过相敏放大后将输出电压反馈到电容静电力矩器上,电容力矩器产生的静电力矩与惯性力矩平衡,使得传感器检测质量块保持在平衡位置,检测电路根据反馈电压的大小和正负即可确定加速度的大小和方向。

4.2测倾角原理

确定系统倾斜的一种常用方法是对陀螺仪输出求积分。尽管这种方法简单明了,但随着积分周期的增加,与零偏稳定性相关的误差也可能快速增大,即使当器件处于静止状态时也可能导致明显的旋转。

利用加速度计进行倾斜检测的基本假设是,加速度只与重力相关。实际上,

18

可对信号输出进行信号处理,以消除其中的高频组分,因而可以接受一定的交流加速度。

倾斜检测利用重力矢量及其在轴上的投影来确定倾斜角。由于重力为直流加速度,因此,任何额外加人的直流加速度都会破坏输出信号并导致错误计算。

单轴倾斜计算:

根据基本三角原理,X轴上的重力矢量投影会产生等于加速度计X轴与水平线夹角正弦值的输出加速度。水平线通常为与重力矢量垂直的平面。在重力为理想值1g时,输出加速度为:

1g 1g +X +X ? AX,OUT[g]?1g?sin(?)

此时,通过反正弦就可以求出倾角的值。 双轴倾斜计算:

单轴倾斜检测的一种不足在于,随着倾角增大灵敏度逐渐下降,需要采用高分辨率ADC或数字输出,才能获得大范围的有效倾斜角。另一种缺陷是,单轴检测无法提供360度测量,因为倾斜角N度下产生的加速度等于倾斜角(180—N)度下产生的加速度。

在应用两个轴的重力加速度测量倾角的情况下:

1g 1g +X +Y +Y ? +X 19

将测得加速度转换成倾斜角的一种方法是计算X轴的反正弦及y轴的反余弦,与单轴解决方案类似。我们采用一种更简单、更有效的方法是使用来自以下等式的两个值之比:

AX,OUTAY,OUT?1g?sin????tan???1g?cos????????AX,OUT?1??tan??A?Y,OUT其中,倾斜角?单位为弧度。

20

第5章 基于STM32云台系统硬件设计

5.1 驱动电路的介绍

由于STM32或8051单片机的引脚驱动能力比较微弱,通常直接用单片机的引脚驱动直流无刷电机的话是无法驱动的。对于直流无刷电机我们可以通过电调或犹如下面图所示的放大电路,其他结构的放大电路也可以。

在本次产品设计的过程中,由于我们的STM32的开发板比较小,外扩的引脚不够用,所以我们充分利用8051单片机。下面图5-1是连接到STM32单片机,图5-2是连接到8051单片机的。

图5-1 推免放大电路

21

图5-2 L293D放大电路连接图

5.2 倾角检测电路的介绍

本设计的倾角传感器使用的是ADXL345集成芯片,其连接原理连接图如 图5-3所示

图5-3

22

第6章 基于STM32云台控制系统软件设计

6.1 软件设计流程图如下

上电系统初始化 云台倾斜 否 是 8051单片机判断倾角 左右倾角发生变化 是 STM32发出控制指令 否

相应的无刷直流电机转动 23

第7章 总结

7.1 总结

在本次功能实践中,基本完成功能要求,但也有一些不足之处:

问题1:电机转动幅度不够精确

改进:调整控制信号PWM使电机转动的更加平滑

问题2:整体设计实物连线过多,容易出现接触不良等现象 改进:整合并压缩做成集成电路模块,实现小型化,便于实际应用 问题3:二轴云台控制方位与角度有限

改进:增加三轴角速度传感器,实现云台的三轴控制

通过这次基于STM32的无刷云台的设计与搭建,我们学到的不仅仅是相关的专业知识、提高了动手能力,还有对于技术问题解决方法的思考与探索,以及对于问题完整性的规划与实施。在不断的改进与调试的过程中,基本的实现了既定的要求平台保持稳定的功能。可以说这次设计不仅是在校学习阶段的一笔丰富的记忆,更是人生专业生涯值得回味的经历。

最后,感谢指导老师闭金杰的细心教授与指导还有其他同学的帮助。

24

本文来源:https://www.bwwdw.com/article/qhp5.html

Top