CN110764439A - 伺服驱动脉冲输出分频器及其使用方法 - Google Patents
伺服驱动脉冲输出分频器及其使用方法 Download PDFInfo
- Publication number
- CN110764439A CN110764439A CN201810830029.0A CN201810830029A CN110764439A CN 110764439 A CN110764439 A CN 110764439A CN 201810830029 A CN201810830029 A CN 201810830029A CN 110764439 A CN110764439 A CN 110764439A
- Authority
- CN
- China
- Prior art keywords
- quotient
- remainder
- accumulator
- control logic
- setting module
- 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.)
- Granted
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
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- 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
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25257—Microcontroller
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
本发明涉及由计数链组成的脉冲计数器或分频器领域,具体为一种伺服驱动脉冲输出分频器及其使用方法。一种伺服驱动脉冲输出分频器,包括伺服电机(11)和上位机(12),其特征是:还包括设置模块(1)、商累加器(2)、余数累加器(3)、商控制逻辑器(4)和余数控制逻辑器(5),商累加器(2)通过信号线连接商控制逻辑器(4),余数累加器(3)通过信号线连接余数控制逻辑器(5),商控制逻辑器(4)和余数控制逻辑器(5)都通过信号线连接上位机(12)。一种伺服驱动脉冲输出分频器的使用方法,其特征是:按如下所述依次实施:①累加;②判断。本发明结构简单,使用方便,信号稳定,适用范围广。
Description
技术领域
本发明涉及由计数链组成的脉冲计数器或分频器领域,具体为一种伺服驱动脉冲输出分频器及其使用方法。
背景技术
在伺服驱动系统中,上位机需要监控伺服电机的运行状态,通常以正交脉冲的形式通过分频输出反馈伺服电机编码器信息,正交脉冲的个数代表位置信息,正交脉冲的速率代表速度信息,正交脉冲的形式代表方向信息。因工艺控制的要求,电机速度时刻变化且方向频繁切换,分频输出须实时反应电机状态变化且脉冲个数不能丢失。常规分频输出低速时有信号脉冲宽度不均匀及周期性突变的问题,很难与上位机匹配而造成丢失脉冲、信息不完整等现象。
发明内容
为了克服现有技术的缺陷,提供一种结构简单,使用方便,信号稳定,适用范围广的分频器,本发明公开了一种伺服驱动脉冲输出分频器及其使用方法。
本发明通过如下技术方案达到发明目的:
一种伺服驱动脉冲输出分频器,包括伺服电机和上位机,其特征是:还包括设置模块、商累加器、余数累加器、商控制逻辑器和余数控制逻辑器,
伺服电机通过信号线连接设置模块,所述信号线将伺服电机的旋转位置值M和旋转方向值Dir输入设置模块,设置模块用于设置并输出分频输出系数a和分频输出系数b,其中a为分频输出分子,b为分频输出分母,设置模块通过信号线分别连接商累加器和余数累加器,商累加器通过信号线连接商控制逻辑器,余数累加器通过信号线连接余数控制逻辑器,商控制逻辑器和余数控制逻辑器通过信号线互相连接,商控制逻辑器和余数控制逻辑器都通过信号线连接上位机。
所述的伺服驱动脉冲输出分频器,其特征是:连接伺服电机和设置模块之间的信号线选用MCU与FPGA的并行通讯口;
设置模块设于伺服驱动器的MCU中,开放给用户设置输出分频输出系数a(即分频输出分子)和分频输出系数b(即分频输出分母),a和b的值根据分频输出精度进行合理选择,最大值一般为伺服电机编码器的最大分辩率;
商累加器、余数累加器、商控制逻辑器和余数控制逻辑器设于伺服驱动器的FPGA中,以充分利用FPGA的并行运算特性,实现高速脉冲输出。
所述的伺服驱动脉冲输出分频器的使用方法,其特征是:按如下所述依次实施:
① 累加:伺服电机的编码器在周期T内将伺服电机的旋转位置值M和旋转方向值Dir通过信号线输入设置模块,设置模块计算出商Q和余数R并分别输送至商累加器和余数累加器,商累加器根据高速时钟同步累加商Q,余数累加器根据高速时钟同步累加余数R,商Q和余数R的更新周期都为T;
② 判断:余数控制逻辑器判断余数累加器是否大于或等于b,若b满足上述条件,则余数累加器减去b后向商累加器(2)输出+1;随后商控制逻辑器(4)判断商累加器是否大于或等于T,若T满足上述条件,则商累加器减去T,同时向上位机输出一个脉冲。
本发明根据设置模块的分频输出系数a和b设置,根据周期T内伺服电机的编码器信号M,得到脉冲输出所需余数R及商Q的累加值AccR、AccQ,由余数控制逻辑器和商控制逻辑器实现任意整数和小数的分频或倍频输出,即:余数控制逻辑器将AccR与分频输出系数b比较判断,输出+1送给商控制逻辑器,同时商控制逻辑器将AccQ与周期时间T比较判断,生成正交脉冲的边沿信息,进而实现分频脉冲输出。
本发明克服了常规分频输出低速时信号脉冲宽度不均匀及周期性突变的问题,输出信号更平滑、稳定。本发明输出的信号脉冲宽度随速度变化,脉冲形式随伺服电机方向变化,可通过设定累加值位宽调整速度精度,正反向切换平滑且不会丢失脉冲;输出脉冲真实反映了伺服电机换向情况,在伺服驱动器中的应用,为上位机有效监控伺服驱动系统运行状态提供了可靠保障。本发明易于在伺服驱动器中实现,可适用于包括增量式/绝对式光电编码器,旋转变压器,磁电编码器等,解决了常规分频输出低速时的问题,实时反馈伺服电机的运行状态。本发明解决了常规分频输出低速时有信号脉冲宽度不均匀及周期性突变的问题,可任意设置分倍频系数,输出脉冲平滑、稳定,与上位机匹配度好。
本发明的有益效果是:结构简单,使用方便,信号稳定,适用范围广。
附图说明
图1是本发明的结构示意图;
图2是本发明使用时的流程图。
具体实施方式
以下通过具体实施例进一步说明本发明。
实施例1
一种伺服驱动脉冲输出分频器,包括伺服电机11、上位机12、设置模块1、商累加器2、余数累加器3、商控制逻辑器4和余数控制逻辑器5,如图1所示,具体结构是:
伺服电机11通过信号线连接设置模块1,所述信号线将伺服电机11的旋转位置值M和旋转方向值Dir输入设置模块1,设置模块1用于设置并输出分频输出系数a和分频输出系数b,其中a为分频输出分子,b为分频输出分母,设置模块1通过信号线分别连接商累加器2和余数累加器3,商累加器2通过信号线连接商控制逻辑器4,余数累加器3通过信号线连接余数控制逻辑器5,商控制逻辑器4和余数控制逻辑器5通过信号线互相连接,商控制逻辑器4和余数控制逻辑器5都通过信号线连接上位机12。
本实施例中:连接伺服电机11和设置模块1之间的信号线选用MCU与FPGA的并行通讯口;
设置模块1设于伺服驱动器的MCU中,开放给用户设置输出分频输出系数a(即分频输出分子)和分频输出系数b(即分频输出分母),a和b的值根据分频输出精度进行合理选择,最大值一般为伺服电机11编码器的最大分辩率;
商累加器2、余数累加器3、商控制逻辑器4和余数控制逻辑器5设于伺服驱动器的FPGA中,以充分利用FPGA的并行运算特性,实现高速脉冲输出。
本实施例使用时,如图2所示,按如下所述依次实施:
① 累加:伺服电机11的编码器在周期T内将伺服电机11的旋转位置值M和旋转方向值Dir通过信号线输入设置模块1,设置模块1计算出商Q和余数R并分别输送至商累加器2和余数累加器3,商累加器2根据高速时钟同步累加商Q,余数累加器3根据高速时钟同步累加余数R,商Q和余数R的更新周期都为T;
② 判断:余数控制逻辑器5判断余数累加器3是否大于或等于b,若b满足上述条件,则余数累加器3减去b后向商累加器2输出+1;随后商控制逻辑器4判断商累加器2是否大于或等于T,若T满足上述条件,则商累加器2减去T,同时向上位机12输出一个脉冲。
本实施例根据设置模块1的分频输出系数a和b设置,根据周期T内伺服电机11的编码器信号M,得到脉冲输出所需余数R及商Q的累加值AccR、AccQ,由余数控制逻辑器4和商控制逻辑器5实现任意整数和小数的分频或倍频输出,即:余数控制逻辑器4将AccR与分频输出系数b比较判断,输出+1送给商控制逻辑器5,同时商控制逻辑器5将AccQ与周期时间T比较判断,生成正交脉冲的边沿信息,进而实现分频脉冲输出。
Claims (3)
1.一种伺服驱动脉冲输出分频器,包括伺服电机(11)和上位机(12),其特征是:还包括设置模块(1)、商累加器(2)、余数累加器(3)、商控制逻辑器(4)和余数控制逻辑器(5),
伺服电机(11)通过信号线连接设置模块(1),所述信号线将伺服电机(11)的旋转位置值M和旋转方向值Dir输入设置模块(1),设置模块(1)用于设置并输出分频输出系数a和分频输出系数b,其中a为分频输出分子,b为分频输出分母,设置模块(1)通过信号线分别连接商累加器(2)和余数累加器(3),商累加器(2)通过信号线连接商控制逻辑器(4),余数累加器(3)通过信号线连接余数控制逻辑器(5),商控制逻辑器(4)和余数控制逻辑器(5)通过信号线互相连接,商控制逻辑器(4)和余数控制逻辑器(5)都通过信号线连接上位机(12)。
2.如权利要求1所述的伺服驱动脉冲输出分频器,其特征是:连接伺服电机(11)和设置模块(1)之间的信号线选用MCU与FPGA的并行通讯口;
设置模块(1)设于伺服驱动器的MCU中;
商累加器(2)、余数累加器(3)、商控制逻辑器(4)和余数控制逻辑器(5)设于伺服驱动器的FPGA中。
3.如权利要求1或2所述的伺服驱动脉冲输出分频器的使用方法,其特征是:按如下所述依次实施:
① 累加:伺服电机(11)的编码器在周期T内将伺服电机(11)的旋转位置值M和旋转方向值Dir通过信号线输入设置模块(1),设置模块(1)计算出商Q和余数R并分别输送至商累加器(2)和余数累加器(3),商累加器(2)根据高速时钟同步累加商Q,余数累加器(3)根据高速时钟同步累加余数R,商Q和余数R的更新周期都为T;
② 判断:余数控制逻辑器(5)判断余数累加器(3)是否大于或等于b,若b满足上述条件,则余数累加器(3)减去b后向商累加器(2)输出+1;随后商控制逻辑器(4)判断商累加器(2)是否大于或等于T,若T满足上述条件,则商累加器(2)减去T,同时向上位机(12)输出一个脉冲。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810830029.0A CN110764439B (zh) | 2018-07-25 | 2018-07-25 | 伺服驱动脉冲输出分频器及其使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810830029.0A CN110764439B (zh) | 2018-07-25 | 2018-07-25 | 伺服驱动脉冲输出分频器及其使用方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110764439A true CN110764439A (zh) | 2020-02-07 |
CN110764439B CN110764439B (zh) | 2022-09-06 |
Family
ID=69327472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810830029.0A Active CN110764439B (zh) | 2018-07-25 | 2018-07-25 | 伺服驱动脉冲输出分频器及其使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110764439B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115864914A (zh) * | 2023-02-17 | 2023-03-28 | 广州匠芯创科技有限公司 | 一种任意正交脉冲分频输出方法、系统、装置与存储介质 |
Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1986003633A1 (en) * | 1984-12-12 | 1986-06-19 | Telefonaktiebolaget L M Ericsson | Frequency divider |
CN1091576A (zh) * | 1992-11-27 | 1994-08-31 | 三星电子株式会社 | 低频带转换色度信号处理设备及其方法 |
EP0948138A1 (en) * | 1998-04-03 | 1999-10-06 | Motorola Semiconducteurs S.A. | Frequency synthesiser |
TW200421715A (en) * | 2002-10-25 | 2004-10-16 | Gct Semiconductor Inc | System and method for suppressing noise in a phase-locked loop circuit |
CN1598493A (zh) * | 2004-08-13 | 2005-03-23 | 北京科技大学 | 一种高分辨率磁编码器磁鼓的制备方法 |
US20050146360A1 (en) * | 2003-12-29 | 2005-07-07 | Peter Reichert | Multi-stage numeric counter oscillator |
US20060119402A1 (en) * | 2003-05-02 | 2006-06-08 | Axel Thomsen | Multi-frequency clock synthesizer |
US20070217560A1 (en) * | 2006-03-06 | 2007-09-20 | Samsung Electronics Co., Ltd. | Apparatus and method for sample rate conversion in a software defined radio communication system |
CN101226408A (zh) * | 2008-01-24 | 2008-07-23 | 南京埃斯顿自动控制技术有限公司 | 交流伺服绝对值编码器位置反馈脉冲分频输出方法及电路 |
TW200950524A (en) * | 2008-04-23 | 2009-12-01 | Silicon Library Inc | Receiver capable of generating audio reference clock |
CN202004710U (zh) * | 2011-01-28 | 2011-10-05 | 上海御能动力科技有限公司 | 采用电子传动比的交流伺服控制器 |
CN102615550A (zh) * | 2011-01-28 | 2012-08-01 | 上海御能动力科技有限公司 | 采用电子齿轮的交流伺服控制装置及其使用方法 |
CN103856211A (zh) * | 2014-03-28 | 2014-06-11 | 龙芯中科技术有限公司 | 计数器、计数方法和分频器 |
CN203933599U (zh) * | 2014-05-29 | 2014-11-05 | 航天新长征电动汽车技术有限公司 | 一种电机控制器脉冲转换装置 |
CN104363015A (zh) * | 2014-10-08 | 2015-02-18 | 四川和芯微电子股份有限公司 | 小数分频器电路 |
US20150214968A1 (en) * | 2014-01-24 | 2015-07-30 | Icom Incorporated | Fractional n frequency synthesizer and setting method thereof |
CN204696972U (zh) * | 2015-05-22 | 2015-10-07 | 上海晟矽微电子股份有限公司 | 一种用于电机控制的微控制器 |
CN106092156A (zh) * | 2016-08-04 | 2016-11-09 | 泉州市桑川电气设备有限公司 | 交流伺服串行通信编码器位置反馈脉冲分频输出系统和方法 |
CN106645780A (zh) * | 2016-12-28 | 2017-05-10 | 深圳市英威腾电气股份有限公司 | 一种基于dsp的转速检测方法及系统 |
CN107395123A (zh) * | 2017-07-19 | 2017-11-24 | 中国人民解放军国防科学技术大学 | 一种基于gps秒脉冲的2的幂次方倍频方法 |
-
2018
- 2018-07-25 CN CN201810830029.0A patent/CN110764439B/zh active Active
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1986003633A1 (en) * | 1984-12-12 | 1986-06-19 | Telefonaktiebolaget L M Ericsson | Frequency divider |
CN85109031A (zh) * | 1984-12-12 | 1986-12-03 | 艾利森电话股份有限公司 | 分频器 |
CN1091576A (zh) * | 1992-11-27 | 1994-08-31 | 三星电子株式会社 | 低频带转换色度信号处理设备及其方法 |
EP0948138A1 (en) * | 1998-04-03 | 1999-10-06 | Motorola Semiconducteurs S.A. | Frequency synthesiser |
TW200421715A (en) * | 2002-10-25 | 2004-10-16 | Gct Semiconductor Inc | System and method for suppressing noise in a phase-locked loop circuit |
US20060119402A1 (en) * | 2003-05-02 | 2006-06-08 | Axel Thomsen | Multi-frequency clock synthesizer |
US20050146360A1 (en) * | 2003-12-29 | 2005-07-07 | Peter Reichert | Multi-stage numeric counter oscillator |
CN1598493A (zh) * | 2004-08-13 | 2005-03-23 | 北京科技大学 | 一种高分辨率磁编码器磁鼓的制备方法 |
US20070217560A1 (en) * | 2006-03-06 | 2007-09-20 | Samsung Electronics Co., Ltd. | Apparatus and method for sample rate conversion in a software defined radio communication system |
CN101226408A (zh) * | 2008-01-24 | 2008-07-23 | 南京埃斯顿自动控制技术有限公司 | 交流伺服绝对值编码器位置反馈脉冲分频输出方法及电路 |
TW200950524A (en) * | 2008-04-23 | 2009-12-01 | Silicon Library Inc | Receiver capable of generating audio reference clock |
CN202004710U (zh) * | 2011-01-28 | 2011-10-05 | 上海御能动力科技有限公司 | 采用电子传动比的交流伺服控制器 |
CN102615550A (zh) * | 2011-01-28 | 2012-08-01 | 上海御能动力科技有限公司 | 采用电子齿轮的交流伺服控制装置及其使用方法 |
US20150214968A1 (en) * | 2014-01-24 | 2015-07-30 | Icom Incorporated | Fractional n frequency synthesizer and setting method thereof |
CN103856211A (zh) * | 2014-03-28 | 2014-06-11 | 龙芯中科技术有限公司 | 计数器、计数方法和分频器 |
CN203933599U (zh) * | 2014-05-29 | 2014-11-05 | 航天新长征电动汽车技术有限公司 | 一种电机控制器脉冲转换装置 |
CN104363015A (zh) * | 2014-10-08 | 2015-02-18 | 四川和芯微电子股份有限公司 | 小数分频器电路 |
CN204696972U (zh) * | 2015-05-22 | 2015-10-07 | 上海晟矽微电子股份有限公司 | 一种用于电机控制的微控制器 |
CN106092156A (zh) * | 2016-08-04 | 2016-11-09 | 泉州市桑川电气设备有限公司 | 交流伺服串行通信编码器位置反馈脉冲分频输出系统和方法 |
CN106645780A (zh) * | 2016-12-28 | 2017-05-10 | 深圳市英威腾电气股份有限公司 | 一种基于dsp的转速检测方法及系统 |
CN107395123A (zh) * | 2017-07-19 | 2017-11-24 | 中国人民解放军国防科学技术大学 | 一种基于gps秒脉冲的2的幂次方倍频方法 |
Non-Patent Citations (4)
Title |
---|
ANNETTE MUETZE: "Calculation of Motor Capacitances for Prediction of the Voltage Across the Bearings in Machines of Inverter-Based Drive Systems", 《IEEE TRANSACTIONS ON INDUSTRY APPLICATIONS》 * |
夏龙根: "一种新型分频器的设计实现", 《现代电子技术》 * |
袁泉: "基于FPGA的小数分频实现方法", 《电子技术应用》 * |
马绍伟: "基于verilog的小数分频器的设计", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115864914A (zh) * | 2023-02-17 | 2023-03-28 | 广州匠芯创科技有限公司 | 一种任意正交脉冲分频输出方法、系统、装置与存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110764439B (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN201174041Y (zh) | 全数字通用交流伺服定位控制驱动器 | |
CN204203725U (zh) | 一种用于伺服电机高精度位置控制系统 | |
CN104317253A (zh) | 一种用于伺服电机位置控制的系统方法 | |
CN108471303B (zh) | 一种基于fpga的可编程纳秒级定时精度脉冲发生器 | |
CN104898530A (zh) | 一种基于dsp和fpga的嵌入式控制器的同步印染控制系统 | |
CN206224181U (zh) | 一种基于fpga的多轴伺服驱动系统位置反馈数据接口卡 | |
CN110764439B (zh) | 伺服驱动脉冲输出分频器及其使用方法 | |
CN112636660B (zh) | 伺服驱动控制系统及绝对位置信号处理方法、装置、设备 | |
CN108809171A (zh) | 一种定频pwm全桥式电机微步细分驱动控制方法及电路 | |
CN103078575A (zh) | 一种小功率直流伺服电机集成式多功能控制器 | |
CN103063917A (zh) | 高精度相位和频率测量系统 | |
CN101226408B (zh) | 交流伺服绝对值编码器位置反馈脉冲分频输出方法及电路 | |
CN106569130A (zh) | 一种用于测量电机转矩脉动的装置及方法 | |
CN1452312A (zh) | 全数字细分型高精度步进电机控制器 | |
CN202004710U (zh) | 采用电子传动比的交流伺服控制器 | |
CN108015776B (zh) | 一种基于CompactRIO的机器人控制系统 | |
CN113156839B (zh) | 一种伺服系统电子齿轮 | |
CN203911823U (zh) | 基于以太网的电机控制器和控制系统 | |
CN203872095U (zh) | 一种3d打印中的步进电机控制电路 | |
CN201608679U (zh) | 基于fpga芯片为核心的稀土永磁同步电机驱动控制装置 | |
CN104601061A (zh) | 基于以太网的电机控制器和控制系统 | |
CN2840044Y (zh) | 一种高精度宽范围的测速电路 | |
CN2354145Y (zh) | 一种袖珍数字万用表 | |
CN103616840A (zh) | 一种基于fpga的速度自适应测量装置 | |
CN203376474U (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 |