БЕЛОРУССКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра «Теория механизмов и машин»
Моделирование движения на плоскости
КУРСОВАЯ РАБОТА
по курсу «Информатика»
Исполнитель Лабоцкий Д.В.
2006
Содержание
Введение
Постановка задачи
Математическая модель объекта или процесса
Алгоритм решения задачи
Схема алгоритма решения задачи
Таблица идентификаторов
Текст программы
Распечатка результатов
Графическое представление результатов
Анализ результатов
Литература
Введение
Современная технология изготовления разнообразных конструкций, механизмов, машин предполагает обязательное проведение точных расчетов, моделирования и испытания моделей. Для использования всевозможных процессов и явлений в эксплуатационных целях необходимо предоставить расчет их параметров и характеристик. В процессе обработки или сборки деталей приходится перемещать их на определенные расстояния. Для обеспечения точности и производительности, минимальных затрат энергии и ресурсов целесообразно применять автоматизированные системы.
Постановка задачи
Вал с моментом инерции I0=2,5 кг·м2, на который действует момент движущих сил
Md=M0+ln(φ+1)+
где М0=15,5 Нм, и момент сил сопротивления Мс=10 Нм, разгоняется при повороте на угол φр=0,2 рад/с, n=8. После этого действие движущего момента прекращается (момент Мс продолжает действовать), начинается торможение, в процессе которого вал повернется до остановки на угол φt за счет накопленной при разгоне кинетической энергии.
Требуется:
определить зависимости от угла поворота φ скорости ω(φ), ускорения ε(φ), времени t(φ);
установить время Тр поворота на угол φр и время Тt поворота на угол φt;
по полученным данным построить графики ω(φ), ε(φ), t(φ) для интервала угла поворота [0, φр+φt].
При вычислении зависимости ω, ε, t от угла поворота будет получена табличная зависимость, при этом учтем, что зависимость времени от угла поворота, является функцией монотонно возрастающей.
Мd
Mc
φp φ
φt
Схема, поясняющая словесную постановку задачи для определения параметров движения при вращательном движении.
Математическая модель объекта
Анализ вращательного движения тела показывает, что исходными данными для определения параметров движения (перемещения, скорости, ускорения, времени) являются моменты инерции (I0), движущие моменты (Мd), и моменты сопротивления (Мс), а также начальные значения параметров движения.
При использовании дискретной модели задачи весь путь разбивается на некоторое количество элементарных участков длиной Δφ=φi-φi-1.
V
φi-1 Δφ φ
φi
На каждом интервале связь кинематических, силовых и массовых параметров описывается теоремой об изменении кинетической энергии, в частности:
откуда можно выразить скорость движения:
При определении времени Δt прохождения участка Δφ будем считать скорость движения постоянной, равной средней скорости в пределах участка:
Тогда Δt=ti-ti-1=,
откуда ti=ti-1+ или ti=ti-1+
Аналогично, предполагая, что ускорение ε i на участке Δφ постоянно, имеем:
ε i= ε cp=
Применим построенную математическую модель к расчету параметров вращательного движения тела на участке разгона [0, φp] и на участке торможения [φp, φp+φt].
1 φ2 2 3 4 1 2n+1 φ
φ3 Δφp
φp φt
Разобьем каждый из участков движения на n равных элементарных участков длиной Δφp=φp/n и Δφt=φt/n соответственно. Полученные промежуточные положения тела пронумеруем от 1 до 2n+1. Переменная i определяет номер промежуточного положения тела, к участку разгона относятся положения с номерами от 1 до n+1.
Начальные параметры движения в положении i=1 считаются известными и равными φ1=0, ω1=0, t1=0. Начальное ускорение ε 1 определяется из закона Ньютона
ε 1=,
который в нашем случае при i=1 принимает вид:
ε 1=
где Md=M0+ln(φ+1)+
Для остальных положений тела при i=n+2 ,…, n+1 параметры движения определяются в соответствии с математической моделью по формулам:
φi=φi-1+Δφp
ti=ti-1+
ε i= ε cp=
Интеграл
int=
(где φ—переменная интегрирования) определим приближенно по методу трапеций. Построим математическую модель приближенного вычисления интеграла
int=
методом трапеций. Для функции M=Md-Mc величина определенного интеграла
int=
равна площади, ограниченной кривой M=Md-Mc, осью абсцисс и прямыми х=φi и х=φi-1. Эту площадь с некоторой погрешностью можно считать равной площади трапеции и вычислить по формуле:
Si=
Следовательно,
int=≈≈
Расчет параметров движения на участке торможения требует предварительного определения его угла поворота φt. При этом исходим из условия, что вся накопленная при разгоне кинетическая энергия расходуется на преодоление момента сопротивления Мc, совершающего работу
Ac=Мc·φt, т.е. =Мc·φt
откуда φt=
Начальные параметры для участка торможения соответствующие положению i=n+1, частично являются известными. Так из процесса разгона получены φn+1, ωn+1, tn+1. При переходе к торможению имеет место разрыв функции ускорения. Новое значение ускорения, соответствующее началу участка торможения, равно аn+1=-Fc n+1/m.
Параметры движения в промежуточных положениях участка торможения при i=2 , 2n+1 определяется следующим образом:
φi=φi-1+Δφt
ωi=
ti=ti-1+
ε i= ε cp=
Быстродействие на участке разгона будет равно Тр=tn+1, а на участке торможения Тt=t2n+1-tn+1
Алгоритм решения задачи
3.1. Исходные данные (ввод): I0, M0, Mc, φp, n
3.2. φ1=0, ω1=0, t1=0, Δφp=φp/n
3.3. Md1=M0+ln(φ1+1)+1
3.4. Для первого положения,
ε 1=
3.5. Для остальных положений при i=n+2 ,…, n+1
3.5.1. φi=φi-1+Δφp
3.5.2. Mdi=M0+ln(φi+1)+i
3.5.3. int вычисляется по формуле трапеций:
int=
3.5.4. ωi=
3.5.5.
3.5.6. ti=ti-1+
3.5.7. ε i=
3.6. Вывод параметров движения для разгона при i=1 ,…, n+1
3.6.1. Вывод i, φi, ωi, ε i, ti
3.7. Вывод быстродействия для участка разгона Тр=tn+1
Для участка торможения алгоритм имеет следующий вид:
3.8. φt=
3.9. ε n+1=-Mc /I0
3.10. Δφt=φt/n
3.11. Для положений при i=n+2,…,2n+1
3.11.1 φi=φi-1+Δφt
3.11.2. ωi=
3.11.3.
3.11.4. ti=ti-1+
3.11.5. ε i=
3.12. Вывод параметров движения для торможения при i=n+1,…,2n+1
3.12.1. Вывод i, φi, ωi, ε i, ti
3.13. Вывод быстродействия для участка торможения Тt=t2n+1-tn+1
Схема алгоритма решения задачи
5. Таблица идентификаторов
Математическое обозначение | I0 | M0 | Mc | n | Δφp | φ | t | φp | φt |
Идентификатор | I0 | M0 | Mc | n | dfp | fi | t | fip | fit |
Математическое обозначение | Δφt | i | ε | ωcp | int | Tp | Tt | Md1 | Md | C |
Идентификатор | dft | i | b | wcp | int | Tp | Tt | Md1 | Md | C |
6. Текст программы
program kurs; {Курсовая работа студента Лабоцкого Д.В.}
{Исследование вращательного движения вала Вариант 13}
uses crt;
type Big=array[1..30] of real;
var Md,fi,w,t,b,int:Big;
n,i :integer;
fe:text;
C,Mc,I0,Wcp,fip,dfp,fit,dft,Tp,Tt,M0:real;
begin clrscr;
assign(fe,'kurs-13v.rez');rewrite(fe);writeln(fe);
writeln(fe,' ':15,'Определение параметров вращательного движения',
' тела');
writeln(fe);
writeln(fe, ' ':40,' Лабоцкий Д.В.');
writeln(fe);
writeln(fe, ' ':30,'Вариант 13');
writeln('Введите исходные данные');
write('Момент инерции тела равен I0= ');readln(I0);
write('Коэффициент для движущего момента равен М0= ');readln(M0);
write('Момент сопротивления равен Мc= ');readln(Mc);
write('Угол разгона fip= ');readln(fip);
write('Количество интервалов разбиения n= ');readln(n);
writeln('Исходные данные занесены в файл результатов');
writeln(fe);
writeln(fe,' ':25,'Исходные данные');
writeln(fe);
writeln(fe,' ':10,'Момент инерции тела равен I0= ',I0:5:2,' кг/м2');
writeln(fe,' ':10,'Коэффициент движущего момента М0= ',M0:5:2,' нм');
writeln(fe,' ':10,'Момент сопротивления Мc= ',Mc:5:2,' нм');
writeln(fe,' ':10,'Угол разгона fip= ',fip:5:2,' рад');
writeln(fe,' ':10,'Количество интервалов разбиения n= ',n:2);
dfp:=fip/n;
fi[1]:=0;W[1]:=0;t[1]:=0;
Md[1]:=M0+ln(fi[1]+1)+sqrt(fi[1]);
b[1]:=(Md[1]-Mc)/I0;
for i:=2 to (n+1) do begin
fi[i]:=fi[i-1]+dfp;
Md[i]:=M0+ln(fi[i]+1)+sqrt(fi[i]);
int[i]:=(((Md[i]-Mc)+(Md[i-1]-Mc))*dfp)/2;
W[i]:=sqrt((2/I0)*(I0*sqr(W[i-1])/2+int[i]));
Wcp:=(W[i]+W[i-1])/2;
t[i]:=t[i-1]+(fi[i]-fi[i-1])/Wcp;
b[i]:=(W[i]-W[i-1])/(t[i]-t[i-1]) end;
Tp:=t[n+1];
write(fe,' ':10);
for i:=1 to 57 do
write(fe,'_');writeln(fe);
writeln(fe,' ':10,'I',' ':10,'I',' ':10,'I',' ':16,'I',' ':16,'I');
writeln(fe,' ':8,' I fi[i] I W[i] I b[i] I ',
' t[i] I ');
writeln(fe,' ':10,'I',' ':10,'I',' ':10,'I',' ':16,'I',' ':16,'I');
write(fe,' ':10);
for i:=1 to 57 do write(fe,'-');writeln(fe);
for i:=1 to n+1 do
writeln(fe,' ':7,i:2,' I',' ',fi[i]:7:3,' I',' ',W[i]:7:3,' I',' ',
b[i]:7:3,' I',' ',t[i]:7:3,' I');
writeln('Произведен расчет параметров разгона');
fit:=(I0*sqr(W[n+1]))/(2*Mc);
b[n+1]:=-Mc/I0;
dft:=fit/n;
for i:=n+2 to (2*n+1) do begin
fi[i]:=fi[i-1]+dft;
W[i]:=sqrt((2/I0)*((I0*sqr(W[i-1])/2)-(Mc*(fi[i]-fi[i-1]))));
Wcp:=(W[i]+W[i-1])/2;
t[i]:=t[i-1]+(fi[i]-fi[i-1])/Wcp;
b[i]:=(W[i]-W[i-1])/(t[i]-t[i-1]) end;
for i:=n+1 to (2*n+1) do
writeln(fe,' ':7,i:2,' I',' ',fi[i]:7:3,' I',' ',W[i]:7:3,' I',' ',
b[i]:7:3,' I',' ',t[i]:7:3,' I');
writeln('Произведен расчет параметров торможения');
write(fe,' ');
for i:=1 to 60 do
write(fe,'_');
writeln(fe);
writeln(fe);
Tt:=t[2*n+1]-t[n+1];
writeln(fe,' Быстродействие для угла разгона равно Tp= ',
Tp:7:3,' сек');
writeln(fe,' Быстродействие для угла торможения равно Tt= ',
Tt:7:3,' сек');
close(fe);
writeln('Результаты вычислений занесены в файл kurs-13v.rez');
repeat until keypressed
end.
7. Распечатка результатов.
Определение параметров вращательного движения тела
Лабоцкий Д.В.
Вариант 13
Исходные данные
Момент инерции тела равен I0= 2.50 кг/м2
Коэффициент движущего момента М0= 15.50 нм
Момент сопротивления Мc= 10.00 нм
Угол разгона fip= 0.20 рад
Количество интервалов разбиения n= 10
I I I I I
I fi[i] I W[i] I b[i] I t[i] I
I I I I I
---------------------------------------------------------
1 I 0.000 I 0.000 I 2.200 I 0.000 I
2 I 0.020 I 0.299 I 2.232 I 0.134 I
3 I 0.040 I 0.425 I 2.280 I 0.189 I
4 I 0.060 I 0.522 I 2.308 I 0.231 I
5 I 0.080 I 0.605 I 2.333 I 0.267 I
6 I 0.100 I 0.678 I 2.354 I 0.298 I
7 I 0.120 I 0.745 I 2.374 I 0.326 I
8 I 0.140 I 0.807 I 2.393 I 0.352 I
9 I 0.160 I 0.865 I 2.411 I 0.376 I
10 I 0.180 I 0.919 I 2.428 I 0.398 I
11 I 0.200 I 0.971 I 2.444 I 0.419 I
11 I 0.200 I 0.971 I -4.000 I 0.419 I
12 I 0.212 I 0.921 I -4.000 I 0.432 I
13 I 0.224 I 0.868 I -4.000 I 0.445 I
14 I 0.235 I 0.812 I -4.000 I 0.459 I
15 I 0.247 I 0.752 I -4.000 I 0.474 I
16 I 0.259 I 0.686 I -4.000 I 0.490 I
17 I 0.271 I 0.614 I -4.000 I 0.509 I
18 I 0.282 I 0.532 I -4.000 I 0.529 I
19 I 0.294 I 0.434 I -4.000 I 0.554 I
20 I 0.306 I 0.307 I -4.000 I 0.585 I
21 I 0.318 I 0.000 I -4.000 I 0.662 I
Быстродействие для угла разгона равно Tp= 0.419 сек
Быстродействие для угла торможения равно Tt= 0.243 сек
8. Графическое представление результатов
9. Анализ результатов
Анализ результатов показывает:
а) В начальный момент времени скорость равна нулю, тело начинает двигаться с начальным ускорением β=2,2 м/с2
б) При перемещении тела его скорость увеличивается, так как значение силы, действующей на тело, увеличивается при перемещении, а ускорение уменьшается.
в) После того, как движущая сила перестала действовать, тело начало двигаться по инерции с постоянным ускорением, а скорость за счет силы трения уменьшается до остановки тела.
г) В момент, когда действие движущей силы прекратилось, график ускорения имеет точку разрыва.
Литература
Офицеров Д.В., Старых В.А. Программирование в интегрированной среде Турбо-Паскаль: Справ. пособие.—Мн.: Беларусь, 1992.
Петров А.В. и др. Вычислительная техника и программирование: Курсовая работа/ А.В. Петров, М.А. Титов, П.Н. Шкатов; Под ред. А.В. Петрова.—М.: Высш. школа, 1992.
Поляков Д.Б., Круглов И.Ю. Программирование в среде Турбо-Паскаль: Версия 5.5.—М.: Изд-во МИА, А/О Росвузнаука, 1992.
Фигурнов В.Э. IBM PC для пользователя: Краткий курс.—Сокращенная версия 7-го издания.—М.:ИНФРА, 1999.
Н.Я. Луцко.,П.П. Анципорович., Информатика Контрольные работы и курсовое проектирование: Учебно-методическое пособие для студентов-заочников машиностроительных специальностей