文档详情

自平衡机器人的控制系统设计

菲***
实名认证
店铺
DOCX
23.59KB
约5页
文档ID:320242783
自平衡机器人的控制系统设计_第1页
1/5

Word版本下载可任意编辑】 自平衡机器人的控制系统设计 引 言 移动式机器人在各行各业具有广泛的应用,而轮式移动机器人由于具有构造简单、可控性强、成本低等优点,成为移动式机器人研究的一个主要方向自平衡机器人采用水平布置的两轮构造,本身是一个不稳定体也就是说,自平衡机器人在静止状态下,不能保持平衡,车体总是要向前或向后倾倒;而在运动状态下,可以通过一定的控制策略使它到达动态平衡 由于自平衡机器人具有内在不稳定性和构造灵活性,国内外机器人爱好者设计了多种构造、外观各异的自平衡机器人,尝试采用各种控制策略使其到达自平衡控制通常这类机器人采用姿态传感器检测机器人车体的倾倒角度和倾倒角速度,根据当前机器人姿态控制伺服电机驱动电压的转向和转速,从而使机器人保持平衡该方式制作的自平衡机器人虽然控制性能良好,但成本高,不适合广泛推广本文设计的机器人尝试采用红外测距传感器测量车体与地面的距离,通过计算获取机器人的姿态信息,进而实现机器人的自平衡 1 系统构造 本文设计的自平衡机器人系统主要由机械行走装置、控制系统和传感器3部分组成,如图1所示 机械行走装置主要由车体平台、电机驱动器、直流无刷电机、齿轮减速机构和车轮组成。

机器人采用48 V电池供电,通过DC-DC模块转换为5 V和24 V电压其中,5 V提供应控制系统和传感器,24 V提供应电机驱动器控制系统以ATmega128单片机为主控制芯片,通过SJA1000扩展CAN总线与电机驱动器通信红外测距传感器的输出是与距离成正比的模拟电压值,输入到单片机的A/D采样端口开展处理,从而得到距离信息机器人的系统构造框图如图2所示 2 姿态信息获取 机器人的姿态信息包括倾倒的角度和角速度如图3所示,机器人左右两侧水平位置各安装有1个红外测距传感器,可以测量与地面之间的距离d1和d2当机器人在竖直状态时,左右传感器距离差为零当机器人倾倒时,距离差与倾倒角度θ成函数关系如下: sin θ=(d2-d1)/D 其中,D为传感器之间的距离机器人在竖直动态控制时倾倒角度范围较小,此时sinθ≈θ,即可由传感器的距离信息得到机器人的倾倒角度角速度可以通过θ对时间求导获得 选用的红外测距传感器为Sharp公司的GP2D12,输出为0.4~2.4 V的模拟信号,对应的测量距离为10~80 cm在同一温度下,传感器的输出与测量结果呈良好的线性关系,可以满足自平衡机器人的要求。

3 控制系统设计 3.1 机器人平衡控制原理 当车体偏离平衡位置(竖直位置)向前倾斜时,传感器采集信息并传送到单片机开展计算和判断,车轮随之作出响应向前运动,将车体向平衡位置调整;同样当车体向后倾斜时,车轮将向后运动这样机器人一直处在倾斜判断、运动调整的动态过程中,使车体始终保持在平衡位置附近,到达一种动态平衡 3.2 控制系统硬件设计 控制系统主芯片选用Atmel公司基于RISC构造的8位单片机ATmega128它采用低功耗CMOS工艺;具有丰富的片上资源,包括4个定时器、4 KB的数据SRAM、128 KB的程序Flash、可外扩至64 KB的E2PROM和8个10位ADC通道;拥有UART、SPI、I2C、JTAG接口,方便外部扩展和传感器的接入 3.2.1 传感信息输入电路 传感器信号通过放大器引入,通过设置反应电阻(R1和R2)和输出端电阻(R3和R4)的阻值可以使输入的电压值在要求的范围内具体硬件电路如图4所示 3.2.2 扩展CAN通信电路 单片机与电机控制器采用CAN总线通信,CAN接口采用Philips公司的CAN物理层和链路层接口芯片SJA1000和PCA82C250。

单片机直接控制SJA1000的AD0~AD7、ALE、INT引脚SJA1000工作在Intel模式下,MODE脚接高电平,片选脚CS接地,始终处于选通状态扩展CAN通信电路如图5所示单片机对SJA1000的操作主要是对存放器的操作:一方面,对SJA1000的模式存放器、命令存放器、状态存放器、中断存放器、中断允许存放器、总线定时存放器、输出控制存放器、时钟分频计数器开展设置和检测;另一方面,对收发缓冲区开展读写,从而和CAN设备交换数据 3.3 控制系统软件设计 自平衡机器人的控制系统需要实现以下功能:传感器信息处理和机器人姿态信息计算,电机控制PID算法实现和CAN口的数据处理系统控制流程如图6所示系统上电后从主函数开始执行主函数负责初始化控制器的I/O口、CAN口、控制周期定时器、A/D转换器、各个中断接收数据和发送数据模块等初始化完毕,控制周期定时器时间到后,传感器信息输入到A/D转换器中开展转换,计算机器人的倾倒角度和倾倒角速度;然后调用PID算法计算电机控制数据,并通过CAN口输出给电机驱动器 3.4 速度PID控制算法 机器人采用经典的PID算法开展平衡控制。

控制系统采用典型的双闭环控制构造和前馈控制方法速度环路设计有利于提高电机输出速度精度前馈控制主要是为了补偿电机转轴与车轮转动轴以及传动系统的间隙误差,这些误差是稳定的、可以测量的当电机在正反转变换时,控制系统可以检测到变换方向,经过位置误差环节调整后把确定的偏差补偿量叠加到驱动器输出端这样电机转动的角度在原理根底上增加了补偿量,机械误差得以修正 采用PID控制算法公式如下: 其中,u(k)为当前调节器输出量;u(k-1)为上调节器输出量;△u(k)为当前控制增量;e(k)为当前控制误差量;Kp为比例系数;KI为积分系数;Kd为微分系数PID控制算法流程如图7所示图中,ε为调试过程中设定的误差值 4 实 验 利用该控制方法,对原理样机开展了多次实验实验中,在机器人正上方水平位置安装陀螺仪,以采集机器人的倾倒角度数据实际测量角度信息随时间变化的曲线如图8所示通过测得数据分析可以看到,机器人大致可以稳定在0°附近,偏差为±2° 结 语 本文设计了以ATmage128单片机为控制,采用红外测距传感器监控的双轮自平衡机器人,并搭建实验平台开展了控制试验。

实验结果说明,该机器人可以通过有效的控制保持在竖直状态,并且在一定的角度范围内到达平衡 :5 / 5。

下载提示
相似文档
正为您匹配相似的精品文档
相关文档