一种通用同步收发总线舵机的制作方法

文档序号:19263054发布日期:2019-11-29 17:14阅读:469来源:国知局
一种通用同步收发总线舵机的制作方法

本实用新型涉及一种舵机结构,尤其涉及一种通用同步收发总线舵机。



背景技术:

目前,总线舵机使用的主流的总线有s-wire单总线,uart异步总线两种;而s-wire单总线和uart异步总线两种总线通信应用协议都有一定适用范围。由于舵机设备都是资源受限型的,即只有少量的内存空间和有限的计算能力,而一些复杂的协议应用在舵机设备上就显得过于庞大而不适用。

在传统的s-wire单总线舵机中,每个总线上的舵机都是串接在一个信号线上的,信号线上的数据对每个舵机均可见,这种方式资源结构简单、成本低廉但是速度低,当主机与从机发生数据交互时,其他串接在主机上的舵机需要等待,这就对舵机的实时性产生了影响。在uart异步总线舵机中,每个总线上的舵机都相当与一个数据收发器使用的是发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式,这种情况下虽然通信速度极大的提高了但是数据的可靠性不能得到很好的保证因此在实际使用中容易因为数据堵塞或者失效造成舵机的动作不规整,这为用户的使用带来了不便。



技术实现要素:

为解决现有技术中的问题,本实用新型提供一种通用同步收发总线舵机。

本实用新型包括mcu,分别与mcu相连的电位器、电机驱动器、同步时钟模块和通信接口,电位器的输出端与mcu的输入端相连,mcu的输出端与电机驱动器的输入端相连,还包括与电机驱动器输出端相连的电机,其中,所述mcu内部设有通用同步异步收发器,所述通用同步异步收发器采用usart通用同步异步收发总线通过所述通信接口通信。

本实用新型作进一步改进,所述通用同步异步收发器包括发送器、接收器,还设有用于存储发送数据的发送移位寄存器、发送数据寄存器,和用于存储接收数据的接收移位寄存器、接收数据寄存器。

本实用新型作进一步改进,还包括稳压模块,所述稳压模块输入端与电池输出端相连,所述稳压模块输出端为mcu和电位器供电。

本实用新型作进一步改进,所述稳压模块包括稳压芯片u5,所述稳压芯片u5的引脚1与电池引脚相连,引脚2接地,引脚3通过电阻r2接电池引脚,引脚4通过电容c6接地,引脚5输出3.3v电压,同时通过电容c5接地。

本实用新型作进一步改进,所述通信接口的种类包括type-c接口,所述通信接口的数量为两个以上。

本实用新型作进一步改进,所述通信接口为type-c接口,所述通信接口的数量为两个,其中,第一type-c接口u6的引脚1、2、9、10接电池引脚,引脚7、8、15、16接地,引脚3-6、引脚11接mcu的第一通信端;同样,第二type-c接口u7的引脚1、2、9、10接电池引脚,引脚7、8、15、16接地,引脚3-6、引脚11接mcu的第二通信端。

本实用新型作进一步改进,所述mcu包括单片机u1,其中,单片机u1的引脚1通过串联的电阻r3和电容c2接地,引脚2和引脚3分别接同步时钟模块的时钟晶振x1的两端,引脚4通过电阻r4和电容c13接地,引脚5通过电容c2接地,引脚6接第一type-c接口u6的引脚11,单片机u1的引脚7接第一type-c接口u6的引脚6,单片机u1的引脚8和引脚9分别接第一type-c接口u6的信息收发引脚4和引脚5,单片机u1的引脚11接电位器,引脚14和15接电机控制器,引脚17接电源,单片机u1的引脚18接第二type-c接口u7的引脚3,单片机u1的引脚21接第二type-c接口u7的引脚11,单片机u1的引脚19和引脚20分别接第二type-c接口u7的信息收发引脚4和引脚5,单片机u1的引脚22接第二type-c接口u7的引脚6,单片机u1的引脚31为启动引脚,并通过电阻r5接地。

本实用新型作进一步改进,所述电位器为可调电阻r1,所述电阻r1的引脚1接电源,引脚2接单片机u1的引脚11,引脚3接地。

本实用新型作进一步改进,所述电机控制器为集成电路u2,其中,所述集成电路u2的引脚1接电池引脚,引脚2和引脚3分别接电机u4,引脚4接地,引脚5和引脚6分别接单片机u1的引脚15和引脚14,集成电路u2的引脚7接通过电阻r6接电源,引脚8接电源。

与现有技术相比,本实用新型的有益效果是:能够相互独立的接收数据和发送数据的全双工操作,提高数据传输效率及响应速度,此外,数据数据的可靠性大大增强,便于舵机的精确控制,提高用户体验满意度。

附图说明

图1为本实用新型结构框图;

图2为本实用新型电路原理图。

具体实施方式

下面结合附图和实施例对本实用新型做进一步详细说明。

如图1所示,本实用新型包括mcu,分别与mcu相连的电位器、电机驱动器、同步时钟模块和通信接口,电位器的输出端与mcu的输入端相连,mcu的输出端与电机驱动器的输入端相连,还包括与电机驱动器输出端相连的电机,其中,所述mcu内部设有通用同步异步收发器,所述通用同步异步收发器采用usart通用同步异步收发总线通过所述通信接口发送和接收总线数据。通用同步异步收发器是一个串行通信设备,可以灵活的与外部设备进行全双工数据交换。为了更高效的实现双工位通信,相互独立的接收数据和发送数据,所述通用同步异步收发器设有用于存储发送数据的发送移位寄存器、发送数据寄存器,和用于存储接收数据的接收移位寄存器、接收数据寄存器。

如图2所示,本例的通用同步异步收发器主要包含以下硬件部分:

1、功能引脚

tx:发送数据输出引脚;rx:接收;sw_rx:数据接收引脚,属于内部引脚。

nrts:请求以发送,n表示低电平有效。如果使能rts流控制,当usart接收器准备好接收新数据时就会将nrts变成低电平;当接收寄存器已满时,nrts将被设置为高电平。该引脚只适用于硬件流控制。

ncts:清除以发送(cleartosend),n表示低电平有效。如果使能cts流控制,发送器在发送下一帧数据之前会检测ncts引脚,如果为低电平,表示可以发送数据,如果为高电平则在发送完当前数据帧之后停止发送。该引脚只适用于硬件流控制。

sclk:发送器时钟输出引脚。这个引脚仅适用于同步模式。

2、数据寄存器

usart的数据寄存器(usart_dr)只有低9位有效,并且第9位数据是否有效要取决于usart控制寄存器1(usart_cr1)的m位设置,当m位为0时表示8位数据字长,当m位为1表示9位数据字长,我们一般使用8位数据字长。

usart_dr包含了已发送的数据或者接收到的数据。usart_dr实际是包含了两个寄存器,一个专门用于发送的可写tdr,一个专门用于接收的可读rdr。当进行发送操作时,往usart_dr写入数据会自动存储在tdr内;当进行读取操作时,向usart_dr读取数据会自动提取rdr数据。

tdr和rdr都是介于系统总线和移位寄存器之间。串行通信是一个位一个位传输的,发送时把tdr内容转移到发送移位寄存器,然后把移位寄存器数据每一位发送出去,接时把接收到的每一位顺序保存在接收移位寄存器内然后才转移到rdr。

3、控制器

usart有专门控制发送的发送器、控制接收的接收器,还有唤醒单元、中断控制等。使用usart之前需要向usart_cr1寄存器的ue位置1使能usart,ue位用于开启供给串口的时钟。发送或者接收数据字长可选8或9位,由usartt_cr1的m位控制。

1)发送器

当usart_cr1寄存器的发送使能位te置1时,启动数据发送,发送移位寄存器的数据会在tx引脚输出,低位在前,高位在后。如果是同步模式sclk也输出时钟信号。

一个字符帧发送需要3部分:起始位、数据帧、停止位。起始位是一个位周期的低电平,位周期就是每一位占用的时间;数据帧就是我们要发送的8或9位数据,数据是最低位开始传输的;停止位是一定时间周期的高电平。

停止位的时间长短可以通过usart控制寄存器2(usart_cr2)的stop[1:0]位控制,可选0.5个、1个、1.5个、2个停止位。默认使用1个停止位。2个停止位适用于正常usart模式、单线模式和调制解调器模式。0.5和1.5个停止位用于智能卡模式。

当发使能位te置1之后,发送器开始会发送一个空闲帧(一个数据帧长度的高电平),接下来就可以往usart_dr寄存器写入要发送的数据。在写入最后一个数据后,需等待usart状态寄存器(usart_sr)的tc位为1,表示数据传输完成。usart_cr1寄存器的tcie位置1,则产生中断。

发送数据时,几个重要的标志位如下:

te:发送使能;

txe:发送寄存器为空,发送单个字节时使用;

tc:发送完成,发送多个字节数据时候使用;

txie:发送完成中断使能。

2)接收器

将cr1寄存器的re位置1,使能usart接收,使得接收器在rx线开始搜索起始位。在确定起始位后,就根据rx线电平状态把数据存放在接收移位寄存器内。接收完成后就把接收移位寄存器的数据移到pdr内,并把usart_sr寄存器的rxne位置。如果usart_cr2寄存器的rxneie置1可以产生中断。

接收数据时,几个重要的标志位如下:

re:接收使能;

rxne:读数据寄存器非空;

rxneie:发送完成中断使能。

本例的工作原理为:

通用同步收发总线协议映射在type-c接口,上位机或者舵机与舵机之间通过type-c接口相连接,当舵机与舵机之间或者上位机与舵机之间有数据通过总线协议收发时会触发mcu识别数据。mcu提取数据中关于位置的相关信息进而通过电机驱动器去驱动dc电机,当电位器反馈回来的位置信息与数据中的位置信息一致时,mcu通过电机驱动器停止电机运转使其停留在当前位置。

本实用新型还包括稳压模块,所述稳压模块输入端与电池输出端相连,所述稳压模块输出端输出3.3v电压,为mcu和电位器供电。

所述稳压模块包括稳压芯片u5,所述稳压芯片u5的引脚1与电池引脚相连,引脚2接地,引脚3通过电阻r2接电池引脚,引脚4通过电容c6接地,引脚5输出3.3v电压,同时通过电容c5接地。

所述通信接口为type-c接口,也可以为其他市场上通用的接口,所述通信接口的数量为两个以上。总线上的所有舵机均通过此通信接口连接在一起,一个主舵机可以通过若干个通信接口连接多个从舵机,从而同时与多个舵机同时通信。

本例的type-c接口为两个,其中,第一type-c接口u6的引脚1、2、9、10接电池引脚,引脚7、8、15、16接地,引脚3-6、引脚11接mcu的第一通信端;同样,第二type-c接口u7的引脚1、2、9、10接电池引脚,引脚7、8、15、16接地,引脚3-6、引脚11接mcu的第二通信端。

所述mcu采用stm32f051系列单片机,包括单片机u1,其中,单片机u1的引脚1通过串联的电阻r3和电容c2接地,引脚2和引脚3分别接同步时钟模块的时钟晶振x1的两端,引脚4通过电阻r4和电容c13接地,引脚5通过电容c2接地,引脚6接第一type-c接口u6的引脚11,单片机u1的引脚7接第一type-c接口u6的引脚6,单片机u1的引脚8和引脚9分别接第一type-c接口u6的信息收发引脚4和引脚5,单片机u1的引脚11接电位器,引脚14和15接电机控制器,引脚17接电源,单片机u1的引脚18接第二type-c接口u7的引脚3,单片机u1的引脚21接第二type-c接口u7的引脚11,单片机u1的引脚19和引脚20分别接第二type-c接口u7的信息收发引脚4和引脚5,单片机u1的引脚22接第二type-c接口u7的引脚6,单片机u1的引脚31为启动引脚,并通过电阻r5接地。

所述电位器为可调电阻r1,所述电阻r1的引脚1接电源,引脚2接单片机u1的引脚11,引脚3接地。

所述电机控制器为集成电路u2,其中,所述集成电路u2的引脚1接电池引脚,引脚2和引脚3分别接电机u4,引脚4接地,引脚5和引脚6分别接单片机u1的引脚15和引脚14,集成电路u2的引脚7接通过电阻r6接电源,引脚8接电源。

与现有技术相比,本实用新型能够相互独立的接收数据和发送数据的全双工操作,提高数据传输效率及响应速度,此外,数据数据的可靠性大大增强,便于舵机的精确控制,提高用户体验满意度。

以上所述之具体实施方式为本实用新型的较佳实施方式,并非以此限定本实用新型的具体实施范围,本实用新型的范围包括并不限于本具体实施方式,凡依照本实用新型所作的等效变化均在本实用新型的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1