拟人机器人上肢多关节控制参数整定
扫描二维码
随时随地手机看文章
摘要:为了得到拟人机器人上肢关节控制电机的精确参数,通过建立直流电机的物理和数学模型,利用Matlab软件建模和仿真,找到了一个合适的PID控制方法,通过调节KP,KI,KD参数,系统获得了较高的控制精度和响应速度,几乎能够完全抵抗外部干扰,该仿真对拟人机器人手部控制节点的设计具有很重要的指导作用,对于一般的直流电机闭环控制也有一定的借鉴意义。
关键词:拟人机器人;PID控制;直流电机建模;Matlab
0 引言
拟人机器人手部控制节点的任务是接收机器人“大脑”(即上位机)的指令,完成手部电机的速度及位置控制。拟人机器人手部电机采用DC电机,通常DC电机抗干扰能力有限。本文探索DC电机的PID闭环控制手段,为了得到较好的可能效果,需要寻找合适的控制参数:KP,KI,KD。文中首先对DC电机进行物理抽象,进而建立数学模型,并通过实验手段得到实际电机的系统参数。最后通过模拟手段,实现拟人机器人手部电机开环控制系统及速度闭环PID控制系统的仿真,并通过调节KP,KI,KD获得较好的抗干扰相应。通过仿真得到的控制参数可以反过来用于指导控制节点的设计。
1 DC电机建模
1.1 建立直流电机的物理模型
电机的物理模型如图1所示。
1.2 DC电机数学模型的建立
式(1)是理论分析得到的电机开环控制的数学模型。判断一个模型是否适用于实际的拟人机器人手部DC电机,需要将实际测量电机的相应曲线和理论公式进行比较。
1.3 实际电机的开环阶跃响应
为了确定上述电机模型的参数,同时验证上述电机模型的正确性,首先对电机进行开环阶跃响应实验,给定电机一个目标速度设定,测出电机速度随时间的变化曲线。拟人机器人手部电机装有16线编码盘,给电机加上128/256的PWM站空比(相当于2.5 V电压,PWM站空比与e1成线性关系),利用单片机的寄存器,通过编写一定的程序测得一组电机每转过π/8对应的时间值,为了处理实际测量得到的数据,使用VC编写一个数据处理程序,在Matlab中运行由VC程序自动生成的.m文件,就可以绘出拟人机器人手部DC电机的响应曲线。在Matlab中运行该文件就可以得到电机的响应曲线,如图2所示。
1.4 电机数学模型的参数确定
从前面的理论分析得到了一个电机的开环控制时域模型,可以将实际测量得到的电机的开环数据代入式(1),求出电机模型中的参数a,b,c。其中a=522 284.126 112 083;b=1 282.297 371 441;c=0.084 348 857;从而得到新的曲线,如图3所示,为便于比较同时绘出了
电机实际响应曲线。
由图3可看出理论计算得到的曲线与电机实际曲线的拟合度非常好,说明采用式(1)作为电机开环函数完全可行。控制参数:a=522 28 4.126 112 083;b=1 282.297 371 441;c=0.084 348 857可以作为电机的仿真参数。因此拟人机器人手部电机开环系统的时域响应函数为:
2 电机PID闭环控制系统仿真
从以上分析可以看出,电机开环系统很容易受到干扰。因此在开环的基础上,考虑构造电机的闭环控制系统。由于PD控制系统存在静差,PI控制系统响应时间长,DI控制系统稳定性不好,鉴于此,下面考虑PID控制,其系统仿真模型如图4所示。
该系统的控制效果基本上令人满意,图5是部分控制效果模拟。
由此可见,PID控制很好地结合了PI、PD控制系统的优点,避免了他们的缺陷,使系统最终获得了很高的控制精度、更快的响应速度、更突出的控制稳定性,因此最终选择PID作为机器人上肢DC电机的闭环控制系统。通过对比可以看出,该系统比较完美,超调量几乎没有,响应时间也很短,抗干扰能力也很强。
3 结语
通过以上建模和仿真,找到了一个合适的控制方法,即PID控制,并且经过调节得到的一组较好的PID控制参数为KP=0.002;KD=5;KI=0.000 000 09。按照以上参数,系统最终获得了很高的控制精度、更快的响应速度、更突出的控制稳定性,几乎能够完全抵抗外部的干扰。该仿真对拟人机器人手部控制节点的设计具有很重要的指导作用,同时该方法具有很强的普遍性,对于一般的直流电机的闭环控制也有一定的借鉴意义。