RA Flexible Software Package Documentation  Release v5.5.0

 
Motor Inertia Estimate Interface

Detailed Description

Interface for Motor inertia estimate functions.

Summary

The Motor interface provides Motor inertia estimate functionality.

Data Structures

struct  motor_inertia_estimate_info_t
 
struct  motor_inertia_estimate_cfg_t
 
struct  motor_inertia_estimate_api_t
 
struct  motor_inertia_estimate_instance_t
 

Typedefs

typedef void motor_inertia_estimate_ctrl_t
 

Data Structure Documentation

◆ motor_inertia_estimate_info_t

struct motor_inertia_estimate_info_t

Interface data structure

Data Fields
int16_t s2_position_reference_degree Position reference [degree].
motor_inertia_estimate_mode_t mode Internal mode of inertia estimation.
float f_estimated_inertia Estimated inertia data.

◆ motor_inertia_estimate_cfg_t

struct motor_inertia_estimate_cfg_t

Configuration parameters.

Data Fields
void const * p_context
void const * p_extend Placeholder for user extension.

◆ motor_inertia_estimate_api_t

struct motor_inertia_estimate_api_t

Functions implemented at the HAL layer will follow this API.

Data Fields

fsp_err_t(* open )(motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_cfg_t const *const p_cfg)
 
fsp_err_t(* close )(motor_inertia_estimate_ctrl_t *const p_ctrl)
 
fsp_err_t(* start )(motor_inertia_estimate_ctrl_t *const p_ctrl)
 
fsp_err_t(* stop )(motor_inertia_estimate_ctrl_t *const p_ctrl)
 
fsp_err_t(* reset )(motor_inertia_estimate_ctrl_t *const p_ctrl)
 
fsp_err_t(* infoGet )(motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_info_t *const p_info)
 
fsp_err_t(* dataSet )(motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_set_data_t *const p_set_data)
 
fsp_err_t(* speedCyclic )(motor_inertia_estimate_ctrl_t *const p_ctrl)
 
fsp_err_t(* currentCyclic )(motor_inertia_estimate_ctrl_t *const p_ctrl)
 
fsp_err_t(* parameterUpdate )(motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_cfg_t const *p_cfg)
 

Field Documentation

◆ open

fsp_err_t(* motor_inertia_estimate_api_t::open) (motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_cfg_t const *const p_cfg)

Open driver.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_cfgPointer to configuration structure.

◆ close

fsp_err_t(* motor_inertia_estimate_api_t::close) (motor_inertia_estimate_ctrl_t *const p_ctrl)

Close driver.

Parameters
[in]p_ctrlPointer to control structure.

◆ start

fsp_err_t(* motor_inertia_estimate_api_t::start) (motor_inertia_estimate_ctrl_t *const p_ctrl)

Start the function.

Parameters
[in]p_ctrlPointer to control structure.

◆ stop

fsp_err_t(* motor_inertia_estimate_api_t::stop) (motor_inertia_estimate_ctrl_t *const p_ctrl)

Stop( same as cancel ) the function.

Parameters
[in]p_ctrlPointer to control structure.

◆ reset

fsp_err_t(* motor_inertia_estimate_api_t::reset) (motor_inertia_estimate_ctrl_t *const p_ctrl)

Reset the function. (recover from error state)

Parameters
[in]p_ctrlPointer to control structure.

◆ infoGet

fsp_err_t(* motor_inertia_estimate_api_t::infoGet) (motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_info_t *const p_info)

Get information from the function (to set speed & position control)

Parameters
[in]p_ctrlPointer to control structure.
[out]p_infoPointer to information

◆ dataSet

fsp_err_t(* motor_inertia_estimate_api_t::dataSet) (motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_set_data_t *const p_set_data)

Set the data to the function (from speed, position and current control)

Parameters
[in]p_ctrlPointer to control structure.
[out]p_set_dataPointer to set the data

◆ speedCyclic

fsp_err_t(* motor_inertia_estimate_api_t::speedCyclic) (motor_inertia_estimate_ctrl_t *const p_ctrl)

Speed cyclic process of the function

Parameters
[in]p_ctrlPointer to control structure.

◆ currentCyclic

fsp_err_t(* motor_inertia_estimate_api_t::currentCyclic) (motor_inertia_estimate_ctrl_t *const p_ctrl)

Current cyclic process of the function

Parameters
[in]p_ctrlPointer to control structure.

◆ parameterUpdate

fsp_err_t(* motor_inertia_estimate_api_t::parameterUpdate) (motor_inertia_estimate_ctrl_t *const p_ctrl, motor_inertia_estimate_cfg_t const *p_cfg)

Update parameters for the function.

Parameters
[in]p_ctrlPointer to control structure.
[in]p_cfgPointer to configuration structure include update parameters.

◆ motor_inertia_estimate_instance_t

struct motor_inertia_estimate_instance_t

This structure encompasses everything that is needed to use an instance of this interface.

Data Fields
motor_inertia_estimate_ctrl_t * p_ctrl Pointer to the control structure for this instance.
motor_inertia_estimate_cfg_t
const *
p_cfg Pointer to the configuration structure for this instance.
motor_inertia_estimate_api_t
const *
p_api Pointer to the API structure for this instance.

Typedef Documentation

◆ motor_inertia_estimate_ctrl_t

Motor inertia estimate block. Allocate an instance specific control block to pass into the API calls.