匿名
未登录
登录
丢石头百科
搜索
查看“Servo Driver Board”的源代码
来自丢石头百科
名字空间
页面
讨论
更多
更多
页面选项
查看
查看源代码
历史
←
Servo Driver Board
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
<div class="tabber"> {{Product |name = Servo Driver Board |images = [[File:Servo Driver Board_示意图.png|400px]] |categories= {{Category|舵机}} |brand=丢石头 |features= * 舵机控制/PWM输出 |interfaces= {{Category|I2C接口}} }} <div class="tabbertab" title="说明"> ==前言== 本产品是通过PCA9685芯片扩展16路舵机控制或者PWM输出,每个通道12位分辨率。通过I2C接口控制,无需占用额外的引脚。不仅如此,还可以通过级联的方式最多级联62个驱动板,总共可以驱动992个舵机。适用于控制机械手臂,以及各种舵机机器人。 ==产品特性== *输入电压VCC:2.3V-5.5V,最大耐压值5.5V *逻辑电压:3.3V *舵机电压:≤6V,一般为5V *驱动芯片:PCA9685(内置25MHz晶振,可不连接外部晶振,也可以连接外部晶振,最大50MHz) *控制接口:I2C(支持高达16路PWM输出,每路12位分辨率(4096级)) *固定孔通径:3.0mm ==硬件说明== *[[File:Servo Driver Board_模块说明.png|600px]] *控制引脚: **GND:电源负极 **OE:使能端,一般不接 **SCL:IIC时钟线 **SDA:IIC数据线 **VCC:电源正极,电路板工作电压(主要是给驱动芯片供电) **V+:舵机工作电压。当接入舵机数量较少时,可从此处供电 *舵机供电端:舵机工作电压,当接入舵机数量较多时,必须从此处供电 *主控芯片:PCA9685,具备IIC通信,同时内置了PWM驱动器和一个时钟,最大支持16路舵机控制 *IIC地址选择:7位I2C地址为:0x80 + A5:A0+R/W,A5到A0如果不做任何处理的话是0,想要把哪一位置1就把那个引脚焊到一起。初始I2C地址是0x80(写入) *级联控制端;当多个驱动板级联时可通过该引脚扩展 *舵机控制端/PWM输出端:16路舵机控制端,黄色为PWM控制线,红色为舵机电源线,黑色为地线。舵机编号从左开始,最左侧为一号舵机,以此类推共十六个舵机 == 使用说明 == === 精度说明 === *PCA9685的分辨率是12位,即占空比控制时,0-4096对应的占空比为0-100,在控制舵机的时候,控制信号是0.5ms-2.5ms,周期20ms,所以控制舵机角度不会有太高的分辨率,对舵机控制精度较高的地方不建议使用。 *以舵机SG90为例,舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms~2.5ms范围内的角度控制脉冲部分。那么对应的控制关系是这样的: **180度伺服 **[[File:Micro Servo_控制原理.png|400px]] *则对该舵机而言: **舵机控制的PWM周期为20ms *旋转x度是对应的高电平时间t1=0.5ms+(x/180)*(2.5ms-0.5ms) *旋转x度是对应的计数值t2=(4096*t1)/20ms === 地址分配 === *PCA9685的器件地址是由引脚A0,A1,A2,A3,A4,A5共同决定。由于有6个引脚共同决定器件地址,因此,可以有64个器件地址,但由于该IC上电便保留LED All Call address (0xE0,0111 0000)以及Software Reset address(0x06,0000 0110),实际仅有62个可用器件地址,因此,理论上,1个I2C接口可控制16*62=992路PWM。 *根据芯片手册,地址位的寄存器一共8位,其中最高位固定是1,A0-A5这六位是用户可更改的,而其中最关键的一位是R/W位,这一位主要是决定了读还是写,置1时为读,置0时为写。所以在写程序的时候,PCA9685的地址应把R/W位加上。在写的时候,发送地址位是0x80,在读的时候,发送的地址位是0x81。 **[[File:Servo Driver Board_使用说明0.png|600px]] *模块级联时每个驱动板都需要有一个唯一的访问地址。可以通过A5-A0的跳线修改I2C地址。用焊锡将一个跳线连上就表示一个二进制数字“1”,断开则表示二进制数字“0”。如下图所示,该驱动板的IIC地址应为0x82(写)/0x83(读) **[[File:Servo Driver Board_使用说明1.png|500px]] === 接线说明 === ==== 单个驱动板 ==== *VCC引脚只是为芯片供电,如果要连接舵机或者LED灯,就使用V+引脚供电,V+引脚支持3.3-6V的电源 *此驱动板采用IIC接线方式,实际使用时将驱动板的SCL、SDA引脚与MCU对应的IIC引脚相连即可 *大多数舵机都是使用标准3线母插头连接,只要按照对应的引脚插入驱动板就可以了。(地线一般为黑色或棕色、信号线一般为黄色或白色) *[[File:Servo Driver Board_使用说明2.png|600px]] ==== 驱动板级联(以Arduino UNO为例) ==== *多驱动板级联:最多可级联62个 *[[File:Servo Driver Board_使用说明3.png|600px]] == 参考例程 == *[[:File:Servo Driver Board_参考资料.zip|参考资料(STC89C51、STM32F103ZET6、Arduino)]] == 数据手册 == *[https://{{SERVERNAME}}/w/upload/6/68/PCA96_datasheet.pdf PCA9685]
该页面使用的模板:
模板:Category
(
查看源代码
)
模板:Product
(
查看源代码
)
模板:Tag
(
查看源代码
)
返回至
Servo Driver Board
。
导航
导航
首页
最近更改
随机页面
MediaWiki帮助
首页
首页
树莓派
主机
配件包
外壳
键鼠
电源
扩展板
显示屏
墨水屏
摄像模块
通信模块
继电器
电机驱动板
游戏机
产品分类
树莓派
Arduino
micro:bit
STM32
Espressif
WiFi模块
蓝牙模块
无线模块
LoRa模块
4G模块
GSM
GPRS
以太网
导航模块
北斗卫星
GPS
LCD
墨水屏
OLED
摄像头
USB模块
串口模块
RS232
RS485
CAN
传感器
温度模块
湿度模块
气压模块
继电器
电机模块
指纹模块
电平转换
音频模块
编程器
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志