Шестаков В.С. Оптимизация параметров горных машин. Учебное пособие (811777), страница 17
Текст из файла (страница 17)
Последовательность решения задачРешение задач расчета длительности операций можно проводить в следующей последовательности: формулировка задачи; анализ задачи и составление расчетной схемы; математическое описание в дифференциальной форме; преобразование выражений в численную форму; разработка вычислительного алгоритма;97 разработка программы для ЭВМ; набор программы на ЭВМ и ее отладка; выполнение расчетов и анализ полученных результатов.Содержание указанных этапов определяется конкретной задачей. Рассмотрим характерные примеры задач расчета длительностирабочих движений.5.3.
Расчет времени перемещения элемента на заданноерасстояние при действии неизменных усилийПодобная задача решается при определении времени движенияударника под действием сжатого воздуха, времени падения бурового снаряда в скважине и т. п.Формулировка задачи. Определить время перемещения на расстояние Lo поршня-ударника массой m под действием постоянногодвижущего усилия Fдв и усилия сопротивления Fс. Ударник перемещается горизонтально.Анализ задачи. В процессе решения задачи необходимо определять: текущее значение пути перемещения, чтобы его использовать в алгоритме для сравнения с заданным расстоянием; текущее значение скорости, для использования при расчете пути перемещения; время перемещения.Расчетная схема механической системы показана на рис.
5.1.Практически все механизмы горныхFcFдвмашин имеют одну степень свободы –mvобеспечивают или вращение рабочегооргана вокруг его оси, или перемеРис. 5.1. Расчетная схемащение рабочего органа вдоль определенной линии. Поэтому для расчета текущего значения скоростиперемещения может быть использовано соответствующее уравнение движения.Математическое описаниеНаиболее просто удается решение этих задач при использовании дифференциального уравнения движения, составленного на основе теории движения центра масс. Для механизмов поступательно-98го движения с неизменной массой уравнение имеет видFдвi - Fсj = m dv/dt,(5.1)где Fдвi, Fcj – сумма движущих усилий и сумма усилий сопротивления, действующих на звено; m – масса; dv/dt – ускорение движения звена; v- скорость.В реальных механизмах, например, в пневмоударнике, движущими усилиями будут усилие от давления сжатого воздуха(Fдв=P S) и при бурении вниз – сила тяжести ударника, а усилиями сопротивления – сила трения, сила сопротивления от действиявоздуха.Из выражения (5.1) может быть определена скорость.
Для расчета пути перемещения X можно применить выражение, реализующее определение скорости (скорость - это первая производная путипо времени):v = dx/dt.(5.2)Время перемещения определяется в процессе расчета скоростии пути при реализации выраженияТ = dt.(5.3)Преобразование в численную формуВыражения (5.1)-(5.3) не могут быть использованы в программе расчета на ЭВМ непосредственно в дифференциальном виде. Они должны быть переведены в численную форму.
Для преобразования применяют численные методы, наиболее простым из которых является метод Эйлера.Суть метода Эйлера заключается в заменеdv/dt (vi+1 - vi)/t;dx/dt (xi+1 - xi)/t,где vi+1, vi – последующее и предыдущее значения скорости, определенные через шаг интегрирования t;xi+1, xi – последующее и предыдущее значения пути перемещения ударника, определенные через шаг интегрирования t.При такой замене выражение (5.1) примет видFдв - Fс = m (vi+1 - vi)/t.В этом выражении неизвестными являются vi+1 , vi. Для реше99ния подобных выражений необходимо применять начальные условия. В начале движения скорость равна нулю: vi=0 , и в выраженииостается только одна неизвестная.
Таким образом, последующеезначение скорости можно вычислить через предыдущееvi+1 = vi + ( Fдв – Fc) t / m.(5.4)Для расчета перемещения, после соответствующей подстановки, получимxi+1 = xi+ vi+1 t.(5.5)Для расчета времени интегрирование заменяется суммированием:Т i+1 = Тi+ t.(5.6)При решении на ЭВМ при сохранении индексов в полученных выражениях потребуется применять массивы и отводить подних большие объемы памяти, при этом возможен выход за отводимые границы.
Можно организовать решение и без массивов, так какв данной задаче необходимо определять только конечное время и нетребуется хранить все промежуточные результаты. При решениибез массивов под переменные Т, v, x можно отвести по одной ячейке памяти для хранения значений. В этом случае индексы в выражениях можно исключить, при этом не произойдет искажениясмысла – определения последующего значения переменной по предыдущему значению. Проверим, действительно ли не исказитсясмысл вычисления при исключении индексов при расчете Т.Перед вычислением в цикле Т ему присвоим значение 0. Вцикле вычисляется: Т =Т+t.
В программе, в операторе присваивания, знак "=" в выражении Т=Т+t (и подобных ему) имеет смыслне равенства, а "отправить результат вычислений по правой частивыражения в ячейку, имеющую наименование Т. Поэтому выражение в программе будет выполнено так: к числу, хранимому в ячейкепод именем Т (а в нее первоначально внесен нуль), будет добавленочисло, хранимое в ячейке под именем t, результат суммированиябудет отправлен в ту же ячейку Т. При этом число, которое ранеехранилось в ячейке Т, будет заменено новым вычисленным значением.
Таким образом, то что мы и хотели получить - по предыдущему значению Т путем добавления t вычислено последующеезначение. Индексы для такого вычисления оказались ненужными.100vГрафически метод Эйлера хорошо иллюстрируется на примереv=f(t)определения пути перемещения чеОшибкарез график скорости (рис.
5.2). Изкурса физики и теоретической механики известно, что путь - это интеtграл от скорости, а при графическомtпредставлении – это площадь подРис. 5.2. Иллюстрациялинией интегрируемой функции. Пометода Эйлеравыражению (5.5) выполняется суммирование прямоугольников, а заштрихованные треугольники показывают ошибку использованияметода Эйлера для интегрирования.При использовании в (5.5) предыдущего значения скорости viрасчетное значение пути будет меньше действительного, а при использовании последующего значения скорости vi+1 – больше действительного.
Треугольники, представляющие собой ошибку, при vi+1будут располагаться выше линии скорости. Рис. 5.2 показывает, чтоошибка зависит от шага интегрирования t, при уменьшении шагаошибка уменьшается. Для повышения точности расчетов желательно уменьшить шаг интегрирования, но при этом одновременно увеличится число вычислений, а значит, и время вычислений, поэтомунеобходимо использовать «разумную точность». Как это реализовать практически? Можно рекомендовать следующий подход. Еслиизвестно примерное время разгона (торможения), то шаг интегрирования можно принять 1/100 от этого времени, а если время разгона неизвестно, то шаг задается произвольно, например 0.1 с, выполняется расчет времени цикла, затем шаг уменьшается, например, в 10 раз, повторно выполняется расчет времени и сравниваетсяс предыдущим расчетом.
Если относительная разница между нимисущественная (больше одного процента), то шаг уменьшают еще, аесли нет, то оставляют последнее значение шага.После исключения индексов выражения примут вид:v = v +( Fдв – Fc) t / m;(5.4')x = x+ v t;(5.5')Т = Т+ t.(5.6')101Разработка вычислительного алгоритмаИз рис. 5.2 следует, что определить путь перемещения при известном графике скорости за одно вычисление невозможно, потребуется обязательно выполнить вычисления v, x, T несколько раз.Для реализации повторяющихся вычислений в программе применяют циклы.
Таким образом, вычислительный алгоритм этой и других подобных задач обязательно должен включать в себя циклическую структуру. Блок-схема такого алгоритма может быть изображена в одном из двух вариантов, показанных на рис. 5.3 и 5.4.В блок-схемах параметром П обозначена основная вычисляеНачалоНачало1Ввод данныхНачальные условия3Вычислениепараметра ПДа4П<ПоВвод данных2ПроверкадостиженияДапараметраП заданногоПо значенияНетНачальные условияП<По24КонецНетВычислениепараметра ПКонец13Рис.
5.3. Блок-схема с проверкой Рис. 5.4. Блок-схема с проверкойпосле вычисления параметрадо вычисления параметрамая величина, по которой может быть организовано управлениевычислительным процессом. Для каждой задачи этот параметр будет свой. Его определяют из условия задачи. Так, в рассматриваемом примере требуется определить время перемещения на заданноерасстояние. Текущее значение пути перемещения ударника можетбыть использовано в качестве параметра. Решение должно проводиться до тех пор, пока вычисляемое расстояние не достигнет заданного. Выбор одной из приведенных двух схем при разработкеалгоритма зависит от привычки пользователя. Схема по рис.
5.3 позволяет в большей степени формализовать процесс разработки алгоритма, поэтому можно применять в дальнейшем эту схему.102Формализацию разработки алгоритма рассмотрим на примеререшаемой задачи. Алгоритм разрабатывается в следующей последовательности.1. В качестве условия выхода из цикла принимаем x<Lo, заносим его в элемент сравнения 4 (см.
рис. 5.3), элемент прорисовываем в нижней части листа.2. Введенное неравенство анализируется по определенностивходящих в него переменных. В программировании переменнаясчитается определенной, если ей присвоено какое-либо значение.Переменные, входящие в правые части вычисляемого выраженияили в обе части логического, должны быть обязательно определены.В рассматриваемом логическом выражении Lo является заданнымзначением расстояния, следовательно, эту переменную указываем вблоке ввода данных 1.3.
Выше блока сравнения 4 для определения переменной x,присутствующей в логическом выражении, в алгоритм вводитсявыражение для вычисления пути: x = x+ vt. В правой части этоговыражения должны быть определены переменные x, v, t. Шаг интегрирования t вводится в блоке ввода данных 1. Для определенияx используем начальное состояние ударника – в начале движенияпуть равен нулю, поэтому выражение x = 0 вводим в блок начальных условий 2.4. Выше выражения расчета пути вводится выражение для расчетаскоростиv,необходимойдлявычисленияx:v = v +( Fдв – Fc) t / m.Для определения переменных правой части этого выражениядобавляем в блок ввода данных 1: Fдв , Fc,, m, и v =0 - в блокначальных условий 2 .5.