Developer API
- docs._src_docs.api.path_opt.path_opt(num_cp, num_pt, sp, fp, meshfile)
The function to use 3D-Bspline function to optimize a collision-free path for the robot to follow.
- Parameters
- num_cpint
Number of B-spline path control points
- num_ptint
Number of Bspline path points
- spVector or Array (1 by 3)
The start point of the Bspline in 3D space
- fpVector or Array (1 by 3)
The fibal target point of the Bspline in 3D space
- meshfilestr
The local path to the mesh file (.ply)
- docs._src_docs.api.seq_opt.seq_opt(num_nodes, viapts_nbr, base, rot, meshfile, pathfile)
The function to obtain the a sequence of initial CTR configurations that follows the optimized path.
- Parameters
- num_nodesint
Number of timestep in the numerical integration/ number of links of the robot
- viapts_nbrint
Number of via-points, including the target point
- baseVector or Array (3 by 1)
The robot base location in 3D space
- rotVector or Array (3 by 1)
The orientation of the robot base frame about x,y,z axis (rad)
- meshfilestr
The local path to the mesh file (.ply)
- pathfilestr
The local path to the path file (.mat)
- docs._src_docs.api.sim_opt.sim_opt(num_nodes, k, base, rot, meshfile)
The function to simultaneously optimize the CTR to follow a number of waypoints and reach the target without collision with anatomy.
- Parameters
- num_nodesint
Number of timestep in the numerical integration/ number of links of the robot
- kint
Number of via-points, including the target point
- baseVector or Array (3 by 1)
The robot base location in 3D space
- rotVector or Array (3 by 1)
The orientation of the robot base frame about x,y,z axis (rad)
- meshfilestr
The local path to the mesh file (.ply)
- pathfilestr
The local path to the path file (.mat)
- class docs._src_docs.api.bspline_group.BsplineGroup(**kwargs)
BsplineGroup is a OpenMDAO Group object that includes all the components forming the optimization problem for finding a collision free path for the robot to follow. BsplineGroup uses the 3D B-spline function and a continuous function of anatomical constraints to ensure the B-spline curve is inside the anatomy.
- initialize()
Perform any one-time initialization run at instantiation.
- setup()
Build this group.
This method should be overidden by your Group’s method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.
You may call ‘add_subsystem’ to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the ‘configure’ method instead.
- Available attributes:
name pathname comm options
- class docs._src_docs.api.ctrseq_group.CtrseqGroup(**kwargs)
CtrseqGroup is a OpenMDAO Group object that all the necessary components for solving the CTR design optimization problem. This group includes the CTR kinematics model, kinematics constraints, task-specific constraints and objectives, which the user is able to develop their own component and add into the group. CtrseqGroup aims to obtain a sequence of robot configurations as initial guesses for the next step.
- initialize()
Perform any one-time initialization run at instantiation.
- setup()
Build this group.
This method should be overidden by your Group’s method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.
You may call ‘add_subsystem’ to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the ‘configure’ method instead.
- Available attributes:
name pathname comm options
- class docs._src_docs.api.ctrsimul_group.CtrsimulGroup(**kwargs)
CtrsimulGroup is a OpenMDAO Group object that compassed all the necessary components for solving the CTR design optimization problem. This group includes the CTR kinematics model, kinematics constraints, task-specific constraints and objectives, which the user is able to develop their own component and add into the group. CtrsimulGroup simultaneously optimize the number of k inverse kinematics problem and find the optimal design.
- initialize()
Perform any one-time initialization run at instantiation.
- setup()
Build this group.
This method should be overidden by your Group’s method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.
You may call ‘add_subsystem’ to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the ‘configure’ method instead.
- Available attributes:
name pathname comm options