CN106926900B - 转向控制方法、装置及双轮机器人 - Google Patents
转向控制方法、装置及双轮机器人 Download PDFInfo
- Publication number
- CN106926900B CN106926900B CN201710193147.0A CN201710193147A CN106926900B CN 106926900 B CN106926900 B CN 106926900B CN 201710193147 A CN201710193147 A CN 201710193147A CN 106926900 B CN106926900 B CN 106926900B
- Authority
- CN
- China
- Prior art keywords
- steering control
- wheel motor
- control output
- calculating
- steering
- 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.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D11/00—Steering non-deflectable wheels; Steering endless tracks or the like
- B62D11/001—Steering non-deflectable wheels; Steering endless tracks or the like control systems
- B62D11/003—Electric or electronic control systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D11/00—Steering non-deflectable wheels; Steering endless tracks or the like
- B62D11/02—Steering non-deflectable wheels; Steering endless tracks or the like by differentially driving ground-engaging elements on opposite vehicle sides
- B62D11/04—Steering non-deflectable wheels; Steering endless tracks or the like by differentially driving ground-engaging elements on opposite vehicle sides by means of separate power sources
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/60—Other road transportation technologies with climate change mitigation effect
- Y02T10/72—Electric energy management in electromobility
Landscapes
- Engineering & Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Motorcycle And Bicycle Frame (AREA)
Abstract
本发明公开了一种转向控制方法、装置及双轮机器人,该双轮机器人具有左轮电机和右轮电机,该转向控制方法包括:计算左轮电机与右轮电机之间的实际转速差值的绝对值;计算该绝对值与预设的目标转速差值之间的偏差值;根据该偏差值确定转向控制环的比例项;根据该比例项确定转向控制环的转向控制输出量;在当前转动方向为向左转向时,增加转向控制输出量来调节用于驱动右轮电机的PWM信号,同时减少转向控制输出量来调节用于驱动左轮电机的PWM信号;在当前转动方向为向右转向时,增加转向控制输出量来调节用于驱动左轮电机的PWM信号,同时减少转向控制输出量来调节用于驱动右轮电机的PWM信号。
Description
技术领域
本发明涉及双轮机器人技术领域,更具体地,本发明涉及一种用于双轮机器人的转向控制方法、一种用于双轮机器人的转向控制装置、及一种双轮机器人。
背景技术
当前,两轮呈左右对称分布的移动式机器人已被广泛应用在各个领域,例如娱乐类的双轮机器人。该种双轮机器人的左、右轮各由一个电机驱动,并依靠左、右轮的差速实现转向。双轮机器人的典型控制系统具有两个控制环,分别为速度控制环和直立控制环,该种结构虽然比较简单,但是,当左、右轮的差速过小时,便会出现转不动甚至抖动的状况,而当左、右轮的差速过大时,又会出现转向跌倒的状况,该种现象在双轮机器人处于负重的状态下将更加明显。
发明内容
本发明实施例的一个目的是提供一种用于双轮机器人的转向控制的新的技术方案。
根据本发明的第一方面,提供了一种用于双轮机器人的转向控制方法,所述双轮机器人具有左轮电机和右轮电机,所述转向控制方法包括:
计算所述左轮电机与所述右轮电机之间的实际转速差值的绝对值;
计算所述绝对值与预设的目标转速差值之间的偏差值;
根据所述偏差值确定转向控制环的比例项;
根据所述比例项,确定所述转向控制环的转向控制输出量;
确定所述双轮机器人的当前转动方向;
如果所述当前转动方向为向左转向,增加所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号;
如果所述当前转动方向为向右转向,增加所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号。
可选的是,所述方法还包括:
接收陀螺仪提供的所述双轮机器人绕竖直轴转动的角速度值;
计算所述转向控制环的微分项等于微分时间乘以所述角速度值;
所述根据所述比例项,确定所述转向控制环的转向控制输出量进一步为:
根据所述比例项和所述微分项,确定所述转向控制输出量。
可选的是,所述根据所述比例项和所述微分项,确定所述转向控制输出量进一步为:
确定所述转向控制输出量等于所述比例项与所述微分项之和。
可选的是,所述计算所述左轮电机与所述右轮电机之间的实际转速差值的绝对值包括:
接收左轮电机的编码器输出的左轮脉冲信号,并计算所述左轮脉冲信号的脉冲数作为左轮脉冲数;
接收右轮电机的编码器输出的右轮脉冲信号,并计算所述右轮脉冲信号的脉冲数作为右轮脉冲数;
计算所述左轮脉冲数与所述右轮脉冲数的差值的绝对值作为所述实际转速差值的绝对值。
根据本发明的第二方面,还提供了一种用于双轮机器人的转向控制装置,所述双轮机器人具有左轮电机和右轮电机,所述转向控制装置包括:
实际转速差值计算模块,用于计算所述左轮电机与所述右轮电机之间的实际转速差值的绝对值;
偏差计算模块,用于计算所述绝对值与预设的目标转速差值之间的偏差值;
比例计算模块,用于根据所述偏差值确定转向控制环的比例项;
输出量计算模块,用于根据所述比例项,确定所述转向控制环的转向控制输出量;
转向确定模块,用于确定所述双轮机器人的当前转动方向;
执行模块,用于在所述当前转动方向为向左转向时,增加所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号;及用于在所述当前转动方向为向右转向时,增加所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号。
可选的是,所述转向控制装置还包括:
微分计算模块,用于接收陀螺仪提供的所述双轮机器人绕竖直轴转动的角速度值,并计算所述转向控制环的微分项等于微分时间乘以所述角速度值;
所述输出量计算模块进一步用于根据所述比例项和所述微分项,确定所述转向控制输出量。
可选的是,所述输出量计算模块进一步用于确定所述转向控制输出量等于所述比例项与所述微分项之和。
可选的是,所述实际转速差值计算模块包括:
左轮脉冲数计算单元,用于接收左轮电机的编码器输出的左轮脉冲信号,并计算所述左轮脉冲信号的脉冲数作为左轮脉冲数;
右轮脉冲数计算单元,用于接收右轮电机的编码器输出的右轮脉冲信号,并计算所述右轮脉冲信号的脉冲数作为右轮脉冲数;
差值计算单元,用于计算所述左轮脉冲数与所述右轮脉冲数的差值的绝对值作为所述实际转速差值的绝对值。
根据本发明的第三方面,还提供了一种用于双轮机器人的转向控制装置,包括存储器和处理器,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据本发明的第一方面所述的转向控制方法。
根据本发明的第四方面,还提供了一种双轮机器人,所述双轮机器人具有左轮电机和右轮电机,所述双轮机器人的控制系统包括根据本发明的第二方面或者根据本发明的第三方面所述的转向控制装置。
本发明的一个有益效果在于,本发明转向控制方法、装置能够在现有速度控制环和直立控制环的基础上,直接对左轮电机与右轮电机之间的实际转速差值进行调节,使得二者之间的实际转速差值能够达到预设的目标转速差值,这样,在双轮机器人转向时,就不会因两轮的实际转速差值过小而发生抖动问题,也不会因两轮的差速过大而会出现转向跌倒的问题,提高双轮机器人的转向稳定性。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1为根据本发明的转向控制方法的一种实施例的流程示意图;
图2为根据本发明的转向控制方法的另一种实施例的流程示意图;
图3为根据本发明的转向控制装置的一种实施例的方框原理图;
图4为图3中实际转速差值计算模块的一种实施例的方框原理图;
图5为根据本发明的转向控制装置的另一种实施例的方框原理图;
图6为根据本发明的转向控制装置的一种硬件结构的方框原理图;
图7为根据本发明双轮机器人的运动控制系统的一种实施例的方框原理图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1是根据本发明的用于双轮机器人的转向控制方法的一种实施例在一个调节周期的流程示意图。
根据图1所示,本发明转向控制方法可以包括如下步骤:
步骤S110,计算左轮电机与右轮电机之间的实际转速差值的绝对值VR。
双轮机器人的左、右轮各由一个电机驱动,两个电机分别为左轮电机和右轮电机。
左轮电机的实际转速可以根据左轮电机的编码器输出的左轮脉冲信号确定。
同理,右轮电机的实际转速可以根据右轮电机的编码器输出的右轮脉冲信号确定。
为了简化计算,可以利用左轮脉冲信号的脉冲数表征左轮电机的实际转速,及利用右轮脉冲信号的脉冲数表征右轮电机的实际转速。
因此,该步骤S110可以进一步包括如下步骤:
步骤S111,接收左轮电机的编码器输出的左轮脉冲信号,并计算左轮脉冲信号的脉冲数作为左轮脉冲数。
步骤S112,接收右轮电机的编码器输出的右轮脉冲信号,并计算右轮脉冲信号的脉冲数作为右轮脉冲数。
步骤S113,计算左轮脉冲数与右轮脉冲数的差值的绝对值作为实际转速差值的绝对值VR。
步骤S120,计算绝对值与预设的目标转速差值VT之间的偏差值。
该目标转速差值VT可以根据实际测试确定,即测试得到使得双轮机器人能够顺畅转弯(不会出现抖动和跌倒问题)时的转速差值作为目标转速差值VT。
在测试时,可以设置N组测试,其中可以包括负重测试,N为大于或者等于2的整数,并根据N组测试结果的平均值确定目标转速差值VT。
该平均值可以为算术平均值,几何平均值,均方根平均值、调和平均值、或者加权平均值等。
步骤S130,根据偏差值确定转向控制环的比例项KP。
该比例项KP=P×(VR-VT) 公式(1);
其中,P为比例项的比例系数,可以为正数,也可以为负数。
步骤S140,根据上述比例项KP,确定转向控制环的转向控制输出量TCO。
根据本发明转向控制方法形成单独的转向控制环,通过该转向控制环与现有的速度控制环、直立控制环等共同作用可以在双轮机器人进行转向时实现更为稳定的转向控制。
根据该步骤S140,转向控制环的控制器至少包括比例项KP,在此可以选择控制器的类型,该控制器可以是P(比例)控制器、PI(比例、积分)控制器、PD(比例、微分)控制器、或者PID(比例、积分、微分)控制器。
步骤S150,确定双轮机器人的当前转动方向。
在自动运动模式下,该当前转动方向例如可以根据设定的运动程序确定。
在手动控制模式下,该当前转动方向例如可以根据输入(例如通过遥控器输入)的运动控制信号确定。
步骤S160,判断当前转动方向是否为向左转向,如是,则执行步骤S170,如否,则执行步骤S180。
步骤S170,增加所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号。
该步骤S170中的增加和减少均为绝对增加和绝对减少,即增加或者减少转向控制输出量的绝对数值。
在转向控制包括直立控制环和速度控制环的实施例中,该增加即为在直立控制环的控制输出量和速度控制环的控制输出量的基础上,增加转向控制输出量来调节用于驱动所述右轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号。
步骤S180,增加所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号。
在转向控制包括直立控制环和速度控制环的实施例中,该增加即为在直立控制环的控制输出量和速度控制环的控制输出量的基础上,增加转向控制输出量来调节用于驱动所述左轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号。
由此可见,本发明的转向控制方法是在现有速度控制环和直立控制环的基础上,直接对左轮电机与右轮电机之间的实际转速差值进行调节,以使二者之间的实际转速差值达到预设的目标转速差值,这样,在双轮机器人转向时,就不会因两轮的实际转速差值过小而发生抖动问题,也不会因两轮的差速过大而会出现转向跌倒的问题,有效提高了双轮机器人的转向稳定性。
图2是根据本发明的用于双轮机器人的转向控制方法的另一种实施例在一个调节周期的流程示意图。
根据图2所示,本实施例在图1所示实施例的基础上,还增加了如下步骤:
步骤S210,接收陀螺仪提供的双轮机器人绕竖直轴转动的角速度值。
该陀螺仪例如集成在六轴运动处理组件MPU6050中。
步骤S220,计算转向控制环的微分项KD等于微分时间乘以该角速度值。
该微分时间可以为正数,也可以为负数。
因此,图1实施例中步骤S140的根据比例项KP确定转向控制环的转向控制输出量将进一步为:
步骤S240,根据比例项KP和微分项KD确定转向控制输出量TCO。
在转向控制环采用PD控制器的实施例中,该转向控制输出量TCO可以等于比例项KP与微分项KD之和。
即TCO=KP+KD 公式(2)。
图3是根据本发明的用于双轮机器人的转向控制装置的一种实施例的方框原理图。
根据图3所示,该转向控制装置包括实际转速差值计算模块310、偏差计算模块320、比例计算模块330、输出量计算模块340、转向确定模块350、及执行模块360。
该实际转速差值计算模块310用于计算左轮电机与右轮电机之间的实际转速差值的绝对值。
该偏差计算模块320用于计算实际转速差值计算模块310提供的绝对值与预设的目标转速差值之间的偏差值。
该比例计算模块330用于根据偏差计算模块320提供的偏差值确定转向控制环的比例项。
该输出量计算模块340用于根据比例计算模块330提供的比例项,确定转向控制环的转向控制输出量。
该转向确定模块350用于确定双轮机器人的当前转动方向。
该执行模块360用于在当前转动方向为向左转向时,增加转向控制输出量来调节用于驱动所述右轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号;及用于在当前转动方向为向右转向时,增加所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号。
如图4所示,上述实际转速差值计算模块310可以进一步包括左轮脉冲数计算单元311、右轮脉冲数计算单元312、及差值计算单元313。
该左轮脉冲数计算单元311用于接收左轮电机的编码器输出的左轮脉冲信号,并计算左轮脉冲信号的脉冲数作为左轮脉冲数。
该右轮脉冲数计算单元312用于接收右轮电机的编码器输出的右轮脉冲信号,并计算所述右轮脉冲信号的脉冲数作为右轮脉冲数。
该差值计算单元313用于计算所述左轮脉冲数与所述右轮脉冲数的差值的绝对值作为实际转速差值的绝对值。
图5是根据本发明的用于双轮机器人的转向控制装置的另一种实施例的方框原理图。
该实施例与图3所示实施例的主要区别包括:该转向控制装置还包括微分计算模块510。
该微分计算模块510用于接收陀螺仪提供的双轮机器人绕竖直轴转动的角速度值,并计算转向控制环的微分项等于微分时间乘以该角速度值。
在该实施例中,输出量计算模块540进一步用于根据比例项和微分项,确定转向控制输出量。
在转向控制环采用PD控制器的具体实施例中,该输出量计算模块540可以进一步用于确定转向控制输出量等于比例项与微分项之和。
图6是根据本发明的转向控制装置的一种硬件结构的方框原理图。
根据图6所示,该转向控制装置包括至少一个存储器610和至少一个处理器620,至少一个存储器610用于存储指令,该指令用于控制至少一个处理器620进行操作以执行根据本发明实施例的任一种转向控制方法。
图7是根据本发明的双轮机器人的运动控制系统的一种实施例的方框原理图。
根据图7所示,双轮机器人的运动控制系统包括上述任一种转向控制装置710、左轮电机730a、右轮电机730b、左轮电机730a的驱动器720a、及右轮电机730b的驱动器720b。根据图7所示,转向控制装置710包括对应左轮电机730a的直立控制环711a、速度控制环712a和转向控制环713a。
转向控制装置710还包括对应右轮电机730b的直立控制环711b、速度控制环712b和转向控制环713b。
以上直立控制环711a接收的反馈信号SIN1包括由陀螺仪提供的双轮机器人绕竖直轴转动的角速度值。直立控制环711a根据反馈信号SIN1得到直立控制输出量SCO1。
以上速度控制环712a接收的反馈信号VIN1包括由左轮电机730a的编码器提供的脉冲信号。速度控制环712a根据反馈信号VIN1得到速度控制输出量VCO1。
以上转向控制环713a接收的反馈信号TIN1包括由左轮电机730a的编码器提供的脉冲信号和由右轮电机730b的编码器提供的脉冲信号,以使转向控制环713a根据接收到的脉冲信号计算左轮电机与右轮电机之间的实际转速差值的绝对值,以供转向控制环713a计算比例项。
进一步地,该转向控制环713a接收的反馈信号TIN1还可以包括由陀螺仪提供的双轮机器人绕竖直轴转动的角速度值,以供转向控制环713a进行微分项的计算。
转向控制环713a最终根据反馈信号TIN1得到转向控制输出量TCO1。
以上直立控制环711b接收的反馈信号SIN2包括由陀螺仪提供的双轮机器人绕竖直轴转动的角速度值。直立控制环711b根据反馈信号SIN2得到直立控制输出量SCO2。
由此可见,直立控制环711b与直立控制环711a完全相同,因此,二者可以相互独立,也可以共用。
以上转向控制环713b接收的反馈信号TIN2包括由左轮电机730a的编码器提供的脉冲信号和由右轮电机730b的编码器提供的脉冲信号,以使转向控制环713b根据接收到的脉冲信号计算左轮电机与右轮电机之间的实际转速差值的绝对值,以供转向控制环713b计算比例项。
进一步地,该转向控制环713b接收的反馈信号TIN2还可以包括由陀螺仪提供的双轮机器人绕竖直轴转动的角速度值,以供转向控制环713b进行微分项的计算。
转向控制环713b最终根据反馈信号TIN2得到转向控制输出量TCO2。
由此可见,以上转向控制环713b与转向控制环713a完全相同,因此,二者可以相互独立,也可以共用。
以上速度控制环712b接收的反馈信号VIN2包括由右轮电机730b的编码器提供的脉冲信号。速度控制环712b根据反馈信号VIN2得到速度控制输出量VCO2。
以上速度控制环712a与速度控制环712b应该相互独立设置。
转向控制装置710在当前转动方向为向左转向时,在直立控制输出量SCO1和速度控制输出量VCO1的基础上减少转向控制输出量TCO1来调节用于驱动左轮电机730a的PWM信号OUT1,同时在直立控制输出量SCO2和速度控制输出量VCO2的基础上增加转向控制输出量TCO2来调节用于驱动右轮电机730b的PWM信号OUT2。
转向控制装置710在当前转动方向为向右转向时,在直立控制输出量SCO1和速度控制输出量VCO1的基础上增加转向控制输出量TCO1来调节用于驱动左轮电机730a的PWM信号OUT1,同时在直立控制输出量SCO2和速度控制输出量VCO2的基础上减少转向控制输出量TCO2来调节用于驱动右轮电机730b的PWM信号OUT2。
PWM信号OUT1经由左轮电机的驱动器720a驱动左轮电机730a动作。
PWM信号OUT2经由右轮电机的驱动器720b驱动右轮电机730b动作。
以上每一控制环(包括直立控制环、速度控制环和转向控制环)对应一个控制器,该控制器的类型可以为P控制器、PI控制器、PD控制器、或者PID控制器。
在本发明的一个具体实施例中,以上每一控制环均采用PD控制器。
以上每一控制环可以各自对应一个独立的处理器。以上所有控制环也可以由一个处理器实现。
双轮机器人的运动控制系统在接收到直线运动指令时,将关闭转向控制装置710,并转由直线控制装置(图中未示出)起作用,该直线控制装置至少包括以上直立控制环711a、速度控制环712a、直立控制环711b、及速度控制环712b。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分相互参见即可,每个实施例重点说明的都是与其他实施例的不同之处,但本领域技术人员应当清楚的是,上述各实施例可以根据需要单独使用或者相互结合使用。另外,对于装置实施例而言,由于其是与方法实施例相对应,所以描述得比较简单,相关之处参见方法实施例的对应部分的说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的。
本发明可以是装置、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。
Claims (10)
1.一种用于双轮机器人的转向控制方法,所述双轮机器人具有左轮电机和右轮电机,其特征在于,所述转向控制方法包括:
计算所述左轮电机与所述右轮电机之间的实际转速差值的绝对值;
计算所述绝对值与预设的目标转速差值之间的偏差值;
根据所述偏差值确定转向控制环的比例项;
根据所述比例项,确定所述转向控制环的转向控制输出量;
确定所述双轮机器人的当前转动方向;
如果所述当前转动方向为向左转向,则增加所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号;
如果所述当前转动方向为向右转向,则增加所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号,
其中,所述目标转速差值为根据实际测试确定的使得所述双轮机器人能够顺畅转弯时的转速差值。
2.根据权利要求1所述的转向控制方法,其特征在于,所述方法还包括:
接收陀螺仪提供的所述双轮机器人绕竖直轴转动的角速度值;
计算所述转向控制环的微分项等于微分时间乘以所述角速度值;
所述根据所述比例项,确定所述转向控制环的转向控制输出量进一步为:
根据所述比例项和所述微分项,确定所述转向控制输出量。
3.根据权利要求2所述的转向控制方法,其特征在于,所述根据所述比例项和所述微分项,确定所述转向控制输出量进一步为:
确定所述转向控制输出量等于所述比例项与所述微分项之和。
4.根据权利要求1、2或3所述的转向控制方法,其特征在于,所述计算所述左轮电机与所述右轮电机之间的实际转速差值的绝对值包括:
接收左轮电机的编码器输出的左轮脉冲信号,并计算所述左轮脉冲信号的脉冲数作为左轮脉冲数;
接收右轮电机的编码器输出的右轮脉冲信号,并计算所述右轮脉冲信号的脉冲数作为右轮脉冲数;
计算所述左轮脉冲数与所述右轮脉冲数的差值的绝对值作为所述实际转速差值的绝对值。
5.一种用于双轮机器人的转向控制装置,所述双轮机器人具有左轮电机和右轮电机,其特征在于,所述转向控制装置包括:
实际转速差值计算模块,用于计算所述左轮电机与所述右轮电机之间的实际转速差值的绝对值;
偏差计算模块,用于计算所述绝对值与预设的目标转速差值之间的偏差值;
比例计算模块,用于根据所述偏差值确定转向控制环的比例项;
输出量计算模块,用于根据所述比例项,确定所述转向控制环的转向控制输出量;
转向确定模块,用于确定所述双轮机器人的当前转动方向;
执行模块,用于在所述当前转动方向为向左转向时,增加所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号;及用于在所述当前转动方向为向右转向时,增加所述转向控制输出量来调节用于驱动所述左轮电机的PWM信号,同时减少所述转向控制输出量来调节用于驱动所述右轮电机的PWM信号,
其中,所述目标转速差值为根据实际测试确定的使得所述双轮机器人能够顺畅转弯时的转速差值。
6.根据权利要求5所述的转向控制装置,其特征在于,所述转向控制装置还包括:
微分计算模块,用于接收陀螺仪提供的所述双轮机器人绕竖直轴转动的角速度值,并计算所述转向控制环的微分项等于微分时间乘以所述角速度值;
所述输出量计算模块进一步用于根据所述比例项和所述微分项,确定所述转向控制输出量。
7.根据权利要求6所述的转向控制装置,其特征在于,所述输出量计算模块进一步用于确定所述转向控制输出量等于所述比例项与所述微分项之和。
8.根据权利要求5、6或7所述的转向控制装置,其特征在于,所述实际转速差值计算模块包括:
左轮脉冲数计算单元,用于接收左轮电机的编码器输出的左轮脉冲信号,并计算所述左轮脉冲信号的脉冲数作为左轮脉冲数;
右轮脉冲数计算单元,用于接收右轮电机的编码器输出的右轮脉冲信号,并计算所述右轮脉冲信号的脉冲数作为右轮脉冲数;
差值计算单元,用于计算所述左轮脉冲数与所述右轮脉冲数的差值的绝对值作为所述实际转速差值的绝对值。
9.一种用于双轮机器人的转向控制装置,包括存储器和处理器,其特征在于,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据权利要求1至4中任一项所述的转向控制方法。
10.一种双轮机器人,所述双轮机器人具有左轮电机和右轮电机,其特征在于,所述双轮机器人的控制系统包括权利要求5至9中任一项所述的转向控制装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710193147.0A CN106926900B (zh) | 2017-03-28 | 2017-03-28 | 转向控制方法、装置及双轮机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710193147.0A CN106926900B (zh) | 2017-03-28 | 2017-03-28 | 转向控制方法、装置及双轮机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106926900A CN106926900A (zh) | 2017-07-07 |
CN106926900B true CN106926900B (zh) | 2023-04-25 |
Family
ID=59424780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710193147.0A Active CN106926900B (zh) | 2017-03-28 | 2017-03-28 | 转向控制方法、装置及双轮机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106926900B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108372518B (zh) * | 2018-01-08 | 2020-07-31 | 浙江立石机器人技术有限公司 | 机器人转向误差标定方法、装置及系统 |
CN109343539A (zh) * | 2018-11-27 | 2019-02-15 | 江苏红石信息系统集成服务有限公司 | 运动控制方法、装置、机器人及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0662509A (ja) * | 1992-08-05 | 1994-03-04 | Nissan Motor Co Ltd | 電気自動車の差動駆動装置 |
JPH09269832A (ja) * | 1996-03-29 | 1997-10-14 | Mazda Motor Corp | 車両の制御装置 |
JP4022552B2 (ja) * | 2005-05-18 | 2007-12-19 | 三菱電機株式会社 | ブラシレスモータの駆動方法とその駆動制御装置 |
CN101592947B (zh) * | 2009-07-03 | 2012-01-04 | 西安交通大学 | 一种Zigbee接入的电动轮椅控制器及控制方法 |
JP2015192471A (ja) * | 2014-03-27 | 2015-11-02 | 日産自動車株式会社 | 車両運動制御装置 |
-
2017
- 2017-03-28 CN CN201710193147.0A patent/CN106926900B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106926900A (zh) | 2017-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5866509B2 (ja) | モータ制御装置及びモータ制御方法 | |
CN109434831B (zh) | 机器人运行方法、装置、机器人、电子设备及可读介质 | |
CN102393639A (zh) | 基于自适应模糊滑模的微陀螺仪追踪控制方法 | |
CN106926900B (zh) | 转向控制方法、装置及双轮机器人 | |
Ghani et al. | Two wheels balancing robot with line following capability | |
Sun et al. | Trajectory-tracking control of Mecanum-wheeled omnidirectional mobile robots using adaptive integral terminal sliding mode | |
Pipatpaibul et al. | Application of online iterative learning tracking control for quadrotor UAVs | |
CN112947492B (zh) | 车辆控制方法、装置、存储介质、电子设备及车辆 | |
CN107077131B (zh) | 用于建立针对机器人的控制数据组的系统 | |
US20180191278A1 (en) | Control method and control device of direct current machine | |
Farid et al. | Computationally efficient algorithm to generate a waypoints-based trajectory for a quadrotor UAV | |
JP2017213631A (ja) | ロボットアーム制御装置、ロボットアーム制御方法、およびプログラム | |
Huang et al. | Balancing control of a bicycle-riding humanoid robot with center of gravity estimation | |
Karray et al. | Adaptive and sliding mode control of a mobile manipulator actuated by DC motors | |
CN112720463A (zh) | 控制机器人的方法、装置及终端设备 | |
Pratama et al. | Tilt set-point correction system for balancing robot using PID controller | |
JP5711560B2 (ja) | モータ制御装置 | |
US11225260B2 (en) | Control method and device for automated guided vehicle, and automated guided vehicle | |
CN106842927B (zh) | 控制参数调整方法、装置及双轮自平衡机器人 | |
CN110035867B (zh) | 数控装置 | |
López-Franco et al. | Real‐Time Inverse Optimal Neural Control for Image Based Visual Servoing with Nonholonomic Mobile Robots | |
CN113910917A (zh) | 电动自行车速度控制方法、装置、电动自行车及存储介质 | |
CN107015573B (zh) | 电磁式运动平台的控制方法及系统 | |
Shaon et al. | Design and implementation of a self-balancing robot | |
CN106877771B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |