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.18.3
Added
Changed
Made consistent use of
repr
in nested objects
Fixed
Fixed bug in
compas.backends.PyBulletClient.convert_mesh_to_body
circumventing PyBullet’s propensity to cache
Deprecated
Removed
0.18.2
Added
Changed
Fixed
Deprecated
Removed
0.18.1
Fixed
Fix error message during uninstall of Grasshopper components
0.18.0
Added
Grasshopper components now also for Mac
Added support for MoveIt on ROS Noetic
Added support for Python 3.9
Changed
The
Configuration
class has moved tocompas.robots
, but is still aliased withincompas_fab.robots
Lazily load
V-REP remoteApi
library
Fixed
Fixed
repr()
ofROSmsg
classFixed data type of secs and nsecs in
Time
ROS messageFixed
CollisionObject.to_collision_meshes
Fixed serialization of joint names for
compas_fab.robots.JointTrajectoryPoint
Fixed deserialization of
AttachedCollisionMesh
Deprecated
compas_fab.robots.Configuration
is being deprecated in favor ofcompas.robots.Configuration
0.17.0
Added
Added python components library for Grasshopper
Added
compas_fab.robots.PyBulletClient.get_robot_configuration
Added
compas_fab.robots.Robot.ensure_geometry
Added serialization methods to
compas_fab.robots.CollisionMesh
andcompas_fab.robots.AttachedCollisionMesh
Added
attached_collision_meshes
attribute tocompas_fab.robots.JointTrajectory
Added
compas_fab.backends.ros.PlanningSceneComponents.__ne__
Added dictionary behavior to
compas_fab.robots.JointTrajectoryPoint.merge
Added length limitations to attributes of
compas_fab.robots.JointTrajectoryPoint.merge
Changed
Updated to
COMPAS 1.1
Configuration
&JointTrajectoryPoint
: the attributesvalues
andtypes
changed tojoint_values
and joint_types respectively.
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_mesh
added collision objects to the scene, but did not attached them to the robotFixed bug when keys with
None
values were passed to the planner.
Deprecated
Removed
Remove
compas_fab.robots.JointTrajectoryPoint.merge
0.16.0
Changed
Updated to
COMPAS 1.0
0.15.0
Added
Changed
Updated to
COMPAS 0.19
Fixed
Deprecated
Removed
0.14.0
Added
Added new backend feature
ResetPlanningScene
Added
MoveItResetPlanningScene
Changed
Updated to
COMPAS 0.18
Use
compas.IPY
to check for IronPython
Fixed
Fixed bug in
remove_attached_tool
ofPlanningScene
0.13.1
Added
Added
name
property toTool
class.
Fixed
Fixed bug in
add_attached_tool
ofPlanningScene
Fixed
frame_id
generation when tool name changesFixed freeze with some sync planning scene methods on Grasshopper/IronPython
0.13.0
Changed
Updated to
COMPAS 0.17
0.12.0
Added
PyBullet integration: added support for PyBullet client and forward/inverse kinematic solver
Added
ClientInterface
,PlannerInterface
and various backend feature interfacesAdded implementations of these interfaces for ROS and V-REP
Added
attributes
dictionary toRobot
classAdded
compas_fab.robots.Tool.from_t0cf_to_tcf
Added
compas_fab.robots.Tool.from_tcf_to_t0cf
Added
joint_names
as optional parameter for allcompas_fab.robots.Configuration
constructorsAdded
compas_fab.robots.Configuration.iter_differences
Added
compas_fab.robots.Configuration.max_difference
Added
compas_fab.robots.Configuration.close_to
Added
compas_fab.robots.Configuration.merge
Added
compas_fab.robots.JointTrajectoryPoint.merge
Added
compas_fab.robots.Semantics.group_states
Added
compas_fab.robots.Robot.get_configuration_from_group_state
Changed
Updated to
COMPAS 0.16.9
Renamed
compas_fab.robots.Robot.to_local_coords
tocompas_fab.robots.Robot.to_local_coordinates
Renamed
compas_fab.robots.Robot.to_world_coords
tocompas_fab.robots.Robot.to_world_coordinates
Backend clients have been restructured according to the new interfaces
Parameter
backend
of forward kinematics has been renamed tosolver
The signatures of all kinematics, motion planning and planning scene management methods have been homogenized across backend clients and within
Robot
All examples have been updated to reflect these changes
The installer to Rhino has been unified with COMPAS core. Now running
python -m compas_rhino.install
will also detect and install COMPAS FAB and its dependencies.Renamed all
RobotArtist
implementations toRobotModelArtist
to reflect the fact they depend oncompas.robots.RobotModel
.Renamed
compas_fab.robots.Robot.from_tool0_to_attached_tool
tocompas_fab.robots.Robot.from_t0cf_to_tcf
Renamed
compas_fab.robots.Robot.from_attached_tool_to_tool0
tocompas_fab.robots.Robot.from_tcf_to_t0cf
Changed 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_motion
andplan_motion
ofRobot
class have been refactored, but a backwards-compatible deprecated version with the old signatures still exists suffixed by_deprecated
, e.g.forward_kinematics_deprecated
.RobotArtist
are deprecated in favor ofRobotModelArtist
.
Removed
0.11.0
Added
Added optional
joint_names
toConfiguration
Added
Configuration.scaled
Added
full_joint_state
toRobot.inverse_kinematics
Added
Semantics.get_all_configurable_joints
Changed
Updated to
COMPAS 0.15
Construct
full_configuration
withvalues
,types
,joint_names
inRobot
rather than inMoveItPlanner
MoveItPlanner
returnsstart_configuration
with setjoint_names
Removed parameter
names
fromRobotArtist.update
Updated Grasshopper examples
Robot
:forward_kinematics
returns nowframe_WCF
MoveItPlanner
:forward_kinematics
takes now instance ofConfiguration
androbot
MoveItPlanner
:inverse_kinematics
takes now instance ofConfiguration
androbot
Property
compas_fab.robots.Robot.artist
does not try to scale robot geometry if links and/or joints are not defined.In
compas_fab.robots.constraints.JointConstraint
, addedtolerance_above
andtolerance_below
for allowing asymmetrical constraints.In
compas_fab.robots.Robot
, changed theconstraints_from_configuration
function withtolerances_above
andtolerances_below
.compas_fab.robots.CollisionMesh.scale()
now takes a scale factor instead of acompas.geometry.Scale
instance 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.2
Added
Added Python 3.8 support
Changed
Updated to
COMPAS 0.13
0.10.1
Fixed
Fix DAE parser to handle
polylist
meshesBumped
roslibpy
dependency to0.7.1
to fix blocking service call issue on Mac OS
0.10.0
Added
Added
attach_tool
,detach_tool
,draw_attached_tool
,from_tool0_to_attached_tool
andfrom_attached_tool_to_tool0
toRobot
Added
attach_tool
anddetach_tool
toArtist
Added
add_attached_tool
andremove_attached_tool
toPlanningScene
Added redraw/clear layer support to
RobotArtist
for RhinoAdded material/color support for DAE files on ROS file loader
Changed
Changed
inverse_kinematics
,plan_cartesian_motion
andplan_motion
to use the attached_tool’sAttachedCollisionMesh
if set
Fixed
Fixed mutable init parameters of
Configuration
,JointTrajectoryPoint
,JointTrajectory
andRobot.basic
.Fixed interface of
RobotArtist
for BlenderFixed DAE parsing of meshes with multiple triangle sets
0.9.0
Added
Added
load_robot
method 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.10
Add 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.sensors
moduleChanged 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 test
Renamed
compas_fab.backends.CancellableTask
tocompas_fab.backends.CancellableFutureResult
ROS client: changed joint trajectory follower (
follow_joint_trajectory
) to support genericJointTrajectory
arguments.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.FutureResult
class 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
COMPAS
dependency to0.8.1
Base robot artist functionality moved to
compas.robots.RobotModel
Robot
:inverse_kinematics
returns now group configurationRobot
:forward_kinematics
has new parameterbackend
to select eitherclient
FK ormodel
FK.Robot
:forward_kinematics
returns nowframe_RCF
Robot
:forward_kinematics
doesn’t need full configuration anymoreFixed delays when modifying the planning scene of ROS.
Added
Added
jump_threshold
parameter toplan_cartesian_motion
Added
action_name
parameter 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_path
toplan_cartesian_motion
ROS Client: renamed
motion_plan_goal_frame
andmotion_plan_goal_configuration
toplan_motion
ROS Client: removed methods from
Robot
that are now handled withPlanningScene
, e.g.add_collision_mesh
andadd_attached_collision_mesh
ROS Client: change the return type of
plan_motion
andplan_cartesian_motion
to the new trajectory classes.ROS File Server Loader: moved to
compas_fab.backends
packageROS File Server Loader: renamed
load
toload_urdf
and sync’d API to other loaders.V-REP Client: renamed
get_end_effector_pose
toforward_kinematics
V-REP Client: renamed
find_robot_states
toinverse_kinematics
V-REP Client: renamed
find_path_plan_to_config
toplan_motion_to_config
V-REP Client: renamed
find_path_plan
toplan_motion
V-REP Client: changed
is_connected
to become a propertyMade
robot_artist
defaultNone
onRobot
constructorChanged
PathPlan
class to use the new trajectory classes
Added
Added
scale
method toConfiguration
Implemented Constraints (
OrientationConstraint
,PositionConstraint
,JointConstraint
) to use withplan_motion
Implemented
PlanningScene
,CollisionMesh
andAttachedCollisionMesh
Added generic representations for motion planning requests (
JointTrajectory
,JointTrajectoryPoint
,Duration
)Added UR5 robot model data for example purposes
Added several doc examples
Removed
Aliases for
Frame
andTransformation
. Import fromcompas.geometry
instead.
0.4.1
Fixed
Fixed missing library for V-REP on macOS
Deprecated
The aliases for
Frame
andTransformation
will be removed, in the future, import directly fromcompas
core.
0.4.0
Added
Color parameter to Rhino robot artist
Changed
Updated to
COMPAS 0.4.10
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
UrdfImporter
toRosFileServerLoader
Updated to
COMPAS 0.4.8
0.2.1
Added
Robot artist for Blender
0.2.0
Added
First open source release!
V-REP and ROS clients
Updated to
COMPAS 0.3.2
0.1.0
Added
Initial version