Slower Movements for multiple move commands from adapter

Dear Mech-Mind Team,
is there a possible solution for creating “movement groups” or something similiar, where I can set the max. velocity and max. acceleration for multiple movements from the adapter?

Background:
Knowing the weight of the item in the Adapter, I would like to make all movements slower based on the item weight, when the item is attached, while all other moves can have the full velocity.

ie. item weight = 50g, “item_attached_group_velocity” = 100%
ie. item weight = 500g, “item_attached_group_velocity” = 70%,
… etc.

this would effect ~20 movement commands in my viz project before each start.

Thanks for the help,
Jonathan

Hi, Jonathan,

What you’re asking for can be done.

In the adapter generator, set the parameters you want to change,
like this:

Then send the command to modify the speed and acceleration of the step.

It is important to note that you need to set the step properties before running the Mech-Viz

Hi Haochen,
thank you for your response.

So basically this will set the velocity and acceleration for each step separately.

In a more high level approch this would look like:

def setVelocity():
    msg = {
          "function": "setProperties", 
          "name": "move_1", 
          "values": {
                     "velocity": 0.01, 
                     "acceleration": 0.01
           } 
    }
    return hub_caller.call("forward", {"name": "executor", "message": msg})

I would then need to call this function for all movement commands - is that correct?
If so, is it possible to send just one message to the hub caller with multiple “function calls”?

Thank you for your help,
Jonathan

  1. Yes
  2. No, You can only call this function multiple times because this function is designed to set properties for one step, not for multiple steps.

Hi Jonathan,
What‘s the reason you want to change the speed in Viz. Do you use master control + adapter ?

Hi Bo,
Yes I am using MasterControl + Adapter.

I believe it makes sense to have two different “velocitiy groups” for pick robot applications:
1.) No item on the endeffector
2.) item on the endeffector

I didn’t find any option for “velocity groups” or something like that. So for now I created a list of all movements by their stepname and loop over it before starting Viz, setting the velocity for each command.

It would be quite nice to set a velocity group for motion commands and set some global velocity to those motion groups in the adapter.

Best,
Jonathan

1 Like

Understand. We will plan for it.

1 Like