Towards building contact rich manipulation frameworks with the Kinova gen3 ultralightweight robots.
- Get Visual Studio 2019 by downloading 'vs_community__98951435.1629706453.exe' present in this repository.
- Install CMake. Please make sure that you select the option of adding CMake to the system PATH as shown below.
- Install Boost using these instructions. In case you run into an error while installing MinGW-w64, please follow the instructions here under the 'Installing the MinGW-w64 toolchain' section.
Follow the instructions under the MSYS link. Once done, go back to the previous page and continue with steps 4-7.
- Install Qt OpenSource
- Install Robotics Library
- Download the source code and additional examples and extract the archives.
- In a cmd opened as administrator:
cmake -E tar x rl-0.7.0.zip
cmake -E tar x rl-examples-0.7.0.zip
cd rl-0.7.0
mkdir build
cd build
cmake -G "Visual Studio 16 2019" -D CMAKE_INSTALL_PREFIX="C:\Program Files\Robotics Library\0.7.0\MSVC\14.1\x64" ..
cmake --build . --config Release --target INSTALL
- Ensure your firewall is turned OFF (Windows Defender Firewall with Advanced Security).
- Clone this repository via Visual Studio. Make sure you have Git installed on your system. You can refer to section 2 (ignore 2a) and 3 here to learn more on the installation process.
- If you run into an error while cloning the repository, open powershell or command prompt --> navigate to the project directory and enter
git restore --source=HEAD :/
- Use the CMakeLists to set things up : Project -> Configure kortexApiCppExamples
- Build -> Build all
fin
In all the strategies listed below, the external torque used to drive the robot is limited by a saturation function. The purpose is to ensure no high torque is transmitted to the low-level controller of the robot. Note that this may have consequences in your application and will need to be adjusted to allow for high-torque or dynamical control behaviors.The UDP need not operate at a high frequency, the low-level torque controller of the robot will still function. These control strategies allow to vary the following variables
Variable | Name |
---|---|
|
Desired joint configuration |
|
Joint torque command |
|
External torque |
Note: Kinematic calibration is needed to ensure no drift.