Comments (6)
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.
Thanks for giving the derivation. And So could I interpret d
as the duty cycle of the pwm signal here?
from mpcc.
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.
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.
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.
Thank you so much.
from mpcc.
Related Issues (20)
- About the State Parameters HOT 1
- Passing in state of 0s into solveMPC() HOT 1
- How to add new soft constraints for velocity HOT 4
- C++ build error HOT 3
- cost function HOT 1
- Using Hpipm in Matlab HOT 1
- getContouringCost() detailed description HOT 7
- New Features
- Build instructions for new CppAD-codegen HOT 5
- Possible indexation problem HOT 2
- Question about Track HOT 5
- How can I run the code in MATLAB HOT 5
- What is ZHO? HOT 1
- Is there a guideline to easily and reliably configure the various weights of the evaluation function?
- Regarding the addition of dVs to the control input HOT 2
- 4Wheel Drive Autonmous Driving HOT 13
- Optimal Cost at Each time step . HOT 1
- Lyapunov Based Stability HOT 4
- Inquire if GP based MPC code will be open-source HOT 3
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 mpcc.