Результатом предыдущего забега стали скорректированные даты производства работ, количества агрегатов и так далее. Сегодня на основе этих данных сделаем графическую часть работы.
Для начала (если ещё этого не сделали) перенесём все скорректированные данные в план механизированных работ, выделив под них соответствующую графу с индексом К.
Далее в соответствии с формулой в методичке определим списочное количество тракторов каждой марки (спойлер: разделив на 0,9 пиковые значения из скорректированного графика).
Определение координат оси времени
Теперь, поскольку будем иметь дело с построением графиков, будет правильным перевести все даты в числовой формат. Для начала сделаем новый столбец под дату начала работ. Отсюда и начинается магия. Всё дело в том, что некоторые даты стоят в "нормативном" столбце, допустим, E, некоторые — в столбце "Дата К", имеющем, соответственно, номер F. Напишем формулу: =ЕСЛИ(F4="";E4;F4)-44927 . Число справа — 1 января расчётного года, с этим мы уже имели дело чуть раньше. Растягиваем формулу на весь столбец (в нашем случае AA), дата начала работ готова.
Аналогично поступаем и с датой окончания. Поскольку количество рабочих дней может быть представлено уже в трёх вариантах, формула тоже немного усложнится:
Опционально: добавим третий столбец, в котором посчитаем среднее значение между днём начала и завершения операции. В некоторых случаях этот шаг может немного помочь в дальнейшем.
Определение значений расхода топлива
Здесь нам пригодится то, что модели трактора и с/х машины разнесены по разным столбцам. Итак, имея общий объём работы и удельный расход топлива, нетрудно простым умножением определить расход топлива на заданную операцию.
Поскольку графики мы строим для каждой модели трактора, удобнее уже на этом этапе разнести всё по отдельным столбцам на каждую модель, воспользовавшись старым добрым ЕСЛИ:
=ЕСЛИ($J4="МТЗ-82";$S4*$D4;"")
Здесь J — столбец с моделью трактора, S — удельный расход, D — объём работы. Не забываем при этом и о привязке через $, чтобы для остальных моделей не набирать формулу заново, а просто растянуть из исходной и поменять в новых формулах только модель трактора.
Итак, делаем всё это, растягиваем до конца и получаем:
Определение интегрального расхода топлива
Теперь нам нужно перейти к накопительному, интегральному исчислению, прибавляя к расходу каждого трактора на каждой операции все предыдущие значения. Здесь же удобнее всего учесть и дополнительный расход 4% топлива на холостые перемещения. Создаём три дополнительных столбца.
Формула в первой строке — простое умножение соответствующего расхода на 1,04. Во второй строке напишем что-то такое:
Принцип здесь аналогичен предыдущим вычислениям. Если в AD9 пустота, просто берём предыдущее "накопленное" значение. Если же нет (т.е. в AD9 число), берём накопленный расход и прибавляем к нему текущий, умноженный на 1,04.
В этой формуле нет привязки к столбцам и её можно спокойно растянуть на всё необходимое пространство.
Приведение кривой расхода топлива к единице списочного парка
Данный шаг удобнее всего сделать, надписав над каждым заголовком очередных трёх новых столбцов списочное количество тракторов, которое мы определили в самом начале. Формула элементарная: берём значение из предыдущего пункта для каждой модели, делим на списочное количество.
Определение потребности в сервисных мероприятиях
Чтобы поддерживать наш механизированный зверинец в рабочем состоянии, нужно определить, сколько раз какому трактору будет необходимо пройти техобслуживание того или иного порядка.
(формулы с картинки мы уже задействовали раньше)
Так вот, существует таблица периодичности ТО в зависимости от суммарного расхода топлива; приведена, естественно, в методичке, но можно и продублировать:
Там, где наша интегральная кривая расхода для конкретного трактора будет пересекать заданные в таблице ординаты, нам и нужно будет сделать соответствующий вид ТО. Примеры можно будет увидеть ниже, на построенных графиках.
Пара мелочей для упрощения жизни
Чтобы не ломать глаза и мозг, сделаем следующее. В ещё одном новом столбце (когда-нибудь эта таблица закончится!) пишем: =МЕСЯЦ(44927+AC4).
Что такое 44927, понятно, а вот с AC4 есть варианты. Интегральную кривую топлива, чтобы упростить себе задачу, мы будем строить по месяцам. Здесь есть два разных подхода: по начальной дате и по средней.
В первом случае считаем, что работа полностью происходит в том месяце, в котором началась. Во втором же варианте выбираем тот месяц, на который приходится средняя дата работы.
Думаю, тут уже понятно, в каком столбце должно стоять наше AC4 в зависимости от выбранного нами варианта. Я, например, выберу исчисление по среднему.
Так вот, введённая формула покажет порядковый номер месяца, на который приходится наша отсчётная точка для конкретной работы. Теперь нужно как-то отследить "переключение" месяцев. Снова делаем новый столбик и в первой строке пишем: =ДАТА(2023;AM4;1)-44927 , то есть порядковый номер первого дня определённого в AM4 месяца. В последующих строках отлавливаем переход между месяцами:
Наконец, у нас есть всё для того, чтобы приступить к чертежам:
Графическая часть
Здесь придёт на помощь любая чертёжная программа, с которой вы умеете работать. Я же покажу всё на примере своего любимого языка вёрстки TeX и Компаса:
Исходный файл для Теха лежит здесь, pdf для детального рассмотрения — тут. В Компасе же проще нарисовать всё с нуля. В работе поможет следующее:
- Наработка в литрах топлива между сервисными мероприятиями приведена в методичке;
- При наложении работ следует располагать их так, чтобы не образовывалось "висящих" прямоугольников графика. См. работу 13 на листе из Компаса, работы 12, 15, 28 на примере из Теха (удобнее рассмотреть на pdf-ке по ссылке чуть выше).
- При работе в Компасе удобнее всего поступить следующим образом. Создаём новый Фрагмент. Сначала лучше построить график загрузки в масштабе 1 день = 1 мм и 1 трактор = 10 мм, начертить оси и подписи к ним. Затем чертим кривую расхода топлива, значения на её оси, после чего её разумнее поместить выше графика загрузки. Сохраняем Фрагмент.
Создаём новый Чертёж, задаём ему через Менеджер документа минималистичную рамку, например, как на картинке. В этот чертёж через Вставка -> Фрагмент вклеиваем наше творчество (пока не смотрим на то, что ничего не поместилось)
Далее выделяем всё (ну, кроме рамки. Она и не выделится) и масштабированием по оси X (по игреку лучше оставить 1.0) подгоняем под размер рамки. Двигаем так, чтобы поместилось.
Теперь осталось скорректировать вертикальный масштаб. Скорее всего, для количества тракторов ничего менять не придётся (если оно не зашкаливает за значения больше, скажем, 15), а вот график расхода топлива и его засечки на оси нужно выделить и через масштабирование по оси Y подогнать так, чтобы всё хорошо и красиво влезло в рамку.
Вот, пожалуй, и всё, что нужно для построения графической части. Если возникнут какие-то вопросы, постараюсь ответить на них в комментариях.
---
Вячеслав Егоров, старший преподаватель кафедры ЭМТП