分类筛选
分类筛选:

关于ATMEGA2560论文范文资料 与基于ATMEGA2560的自平衡移动机器人系统设计有关论文参考文献

版权:原创标记原创 主题:ATMEGA2560范文 科目:专科论文 2024-02-05

《基于ATMEGA2560的自平衡移动机器人系统设计》:这篇ATMEGA2560论文范文为免费优秀学术论文范文,可用于相关写作参考。

摘 要:该文设计了一款可以自主运行且保持平衡的移动机器人控制系统,使用LD3320识别简单的语音启动停止信号实现移动机器人启停控制,使用六轴传感器MPU6050实现未知环境下移动机器人的角度信息,通过MPU6050以及电机速度编码器实现保持小车的平衡.移动机器人最后能够实现自主运行以及语音识别的功能.通过实际移动机器人的运行结果说明控制系统的正确性.

关键词;Atmega2560;LD3320;双CPU;MPU6050;L298N

双轮自平衡机器人始创于1980年左右的,其设计概念是由电信大学的一名教授首先提出的.同一时期,美国发明出一款名为Segway的机器人,该机器人拥有先进的机器配置.发展到现在,该机器人已经发展到多个系列,并在市场中广泛运用.国内对于双轮自平衡机器人的研究起步比较晚.2002年,台湾国立大学电机工程研究所模仿美國的Segway研制出两轮自平衡机器人.2005年,哈工大的学生伊亮运用线性控制技术,真正意义上实现了双轮移动机器人的平衡.2012年,Ninebot平衡车CEO高禄峰成立鼎力联合科技有限公司,成功研发出风行者思维车、Ninebot九号机器人,不但在国内取得了成功,还让平衡车进人了美国市场.双轮自平衡机器人以其结构简单、行动灵敏、运行方便、速度可控等优势被广泛运用,并因其可以在狭小或地形复杂的工作环境下完成工作,在民间和军事领域都具有巨大的应用前景,具有非常重大的研究意义.

该文首先研究了自平衡的移动机器人控制系统.

1系统组成和结构

自平衡移动机器人控制系统整个控制系统框架如图1所示,控制系统主要由两个CPU构成,其中主CPU1采用的是89C51主要完成当前角度读取以及电机控制,其中六轴传感器主要完成的是陀螺仪三个方向的角度以及加速度计三个方向的加速度的读取.电机采用的是L298N,此电机模块的优点是可以直接通过单片机的IO口控制其运动.而移动机器人的启动和停止使用的是语音信号来处理,考虑到语音处理内容较多,所以采用的STM32进行语音处理,而后将获取的数据通过端口发送给CPU1.

整个自平衡车系统整体逻辑如图2所示.

移动机器人开始运动之后,陀螺仪获取角速度信息,加速度计获取z轴的加速度信息.将加速度计信息与陀螺仪积分后的角度信息叠加之后比例调整之后的值和角速度信息叠加,而后进行积分成角度信息,此角度信息一部分和陀螺仪角速度信息合成作为闭环反馈系统的输入.将角度信息,角速度信息以及速度信息作为最终控制量叠加在一起作为电机输出电压控制量驱动电机运行达到自平衡的目的.由于整个硬件系统使用两个CPU进行控制,因此对此分别进行介绍.

硬件部分设计语音模块LD3320的控制引脚有四个,分别是TXD,RXD、GND以及VCC引脚,其中TXD与RXD主要实现数据传输通信.P1.1-P1.4四个端口是通用10口输出,用来检测语音信号的输出.如果语音模块正确识别语音信号,那么对应的这四个管脚P1.1-P1.4会输出相应的低电平,从而单片机上与之对应的端口,分别是P3.3-P3.6可以接收到低电平信号.而后将CPU1的p0.2到p0.5连接到CPU2的PC0-PC3上,控制机器人运行.

软件部分语音模块采用VAD技术检测语音信息,通过循环来识别语音信号.主控的CPU反复启动识别,如果在一次识别中无结果,那么会再次启动一次识别;如果识别有结果,将结果与语言库里设置了四个词语“停止”,“运动”,“左转”,“右转”比较,相同则发信号给主CPU让其运动.然后再启动下一次识别结果.算法流程如图5所示.

3ATMEGA2560控制系统

ATMEGA2560是控制自平衡移动机器人的核心部分.包括和89C51进行通讯,利用MPU6050获取陀螺仪以及加速度信息,利用获取的角度位置信息,控制电机L298N运行.其硬件连接如图6所示.MPU6050的12C通信接口SDA以及SCL分别与CPU的对应接口相连,而后控制器端口PC3以及P控制电机速度,可以输A.PWM脉宽调制信号来调节电机的速度.IN1和IN2控制电机的转向.

3.1MPU6050传感器数据获取

Atmegal2560通过TWI(两线串行总线)获取MPU6050各个传感器的数据信息.其中Atmegal2560作为主机(Master),而MPU6050作为从机(Sle).MPU6050作为从机地址为OxDO,也就是说CPU读取数据需要首先发送这个地址给从机.

而IIC读写的步骤如下所示.12C读传感器数据的步骤:1)主机发送START信号,告诉从机两者需要通信.2)主机发送从机地址以及写入数据的命令到从机,等待从机响应.3)从机响应之后,主机发送需要读取的寄存器地址给从机,等待从机响应.4)从机响应之后,重新发送Start信号.5)主机发送从机地址以及读取数据的命令到从机,告诉从机读取数据.等待从机响应.6)读取从机的数据,对于多个数据则连续读取数据,多个数据之间需要有一定的等待时间.7)读取完成之后,发送一个stop信号给从机,告诉从机读取数据结束,一次通信完成.

12C写传感器数据的步骤:1)主机发送START信号,告诉从机两者需要通信.2)主机发送从机地址以及写入数据的命令到从机,等待从机响应.3)从机响应之后,主机发送需要写入的寄存器地址给从机,等待从机响应.4)从机响应之后,写人相关的从机数据,对于多个数据则连续写人数据,多个数据之间需要有一定的等待时间.5)写人完成之后,发送一个stop信号给从机,告诉从机写人数据结束,一次通信完成.

为了验证传感器数据获取情况,利用CVI编写上位机通信界面,将MPU6050获取数据传输到上位机上.如图7所示.

3.2电机控制

ATMEGA2560论文参考资料:

结论:基于ATMEGA2560的自平衡移动机器人系统设计为关于对写作ATMEGA2560论文范文与课题研究的大学硕士、相关本科毕业论文ATMEGA2560论文开题报告范文和相关文献综述及职称论文参考文献资料下载有帮助。

相关免费毕业论文范文

热门有关优秀论文题目选题

和你相关的