September release - New features batch =========================================================== Features ----------------------------------------------------------- Niryo Studio ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Direct control *********************************************************** - Jog Pose. Control the pose of the robot in position and orientation. The arrows show the direction of the translation and rotation command to apply to the robot's pose. You can adjust the command speed. - Jog Joints. Control the joints of the robot in orientation. The arrows show the direction of the rotation command to apply to a joint. You can adjust the command speed. State and 3D View *********************************************************** - Frames visualization. Visualize the TCP and the robot base frames. You can select which frames you want to display. Programming *********************************************************** - **Try Except** block in *Logic* group. The function will try to run what is inside of it. A number of attempts can be set to repeat the operation if the robot failed to do it. You can set the function to continue or stop the program if the attempts do not succeed. - **Linear** and **Try Linear in** *Move Pose* block, in *Movement* group. **Linear** function makes the robot move linearly. **Try Linear** function makes the robot move linearly but if no linear trajectory can be computed, it will do a *Standard* movement. - **Linear** and **Try Linear** in *Shift pose* block, in *Movement* group. **Linear** function makes the robot do a translation movement linearly. **Try linear** makes the robot do a translation movement linearly but if no linear trajectory can be computed, it will do a *Standard* movement. - **Move Trajectory** function in *Movement* group. This function builds a trajectory by giving it waypoints. The robot will try to reach way points in the given order. The *distance smoothing* parameter defines the distance from which the trajectory will be smoothed around each way point. - **Set TCP** block in *Tool* group. This function changes the TCP (Tool Center Point) coordinates of the robot. TCP coordinates are used with *Pose*-type movements. - **Activate/Deactivate TCP** block in *Tool* group. This function activates or deactivates TCP coordinates. When activated, TCP coordinates are defined by the user. When deactivated, the TCP coordinates are equal to the final point of the robot's arm. Settings *********************************************************** - Angles unit selection. Angles unit selection between degree and radian from the top bar. - Setup TCP coordinates from *Robot's settings* view. Change TCP (Tool Center Point) coordinates. TCP coordinates are used as references for *Pose* movements. *Activate* TCP allows the modification of the TCP coordinates. *Scan* will check if a tool is attached to the arm and will update the TCP coordinates according to the connected tool. *Reset* will reset the TCP coordinates to the actual tool (0 if no tool). You can manually modify the TCP coordinates by writing your orientation and translation. Click *Apply* to apply the new coordinates. Saved positions *********************************************************** - Play position Move to the desired position from position list by clicking on the *Play* button. Vision set *********************************************************** - Camera's settings Brightness, saturation and contrast adjustments for the camera. ROS packages ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Tool commander package *********************************************************** - TCP service settings TCP.msg SetTCP.srv Arm commander package *********************************************************** - New movements available in ArmMoveCommand.msg linear pose shift linear pose trajectory Python ROS Wrapper package *********************************************************** - New movement functions available move linear pose linear pose jog pose shift jog joints shift shift linear pose execute trajectory from pose - New TCP functions available set_tcp enable_tcp reset_tcp - New camera settings functions available set_brightness set_contrast set_saturation Python API ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - New TCP functions available set_tcp enable_tcp reset_tcp - New movement functions available move linear pose linear pose jog pose shift jog joints shift shift linear pose execute trajectory from pose - New camera settings functions available set_brightness set_contrast set_saturation Modbus ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - New TCP registers Enable TCP at address 600 Set TCP at address 601 - New movement registers Linear pose command at address 102 Improvements ----------------------------------------------------------- Niryo Studio ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Programming *********************************************************** - Graphical improvement of **save program** function in the *Blockly program* view. - Graphical improvement of **Load program from robot** function in the *Blockly program* view. - Remove **Clear workspace** in the *Blockly program* view. - Graphical improvement of **Add position** function in the *Blockly program* view. ROS packages ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Refactoring Tool Commander and Robot Commander packages. Remove Robot Commander package Reorder Robot Commander package between Tool Commander and Arm Commander packages. - Self collision detection Add self-collision detection via MoveIt. - Collision detection Collision detection improvement on each joints. Learning mode activation in case of a collision. Modbus ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Add Set Vision registers Bug fixes ----------------------------------------------------------- Modbus ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Update tools registers - Update conveyor registers