Giter Site home page Giter Site logo

yuhochau / compliant-control-and-application Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mingshanhe/compliant-control-and-application

0.0 0.0 0.0 41.94 MB

Compliant Control: 1) admittance control algorithm 2) impedance control algorithm 3) hybrid force&position algorithm in robotic arm (Universal Robot).

Home Page: https://mingshanhe.github.io/Compliant-Control-and-Application/

License: MIT License

Shell 0.12% C++ 66.28% Python 15.44% CMake 18.17%

compliant-control-and-application's Introduction

Compliant Control and Application

It contains the compliant control algorithms in robotic arm, and the chosen robot is universal robot which is popular collaborate robot in the world.

Compile

mkdir catkin_ws/src && cd catkin_ws/src
git clone https://github.com/MingshanHe/Compliant-Control-and-Application.git
sudo chmod +x install_dependencies.sh && ./install_dependencies.sh
catkin build (or cd .. && catkin_make)

If there is come up with some errors during compile process, you might need to install some ros packages for support this project, I recommend you to run following command or search the compile error in Google or Baidu and so on.

rosdep install -i --from-path src --rosdistro noetic --ignore-src -r -y

Check

using the following command to check the self-defined controller. Like:cartesian_velocity_controller

rospack plugins --attrib=plugin controller_interface

Run

Notice: In this repository, I have used ur5e robot and its urdf file need to be changed in different situation, like need or not a force/torque sensor in the end effector. Please check the urdf file seriously and run the algorithm, Thanks.

1. Admittance

roslaunch ur_gazebo ur5e_bringup.launch transmission_hw_interface:=hardware_interface/PositionJointInterface specified_controller:=cartesian_velocity_controller
roslaunch admittance Admittance.launch

After the robot has moved to the desired pose, run the following commands to generate fake wrench signal

roslaunch admittance Wrench_Fake.launch

2. Impedance

roslaunch ur_gazebo ur5e_bringup.launch transmission_hw_interface:=hardware_interface/EffortJointInterface specified_controller:=joint_torque_controller
roslaunch impedance Impedance.launch

3. Application (Hybrid Admittance Control)

roslaunch mir_gazebo mir_empty_world.launch
roslaunch admittance HybridAdmittance.launch

Notice: You could change the value.

rostopic pub /wrench_fake geometry_msgs/Wrench 
"force:
  x: 100.0
  y: 0.0
  z: 0.0
torque:
  x: 0.0
  y: 0.0
  z: 0.0" 

4. Hybrid Position Force Control (No longer Maintained)

roslaunch ur_gazebo ur5e_bringup.launch transmission_hw_interface:=hardware_interface/PositionJointInterface specified_controller:=cartesian_velocity_controller environment:=polish
roslaunch hybrid_position_force_control hybrid_position_force_control.launch

And then it needs to use the topic publish command in the terminal. It is recommended to move to the pose [-0.1, 0.3, 0.3, 0.707, -0.707, 0.0, 0.0].

rostopic pub /desired_carteisan_pose_cmd geometry_msgs/Pose "position: x: -0.10 y: 0.30 z: 0.30 orientation: x: 0.707 y: -0.707 z: 0.0 w: 0.0" 

Performance

1. Admittance

1

2. Hybrid Admittance Control

2

3. Hybrid Position Force Control (No longer Maintained)

3

compliant-control-and-application's People

Contributors

mingshanhe avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.