CN110471288B - 闸机自适应控制方法、装置及闸机 - Google Patents
闸机自适应控制方法、装置及闸机 Download PDFInfo
- Publication number
- CN110471288B CN110471288B CN201910800077.XA CN201910800077A CN110471288B CN 110471288 B CN110471288 B CN 110471288B CN 201910800077 A CN201910800077 A CN 201910800077A CN 110471288 B CN110471288 B CN 110471288B
- Authority
- CN
- China
- Prior art keywords
- moment
- collision detection
- gate
- parameter
- preset
- 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
本申请实施例适用于自动控制技术领域,公开了一种闸机自适应控制方法、装置、闸机及计算机可读存储介质,其中,方法包括:检测闸机在当前运行环境下的预设参量,预设参量包括第一参量和/或第二参量,第一参量包括转动惯量和阻尼,第二参量包括最大位置误差、前半程平均力矩和后半程平均力矩;根据预设参量,自适应设定控制参数;根据控制参数控制闸机工作。本申请实施例通过检测当前运行环境下的预设参量,根据预设参量自适应设定闸机的控制参数,使得闸机的控制参数与外部运行环境相符,提高了闸机的控制精度。
Description
技术领域
本申请属于自动控制技术领域,尤其涉及一种闸机自适应控制方法、装置、闸机及计算机可读存储介质。
背景技术
闸机是一种通道阻挡装置,用于管理人流或车辆,规范行人或车辆的出入。目前,闸机的控制一般需要人为设定相应的控制参数,设定控制参数后,闸机会一直根据该控制参数进行工作。如果需要修改控制参数,则需要人为修改。
闸机运行时,外部环境不是一成不变的,外部环境的改变会对闸机的运动产生影响,使得原本设定的控制参数不再适用于当前的外部环境。例如,当温度降低至一定数值时,闸机内部的润滑脂会凝固,会带来额外的阻力。又例如,当外界风力较大,且风向与闸杆运动方向相向时,会带来额外的阻力,可能会产生碰撞误报。也就是说,目前的闸机控制方式的控制精度较低。
发明内容
有鉴于此,本申请实施例提供一种闸机自适应控制方法、装置、闸机及计算机可读存储介质,以解决现有闸机控制方式的控制精度较低的问题。
本申请实施例的第一方面提供一种闸机自适应控制方法,包括:
检测闸机在当前运行环境下的预设参量,所述预设参量包括第一参量和/或第二参量,所述第一参量包括转动惯量和阻尼,所述第二参量包括最大位置误差、前半程平均力矩和后半程平均力矩;
根据所述预设参量,自适应设定控制参数;
根据所述控制参数控制闸机工作。
结合第一方面,在一种可能的实现方式中,当所述预设参量包括所述第一参量时,所述根据所述预设参量,自适应设定控制参数,包括:
根据所述转动惯量和所述阻尼,设定速度环参数和位置环参数;
根据所述转动惯量和所述阻尼,设定运行时长参数。
结合第一方面,在一种可能的实现方式中,当所述预设参量包括所述第一参量和第二参量时,所述根据所述预设参量,自适应设定控制参数,包括:
根据转动惯量和阻尼,设定运行时长参数;
根据所述运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件;
或
根据所述转动惯量和所述阻尼,设定速度环参数和位置环参数;
根据所述转动惯量和所述阻尼,设定运行时长参数;
根据所述运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件。
结合第一方面,在一种可能的实现方式中,当所述预设参量包括所述第二参量时,所述根据所述预设参量,自适应设定控制参数,包括:
根据运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件。
结合第一方面,在一种可能的实现方式中,所述根据所述控制参数控制闸机工作,包括:
检测实时位置误差和实时力矩;
计算所述实时位置误差和所述碰撞检测参考误差之间的第一差值;
计算所述实时力矩和所述碰撞检测参考力矩之间的第二差值;
判断所述第一差值是否大于预设位置误差阈值;
判断所述第二差值是否大于预设力矩阈值;
当所述第一差值大于所述预设位置误差阈值和所述第二差值大于预设力矩阈值时,确定发生碰撞。
结合第一方面,在一种可能的实现方式中,所述方法还包括:
检测到闸机未运转持续时间达到预设时间阈值时,则更新所述预设位置误差阈值和所述预设力矩阈值。
结合第一方面,在一种可能的实现方式中,所述检测闸机在当前运行环境下的预设参量,包括:
以预设恒定力矩控制闸机运转至速度恒定,记录当次运转的运动数据;
根据所述运动数据计算目标转动惯量和目标阻尼;
判断是否达到预设测量结束条件;
若否,则将所述预设恒定力矩增加预设数值后,返回以预设恒定力矩控制闸机运转至速度恒定,记录当次运转的运动数据的步骤;
若是,则分别计算所述目标转动惯量的惯量平均值和所述目标阻尼的阻尼平均值,将所述惯量平均值和阻尼平均值作为所述转动惯量和所述阻尼;
和/或
控制闸机运转预设次数,分别记录每次运转的目标最大位置误差、目标前半程平均力矩和目标后半程平均力矩;
分别取所述目标最大位置误差、所述目标前半程平均力矩和所述目标后半程平均力矩的平均值作为所述最大位置误差、所述前半程平均力矩和所述后半程平均力矩。
本申请实施例的第二方面提供一种闸机自适应控制装置,包括:
检测模块,用于检测闸机在当前运行环境下的预设参量,所述预设参量包括第一参量和/或第二参量,所述第一参量包括转动惯量和阻尼,所述第二参量包括最大位置误差、前半程平均力矩和后半程平均力矩;
参数设定模块,用于根据所述预设参量,自适应设定控制参数;
控制模块,用于根据所述控制参数控制闸机工作。
本申请实施例的第三方面提供一种闸机,包括存储器、控制器以及存储在所述存储器中并可在所述控制器上运行的计算机程序,所述控制器执行所述计算机程序时实现如上述第一方面任一项所述的方法。
本申请实施例的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被控制器执行时实现如上述第一方面任一项所述的方法。
本申请实施例通过检测当前运行环境下的预设参量,根据预设参量自适应设定闸机的控制参数,使得闸机的控制参数与外部运行环境相符,提高了闸机的控制精度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的闸机机械运动原理示意图;
图2为本申请实施例提供的通道闸闭环控制系统示意框图;
图3为本申请实施例提供的一种闸机自适应控制方法的流程示意框图;
图4为本申请实施例提供的转动惯量和阻尼测量流程示意框图;
图5为本申请实施例提供的转速-时间拟合曲线示意图;
图6为本申请实施例提供的曲线示意图;
图7为本申请实施例提供的误差-时间拟合曲线示意图;
图8为本申请实施例提供的力矩-时间拟合曲线示意图;
图9为本申请实施例提供的步骤S302的一种流程示意框图;
图10为本申请实施例提供的步骤S302的另一种流程示意框图;
图11为本申请实施例提供的步骤S302的又一种流程示意框图;
图12为本申请实施例提供的步骤S302的又一种流程示意框图;
图13为本申请实施例提供的步骤S303的具体流程示意框图;
图14为本申请实施例提供的一种闸机自适应控制装置的结构示意框图;
图15为本申请实施例提供的闸机的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。
本申请实施例提供的闸机自适应控制方案可以适用于各种闸机,即本申请实施例的闸机可以是通道闸或道闸,亦或者是其他类型的闸机,在此不作限定。
道闸和通道闸的机械运动可简化为一个由电机驱动的闸杆摆动(如图1所示)。其中,闸杆的转动惯量为J,转动时,除了受到电机的驱动力T,还受到内部的机械摩擦力Mf、内部润滑脂和空气的阻尼力kω和风力D等。通道闸的闸杆在水平面内运动,重心高度不变,不受重力影响;道闸在竖直平面内运转,重心高度变化,但其内有一根匹配重力的弹簧,几乎平衡了重力,因此,为了计算简便,忽略重力影响。下文以通道闸为例,但同样适用于道闸。
基于图1可得,闸杆动力学方程为:
其中,θ为闸杆角度,ω为角速度,T为电机扭矩,k为运动阻尼系数,Mf为内部摩擦力,D为外部干扰力,主要是风力。
参见图2示出的通道闸闭环控制系统示意框图,该闭环控制系统隐藏了力矩环,内环是速度环,外环是位置环。
通道闸控制系统的参数分五部分:电流环参数(与电机有关,此处不讨论),速度环PI值k1和k2,位置环P值k3,轨迹规划时长L,碰撞检测位置误差和力矩阈值。不同的惯量、阻尼和干扰风力,对应的不同的最优参数和最快运行速度。
其中,惯量受闸杆质量和长度等影响,阻尼受闸杆面积和外界环境温度等影响。外界环境的各个因素(例如风力)都是可能变化的,为了使闸杆在最短的时间内完成运动,又不引起振动,简化生产工艺,上述参数需要自动适应外界环境的各个因素的变化。
请参见图3,为本申请实施例提供的一种闸机自适应控制方法的流程示意框图,该方法可以包括以下步骤:
步骤S301、检测闸机在当前运行环境下的预设参量,预设参量包括第一参量和/或第二参量,第一参量包括转动惯量和阻尼,第二参量包括最大位置误差、前半程平均力矩和后半程平均力矩。
需要说明的是,上述当前运行环境是指闸机进行自适应控制时对应的外部环境。例如,某一时刻闸机自适应控制时,这一时刻对应的外部环境则为上述当前运行环境。
上述预设参量可以仅包括转动惯量和阻尼,也可以仅包括最大位置误差、前半程平均力矩和后半程平均力矩,也可以同时包括转动惯量、阻尼、最大位置误差、前半程平均力矩和后半程平均力矩。预设参量的选择可以根据实际控制需要进行设定。其中,最大位置误差也可以称为最大运动误差,运动误差是指闸杆实际位置和轨迹规划算法给出的参考位置之间的误差,而最大运动误差即为运动误差中的最大值。
其中,参见图4示出的转动惯量和阻尼测量流程示意框图,上述检测闸机在当前运行环境下的预设参量的具体过程可以包括:
步骤S401、以预设恒定力矩M控制闸机运转至速度恒定,记录当次运转的运动数据。
需要说明的是,上述预设恒定力矩M的初始值可以取静摩擦力矩M0的1.5倍。其中,以恒定慢速控制闸机从下极限正转90°,并记录运转过程中的实时力矩,根据实时力矩计算平均力矩,将该平均力矩作为静摩擦力矩M0。
具体地,控制闸机回起点,然后再以预设恒定力矩M控制闸机运转,运转至速度恒定,并记录运转过程中的运动数据。该运动数据可以包括但不限于转速ω。
步骤S402、根据运动数据计算目标转动惯量和目标阻尼。
在得到当次运动数据之后,可以根据转速ω计算出阻尼,再根据阻尼计算出转动惯量。
转动惯量和阻尼的计算原理具体如下:
由上式可见,ω(t)由T,k,ξ决定,T是给定的,k,ξ是未知参数。如果知道了ω(t),就可由曲线拟合方法得到k,ξ。ω(t)为非线性函数,具体拟合效果可以参见图5示出的转速-时间拟合曲线示意图。
由图5可知,当ω(t)达到稳态t→∞时,
由此式可以得到阻尼k。
将ω(t)等式变换,并代入上式,得:
两边同时取对数,可得:
上式右边是已知的,可简化为:
y=-ξt
根据上述原理,可以根据转速ω计算出转动惯量和阻尼。
步骤S403、判断是否达到预设测量结束条件。若否,则M=M+M1,返回上述步骤S401。若是,则进入步骤S404。
具体地,在测量一次之后,判断是否达到预设测量结束条件,如果达到预设测量结束条件,则可以计算多次平均值,将相应的平均值作为上述转动惯量和阻尼。如果否,则M=M+M1,重新测量一次。
其中,上述M1是指每次增加的力矩,其可以等于0.5M0,即每次增加0.5M0,最大为电机额定转矩。
上述预设测量结束条件可以为T达到额定转矩、速度达到电机额定转速或者此次全程的运转角度大于极限行程,即当T达到额定转矩,或者速度达到电机额定转速,或者此次全程的运转角度大于极限行程,则不在进行下一次测量。
步骤S404、分别计算目标转动惯量的惯量平均值和目标阻尼的阻尼平均值,将惯量平均值和阻尼平均值作为转动惯量和阻尼。
具体地,重复测量多次之后,得到多个目标转动惯量和多个目标阻尼,然后根据多个目标转动惯量计算惯量平均值,根据多个目标阻尼计算阻尼平均值,将计算得到的惯量平均值作为上述预设参量中的转动惯量,将阻尼平均值作为上述预设参量中的阻尼。
上述预设参量还可能包括最大位置误差、前半程平均力矩和后半程平均力矩。在一些实施例中,最大位置误差、前半程平均力矩和后半程平均力矩的检测过程具体包括:控制闸机运转预设次数,分别记录每次运转的目标最大位置误差、目标前半程平均力矩和目标后半程平均力矩;分别取目标最大位置误差、目标前半程平均力矩和目标后半程平均力矩的平均值作为最大位置误差、前半程平均力矩和后半程平均力矩。
其中,上述预设次数可以为3至10次,其具体数值在此不作限定。
具体地,在闸机开机时,运转一次,以100Hz以上的频率记录运动误差和力矩,其中,运动误差指闸杆实际位置与轨迹规划算法给出的参考位置之间的差距;取最大误差Emax、前半程平均力矩T1和后半程平均力矩T2。重复3-10次,取平均值,得最大位置误差前半程平均力矩后半程平均力矩
需要说明的是,上文示出了转动惯量和阻尼的检测流程,还示出了最大位置误差、前半程平均力矩和后半程平均力矩的检测流程。当预设参量同时包括转动惯量、阻尼、最大位置误差、前半程平均力矩和后半程平均力矩,则将结合这两个检测流程对预设参量进行检测。
在检测出当前运行环境下的预设参量,则可以根据预设参量自适应设定闸机的控制参数。
步骤S302、根据预设参量,自适应设定控制参数。
需要说明的是,上述控制参数可以包括速度环参数、位置环参数、运行时长参数、碰撞检测位置误差以及力矩阈值中的至少一个。根据控制需要和应用场景可以选择自适应设定相应的控制参数。即根据需要可以对闸机中的一个或多个参数进行自适应控制。
在一些实施例中,仅需要对闸机的运行时长和最大运行速度自适应设定,此时,上述控制参数可以仅包括位置环参数、速度环参数和运行时长参数;而在其他实施例中,仅需要对闸机的碰撞检测条件自适应设定,此时,上述控制参数可以仅包括最大位置误差、前半程平均力矩和后半程平均力矩;当然,如果需要同时对闸机的运行时长、最大运行速度、碰撞检测条件自适应设定,则上述控制参数包括位置环参数、速度环参数、运行时长参数、最大位置误差、前半程平均力矩和后半程平均力矩。
根据转动惯量和阻尼可以自适应设定闸机的位置环参数、速度环参数和运行时长参数。下面将对此原理过程进行介绍说明。
测量转动惯量J和阻尼k后,即可设计闭环控制系统。通道闸速度控制数学模型:
eω=ωr-ω
由上式建立状态空间方程,再由极点配置法,设计控制参数k1和k2。
速度环设计完成后,再建立全闭环状态空间方程。由于全闭环状态空间方程中只有一个参数k3,不妨取k3=Ck(k为阻尼,C为常数,由实验测定),可证明此系统是稳定的。至此,速度环参数和位置环参数设定完毕。
开关闸运动轨迹规划采用计算简便的5次曲线,为使运动平稳,此轨迹所需要的力矩,应符合条件:
其中,A为行程,L为运行时长,Tmax为电机所能提供的最大扭矩,此轨迹只有2个参数:行程A和运行时长L,行程是固定的,运行时间需要自适应,做到运行时间最短。为了满足上述条件,同时考虑阻尼k的影响,运行时长设为:
其中C1可由上式算出,C2为正常数,由实验确定。
可选地,由于温度和风力是变化的,故还需在线修正,即在每次运转后,如果力矩有10%以上的时间T>Tmax,则可以将运行时间增加10%。
在介绍完根据转动惯量和阻尼自适应设定速度环参数、位置环参数和运行时长的相关原理之后,下面将对根据最大位置误差、第一力矩和第二力矩自适应设定碰撞检测条件的原理进行介绍说明。
得到碰撞检测参考误差er(t),和碰撞检测参考力矩Tr(t)后,设定碰撞检测的条件为:
其中,eth,Tth为预设位置误差阈值和预设力矩阈值,由实验设定,越小碰撞检测越灵敏。
可选地,在闸机运转一定次数后,则可以重新计算更新碰撞检测参考误差er(t)和碰撞检测参考力矩Tr(t)。如果闸机长时间(30分钟以上)未运转后,温度、风力可能发生了较大变化,为了避免误报,将阈值eth,Tth增加20%。
在自适应设定闸机的控制参数之后,闸机可以根据设定的控制参数进行工作。
步骤S303、根据控制参数控制闸机工作。
可见,通过检测当前运行环境下的预设参量,根据预设参量自适应设定闸机的控制参数,使得闸机的控制参数与外部运行环境相符,提高了闸机的控制精度。
下面将进一步介绍上述实施例一的步骤S302的具体流程。
在一些实施例中,参见图9示出的步骤S302的一种流程示意框图,当预设参量包括第一参量时,上述根据预设参量,自适应设定控制参数的具体过程可以包括:
步骤S901、根据转动惯量和阻尼,设定速度环参数和位置环参数。
步骤S902、根据转动惯量和阻尼,设定运行时长参数。
其中,上述步骤的具体实现过程请参见上文相关原理介绍,在此不再赘述。
自适应设定闸机的速度环参数、位置环参数、运行时长参数之后,闸机可以在启动时,自适应设定当前环境下最大运动速度,不用人为修改控制参数。
在一些实施例中,参见图10示出的步骤S302的另一种流程示意框图,当预设参量包括第一参量和第二参量时,上述根据预设参量,自适应设定控制参数的具体过程可以包括:
步骤S1001、根据转动惯量和阻尼,设定运行时长参数。
步骤S1002、根据运行时长参数和最大位置误差,计算碰撞检测参考误差。
步骤S1003、根据前半程平均力矩和后半程平均力矩,计算碰撞检测参考力矩。
步骤S1004、根据碰撞检测参考误差和碰撞检测参考力矩,设定碰撞检测条件。
其中,上述步骤的具体实现过程请参见上文相关原理介绍,在此不再赘述。
此时,仅需要自适应设定闸机的碰撞检测条件。自适应设定碰撞检测条件可以避免闸机漏报或误报。
其中,为了防止闸机在运行过程中与人或物发生碰撞,目前闸机是基于电机驱动器的最大力矩、最大误差限制功能,即当力矩和误差超过一定值时,停止运转。但是,该防护措施易受到温度影响和风的干扰,低温时,内部润滑脂凝固引起的阻力,可能被误认为是碰撞;当运转方向与风相向时,也可能误认为是碰撞,即误报。
相较于现有的闸机碰撞检测方式,本实施例通过根据外部运行环境的变化,自适应设定碰撞检测条件,可以使得闸机的碰撞检测参数适用温度、风力等外界因素的变化,减少误报。
在一些实施例中,参见图11示出的步骤S302的又一种流程示意框图,当预设参量包括第一参量和第二参量时,上述根据预设参量,自适应设定控制参数的具体过程可以包括:
步骤S1101、根据转动惯量和阻尼,设定速度环参数和位置环参数。
步骤S1102、根据运行时长参数和阻尼,设定运行时长参数。
步骤S1103、根据运行时长参数和最大位置误差,计算碰撞检测参考误差。
步骤S1104、根据前半程平均力矩和后半程平均力矩,计算碰撞检测参考力矩。
步骤S1105、根据碰撞检测参考误差和碰撞检测参考力矩,设定碰撞检测条件。
其中,上述步骤的具体实现过程请参见上文相关原理介绍,在此不再赘述。
此时,需要自适应设定自适应设定闸机的速度环参数、位置环参数、运行时长参数和闸机的碰撞检测条件。
在一些实施例中,参见图12示出的步骤S302的又一种流程示意框图,当预设参量包括第二参量时,上述根据预设参量,自适应设定控制参数的具体过程可以包括:
步骤S1201、根据运行时长参数和最大位置误差,计算碰撞检测参考误差。
步骤S1202、根据前半程平均力矩和后半程平均力矩,计算碰撞检测参考力矩。
步骤S1203、根据碰撞检测参考误差和碰撞检测参考力矩,设定碰撞检测条件。
其中,上述步骤的具体实现过程请参见上文相关原理介绍,在此不再赘述。
需要说明的是,与图10的实施例相比,图10实施例中的运行时长是根据阻尼自适应设定。而本实施例中的运行时长不是自适应设定。
需要指出的是,上文示出了步骤S302的多种不同情况,实际应用中,步骤S302还可以并不仅仅限于上文示出的情况,例如,还可以仅设定运行时长参数。
在自适应设定闸机控制参数之后,闸机即可根据所设定的参数进行工作。如果自适应设定的控制参数包括运行时长参数,闸机即可在启动时自适应设定最大运行速度。如果自适应设定的控制参数包括碰撞检测条件,闸机即可根据自适应设定的碰撞检测条件进行碰撞检测。
在一些实施例中,参见图13示出的步骤S303的具体流程示意框图,上述根据控制参数控制闸机工作的具体过程可以包括:
步骤S1301、检测实时位置误差和实时力矩。
步骤S1302、计算实时位置误差和碰撞检测参考误差之间的第一差值。
步骤S1303、计算实时力矩和碰撞检测参考力矩之间的第二差值。
步骤S1304、判断第一差值是否大于预设位置误差阈值。
步骤S1305、判断第二差值是否大于预设力矩阈值。
步骤S1306、当第一差值大于预设位置误差阈值和第二差值大于预设力矩阈值时,确定发生碰撞。反之,当第一差值小于或等于预设位置误差阈值,和/或,第二差值小于或等于预设力矩阈值时,则认为没有发生碰撞,返回步骤S1301,继续检测闸机运转过程中实时的位置误差和实时力矩。
可以看出,通过检测当前运行环境下的预设参量,然后根据预设参量自适应设定碰撞检测条件的各个参数,根据自适应设定的碰撞检测条件参数进行碰撞检测,可以降低误报的概率,提高碰撞检测精确度。
进一步地,还可以对碰撞检测中的相关阈值进行更新,即上述方法还可以包括:检测到闸机未运转持续时间达到预设时间阈值时,则更新预设位置误差阈值和预设力矩阈值。
其中,上述预设时间阈值可以根据实际应用需求进行设定。更新阈值是指增加或减少阈值。例如,当闸机30分钟以上未运转时,鉴于外界的温度和风力可能发生了较大变化,为了避免误报,则将预设位置误差阈值和预设力矩阈值增加20%。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
参见图14,为本申请实施例提供的一种闸机自适应控制装置的结构示意框图,包括:
检测模块141,用于检测闸机在当前运行环境下的预设参量,预设参量包括第一参量和/或第二参量,第一参量包括转动惯量和阻尼,第二参量包括最大位置误差、前半程平均力矩和后半程平均力矩;
参数设定模块142,用于根据预设参量,自适应设定控制参数;
控制模块143,用于根据控制参数控制闸机工作。
在一种可能的实现方式中,当预设参量包括第一参量时,上述参数设定模块可以具体用于:根据转动惯量和阻尼,设定速度环参数和位置环参数;根据转动惯量和阻尼,设定运行时长参数。
在一种可能的实现方式中,当预设参量包括第一参量和第二参量时,上述参数设定模块可以具体用于:根据转动惯量和阻尼,设定运行时长参数;根据运行时长参数和最大位置误差,计算碰撞检测参考误差;根据前半程平均力矩和后半程平均力矩,计算碰撞检测参考力矩;
根据碰撞检测参考误差和碰撞检测参考力矩,设定碰撞检测条件;
或
根据转动惯量和阻尼,设定速度环参数和位置环参数;根据转动惯量和阻尼,设定运行时长参数;根据运行时长参数和最大位置误差,计算碰撞检测参考误差;根据前半程平均力矩和后半程平均力矩,计算碰撞检测参考力矩;根据碰撞检测参考误差和碰撞检测参考力矩,设定碰撞检测条件。
在一种可能的实现方式中,当预设参量包括第二参量时,上述参数设定模块可以具体用于:根据运行时长参数和最大位置误差,计算碰撞检测参考误差;根据前半程平均力矩和后半程平均力矩,计算碰撞检测参考力矩;根据碰撞检测参考误差和碰撞检测参考力矩,设定碰撞检测条件。
在一种可能的实现方式中,上述控制模块可以具体用于包括:检测实时位置误差和实时力矩;计算实时位置误差和碰撞检测参考误差之间的第一差值;计算实时力矩和碰撞检测参考力矩之间的第二差值;判断第一差值是否大于预设位置误差阈值;判断第二差值是否大于预设力矩阈值;当第一差值大于预设位置误差阈值和第二差值大于预设力矩阈值时,确定发生碰撞。
在一种可能的实现方式中,上述装置还可以包括:更新模块,用于检测到闸机未运转持续时间达到预设时间阈值时,则更新预设位置误差阈值和预设力矩阈值。
在一种可能的实现方式中,上述检测模块可以具体用于:以预设恒定力矩控制闸机运转至速度恒定,记录当次运转的运动数据;根据运动数据计算目标转动惯量和目标阻尼;判断是否达到预设测量结束条件;若否,则将预设恒定力矩增加预设数值后,返回以预设恒定力矩控制闸机运转至速度恒定,记录当次运转的运动数据的步骤;若是,则分别计算目标转动惯量的惯量平均值和目标阻尼的阻尼平均值,将惯量平均值和阻尼平均值作为转动惯量和阻尼;
和/或
控制闸机运转预设次数,分别记录每次运转的目标最大位置误差、目标前半程平均力矩和目标后半程平均力矩;分别取目标最大位置误差、目标前半程平均力矩和目标后半程平均力矩的平均值作为最大位置误差、前半程平均力矩和后半程平均力矩。
需要说明的是,本申请实施例提供的闸机自适应控制装置与上述实施例中的闸机自适应控制方法一一对应,相关介绍请参见上文相应内容,在此不再赘述。
参见图15示出的本申请一实施例提供的闸机的示意图。如图15所示,该实施例的闸机15包括:处理器150、存储器151以及存储在所述存储器151中并可在所述处理器150上运行的计算机程序152。所述处理器150执行所述计算机程序152时实现上述各个闸机自适应控制方法实施例中的步骤。或者,所述处理器150执行所述计算机程序152时实现上述各装置实施例中各模块的功能。
所述闸机15可以是道闸、通道闸或者其他类型的闸机。所述闸机可包括,但不仅限于,处理器150、存储器151。本领域技术人员可以理解,图15仅仅是闸机15的示例,并不构成对闸机15的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述闸机还可以包括输入输出设备、网络接入设备、总线、电机、电机驱动等。
所称处理器150可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器151可以是所述闸机15的内部存储单元,例如闸机15的硬盘或内存。所述存储器151也可以是所述闸机15的外部存储设备,例如所述闸机15上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,所述存储器151还可以既包括所述闸机15的内部存储单元也包括外部存储设备。所述存储器151用于存储所述计算机程序以及所述闸机所需的其他程序和数据。所述存储器151还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置、闸机和方法,可以通过其它的方式实现。例如,以上所描述的装置、闸机实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种闸机自适应控制方法,其特征在于,包括:
检测闸机在当前运行环境下的预设参量,所述预设参量包括第一参量和第二参量,或所述第二参量,所述第一参量包括转动惯量和阻尼,所述第二参量包括最大位置误差、前半程平均力矩和后半程平均力矩;
根据所述预设参量,自适应设定控制参数;
根据所述控制参数控制闸机工作;
其中,当所述预设参量包括所述第一参量和第二参量时,所述根据所述预设参量,自适应设定控制参数,包括:
根据所述转动惯量和所述阻尼,设定运行时长参数;
根据所述运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件;
或
根据所述转动惯量和所述阻尼,设定速度环参数和位置环参数;
根据所述转动惯量和所述阻尼,设定运行时长参数;
根据所述运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件;
当所述预设参量包括所述第二参量时,所述根据所述预设参量,自适应设定控制参数,包括:
根据设定的运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件;
2.如权利要求1所述的闸机自适应控制方法,其特征在于,所述根据所述控制参数控制闸机工作,包括:
检测实时位置误差和实时力矩;
计算所述实时位置误差和所述碰撞检测参考误差之间的第一差值;
计算所述实时力矩和所述碰撞检测参考力矩之间的第二差值;
判断所述第一差值是否大于预设位置误差阈值;
判断所述第二差值是否大于预设力矩阈值;
当所述第一差值大于所述预设位置误差阈值和所述第二差值大于预设力矩阈值时,确定发生碰撞。
3.如权利要求2所述的闸机自适应控制方法,其特征在于,所述方法还包括:
检测到闸机未运转持续时间达到预设时间阈值时,则更新所述预设位置误差阈值和所述预设力矩阈值。
4.如权利要求1所述闸机自适应控制方法,其特征在于,所述检测闸机在当前运行环境下的预设参量,包括:
以预设恒定力矩M控制闸机运转至速度恒定,记录当次运转的运动数据;
根据所述运动数据计算目标转动惯量和目标阻尼;
判断是否达到预设测量结束条件;
若否,则M=M+M1后,返回以预设恒定力矩控制闸机运转至速度恒定,记录当次运转的运动数据的步骤,所述M1为每次增加的力矩,最大为电机额定转矩;
若是,则分别计算所述目标转动惯量的惯量平均值和所述目标阻尼的阻尼平均值,将所述惯量平均值和阻尼平均值作为所述转动惯量和所述阻尼;
和/或
控制闸机运转预设次数,分别记录每次运转的目标最大位置误差、目标前半程平均力矩和目标后半程平均力矩;
分别取所述目标最大位置误差、所述目标前半程平均力矩和所述目标后半程平均力矩的平均值作为所述最大位置误差、所述前半程平均力矩和所述后半程平均力矩。
5.一种闸机自适应控制装置,其特征在于,包括:
检测模块,用于检测闸机在当前运行环境下的预设参量,所述预设参量包括第一参量和第二参量,或所述第二参量,所述第一参量包括转动惯量和阻尼,所述第二参量包括最大位置误差、前半程平均力矩和后半程平均力矩;
参数设定模块,用于根据所述预设参量,自适应设定控制参数;
控制模块,用于根据所述控制参数控制闸机工作;
其中,当所述预设参量包括所述第一参量和第二参量时,所述参数设定模块具体用于:
根据所述转动惯量和所述阻尼,设定运行时长参数;
根据所述运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件;
或
根据所述转动惯量和所述阻尼,设定速度环参数和位置环参数;
根据所述转动惯量和所述阻尼,设定运行时长参数;
根据所述运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件;
当所述预设参量包括所述第二参量时,所述参数设定模块具体用于:
根据设定的运行时长参数和所述最大位置误差,计算碰撞检测参考误差;
根据所述前半程平均力矩和所述后半程平均力矩,计算碰撞检测参考力矩;
根据所述碰撞检测参考误差和所述碰撞检测参考力矩,设定碰撞检测条件;
6.如权利要求5所述闸机自适应控制装置,其特征在于,所述控制模块具体用于:
检测实时位置误差和实时力矩;
计算所述实时位置误差和所述碰撞检测参考误差之间的第一差值;
计算所述实时力矩和所述碰撞检测参考力矩之间的第二差值;
判断所述第一差值是否大于预设位置误差阈值;
判断所述第二差值是否大于预设力矩阈值;
当所述第一差值大于所述预设位置误差阈值和所述第二差值大于预设力矩阈值时,确定发生碰撞。
7.如权利要求5所述闸机自适应控制装置,其特征在于,所述装置还包括:
更新模块,用于检测到闸机未运转持续时间达到预设时间阈值时,则更新所述预设位置误差阈值和所述预设力矩阈值。
8.如权利要求5所述闸机自适应控制装置,其特征在于,所述检测模块具体用于:
以预设恒定力矩M控制闸机运转至速度恒定,记录当次运转的运动数据;
根据所述运动数据计算目标转动惯量和目标阻尼;
判断是否达到预设测量结束条件;
若否,则M=M+M1后,返回以预设恒定力矩控制闸机运转至速度恒定,记录当次运转的运动数据的步骤,所述M1为每次增加的力矩,最大为电机额定转矩;
若是,则分别计算所述目标转动惯量的惯量平均值和所述目标阻尼的阻尼平均值,将所述惯量平均值和阻尼平均值作为所述转动惯量和所述阻尼;
和/或
控制闸机运转预设次数,分别记录每次运转的目标最大位置误差、目标前半程平均力矩和目标后半程平均力矩;
分别取所述目标最大位置误差、所述目标前半程平均力矩和所述目标后半程平均力矩的平均值作为所述最大位置误差、所述前半程平均力矩和所述后半程平均力矩。
9.一种闸机,包括存储器、控制器以及存储在所述存储器中并可在所述控制器上运行的计算机程序,其特征在于,所述控制器执行所述计算机程序时实现如权利要求1至4任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被控制器执行时实现如权利要求1至4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910800077.XA CN110471288B (zh) | 2019-08-28 | 2019-08-28 | 闸机自适应控制方法、装置及闸机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910800077.XA CN110471288B (zh) | 2019-08-28 | 2019-08-28 | 闸机自适应控制方法、装置及闸机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110471288A CN110471288A (zh) | 2019-11-19 |
CN110471288B true CN110471288B (zh) | 2022-10-11 |
Family
ID=68512466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910800077.XA Active CN110471288B (zh) | 2019-08-28 | 2019-08-28 | 闸机自适应控制方法、装置及闸机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110471288B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111504620B (zh) * | 2020-04-15 | 2022-01-11 | 浙江大华技术股份有限公司 | 道闸弹簧组的故障检测方法、装置、道闸和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101859448A (zh) * | 2010-05-28 | 2010-10-13 | 广州市吕顺机电设备有限公司 | 一种闸机自动检测方法、闸机检测装置及其系统 |
CN206906819U (zh) * | 2017-07-06 | 2018-01-19 | 深圳市嘉昱机电有限公司 | 闸机控制装置和系统 |
CN108189036A (zh) * | 2018-01-17 | 2018-06-22 | 广州视源电子科技股份有限公司 | 力矩控制方法、装置、机器人及存储介质 |
CN108629857A (zh) * | 2017-03-24 | 2018-10-09 | 杭州海康威视数字技术股份有限公司 | 一种控制闸杆的方法和系统 |
CN109176462A (zh) * | 2018-11-15 | 2019-01-11 | 国网江苏省电力有限公司 | 一种自适应的机器人行走轨道抱闸机构 |
CN109235319A (zh) * | 2018-10-15 | 2019-01-18 | 上海华铭智能终端设备股份有限公司 | 一种闸机通道的开关装置 |
CN109639211A (zh) * | 2019-02-22 | 2019-04-16 | 深圳市嘉昱机电有限公司 | 一种闸机控制系统及控制方法 |
CN109732599A (zh) * | 2018-12-29 | 2019-05-10 | 深圳市越疆科技有限公司 | 一种机器人碰撞检测方法、装置、存储介质及机器人 |
-
2019
- 2019-08-28 CN CN201910800077.XA patent/CN110471288B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101859448A (zh) * | 2010-05-28 | 2010-10-13 | 广州市吕顺机电设备有限公司 | 一种闸机自动检测方法、闸机检测装置及其系统 |
CN108629857A (zh) * | 2017-03-24 | 2018-10-09 | 杭州海康威视数字技术股份有限公司 | 一种控制闸杆的方法和系统 |
CN206906819U (zh) * | 2017-07-06 | 2018-01-19 | 深圳市嘉昱机电有限公司 | 闸机控制装置和系统 |
CN108189036A (zh) * | 2018-01-17 | 2018-06-22 | 广州视源电子科技股份有限公司 | 力矩控制方法、装置、机器人及存储介质 |
CN109235319A (zh) * | 2018-10-15 | 2019-01-18 | 上海华铭智能终端设备股份有限公司 | 一种闸机通道的开关装置 |
CN109176462A (zh) * | 2018-11-15 | 2019-01-11 | 国网江苏省电力有限公司 | 一种自适应的机器人行走轨道抱闸机构 |
CN109732599A (zh) * | 2018-12-29 | 2019-05-10 | 深圳市越疆科技有限公司 | 一种机器人碰撞检测方法、装置、存储介质及机器人 |
CN109639211A (zh) * | 2019-02-22 | 2019-04-16 | 深圳市嘉昱机电有限公司 | 一种闸机控制系统及控制方法 |
Non-Patent Citations (2)
Title |
---|
一种多基元类的布局迁移自适应算法及在闸机设计中的应用;陈华江等;《计算机工程与科学》;20140531;第36卷(第5期);第929-935页 * |
基于dsPIC的闸机扇门控制系统研究;杨继桐;《中国优秀硕士学位论文全文数据库 (工程科技Ⅱ辑)》;20140731(第7期);第C033-352页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110471288A (zh) | 2019-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108454552B (zh) | 用于车门碰撞避免的系统和方法 | |
KR100377533B1 (ko) | 엘리베이터의 도어 제어장치 | |
CN108596116A (zh) | 测距方法、智能控制方法及装置、电子设备和存储介质 | |
CN110471288B (zh) | 闸机自适应控制方法、装置及闸机 | |
TWI430061B (zh) | 用於追蹤隔板系統性能的系統及方法 | |
CN111788040A (zh) | 机器人的动力学参数辨识方法、机器人和存储装置 | |
CN103375086B (zh) | 用于确定车辆部件的调整位置的方法和调整设备 | |
JP2012024877A (ja) | ロボット制御装置 | |
CN106956282B (zh) | 角加速度确定方法、装置、机器人及存储介质 | |
CN103500516A (zh) | 基于电子地图高效率轨迹回放的方法及系统 | |
CN108234496A (zh) | 一种基于神经网络的流量预测方法 | |
RU2016125496A (ru) | Устройство и способ управления раскачиванием груза, подвешенного на подъемном устройстве | |
CN103249583A (zh) | 用于电动地调整翻盖结构的驱动装置 | |
CN105324933A (zh) | 马达控制方法以及马达控制装置 | |
CN109291055A (zh) | 机器人运动控制方法、装置、计算机设备和存储介质 | |
CN111176272A (zh) | 一种基于运动约束的人工势场轨迹规划方法及系统 | |
KR102060218B1 (ko) | 모터-구동식 작동 부품의 위치를 결정하기 위한 방법 및 장치 | |
CN108983762A (zh) | 自动导引运输车的控制方法、装置及自动导引运输车 | |
CN110103957A (zh) | 一种车辆控制方法、装置、设备及终端 | |
CN109764484A (zh) | 滑动门控制方法、装置、空调器及计算机可读存储介质 | |
CN106323642A (zh) | 一种防夹检测方法及系统 | |
CN105472231A (zh) | 控制方法、图像采集装置和电子设备 | |
CN104835327B (zh) | 一种识别路面信息的方法及装置 | |
CN106394204A (zh) | 防夹天窗控制方法 | |
CN110488815B (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 |