- The current version supports Linux/windows/MacOS(beta), but the source code structure has changed.
- During use, people should stay away from the robot arm to avoid accidental injury or damage to other items by the robot arm.
- Protect the arm before use.
- Before you exercise, please make sure you don't encounter obstacles.
- Protect the arm before unlocking the motor.
-
- Correct the ambiguity that the
set_position_aa
interface is true when both relative and is_tool_coord are true. After the correction, when is_tool_coord is true, relative is invalid (previously is_tool_coord was invalid when relative was true)
- Correct the ambiguity that the
-
- Optimization pause time is too long (wait=true)
- Add common motion api (Enabled after firmware version 1.11.100)
- The Cartesian motion-related interface adds the motion_type parameter to determine the planning method (Enabled after firmware version 1.11.100)
-
- Support transparent transmission (240/241)
- Modified the centroid unit of
ft_sensor_iden_load
andft_sensor_cali_load
interfaces to millimeters (originally meters)
-
- Support Lite6 Model
- Fix several bugs
-
- Support friction parameter identification interface
- Support relative motion
- Repair time-consuming interface (identification) failure due to heartbeat mechanism
- Fix several bugs
-
- Support the Six-axis Force Torque Sensor (not a third party)
- Modify the reporting processing logic and optimize the processing of sticky packets
- Fixed frequent switching of the pause state causing the program to hang
- Fix the program hangs when setting the mechanical claw position in speed mode
-
- The Velocity interface supports the duration parameter (requires firmware 1.8.0 or higher)
- Added identification interface (current identification and torque identification) (requires firmware 1.8.0 or higher)
- Support linear track interface (requires firmware 1.8.0 or higher)
- Fix the problem of not waiting when the timeout parameter of the motion interface is greater than 0
- Support macos compilation
- Fix some bugs
-
- Support velocity control
- Support calibrate tcp offset and user offset
- Fix several bugs
-
- Support the xArm BIO gripper, Robotiq 2F-85 gripper and Robotiq 2F-140 gripper
- Support position detection trigger the controller analog IO
- Support self-collision model parameter setting
- Support Modbus communication of end tools
- Supports TCP timeout for setting instructions
- Support joint motion with circular interpolation
- Optimize logic, enhance API security, Fix several bugs
-
- The new parameter of
set_servo_cartisian
interface is used to support servo cartisian movement of tool coordinate system - Support delayed trigger digital IO
- Support position detection trigger digital IO
- Support configure the stop state to automatically reset IO signal
- Support motion commands based on axis angle
- Support to calculate the offset between two points
- Support for blocky code conversion and operation of xArmStudio1.5.0
- The new parameter of
-
Get the code:
git clone https://github.com/xArm-Developer/xArm-CPLUS-SDK.git
-
Change directory
cd ./xArm-CPLUS-SDK/
-
Build library:
make xarm
-
Build all example
make test
-
Build a example
make test-0002-get_property # build example/test-0002-get_property.cc
-
Build all (build library and build all example)
make clean make # make xarm && make test
-
Install
sudo make install
-
Uninstall
sudo make uninstall
-
Run a example
./build/example/0002-get_property 192.168.1.221
-
Running environment
It is recommended to run the project with visual studio 2015.Make sure your visual studio 2015 has a visual C++ development environment installed before running.
-
Get the code:
git clone https://github.com/xArm-Developer/xArm-CPLUS-SDK.git
-
Change directory
Change your directory xArm-CPLUS-SDK/visual_studio
-
Open project
If you changed your directory, you can see a visual_studio.sln file. Click this file you will open the project.
-
Check the xarm project properties
Open the xarm property pages and make sure your project configuration is the same as the following screenshot configuration. VC++ Directories path $(ProjectDir)..\..\include $(ProjectDir)..\..\src
-
Check the example project properties
Open the example property pages and make sure your project configuration is the same as the following screenshot configuration. Example project dependencies and xarm projects so references must be added to run.
-
Build project
Right click example project and build the projiect.If the example project bulid successful you will get a .exe file in you project path. .exe path like this C:\Users\ufactory\Desktop\xArm-CPLUS-SDK\visual_studio\x64\Debug\0002-get_property.exe
-
Run project
You can use cmd run project.
-
New project
If you want to create a new project, you need to pay attention to the dependent path of your new project. You must make sure that the configuration of the project you create is the same as that of the example project.