Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

КМ - Maple

.pdf
Скачиваний:
78
Добавлен:
21.05.2015
Размер:
1.93 Mб
Скачать

psi := arcsin(OA/AB);

ψ= π6

>pointB := [AB*cos(psi), 0]:

pointC := [pointB[1]-(AB-AC)*cos(psi),

pointB[2]+(AB-AC)*sin(psi)]:

Va := arrow(pointA,

vector([v1[’x’], v1[’y’]]),

.35, 1,

.20, color=red):

Vb := arrow(pointB,

vector([v1[’x’], v1[’y’]]),

.35, 1,

.20, color=red):

Vc := arrow(pointC,

vector([v1[’x’], v1[’y’]]),

.35, 1,

.20, color=red):

> display(draw(Pi/2),

Va,

textplot([v1[’x’]+dxy, 35+v1[’y’]+dxy, ’V’], color=red),

scaling=CONSTRAINED);

Скорость точки B направлена вдоль оси Ox (т.к. ползун B перемещается только по горизонтали), следовательно, если мы будем искать положение мгновенного центра скоростей звена AB , то, проведя перпендикуляры в точках A и B к скоростям, получим, что они параллельны.

Это значит, что тело AB совершает мгновенное поступательное движение и, следовательно, скорости всех точек равны, а мгновенная угловая скорость вращения равна нулю:

ωAB = 0.

>V[’B’] := V[’A’]: V[’C’] := V[’A’]: omega[’AB’] := 0:

91

> display(draw(Pi/2), Va, Vb, Vc,

textplot([v1[’x’]+dxy, 35+v1[’y’]+dxy, ’V’], color=red),

textplot([pointB[1]+v1[’x’]+dxy, pointB[2]+v1[’y’]+dxy, ’V’],

color=red),

textplot([pointC[1]+v1[’x’]+dxy, pointC[2]+v1[’y’]+dxy, ’V’],

color=red),

scaling=CONSTRAINED);

Перейдем к поиску ускорений.

Из условия задачи мы можем найти ускорение wA точки A ; угловую скорость ωAB звена AB ; а кроме того мы знаем линию, на которой лежит ускорение точки B — это горизонтальная ось Ox (т.к. ползун B может перемещаться лишь влево–вправо). Значит, чтобы определить угловое ускорение εAB звена AB и ускорения wB и wC точек B и C , необходимо выбрать точку A в качестве полюса и записать следующее векторное равенство в проекциях на координатные оси:

w¯B = w¯A + w¯Bвр(A) + w¯Bц (A), (*)

Здесь вращательное ускорение B вокруг A направлено перпендикулярно отрезку AB , а центростремительное — от точки B к точке A .

Поскольку точка A совершает вместе с кривошипом вращение вокруг неподвижного шарнира O , то ее ускорение найдем по формуле

w¯A = w¯вр( ) + w¯ц ( ).

A O A O

Здесь вращательное ускорение A вокруг O направлено перпендикулярно отрезку AO вправо (туда, куда «показывает» εOA ), а центростремительное — от точки A к точке O .

92

>W[‘A_вр‘] := epsilon[’OA’]*OA: W[‘A_ц‘] := omega[’OA’]^2*OA:

W[‘A‘] := sqrt(W[‘A_вр‘]^2+W[‘A_ц‘]^2); W_размер := 20:

WA := 280 5

>w1[’x’] := W[‘A_вр‘]/W_размер: w1[’y’] := -W[‘A_ц‘]/W_размер:

>Wa := arrow(pointA, vector([w1[’x’], w1[’y’]]),

.35, 1, .20, color=blue):

Wax := arrow(pointA, vector([w1[’x’], 0]),

.35, 1, .20, color=blue): Way := arrow([pointA[1], pointA[2]],

vector([0, w1[’y’]]),

.35, 1, .20, color=blue): > Wb := arrow(pointB, vector([20, 0]),

.35, 1, .20, color=blue): Wb_вр := arrow(pointB,

vector([20*sin(psi), 20*cos(psi)]),

.35, 1, .20, color=blue): Wb_ц := arrow(pointB,

vector([-20*cos(psi), 20*sin(psi)]),

.35, 1, .20, color=blue): > display(draw1(Pi/2),

Wa, Wax, Way, Wb, Wb_вр, Wb_ц, textplot([w1[’x’]+dxy, 35+w1[’y’]+dxy, ’Wa’],

color=blue), textplot([w1[’x’]+1.5*dxy, 35, ’Wa_вр’],

color=blue),

textplot([1.5*dxy, 35+w1[’y’]+dxy, ’Wa_ц’], color=blue),

textplot([pointB[1]+20+dxy, dxy, ’Wb’], color=blue),

textplot([pointB[1]+20*sin(psi)+dxy, pointB[2]+20*cos(psi)+dxy, ’Wb_вр’],

color=blue), textplot([pointB[1]-20*cos(psi)+dxy,

pointB[2]+20*sin(psi)+dxy, ’Wb_ц’], color=blue),

scaling=CONSTRAINED);

93

На рисунке показаны:

направление ускорения точки B (в предположении замедленного движения ползуна);

направление вращательного ускорения точки B вокруг точки A (в предположении о положительном значении εAB );

направление центростремительного ускорения точки B (в действительности оно равно нулю, т.к. ωAB = 0 ).

Величины указанных ускорений найдем из проекций уравнения (*) на оси координат. Если в результате получим отрицательные значения, то направления ускорений надо изменить на противоположные.

Запишем уравнение (*) в проекции на ось Oy .

>-W[‘A_ц‘]+W[‘B_вр‘]*cos(psi)=0: W[‘B_вр‘] := solve(%, W[‘B_вр‘]);

WB_вр := 1120 3 3

Так как вращательное ускорение получилось положительным, то направление на рисунке указано верно. Поскольку WB_вр = εAB AB , то мы можем найти угловое ускорение шатуна AB :

> epsilon[’AB’] := W[‘B_вр‘] / AB;

 

 

εAB :=

16 3

3

 

 

 

Запишем уравнение (*) в проекции на ось Ox :

> W[’B’] := W[‘A_вр‘]+W[‘B_вр‘]*sin(psi);

WB := 280 + 560 3 3

94

>w2 := vector([W[’B’]/W_размер, 0]):

w3 := vector([W[‘B_вр‘]*sin(psi)/W_размер,

W[‘B_вр‘]*cos(psi)/W_размер]):

>Wb := arrow(pointB, w2, .35, 1, .20, color=blue): Wb_вр := arrow(pointB, w3, .35, 1, .20, color=blue):

>display(draw(Pi/2),

Wa, Wb, Wb_вр,

textplot([w1[’x’]+dxy, 35+w1[’y’]+dxy, ’Wa’], color=blue),

textplot([pointB[1]+w2[1]+dxy, dxy, ’Wb’], color=blue),

textplot([pointB[1]+w3[1]+dxy, pointB[2]+w3[2]+dxy, ’Wb_вр’],

color=blue),

scaling=CONSTRAINED);

> display(draw(Pi/2), Wa,

arrow(pointA, w2, .35, 1, .20, color=blue), arrow([pointA[1]+w1[’x’], pointA[2]+w1[’y’]],

w3, .35, 1, .20, color=blue), textplot([w1[’x’], 35+w1[’y’]-dxy, ’Wa’],

color=blue), textplot([pointA[1]+w2[1]+dxy, pointA[2],

’Wb’],

color=blue),

textplot([25, 20, ’Wb_вр’], color=blue), scaling=CONSTRAINED);

95

Найдем ускорение точки C . Воспользуемся формулой

w¯C = w¯A + w¯Cвр(A) + w¯Cц (A)

и запишем ее в проекциях на координатные оси.

>W[’C_x’] := W[‘A_вр‘]+epsilon[’AB’]*AC*sin(psi): W[’C_y’] := -W[‘A_ц‘]+epsilon[’AB’]*AC*cos(psi): W[’C’] := sqrt(W[’C_x’]^2 + W[’C_y’]^2);

WC := (280 + 120 3)3 + 40000

>w4 := vector([W[’C_x’]/W_размер, W[’C_y’]/W_размер]): Wc := arrow(pointC, w4, .35, 1, .20, color=blue): display(draw(Pi/2),

Wa, Wb, Wc,

textplot([w1[’x’]+dxy, 35+w1[’y’]+dxy, ’Wa’], color=blue),

textplot([pointB[1]+w2[1]+dxy, dxy, ’Wb’], color=blue),

textplot([pointC[1]+w4[1]-dxy, pointC[2]+w4[2]+dxy, ’Wc’],

color=blue),

scaling=CONSTRAINED);

96

Ответ

>‘Скорости точек:‘;

V[‘В‘]=V[’A’].‘см/с‘, V[‘С‘]=V[’C’].‘см/с‘; ‘Угловая скорость звена АВ:‘; ’omega[‘AB‘]’=omega[’AB’];

‘Ускорения точек:‘;

’W[‘B‘]’=evalf(W[B]), ’W[‘C‘]’=evalf(W[C]); ‘Угловое ускорение звена АВ:‘; ’epsilon[AB]’=evalf(epsilon[’AB’]);

Скорости точек:

VB = 140 см/с, VC = 140 см/с Угловая скорость звена AB : ωAB = 0 Ускорения точек:

WB = 603.3161509 , WC = 527.2511872

Угловое ускорение звена AB :

ε= 9.237604309

6.2Сложное движение точки

Точка M движется относительно тела D . По заданным уравнениям относительного движения точки M OM = S(t) = 10(1 + sin 2πt) и движения тела ϕ = ϕ(t) = 4t + 1.6t2 определить для заданного момента

1

времени t = 8 абсолютную скорость и абсолютное ускорение точки M . Схема механизма показана на рисунке.

97

Решение

>restart:

>S := t -> 10*(1+sin(2*Pi*t)): phi := t -> 4*t+1.6*t^2:

>with(plots):

with(plottools):

>pos := proc(psi, s, t1) local

point_x, point_y; point_x := s*cos(psi); point_y := s*sin(psi);

PLOT(plottools[point]([point_x, point_y],

symbol=circle,

color=red, symbolsize=15), op(plot([S(t), phi(t), t=0 .. t1],

coords=polar, color=green)), line([0, 0], [25*cos(psi), 25*sin(psi)],

color=red, linestyle=4));

end proc:

> pos2 := proc(psi, s, t1) local

телоD, телоB,

pointB, point1, point2, point3, point4, h, OA;

OA := 30; h := 0.25;

point1 := [h*cos(psi+Pi/2),h*sin(psi+Pi/2)]; point2 := [h*cos(psi+Pi/2) + OA*cos(psi),

h*sin(psi+Pi/2) + OA*sin(psi)]; point3 := [point2[1] + 2*h*cos(psi+3*Pi/2),

point2[2] + 2*h*sin(psi+3*Pi/2)]; point4 := [h*cos(psi+3*Pi/2), h*sin(psi+3*Pi/2)];

98

телоD := polygon([point1, point2, point3, point4], linestyle=1, thickness=1, color=gray);

pointB := [s*cos(psi), s*sin(psi)]; h := 1.5;

point1 := [pointB[1] + h*cos(psi+5*Pi/6), pointB[2] + h*sin(psi+5*Pi/6)];

point2 := [pointB[1] + h*cos(psi+Pi/6), pointB[2] + h*sin(psi+Pi/6)]; point3 := [pointB[1] + h*cos(psi-Pi/6), pointB[2] + h*sin(psi-Pi/6)];

point4 := [pointB[1] + h*cos(psi-5*Pi/6), pointB[2] + h*sin(psi-5*Pi/6)];

телоB := polygon([point1, point2, point3, point4], linestyle=1, thickness=1);

display(pos(psi, s, t1), телоD, телоB,

disk(pointB, h/3, color=red));

end proc:

>N_frames := 200:

for i from 0 to N_frames do tau := Pi/N_frames*i;

p[i] := pos2(phi(tau), S(tau), Pi); end do:

>plots[display](seq(p[i], I = 0 .. 200),

insequence=true,

scaling=constrained);

На рисунке изображена траектория точки в неподвижных координатах при t от 0 до π .

99

>pos(phi(1/8), S(1/8), 3/16); ’phi’=evalf(convert(phi(1/8), degrees)); ’S’=S(1/8);

Положение точки

M относительно тела D в момент времени

1

 

8

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= 10 + 52 , а положение тела

 

 

 

определяется расстоянием

S

 

D

8

1

, равным

 

 

 

 

 

 

 

 

 

углом ϕ

 

30

градусов (см. рисунок).

 

 

 

8

 

 

 

Абсолютная скорость точки будет равна векторной сумме двух скоростей — относительной и переносной:

¯абс = ¯от + ¯пер

V V V .

При этом, чтобы найти относительную скорость, надо мысленно «заморозить» переносное движение (т.е. вращение). Тогда:

¯ = d ( )

Vот dtS t ,

а направлена эта скорость будет вдоль тела D .

> V := unapply(diff(S(t), t), t);

V := t −→ 20 cos 2πt · π

>V_размер := 6:

V_отн := V(1/8)/V_размер: dxy := 0.25:

>x := S(1/8)*cos(phi(1/8)): y := S(1/8)*sin(phi(1/8)):

100