Skip to content

xArm-Developer/xArm-CPLUS-SDK

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xArm-C++-SDK

Overview

  • The current version supports Linux/windows/MacOS(beta), but the source code structure has changed.

Caution

  • 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.

Update Summary

  • 1.17.0/1.17.1

    • Change some API names
  • 1.16.0

    • Added parameter to support get raw data of the Six-axis Force Torque Sensor
    • Added an interface to control xArm Gripper G2
    • Optimize the interface for controlling BIO Gripper G2
    • Extend the get_joint_states interface
  • 1.15.0

    • Added the Six-axis Force Torque Sensor collision detection related interfaces
    • Added support for the new version of BIO Gripper control interface
  • 1.14.2

    • Fix the 503 interface protocol identification error issue
    • Added sync parameters to some gpio interfaces to support immediate execution (requires firmware 2.4.101 or above)
    • Added XArmAPIWrapper to C# calls to support simultaneous control of multiple robotic arms
    • Added new interface to support obtaining some error information

API Change List

OLD API NAME NEW API NAME SDK VERSION
set_tgpio_modbus_timeout set_rs485_timeout 1.17.1
get_tgpio_modbus_timeout get_rs485_timeout 1.17.1
set_tgpio_modbus_baudrate set_rs485_baudrate 1.17.1
get_tgpio_modbus_baudrate get_rs485_baudrate 1.17.1
getset_tgpio_modbus_data set_rs485_data 1.17.1
set_impedance set_ft_sensor_admittance_parameters 1.17.0
set_impedance_mbk set_ft_sensor_admittance_parameters 1.17.0
set_impedance_config set_ft_sensor_admittance_parameters 1.17.0
set_force_control_pid set_ft_sensor_force_parameters 1.17.0
config_force_control set_ft_sensor_force_parameters 1.17.0
ft_sensor_set_zero set_ft_sensor_zero 1.17.0
ft_sensor_iden_load iden_ft_sensor_load_offset 1.17.0
ft_sensor_cali_load set_ft_sensor_load_offset 1.17.0
ft_sensor_enable set_ft_sensor_enable 1.17.0
ft_sensor_app_set set_ft_sensor_mode 1.17.0
ft_sensor_app_get get_ft_sensor_mode 1.17.0
get_linear_track_registers get_linear_motor_registers 1.17.0
get_linear_track_pos get_linear_motor_pos 1.17.0
get_linear_track_status get_linear_motor_status 1.17.0
get_linear_track_error get_linear_motor_error 1.17.0
get_linear_track_is_enabled get_linear_motor_is_enabled 1.17.0
get_linear_track_on_zero get_linear_motor_on_zero 1.17.0
get_linear_track_sci get_linear_motor_sci 1.17.0
get_linear_track_sco get_linear_motor_sco 1.17.0
clean_linear_track_error clean_linear_motor_error 1.17.0
set_linear_track_enable set_linear_motor_enable 1.17.0
set_linear_track_speed set_linear_motor_speed 1.17.0
set_linear_track_back_origin set_linear_motor_back_origin 1.17.0
set_linear_track_pos set_linear_motor_pos 1.17.0
set_linear_track_stop set_linear_motor_stop 1.17.0
shutdown_system system_control 1.13.6
get_suction_cup get_vacuum_gripper 1.8.0
set_suction_cup set_vacuum_gripper 1.8.0

Doc

Linux

  • 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

Windows

  • 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

    image-20191217153415733

    image-20191217152542587

  • 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.

    image-20191217154258804

    image-20191217154111439

  • 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

    image-20191217155932743

  • Run project

    You can use cmd run project.  

    image-20191217160911893

  • 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.

About

C++ SDK for UFACTORY robots, 850, xArm5/6/7, and Lite6.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •