CN112051842A - 一种两轮自平衡移动机器人的越障运动控制方法 - Google Patents

一种两轮自平衡移动机器人的越障运动控制方法 Download PDF

Info

Publication number
CN112051842A
CN112051842A CN202010743358.9A CN202010743358A CN112051842A CN 112051842 A CN112051842 A CN 112051842A CN 202010743358 A CN202010743358 A CN 202010743358A CN 112051842 A CN112051842 A CN 112051842A
Authority
CN
China
Prior art keywords
encoder
mobile robot
target
speed
balancing mobile
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010743358.9A
Other languages
English (en)
Inventor
董辉
陈重
范永
丁鹏锋
吴祥
俞立
郭方洪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN202010743358.9A priority Critical patent/CN112051842A/zh
Publication of CN112051842A publication Critical patent/CN112051842A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle

Abstract

本发明公开了一种两轮自平衡移动机器人的越障运动控制方法,包括定时读取两轮自平衡移动机器人左右轮轴分别对应的编码器的数值,并根据编码器的数值计算得到左右轮的移动速度;根据左右轮的移动速度得到两轮自平衡移动机器人的目标脉冲数;基于获取的编码器的数值以及计算得到的目标脉冲数,利用速度环PI控制器输出速度调节输出量,实现两轮自平衡移动机器人的越障运动控制。本发明能够实现两轮自平衡移动机器人的稳定爬坡越障。

Description

一种两轮自平衡移动机器人的越障运动控制方法
技术领域
本申请属于信息电子控制技术领域,具体涉及一种两轮自平衡移动机器人的越障运动控制方法。
背景技术
两轮自平衡移动机器人在维持平衡的过程中,分为角度环和速度环两部分。其中角度环通过PD控制维持平衡,其中输入量为陀螺仪给定的角度和角速度;速度环通过PI控制维持速度,其中输入量为安装在两个轮轴上的编码器反馈的脉冲。机器人在正常水平前进的过程中,只要使机器人的速度环PWM输出的过程中,计入一个目标速度脉冲值,就能够使机器人维持一个固定的速度前进。
由于陀螺仪是根据水平面作为参考平面,所以机器人在前进的过程中如果碰到障碍需要上坡,当坡面的坡度较小时,两轮自平衡移动机器人结合速度控制也能够勉强通过,但是当坡面的坡度较大时,陀螺仪采集的数据无法正确反映当前机器人所处情况,此时机器人无法根据陀螺仪的数据在维持平衡的状态下上坡。
现有技术中针对两轮自平衡移动机器人上坡情况,采用的一种常规的处理方法是在机器人到达小坡前增加机器人的前进速度,使机器人冲上小坡。但是这样的方法会使机器人在上坡过程中的速度处于不可控的状态。
发明内容
本申请的目的在于提供一种两轮自平衡移动机器人的越障运动控制方法,实现两轮自平衡移动机器人的稳定爬坡越障。
为实现上述目的,本申请所采取的技术方案为:
一种两轮自平衡移动机器人的越障运动控制方法,所述两轮自平衡移动机器人的左右轮轴上分别安装有编码器,所述两轮自平衡移动机器人的越障运动控制方法,包括:
步骤S1、定时读取两轮自平衡移动机器人左右轮轴分别对应的编码器的数值,并根据编码器的数值计算得到左右轮的移动速度;
步骤S2、根据左右轮的移动速度得到两轮自平衡移动机器人的目标脉冲数,包括:
根据左右轮的移动速度计算两轮自平衡移动机器人当前t时刻的平均速度pV(t):
Figure BDA0002607476930000021
其中,Left_Velocity(t)为当前t时刻两轮自平衡移动机器人左轮的移动速度,Right_Velocity(t)为当前t时刻两轮自平衡移动机器人右轮的移动速度;
计算目标速度与当前t时刻的平均速度的差值EV(t):
EV(t)=sV-pV(t)
其中,sV为两轮自平衡移动机器人的目标速度,pV(t)为两轮自平衡移动机器人当前t时刻的平均速度;
则计算得到两轮自平衡移动机器人当前t时刻的目标脉冲数Target_Encoder(t)如下:
Target_Encoder(t)
=vKp×[EV(t)-EV(t-1)]+vKi×EV(t)+vKd×[EV(t)-2EV(t-1)+EV(t-2)]
其中,vKp、vKi、vKd分别为计算目标脉冲数的比例系数、积分系数和微分系数,EV(t-1)为目标速度与两轮自平衡移动机器人在t-1时刻的平均速度的差值,EV(t-2)为目标速度与两轮自平衡移动机器人在t-2时刻的平均速度的差值;
步骤S3、基于获取的编码器的数值以及计算得到的目标脉冲数,利用速度环PI控制器输出速度调节输出量,实现两轮自平衡移动机器人的越障运动控制。
以下还提供了若干可选方式,但并不作为对上述总体方案的额外限定,仅仅是进一步的增补或优选,在没有技术或逻辑矛盾的前提下,各可选方式可单独针对上述总体方案进行组合,还可以是多个可选方式之间进行组合。
作为优选,所述两轮自平衡移动机器人的越障运动控制方法还包括角度环PD控制器,所述角度环PD控制器基于陀螺仪采集到的两轮自平衡移动机器人的角度和角速度计算角度调节输出量,实现两轮自平衡移动机器人的越障运动控制;
其中,角度调节输出量Balance_PWM的计算公式如下:
Balance_PWM=Balance_Kp×Angle+Balance_Kd×Gyro
其中,Balance_Kp为角度环PD控制器的比例系数,Angle为陀螺仪采集到的两轮自平衡移动机器人当前的角度,Balance_Kd为角度环PD控制器的微分系数,Gyro为陀螺仪采集到的两轮自平衡移动机器人当前的角速度。
作为优选,所述步骤3基于获取的编码器的数值以及计算得到的目标脉冲数,利用速度环PI控制器输出速度调节输出量,包括:
计算两轮自平衡移动机器人当前t时刻的脉冲数差值:
Figure BDA0002607476930000031
其中,CarSpeed(t)为目标脉冲数与两轮自平衡移动机器人当前t时刻平均脉冲数的差值,Left_Encoder(t)为左轮轴对应的编码器的数值,Right_Encoder(t)为右轮轴对应的编码器的数值,Target_Encoder(t)为当前t时刻的目标脉冲数;
因此计算速度调节输出量的公式如下:
Figure BDA0002607476930000032
其中,Balance_PWM(t)为当前t时刻速度环PI控制器输出的速度调节输出量,Speed_Kp为速度环PI控制器的比例系数,Speed_Ki为速度环PI控制器的积分系数。
作为优选,所述步骤S1中根据编码器的数值计算得到左右轮的移动速度,包括:
首先读取单个轮胎旋转一圈时编码器的数值,即单个轮胎旋转一圈时编码器发送的总脉冲数OneCircle_Encoder;
然后计算单个轮胎旋转一度角时编码器发送的脉冲数:
Figure BDA0002607476930000033
其中,OneDegreeAngle_Encoder为单个轮胎旋转一度角时编码器的数值;
根据定时读取的左右轮轴分别对应的编码器的数值,计算一个数据采集周期内轮胎转动的距离:
Figure BDA0002607476930000034
Figure BDA0002607476930000035
Figure BDA0002607476930000041
Figure BDA0002607476930000042
其中,Left_Angle(t)为当前t时刻对应的数据采集周期内左轮轮胎转动的角度,Right_Angle(t)为当前t时刻对应的数据采集周期内右轮轮胎转动的角度,Left_Distance(t)为当前t时刻对应的数据采集周期内左轮轮胎转动的距离,Right_Distance(t)为当前t时刻对应的数据采集周期内右轮轮胎转动的距离;
因此计算得到左右轮的移动速度如下:
Figure BDA0002607476930000043
Figure BDA0002607476930000044
其中,Left_Velocity(t)为当前t时刻两轮自平衡移动机器人左轮的移动速度,Right_Velocity(t)为当前t时刻两轮自平衡移动机器人右轮的移动速度,dt为定时读取编码器数值的数据采集周期。
作为优选,所述步骤S2还包括对目标脉冲数进行修正,所述对目标脉冲数进行修正包括以下步骤:
设定目标脉冲数的最大值Target_Encoder_Max为:
Target_Encoder_Max=α×PWM_Out_Max
其中,PWM_Out_Max为两轮自平衡移动机器人电机输出的最大PWM值,α为比重,并且Target_Encoder_Max取值的正负与Target_Encoder(t)取值的正负相同;
因此修正目标脉冲数为:
若|Target_Encoder_Max|≥|Target_Encoder(t)|,则修正为:
Target_Encoder(t)=Target_Encoder(t-1)+Target_Encoder_Max;
若|Target_Encoder_Max|<|Target_Encoder(t)|,则修正为:
Target_Encoder(t)=Target_Encoder(t-1)+Target_Encoder(t)。
本申请提供的两轮自平衡移动机器人的越障运动控制方法,经过对两轮自平衡移动机器人左右轮编码器数据的采集计算出机器人前进的距离以及当前的移动速度,在机器人上坡的时候,不断地对当前的速度进行判断,并且根据速度不断改变目标速度脉冲数的大小,使机器人平稳顺利上坡。
附图说明
图1为本申请的两轮自平衡移动机器人的越障运动控制方法流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本申请。
本实施例提供的一种两轮自平衡移动机器人的越障运动控制方法,能完成两轮自平衡移动机器人在速度可控的情况下稳定爬坡越障。
容易理解的是,本实施例重点在于对两轮自平衡移动机器人的控制,对于两轮自平衡移动机器人的具体结构不展开描述,所使用的两轮自平衡移动机器人具有常规结构,例如分别安装在左右轮轴上的编码器,安装在两轮自平衡移动机器人上的陀螺仪等。
本实施例的两轮自平衡移动机器人(简称机器人)由PID控制器实现自平衡,PID控制器包括角度环PD控制器和速度环PI控制器。通过角度环PD控制器可以控制机器人对角度的反应速度,速度环PI控制器可以控制机器人对转速的反应速度。
即本实施例的两轮自平衡移动机器人的越障运动控制方法包括角度控制和速度控制。其中角度控制采用常规的PD环即可实现。本实施例提供一种优选的角度控制方法如下所示:
角度环PD控制器基于陀螺仪采集到的两轮自平衡移动机器人的角度和角速度计算角度调节输出量,实现两轮自平衡移动机器人的越障运动控制。并且本实施例中设定机器人向前倾斜,陀螺仪采集到的角度和角速度为正;机器人向后倾斜,陀螺仪采集到的角度和角速度为负。当然在其他实施例中还可以相反设置。
其中,角度调节输出量Balance_PWM(即为角度环PD控制器最终输出的PWM波大小)的计算公式如下:
Balance_PWM=Balance_Kp×Angle+Balance_Kd×Gyro
其中,Balance_Kp为角度环PD控制器的比例系数,Angle为陀螺仪采集到的两轮自平衡移动机器人当前的角度,Balance_Kd为角度环PD控制器的微分系数,Gyro为陀螺仪采集到的两轮自平衡移动机器人当前的角速度。
对于机器人上坡时的状态调节而言,速度调节尤为重要,因此如图1所示,本实施例的两轮自平衡移动机器人的越障运动控制方法,对于速度调节部分而言包括以下步骤:
步骤S1、定时读取两轮自平衡移动机器人左右轮轴分别对应的编码器的数值,并根据编码器的数值计算得到左右轮的移动速度。
为了控制两轮自平衡移动机器人计算量,并且为了反映两轮自平衡移动机器人的状态变化,本实施例定时读取编码器的数值(即脉冲数),即本实施例设有数据采集周期,并且陀螺仪和编码器的数据采集周期可以是相同的,也可以是不同的。例如本实施例设置角度环PD控制器每5ms进行一次数据采集计算,速度环PI控制器每40ms进行一次数据采集计算。
如果只是需要维持平衡,则直接使用从编码器获取的脉冲数即可,但是由于该数值与实际物理量不对应,若需要知道机器人当前具体的移动速度,则需要将脉冲数转换为轮胎实际的移动速度。
在根据编码器的数值计算左右轮对应的移动速度时,基于左右轮的基本结构特性即可完成。本实施例提供的一种计算方法如下:
首先读取单个轮胎旋转一圈时编码器的数值,即单个轮胎旋转一圈时编码器发送的总脉冲数OneCircle_Encoder。
然后计算单个轮胎旋转一度角时编码器发送的脉冲数:
Figure BDA0002607476930000061
其中,OneDegreeAngle_Encoder为单个轮胎旋转一度角时编码器的数值。
根据定时读取的左右轮轴分别对应的编码器的数值,计算一个数据采集周期内轮胎转动的距离:
Figure BDA0002607476930000062
Figure BDA0002607476930000063
Figure BDA0002607476930000071
Figure BDA0002607476930000072
其中,Left_Encoder(t)为当前t时刻对应的数据采集周期内左轮轴对应的编码器的数值,Right_Encoder(t)为当前t时刻对应的数据采集周期内右轮轴对应的编码器的数值,Left_Angle(t)为当前t时刻对应的数据采集周期内左轮轮胎转动的角度,Right_Angle(t)为当前t时刻对应的数据采集周期内右轮轮胎转动的角度,Tire_Dianeter为两轮自平衡移动机器人轮胎的直径,Left_Distance(t)为当前t时刻对应的数据采集周期内左轮轮胎转动的距离,Right_Distance(t)为当前t时刻对应的数据采集周期内右轮轮胎转动的距离。
因此计算得到左右轮的移动速度如下:
Figure BDA0002607476930000073
Figure BDA0002607476930000074
其中,Left_Velocity(t)为当前t时刻两轮自平衡移动机器人左轮的移动速度,Right_Velocity(t)为当前t时刻两轮自平衡移动机器人右轮的移动速度,dt为定时读取编码器数值的数据采集周期。数据采集周期为一个预设周期,每一个数据采集周期内累积编码器的数值,并在一个数据周期结束后读取累积的编码器的数值,因此本实施例中t时刻对应的数据采集周期可以理解为该数据采集周期的结束时刻为t时刻,t时刻读取的为这一整个数据采集周期内的数值。
步骤S2、根据左右轮的移动速度得到两轮自平衡移动机器人的目标脉冲数。
首先根据左右轮的移动速度计算两轮自平衡移动机器人当前t时刻的平均速度pV(t):
Figure BDA0002607476930000075
其中,Left_Velocity(t)为当前t时刻两轮自平衡移动机器人左轮的移动速度,Right_Velocity(t)为当前t时刻两轮自平衡移动机器人右轮的移动速度。
通过上述计算,即可得到机器人越障上坡的过程中的上坡速度。由于固定的目标脉冲数无法满足机器人上坡时的速度控制,因此本实施例根据机器人上坡时的平均速度动态调节目标脉冲数,在保证机器人的速度可控的情况下,实现机器人的稳定上坡。具体调节过程如下:
计算目标速度与当前t时刻的平均速度的差值EV(t):
EV(t)=sV-pV(t)
其中,sV为两轮自平衡移动机器人的目标速度,目标速度为两轮自平衡移动机器人运动中一个预设的固定值,pV(t)为两轮自平衡移动机器人当前t时刻的平均速度。
则计算得到两轮自平衡移动机器人当前t时刻的目标脉冲数Target_Encoder(t)如下:
Target_Encoder(t)
=vKp×[EV(t)-EV(t-1)]+vKi×EV(t)+vKd×[EV(t)-2EV(t-1)+EV(t-2)]
其中,vKp、vKi、vKd分别为计算目标脉冲数的比例系数、积分系数和微分系数,EV(t-1)为目标速度与两轮自平衡移动机器人在t-1时刻的平均速度的差值,EV(t-2)为目标速度与两轮自平衡移动机器人在t-2时刻的平均速度的差值。上述调节过程可以对机器人实际的上坡速度和目标速度进行对比判断。采用增量式PID,通过比例环节可以使系统对机器人的速度误差做出反应,通过积分环节可以消除系统的稳态误差,通过微分环节可以让系统对速度误差具有更快的反应,以保证两轮自平衡移动机器人能够稳定越障运动。
在参数调节过程中,若Target_Encoder单次数值变化超过电机总的PWM输出最大值PWM_Out_Max的5%时,会对机器人的平衡造成一定影响,产生抖动。因此为了防止该问题的出现,在一实施例中,计算得到两轮自平衡移动机器人的目标脉冲数后,还需要对目标脉冲数进行修正,修正过程包括以下步骤:
设定目标脉冲数的最大值Target_Encoder_Max为:
Target_Encoder_Max=α×PWM_Out_Max
其中,PWM_Out_Max为两轮自平衡移动机器人电机输出的最大PWM值,α为比重,本实施例中取5%。并且Target_Encoder_Max取值的正负与Target_Encoder取值的正负相同。
因此修正目标脉冲数为:
若|Target_Encoder_Max|≥|Target_Encoder(t)|,则修正为:
Target_Encoder(t)=Target_Encoder(t-1)+Target_Encoder_Max。
若|Target_Encoder_Max|<|Target_Encoder(t)|,则修正为:
Target_Encoder(t)=Target_Encoder(t-1)+Target_Encoder(t)。
对目标脉冲数进行修正,不仅能降低机器人速度控制过程中产生的抖动,还可以有效防止机器人速度控制过程中出现速度失控的现象。
步骤S3、基于获取的编码器的数值以及计算得到的目标脉冲数,利用速度环PI控制器输出速度调节输出量,实现两轮自平衡移动机器人的越障运动控制。
利用速度环PI控制器输出速度调节输出量,即通过PI控制计算得到速度调节的输出量,本实施例中提供的计算过程如下:
计算两轮自平衡移动机器人当前t时刻的脉冲数差值:
Figure BDA0002607476930000091
其中,CarSpeed(t)为目标脉冲数与两轮自平衡移动机器人当前t时刻平均脉冲数的差值,Left_Encoder(t)为左轮轴对应的编码器的数值,Right_Encoder(t)为右轮轴对应的编码器的数值,Target_Encoder(t)为当前t时刻的目标脉冲数。其中,Target_Encoder(t)为正,则机器人向前移动;Target_Encoder(t)为负,则机器人向后移动。
因此计算速度调节输出量(即速度环PI控制器输出的PWM波大小)的公式如下:
Figure BDA0002607476930000092
其中,Balance_PWM(t)为当前t时刻速度环PI控制器输出的速度调节输出量,Speed_Kp为速度环PI控制器的比例系数,Speed_Ki为速度环PI控制器的积分系数。
需要说明的是,本实施例中不具有“(t)”的表达式表示通用含义,具有“(t)”的表达式表示在通用含义的基础上加上t时刻的限定,并且两种表示方法可以相互推导。例如Target_Encoder表示目标脉冲数,Target_Encoder(t)表示t时刻的目标脉冲数,由Target_Encoder(t)的计算过程即可推导Target_Encoder的计算过程,反向亦可推导。
本实施例通过计算目标脉冲数的大小改变机器人车轮在上坡时的输出功率,当机器人当前平均速度小于机器人目标速度时就增大电机的输出功率,以提高机器人的前进速度;反之当前平均速度大于机器人目标速度时就减小电机的输出功率,以降低机器人的前进速度。最终实现机器人在越障上坡过程中的当前平均速度将基本稳定在目标速度附近,实现了机器人越障上坡情况下的速度控制。
本实施例的两轮自平衡移动机器人的越障运动控制方法,在速度调节时考虑到实际越障爬坡过程中由于地形、机器人自身重心、角度控制器干扰等因素的影响,给定的固定的目标脉冲数时,机器人的实际移动速度并不是系统所期望的目标速度,因此本实施例以机器人在越障上坡过程中的实际速度作为输入量,以此来调节目标脉冲数的大小,保证机器人在越障上坡时的实际移动速度能够维持在系统目标速度的附近。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (5)

1.一种两轮自平衡移动机器人的越障运动控制方法,其特征在于,所述两轮自平衡移动机器人的左右轮轴上分别安装有编码器,所述两轮自平衡移动机器人的越障运动控制方法,包括:
步骤S1、定时读取两轮自平衡移动机器人左右轮轴分别对应的编码器的数值,并根据编码器的数值计算得到左右轮的移动速度;
步骤S2、根据左右轮的移动速度得到两轮自平衡移动机器人的目标脉冲数,包括:
根据左右轮的移动速度计算两轮自平衡移动机器人当前t时刻的平均速度pV(t):
Figure FDA0002607476920000011
其中,Left_Velocity(t)为当前t时刻两轮自平衡移动机器人左轮的移动速度,Right_Velocity(t)为当前t时刻两轮自平衡移动机器人右轮的移动速度;
计算目标速度与当前t时刻的平均速度的差值EV(t):
EV(t)=sV-pV(t)
其中,sV为两轮自平衡移动机器人的目标速度,pV(t)为两轮自平衡移动机器人当前t时刻的平均速度;
则计算得到两轮自平衡移动机器人当前t时刻的目标脉冲数Target_Encoder(t)如下:
Target_Encoder(t)
=vKp×[EV(t)-EV(t-1)]+vKi×EV(t)+vKd×[EV(t)-2EV(t-1)+EV(t-2)]
其中,vKp、vKi、vKd分别为计算目标脉冲数的比例系数、积分系数和微分系数,EV(t-1)为目标速度与两轮自平衡移动机器人在t-1时刻的平均速度的差值,EV(t-2)为目标速度与两轮自平衡移动机器人在t-2时刻的平均速度的差值;
步骤S3、基于获取的编码器的数值以及计算得到的目标脉冲数,利用速度环PI控制器输出速度调节输出量,实现两轮自平衡移动机器人的越障运动控制。
2.如权利要求1所述的两轮自平衡移动机器人的越障运动控制方法,其特征在于,所述两轮自平衡移动机器人的越障运动控制方法还包括角度环PD控制器,所述角度环PD控制器基于陀螺仪采集到的两轮自平衡移动机器人的角度和角速度计算角度调节输出量,实现两轮自平衡移动机器人的越障运动控制;
其中,角度调节输出量Balance_PWM的计算公式如下:
Balance_PWM=Balance_Kp×Angle+Balance_Kd×Gyro
其中,Balance_Kp为角度环PD控制器的比例系数,Angle为陀螺仪采集到的两轮自平衡移动机器人当前的角度,Balance_Kd为角度环PD控制器的微分系数,Gyro为陀螺仪采集到的两轮自平衡移动机器人当前的角速度。
3.如权利要求1所述的两轮自平衡移动机器人的越障运动控制方法,其特征在于,所述步骤3基于获取的编码器的数值以及计算得到的目标脉冲数,利用速度环PI控制器输出速度调节输出量,包括:
计算两轮自平衡移动机器人当前t时刻的脉冲数差值:
Figure FDA0002607476920000021
其中,CarSpeed(t)为目标脉冲数与两轮自平衡移动机器人当前t时刻平均脉冲数的差值,Left_Encoder(t)为左轮轴对应的编码器的数值,Right_Encoder(t)为右轮轴对应的编码器的数值,Target_Encoder(t)为当前t时刻的目标脉冲数;
因此计算速度调节输出量的公式如下:
Figure FDA0002607476920000022
其中,Balance_PWM(t)为当前t时刻速度环PI控制器输出的速度调节输出量,Speed_Kp为速度环PI控制器的比例系数,Speed_Ki为速度环PI控制器的积分系数。
4.如权利要求1所述的两轮自平衡移动机器人的越障运动控制方法,其特征在于,所述步骤S1中根据编码器的数值计算得到左右轮的移动速度,包括:
首先读取单个轮胎旋转一圈时编码器的数值,即单个轮胎旋转一圈时编码器发送的总脉冲数OneCircle_Encoder;
然后计算单个轮胎旋转一度角时编码器发送的脉冲数:
Figure FDA0002607476920000023
其中,OneDegreeAngle_Encoder为单个轮胎旋转一度角时编码器的数值;
根据定时读取的左右轮轴分别对应的编码器的数值,计算一个数据采集周期内轮胎转动的距离:
Figure FDA0002607476920000031
Figure FDA0002607476920000032
Figure FDA0002607476920000033
Figure FDA0002607476920000034
其中,Left_Encoder(t)为当前t时刻对应的数据采集周期内左轮轴对应的编码器的数值,Right_Encoder(t)为当前t时刻对应的数据采集周期内右轮轴对应的编码器的数值,Left_Angle(t)为当前t时刻对应的数据采集周期内左轮轮胎转动的角度,Right_Angle(t)为当前t时刻对应的数据采集周期内右轮轮胎转动的角度,Tire_Dianeter为两轮自平衡移动机器人轮胎的直径,Left_Distance(t)为当前t时刻对应的数据采集周期内左轮轮胎转动的距离,Right_Distance(t)为当前t时刻对应的数据采集周期内右轮轮胎转动的距离;
因此计算得到左右轮的移动速度如下:
Figure FDA0002607476920000035
Figure FDA0002607476920000036
其中,Left_Velocity(t)为当前t时刻两轮自平衡移动机器人左轮的移动速度,Right_Velocity(t)为当前t时刻两轮自平衡移动机器人右轮的移动速度,dt为定时读取编码器数值的数据采集周期。
5.如权利要求1所述的两轮自平衡移动机器人的越障运动控制方法,其特征在于,所述步骤S2还包括对目标脉冲数进行修正,所述对目标脉冲数进行修正包括以下步骤:
设定目标脉冲数的最大值Target_Encoder_Max为:
Target_Encoder_Max=α×PWM_Out_Max
其中,PWM_Out_Max为两轮自平衡移动机器人电机输出的最大PWM值,α为比重,并且Target_Encoder_Max取值的正负与Target_Encoder(t)取值的正负相同;
因此修正目标脉冲数为:
若|Target_Encoder_Max|≥|Target_Encoder(t)|,则修正为:
Target_Encoder(t)=Target_Encoder(t-1)+Target_Encoder_Max;
若|Target_Encoder_Max|<|Target_Encoder(t)|,则修正为:
Target_Encoder(t)=Target_Encoder(t-1)+Target_Encoder(t)。
CN202010743358.9A 2020-07-29 2020-07-29 一种两轮自平衡移动机器人的越障运动控制方法 Pending CN112051842A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010743358.9A CN112051842A (zh) 2020-07-29 2020-07-29 一种两轮自平衡移动机器人的越障运动控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010743358.9A CN112051842A (zh) 2020-07-29 2020-07-29 一种两轮自平衡移动机器人的越障运动控制方法

Publications (1)

Publication Number Publication Date
CN112051842A true CN112051842A (zh) 2020-12-08

Family

ID=73601557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010743358.9A Pending CN112051842A (zh) 2020-07-29 2020-07-29 一种两轮自平衡移动机器人的越障运动控制方法

Country Status (1)

Country Link
CN (1) CN112051842A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112578712A (zh) * 2020-12-15 2021-03-30 天津城建大学 一种两轮机器人运动及控制方法
CN113219973A (zh) * 2021-05-08 2021-08-06 浙江工业大学 一种移动机器人的高效性局部路径控制方法
CN117234069A (zh) * 2023-11-16 2023-12-15 小神童创新科技(广州)有限公司 一种轮椅的坡道行驶速度智能控制系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103010360A (zh) * 2011-09-26 2013-04-03 东莞易步机器人有限公司 一种自平衡两轮车的运动控制方法
CN104298113A (zh) * 2014-10-22 2015-01-21 五邑大学 两轮机器人自适应模糊平衡控制器
CN109240305A (zh) * 2018-10-19 2019-01-18 广州大学华软软件学院 基于互补滤波的两轮机器人运动控制系统及方法
CN110001840A (zh) * 2019-03-12 2019-07-12 浙江工业大学 一种基于视觉传感器的多种路况下的两轮自平衡车运动控制方法
CN110580844A (zh) * 2018-09-05 2019-12-17 南京科青信息科技有限公司 两轮机器人自平衡控制方法、装置、计算机设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103010360A (zh) * 2011-09-26 2013-04-03 东莞易步机器人有限公司 一种自平衡两轮车的运动控制方法
CN104298113A (zh) * 2014-10-22 2015-01-21 五邑大学 两轮机器人自适应模糊平衡控制器
CN110580844A (zh) * 2018-09-05 2019-12-17 南京科青信息科技有限公司 两轮机器人自平衡控制方法、装置、计算机设备和存储介质
CN109240305A (zh) * 2018-10-19 2019-01-18 广州大学华软软件学院 基于互补滤波的两轮机器人运动控制系统及方法
CN110001840A (zh) * 2019-03-12 2019-07-12 浙江工业大学 一种基于视觉传感器的多种路况下的两轮自平衡车运动控制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
姜涛: ""两轮自平衡移动机器人系统设计"", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112578712A (zh) * 2020-12-15 2021-03-30 天津城建大学 一种两轮机器人运动及控制方法
CN112578712B (zh) * 2020-12-15 2023-10-13 天津城建大学 一种两轮机器人运动及控制方法
CN113219973A (zh) * 2021-05-08 2021-08-06 浙江工业大学 一种移动机器人的高效性局部路径控制方法
CN113219973B (zh) * 2021-05-08 2022-06-24 浙江工业大学 一种移动机器人的局部路径控制方法
CN117234069A (zh) * 2023-11-16 2023-12-15 小神童创新科技(广州)有限公司 一种轮椅的坡道行驶速度智能控制系统
CN117234069B (zh) * 2023-11-16 2024-01-26 小神童创新科技(广州)有限公司 一种轮椅的坡道行驶速度智能控制系统

Similar Documents

Publication Publication Date Title
CN112051842A (zh) 一种两轮自平衡移动机器人的越障运动控制方法
CN108153145B (zh) 一种基于pid和滤波算法的列车速度自动控制方法
CN109795502B (zh) 智能电动汽车路径跟踪模型预测控制方法
TWI764773B (zh) 自行車用控制裝置
Ryll et al. First flight tests for a quadrotor UAV with tilting propellers
JP4434186B2 (ja) 移動体及び移動体の制御方法
CN103010360B (zh) 一种自平衡两轮车的运动控制方法
JP7014867B2 (ja) 自転車用制御装置
CN112519882A (zh) 一种车辆参考轨迹跟踪方法及系统
MXPA01009342A (es) Sistema y metodo de control para silla de reudas.
CN108488572A (zh) 一种主动式防抖云台及其控制方法
MXPA01012232A (es) Sistema y metodo de programacion de control.
EP3583020B1 (en) System for controlling the electric motor of a pedal-assisted bicycle
JP2005145293A (ja) 前輪の接地と浮遊が切換え可能な走行体および走行状態切換え方法
CN111071063B (zh) 车速控制方法以及具有车速控制功能的机动车
CN117104021A (zh) 一种车辆扭矩控制方法、装置、系统及车辆
CN111669096B (zh) 控制设备平衡的方法和装置
CN112109561B (zh) 控制纵向两轮车平衡的方法和装置
CN103019246A (zh) 一种两轮车的姿态控制方法
CN205665589U (zh) 一种基于面阵ccd传感器的循迹系统
CN109795337B (zh) 一种基于车轮转速控制的分布式车辆纵向控制方法
CN114684109A (zh) 一种电动汽车横摆稳定性控制方法及装置
CN113942781B (zh) 确定输送系统选型数据的方法和设备以及计算机可读存储介质
CN204077407U (zh) 速度信号处理输出信号的电压差分控制助力系统
CN117471972A (zh) 一种自平衡主动规划路线智能单车控制方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201208