Skip to content

vimior/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.11.6

    • 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)
  • 1.11.5

    • 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)
  • 1.11.0

    • Support transparent transmission (240/241)
    • Modified the centroid unit of ft_sensor_iden_load and ft_sensor_cali_load interfaces to millimeters (originally meters)
  • 1.9.10

    • Support Lite6 Model
    • Fix several bugs
  • 1.9.0

    • Support friction parameter identification interface
    • Support relative motion
    • Repair time-consuming interface (identification) failure due to heartbeat mechanism
    • Fix several bugs
  • 1.8.4

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

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

    • Support velocity control
    • Support calibrate tcp offset and user offset
    • Fix several bugs
  • 1.6.0

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

    • 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

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.

Doc

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 98.0%
  • C 1.4%
  • Makefile 0.6%