GithubHelp home page GithubHelp logo

Comments (6)

alexliniger avatar alexliniger commented on July 18, 2024

It is a torque DC motor model using steady state simplifications.

The moment produced by a motor is k_m*i, the current can be approximated by i = (V_bat - V_ind)/R, where V_bat is the battery input and V_ind is the inductive voltage of the motor. This is only true if the duty cycle of the pwm signal is 1, if it is not zero, it is this value during the one phase and 0 otherwise.
Thus on average we have the torque of the motor to by T = k_m*d*(V_bat - V_ind)/R. The inductive current by V_ind = k_m*omega, the motor speed omega is again proportional to the wheel speed. Finally, the force is again proportional to the the torque, which results in F = c*T = c_t*k_m*d*(V_bat - k_m*c_w*v_x)/R, where c_t and c_w depend on the gearbox and the wheel radius.

Finally this results in a the equation F_x = (C_m1 - C_m2*v)*d, where C_m1 and C_m2 are identified by driving data.

I hope this helps,
Alex

from mpcc.

dreamonJure avatar dreamonJure commented on July 18, 2024

Thanks for giving the derivation. And So could I interpret d as the duty cycle of the pwm signal here?

from mpcc.

alexliniger avatar alexliniger commented on July 18, 2024

Yes exactly.
From the README The inputs are the duty cycle d to the drive train, the steering angle delta and the velocity along the reference path v_theta (which is an approximation of the velocities projected onto the path)

from mpcc.

dreamonJure avatar dreamonJure commented on July 18, 2024

OK. And in "AMZ Driverless: The Full Autonomous Racing System", there also exists a D which is driving command replicating the pedals of a driver. Does it has the equivalent meaning as duty cycle d?

Furthermore, if I want to equip my own model car, how could I realize this physical actuator? Could you please give me more details and suggestions?

from mpcc.

alexliniger avatar alexliniger commented on July 18, 2024

The meaning of the driver command is very similar, but it is a bit more simplistic. The model neglects the induced voltage, so it becomes F_x = C*D. In other words the force is just proportional to the [-1,1] driver command. This simple model is possible because there is a low level controller which maps the driver command to the actual commands of the motor.

With a model car you most probably have a somehow similar behavior, so at the end the challenge is mainly to find the constant C.

from mpcc.

dreamonJure avatar dreamonJure commented on July 18, 2024

Thank you so much.

from mpcc.

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.