Comments (4)
Ah I see, so if it's the same as it was when we were using the UR5 then it has some sort of 'apply a force at the end effector option' that you can use through their interface. If you find a way to apply torques to the joints with an update rate better than 100Hz please let us know!
from abr_control.
Hello! Basically the dt
sets how often the control signal can be updated. The dynamics are estimated every time the control loop runs, and for systems with highly nonlinear dynamics the control signal generated is only relevant inside a small area of state space.
So if you generate a control signal u_t
when the system is in configuration q_t
, as your robot gets farther away from q_t
the control signal u_t
is going to be more and more outdated and cause undesired behaviour.
If things are running asynchronously and you can't control the dt
(of the sim or in real life) then yeah, you're going to want to have a good computer to calculate the control signal as quickly as possible. The UR5 control signal generates pretty quickly if you compile the cython functions in the config file (which is default on the repository), but unrelated to having a good computer to calculate the control signals, you also really want to watch out for the communication overhead. We found this to be the primary issue when communicating with the Jaco2 arm, and ended up having to build our own communication protocol with it (github.com/abr/abr_jaco2) to minimize it.
Tangential question: Does the ROS interface with CoppeliaSim have a force control mode?
Secondary tangential question: Does the UR5 have a force control mode? We had looked into it a few years ago and there was no real option for controlling the torque at the joints.
You could also use the path planners, if you're doing position control with the UR5. There's an option with the path planners to track the wall clock time since the last time it was called and send out a target position based on where in the trajectory the robot should be (e.g. we're 2 seconds into the 4 second movement, the robot should be halfway through the trajectory)
from abr_control.
Thanks for this quick reply. This information is very useful.
Now Answer your questions. First about ROS.
ROS Interface doesn't have a proper force control mode. This interface only give us the possibility to send data between ROS and Coppelia (using publishing and subscribing concept). V-rep only gives me the q and dq feedback by publishing those info to ROS, then Subscribe it to a ROS node and by using your repo, it generates a torque vector (u), and finally send it back to v-rep to applying those changes.
About Ur5. I can see on its user manual it does have a force command, which I can imagine it is possible to control using this. But I didn't test it yet, because I didn't solve this dt question. Also UR has a ROS package, it might help
from abr_control.
Sure!
from abr_control.
Related Issues (20)
- Add a warning when the joint state is ignored by mujoco_config
- AttributeError: 'MjViewer' object has no attribute 'exit' HOT 1
- Question for the hand/gripper control HOT 2
- Can we add AvoidObstacles in inverse kinematics path planner? HOT 1
- Non-linear trajectory issue HOT 6
- config.py file for UR5e HOT 1
- Control of two robots HOT 2
- Error HOT 2
- Mujoco config.joint_names all None when using muscles
- error occurs when calculation of 'C' HOT 6
- Can I download those mesh and texture files directly? HOT 2
- Other arms with ABR_Control HOT 2
- xyz_offset argument with problems HOT 7
- Inverse kinematic for Mujoco HOT 3
- ask for reference about the controllers HOT 3
- Dynamics Adaptation using hardcoded Tau and dt values HOT 2
- TypeError: 'numpy.ndarray' object is not callable HOT 2
- MujocoConfig Error HOT 3
- Mujoco install issues I encountered. HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from abr_control.