Download presentation
Presentation is loading. Please wait.
Published bySydney Benson Modified over 9 years ago
1
Ackermann Steering Most vehicle steering systems use some form of the Ackermann Steering model. For turning stability tires will turn on different radii.
2
Ackermann Steering
4
Research First step was to research steering geometries and types of mechanism suitable for our requirements. – Cheap – Rugged – Easily maintained – Readily available parts
5
Mechanism Selection Mechanism should provide moderate responsiveness and ease of operation – Best choice – Recirculating Ball Steering Mechanism
6
Mechanism Elimination Hydraulic – Failed Ease of Maintenance and availability of parts. Rack and Pinion – Failed ease of operation at low speeds
7
Rough Geometry Due to the suspension design I was required to follow the following setup.
8
Geometry
11
Equations
12
Left Side Equations
13
Right Side Equations
14
Equations VariableDescription aDistance from knuckle to center link bTravel of center link cDistance from center link to axis of rotation xLength of steering knuckle yTie rod length Angles between steering knuckle and tire Angle between knuckle and axis of rotation on the left side Angle between knuckle and axis of rotation on the right side Left turn angle Right turn angle
15
Program #include int main(){ float y, c, b; double x= 6.403; double P, Q, R, Theta1, Gamma1; double I, J, K, Theta2, Gamma2; printf("Input value for y: "); scanf("%f", &y); printf("Input value for c: "); scanf("%f", &c); printf("Input value for b: "); scanf("%f", &b); printf("The values entered are: %f, %f, %f\n", y, c, b); float a = 20.1797; float g = 20.1797; float pi = 3.141592654; printf("a equals: %f\n", a); printf("g equals: %f\n", a); R = pow(y,2) - pow(x,2) - pow(b,2) - pow(a,2) - pow(c,2) - 2*a*b; Q = 2*x*c; P = 2*x*(a+b); K = pow(y,2) - pow(x,2) - pow(b,2) - pow(g,2) - pow(c,2) + 2*g*b; J = 2*x*c; I = 2*x*(g-b);
16
Program I = 2*x*(g-b); printf("P equals: %f\n", P); printf("Q equals: %f\n", Q); printf("R equals: %f\n", R); printf("I equals: %f\n", I); printf("J equals: %f\n", J); printf("K equals: %f\n", K); double den1, den2; double den3, den4; den1 = sqrt( pow(P,2) + pow(Q,2) ); //denominator den2 = den1; //both denominators are the same den3 = sqrt( pow(I,2) + pow(J,2) ); //denominator den4 = den3; //both denominators are the same Theta1 = ((1 / cos((R/den1)*(-1)) - 1 / cos(P/den2))*(180/pi)); Theta2 = ((1 / cos((K/den3)*(-1)) - 1 / cos(I/den4))*(180/pi)); printf("Theta1 equals: %f\n", Theta1); printf("Theta2 equals: %f\n", Theta2); Gamma1 = (90 - 38.66 - Theta1); Gamma2 = ( -90 + 38.66 + Theta2); printf("Gamma1 equals: %f\n", Gamma1); printf("Gamma2 equals: %f\n", Gamma2); getch (); return 0; }
17
Sample Input Values cyb 116.666850.5 1 1.5 2 2.5 216.455520.5 1 1.5 2 2.5 316.302890.5 1 1.5 2 416.210630.5 1 1.5 2 516.179760.5 1 1.5 616.210640.5 1 1.5 716.302920.5 1 816.455560.5 1
18
Final Geometry
19
Turn Radii ◦ 7.15 ft. (Inside) ◦ 11.87 ft. (Outside
20
Parts
21
Constructed System
22
Deliverables Mechanism Selection Rough Geometry Selection Geometric Equation Research C++ Program Calculations of Ackerman Angles Final Geometry Construction
23
Conclusion Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.