![]() |
lebai-motion-control
3.1.6
lebai motion control C interface
|
Add a new function to set base offset limit for cartesian admittance control.
Fix a bug in blend trajectory. The bug will cause the too much computation in blend trajectory when the trajectory velocity is small.
Fix 5A type first axis is libear joint, and the move joint use radius as.
Create a new rotational interpolation for lebai 5A type.
Add test for 5A type machine.
Make artifacis a deb package.
Fix a bug in lmc_tg_set_toward_joint that the speed is not correct.
Refactor the code, put c++ code in same repo.
Add euler zyz representation.
Add support for 5 joint machine.
Add new rotational interpolation method in tg.
Fix the member error_code in lmc_tg_update_state_t not correct problem when call lmc_tg_update_state.
Add two functions in trajectory_generator module. lmc_tg_release_control and lmc_tg_sieze_control.
Fix a bug that when lmc_tg_buffer_speed_line velocity is set to zero, the trajecotry generator is not working correctly.
Add a post smoothing for PPVAT, PTV, PV motion, now jnt_acc_time_constant
in lmc_tg_limit will work as smoothing time constatnt parameter(Default 10, set to 0 means no filter).
Add a new function lmc_dyn_estimate_payload_with_twice_strategy to use a two time measure strategy to estimate the pyload parameters.
Add a new function lmc_kin_cal_transform_from_oxy to caculate a transform from 3 points.
Add a new member type in lmc_tg_group_type_t, the member type is SINGROBUST. One can set the member type by calling lmc_tg_set_group .
Add a new api lmc_tg_buffer_singularity_robust_move_line. This function is used to move the singularity robust line. You should set lmc_tg_group_type_t to SINGROBUST before using this function.
Add a new api lmc_tg_set_toward_joint.
Add a new data struct lmc_tg_toward_param_t.
Add a new element in struct lmc_tg_group_type_t.
Rewrite the install script. Now we can cross compile lmc. Add We make the whole lmc build from source code. We only need to install gcc, cmake, git, goxygen. All the other dependencies will be built from source code.
Add a parameter pos_constraints in lmc_tg_speed_param
Add a logic to return singularity error in movel and movec.
Update unit test, update document.
Add unit test for lmc_kin_get_singularity_type. Fix bugs.
Add a function lmc_kin_get_singularity_type to compute the singularity type for robot.
Data type of error_code in lmc_tg_update_ret_t changed from int to lmc_tg_update_error_code_t.
Update document.
Add a function lmc_tg_get_remain_move_time to get remain move time.
Fix bug in doxygen config.
Add a function lmc_controller_cartesian_admittance_set_task_frame to set task frame in cartesian_admittance_control.
Fix sereval bugs.
Add sereval new functions in GROUP
lmc_group_state_distance
lmc_group_state_pair_collide
lmc_group_state_pair_distance
Add function to compute all the inverse kinematic joint positions: lmc_kin_all_ik_poses.
Add function to compute manipulation measure for a given joint position: lmc_kin_manipulation_measure.
Serveral bug fix.
Minor bug fix.
Add function to config, insert and erase ignore pair.
lmc_group_model_get_ignore_link_pairs
lmc_group_model_insert_ignore_link_pair
lmc_group_model_erase_ignore_link_pair
Add some macro for global config in lmc_config.h, replace the hard coded macro.
Add a new algorithm to estimate tcp force.
lmc_dyn_update_tcp_force_momentum_observer_estimation
lmc_dyn_init_tcp_force_momentum_observer_estimation
So, we change the old tcp force estimation API to a more explicit name.
lmc_dyn_tcp_force -> lmc_dyn_update_tcp_force_direct_estimation
Add a new module GROUP.
This module is used for collision detect and motion plan.
See relative document for more detailed info.
Add a function to compute all link forward kinematics.
Fix a bug that when a cartesian move end point is not reachable, return error and trajectory is generated in buffer.Now no trajectory is generated.
algorithm optimization.
Add a lmc_tg_runtime_data_t.blending
in lmc_tg_runtime_data
, it indicates whether the trajectory is in a blending situation.
See lmc_version()
in lmc_version.h
Add 5 joint manipulator support.
Change lmc_rm_init
API.
Add a cartesian admittance controller API:
Now, cartesian admittance control can support Point frame.(Motion frame is still not supported)
Now, move runs correctly in cartesian admittance control mode.
Optimize the cartesian admittance control.
Update test case.
Update documentation.
Add a cartesian admittance controller API:
This API is used to set the force threshold.
Add a cartesian admittance controller API:
This API is used for deactivate(reset) controller.
Add cartesian admittance controller functions.
all the lmc_controller_cartesian_admittance _xxx
functions are for this controller.
Change dynamic module. Now the dynamic module contains only basic dynamic algorithm.
Add a new module controller. The controller module contains some control block API.
Change, remove or add some data structures.
lmc_joint_state_t
, only keep joint pos, vel, acc,torque element(rename the variable name).lmc_wrench_t
data structure to represent a coordinate force.For dynamic
module:
lmc_dyn_gravity_compensate
, lmc_dyn_computed_torque_control
will be moved to controller module.lmc_dyn_gravity_compensate
-> lmc_controller_gravity_compensate
lmc_dyn_computed_torque_control
-> lmc_controller_computed_torque
lmc_dyn_tcp_force
lmc_dyn_id
For controller
module:
lmc_controller_gravity_compensate
lmc_controller_computed_torque
Add functions:
lmc_tg_buffer_speed_joint
lmc_tg_buffer_speed_line