拍照起什么作用(拍照比鸡还稳?这个神发明简直是手抖人士的福音!)
原创 屈珅 RoboMaster
开篇一张图带你走进今天的主题:
这是啥?怎么那么糊?这也许是我们拍照时的硬伤,手一抖,一张渣图便产生了,哪怕是单身几十年,手持相机拍照的效果依然堪忧。
有一天,有人在鸡的身上发现一个大秘密:不管鸡身怎么扭,鸡头都不会动!这简直为手抖人士开了一扇窗。只要我们把相机绑在鸡头上,即使肆意乱抖,拍出来的画面也会很稳啦!
鸡头的重大发现
于是,真的有人这么干了,在鸡头上绑了个相机,让鸡坐在抖动的游艇上,拍出来的画面果然稳得不行。
鸡头绑相机,拍照超稳
但是,如果我们随时抱着一只鸡出门,一定会迎来路人炽烈的目光。并且,养起鸡来也挺麻烦的,为了避免这些麻烦,聪明的人类还是发明了非生物云台。
三脚架上的云台云台是什么?不准确地说,云台就是固定摄像机的一个平台。认真地说,它是一种可以多角度调节的支撑设备,就像你的脖子,可以转来转去调节角度,支撑起整个脑袋。
云台相机为了方便讲解(显得专业),我们建立右手直角坐标系,引入三维空间的 pitch 轴、yaw 轴和 roll 轴。
三维空间这一轴系常应用在航空中,通常默认定义 Z 轴的正方向为前方。绕 yaw 轴就是摇头,绕 pitch 轴就是点头,绕 roll 轴就是做耳朵贴肩膀的动作。
绕 roll 轴横滚根据不同应用的需要,云台可调节的角度也有限制,轴越多,可调节角度也就越多。按照可调节角度来分类,一般可以分为单轴、两轴和三轴云台。
可调节的角度单轴云台
只能实现一个轴的转动,比如只能绕 yaw 轴水平转动的全景拍摄云台,它只能做摇头的动作。
全景拍摄云台两轴云台
一般指能实现水平(左右)和俯仰(上下)动作的云台,也就是只能摇头和点头。机器人比赛中,一般带有射击功能的机器人都搭载两轴云台,实现多角度射击。
两轴云台三轴云台
能实现三个轴的旋转或者动作。
三个角度它适用于需要实现空间运动的物体,比如在空中飞行的无人机。想象一下,如果在移动飞行的无人机身上固定一个无法调节角度的手机,拍出来的画质一定糊成渣了,而三轴云台就可以将画面稳定下来。
无人机上的云台按照控制的方式,云台又分为机械云台和电动云台。
控制方式机械云台
传统机械云台一般是用阻尼球调节角度,又可以称为球形云台,相机的三脚架云台普遍采用这种。它可以像脖子一样乱转,但是需要手亲自接触才能控制,无法远程遥控和精准移动。
球形云台如果我在家想让隔壁邻居的云台往右转两毫米,它不仅不会转,而且不知道两毫米是多少,这时就需要电动云台了。
电动云台
电动云台需要加入电机,能实现“控制”,比如设定好路径,让云台上的摄像机自动扫描监视区域;或者远程传递电信号进行控制。
电动云台想要实现精准控制,需要云台各部分都有完美的设计,从硬件选择、机械设计到电控,每一点都影响着云台的控制,具体的云台控制都有哪些影响因素?
云台电机
云台一般是便携的设备,用电池供电,所以云台电机主要是直流电机。直流电机又可分为无刷直流电机,和有刷直流电机。无刷电机寿命长、维护简单、体积小,而且工作状态稳定,一般作为云台电机的首选。
pitch 轴上的电机驱动方式
直接驱动
直接驱动是指,电机轴(电机自身的轴)直接连在需要驱动的云台机械结构上,这样云台的响应速度快,动作平滑。
无刷电机直接连接但是对于大负载的云台,电机性能的要求就会比较高,而且还要考虑每个轴所承载的物体的重心与旋转轴尽量重合,否则导致云台重心不稳,重心不稳的缺点会在下文讲到。
间接驱动
电机轴没有直接连接在被驱动的部分,而是间接传递给云台,通常采用同步带或是减速箱传动。
同时使用舵机和同步带的大负载云台间接驱动一般能使电机能够输出更大的扭矩,从而拥有更大的负载。例如齿轮减速箱传动,通过公式 P=FV 可以看出,功率 P 一定时,速度 V 越小,力气 F 越大。
但间接驱动避免不了由此产生的齿轮啮合间隙,以及复杂的装配过程。
云台的设计
设计云台时,需要关注云台的重心调节,有人会在云台上绑电机或者绑铁块,这都是为了尽可能平衡云台每个旋转轴的负载。
超稳的云台如何平衡云台呢?我们先介绍一些概念。
电机可以输出转矩,使机械元件转动。打个比方,你用手拧干湿毛巾的过程,就可以理解为你的手是电机,输出了转矩,而毛巾是机械元件,它产生了扭转变形。
转矩是一种力矩,力矩在物理中的定义是:
力矩=力×力臂
云台通常情况下都是处于静止状态,也就是一种平衡状态,在这个时候存在一个平衡关系:
动力矩=阻力矩
两公式合并:
动力×动力臂=阻力×阻力臂
电机提供动力,而云台上的负载则产生阻力,力臂就是力的作用点到支点的距离。在这里阻力臂就是指云台负载的重心到转轴的距离。
支点相当于转轴我们设电机的扭矩表达式为:M=2×F×bc/2=Fbc(单匝线圈 F=BIab)。
电机模型从式子上看出,如果电机的动力臂不变,阻力也近似看成不变,那么阻力臂越大,电机就需要产生更大的力量,才能使云台保持平衡,其实就是杠杆原理。所以,设计时应该尽量减小阻力臂的长度。
如果云台设计不好,一般有两个坏处:
1、损坏电机:如果阻力臂设计得很大,就要通过增大电流来增大力量,这时电机的功率也会增加,导致电机严重发热,甚至烧毁线圈。
2、电控不稳定:云台的控制会对云台进行 PID 调节,而云台的不平衡会导致动作过程中电流值突变,PID 参数也会乱掉,导致云台的剧烈抖动。
超稳的云台相机要实现丝滑的体验效果,以及一个大写的“稳”,不仅要在结构上的足够优化,还有一套优秀的电控方案。对于双轴云台来说,云台姿态控制可以分解成对两个云台电机角度的控制。
电控的控制
目前控制电机最常用的算法就是 PID,而 PID 是基于反馈的控制器,也就是要检测云台目前的状态,然后告诉云台听,云台才能做出下一步正确的动作,这就需要运动传感器来反馈状态了。
往期回顾:《什么是机器人比赛中的PID控制?》
传感器
需要反馈的运动状态有线位移、角位移(角度)、线速度、角速度、线加速度、角加速度等等。常用传感器有:
1、 电机编码器:它会告诉你相对于底盘来说,电机转了多少圈;
2、 磁力计:类似指南针,会告诉你相对于地面来说,云台转多少圈。但是它会受到磁场干扰,比较不稳定;
3、 陀螺仪:它会告诉你云台的角速度;
4、 加速度计:它会告诉你云台的加速度。
常用的运动传感器 MPU6000 系列内部集成有一个三轴陀螺仪,可以很方便的获取三个方向的角速度。
磁力计→陀螺仪、加速度计、运动处理器→应用处理器
对于云台来说,我们需要控制的是它在空间中的角度(位置),所以需要传感器测量云台角度,及时反馈给云台。(为了取得更好的控制效果,也会测量角速度,将在下文提到。)
角度测量
角度有多种坐标系和测量方式:
1. 通过云台电机编码器获取云台相对于底盘的夹角;
2. 对陀螺仪获取的角速度进行积分,得到相对初始位置的角度;
3. 利用陀螺仪、加速度计、磁力计等传感器数据融合,解算出在地面绝对坐标系中的角度。
RoboMaster 单轴陀螺仪模块
内部有 MCU 对陀螺仪数据做处理
可以直接输出角度值
不同方式的对比
以上各种方法获取的角度信息有各自的优缺点,可以应用在不同的控制模式中。
优缺点对比按照 PID 控制的思想,我们只反馈了云台的位置(PID 位置环),控制效果很不理想。因为在位置发生偏差后才进行校正,时间滞后较大。于是,我们引入串级控制方法。
串级控制
串级控制有位置环(控制角度)、速度环(控制角速度)和电流环(控制电流)。位置环相当于队长,指挥调节速度环,速度环相当于组长,指挥调节组员电流环,层层压榨,噢不,应该是层层指导。
以 pitch 轴云台为例,串级控制框图如下所示:
串级控制电机编码器提供位置反馈,MPU6050 提供角速度反馈,形成双环 PID 控制。电流环和 FOC 控制则交给电机驱动板,也就是虚线框里的东西,不需要我们干预。
对三个物理量精准地控制,可以使云台更平稳地到达目标位置,受到干扰的时候尽量保持速度稳定。
其他指标
在调节位置环和速度环 PID 控制器时,我们首先要明确一定的性能指标,例如响应时间、超调量、稳态误差等。这些性能指标很大程度上是受机械结构影响的,例如云台的转动惯量、摩擦力是否均匀、结构刚度等等。
在机械结构确定的情况下,通过调节控制器、优化传感器算法、数据滤波等处理手段,可以提高控制性能。
上图是利用 J-Scope 软件采集 Yaw 轴阶跃响应测试数据,从上到下依次是位置、速度、电流信号。由图片可以看出,云台跟随效果较好,位置的阶跃响应的上升时间大概为 200ms,超调量小于 10%,没有稳态误差。输出电流经过滤波,没有高频振荡,提高了系统稳定性。
◆◆◆
云台很容易让我们联想到工业中的机械臂,它依靠编码器进行高精度控制,实际上云台就是一种机械臂。
机械臂机械臂
想要实现一个任务, 需要规划机械臂各个关节的运动轨迹,让各关节之间相互配合,来实现这个动作。
例如要实现下图机器人头部的稳定,需要一套复杂的程序,各个关节之间的动作误差也需要很好的相互抵消或者补偿,这对技术水平要求极高。
搭载云台的机器人工业机械臂一般是用来实现模拟人手抓取、焊接等操作,强度和精度要求都是极高的,如果拿机械臂来做相机云台,那就是大材小用了。
云台应用越来越广泛,技术的成熟不仅给摄影带来了翻天覆地的变化,甚至在飞机上,也有搭载机枪的云台。希望有一天,云台可以深入生活,在更多领域得到应用,为我们带来更多惊喜。
飞机上的云台本期作者
山东科技大学 屈珅
RoboMaster2017
热爱骑行,偏执的四川辣子
本文来自 RoboMaster 技术智囊团屈珅,文章部分有修改。如果你也希望加入技术智囊团,请通过 robomaster@dji.com 联系我们。
学习往期机器人的技术文章
- 专业不枯燥,解读机器人信息 -