Шестаков В.С. Оптимизация параметров горных машин. Учебное пособие (811777), страница 19
Текст из файла (страница 19)
Длярасчета пути перемещения х можно применить выражение, реализующее определение скорости (скорость - это первая производнаяпути по времени)v = dх/dt.(5.11)Время перемещения определяется в процессе расчета скорости и пути при реализации выраженияТ = dt.(5.12)Преобразование в численную формуВыражения (5.10)-(5.12) не могут быть использованы в программе непосредственно в дифференциальном виде. Они должныбыть переведены в численную форму. Используя метод Эйлера, заменим производные отношениемdv/dt (vi+1 - vi)/t;dx/dt (xi+1 - xi)/t,где vi+1, vi – последующее и предыдущее значения скорости, определенные через шаг интегрирования t;xi+1, xi – последующее и предыдущее значения пути перемещения ударника, определенные через шаг интегрирования t.При такой замене и последующем исключении индексов выражения(5.10) - (5.12) примут видv = v + ( Fдв – Fc) t / m;( 5.13)x = x+ v t(5.14)Для расчета времени интегрирование заменяется суммированиемТ = Т + t.(5.15)110Разработка вычислительного алгоритмаВид алгоритма принимаем таким, какой изображен на рис.5.3.
Алгоритм составляется в следующей последовательности.1. В качестве условия повторения цикла принимаем x<L1, заносим его в элемент сравнения 4, элемент прорисовываем в нижнейчасти листа (см. рис. 5.8).2. Введенное неравенство анализируем по определенностивходящих в него переменных. В программировании переменнаясчитается определенной, если ей присвоено какое-либо значение.Переменные, входящие в правые части вычисляемого выраженияили в обе части логического, должны быть обязательно определены.В рассматриваемом логическом выражении L1 является заданнымзначением расстояния, следовательно, эту переменную указываем вблоке ввода данных 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.5.
Для определения переменных правой части этого выражения добавляем выше скорости выражения для расчета:- движущего усилия Fдв=Po∙S, переменные Ро и S добавляем вблок ввода;- усилия сопротивления Fс=f · m +k · v2, переменные f, m, kдобавляем в блок ввода 1;- начального значения скорости v =0 в блоке начальных условий 2.6. При формальном подходе для расчета параметра больше нетребуется ни одного выражения и можно завершать цикл расчетов.Выражение для расчета времени Т = Т+ t потребуется, когда будетрешаться вопрос вывода результатов расчетов – значения Т.
Его111можно ввести как выше выражения расчета скорости, так и нижевыражения расчета пути, но это выражение должно обязательно попасть в цикл. После ввода выражения для расчета времени в блокначальных значений добавляем выражение Т=0. Блок-схема алгоритма определения времени перемещения на заданное расстояниепоказана на рис. 5.9,а. В алгоритме не показан блок ввода данных, авводимые для расчетов данные указаны в блоке начала алгоритма.Движение после перекрытия выхлопного отверстияМаксимальный ход ударника, определяемый в соответствии сусловием задачи, будет в момент, когда ударник под действием подаваемого в правую камеру сжатого воздуха остановится, т. е. когдаего скорость уменьшится до нуля. Расчеты по решению этой подзадачи необходимо выполнять до тех пор, пока скорость ударника будет больше нуля.
Следовательно, при решении этой задачи должныопределяться значения скорости ударника, пути перемещения, времени движения.Математическое описание этой операции практически полностью соответствует задаче движения до перекрытия выхлопного отверстия, за исключением того, что движущее усилие здесь направлено встречно движению.
Для расчета скорости, времени и пути перемещения ударника в процессе движения используются те жеуравнения:Fдв=Pо S;Fс=f · m +k ∙ v2;- Fдв - Fс = m dv/dt;v = dx/dt;Т = dt.Преобразование в численную форму. Используя метод Эйлера, получим:v = v + (- Fдв – Fc) t / m;x = x+ v t;Т = Т + t.Разработка вычислительного алгоритмаАлгоритм составляется в следующей последовательности.1121.
В качестве условия повторения цикла принимаем v>0, заносим его в элемент сравнения 4, элемент располагаем в нижнейчасти листа (рис. 5.9,б).2. Введенное неравенство анализируется по определенностивходящих в него переменных и выше блока сравнения 4, для определения переменной v, присутствующей в логическом выражении,в алгоритм вводится выражение для ее вычисления v = v + (- Fдв –Fc ) t / m. В правой части этого выражения должны быть определены все переменные.
v,t, m указываются в блоке передачи вводаданных 1. Для определения Fдв и Fc добавляем выше скорости выражения для расчета:- движущего усилия Fдв=Po∙S, переменные Ро и S добавляем вблок ввода;- усилия сопротивления Fс=f · m +k · v2, переменные f, m, kдобавляем в блок ввода 1.Для первого цикла расчетов v используем последнее вычисленное значение скорости в первой задаче.3. При формальном подходе для расчета параметра больше нетребуется ни одного выражения, и можно завершать цикл расчетов.Выражения для расчета пути x = x+ vi t и времени Т = Т+ tпотребуются, когда будет решаться вопрос вывода результатов расчетов.
Их можно ввести как выше выражения расчета скорости,так и ниже, но эти выражения должны обязательно попасть в цикл.В блок начальных значений добавлять выражения Т=0 и x=0 здесьне требуется, так как решение продолжается после первой подзадачи, в которой эти переменные вычислены.Разработка программы на ЭВМДля упрощения отладки программу разбиваем на отдельныеподпрограммы по условию: каждая функция выполняется отдельной подпрограммой.
В этой задаче можно выделить подпрограммыввода, вывода, расчета до и после перекрытия выхлопного отверстия. Передачу данных между подпрограммами выполним черезаргументы. Наименования переменных применим такие же, что используются в математической модели. Для пояснений в программувведем комментарии.При разработке программы, кроме реализации алгоритма рас113чета, приходится решать вопрос ввода и вывода данных.
При решении в среде Excel решение этого вопроса значительно упрощается,но все же в программу приходится вводить дополнительные элементы.аб1L1, m, Po, S, f, k, tt=0, v=0, x=0Fc= f · m +k · v2L1, m, Po, S, f, k,t, T, v ,x23Fc= f · m +k · v2Fдв=PoSFдв=PoSv=v+(Fдв–Fc)t /mv=v+(-Fдв–Fc)t /mДа4x = x+ v tx = x+ v tТ = Т+ tТ = Т+ tx<L11НетДа4v>03НетТ, xТ, v, xРис. 5.9.
Блок-схема алгоритма задачи движениядо перекрытия (а), после перекрытия (б)Первым этапом при составлении программы разрабатываетсяформа ввода и вывода. К примеру, для этой задачи форма можетиметь вид, показанный ниже. Здесь было решено выводить не только конечные, но и промежуточные результаты в таблице. Средствами Excel затем по выведенным данным построен график.
При выводе в таблицу пришлось решать следующие вопросы:- формирования вывода в таблицу (первый ряд данных должен выводиться в строку, следующую за заголовком, а каждый новый ряд данных должен выводиться в новую строку);114- уменьшения числа выводимых данных по сравнению с расчетными (шаг расчета для получения высокой точности принимается небольшим, и если выводить все результаты, то получим оченьбольшие таблицы промежуточных данных);- очистки таблицы перед выводом результатов (это необходимо делать, так как при решении в зависимости от данных можетменяться количество выводимых строк).Для очистки таблицы в программу включена процедура«Очистка». Она получена путем записи макроса следующим образом:- на панели инструментов выполнен щелчок мышью по кнопке «Запись макроса»;- в диалоговой панели введено наименование «Очистка»;- выделен диапазон ячеек "A12:F45" (рамку навели на ячейкуА12, нажали клавишу “Shift” и, не отпуская ее, клавишами управления переместили на ячейку F45);- нажата клавиша «Delete»;- снято выделение диапазона перемещением рамки клавишами управления или щелчком мыши;- выполнен щелчок по кнопке «Остановить запись».Для вывода на лист Excel в таблицу в программе включеныдополнительные переменные:iv – для вычисления текущей строки вывода и использованияее в методе Cells;dTv – для вычисления интервала времени, через которыйосуществляется вывод данных в таблицу;Tv – для вычисления времени с начала расчетов, при достижении которого осуществляется вывод строки таблицы;kviv – для организации двух циклов расчета.Вывод в таблицу выполнен следующим образом.iv=12 - это первая строка на листе Excel под заголовком таблицы.Tv=0 – обнуление вспомогательного времени для вывода строк.For Kviv = 1 To 2 - организован цикл двойного расчета задачи движения ударника до перекрытия выхлопного отверстия, при первомцикле (kviv=1) расчет выполняется без вывода в таблицу строк данных, так как оператор сравнения If (T >=Tv) And (Kviv = 2) будетвыдавать False.