CN111712399A - 可移动平台的控制方法、装置、设备及存储介质 - Google Patents
可移动平台的控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111712399A CN111712399A CN201980012189.7A CN201980012189A CN111712399A CN 111712399 A CN111712399 A CN 111712399A CN 201980012189 A CN201980012189 A CN 201980012189A CN 111712399 A CN111712399 A CN 111712399A
- Authority
- CN
- China
- Prior art keywords
- target
- movable platform
- wheels
- omni
- determining
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 230000001133 acceleration Effects 0.000 claims description 373
- 238000004891 communication Methods 0.000 claims description 10
- 238000009499 grossing Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 230000001276 controlling effect Effects 0.000 description 109
- 230000000875 corresponding effect Effects 0.000 description 53
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L15/00—Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles
- B60L15/20—Methods, circuits, or devices for controlling the traction-motor speed of electrically-propelled vehicles for control of the vehicle or its driving motor to achieve a desired performance, e.g. speed, torque, programmed variation of speed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L2220/00—Electrical machine types; Structures or applications thereof
- B60L2220/40—Electrical machine applications
- B60L2220/42—Electrical machine applications with use of more than one motor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L2240/00—Control parameters of input or output; Target parameters
- B60L2240/40—Drive Train control parameters
- B60L2240/42—Drive Train control parameters related to electric machines
-
- 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)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Power Engineering (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Electric Propulsion And Braking For Vehicles (AREA)
Abstract
一种可移动平台的控制方法、装置、设备及存储介质,通过获取用于控制所述可移动平台运动的用户指令(S501),根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量(S502),如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平运动的目标控制量(S503),并根据所述目标控制量,控制所述可移动平台运动(S504),从而避免用户在短时间内要求该可移动平台达到较大的速度时,由于电机需要在短时间内达到较大的转速而导致的该可移动平台的全向轮相对于地面打滑的问题,提高了可移动平台运动的稳定性。
Description
技术领域
本发明实施例涉及运动学控制领域,尤其涉及一种可移动平台的控制方法、装置、设备及存储介质。
背景技术
现有技术中可移动平台,例如,可移动机器人、无人机、可移动小车、无人驾驶车辆等,可以由用户设备进行控制。具体的,用户通过该用户设备向该可移动平台发送控制指令,该可移动平台中的控制器根据该控制指令控制该可移动平台移动。
具体的,该可移动平台的控制器可根据该用户设备发送的控制指令,确定用于控制该可移动平台的控制量,进一步,根据该控制量确定该可移动平台的全向轮的目标转速,并根据该目标转速控制全向轮对应的电机转动,使得该可移动平台达到用户要求的运动状态。
但是,如果用户在短时间内要求该可移动平台达到较大的速度,则需要电机在短时间内达到较大的转速,如此可能导致该可移动平台的全向轮相对于地面出现打滑的现象,导致该可移动平台的运动状态不稳定。
发明内容
本发明实施例提供一种可移动平台的控制方法、装置、设备及存储介质,以避免用户在短时间内要求该可移动平台达到较大的速度时,由于电机需要在短时间内达到较大的转速而导致的该可移动平台的全向轮相对于地面打滑的问题,以提高可移动平台运动的稳定性。
本发明实施例的第一方面是提供一种可移动平台的控制方法,所述可移动平台包括动力***,所述动力***用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动,所述方法包括:
获取用于控制所述可移动平台运动的用户指令;
根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量;
如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量;
根据所述目标控制量,控制所述可移动平台运动。
本发明实施例的第二方面是提供一种可移动平台的控制设备,所述可移动平台包括动力***,所述动力***用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动,所述控制设备包括:存储器和处理器;
所述存储器用于存储程序代码;
所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:
获取用于控制所述可移动平台运动的用户指令;
根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量;
如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量;
根据所述目标控制量,控制所述可移动平台运动。
本发明实施例的第三方面是提供一种可移动平台,包括:
机身;
动力***,安装在所述机身,用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动;
以及第二方面所述的控制设备。
本发明实施例的第四方面是提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现第一方面所述的方法。
本实施例提供的可移动平台的控制方法、装置、设备及存储介质,通过获取用于控制所述可移动平台运动的用户指令,根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量,如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量,并根据所述目标控制量,控制所述可移动平台运动,从而避免用户在短时间内要求该可移动平台达到较大的速度时,由于电机需要在短时间内达到较大的转速而导致的该可移动平台的全向轮相对于地面打滑的问题,提高了可移动平台运动的稳定性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种应用场景的示意图;
图2为本发明实施例提供的一种动力***的结构示意图;
图3为本发明实施例提供的一种全向轮的示意图;
图4为本发明实施例提供的一种全向轮底盘的示意图;
图5为本发明实施例提供的可移动平台的控制方法的流程图;
图6为本发明实施例提供的一种第一预设方式或第二预设方式的示意图;
图7为本发明另一实施例提供的可移动平台的控制方法的流程图;
图8为本发明实施例提供的一种机体坐标系的示意图;
图9为本发明实施例提供的另一种机体坐标系的示意图;
图10为本发明另一实施例提供的可移动平台的控制方法的流程图;
图11为本发明另一实施例提供的可移动平台的控制方法的流程图;
图12为本发明另一实施例提供的可移动平台的控制方法的流程图;
图13为本发明另一实施例提供的可移动平台的控制方法的流程图;
图14为本发明另一实施例提供的可移动平台的控制方法的流程图;
图15为本发明实施例提供的控制设备的结构图。
附图标记:
11:可移动机器人; 12:用户终端; 71:辊子;
140:控制设备;
141:存储器; 142:处理器; 143:通讯接口。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,当组件被称为“固定于”另一个组件,它可以直接在另一个组件上或者也可以存在居中的组件。当一个组件被认为是“连接”另一个组件,它可以是直接连接到另一个组件或者可能同时存在居中组件。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
本发明实施例提供一种可移动平台的控制方法。所述可移动平台包括动力***,所述动力***用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动。
本实施例所述的可移动平台具体可以是可移动机器人、可移动小车、无人驾驶车辆等。下面以如图1所示的可移动机器人11为例进行示意性说明。如图1所示,该可移动机器人11可以由用户终端12进行控制。例如,用户可通过用户终端12向可移动机器人11发送控制指令,可移动机器人11根据该控制指令进行移动。本实施例并不限定用户终端12的产品形态,该用户终端12具体可以是智能手机、平板电脑、笔记本电脑等。
可移动机器人11包括动力***,该动力***用于驱动可移动机器人11运动,可移动机器人11运动包括可移动机器人11平移和转动中的至少一种。具体的,该动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,如图2所示,假设该动力***包括一个电机控制器、4个电机和4个全向轮。其中,该电机控制器与该4个电机分别连接,该电机控制器用于控制该4个电机转动,该4个电机与该4个全向轮一一对应,每个电机用于驱动与该电机连接的全向轮转动。在其他实施例中,该动力***还可以包括多个电机控制器,例如,一个电机连接有一个电机控制器。此外,电机和全向轮的个数也不限于是4个,例如,可以是3个、6个、8个等。
在本实施例中,该全向轮具体可以是麦克纳姆轮,或者是瑞典轮,图3所示是麦克纳姆轮的一个示意图,如图3所示,麦克纳姆轮包括辊子和轮毂,对于麦克纳姆轮而言,辊子和轮毂成45度夹角。对于瑞典轮而言,辊子和轮毂成90度夹角。图4所示为基于麦克纳姆轮的全向轮底盘。
本实施例以麦克纳姆轮为例介绍一种可移动平台的控制方法,另外,当该可移动平台的全向轮是瑞典轮时对可移动平台的控制方法与麦克纳姆轮场景下对可移动平台的控制方法原理是类似的。
图5为本发明实施例提供的可移动平台的控制方法的流程图。如图5所示,本实施例中的方法,可以包括:
步骤S501、获取用于控制所述可移动平台运动的用户指令。
本实施例方法的执行主体可以是可移动平台的控制设备,该可移动平台具体可以是图1所示的可移动机器人11。该可移动机器人11的控制设备具体可以是如图2所示的底盘主控。如图2所示,该底盘主控可以与该电机控制器通信连接,该底盘主控可获取用于控制所述可移动平台运动的用户指令。
可选的,所述获取用于控制所述可移动平台的用户指令,包括:接收用户终端发送的用于控制所述可移动平台运动的用户指令。
如图2所示,该底盘主控可接收用户终端发送的用户指令,该用户终端和该底盘主控可以直接进行通信,也可以通过其他的通信设备或网元进行通信,例如,其他通信设备或网元将该用户终端发送的用户指令转发给该底盘主控。其中,该用户指令可以是用户通过该用户终端生成的用于控制可移动机器人11运动的用户指令。
步骤S502、根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量。
例如,当前时刻t1该底盘主控接收到该用户指令,并将该用户指令转化为用于控制可移动机器人11运动的控制量,此处,将当前时刻由该用户指令转化得到的控制量记为第一控制量。可选的,所述可移动平台的第一控制量包括如下至少一种:所述可移动平台的第一速度、所述可移动平台的第一角速度。
例如,用于控制可移动机器人11运动的第一控制量包括:该可移动机器人11的第一速度和该可移动机器人11的第一角速度中的至少一个。其中,该可移动机器人11的第一速度可以理解为当前时刻该用户对底盘的期望速度,该期望速度是当前时刻该用户期望底盘平移的速度。该可移动机器人11的第一角速度可以理解为当前时刻该用户对底盘的期望角速度,该期望角速度是当前时刻该用户期望底盘转动的角速度。在一些场景下,该第一控制量可能只包括第一速度,此时,底盘可能只进行平移。在另一些场景下,该第一控制量可能只包括第一角速度,此时,底盘可能只进行转动。在其他一些场景下,该第一控制量可能同时包括第一速度和第一角速度,此时,底盘可能同时进行平移和转动。
步骤S503、如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量。
假设历史时刻t0该底盘主控也接收到了用户指令,并将该历史时刻的用户指令转化为用于控制可移动机器人11运动的第二控制量。可选的,所述可移动平台的第二控制量包括如下至少一种:所述可移动平台的第二速度、所述可移动平台的第二角速度。例如,用于控制可移动机器人11运动的第二控制量包括:该可移动机器人11的第二速度和该可移动机器人11的第二角速度中的至少一个。其中,该可移动机器人11的第二速度可以理解为历史时刻该用户对底盘的期望速度,该可移动机器人11的第二角速度可以理解为历史时刻该用户对底盘的期望角速度。
当该底盘主控将当前时刻的用户指令转化为用于控制可移动机器人11运动的第一控制量后,确定第一控制量相对于第二控制量的变化量。
作为一种可行的方法,该底盘主控可以将第一控制量和第二控制量之间的差值作为第一控制量相对于第二控制量的变化量。
作为另一种可行的方法,该底盘主控可以计算出第一控制量和第二控制量之间的差值,以及当前时刻t1与历史时刻t0之间的时间差,并将第一控制量和第二控制量之间的差值与该时间差的比值作为第一控制量相对于第二控制量的变化量。
进一步,该底盘主控判断该第一控制量相对于第二控制量的变化量是否大于预设值,如果该变化量大于预设值,则根据该第一控制量和该第二控制量,确定当前时刻用于控制可移动机器人11运动的目标控制量。
所述可移动平台的目标控制量包括如下至少一种:所述可移动平台的目标速度、所述可移动平台的目标角速度。
可选的,所述根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度;对所述第一加速度进行调整得到第二加速度,和/或,对所述第一角加速度进行调整得到第二角加速度;根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台的目标控制量。
例如,将该可移动机器人11的第一速度记为Vt1,将该可移动机器人11的第一角速度记为ωt1。将该可移动机器人11的第二速度记为Vt0,将该可移动机器人11的第二角速度记为ωt0。根据可移动机器人11的第一速度Vt1和该可移动机器人11的第二速度Vt0,可确定出当前时刻可移动机器人11需要达到的第一加速度,此处,将该第一加速度记为Acc_ref,其中,其中,Δt表示当前时刻t1与历史时刻t0之间的时间差。和/或,根据可移动机器人11的第一角速度ωt1和该可移动机器人11的第二角速度ωt0,可确定出当前时刻可移动机器人11需要达到的第一角加速度,此处,将第一角加速度记为Beta_ref,其中,
进一步,对第一加速度Acc_ref进行调整得到第二加速度,此处,将第二加速度记为Acc_ref_lim,和/或,对第一角加速度Beta_ref进行调整得到第二角加速度,此处,将该第二角加速度记为Beta_ref_lim。进一步,根据第二加速度Acc_ref_lim和/或第二角加速度Beta_ref_lim,确定当前时刻用于控制可移动机器人11运动的目标控制量。
可选的,所述对所述第一加速度进行调整得到第二加速度,包括:根据第一预设方式对所述第一加速度进行调整得到第二加速度。例如,Acc_ref_lim=slope1(Acc_ref),其中,slope1表示第一预设方式。
可选的,所述对所述第一角加速度进行调整得到第二角加速度,包括:根据第二预设方式对所述第一角加速度进行调整得到第二角加速度。例如,Beta_ref_lim=slope2(Beta_ref),其中,slope2表示第二预设方式。
可选的,所述第一预设方式或所述第二预设方式包括如下至少一种:线性方式、S形方式、半S形方式。
线性方式具体可以是如图6所示的直线形方式。下面以如图6所示的直线形方式对第一加速度Acc_ref进行调整得到Acc_ref_lim为例进行示意性说明,在该直线形方式中,横坐标表示时间,纵坐标表示加速度。具体的,根据当前时刻t1确定与该当前时刻t1对应的f1,进一步,比较f1和Acc_ref的大小,如果f1小于或等于Acc_ref,则Acc_ref_lim=f1。如果f1大于Acc_ref,则Acc_ref_lim=Acc_ref。同理,根据如图6所示的S形方式或半S形方式对第一加速度Acc_ref进行调整得到Acc_ref_lim的过程与此类似,此处不再赘述。其中,在半S形方式中,若可移动机器人11在增速,即可移动机器人11的第一速度Vt1大于该可移动机器人11的第二速度Vt0时,采用该半S形方式中的下半支曲线对第一加速度Acc_ref进行调整得到Acc_ref_lim。若可移动机器人11在减速,即可移动机器人11的第一速度Vt1小于该可移动机器人11的第二速度Vt0时,采用该半S形方式中的上半支曲线对第一加速度Acc_ref进行调整得到Acc_ref_lim。
另外,根据如图6所示的直线形方式、S形方式或半S形方式对第一角加速度Beta_ref进行调整时,如图6所示的直线形方式、S形方式或半S形方式的纵坐标表示角加速度。根据如图6所示的直线形方式、S形方式或半S形方式对第一角加速度Beta_ref进行调整得到第二角加速度Beta_ref_lim的过程,与根据如图6所示的直线形方式、S形方式或半S形方式对第一加速度Acc_ref进行调整得到Acc_ref_lim的过程类似,此处不再赘述。
作为一种可能的实现方式,所述根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:根据所述第二加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或根据所述第二角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
例如,底盘主控根据上述方法确定出该可移动机器人11的第二加速度Acc_ref_lim和/或该可移动机器人11的第二角加速度Beta_ref_lim,并根据第二加速度Acc_ref_lim和/或第二角加速度Beta_ref_lim,确定当前时刻用于控制可移动机器人11运动的目标控制量时,具体可根据第二加速度Acc_ref_lim和第二速度Vt0,确定当前时刻t1该可移动机器人11的目标速度,此处将该可移动机器人11的目标速度记为V。具体的,V=Acc_ref_lim×Δt+Vt0。和/或,根据第二角加速度Beta_ref_lim和第二角速度ωt0,确定当前时刻t1该可移动机器人11的目标角速度,此处将该可移动机器人11的目标角速度记为ω,ω=Beta_ref_lim×Δt+ωt0。
步骤S504、根据所述目标控制量,控制所述可移动平台运动。
具体的,当该底盘主控确定出该可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω之后,可以根据该可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω,控制该可移动机器人11运动。
本实施例通过获取用于控制所述可移动平台运动的用户指令,根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量,如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量,并根据所述目标控制量,控制所述可移动平台运动,从而避免用户在短时间内要求该可移动平台达到较大的速度时,由于电机需要在短时间内达到较大的转速而导致的该可移动平台的全向轮相对于地面打滑的问题,提高了可移动平台运动的稳定性。
本发明实施例提供一种可移动平台的控制方法。图7为本发明另一实施例提供的可移动平台的控制方法的流程图。如图7所示,在上述实施例的基础上,当所述电机对应的电机控制器为按照速度环模式运行时,所述根据所述目标控制量,控制所述可移动平台运动,包括:
步骤S701、根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转速。
如图8所示,X轴和Y轴构成的坐标系可以是可移动机器人11的机体坐标系,也可以是世界坐标系,如果该坐标系是机体坐标系,则该机体坐标系的坐标原点可以是可移动机器人11的几何中心。如果该坐标系是世界坐标系,则该世界坐标系的坐标原点可以是某一个预先固定的点。可以理解,机体坐标系会随着可移动机器人11的位置的变化而变化。而世界坐标系不会随着可移动机器人11的位置的变化而变化。此处,以可移动机器人11的机体坐标系为例进行示意性说明。如图8所示,V表示该该可移动机器人11的目标速度,则该目标速度V可以在机体坐标系的X轴上有一个分量,在机体坐标系的Y轴上有一个分量。可选的,将该目标速度V在机体坐标系的X轴上的分量记为Vx,将该目标速度V在机体坐标系的Y轴上的分量记为Vy,也就是说,V是Vx和Vy的合速度。将Vx、Vy、以及该可移动机器人11的目标角速度ω代入如下所示的公式即运动学方程中,可确定出为了使可移动机器人11的速度达到该目标速度V,以及使该可移动机器人11的角速度达到该目标角速度ω,该可移动机器人11的底盘的4个电机中每个电机需要达到的目标转速。其中,电机的转速和与该电机对应的全向轮的转速相同。因此,该可移动机器人11的底盘的4个电机中每个电机需要达到的目标转速即可作为该可移动机器人11的4个全向轮中每个全向轮的目标转速。具体的,可以将电机1的目标转速记为ω1,将电机2的目标转速记为ω2,将电机3的目标转速记为ω3,将电机4的目标转速记为ω4。
其中,r表示全向轮的半径。α1表示全向轮1的辊子和轮毂的夹角,α2表示全向轮2的辊子和轮毂的夹角,α3表示全向轮3的辊子和轮毂的夹角,α4表示全向轮4的辊子和轮毂的夹角。通常情况下,α1、α2、α3、α4是相同的,在一些场景中,也有可能不同。l1表示底盘的运动学中心与全向轮1的圆心之间的距离,l2表示底盘的运动学中心与全向轮2的圆心之间的距离,l3表示底盘的运动学中心与全向轮3的圆心之间的距离,l4表示底盘的运动学中心与全向轮4的圆心之间的距离,通常情况下,l1、l2、l3、l4是相同的,在一些场景中,也有可能不同。
如图9所示,XOY是可移动机器人11的机体坐标系,x’o’y’是可移动机器人11的任意一个全向轮的坐标系,71表示该全向轮上的任意一个辊子,lix表示该全向轮的坐标系的坐标原点o’在该机体坐标系X轴上的坐标,liy示该全向轮的坐标系的坐标原点o’在该机体坐标系Y轴上的坐标。当该全向轮是如上所述的全向轮1时,αi=α1,当该全向轮是如上所述的全向轮2时,αi=α2,以此类推。
如图9所示,该全向轮的坐标系的坐标原点o’与该机体坐标系的坐标原点O之间的距离可以是底盘的运动学中心与该全向轮的圆心之间的距离。当该全向轮是如上所述的全向轮1时,o’与O之间的距离为l1,当该全向轮是如上所述的全向轮2时,o’与O之间的距离为l2,l3和l4以此类推。
如图9所示,该全向轮的坐标系的x’轴相对于该机体坐标系X轴的夹角为θi,当该全向轮是如上所述的全向轮1时,θi=θ1,当该全向轮是如上所述的全向轮2时,θi=θ2,α3和α4以此类推。通常情况下,θ1、α2、α3、α4是相同的,在一些场景中,也有可能不同。
另外,如图9所示,经过该全向轮的坐标系的坐标原点o’和该机体坐标系的坐标原点O的直线相对于该机体坐标系X轴的夹角为βi,当该全向轮是如上所述的全向轮1时,βi=β1,当该全向轮是如上所述的全向轮2时,βi=β2,β3和β4以此类推。通常情况下,β1、β2、β3、β4是相同的,在一些场景中,也有可能不同。
步骤S702、根据每个所述全向轮的目标转速,控制所述可移动平台运动。
例如,该底盘主控确定出可移动机器人11的4个电机中每个电机的目标转速后,进一步,根据该4个电机中每个电机的目标转速,控制对应的电机转动,以控制可移动机器人11运动。
可选的,所述根据每个所述全向轮的目标转速,控制所述可移动平台运动,包括:将每个所述全向轮的目标转速发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转速驱动所述全向轮对应的电机转动。
在本实施例中,电机控制器具体可以是电子调速器。如图2所示,当底盘主控确定出可移动机器人11的4个电机中每个电机的目标转速后,可将该4个电机中每个电机的目标转速发送给电机控制器,由该电机控制器根据每个电机的目标转速控制相应的电机转动,使得4个电机分别转动到相应的目标转速。在其他实施例中,每个电机可以连接有一个电机控制器,该底盘主控确定出可移动机器人11的4个电机中每个电机的目标转速后,可以将该4个电机中每个电机的目标转速发送给相应电机所连接的电机控制器,由每个电机对应的电机控制器控制相应的电机转动。
本实施例通过当所述电机对应的电机控制器为按照速度环模式运行时,根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转速,并根据每个所述全向轮的目标转速,控制所述可移动平台运动,实现了根据所述目标控制量,控制所述可移动平台运动的方法。
本发明实施例提供一种可移动平台的控制方法。图10为本发明另一实施例提供的可移动平台的控制方法的流程图。如图10所示,在上述实施例的基础上,作为另一种可能的实现方式,所述根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
步骤S901、检测多个所述全向轮中的每个所述全向轮是否打滑。
例如,该可移动机器人11的第一速度可以理解为当前时刻该用户对底盘的期望速度,该可移动机器人11的第一角速度可以理解为当前时刻该用户对底盘的期望角速度。根据上述运动学方程可知,若该可移动机器人11的第一速度和该可移动机器人11的第一角速度越大,则为了达到该第一速度和第一角速度,该4个全向轮中每个全向轮需要达到的第一转速也越大。如果用户期望4个全向轮在较短的时间内达到较大的转速,则有可能导致4个全向轮中的至少一个打滑。因此,本实施例中,当底盘主控根据第二加速度Acc_ref_lim和/或第二角加速度Beta_ref_lim,确定当前时刻用于控制可移动机器人11运动的目标控制量时,可检测该4个全向轮中的每个全向轮是否打滑。
可选的,所述检测多个所述全向轮中的每个所述全向轮是否打滑,包括:根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑;其中,所述第一转矩是根据所述第一控制量确定的。
例如,该底盘主控检测该4个全向轮中的每个全向轮是否打滑时,可根据该4个全向轮中的每个全向轮的第一转矩和每个全向轮的实际转矩,确定该4个全向轮中的每个全向轮是否打滑。其中,每个全向轮的第一转矩是根据如上所述的第一控制量确定的。此处,将全向轮1的第一转矩记为Tref1,将全向轮1的实际转矩记为Treal1,将全向轮2的第一转矩记为Tref2,将全向轮2的实际转矩记为Treal2,将全向轮3的第一转矩记为Tref3,将全向轮3的实际转矩记为Treal3,将全向轮4的第一转矩记为Tref4,将全向轮4的实际转矩记为Treal4。
可选的,所述根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑,包括:确定各个所述全向轮的第一转矩和实际转矩的差值;若所述差值大于打滑阈值,则确定所述差值对应的全向轮打滑。
例如,根据每个全向轮的第一转矩和实际转矩,确定该4个全向轮中的每个全向轮是否打滑时,可确定各个全向轮的第一转矩和实际转矩的差值,例如,全向轮1的第一转矩和全向轮1的实际转矩的差值可表示为|Tref1-Treal1|,全向轮2的第一转矩和全向轮2的实际转矩的差值可表示为|Tref2-Treal2|,全向轮3的第一转矩和全向轮3的实际转矩的差值可表示为|Tref3-Treal3|,全向轮4的第一转矩和全向轮4的实际转矩的差值可表示为|Tref4-Treal4|。进一步,确定该4个差值中哪个差值或哪些差值大于打滑阈值,如果某个差值或某些差值大于打滑阈值,则确定大于打滑阈值的这个差值或这些差值所对应的全向轮打滑。例如,该打滑阈值记为threshold,该4个差值中|Tref3-Treal3|>threshold,|Tref4-Treal4|>threshold,则确定全向轮3和全向轮4打滑,其他全向轮不打滑。在其他实施例中,不同的全向轮对应的打滑阈值可以不同。
步骤S902、若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个打滑的全向轮的打滑程度。
当该底盘主控确定全向轮3和全向轮4打滑,其他全向轮不打滑时,还可以进一步确定全向轮3和全向轮4的打滑程度。
可选的,所述确定至少一个所述打滑的全向轮的打滑程度,包括:通过对至少一个所述打滑的全向轮的第一转矩和至少一个所述打滑的全向轮的实际转矩的差值进行平滑处理,得到至少一个所述打滑的全向轮的打滑程度。
例如,确定全向轮3和全向轮4的打滑程度时,可通过对|Tref3-Treal3|进行平滑处理,得到全向轮3的打滑程度,以及通过对|Tref4-Treal4|进行平滑处理,得到全向轮4的打滑程度。此处,将全向轮3的打滑程度记为Slip3,将全向轮4的打滑程度记为Slip4。具体的,Slip3=filter(|Tref3-Treal3|),Slip4=filter(|Tref4-Treal4|)。其中,filter表示平滑处理函数。在其他实施例中,不同全向轮可对应不同的平滑处理函数。
步骤S903、根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度。
在确定出全向轮3和全向轮4打滑,以及全向轮3和全向轮4的打滑程度后,可根据如上所述的第二加速度Acc_ref_lim、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第三加速度,此处,将可移动机器人11的第三加速度记为Acc_ref_slip。
可选的,所述根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度,包括:根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第三加速度。
例如,根据如上所述的第二加速度Acc_ref_lim、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第三加速度时,可先确定出全向轮3的打滑程度和全向轮4的打滑程度中最大的一个打滑程度,此处将至少一个打滑的全向轮的打滑程度中最大的打滑程度记为Slip。例如,Slip4大于Slip3,则Slip=Slip4。进一步,根据如上所述的第二加速度Acc_ref_lim和Slip确定全向轮3和全向轮4不打滑时,可移动机器人11的第三加速度。Acc_ref_lim、Acc_ref_slip和Slip之间的函数关系可以表示为如下的公式(1):
Acc_ref_slip=Acc_ref_lim-Kp*Slip (1)
其中,Kp表示与底盘控制的灵敏度正相关的参数,该参数可以是设定的参数,或者是可调整的参数。
步骤S904、根据所述第二角加速度和至少一个所述全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度。
在确定出全向轮3和全向轮4打滑,以及全向轮3和全向轮4的打滑程度后,可根据如上所述的第二角加速度Beta_ref_lim、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第三角加速度,此处,将可移动机器人11的第三角加速度记为Beta_ref_slip。
可选的,所述根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度,包括:根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度。
例如,根据如上所述的第二角加速度Beta_ref_lim、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第三角加速度时,可先确定出全向轮3的打滑程度和全向轮4的打滑程度中最大的一个打滑程度Slip,例如,Slip=Slip4。进一步,根据如上所述的第二角加速度Beta_ref_lim和Slip确定全向轮3和全向轮4不打滑时,可移动机器人11的第三角加速度。Beta_ref_lim、Beta_ref_slip和Slip之间的函数关系可以表示为如下的公式(2):
Beta_ref_slip=Beta_ref_lim-Kp′*Slip (2)
其中,Kp′表示与底盘控制的灵敏度正相关的参数,该参数可以是设定的参数,或者是可调整的参数。Kp′与Kp可以相同,或者不同。在一些实施例中,可以只包括步骤S903,或者,只包括步骤S904。可以理解,本实施例所述的部分步骤之间可以没有先后顺序,例如,步骤S903和步骤S904。
步骤S905、根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
例如,该底盘主控确定出可移动机器人11的第三加速度Acc_ref_slip和/或第三角加速度Beta_ref_slip后,可根据Acc_ref_slip和/或Beta_ref_slip确定控制可移动机器人11运动的目标控制量。
可选的,所述根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:根据所述第三加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或根据所述第三角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
具体的,该底盘主控可根据第三加速度Acc_ref_slip和第二速度Vt0,确定当前时刻t1该可移动机器人11的目标速度,此处将该可移动机器人11的目标速度记为V。具体的,V=Acc_ref-slip×Δt+Vt0。和/或,根据第三角加速度Beta_ref_slip和第二角速度ωt0,确定当前时刻t1该可移动机器人11的目标角速度,此处将该可移动机器人11的目标角速度记为ω,ω=Beta_ref_slip×Δt+ωt0。
具体的,当该底盘主控确定出该可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω之后,可以根据该可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω,控制该可移动机器人11运动。
本实施例通过在对当前时刻该用户对底盘的期望加速度进行约束得到第二加速度,和/或对当前时刻该用户对底盘的期望角加速度进行约束得到第二角加速度的基础上,进一步,检测多个所述全向轮中打滑的全向轮,并根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度,和/或,根据所述第二角加速度和至少一个所述全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度,进而根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,使得该目标控制量不仅可避免该可移动平台的动力***在短时间内达到较大的转速,同时还可以防止该可移动平台打滑,从而提高了该目标控制量的确定精度。
本发明实施例提供一种可移动平台的控制方法。图11为本发明另一实施例提供的可移动平台的控制方法的流程图。如图11所示,在上述实施例的基础上,所述根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,所述方法还包括:
步骤S1001、获取多个所述全向轮中每个所述全向轮对应的电机的电流。
例如,该底盘主控根据该4个全向轮中的每个全向轮的第一转矩和每个全向轮的实际转矩,确定该4个全向轮中的每个全向轮是否打滑之前,该底盘主控可通过电机控制器采集该4个全向轮中每个全向轮对应的电机的电流,具体的,该电机控制器可将每个全向轮对应的电机的电流通过通信方式反馈给该底盘主控。例如,电机1的电流记为Iq1,电机2的电流记为Iq2,电机3的电流记为Iq3,电机4的电流记为Iq4。
步骤S1002、根据每个所述全向轮对应的电机的电流,确定每个所述全向轮的实际转矩。
具体的,根据该4个全向轮中每个全向轮对应的电机的电流,确定每个全向轮的实际转矩。例如,全向轮1的实际转矩Treal1=Kt*Iq1,其中,Kt为转矩系数,Kt与电机的电气参数相关,且该Kt可以预先测量得出。同理,全向轮2的实际转矩Treal2=Kt*Iq2,全向轮3的实际转矩Treal3=Kt*Iq3,全向轮4的实际转矩Treal4=Kt*Iq4。
在其他实施例中,所述根据多个所述全向轮中每个所述全向轮的目标转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,所述方法还包括:根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩。
例如,该底盘主控根据该4个全向轮中的每个全向轮的第一转矩和每个全向轮的实际转矩,确定该4个全向轮中的每个全向轮是否打滑之前,还可以根据第一加速度Acc_ref和第一角加速度Beta_ref,确定该4个全向轮中的每个全向轮的第一转矩。
可选的,根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩,包括如图12所示的如下步骤:
步骤S1101、根据所述第一加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的合转矩与第二对角轮的合转矩的和值。
如图2所示,假设全向轮1和全向轮2位于可移动机器人11的左侧,全向轮3和全向轮4位于可移动机器人11的右侧,此处,将全向轮1和全向轮4记为第一对角轮,将全向轮2和全向轮3记为第二对角轮。可以理解,可移动机器人11的加速度a和该可移动机器人11受到的总合力F之间的关系为F=m*a,其中,m表示可移动机器人11的重量。进一步,根据F=m*a可确定出该可移动机器人11的总转矩、m、a之间的关系即F*r=m*a*r,其中,F*r表示该可移动机器人11的总转矩,r表示全向轮的半径。因此,当F*r=m*a*r中的a为如上所述的第一加速度Acc_ref时,则F*r表示该4个全向轮中每个全向轮的第一转矩之和,此处,可将Tref1+Tref4记为第一对角轮的合转矩Ta,将Tref2+Tref3记为第二对角轮的合转矩Tb,Ta和Tb的和值Ta+Tb可表示为如下公式(3)
Ta+Tb=m*Acc_ref*r (3)
步骤S1102、根据所述第一角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值。
在本实施例中,该可移动机器人11的底盘的几何中心具体可以是如上所述的底盘的运动学中心或底盘的质心,可移动机器人11的底盘的几何中心到4个全向轮中每个全向轮的距离相同,即如上所述的l1、l2、l3、l4相同,在本实施例中将可移动机器人11的底盘的几何中心到4个全向轮中每个全向轮的距离记为L。根据如上所述的第一角加速度Beta_ref和L可确定出第一对角轮的合转矩Ta和第二对角轮的合转矩Tb的差值。Ta和Tb的差值Ta-Tb可表示为如下公式(4):
Ta-Tb=J*Beta_ref/L (4)
其中,J表示转动惯量,J可预先测得。
可以理解,本实施例所述的部分步骤之间可以没有先后顺序,例如,步骤S1101和步骤S1102。
步骤S1103、根据所述第一对角轮的合转矩与所述第二对角轮的合转矩的和值,以及所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值,确定所述第一对角轮的合转矩、以及所述第二对角轮的合转矩。
根据如上公式(3)和公式(4)即可确定出第一对角轮的合转矩Ta和第二对角轮的合转矩Tb。
步骤S1104、根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩。
进一步,根据第一对角轮的合转矩Ta和第二对角轮的合转矩Tb,可确定出该4个全向轮中每个全向轮的第一转矩。
可选的,所述根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩,包括:根据所述第一速度和所述第一角速度,确定多个所述全向轮中每个所述全向轮需要达到的第一转速;根据所述第一对角轮的合转矩、以及所述第一对角轮包括的每个所述全向轮的第一转速,确定所述第一对角轮包括的每个所述全向轮的第一转矩;根据所述第二对角轮的合转矩、以及所述第二对角轮包括的每个所述全向轮的第一转速,确定所述第二对角轮包括的每个所述全向轮的第一转矩。
如上所述,该可移动机器人11的第一速度为Vt1,该可移动机器人11的第一角速度为ωt1,该第一速度可在如上所述的机体坐标系的X轴上有一个分量,在该机体坐标系的Y轴上有一个分量,将该第一速度Vt1在机体坐标系的X轴上的分量、该第一速度Vt1在机体坐标系的Y轴上的分量、以及第一角速度ωt1代入如上所述的运动学方程中,可确定出为了使可移动机器人11的速度达到该第一速度Vt1,以及使该可移动机器人11的角速度达到该第一角速度ωt1,该可移动机器人11的底盘的4个电机中每个电机需要达到的第一转速。具体的,可以将电机1的第一转速记为ω1′,将电机2的第一转速记为ω2′,将电机3的第一转速记为ω3′,将电机4的第一转速记为ω4′。
可以理解,电机的转速与电机的转矩成正相关。根据电机1的第一转速ω1′和电机4的第一转速ω4′的比值,以及第一对角轮的合转矩Ta即Tref1+Tref4,可确定出Tref1和Tref4,例如,Ta=4,ω1′和ω4′的比值为1∶3,则Tref1=1,Tref4=3。
同理,根据电机2的第一转速ω2′和电机3的第一转速ω3′的比值,以及第二对角轮的合转矩Tb即Tref2+Tref3,可确定出Tref2和Tref3。
本实施例通过在根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,确定每个所述全向轮的实际转矩或者确定每个所述全向轮的第一转矩,提高了对每个所述全向轮是否打滑的检测精度。
本发明实施例提供一种可移动平台的控制方法。图13为本发明另一实施例提供的可移动平台的控制方法的流程图。如图13所示,在上述实施例的基础上,所述根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量,可以包括:
步骤S1201、检测多个所述全向轮中的每个所述全向轮是否打滑。
步骤S1201的实现方式和原理与上述步骤S901的实现方式和原理均一致,此处不再赘述。
步骤S1202、若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个所述打滑的全向轮的打滑程度。
步骤S1202的实现方式和原理与上述步骤S902的实现方式和原理均一致,此处不再赘述。
步骤S1203、根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度。
如上所述,第一控制量包括该可移动机器人11的第一速度Vt1和该可移动机器人11的第一角速度ωt1中的至少一个。第二控制量包括该可移动机器人11的第二速度Vt0和该可移动机器人11的第二角速度ωt0中的至少一个。根据可移动机器人11的第一速度Vt1和该可移动机器人11的第二速度Vt0,可确定出当前时刻可移动机器人11需要达到的第一加速度Acc_ref,和/或,根据可移动机器人11的第一角速度ωt1和该可移动机器人11的第二角速度ωt0,可确定出当前时刻可移动机器人11需要达到的第一角加速度Beta_ref。
可以理解,本实施例所述的部分步骤之间可以没有先后顺序,例如,步骤S1201、步骤S1202和步骤S1203。例如,在其他实施例中,还可以先执行步骤S1203,然后再执行步骤S1201和步骤S1202。
步骤S1204、根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
如上所述,假设底盘主控确定4个全向轮中全向轮3和全向轮4打滑,并且确定全向轮3的打滑程度为Slip3,全向轮4的打滑程度为Slip4。
在本实施例中,底盘主控可根据全向轮3的打滑程度Slip3、全向轮4的打滑程度Slip4、第一加速度Acc_ref和/或第一角加速度Beta_ref,确定控制可移动机器人11运动的目标控制量。
可选的,所述根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度;和/或根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度;根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
例如,在确定出全向轮3和全向轮4打滑,以及全向轮3和全向轮4的打滑程度后,可根据如上所述的第一加速度Acc_ref、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第四加速度,此处,将可移动机器人11的第四加速度记为Acc_ref_slip′。和/或,根据如上所述的第一角加速度Beta_ref、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第四角加速度,此处,将可移动机器人11的第四角加速度记为Beta_ref_slip′。进一步,根据Acc_ref_slip′和/或Beta_ref_slip′确定控制可移动机器人11运动的目标控制量。
可选的,所述根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度,包括:根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四加速度。
例如,根据如上所述的第一加速度Acc_ref、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第四加速度Acc_ref_slip′时,先确定全向轮3的打滑程度和全向轮4的打滑程度中最大的一个打滑程度Slip。进一步,根据如上所述的第一加速度Acc_ref和Slip确定全向轮3和全向轮4不打滑时,可移动机器人11的第四加速度Acc_ref_slip′,如下公式(5)所示:
Acc_ref_slip′=Acc_ref-Kp*Slip (5)
可选的,所述根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度,包括:根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四角加速度。
例如,根据如上所述的第一角加速度Beta_ref、全向轮3和全向轮4的打滑程度,确定全向轮3和全向轮4不打滑时,可移动机器人11的第四角加速度Beta_ref_slip′时,先确定全向轮3的打滑程度和全向轮4的打滑程度中最大的一个打滑程度Slip,进一步,根据如上所述的第一角加速度Beta_ref和Slip确定全向轮3和全向轮4不打滑时,可移动机器人11的第四角加速度Beta_ref_slip′,如下公式(6)所示:
Beta_ref_slip′=Beta_ref-Kp′*Slip (6)
可选的,所述根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:根据所述第四加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或根据所述第四角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
具体的,该底盘主控可根据第四加速度Acc_ref_slip′和第二速度Vt0,确定当前时刻t1该可移动机器人11的目标速度,此处将该可移动机器人11的目标速度记为V。具体的,V=Acc_ref_slip′×Δt+Vt0。和/或,根据第四角加速度Beta_ref_slip′和第二角速度ωt0,确定当前时刻t1该可移动机器人11的目标角速度,此处将该可移动机器人11的目标角速度记为ω,ω=Beta_ref_slip′×Δt+ωt0。
具体的,当该底盘主控确定出该可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω之后,可以根据该可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω,控制该可移动机器人11运动。
本实施例通过检测多个所述全向轮中打滑的全向轮,并根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度,和/或,根据所述第一角加速度和至少一个所述全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度,根据所述第四加速度和/或第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,使得该目标控制量可以防止该可移动平台打滑,从而提高了该目标控制量的确定精度。
本发明实施例提供一种可移动平台的控制方法。图14为本发明另一实施例提供的可移动平台的控制方法的流程图。如图14所示,在上述实施例的基础上,当所述电机对应的电机控制器为按照转矩环模式运行时,所述根据所述目标控制量,控制所述可移动平台运动,包括:
步骤S1301、根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩。
例如,根据可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω,确定该4个全向轮中每个全向轮的目标转矩。例如,将全向轮1的目标转矩记为Ttarget1,将全向轮2的目标转矩记为Ttarget2,将全向轮3的目标转矩记为Ttarget3,将全向轮4的目标转矩记为Ttarget4。
可选的,所述根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩,包括:根据所述目标速度对应的目标加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的目标合转矩与第二对角轮的目标合转矩的和值;根据所述目标角速度对应的目标角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值;根据所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的和值,以及所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值,确定所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩;根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩。
例如,全向轮1和全向轮4为第一对角轮,全向轮2和全向轮3为第二对角轮。当F*r=m*a*r中的a为如上所述的目标速度V对应的目标加速度Acc_ref_target时,F*r表示该4个全向轮中每个全向轮的目标转矩之和,此处,将目标速度V对应的目标加速度记为Acc_ref_target,此处,可将Ttarget1+Ttarget4记为第一对角轮的目标合转矩Ta′,将Ttarget2+Ttarget3记为第二对角轮的目标合转矩Tb′,Ta′和Tb′的和值Ta′+Tb′可表示为如下公式(7)
Ta′+Tb′=m*Acc_ref_target*r (7)
另外,将该可移动机器人11的目标角速度ω对应的目标角加速度记为Beta_ref_target,进一步,根据Beta_ref_target和L可确定出第一对角轮的目标合转矩Ta′和第二对角轮的目标合转矩Tb′的差值。Ta′和Tb′的差值Ta′-Tb′可表示为如下公式(8):
Ta′-Tb′=J*Beta_ref_target/L (8)
根据如上公式(7)和公式(8)即可确定出第一对角轮的目标合转矩Ta′和第二对角轮的目标合转矩Tb′。进一步,根据第一对角轮的目标合转矩Ta′和第二对角轮的目标合转矩Tb′,可确定出该4个全向轮中每个全向轮的目标转矩。
可选的,所述根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩,包括:根据所述目标速度和所述目标角速度,确定多个所述全向轮中每个所述全向轮需要达到的目标转速;根据所述第一对角轮的目标合转矩、以及所述第一对角轮包括的每个所述全向轮的目标转速,确定所述第一对角轮包括的每个所述全向轮的目标转矩;根据所述第二对角轮的目标合转矩、以及所述第二对角轮包括的每个所述全向轮的目标转速,确定所述第二对角轮包括的每个所述全向轮的目标转矩。
具体的,根据第一对角轮的目标合转矩Ta′和第二对角轮的目标合转矩Tb′,确定该4个全向轮中每个全向轮的目标转矩时,根据可移动机器人11的目标速度V和该可移动机器人11的目标角速度ω,确定可移动机器人11的底盘的4个电机中每个电机需要达到的目标转速,具体过程如上所述,此处不再赘述。进一步,根据电机1的目标转速ω1和电机4的目标转速ω4的比值,以及第一对角轮的目标合转矩Ta′即Ttarget1+Ttarget4,可确定出Ttarget1和Ttarget4。以及根据电机2的目标转速ω2和电机3的目标转速ω3的比值,以及第二对角轮的目标合转矩Tb′即Ttarget2+Ttarget3,可确定出Ttarget2和Ttarget3。
步骤S1302、根据每个所述全向轮的目标转矩,控制所述可移动平台运动。
当底盘主控确定出该4个全向轮中每个全向轮的目标转矩后,根据每个全向轮的目标转矩,控制可移动机器人运动。
可选的,所述根据每个所述全向轮的目标转矩,控制所述可移动平台运动,包括:将每个所述全向轮的目标转矩发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转矩驱动所述全向轮对应的电机转动。
例如,如图2所示,底盘主控将该4个电机中每个全向轮的目标转矩发送给电机控制器,由该电机控制器根据每个全向轮的目标转矩驱动该全向轮对应的电机转动,使得4个电机分别转动到相应的目标转矩。在其他实施例中,每个电机可以连接有一个电机控制器,该底盘主控确定出可移动机器人11的4个全向轮中每个全向轮的目标转矩后,可以将该4个全向轮中每个全向轮的目标转矩发送给该全向轮对应电机所连接的电机控制器,由每个电机对应的电机控制器控制相应的电机转动。
本实施例通过在电机对应的电机控制器为按照转矩环模式运行时,根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩,并根据每个所述全向轮的目标转矩,控制所述可移动平台运动,增加了控制所述可移动平台运动的灵活性。
本发明实施例提供一种可移动平台的控制设备。所述可移动平台包括动力***,所述动力***用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动。图15为本发明实施例提供的控制设备的结构图,如图15所示,控制设备140包括:存储器141和处理器142。其中,所述存储器用于存储程序代码;处理器142,调用所述程序代码,当程序代码被执行时,用于执行以下操作:获取用于控制所述可移动平台运动的用户指令;根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量;如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量;根据所述目标控制量,控制所述可移动平台运动。
可选的,所述可移动平台的第一控制量包括如下至少一种:所述可移动平台的第一速度、所述可移动平台的第一角速度;所述可移动平台的第二控制量包括如下至少一种:所述可移动平台的第二速度、所述可移动平台的第二角速度;所述可移动平台的目标控制量包括如下至少一种:所述可移动平台的目标速度、所述可移动平台的目标角速度。
可选的,处理器142根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度;对所述第一加速度进行调整得到第二加速度,和/或,对所述第一角加速度进行调整得到第二角加速度;根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台的目标控制量。
可选的,处理器142对所述第一加速度进行调整得到第二加速度时,具体用于:根据第一预设方式对所述第一加速度进行调整得到第二加速度。
可选的,处理器142对所述第一角加速度进行调整得到第二角加速度时,具体用于:根据第二预设方式对所述第一角加速度进行调整得到第二角加速度。
可选的,所述第一预设方式或所述第二预设方式包括如下至少一种:线性方式、S形方式、半S形方式。
可选的,处理器142根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:根据所述第二加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或根据所述第二角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
可选的,处理器142根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:检测多个所述全向轮中的每个所述全向轮是否打滑;若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个打滑的全向轮的打滑程度;根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度,和/或,根据所述第二角加速度和至少一个所述全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度;根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
可选的,处理器142根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:根据所述第三加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或根据所述第三角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
可选的,处理器142根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度时,具体用于:根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第三加速度。
可选的,处理器142根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度时,具体用于:根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度。
可选的,处理器142根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:检测多个所述全向轮中的每个所述全向轮是否打滑;若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个所述打滑的全向轮的打滑程度;根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度;根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
可选的,处理器142根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度;和/或根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度;根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
可选的,处理器142根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:根据所述第四加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或根据所述第四角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
可选的,处理器142根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度时,具体用于:根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四加速度。
可选的,处理器142根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度时,具体用于:根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四角加速度。
可选的,处理器142检测多个所述全向轮中的每个所述全向轮是否打滑时,具体用于:根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑;其中,所述第一转矩是根据所述第一控制量确定的。
可选的,处理器142根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑时,具体用于:确定各个所述全向轮的第一转矩和实际转矩的差值;若所述差值大于打滑阈值,则确定所述差值对应的全向轮打滑。
可选的,处理器142确定至少一个所述打滑的全向轮的打滑程度时,具体用于:通过对至少一个所述打滑的全向轮的第一转矩和至少一个所述打滑的全向轮的实际转矩的差值进行平滑处理,得到至少一个所述打滑的全向轮的打滑程度。
可选的,处理器142根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,还用于:获取多个所述全向轮中每个所述全向轮对应的电机的电流;根据每个所述全向轮对应的电机的电流,确定每个所述全向轮的实际转矩。
可选的,处理器142根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,还用于:根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩。
可选的,处理器142根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩时,具体用于:根据所述第一加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的合转矩与第二对角轮的合转矩的和值;根据所述第一角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值;根据所述第一对角轮的合转矩与所述第二对角轮的合转矩的和值,以及所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值,确定所述第一对角轮的合转矩、以及所述第二对角轮的合转矩;根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩。
可选的,处理器142根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩时,具体用于:根据所述第一速度和所述第一角速度,确定多个所述全向轮中每个所述全向轮需要达到的第一转速;根据所述第一对角轮的合转矩、以及所述第一对角轮包括的每个所述全向轮的第一转速,确定所述第一对角轮包括的每个所述全向轮的第一转矩;根据所述第二对角轮的合转矩、以及所述第二对角轮包括的每个所述全向轮的第一转速,确定所述第二对角轮包括的每个所述全向轮的第一转矩。
可选的,当所述电机对应的电机控制器为按照速度环模式运行时,处理器142根据所述目标控制量,控制所述可移动平台运动时,具体用于:根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转速;根据每个所述全向轮的目标转速,控制所述可移动平台运动。
可选的,处理器142根据每个所述全向轮的目标转速,控制所述可移动平台运动时,具体用于:将每个所述全向轮的目标转速发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转速驱动所述全向轮对应的电机转动。
可选的,当所述电机对应的电机控制器为按照转矩环模式运行时,处理器142根据所述目标控制量,控制所述可移动平台运动时,具体用于:根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩;根据每个所述全向轮的目标转矩,控制所述可移动平台运动。
可选的,处理器142根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩时,具体用于:根据所述目标速度对应的目标加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的目标合转矩与第二对角轮的目标合转矩的和值;根据所述目标角速度对应的目标角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值;根据所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的和值,以及所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值,确定所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩;根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩。
可选的,处理器142根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩时,具体用于:根据所述目标速度和所述目标角速度,确定多个所述全向轮中每个所述全向轮需要达到的目标转速;根据所述第一对角轮的目标合转矩、以及所述第一对角轮包括的每个所述全向轮的目标转速,确定所述第一对角轮包括的每个所述全向轮的目标转矩;根据所述第二对角轮的目标合转矩、以及所述第二对角轮包括的每个所述全向轮的目标转速,确定所述第二对角轮包括的每个所述全向轮的目标转矩。
可选的,处理器142根据每个所述全向轮的目标转矩,控制所述可移动平台运动时,具体用于:将每个所述全向轮的目标转矩发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转矩驱动所述全向轮对应的电机转动。
可选的,所述控制设备还包括:通讯接口143;处理器142获取用于控制所述可移动平台的用户指令时,具体用于:通过通讯接口143接收用户终端发送的用于控制所述可移动平台运动的用户指令。
本发明实施例提供的控制设备的具体原理和实现方式均与上述实施例类似,此处不再赘述。
本实施例通过获取用于控制所述可移动平台运动的用户指令,根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量,如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量,并根据所述目标控制量,控制所述可移动平台运动,从而避免用户在短时间内要求该可移动平台达到较大的速度时,由于电机需要在短时间内达到较大的转速而导致的该可移动平台的全向轮相对于地面打滑的问题,提高了可移动平台运动的稳定性。
另外,本实施例还提供一种可移动平台。该可移动平台包括:机身、动力***和上述实施例所述的控制设备。其中,动力***,安装在所述机身,用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动;该控制设备可执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选的,所述可移动平台包括如下至少一种:可移动机器人、可移动小车、无人驾驶车辆。
另外,本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的可移动平台的控制方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (63)
1.一种可移动平台的控制方法,所述可移动平台包括动力***,所述动力***用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动,其特征在于,所述方法包括:
获取用于控制所述可移动平台运动的用户指令;
根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量;
如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量;
根据所述目标控制量,控制所述可移动平台运动。
2.根据权利要求1所述的方法,其特征在于,所述可移动平台的第一控制量包括如下至少一种:
所述可移动平台的第一速度、所述可移动平台的第一角速度;
所述可移动平台的第二控制量包括如下至少一种:
所述可移动平台的第二速度、所述可移动平台的第二角速度;
所述可移动平台的目标控制量包括如下至少一种:
所述可移动平台的目标速度、所述可移动平台的目标角速度。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度;
对所述第一加速度进行调整得到第二加速度,和/或,对所述第一角加速度进行调整得到第二角加速度;
根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台的目标控制量。
4.根据权利要求3所述的方法,其特征在于,所述对所述第一加速度进行调整得到第二加速度,包括:
根据第一预设方式对所述第一加速度进行调整得到第二加速度。
5.根据权利要求4所述的方法,其特征在于,所述对所述第一角加速度进行调整得到第二角加速度,包括:
根据第二预设方式对所述第一角加速度进行调整得到第二角加速度。
6.根据权利要求5所述的方法,其特征在于,所述第一预设方式或所述第二预设方式包括如下至少一种:
线性方式、S形方式、半S形方式。
7.根据权利要求3-6任一项所述的方法,其特征在于,所述根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
根据所述第二加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或
根据所述第二角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
8.根据权利要求3所述的方法,其特征在于,所述根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
检测多个所述全向轮中的每个所述全向轮是否打滑;
若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个打滑的全向轮的打滑程度;
根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度,和/或,根据所述第二角加速度和至少一个所述全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度;
根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
9.根据权利要求8所述的方法,其特征在于,所述根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
根据所述第三加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或
根据所述第三角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
10.根据权利要求8或9所述的方法,其特征在于,所述根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度,包括:
根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第三加速度。
11.根据权利要求8或9所述的方法,其特征在于,所述根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度,包括:
根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度。
12.根据权利要求2所述的方法,其特征在于,所述根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
检测多个所述全向轮中的每个所述全向轮是否打滑;
若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个所述打滑的全向轮的打滑程度;
根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度;
根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
13.根据权利要求12所述的方法,其特征在于,所述根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度;和/或
根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度;
根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
14.根据权利要求13所述的方法,其特征在于,所述根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量,包括:
根据所述第四加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或
根据所述第四角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
15.根据权利要求13或14所述的方法,其特征在于,所述根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度,包括:
根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四加速度。
16.根据权利要求13或14所述的方法,其特征在于,所述根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度,包括:
根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四角加速度。
17.根据权利要求8或12所述的方法,其特征在于,所述检测多个所述全向轮中的每个所述全向轮是否打滑,包括:
根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑;
其中,所述第一转矩是根据所述第一控制量确定的。
18.根据权利要求17所述的方法,其特征在于,所述根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑,包括:
确定各个所述全向轮的第一转矩和实际转矩的差值;
若所述差值大于打滑阈值,则确定所述差值对应的全向轮打滑。
19.根据权利要求18所述的方法,其特征在于,所述确定至少一个所述打滑的全向轮的打滑程度,包括:
通过对至少一个所述打滑的全向轮的第一转矩和至少一个所述打滑的全向轮的实际转矩的差值进行平滑处理,得到至少一个所述打滑的全向轮的打滑程度。
20.根据权利要求17所述的方法,其特征在于,所述根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,所述方法还包括:
获取多个所述全向轮中每个所述全向轮对应的电机的电流;
根据每个所述全向轮对应的电机的电流,确定每个所述全向轮的实际转矩。
21.根据权利要求17所述的方法,其特征在于,所述根据多个所述全向轮中每个所述全向轮的目标转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,所述方法还包括:
根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩。
22.根据权利要求21所述的方法,其特征在于,所述根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩,包括:
根据所述第一加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的合转矩与第二对角轮的合转矩的和值;
根据所述第一角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值;
根据所述第一对角轮的合转矩与所述第二对角轮的合转矩的和值,以及所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值,确定所述第一对角轮的合转矩、以及所述第二对角轮的合转矩;
根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩。
23.根据权利要求22所述的方法,其特征在于,所述根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩,包括:
根据所述第一速度和所述第一角速度,确定多个所述全向轮中每个所述全向轮需要达到的第一转速;
根据所述第一对角轮的合转矩、以及所述第一对角轮包括的每个所述全向轮的第一转速,确定所述第一对角轮包括的每个所述全向轮的第一转矩;
根据所述第二对角轮的合转矩、以及所述第二对角轮包括的每个所述全向轮的第一转速,确定所述第二对角轮包括的每个所述全向轮的第一转矩。
24.根据权利要求7、9或14所述的方法,其特征在于,当所述电机对应的电机控制器为按照速度环模式运行时,所述根据所述目标控制量,控制所述可移动平台运动,包括:
根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转速;
根据每个所述全向轮的目标转速,控制所述可移动平台运动。
25.根据权利要求24所述的方法,其特征在于,所述根据每个所述全向轮的目标转速,控制所述可移动平台运动,包括:
将每个所述全向轮的目标转速发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转速驱动所述全向轮对应的电机转动。
26.根据权利要求7、9或14所述的方法,其特征在于,当所述电机对应的电机控制器为按照转矩环模式运行时,所述根据所述目标控制量,控制所述可移动平台运动,包括:
根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩;
根据每个所述全向轮的目标转矩,控制所述可移动平台运动。
27.根据权利要求26所述的方法,其特征在于,所述根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩,包括:
根据所述目标速度对应的目标加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的目标合转矩与第二对角轮的目标合转矩的和值;
根据所述目标角速度对应的目标角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值;
根据所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的和值,以及所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值,确定所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩;
根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩。
28.根据权利要求27所述的方法,其特征在于,所述根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩,包括:
根据所述目标速度和所述目标角速度,确定多个所述全向轮中每个所述全向轮需要达到的目标转速;
根据所述第一对角轮的目标合转矩、以及所述第一对角轮包括的每个所述全向轮的目标转速,确定所述第一对角轮包括的每个所述全向轮的目标转矩;
根据所述第二对角轮的目标合转矩、以及所述第二对角轮包括的每个所述全向轮的目标转速,确定所述第二对角轮包括的每个所述全向轮的目标转矩。
29.根据权利要求26所述的方法,其特征在于,所述根据每个所述全向轮的目标转矩,控制所述可移动平台运动,包括:
将每个所述全向轮的目标转矩发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转矩驱动所述全向轮对应的电机转动。
30.根据权利要求1所述的方法,其特征在于,所述获取用于控制所述可移动平台的用户指令,包括:
接收用户终端发送的用于控制所述可移动平台运动的用户指令。
31.一种可移动平台的控制设备,所述可移动平台包括动力***,所述动力***用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动,其特征在于,所述控制设备包括:存储器和处理器;
所述存储器用于存储程序代码;
所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:
获取用于控制所述可移动平台运动的用户指令;
根据所述用户指令,确定当前时刻用于控制所述可移动平台运动的第一控制量;
如果所述第一控制量相对于历史时刻用于控制所述可移动平台运动的第二控制量的变化量大于预设值,则根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量;
根据所述目标控制量,控制所述可移动平台运动。
32.根据权利要求31所述的控制设备,其特征在于,所述可移动平台的第一控制量包括如下至少一种:
所述可移动平台的第一速度、所述可移动平台的第一角速度;
所述可移动平台的第二控制量包括如下至少一种:
所述可移动平台的第二速度、所述可移动平台的第二角速度;
所述可移动平台的目标控制量包括如下至少一种:
所述可移动平台的目标速度、所述可移动平台的目标角速度。
33.根据权利要求32所述的控制设备,其特征在于,所述处理器根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:
根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度;
对所述第一加速度进行调整得到第二加速度,和/或,对所述第一角加速度进行调整得到第二角加速度;
根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台的目标控制量。
34.根据权利要求33所述的控制设备,其特征在于,所述处理器对所述第一加速度进行调整得到第二加速度时,具体用于:
根据第一预设方式对所述第一加速度进行调整得到第二加速度。
35.根据权利要求34所述的控制设备,其特征在于,所述处理器对所述第一角加速度进行调整得到第二角加速度时,具体用于:
根据第二预设方式对所述第一角加速度进行调整得到第二角加速度。
36.根据权利要求35所述的控制设备,其特征在于,所述第一预设方式或所述第二预设方式包括如下至少一种:
线性方式、S形方式、半S形方式。
37.根据权利要求33-36任一项所述的控制设备,其特征在于,所述处理器根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:
根据所述第二加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或
根据所述第二角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
38.根据权利要求33所述的控制设备,其特征在于,所述处理器根据所述第二加速度和/或所述第二角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:
检测多个所述全向轮中的每个所述全向轮是否打滑;
若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个打滑的全向轮的打滑程度;
根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度,和/或,根据所述第二角加速度和至少一个所述全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度;
根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
39.根据权利要求38所述的控制设备,其特征在于,所述处理器根据所述第三加速度和/或第三角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:
根据所述第三加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或
根据所述第三角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
40.根据权利要求38或39所述的控制设备,其特征在于,所述处理器根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三加速度时,具体用于:
根据所述第二加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第三加速度。
41.根据权利要求38或39所述的控制设备,其特征在于,所述处理器根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度时,具体用于:
根据所述第二角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第三角加速度。
42.根据权利要求32所述的控制设备,其特征在于,所述处理器根据所述第一控制量和所述第二控制量,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:
检测多个所述全向轮中的每个所述全向轮是否打滑;
若多个所述全向轮中至少有一个所述全向轮打滑,则确定至少一个所述打滑的全向轮的打滑程度;
根据所述第一控制量和所述第二控制量,确定当前时刻所述可移动平台需要达到的第一加速度和/或第一角加速度;
根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
43.根据权利要求42所述的控制设备,其特征在于,所述处理器根据至少一个所述打滑的全向轮的打滑程度、所述第一加速度和/或所述第一角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:
根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度;和/或
根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度;
根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量。
44.根据权利要求43所述的控制设备,其特征在于,所述处理器根据所述第四加速度和/或所述第四角加速度,确定当前时刻用于控制所述可移动平台运动的目标控制量时,具体用于:
根据所述第四加速度和所述第二速度,确定当前时刻所述可移动平台的目标速度;和/或
根据所述第四角加速度和所述第二角速度,确定当前时刻所述可移动平台的目标角速度。
45.根据权利要求43或44所述的控制设备,其特征在于,所述处理器根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四加速度时,具体用于:
根据所述第一加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四加速度。
46.根据权利要求43或44所述的控制设备,其特征在于,所述处理器根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度,确定至少一个所述打滑的全向轮不打滑时,所述可移动平台的第四角加速度时,具体用于:
根据所述第一角加速度和至少一个所述打滑的全向轮的打滑程度中最大的打滑程度,确定所述可移动平台的第四角加速度。
47.根据权利要求38或42所述的控制设备,其特征在于,所述处理器检测多个所述全向轮中的每个所述全向轮是否打滑时,具体用于:
根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑;
其中,所述第一转矩是根据所述第一控制量确定的。
48.根据权利要求47所述的控制设备,其特征在于,所述处理器根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑时,具体用于:
确定各个所述全向轮的第一转矩和实际转矩的差值;
若所述差值大于打滑阈值,则确定所述差值对应的全向轮打滑。
49.根据权利要求48所述的控制设备,其特征在于,所述处理器确定至少一个所述打滑的全向轮的打滑程度时,具体用于:
通过对至少一个所述打滑的全向轮的第一转矩和至少一个所述打滑的全向轮的实际转矩的差值进行平滑处理,得到至少一个所述打滑的全向轮的打滑程度。
50.根据权利要求47所述的控制设备,其特征在于,所述处理器根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,还用于:
获取多个所述全向轮中每个所述全向轮对应的电机的电流;
根据每个所述全向轮对应的电机的电流,确定每个所述全向轮的实际转矩。
51.根据权利要求47所述的控制设备,其特征在于,所述处理器根据多个所述全向轮中每个所述全向轮的第一转矩和每个所述全向轮的实际转矩,确定多个所述全向轮中的每个所述全向轮是否打滑之前,还用于:
根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩。
52.根据权利要求48所述的控制设备,其特征在于,所述处理器根据所述第一加速度和所述第一角加速度,确定多个所述全向轮中每个所述全向轮的第一转矩时,具体用于:
根据所述第一加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的合转矩与第二对角轮的合转矩的和值;
根据所述第一角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值;
根据所述第一对角轮的合转矩与所述第二对角轮的合转矩的和值,以及所述第一对角轮的合转矩与所述第二对角轮的合转矩的差值,确定所述第一对角轮的合转矩、以及所述第二对角轮的合转矩;
根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩。
53.根据权利要求52所述的控制设备,其特征在于,所述处理器根据所述第一对角轮的合转矩、以及所述第二对角轮的合转矩,确定所述可移动平台的多个所述全向轮中每个所述全向轮的第一转矩时,具体用于:
根据所述第一速度和所述第一角速度,确定多个所述全向轮中每个所述全向轮需要达到的第一转速;
根据所述第一对角轮的合转矩、以及所述第一对角轮包括的每个所述全向轮的第一转速,确定所述第一对角轮包括的每个所述全向轮的第一转矩;
根据所述第二对角轮的合转矩、以及所述第二对角轮包括的每个所述全向轮的第一转速,确定所述第二对角轮包括的每个所述全向轮的第一转矩。
54.根据权利要求37、39或44所述的控制设备,其特征在于,当所述电机对应的电机控制器为按照速度环模式运行时,所述处理器根据所述目标控制量,控制所述可移动平台运动时,具体用于:
根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转速;
根据每个所述全向轮的目标转速,控制所述可移动平台运动。
55.根据权利要求54所述的控制设备,其特征在于,所述处理器根据每个所述全向轮的目标转速,控制所述可移动平台运动时,具体用于:
将每个所述全向轮的目标转速发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转速驱动所述全向轮对应的电机转动。
56.根据权利要求37、39或44所述的控制设备,其特征在于,当所述电机对应的电机控制器为按照转矩环模式运行时,所述处理器根据所述目标控制量,控制所述可移动平台运动时,具体用于:
根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩;
根据每个所述全向轮的目标转矩,控制所述可移动平台运动。
57.根据权利要求56所述的控制设备,其特征在于,所述处理器根据所述可移动平台的目标速度和所述可移动平台的目标角速度,确定多个所述全向轮中每个所述全向轮的目标转矩时,具体用于:
根据所述目标速度对应的目标加速度和所述可移动平台的重量,确定多个所述全向轮中第一对角轮的目标合转矩与第二对角轮的目标合转矩的和值;
根据所述目标角速度对应的目标角加速度和所述可移动平台的底盘的几何中心到所述全向轮的距离,确定多个所述全向轮中所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值;
根据所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的和值,以及所述第一对角轮的目标合转矩与所述第二对角轮的目标合转矩的差值,确定所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩;
根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩。
58.根据权利要求57所述的控制设备,其特征在于,所述处理器根据所述第一对角轮的目标合转矩、以及所述第二对角轮的目标合转矩,确定多个所述全向轮中每个所述全向轮的目标转矩时,具体用于:
根据所述目标速度和所述目标角速度,确定多个所述全向轮中每个所述全向轮需要达到的目标转速;
根据所述第一对角轮的目标合转矩、以及所述第一对角轮包括的每个所述全向轮的目标转速,确定所述第一对角轮包括的每个所述全向轮的目标转矩;
根据所述第二对角轮的目标合转矩、以及所述第二对角轮包括的每个所述全向轮的目标转速,确定所述第二对角轮包括的每个所述全向轮的目标转矩。
59.根据权利要求56所述的控制设备,其特征在于,所述处理器根据每个所述全向轮的目标转矩,控制所述可移动平台运动时,具体用于:
将每个所述全向轮的目标转矩发送给所述全向轮对应的电机控制器,所述电机控制器用于根据所述目标转矩驱动所述全向轮对应的电机转动。
60.根据权利要求31所述的控制设备,其特征在于,所述控制设备还包括:通讯接口;
所述处理器获取用于控制所述可移动平台的用户指令时,具体用于:
通过所述通讯接口接收用户终端发送的用于控制所述可移动平台运动的用户指令。
61.一种可移动平台,其特征在于,包括:
机身;
动力***,安装在所述机身,用于驱动所述可移动平台运动,所述动力***包括至少一个电机控制器、多个电机以及与所述电机一一对应的多个全向轮,所述至少一个电机控制器用于控制多个所述电机转动,多个所述电机分别用于驱动对应的全向轮转动;
以及权利要求31-60任一项所述的控制设备。
62.根据权利要求61所述的可移动平台,其特征在于,所述可移动平台包括如下至少一种:
可移动机器人、可移动小车、无人驾驶车辆。
63.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1-30任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/090754 WO2020248132A1 (zh) | 2019-06-11 | 2019-06-11 | 可移动平台的控制方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111712399A true CN111712399A (zh) | 2020-09-25 |
Family
ID=72536730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980012189.7A Pending CN111712399A (zh) | 2019-06-11 | 2019-06-11 | 可移动平台的控制方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111712399A (zh) |
WO (1) | WO2020248132A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113075929A (zh) * | 2021-03-25 | 2021-07-06 | 深圳市伽利略机器人有限公司 | 滚刷式全向行走的机器人及其行走控制方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5373439A (en) * | 1992-09-18 | 1994-12-13 | Samsung Electronics Co., Ltd. | Method for controlling the traveling path of a robot during acceleration and deceleration |
EP1875888A2 (en) * | 2006-07-05 | 2008-01-09 | Kanto Auto Works, Ltd. | Differential steering type motorized vehicle |
CN104483968A (zh) * | 2014-12-02 | 2015-04-01 | 冯炳和 | 一种基于pid的四轮全向足球机器人运动控制方法 |
CN106568440A (zh) * | 2016-11-03 | 2017-04-19 | 珠海市微半导体有限公司 | 基于加速度传感器的机器人行为检测***及方法 |
CN107416443A (zh) * | 2017-05-25 | 2017-12-01 | 四川理工学院 | 一种智能移动平台 |
CN109343589A (zh) * | 2018-09-03 | 2019-02-15 | 北京云迹科技有限公司 | 用于机器人的速度平滑方法及装置 |
-
2019
- 2019-06-11 WO PCT/CN2019/090754 patent/WO2020248132A1/zh active Application Filing
- 2019-06-11 CN CN201980012189.7A patent/CN111712399A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5373439A (en) * | 1992-09-18 | 1994-12-13 | Samsung Electronics Co., Ltd. | Method for controlling the traveling path of a robot during acceleration and deceleration |
EP1875888A2 (en) * | 2006-07-05 | 2008-01-09 | Kanto Auto Works, Ltd. | Differential steering type motorized vehicle |
CN104483968A (zh) * | 2014-12-02 | 2015-04-01 | 冯炳和 | 一种基于pid的四轮全向足球机器人运动控制方法 |
CN106568440A (zh) * | 2016-11-03 | 2017-04-19 | 珠海市微半导体有限公司 | 基于加速度传感器的机器人行为检测***及方法 |
CN107416443A (zh) * | 2017-05-25 | 2017-12-01 | 四川理工学院 | 一种智能移动平台 |
CN109343589A (zh) * | 2018-09-03 | 2019-02-15 | 北京云迹科技有限公司 | 用于机器人的速度平滑方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113075929A (zh) * | 2021-03-25 | 2021-07-06 | 深圳市伽利略机器人有限公司 | 滚刷式全向行走的机器人及其行走控制方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2020248132A1 (zh) | 2020-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110362121B (zh) | 一种云台姿态控制方法及*** | |
CA2865592C (en) | Methods and apparatus to cooperatively lift a payload | |
US10279475B2 (en) | Methods and systems for selecting a velocity profile for controlling a robotic device | |
CN109397265B (zh) | 一种基于动力学模型的关节型工业机器人拖拽示教方法 | |
CN110446885B (zh) | 非正交云台的控制方法及其云台和存储装置 | |
CN110347167A (zh) | 一种速度规划方法及速度规划*** | |
CN111547176B (zh) | 自平衡机器人控制方法、***、自平衡机器人及介质 | |
CN111506100A (zh) | 多足机器人关节控制方法、装置和多足机器人 | |
CN107031741B (zh) | 车***姿校正方法及装置 | |
CN112154398A (zh) | 云台控制方法、控制器、云台、无人移动平台和存储介质 | |
CN111712399A (zh) | 可移动平台的控制方法、装置、设备及存储介质 | |
CN106945849B (zh) | 一种基于分段控制的卫星姿态机动方法 | |
JP5325149B2 (ja) | 軌道追従制御装置、方法及びプログラム | |
CN111547177B (zh) | 自平衡机器人控制方法、***、自平衡机器人及介质 | |
CN114510066A (zh) | 一种倾转旋翼重载物流无人机控制方法及*** | |
CN110929351B (zh) | 自平衡设备及其动量轮安装位置确定方法、装置、设备 | |
CN108319283A (zh) | 飞行器控制方法及飞行器 | |
CN111439329B (zh) | 姿态自调整的可操作式移动平衡装置、方法、终端及介质 | |
CN111634356B (zh) | 自平衡机器人控制方法、***、自平衡机器人及介质 | |
CN112455155B (zh) | 多模态变形轮及其控制方法、装置、电子设备和存储介质 | |
WO2022174230A1 (en) | Devices, systems, and methods for operating intelligent vehicles using separate devices | |
CN111699104A (zh) | 可移动平台的控制方法、设备、可移动平台及存储介质 | |
Chien et al. | Design and implementation of two-wheeled self-balancing vehicle based on load sensors | |
JP2016137822A (ja) | パワーアシスト台車 | |
WO2020047746A1 (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200925 |
|
WD01 | Invention patent application deemed withdrawn after publication |