Need help developing a movement function for motor motion

Click For Summary

Discussion Overview

The discussion revolves around developing a movement function for a motor to achieve controlled rotation to a specified angle, with the ability to update the target position dynamically. Participants explore various mathematical approaches and considerations for controlling motor motion, including speed, acceleration, and pivot points.

Discussion Character

  • Exploratory, Technical explanation, Debate/contested

Main Points Raised

  • One participant suggests using a sigmoid function to model the motor's movement.
  • Another participant proposes a clamped cubic spline as a mathematical solution, noting the challenge of applying this to motor control and referencing the SUVAT equations for simpler calculations regarding speed adjustments.
  • A further contribution questions the ultimate goal of the movement—whether it is to reach the target quickly, with minimal peak acceleration, or another criterion—indicating that the ideal acceleration/velocity profile is contingent on these goals.
  • It is mentioned that when updating the target position, only the current position, velocity, and possibly acceleration should be considered, rather than historical data.

Areas of Agreement / Disagreement

Participants express differing views on the appropriate mathematical models and the criteria for an "ideal" movement function, indicating that multiple competing approaches and goals remain unresolved.

Contextual Notes

Limitations include the potential need for further clarification on how to implement the proposed mathematical functions in practice and the dependence on specific definitions of "ideal" movement profiles.

assafMOCAP
Messages
2
Reaction score
0
Hi,
I have a motor that i would like to rotate to a certain angle, in a controlled manner.
During the movement, i want to update the final position I want to reach.
The new updated function has to start with the same speed the initial function ended with
I wan to find a function that does this.

In green, the initial function.
In blue at t=t1, I update the endpoint.
I would also like to control the pivot points of the function (in red)
How do I do that ?
Thank you !
 

Attachments

  • pid function.jpg
    pid function.jpg
    10.4 KB · Views: 246
Mathematics news on Phys.org
You could try playing around with the sigmoid function:

1590219349852.png
 
  • Like
Likes   Reactions: assafMOCAP
For a mathematical solution you could look at spline function. Specifically (because presumably you cannot achieve an instantaneous change in velocity) I would suggest a clamped cubic spline.

However I'm not sure how you would use this function in practice to control a motor; this would normally be done by a more simple calculation using the SUVAT equations to answer the question "do I need to speed up or slow down", because that is all you can control.
 
What is the goal? Reach the position in the fastest possible way with limits on acceleration and speed? Reach it with the lowest peak acceleration? Something else? The best acceleration/velocity profile will depend on that.

When you update your target you can forget what happened before. Only the current position, velocity and maybe acceleration matter. Maybe other current parameters as well, but not their history. The ideal profile will depend on what you consider "ideal".
 

Similar threads

  • · Replies 6 ·
Replies
6
Views
4K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 15 ·
Replies
15
Views
2K
  • · Replies 12 ·
Replies
12
Views
2K
  • · Replies 3 ·
Replies
3
Views
3K
Replies
21
Views
3K
  • · Replies 1 ·
Replies
1
Views
4K
Replies
5
Views
2K
  • · Replies 17 ·
Replies
17
Views
4K
  • · Replies 5 ·
Replies
5
Views
3K