


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
自平衡机器人的设计
利用自平衡机器人进行动态平衡控制移动机器人在所有应用中都被广泛使用。由于结构简单、可控、成本低等优点,移动机器人已成为研究移动机器人的主要方向。自平衡机器人采用水平布置的两轮结构,本身是一个不稳定体。也就是说,自平衡机器人在静止状态下,不能保持平衡,车体总是要向前或向后倾倒;而在运动状态下,可以通过一定的控制策略使它达到动态平衡。由于自平衡机器人具有内在不稳定性和结构灵活性,国内外机器人爱好者设计了多种结构、外观各异的自平衡机器人,尝试采用各种控制策略使其达到自平衡控制。通常这类机器人采用姿态传感器检测机器人车体的倾倒角度和倾倒角速度,根据当前机器人姿态控制伺服电机驱动电压的转向和转速,从而使机器人保持平衡。该方式制作的自平衡机器人虽然控制性能良好,但成本高,不适合广泛推广。本文设计的机器人尝试采用红外测距传感器测量车体与地面的距离,通过计算获取机器人的姿态信息,进而实现机器人的自平衡。1电机和齿轮减速机构本文设计的自平衡机器人系统主要由机械行走装置、控制系统和传感器3部分组成,如图1所示。机械行走装置主要由车体平台、电机驱动器、直流无刷电机、齿轮减速机构和车轮组成。机器人采用48V电池供电,通过DC—DC模块转换为5V和24V电压。其中,5V提供给控制系统和传感器,24V提供给电机驱动器。控制系统以ATmega128单片机为主控制芯片,通过SJA1000扩展CAN总线与电机驱动器通信。红外测距传感器的输出是与距离成正比的模拟电压值,输入到单片机的A/D采样端口进行处理,从而得到距离信息。机器人的系统结构框图如图2所示。2机器人倾斜角度测量方程机器人的姿态信息包括倾倒的角度和角速度。如图3所示,机器人左右两侧水平位置各安装有1个红外测距传感器,可以测量与地面之间的距离d1和d2。当机器人在竖直状态时,左右传感器距离差为零。当机器人倾倒时,距离差与倾倒角度θ成函数关系如下:sinθ=(d2−d1)/Dsinθ=(d2-d1)/D其中,D为传感器之间的距离。机器人在竖直动态控制时倾倒角度范围较小,此时sinθ≈θ,即可由传感器的距离信息得到机器人的倾倒角度。角速度可以通过θ对时间求导获得。选用的红外测距传感器为Sharp公司的GP2D12,输出为0.4~2.4V的模拟信号,对应的测量距离为10~80cm。在同一温度下,传感器的输出与测量结果呈良好的线性关系,可以满足自平衡机器人的要求。3管理系统的设计3.1平衡位置的调整当车体偏离平衡位置(竖直位置)向前倾斜时,传感器采集信息并传送到单片机进行计算和判断,车轮随之作出响应向前运动,将车体向平衡位置调整;同样当车体向后倾斜时,车轮将向后运动。这样机器人一直处在倾斜判断、运动调整的动态过程中,使车体始终保持在平衡位置附近,达到一种动态平衡。3.2基于fpga的智能系统控制系统主芯片选用Atmel公司基于RISC结构的8位单片机ATmega128。它采用低功耗CMOS工艺;具有丰富的片上资源,包括4个定时器、4KB的数据SRAM、128KB的程序Flash、可外扩至64KB的E2PROM和8个10位ADC通道;拥有UART、SPI、I2C、JTAG接口,方便外部扩展和传感器的接入。3.2.1输出端电阻阻值传感器信号通过放大器引入,通过设置反馈电阻(R1和R2)和输出端电阻(R3和R4)的阻值可以使输入的电压值在要求的范围内。具体硬件电路如图4所示。3.2.2sra0103、ale、int单片机与电机控制器采用CAN总线通信,CAN接口采用Philips公司的CAN物理层和链路层接口芯片SJA1000和PCA82C250。单片机直接控制SJA1000的AD0~AD7、ALE、INT¯¯¯¯¯¯ΙΝΤ¯引脚。SJA1000工作在Intel模式下,MODE脚接高电平,片选脚CS¯¯¯¯CS¯接地,始终处于选通状态。扩展CAN通信电路如图5所示。单片机对SJA1000的操作主要是对寄存器的操作:一方面,对SJA1000的模式寄存器、命令寄存器、状态寄存器、中断寄存器、中断允许寄存器、总线定时寄存器、输出控制寄存器、时钟分频计数器进行设置和检测;另一方面,对收发缓冲区进行读写,从而和CAN设备交换数据。3.3系统控制流程自平衡机器人的控制系统需要实现以下功能:传感器信息处理和机器人姿态信息计算,电机控制PID算法实现和CAN口的数据处理。系统控制流程如图6所示。系统上电后从主函数开始执行。主函数负责初始化控制器的I/O口、CAN口、控制周期定时器、A/D转换器、各个中断接收数据和发送数据模块等。初始化完毕,控制周期定时器时间到后,传感器信息输入到A/D转换器中进行转换,计算机器人的倾倒角度和倾倒角速度;然后调用PID算法计算电机控制数据,并通过CAN口输出给电机驱动器。3.4pid控制算法机器人采用经典的PID算法进行平衡控制。控制系统采用典型的双闭环控制结构和前馈控制方法。速度环路设计有利于提高电机输出速度精度。前馈控制主要是为了补偿电机转轴与车轮转动轴以及传动系统的间隙误差,这些误差是稳定的、可以测量的。当电机在正反转变换时,控制系统可以检测到变换方向,经过位置误差环节调整后把确定的偏差补偿量叠加到驱动器输出端。这样电机转动的角度在原理基础上增加了补偿量,机械误差得以修正。采用PID控制算法公式如下:u(k)=u(k-1)+Δu(k)Δu(k)=KP[e(k)-e(k-1)]+KIe(k)+Kd[e(k)-2e(k-1)+e(k-2)]其中,u(k)为当前调节器输出量;u(k-1)为上一次调节器输出量;Δu(k)为当前控制增量;e(k)为当前控制误差量;Kp为比例系数;KI为积分系数;Kd为微分系数。PID控制算法流程如图7所示。图中,ε为调试过程中设定的误差值。4倾斜角度测量利用该控制方法,对原理样机进行了多次实验。实验中,在机器人正上方水平位置安装陀螺仪,以采集机器人的倾倒角度数据。实际测量角度信息随时间变化的曲线如图8所示。通过测得数据分析可以看到,机器人大致可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025文具柜供销合同模板
- 2025装饰工程分包合同范本
- 安徽省合肥市2024-2025学年高二下册3月检测数学试卷附解析
- 2025届山东省临沂市郯城县中考二模数学试卷含答案
- 石大学前儿童保育学课件3-3儿童意外伤害的现场急救
- 道德与法治(武汉卷)2025年中考考前押题最后一卷
- 网络剧剧本特点分析-洞察阐释
- 老年群体就餐需求的现状与趋势分析
- 制药企业经营管理方案
- 安全教育征文1000字
- 总经理讲安全课件
- GB/T 45255-2025公共信用综合评价规范
- 供应链风险管理知识点及试题及答案
- 压线端子操作规范
- 2024年江苏常州中考满分作文《那么旧那样新》
- 托幼机构安全管理与伤害预防托幼机构安全管理与伤害预防保育师培训李敏课件
- 2025-2030年中国计算机外设行业发展状况及营销战略研究报告
- 泳池救生员知识培训课件
- 2025年宁波华润兴光燃气有限公司招聘笔试参考题库含答案解析
- 2025年甘肃省建筑安全员C证考试题库
- 一年级语文上册口语交际-小白兔运南瓜
评论
0/150
提交评论