伺服电机的理论与应用

伺服电机特别适用于机器人和自动化系统,例如步进电机。它们用于通过单个连接到 mcu 的逻辑门来获得精确的角运动。它们是小塑料或金属容器,其中有一根销子,可以在 0° 到 180° 之间旋转,稳定地保持到达的位置。它使用带有减速系统的直流电机,可在旋转过程中增加扭矩。在伺服电机内部,有一个控制电路能够检测达到的旋转角度并将电机锁定在所需的位置。伺服电机的电源通常为+5 v。逻辑信号线也遵循此值。
让我们旋转伺服电机
伺服电机的旋转运动必须通过微控制器执行。事实上,这种类型的协议遵循一定数量的规则和 pwm 节奏,这些规则和 pwm 节奏只能由智能单元生成。实际上,这些脉冲的目的是使伺服电机执行一次运动,通常是半圈甚至更少。请记住,它的枢轴不会自行旋转很多圈,但旋转通常限制在 180° 的延伸范围内。所产生脉冲的占空比宽度决定了行进的角距离。每个脉冲的持续时间必须约为 20 ms,而伺服电机行进的角度由高逻辑脉冲的持续时间决定,该持续时间必须在 1 ms 和 2 ms 之间。导频的逻辑方案如图2所示。
图 2:有效脉冲的持续时间(1 ms 和 2 ms 之间)决定了伺服电机的旋转角度。
高扭矩
伺服电机可以连接反馈和纠错装置。它们的扭矩在不同的旋转速度下可能非常高。因此,为了正确管理,观察扭矩曲线很有用,这些曲线是表示伺服在其不同运行速度下可以产生的扭矩的特定图表。图 3中的图表显示了两个操作区域:一个是连续的,另一个是间歇性的。在连续运行区域中,使用 rms 转矩,它处理加速、恒速和减速。如果伺服电机在高于额定温度的环境中运行,则必须降低转矩曲线。否则,可以安全地增加额定扭矩。
图 3:发动机扭矩图(来源:motion control tips)
伺服电机示例
现在让我们研究一下伺服电机的使用和驱动它的技术。为此,我们将使用 arduino 开发板,即使在实践中可以使用任何其他类型的 mcu。有几十个库可以轻松正确地驱动伺服电机。它们具有许多功能,只需几行代码即可以简单的方式配置和管理设备。但是为了更好地理解它是如何工作的,最好从头开始实现运动算法,而不使用第三方软件组件。提议的方案还提供了伺服电机与 arduino 的直接连接。虽然这适用于一个或两个伺服系统,但最好实现一个单独的功率级,尤其是在有许多伺服系统的情况下。图4中的接线图显示了一个带有三个常开按钮和一个伺服电机的简单应用。按钮的功能如下:
第一个按钮将伺服电机向左移动。
第二个将其移至中心。
第三个将其向右移动。
这是一个可以在许多场合证明有用的试点系统。此外,用户可以增加按钮的数量以提供不同的动作。
图 4:使用伺服电机的应用接线图
固件非常简单,框图如图5所示。setup() 函数的目的是设置 i/o 端口的操作,特别是输出中的端口 7,用于向伺服电机发送逻辑信号,以及输入中的端口 8、9 和 10,用于按钮。另一方面,loop() 函数包含无限重复的主代码。在其中,三个按钮在轮询中连续检查。如果其中之一被按下,mcu 会向伺服电机发送正确的 pwm 序列以使引脚旋转。
图 5:一个伺服电机和三个按钮的驱动固件框图
两个伺服电机的示例
这个另一个例子涉及两个伺服电机的交替运动,如图 6 所示。当第一个伺服旋转时,另一个是静止的,反之亦然。通过适当地修改程序,系统可以适应无限的用途。例如,它可以用来控制机器人、机械臂、搅拌机、自动电机,或者更简单地说,是玩具。当按下按钮时,其操作如下:
将第一个电机的销向左移动。
将第二个电机的销向左移动。
将第一个电机的销向右移动。
将第二个电机的销向右移动。
图 6:具有两个伺服电机的应用接线图
同样,固件非常简单,即使没有使用 arduino 库。相关框图如图 7所示。setup() 函数的目的是设置 i/o 端口的操作,特别是输出中的端口 7 和 8,用于向伺服电机发送逻辑信号,以及输入中的端口 10,用于按钮。另一方面,loop() 函数包含无限重复的主代码。在其中,按钮是连续控制的。如果按下它,mcu 会将 pwm 序列发送到两个伺服电机以进行旋转。
图 7:两个伺服电机和一个按钮的驱动固件框图
伺服电机的成本是多少?
伺服电机通常很昂贵(参见图 8中的图表)。非常小且动力不足的型号很便宜,但随着输出扭矩的增加,它们变得越来越昂贵。在某些情况下,需要大量的机械功率和高扭矩。降低价格的一个解决方案是采用直流齿轮电机。
图 8:指示性价格根据伺服电机的强度而有所不同。
一个有趣的实际应用:四个伺服与慢动作一致
最后一个例子是构建一个由四个伺服电机组成的阵列,它们以相同的动作以极慢的速度运行。应用可以多种多样,如图 9 所示,可以预见使用望远镜自动跟随行星或使用太阳能电池板将它们定向到最大光的方向,以获得最佳效率。四伺服电机系统的特点如下:
所有伺服电机的单一电源
所有伺服电机同步且均等运动(一致)
很慢的动作
要在多个伺服电机上同时运动,需要创建四个 pwm 通道。理论上,可以通过一个逻辑门控制四个设备,但在实践中,最好使通信通道多样化(参见图 10中的接线图)。事实上,未来的项目可能需要不同的轮换,在这种情况下,必须重新绘制接线图,从而浪费时间。
固件包含两个嵌套循环:
第一个,最里面的一个,发送 10 个 pwm 脉冲。可以看出,20 ms 的暂停是固定的,因为伺服电机在信号总周期的测量中具有很大的容差。
第二个,最里面的一个,它调整脉冲宽度(从 1,000 µs 到 2,000 µs)以确定引脚的旋转角度。
四个伺服电机一起从左到右执行极其缓慢的运动,反之亦然。通过修改数值参数,也可以改变时间和运行速度。
图 10:伺服电机阵列接线图
结论
今天驱动伺服电机非常简单,因为它包含所有准备好解释接收到的脉冲并正确旋转销的逻辑。理论上,人们也可以避免使用微控制器并将信号的生成委托给逻辑门和触发器,即使最终实现会更困难一些。标准型号的连接原理不会因制造商而异。特定库的使用使代码编程更加容易。
附件
本文随附的是各个示例的三个草图。您只需要编译它们并将它们直接上传到 arduino 或在可能的模拟器中包含相关的 hex 文件。附件是:
伺服01.ino
伺服02.ino
伺服03.ino
还应该注意的是,arduino ide 提供了将“.ino”源存储在同名文件夹中的功能。


IBM Diamondback磁带库问世 为大型互联网企业提升数据弹性与可持续性带来福音
华为新品耳机手表二合一 华为WATCH Buds惊艳而来
麒麟980怎么样 国产芯片标杆奔向5G新时代
苹果新增可用手表解锁手机的功能
小米CC9 Pro的拆解:相机成本值几颗骁龙855
伺服电机的理论与应用
中国龙芯将进入智能家庭行业
赛普拉斯推出串行非易失性静态随机存取存储器
什么是霍尔开关 如何应用 有什么优点
DA1469x如何用Arm Cortex M0来管理蓝牙通信?
【大大芯方案】高频高功率,大联大推出基于Innoscience产品的2KW PSU服务器电源方案
多晶硅准入标准出台 行业将迎来洗牌
台积电3nm在2021年正式量产
美国众议院发布会:承诺允许俄亥俄州开放区块链技术公司
控制器板系统允许轻松评估通用转换器
TOF深度感知黑科技,RV1108视觉芯升级!
如何使用123D电路模拟和测试Arduino项目
超强双摄旗舰手机 你绝对不容错过的一加5手机
基于随机动作指令的人脸活体检测为人脸识别保驾护航
区块链到底是什么东西?