#关键词: 伺服电机控制, 电机控制, 伺服, 电路设计
问:带限制和变速的伺服电机控制
本文介绍如何对Arduino IDE中的伺服电机控制入门工具“标准扫描(Sweep)”功能进行增强,从而使其功能变得更加强大,实现完成限制移动区域和速度的步骤。
增强型扫描 (Sweep)
微控制器伺服电机控制的常见入门工具是“扫描(Sweep)”程序。当您下载Arduino I
DE时,会包含“扫描(Sweep)”程序,该程序是Arduino的众多编程示例的一个常见程序。程序代码演示了Arduino伺服库命令的功能,并列出了使伺服臂扫过其整个位置范围所需的步骤。
可借助一些改进措施和外部设备,使扫描(Sweep)伺服在某一设定行程范围内基于某一可变速度移动,从而使其功能变得更加强大。此类伺服适用于许多与爱好相关的项目,例如火车模型上横臂设计或飞机模型上的门及起落架的精确移动。
用于限制移动区域和速度的步骤可通过多种方式实现,具体取决于您的编程和传感器使用的相关经验。
本示例将在标准扫描电路中添加三个电位器,并对Arduino代码进行一些改进。演示的核心器件是使用Atmega328P微控制器(uC)的Arduino Mini V5(图1)。但不会使用uC上所有的输入和输出,这样做是为了将来加入其他更多的外围设备。

图1. Atmega328P微控制器(uC)的Arduino Mini V5
设置
增强型扫描项目从安装试验电路板上的uC开始,其具有所有必需的电源和输入/输出连接,包括:
- 三个外部电位器输入
- 一个ON/OFF触摸开关输入
- LED中心位置
- 以及极限指示器,驱动单个伺服的一个输出。
试验电路板线路配置图见图2。

图2. 试验电路板线路配置(某些线路路径可能会被夸大以显示连接性)
注意:标准跳线套件(例如Digi-Key原型网页上的标准跳线套件)会根据长度进行颜色编码,因此线路颜色可能会沿着线路走向发生变化。文中所列的示意图显示了单色布线,可以用散装线轴的定制切割线来进行布线。
所需零件包括:
- 伺服:
- 180度(1528-1083-ND)
- 触摸开关(450-1650-ND)
- 电位器(3310P-125-103L-ND)
- Arduino Mini V5(1050-1044-ND)
- 二极管 – 绿色(160-1130-ND)
- 二极管 – 红色(160-1127-ND)
- 电容(445-8571-ND)
- 用于Arduino编程的USB转串口转换器(1050-1021-ND)
- 10k电阻(CF18JT10K0CT-ND)。
布局考虑事项
典型伺服的工作电压为4.8 – 6.5VDC,在带载或变方向时可用多达3安培的电流。虽然伺服直接从uC接收信号,但Arduino Mini板载稳压器无法提供伺服所需的电流量级。
请注意,伺服电源线直接连接到6V电源。由于uC具有板载稳压器,因此也可以在相同的6V电源上运行。如果伺服和uC在不同的电源上运行,则必须使用相同的地线,以便服务器识别来自uC的信号。
本示例中的触摸开关用于通过uC启动/停止伺服。
有关演示的代码和自定义函数内容, 请点击这里查看。
总结
伺服电机是功能强大且易于使用的设备,可将信号转换为移动。上面的代码演示了如何操作两个简单的变量rightServo和leftServo,以使伺服电机执行许多操作,而不仅仅是简单的扫描(Sweep)功能。可使用这两个相同的变量轻松修改代码,以执行更多可能的操作。触摸开关可以替换为可在由高至低的信号配置下工作的任何触发设备(例如磁性开关或具有逻辑输出的其他传感器)。应用范围可在很多场合实现。
更多有关电机的技术信息, 请参阅:
———————————————————–
如有任何问题,欢迎联系得捷电子Digi-Key客服团队。
中国(人民币)客服
- 400-920-1199
- service.sh@digikey.com
- QQ在线实时咨询 |QQ号:4009201199
中国(美金)/ 香港客服
- 400-882-4440
- 8523104-0500
- china.support@digikey.com