Coder Social home page Coder Social logo

Comments (6)

jpieper avatar jpieper commented on August 16, 2024 1

Great, I'll close this out then. Come back if you have more questions, or join the mjbots discord! https://discord.gg/W4hUpBb

from moteus.

kibidev avatar kibidev commented on August 16, 2024

Tested with FW versions:
20220501-moteus-0965b28edd417f4e935f87d1ad40a607093d816f.elf
20220730-moteus-75df0139aaf6e76f207dffae17b81b39f3d5d5ce.elf
20220803-moteus-26e636ddb36b702a361291b0ab842acd881f281b.elf

Tested on HW model 800 and 700.

from moteus.

jpieper avatar jpieper commented on August 16, 2024

If understand correctly, I believe that is expected behavior. Your options are to either:

  1. Set a finite servo.max_position_slip as documented in the reference manual section on velocity control: https://github.com/mjbots/moteus/blob/main/docs/reference.md#velocity-control

  2. Disable the position limits, as they are rarely useful for velocity mode applications anyway. They can be set to nan to disable them completely: https://github.com/mjbots/moteus/blob/main/docs/reference.md#servoposposition_min

from moteus.

kibidev avatar kibidev commented on August 16, 2024

Thank you for a quick and helpful reply!

I have set servo.max_position_slip to 0, and it seems to fix the problem.
It there any other behavior change I would need to be aware of when changing this from nan to 0?

from moteus.

jpieper avatar jpieper commented on August 16, 2024

If you have the kp term set to 0, then setting servo.max_position_slip to 0 will have no other effect. However, the combination of those two means that the velocity control has no effective integrative term, and in steady state the velocity will never match the control velocity in the presence of an external torque. If you need the velocity to track accurately, you should use non-zero values for both. The kp will control the "velocity integrative term", and the max_position_slip will control the integrator windup limit.

from moteus.

kibidev avatar kibidev commented on August 16, 2024

Great, thanks again.
Accurate velocity is not important in our application, so it should be good like this.

from moteus.

Related Issues (20)

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.