用Arduino类库驱动舵机并不是一件难事,如果需要驱动很多电机,就需要要占用更多的引脚,也会影响到Arduino的处理能力。专门的舵机驱动板很好的解决了这个问题。
此舵机驱动板使用PCA9685芯片,是16通道12bi tPWM舵机驱动,用12个弓|脚通过I2C就可以驱动16个舵机。不仅如此,你还可以通过级联的方式最多级联62个驱动板,总共可以驱动992个舵机!

供电部分
大多数的舵机设计电压都是在5~6V,尤其在多个舵机同时运行时,跟需要有大功率的电源供电。如果直接使用Arduino 5V弓|脚直接为舵机供电,会出现一些难以预测的问题,所以我们建议你能有个合适的外部电源为驱动板供电。

连接舵机
大多数舵机都是使用标准3线母插头连接,只要按照对应的引脚插入驱动板就可以了。(地线一般为黑色或棕色、信号线一般为或白色)

一个驱动板上最多可以添加16个舵机。

驱动板级联
多驱动板级联(最多可级联62个)为你提供更多的扩展性,连接方式如下图所示

为驱动板分配地址
级联的每个驱动板都需要有一个唯一的访问地址。每个驱动板的初始I2C地址是0 X 40,可以通过右上角的跳线修改I2C地址。用焊锡将一个跳线连上就表示一个二进制数字“1”。

Address = C X 40
Board 0:
Offset = binary 00000 (默认)
Board 1: Address= 0x41Offset= binary 00001(如上图,接上A0)
Board 2: Address= 0x42 Offset= binary 00010 (接上A1)
Board 3: Address= C x43 Offset= binary 00011(接上AO和A1)
Board 4: Address= 0x44 Offset= binary 00100 (接上A2)
以此类推
代码示例:
#include 《Wireh》
#include
《Adafrui t_PWMServoDriverh》
Adafrui t_PWMServoDriver pwm1二
Adafrui t_PWMServoDriver (0 X 40);
Adafruit_PWMServoDriver pwm2 =
Adafrui t_PMServoDriver (0 X 41);
void setup() {
Serialbegin(9600);
Serialprintln(“16 chanel
PWM test!”);
pwm1begin();
//
pwm1setPWMFreq(1600);
Thi s is the maximum PWM[ frequency
pwm2begi n();
pwm2setPWMFreq(1600); //
Thi s is the maximum PWM[ frequency
串口指令说明:
舵机移动指令

指令格式:#(舵机号)P(脉冲宽度)………#(舵机号)P(脉冲宽度)T(移动时间)\r\n
舵机号:1~16
脉冲宽度:500~2500,对应角度0~180度
移动时间:从现在位置移动到指定位置所需的时间,单位ms,时间越短舵机反应越快,但过快舵机则反应不过来,一般在定在100ms以上
\r\n:回车符,指令结束符,也可写成0x0d,0
例如:#1P1000T300\r\n
表示让第1路舵机移动到1000us脉宽的位置,即45度,使用的时间为300ms
#1P500#2P1000#3P1500T200\r\n
表示让第1路,第2路和第3路分别移动到500us脉宽,1000us脉宽,1500us脉宽的位置上,
即0度,45度,90度,各自使用的时间为200ms
动作组指令
指令格式:#(组号)G(循环次数)C\r\n
例如:#1G3C\r\n
表示按顺序依次执行动作组1,动作组2,和动作组3,这个过程循环3次完毕
以上指令注意大小写
舵机接线注意事项

舵机的接头从左到右依次为信号线,VCC,GND。

舵机接上舵机控制板时就按图上所示,两边信号线都朝里面。
16路舵机调试软件使用说明
使用USB转串口模块连接调试方法:
1,首先需要用usb转串口模块连接舵机控制板,用长的3P连接线分别GND对应GND,TXD对应RXD,RXD对应TXD连接。如图,(套件里配的线颜色是随机的)

2,接着在“STC扩展板使用资料”压缩包里找到“CP210x_VCP_Win2K_XP_S2K3”安装usb转串口的驱动,安装完成后,插上usb转串口模块,在设备管理器——端口(COM和LPT)里确认串口号(如图)。

3,给舵机控制板供电,D2电源指示灯会亮起来。不要试图用USB供电来测试舵机,usb的电流只有500ma,一个舵机的电流需求就在500~1000ma了,用usb供电结果只会烧板子。
4,打开16路舵机调试软件,串口选择成刚才确认的串口号,波特率默认固定为115200,这时软件会自动打开对应串口,调试软件跟舵机控制板的通讯就开始了(如图)。

单路舵机调试窗口:
下面的拉杆是可以拉动的,上方左边是角度值,右边是脉宽值,随着拉杆的移动而变动,角度范围0~180度,脉宽范围是500~2500。脉宽值是可以直接输入指定值的,比如输入2500,当前小窗口里角度会变成180度,下方拉杆上的滑块会移到最右边,同时对应的舵机也会转到180度位置。

动作调试区
单个动作的移动时间,时间框里的数值可以改写,默认为300ms

动作指令显示区
添加:将当前调试的舵机指令添加到显示区
插入:将当前调试的舵机指令插入到显示区中高亮指令的下方
删除:将显示区中高亮指令删除

保存:将显示区的所有动作指令保存为txt格式的文本文档,格式为txt例如001txt,注意后缀txt一定要写
导入:将保存的动作指令文本导入到显示区中
移除:将显示区中的所有动作指令删除,清空

运行:从上到下依次按单个动作的移动时间发送给舵机板单个动作指令,显示区就会高亮显示正在运行的指令
暂停:在运行时点击将会暂停运行动作指令循环运行:前面方框内打勾表示运行会一直循环下去,默认不打勾
4、表示显示区中高亮的指令所在的行数可以。
舵机复位原理:1、控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为15ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。
2、电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。舵机的构造
舵机主要是由外壳、电路板、无核心马达、齿轮与位置检测器所构成。其工作原理是由接收机发出讯号给舵机,经由电路板上的
IC判断转动方向,再驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回讯号,判断是否已经到达定位。位置检测器其实就是可变电阻,当舵机转动时电阻值也会随之改变,藉由检测电阻值便可知转动的角度。一般的伺服马达是将细铜线缠绕在三极转子上,当电流流经线圈时便会产生磁场,与转子外围的磁铁产生排斥作用,进而产生转动的作用力。依据物理学原理,物体的转动惯量与质量成正比,因此要转动质量愈大的物体,所需的作用力也愈大。舵机为求转速快、耗电小,于是将细铜线缠绕成极薄的中空圆柱体,形成一个重量极轻的五极中空转子,并将磁铁置於圆柱体内,这就是无核心马达。
为了适合不同的工作环境,有防水及防尘设计的舵机;并且因应不同的负载需求,舵机的齿轮有塑胶及金属之区分,金属齿轮的舵机一般皆为大扭力及高速型,具有齿轮不会因负载过大而崩牙的优点。较高级的舵机会装置滚珠轴承,使得转动时能更轻快精准。滚珠轴承有一颗及二颗的区别,当然是二颗的比较好。目前新推出的
FET
舵机,主要是采用
FET(Field
Effect
Transistor)场效电晶体。FET
具有内阻低的优点,因此电流损耗比一般电晶体少。
技术规格
厂商所提供的舵机规格资料,都会包含外形尺寸(mm)、扭力(kg-cm)、速度(秒/60°)、测试电压(V)及重量(g)等基本资料。扭力的单位是
kg-cm,意思是在摆臂长度
1
公分处,能吊起几公斤重的物体。这就是力臂的观念,因此摆臂长度愈长,则扭力愈小。速度的单位是
sec/60°,意思是舵机转动
60°所需要的时间。
电压会直接影响舵机的性能,例如
Futaba
S-9001
在
48V
时扭力为
39kg、速度为
022
秒,在
60V
时扭力为
52kg、速度为
018
秒。若无特别注明,JR
的舵机都是以
48V
为测试电压,Futaba则是以
60V
作为测试电压。所谓天下没有白吃的午餐,速度快、扭力大的舵机,除了价格贵,还会伴随著高耗电的特点。因此使用高级的舵机时,务必搭配高品质、高容量的镍镉电池,能提供稳定且充裕的电流,才可发挥舵机应有的性能。1,拿个示波器看你输出的PWM波形看跟要求符合不符合
2,检查舵机供电,如果你舵机跟单片机一样用个7805供电建议你并联3-8个7805,或者舵机单独供开关电源输出电压(小于舵机额定),注意共地。然后再看。那有那么简单,舵机线是“正、负、信号”,接反了,不烧就不错了。
如果是想执行机构,比如舵面反向,可以考虑把2个舵机的舵角朝向左右相反按装,或者舵角朝向一致但舵机本体1前后翻转180度;
如果非要舵角朝向一致,但转动相反,又不用Y线,就用接收机的多余通道,然后设置联动,同时其中一个通道反相。比如常见的1-6通道混空;
如果没有多余通道,必须用Y线的话,只能改舵机内部电路。方法是把电位器的3根线中,左右2根线交换,然后电机的2根线交换,这个就看你技术了。
航模也是个典型的机电一体化产品,没点动手、动脑能力是不行的。主控板通过串口与单机片通信。根据查询相关公开信息显示:机械人头部采用摄像头,通过USB接口与主控板进行连接,用于采集图像信息,主控板通过串口与单机片通信,就可以实现舵机的控制。机械人一种自动机械,由电子计算机控制,能代替人做某些工作。舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。目前在高档遥控玩具,如航模,包括飞机模型,潜艇模型;遥控机器人中已经使用得比较普遍。舵机是一种俗称,其实是一种伺服马达。 其工作原理是:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为15ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。当然我们可以不用去了解它的具体工作原理,知道它的控制原理就够了。就象我们使用晶体管一样,知道可以拿它来做开关管或放大管就行了,至于管内的电子具体怎么流动是可以完全不用去考虑的。3 舵机的控制:舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为05ms~25ms范围内的角度控制脉冲部分。以180度角度伺服为例,那么对应的控制关系是这样的: 05ms--------------0度; 10ms------------45度; 15ms------------90度; 20ms-----------135度; 25ms-----------180度; 步进电机的基本原理
步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。
步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。
现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)和单相式步进电机等。
永磁式步进电机一般为两相,转矩和体积较小,步进角一般为75度 或15度;
反应式步进电机一般为三相,可实现大转矩输出,步进角一般为15度,但噪声和振动都很大。反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。
混合式步进电机是指混合了永磁式和反应式的优点。它又分为两相和五相:两相步进角一般为18度而五相步进角一般为 072度。这种步进电机的应用最为广泛,也是本次细分驱动方案所选用的步进电机。
步进电机的一些基本参数:
电机固有步距角:
它表示控制系统每发一个步进脉冲信号,电机所转动的角度。电机出厂时给出了一个步距角的值,如86BYG250A型电机给出的值为09°/18°(表示半步工作时为09°、整步工作时为18°),这个步距角可以称之为‘电机固有步距角’,它不一定是电机实际工作时的真正步距角,真正的步距角和驱动器有关。
步进电机的相数:
是指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机。电机相数不同,其步距角也不同,一般二相电机的步距角为09°/18°、三相的为075°/15°、五相的为036°/072° 。在没有细分驱动器时,用户主要靠选择不同相数的步进电机来满足自己步距角的要求。如果使用细分驱动器,则‘相数’将变得没有意义,用户只需在驱动器上改变细分数,就可以改变步距角。
保持转矩(HOLDING TORQUE):
是指步进电机通电但没有转动时,定子锁住转子的力矩。它是步进电机最重要的参数之一,通常步进电机在低速时的力矩接近保持转矩。由于步进电机的输出力矩随速度的增大而不断衰减,输出功率也随速度的增大而变化,所以保持转矩就成为了衡量步进电机最重要的参数之一。比如,当人们说2Nm的步进电机,在没有特殊说明的情况下是指保持转矩为2Nm的步进电机。
DETENT TORQUE:
是指步进电机没有通电的情况下,定子锁住转子的力矩。DETENT TORQUE 在国内没有统一的翻译方式,容易使大家产生误解;由于反应式步进电机的转子不是永磁材料,所以它没有DETENT TORQUE。
步进电机的一些特点:
1.一般步进电机的精度为步进角的3-5%,且不累积。
2.步进电机外表允许的最高温度。
步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;一般来讲,磁性材料的退磁点都在摄氏130度以上,有的甚至高达摄氏200度以上,所以步进电机外表温度在摄氏80-90度完全正常。
3.步进电机的力矩会随转速的升高而下降。
当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。
4.步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。
步进电机有一个技术参数:空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。在有负载的情况下,启动频率应更低。如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。
步进电动机以其显著的特点,在数字化制造时代发挥着重大的用途。伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。 光电传感器是指能够将可见光转换成某种电量的传感器。光敏二极管是最常见的光传感器。光敏二极管的外型与一般二极管一样,只是它的管壳上开有一个嵌着玻璃的窗口,以便于光线射入,为增加受光面积,PN结的面积做得较大,光敏二极管工作在反向偏置的工作状态下,并与负载电阻相串联,当无光照时,它与普通二极管一样,反向电流很小(<�0�8A),称为光敏二极管的暗电流;当有光照时,载流子被激发,产生电子-空穴,称为光电载流子。在外电场的作用下,光电载流子参于导电,形成比暗电流大得多的反向电流,该反向电流称为光电流。光电流的大小与光照强度成正比,于是在负载电阻上就能得到随光照强度变化而变化的电信号。
光敏三极管除了具有光敏二极管能将光信号转换成电信号的功能外,还有对电信号放大的功能。光敏三级管的外型与一般三极管相差不大,一般光敏三极管只引出两个极——发射极和集电极,基极不引出,管壳同样开窗口,以便光线射入。为增大光照,基区面积做得很大,发射区较小,入射光主要被基区吸收。工作时集电结反偏,发射结正偏。在无光照时管子流过的电流为暗电流Iceo=(1+β)Icbo(很小),比一般三极管的穿透电流还小;当有光照时,激发大量的电子-空穴对,使得基极产生的电流Ib增大,此刻流过管子的电流称为光电流,集电极电流Ic=(1+β)Ib,可见光电三极管要比光电二极管具有更高的灵敏度。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)