Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
0.17.0¶
Added
Added python components library for Grasshopper
Added
compas_fab.robots.PyBulletClient.get_robot_configurationAdded
compas_fab.robots.Robot.ensure_geometryAdded serialization methods to
compas_fab.robots.CollisionMeshandcompas_fab.robots.AttachedCollisionMeshAdded
attached_collision_meshesattribute tocompas_fab.robots.JointTrajectory
Changed
Updated to
COMPAS 1.1
Fixed
Fixed bug in the PyBullet client where one could not update the configuration of a robot with an attached collision mesh
Fixed bug existing since version 0.12 where
compas_fab.backends.RosClient.add_attached_collision_meshadded collision objects to the scene, but did not attached them to the robotFixed bug when keys with
Nonevalues were passed to the planner.
Deprecated
Removed
0.14.0¶
Added
Added new backend feature
ResetPlanningSceneAdded
MoveItResetPlanningScene
Changed
Updated to
COMPAS 0.18Use
compas.IPYto check for IronPython
Fixed
Fixed bug in
remove_attached_toolofPlanningScene
0.13.1¶
Added
Added
nameproperty toToolclass.
Fixed
Fixed bug in
add_attached_toolofPlanningSceneFixed
frame_idgeneration when tool name changesFixed freeze with some sync planning scene methods on Grasshopper/IronPython
0.12.0¶
Added
PyBullet integration: added support for PyBullet client and forward/inverse kinematic solver
Added
ClientInterface,PlannerInterfaceand various backend feature interfacesAdded implementations of these interfaces for ROS and V-REP
Added
attributesdictionary toRobotclassAdded
compas_fab.robots.Tool.from_t0cf_to_tcfAdded
compas_fab.robots.Tool.from_tcf_to_t0cfAdded
joint_namesas optional parameter for allcompas_fab.robots.ConfigurationconstructorsAdded
compas_fab.robots.Configuration.iter_differencesAdded
compas_fab.robots.Configuration.max_differenceAdded
compas_fab.robots.Configuration.close_toAdded
compas_fab.robots.Configuration.mergeAdded
compas_fab.robots.JointTrajectoryPoint.mergeAdded
compas_fab.robots.Semantics.group_statesAdded
compas_fab.robots.Robot.get_configuration_from_group_state
Changed
Updated to
COMPAS 0.16.9Renamed
compas_fab.robots.Robot.to_local_coordstocompas_fab.robots.Robot.to_local_coordinatesRenamed
compas_fab.robots.Robot.to_world_coordstocompas_fab.robots.Robot.to_world_coordinatesBackend clients have been restructured according to the new interfaces
Parameter
backendof forward kinematics has been renamed tosolverThe signatures of all kinematics, motion planning and planning scene management methods have been homogenized across backend clients and within
RobotAll examples have been updated to reflect these changes
The installer to Rhino has been unified with COMPAS core. Now running
python -m compas_rhino.installwill also detect and install COMPAS FAB and its dependencies.Renamed all
RobotArtistimplementations toRobotModelArtistto reflect the fact they depend oncompas.robots.RobotModel.Renamed
compas_fab.robots.Robot.from_tool0_to_attached_tooltocompas_fab.robots.Robot.from_t0cf_to_tcfRenamed
compas_fab.robots.Robot.from_attached_tool_to_tool0tocompas_fab.robots.Robot.from_tcf_to_t0cfChanged ROS planning scene methods to be synchronous.
Fixed
Attached collision meshes are included in inverse kinematics calculations in ROS
Deprecated
The methods
forward_kinematics,inverse_kinematics,plan_cartesian_motionandplan_motionofRobotclass have been refactored, but a backwards-compatible deprecated version with the old signatures still exists suffixed by_deprecated, e.g.forward_kinematics_deprecated.RobotArtistare deprecated in favor ofRobotModelArtist.
Removed
0.11.0¶
Added
Added optional
joint_namestoConfigurationAdded
Configuration.scaledAdded
full_joint_statetoRobot.inverse_kinematicsAdded
Semantics.get_all_configurable_joints
Changed
Updated to
COMPAS 0.15Construct
full_configurationwithvalues,types,joint_namesinRobotrather than inMoveItPlannerMoveItPlannerreturnsstart_configurationwith setjoint_namesRemoved parameter
namesfromRobotArtist.updateUpdated Grasshopper examples
Robot:forward_kinematicsreturns nowframe_WCFMoveItPlanner:forward_kinematicstakes now instance ofConfigurationandrobotMoveItPlanner:inverse_kinematicstakes now instance ofConfigurationandrobotProperty
compas_fab.robots.Robot.artistdoes not try to scale robot geometry if links and/or joints are not defined.In
compas_fab.robots.constraints.JointConstraint, addedtolerance_aboveandtolerance_belowfor allowing asymmetrical constraints.In
compas_fab.robots.Robot, changed theconstraints_from_configurationfunction withtolerances_aboveandtolerances_below.compas_fab.robots.CollisionMesh.scale()now takes a scale factor instead of acompas.geometry.Scaleinstance as an argument.
Fixed
Convert constraints on inverse kinematics and cartesian planner to ROS messages
Fix support for trajectory constraints on kinematic planner
0.10.1¶
Fixed
Fix DAE parser to handle
polylistmeshesBumped
roslibpydependency to0.7.1to fix blocking service call issue on Mac OS
0.10.0¶
Added
Added
attach_tool,detach_tool,draw_attached_tool,from_tool0_to_attached_toolandfrom_attached_tool_to_tool0toRobotAdded
attach_toolanddetach_tooltoArtistAdded
add_attached_toolandremove_attached_tooltoPlanningSceneAdded redraw/clear layer support to
RobotArtistfor RhinoAdded material/color support for DAE files on ROS file loader
Changed
Changed
inverse_kinematics,plan_cartesian_motionandplan_motionto use the attached_tool’sAttachedCollisionMeshif set
Fixed
Fixed mutable init parameters of
Configuration,JointTrajectoryPoint,JointTrajectoryandRobot.basic.Fixed interface of
RobotArtistfor BlenderFixed DAE parsing of meshes with multiple triangle sets
0.9.0¶
Added
Added
load_robotmethod to ROS client to simplify loading robots from running ROS setup.Added
compas_fab.robots.Wrench: a Wrench class representing force in free space, separated into its linear (force) and angular (torque) parts.Added
compas_fab.robots.Inertia: a Inertia class representing spatial distribution of mass in a rigid body
Changed
Updated to
COMPAS 0.11
0.8.0¶
Changed
Updated to
COMPAS 0.10Add better support for passive joints on IK, Cartesian and Kinematic planning
Fixed
Use WorldXY’s origin as default for robots that are have no parent join on their base
Fixed parsing of semantics (SRDF) containing nested groups
Fixed DAE support on ROS File loader
0.7.0¶
Changed
Fixed Python 2 vs Python 3 incompatibilities in
compas_fab.sensorsmoduleChanged example for loading PosConCM (includes parity argument, differs from PosCon3D)
Changed format
compas_fab.sensors.baumer.PosConCM.set_flex_mount()Changed tasks.py to run
invoke testRenamed
compas_fab.backends.CancellableTasktocompas_fab.backends.CancellableFutureResultROS client: changed joint trajectory follower (
follow_joint_trajectory) to support genericJointTrajectoryarguments.ROS client: changed return type of trajectory execution methods to
CancellableFutureResult
Added
Added
compas_fab.sensors.baumer.PosCon3D.reset()Added
compas_fab.sensors.baumer.PosConCM.reset()ROS client: added support for MoveIt! execution action via
client.execute_joint_trajectory.Added
compas_fab.backends.FutureResultclass to deal with long-running async tasks
Removed
Removed
compas_fab.sensors.baumer.PosConCM.get_live_monitor_data()Removed non-implemented methods from
compas_fab.robots.Robot:send_frame,send_configuration,send_trajectory
Fixed
Fixed missing planner initialization when used without context manager.
0.6.0¶
Changed
Updated
COMPASdependency to0.8.1Base robot artist functionality moved to
compas.robots.RobotModelRobot:inverse_kinematicsreturns now group configurationRobot:forward_kinematicshas new parameterbackendto select eitherclientFK ormodelFK.Robot:forward_kinematicsreturns nowframe_RCFRobot:forward_kinematicsdoesn’t need full configuration anymoreFixed delays when modifying the planning scene of ROS.
Added
Added
jump_thresholdparameter toplan_cartesian_motionAdded
action_nameparameter to reconfigure joint trajectory follower action.Added support to retrieve the full planning scene.
Removed
Removed
compas_fab.Robot.get_configuration
0.5.0¶
Changed
ROS Client: renamed
compute_cartesian_pathtoplan_cartesian_motionROS Client: renamed
motion_plan_goal_frameandmotion_plan_goal_configurationtoplan_motionROS Client: removed methods from
Robotthat are now handled withPlanningScene, e.g.add_collision_meshandadd_attached_collision_meshROS Client: change the return type of
plan_motionandplan_cartesian_motionto the new trajectory classes.ROS File Server Loader: moved to
compas_fab.backendspackageROS File Server Loader: renamed
loadtoload_urdfand sync’d API to other loaders.V-REP Client: renamed
get_end_effector_posetoforward_kinematicsV-REP Client: renamed
find_robot_statestoinverse_kinematicsV-REP Client: renamed
find_path_plan_to_configtoplan_motion_to_configV-REP Client: renamed
find_path_plantoplan_motionV-REP Client: changed
is_connectedto become a propertyMade
robot_artistdefaultNoneonRobotconstructorChanged
PathPlanclass to use the new trajectory classes
Added
Added
scalemethod toConfigurationImplemented Constraints (
OrientationConstraint,PositionConstraint,JointConstraint) to use withplan_motionImplemented
PlanningScene,CollisionMeshandAttachedCollisionMeshAdded generic representations for motion planning requests (
JointTrajectory,JointTrajectoryPoint,Duration)Added UR5 robot model data for example purposes
Added several doc examples
Removed
Aliases for
FrameandTransformation. Import fromcompas.geometryinstead.
0.4.1¶
Fixed
Fixed missing library for V-REP on macOS
Deprecated
The aliases for
FrameandTransformationwill be removed, in the future, import directly fromcompascore.
0.3.0¶
Added
Deeper integration with MoveIt! motion planning services
Added sync and async versions of many ROS service calls
Added support for cancellable tasks/actions
Changed
Renamed
UrdfImportertoRosFileServerLoaderUpdated to
COMPAS 0.4.8