* ROBOT-1087: Re-generated mx_robot_def.py
* ROBOT-1087: - Added utility function IsAllowedToMove that tells if robot can be moved (now that it can move even if not homed when recovery mode)
- Renamed set_synchronous_mode to SetSynchronousMode to match CamelCase used in all public functions of this class
* ROBOT-1087: Renamed update_robot to UpdateRobot to match camel-case style used in all public functions of this class
* ROBOT-1087: Fixed unit tests
* ROBOT-1087: Adding timeouts to some "wait" that should not take long and that would dead-lock infinitely if robot refused the operation for any reason
* external tool: - add new SetValveState command
- add new GetRtValveState, GetRtGripperState and GetRtExtToolStatus
- add new external tool status and state
* ROBOT-1087: Added missing APIs for SetTorqueLimits and SetTorqueLimitsCfg
(that we use during one of the recovery mode test... but will also be useful to customers)
* ROBOT-1087: Updated test following latest API addition
* ROBOT-1087: - Added appropriate default timeouts to various Wait functions to avoid awaiting infinitely on functions that should never be very long
- Added WaitRecoveryMode
* ROBOT-1470: Apply code review corrections
(pr #16)
* ROBOT-1470: rename SetGripperSim to SetExtToolSim
* ROBOT-1470: code review changes
(pr #16)
* ROBOT-1087: Added new robot info flag "requires_homing" that avoids having to switch/case on robot model in test code (or user applications) for cases where requiring homing changes the behavior.
* ROBOT-1470: fix unit tests
* ROBOT-1470: Change the RtStatus id for external tool
(pr #900)
* ROBOT-1470: restore MX_ST_RT_CYCLE_END to original value
(pr #16)
* ROBOT-1087: Finishing renaming GripperSim to ExtToolSim (following merge)
* ROBOT-1531: UpdateRobot doesn't consider the extra after an update anymore
* ROBOT-410: Adding missing annotation
* ROBOT-410: Re-generated
* ROBOT-410: Re-generated
* ROBOT-1517: allow GripperOpen/GripperClose in sync mode with pneumatic valve
* ROBOT-410: Adapted robot.py to a change in robot API for new "gripper" status:
- No need for "present" flag, the "type" already tells if it's present
- Completing "overload_error" from status event
* ROBOT-1517: wait for checkpoint for gripper/valve box syncnronous request
(pr #19)
* ROBOT-1517: - update tests for robot callbacks
* ROBOT-1551: Make sure initiall status is receiving before completing connection.
* ROBOT-410: Added new useful flag supports_external_tool (False for Scara)
* ROBOT-1551: Fix status update at connection with robot.
Fix mecademicpy unit test with simulated robot.
* ROBOT-1552: Remove debug print.
* ROBOT-1546: Prevent Disconnect() from doing done many times. This prevents having multiple traces indicating disconnection. It also prevent having an exception during python shutdown if the robot was disconnected, but the object was not yet destroyed.
* ROBOT-1546: Fix connection with robot on 8.4.
* ROBOT-1546: Cleaned up disconnection.
* ROBOT-1546: Removed flag that is not needed anymore.
* ROBOT-1559: Add RobotInfo member that tells if external tool is supported on current robot
* ROBOT-1451: position control: add rt gripper torque, vel and pos for debug
* ROBOT-1559: code review: fix member name
(pr #22)
* ROBOT-410: Re-generated file from C code
* ROBOT-410: Renaming to match equivalent change made on master
* ROBOT-410: Renaming GripperTorq to GripperForce
* ROBOT-410: Fixed typo
* ROBOT-410: Fixed annotation
* ROBOT-410: - Fixed incorrect state of on_activate_ext_tool_sim after activating/deactivating SIM because it also implicitly enables/disables external tool sim
- Fixed missed status updates when multiple are sent in the same millisecond (with the same timestamp)
* ROBOT-1573: udpate release note for 1.1.0
* ROBOT-410: Code review: renaming
* ROBOT-410: Code review: Find-and-replace for renaming dynamic data enum names
* ROBOT-410: Renaming command Sync to SyncCmdQueue
* ROBOT-410: Code review (updating doc to match behavior)
* ROBOT-1648: Connect now check internal state to validate robot connection
* ROBOT-1648: -re-arrange refresh_monitoring_mode parameter check
-Apply suggestion from code review
* ROBOT-1583: ROBOT-1583: External tool sim status now reports the type of tool that is simulated.
* ROBOT-1654: Add requests module to list of required module
* ROBOT-1578: Added pytest.ini for better progress print (and eventually other options)
* ROBOT-1578: Improved automated tests output
* ROBOT-1578: Roll-back changes. Was working fine already, and we don't want "ROBOT IS IN ERROR" traces while it's normal that it happens during tests
* ROBOT-1676: Review documentation
* ROBOT-1676: Add a few more fixes in release note
* ROBOT-1578: Removing useless stuff
* ROBOT-1676: add missing () and remove extra period
* ROBOT-1676: Improve SetCheckPoint documentation
* ROBOT-1578: Fixed support for WaitExtToolSimActivated/Deactivated with robots running 8.4.4 (was broken with the change to SetExtToolSim response)
* ROBOT-1578: Fixed bug with conf, WRF and TRF in real-time data.
Was being cleared by function _make_stable_rt_data because flag "enabled" was not set as expected.
(because they are not explicitly reported in MX_ST_GET_REAL_TIME_MONITORING).
* ROBOT-1578: Trying to fix strange failure on build machine where robot.py received this instead of connection string:
Message with id=2085, data=Command successful: 'LogTrace()
Tentative fix is to flush rx messages queue upon connection in robot.py.
Other possibility (to explore) is that robot may return a status response from a previous connection on a new connection!
* ROBOT-1578: Fixed previous change:
- Behavior on 8.4 and 9.0 is not the same.
- Events that are always sent must be set to "enabled" outside loop "for event_id in enabled_event_ids"
* ROBOT-1578: Code review
* ROBOT-1578: Code review suggestions: Connect should do nothing if already connected.
* ROBOT-1578: Code review changes
* increase mecademicpy version to 1.1.0
* ROBOT-1706: increase mecademicpy version
* ROBOT-221: Fixed bug when robot falls into error. We would "set" all InterruptableEvent to awake waiting threads.
But doing so, we would loose the current event state, and it's important that the event state is preserve (a robot that is activated remains activated, and vice versa, for example)
* ROBOT-221: Improved trace
* ROBOT-1451: fix merge issues
* Add Gripper Range.
* ROBOT-1451: Fix test with new gripper APIs
* ROBOT-1536: Added doc indicating that Connect() and Disconnect() are always synchronous.
* ROBOT-1536: Added MoveGripper command.
* ROBOT-1536: Added SetGripperRange.
* ROBOT-1536: Fixed doubled internal checkpoint wait.
* ROBOT-1536: Minor change in comment.
* ROBOT-1451: Remove GetRtGripperVel from public robot.py
(pr #34)
* ROBOT-1451: add todo in robot_test.py
(pr #34)
* ROBOT-1451: robot_test.py: - restore test file logger default field
- restore gripper pos units in % within this branch
(pr #34)
* ROBOT-1540: gripper: - rename limit_reached to target_pos_reached
- fix some comments
- change gripper units in log file
* ROBOT-1540: - update mx_robot_def.py
- fix comments
* ROBOT-1540: update mx_robot_def.py with new status
* ROBOT-1540: rename external tool status
* ROBOT-1540: Update mx_def with new external tools ids
* ROBOT-1756: Re-generated auto file
* ROBOT-1540: GetRtExtToolStatus: add status flag with physical tool type
* ROBOT-1540: change the GetRtExtToolStatus virtual tool behavior
* ROBOT-1750: ROBOT-1750: Added new opened/closed gripper status.
Fixed default synchronous_update value for GetStatusGripper() since this status is now updated automatically every time the gripper state changes.
* ROBOT-1750: Code review fixes
* ROBOT-1540: code review: - fix log column name
- format instruction
* ROBOT-1750: Add checkpoint to WaitGripperMoveCompletion to cover cases where multiple Gripper commands are in the pipeline.
* ROBOT-1540: fix comment
(pr #35)
* Fixed tests.
* ROBOT-1746: add missing gripper pos/force in test_file_logger
* ROBOT-1750: Fixed reference file after merge.
* ROBOT-1815: Updated with newly generated error code
* ROBOT-1815: Re-generated
* ROBOT-1815: Regenerated again
* ROBOT-1815: - ROBOT-1833: Fixed example code.
- Fixed the data type for some functions expecting multiple float arguments (not one list of float)
* ROBOT-1821: Update RobotRtData documentation to add attributes corresponding GetRT method.
* ROBOT-1821: remove rt_target_joint_torq as per pull request
* ROBOT-1821: change cases
* ROBOT-1842: New RT data to get joint positions from absolute encoders
* ROBOT-1842: Adjusted tests for new RT data
* ROBOT-1844: Work in progress (not yet completed) to start implementing the pytest for test bench
* ROBOT-1821: fix error in log reference (needed to remove TargetJointTorq column)
* ROBOT-1770: Add __str__ and __repr__ to class for better introscpection
* ROBOT-1844: Fixed error in previous commit
* ROBOT-1844: Re-generated from C file
* ROBOT-1844: New function GetCapturedTrajectory to access the most recent trajectory capture without having to re-open the saved zip file
* ROBOT-1732: Torque limits: rename and change torque limit error and status
* ROBOT-1732: reply _Message: allow to read numerical reply message
* ROBOT-1732: do not abort wait recovery mode event on error
* ROBOT-852: Regenerated from C code
* ROBOT-852: Also printing the text message received with the error code. Often meaningful or helpful.
* ROBOT-1732: update mx_robot_def.py
* ROBOT-1844: Code review suggestion:
- Do not expose "is_test_bench" in the Python public API. Only do this in a "private" version of the Robot class.
* ROBOT-1841: add new status code for drive index count
* ROBOT-1841: rename status for drive encoder index
(pr #48)
* ROBOT-1841: merge ROBOT-1844
* ROBOT-1844: Code review suggestion: Including "-TB" suffix in robot model in the connection string so we know what we're connecting to.
Python Robot's class will not know about "test-bench" models. Only "private" class does.
* ROBOT-852: Re-generated (code review)
* ROBOT-1844: Re-generated from C code
* ROBOT-1844: Fixed doc
* ROBOT-1841: update mx_robot_def after reverting a merge
* ROBOT-1841: update mecademicpy after merge
* ROBOT-1841: update mx_robot_def
* ROBOT-1872: Fixed errors in new doc found by spell checker
* ROBOT-1847: Increase mecademicpy version to 1.2.0
Add new dependancy module deprecation
* ROBOT-1847: Add deprecation decorator to methods that were using WRF and TRF in capitals.
Add methods with Wrf or Trf to replace deprecated methods
Update mecademicpy test to skip deprecated methods since our way to test motion methods is sub-optimal.
* ROBOT-1872: Doc improvements
* ROBOT-1872: Hmmm... oups!
* ROBOT-1847: remove extra directory (troubleshooting mistake)
* ROBOT-1872: Code review suggestions
* ROBOT-1847: Add deprecation for SetRTC, add new method SetRtc
remove debug print
Fix doc
* ROBOT-1847: Fix mecademicpy tests
* ROBOT-1785: GripperOpen/Close: - add check target_pos_reach for fast exiting on sync mode
* ROBOT-1886: Re-generated from C file
* ROBOT-1882: Supporting connecting in monitoring mode to older robots (8.3) which don't send the connection string on the monitoring port.
* ROBOT-1882: Added robot IP address to robot information class RobotInfo.
I'll need that for a monitoring mode test.
* ROBOT-1867: Fix possible infinite loop during firmware update
* ROBOT-1868: update release note for 1.2.0
* ROBOT-1868: -Add new mecademicpy fixes
-Add changes as per code review
* ROBOT-1891: -Fix broken 8.4 backward compatibility for GripperClose GripperOpen
-Add gripper_pos_ctrl_capable to RobotInfo
-Add protection to RobotVersion class
* ROBOT-1891: Fix mecademicpy test
* ROBOT-1891: Fix SetExtToolSim for version 8.4 and older
* ROBOT-1891: fix missing WaitGripperMoveCompletion
* ROBOT-1888: - fix race when sending sync command
- fix use of GripperOpen/Close with pneumatic module
* ROBOT-1892: Update documentation for mp1.2.1
* ROBOT-1892: Added missing default timeout for some of the new "Get" functions
* ROBOT-1892: fix connection error when 8.3.x robot is in error
* ROBOT-1892: fix logging for tracking ROBOT-1904
* ROBOT-1892: Fix mecademicpy test (missing extra GetStatusRobot response)
* ROBOT-1844: Add __str__ and __repr__ for RobotInfo
* ROBOT-1844: -Add timeout to UpdateRobot
-UpdateRobot: Wait for Deactivation after deactivation (ROBOT-1924)
* Update yapf, add isort, format
* Add .dmypy.json to gitignore
* Add pyyaml to dependencies
* ROBOT-2415: update mecademicpy to support Meca500 R4 and robot feature included in 9.2 firmware version
* ROBOT-2694: Add robot's firmware features from v9.3 and v9.4-alpha
* ROBOT-2852: Add mcs500 and firmware 10.0 support
* ROBOT-2852: remove obsolete files
* Updating mecademicpy to version 2.1.0
(supporting new Mcs500 features such as safety signals and self-collision and work-zone)
* Added mention of supported (tested) Python version
* Code review
* Changes as discussed
---------
Co-authored-by: Alain Brassard <alain.brassard@mecademic.com>
Co-authored-by: lfalardeau <louis-xavier.falardeau@mecademic.com>
Co-authored-by: Jasmin Letendre <jasmin.letendre@mecademic.com>
Co-authored-by: Alain Brassard <abrassard@mecademic.com>
Co-authored-by: Steven Dahdah <steven.dahdah@mecademic.com>