cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - You can Bookmark boards, posts or articles that you'd like to access again easily! X

Wheel climbing a ramp

XDN
13-Aquamarine
13-Aquamarine

Wheel climbing a ramp

Hello to all Mathcad professionnals

I need your help again.

 

I need to calculate a drive torque for a wheel climbing a ramp.

i can calculate this,  but my worksheet is not elegant and is heavy 😥 (probably, i'a m using matchad programmation not correctly)

 

Annotation 2020-07-23 135517.jpg

 

Here is now i do

The ramp is cylindrical profil

in first time

Annotation 2020-07-23 114502.jpg

 

now, i dicotomize a ramp ( arc lenght)

Annotation 2020-07-23 114729.jpg

 

In second time. At this step, this is a mechanical problem

I assume the ramp angle is simply a/2 .

In fact, the ramp (red line, on the picture) is the tangent equation at the circle. the first point where we calculate a tangent is calculate with polar coordinates from dicotomized values.

 

Annotation 2020-07-23 115400.jpg

 

I think my result its Ok

but i want more 😁

 

I want calculate all Traction forces and all associated torques for all dicotomized value.

in one program ?

and i want to draw all result

at this moment i am lost, can you help me

thank

 

attacher P6 file

 

1 ACCEPTED SOLUTION

Accepted Solutions
Werner_E
24-Ruby V
(To:XDN)

The maximum is not exactly at 22.5°:

Werner_E_0-1595612802353.png

Good thing that we have functions 🙂

 

View solution in original post

32 REPLIES 32
XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

I wrote a nonsense😓

a/2 🤒  just a is ok

but how to do exit red value

Annotation 2020-07-23 135517.jpg

 

 

 

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

sorry i make a lot of rookie mistakes

Annotation 2020-07-23 154207.jpg

 good

Werner_E
24-Ruby V
(To:XDN)

Why is your radius R unitless?

Werner_E_0-1595512774580.png

 

XDN
13-Aquamarine
13-Aquamarine
(To:Werner_E)

Great ! this is elegant !👍

Werner_E
24-Ruby V
(To:XDN)

When doing calculations with a set of values in vectors, you should use vectorization in your calculations (the arrow over the expression), otherwise the multiplication of two vectors yields the scalar product and not a vector with every vector elements multiplied.
I don't know if the pic below is correct from a mechanical point of view, but it shows what I mean. It would not be necessary to apply vectorization in the calculation of xN and yN as it would be automatically implicitly done by Prime, but its a good habit to use vectorization explicitly whenever you want it to be done.

Werner_E_0-1595514563567.png

Personally I find it a better idea to set up functions instead of doing calculations with vectors. Those functions need no vectorization as they are written to deal with normal scalar arguments. Only when you call those functions with a vector of elements as argument, you must vectorize that function call.

In the pic below I made the functions dependably only on alpha, but you may consider using radius and/or mass as additional function arguments for more flexibility.

Werner_E_1-1595514784095.png

Again: YOU have to check for mechanical correctness 😉

 

And while you sure ma plot one vector over another, having functions makes plotting quite easy and flexible

Werner_E_0-1595515293572.png

 

 

P6 worksheet attached

 

 

XDN
13-Aquamarine
13-Aquamarine
(To:Werner_E)

Ok i undestand what you say ...

I continue to discover the Prime promming

Annotation 2020-07-23 163810.jpg

 

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

This was the first step ...

 

Now, i have 2 wheels:

Annotation 2020-07-23 122116.jpg

 i want to make a same calculus, but the normal forces (green arrow) are variable

the final goal is :

find the position (and the value) where max torque here.

when the wheel climbing a ramp, the orange force decrease, and the angle increase

 

Werner_E
24-Ruby V
(To:XDN)

Or maybe that way using the functions (see my answer above)

Werner_E_0-1595516165023.png

 

BTW, did you notice that you always have to add 1mm just because you forgot to add a unit to the radius R.wheel?

 

 

XDN
13-Aquamarine
13-Aquamarine
(To:Werner_E)

😲 fantastic 👍

i use "1mm" in torque calculation, because, if i give the wheel radius with unit. my calculus don't work

probleme with rolling coefficient

 

i'm going to watch your file ...

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

for the rest

Annotation 2020-07-23 165812.jpg

 

i want to calculate normal force for each wheel

to do that, i need to calculate the coordinates to the center point of wheel

knowing, the center of gravity, when the P force are applied are invariant

coordinates : 0 is the center of gravity (and is a circle center)

CenterWheel1

Xw_1

Yw_1

CenterWheel2

Xw_2

Yw_2

Theorem of the resultant:

P1 + P2 + P = 0

Resulting moment theorem

Xw_1 * P1 + Xw_2 * P2 = 0

 

I want to make that for each angle

and finally i want to calculate the max torque value and is position on the circle

 

XDN
13-Aquamarine
13-Aquamarine
(To:Werner_E)

about unit on Rwheel paramater

in you sheet and following your remark about mechanical approach

d(alpha)/Rwheel it's wrong

the correct formulation is

roll coefficient /Rwheel ( not arc lenght)

Annotation 2020-07-23 173211.jpg

 

 

i don't find a working solution, if i use : Rwheel with unit (mm)

except to remove the unit with fuction dimless

 

thank you for your work, I will be able to inspire me

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

Sorry, now the mechanical problem is correct

there is no longer the correction of  1mm, it's mistake of me

Annotation 2020-07-23 175406.jpg

 

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

Werner, thank you for your help

your excellent sheet inspired me a lot

now, i have a simple and efficient worksheet!

very good 😀 ( write simple with function 👌)

 

the first part it's ok ... i'm going to the second part

Annotation 2020-07-23 181157.jpg

 

Joule, is not a problem for me

1J is the energy for move 1Newton on 1Meter lenght

so 1J = 1N*m

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

Anyone have an idea for calculate center wheel with this parameter

h ( distance with center tube, for example R=350mm)

WheelBase (for example 360mm)

Or, i think it's more simple tu use polar coordinates!🤔

we can calculate the center wheel point directly with polar coordinates

At the nominal position:

wheel 1 and wheel 2 are positionning with 45deg angle between verical axes

and use radius center wheel compared center tube

after this the angle increase (or decrease) with value of THETA angle.

 

Annotation 2020-07-23 184235.jpg

 

Werner_E
24-Ruby V
(To:XDN)

Using Pythagoras you have h^2 +(Wheelbase/2)^2 = (R-R.wheel)^2

 

> wheel 1 and wheel 2 are positionning with 45deg angle between verical axes

I don't think so.

The angle rather is acos(h / (R-R.wheel)) = asin( Wheelbase /(2*Wheel_center_radius)), isn't it?

 

45° only if wheelbase = 2 * h

XDN
13-Aquamarine
13-Aquamarine
(To:Werner_E)

I love your way of writing with functions

and finally , i calculate the center point coordinates with polar coordinates !

 

Now, i have a new problem

for the mechanical calculation i use a solve block !

how can i use this for all theta value ?

Annotation 2020-07-23 224545.jpg

 

 

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

another things.

In matrix N for example, it is possible to use millimeter  in place meter

another one : Thanks👍

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

i find an example in this forum to use solve block with function

great !

Annotation 2020-07-24 160933.jpg

 

But, now I don't know how to do with the N(theta) variables

🤔

 

Werner_E
24-Ruby V
(To:XDN)


@XDN wrote:

another things.

In matrix N for example, it is possible to use millimeter  in place meter

another one : Thanks👍


Unfortunately Prime doesn't allow to change the unit inside of a matrix. You can change it by typing the desired unit in the placeholder after the matrix, but this only works OK if all elements of the matrix have the same unit. In your case it fails because the first (header) row consists of strings.

If you can do without the header row it will work.

Werner_E_0-1595600896184.png

 

Werner_E
24-Ruby V
(To:XDN)


@XDN wrote:

I love your way of writing with functions

and finally , i calculate the center point coordinates with polar coordinates !

 

Now, i have a new problem

for the mechanical calculation i use a solve block !

how can i use this for all theta value ?

 


You may turn the solve block into a function dependent on the row number:

Werner_E_0-1595600486978.png

 

 

Just had a second look and the better way would be to make the solve block dependent on theta using the function x.p1 and xp.2 instead of the table lookup.

Werner_E_0-1595601194601.png

 

For a nicer table you may define two auxiliary functions which return just one of the two solutions each:

Werner_E_1-1595601435569.png

 

 

XDN
13-Aquamarine
13-Aquamarine
(To:Werner_E)

Thanks ! very great 👌

Annotation 2020-07-24 163819.jpg

 

 

Oh ! sorry , i don't see your last post, before posting

fabulous !!!!

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

i don't understand correctly your auxiliary function🤔

do you can to explain me ?

the result is very great ! it's elegant !

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

 

 

And finally

Annotation 2020-07-24 171249.jpg

 

and to go further😃

 

find the maximal torque for wheel1 (climbing wheel)

and draw the corresponding graphics : maximum torque

maximum torque as a function of angle

dans variation P1 force as a function of angle

 

 

 

Werner_E
24-Ruby V
(To:XDN)

The solve block function res2 returns a 2x1 vector. If you call that function vectorized with a nx1 vector of theta values, you get a nested matrix, a nx1 vector where each element is a 2x1 vector. This may be undesired.

So I defined functions which call the solve block but only return one of the two result values. res_a the first one and res_b the second one, note the vector index at the end of the functions.

 

If one of this auxiliary functions is called with a vector of angles, the result is a simple vector.

 

The method is of course inefficient because for every single value of theta the solve block is called twice even though a single call already returns both values.

If the calculation would be very time consuming and the theta-vector would be very large, I would chose a different appraoch (unnesting the nested matrix). But in case of the fast calculation for just four values of theta i didn't bother 😉

 

XDN
13-Aquamarine
13-Aquamarine
(To:Werner_E)

ooppsss , I hurried up

i have a probleme with forces calculation ... because load is variable ....

finally the result is wrong

 

i want calculate for theta value, maximum traction and maximum torque

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

i'm a fool

now is correct

Annotation 2020-07-24 173404.jpg

 

XDN
13-Aquamarine
13-Aquamarine
(To:XDN)

it is possible to draw a wheel 1 at max torque position

and wheel 2 corresponding ?

Annotation 2020-07-24 175204.jpg

 

Werner_E
24-Ruby V
(To:XDN)


@XDN wrote:

it is possible to draw a wheel 1 at max torque position

and wheel 2 corresponding ?


If you have center and radius of the circles this should be no problem.

Top Tags