УДК
631.3:681.3.06
ИСПОЛЬЗОВАНИЕ ФОРМАЛИЗОВАННОГО ЯЗЫКА ДЛЯ СТРУКТУРНОГО АНАЛИЗА ТЕХНОЛОГИЧЕСКИХ ПРОЦЕССОВ
Л. А. Рейнгольд, инж., ВНИИКОМЖ
Качество решения задач,
стоящих перед сельскохозяйственным производством, в значительной степени определяется продуманностью и
обоснованностью технологических решений.
В процессе создания новой
технологии инженер проводит сопоставление и
оценку различных вариантов на нескольких уровнях: общетехнологическом, рабочих
органов, уровне элементов. Эта работа включает
функционально-технологический,
конструктивный,
энергетический, экономический и другие аспекты, качество
разработки которых в значительной степени определяется опытом и интуицией
специалиста.
Методы и языковые средства,
позволяющие перейти от качественного описания
изучаемого процесса к его формализованной математической модели, отсутствуют.
Это обусловлено тем, что переход от словесного, понятийного отображения
технологии к ее структурному описанию, допускающему построение необходимых
формальных моделей, достаточно сложен и не всегда приводит к адекватному
математическому описанию возможных вариантов, допускающему их
количественное сопоставление.
При решении задач, связанных
с анализом технологических схем комплексной переработки навоза, мы столкнулись с рассмотренными выше
проблемами. Для их преодоления был разработан формализованный язык структурного
отображения технологии (ЯСОТ), который позволяет
решать достаточно широкий круг задач. Ниже приводятся описание и некоторые примеры его применения. ЯСОТ —
простой наглядный язык. При разработке обобщены имеющиеся способы изображения
технологических схем, использованы некоторые принципы проектирования
алгоритмических языков для ЭВМ. Предлагаемый язык может применяться для
формализации описания и анализа практически любой сельскохозяйственной
технологии.
В языке использована
символика нотации Бэкуса, которая применяется обычно
при мета-описании языков программирования для ЭВМ [1]. Эта символика включает в себя следующие обозначения:
::= — знак «по определению
есть» (два двоеточия и знак равенства);
< > — угловые скобки для выделения понятия;
| —знак «или (вертикальная черта).
Пример записи утверждения:
<цифра> ::= <0>|<1>|<2>|<3>|<4>|<5>|<6>|<7>|<8>|<9>. Читается:
цифра по определению есть ноль или единица, или двойка, или ..., ..., или
девять.
Дополнительно вводятся
следующие обозначения: à — стрелка, указывающая
существенные в рассматриваемом контексте связи между объектами (перемещение
перерабатываемых предметов, веществ; направления движения потоков тепловой
и электрической энергии и др.);
¨ — графическое изображение
объекта, осуществляющего преобразование потоков; внутри квадрата при
необходимости записывается имя (идентификатор), а также поясняющий текст,
аббревиатура или мнемоническое изображение; объектами могут быть технологические
устройства, машины, их элементы, другие
предметы, существенные в рассмотрении; сторона квадрата принимается
равной 2, 4, 6 см;
— — — пунктирная линия,
служащая для объединения группы объектов вместе
с их связями под одним именем (служит для обобщения
элементов технологии).
Связи, технологические
объекты и другие необходимые параметры могут иметь идентификаторы (имена). Имена
рекомендуется составлять из двух частей. Символическая часть в начале имени
указывает на качественный характер объекта, а цифровая в конце—его место в
тексте.
Например, все технологические
блоки могут начинаться с символа Б, связи по потокам веществ — с
S. Тогда могут появиться
имена: Б1, Б5, S3, S2 и
т.д.
Основной конструкцией при
отображении технологии служит утверждение. Оно состоит из двух частей,
разделенных знаком «по определению есть» (::=).
В правой части находится определяемое понятие в виде графического
изображения или текста, заключенного в угловые скобки, в левой раскрывается содержание этого понятия. Понятие
может раскрываться двумя путями: использованием мнемонических изображений
объектов с указанием связей между ними; записью аналитических,
логических и других выражений, показывающих
зависимость одних объектов или их связей от других. При этом все имена объектов
и связей вне квадратов — границ блоков— записываются в угловых скобках, а другие элементы выражений (коэффициенты,
арифметические и логические действия, названия функций) —
традиционно.
В угловые скобки после имен
понятий через запятую могут включаться существенные характеристики
соответствующих объектов или связей, например единицы измерения. Синтаксически правильны следующие
выражения:.
<S25>
::= <S14> + <S15> Í
K25
Í
СOS
Х; (2)
Конечно, вся забота о смысле
выражений лежит на том, кто их записывает. Язык лишь позволяет приводить к
согласованному виду, связывать между собой любыми отношениями разнородные
вещи.
Переход от выражений на ЯСОТ,
например (1), (2), (3), к математическим выражениям или утверждениям какого-либо
языка программирования несложен. Возможен следующий переход к обычным
математическим уравнениям:
S10
= K10S9;
S50
= S45 Ú
S50 = S48.
Запись на алгоритмическом
языке PL 1 для ЕС ЭВМ будет выглядеть
так: S10=K10*S9;
S50=S45
! S50=S48;
Следует отметить, что записи
в виде уравнений и на алгоритмическом языке служат
конкретизацией выражений ЯСОТ, результатом
интерпретации пользователя.
Описание технологии
представляет собой некоторое множество утверждений, раскрывающих ее содержание
на требуемом числе уровней, на каждом из которых отражаются необходимые
инженерно-технологические аспекты. Например, оно может включать в себя:
технологические схемы, характеризующие движение потоков веществ,
предметов; детализацию некоторых элементов схем с перечислением возможных
вариантов; описание функциональных зависимостей между элементами схем, имеющими
одинаковую или различную качественную природу (между потоками веществ, между
потоками и размерами технологических объектов и др.).
На рисунке в качестве примера использования языка приводится
технологическая схема микробиологической переработки навоза с получением
кормового белка.
Для иллюстрации приведен
фрагмент записи варианта технологии на языке
ЯСОТ (см. рисунок — блок Б6 и его конкретизацию). Запись подразумевает, что
поток <S6> может быть преобразован
в. поток <S7> двумя способами: либо
удаляется только H2S, либо H2S вместе с СО2. Как видно, в обоих случаях нас
не интересует, что происходит в дальнейшем с потоком H2S, но отмечено, куда
направляется поток СО2.
Каждая схема изображается
отдельно, причем нужно стремиться к тому, чтобы в изображение входили
элементы примерно одного логического уровня. Например, будет не совсем
естественным соседство технологии в целом и отдельно взятой машины или
машины и каких-либо ее элементов. Желательно, чтобы технология изображалась
серией утверждений, находящихся в отношении иерархической подчиненности. Описание нужно начинать с верхних уровней,
проводя последовательно необходимую детализацию.
Каждый уровень может
раскрываться несколькими схемами, необходимыми для решения определенного круга
задач. Например, для отображения процесса комплексной переработки навоза в
целях моделирования структуры технологических процессов нужны как минимум:
структурная схема процесса комплексной переработки (пример показан на
рисунке); соотношение потоков веществ в технологии; схемы зависимостей
потребностей в теплоте, электрической энергии, технологической воде,
минеральных веществах от различных факторов.
Круг задач, в которых
целесообразно использовать язык, очень широк. Их можно условно разбить на три
большие группы: производственные, для обучения и средства общения человека с ЭВМ
в системах автоматизированного проектирования (САПР).
Производственные применения
включают следующие задачи: наглядное, иерархическое, логическое,
формализованное отображения технологии; структурный качественный
(неколичественный) анализ возможных вариантов реализации технологии;
математическое моделирование технологии для
получения интересующих нас характеристик в процессе проектирования;
использование языка для построения мнемосхем в целях увеличения
наглядности процессов
управления.
Использование языка в целях
обучения позволит более экономично, строго,
наглядно представлять технологические процессы. ЯСОТ удобен при
изготовлении схем, плакатов, для записей в тетради.
Сейчас очень остро стоит проблема создания адекватных языковых средств для САПР, позволяющих достаточно полно и компактно отражать структуру необходимой предметной области. Предлагаемый язык можно успешно применять для этой цели при условии разработки некоторого подмножества средств языка для решения соответствующего круга задач. Применение графических изображений требует использования графического видеотерминала с прикладным программным обеспечением, однако возможно создание литерной транскрипции для работы с алфавитно-цифровым дисплеем.
На наш взгляд, будет
эффективным применение языка для отражения большинства сельскохозяйственных технологий: процессов выращивания, уборки и
переработки различных сельскохозяйственных культур, технологий
заготовок и приготовления кормов в животноводстве. Удобно изображать с его
помощью экологические системы и процессы, протекающие в них. Уровень
разработки языка достаточен для решения основных задач проектирования и
анализа технологий. Мы не стремились в данной работе к излишней
регламентации использования и подробности описания. Например, пользователь
может применять часть средств языка, наиболее отвечающих его интересам,
разработать подмножество языковых средств для своих задач, что в основном
сводится к созданию необходимых обозначений:
текстов и рисунков внутри квадратов. Язык можно совершенствовать и
развивать по нескольким направлениям: увеличение выразительности и
удобства использования; повышение формализации до уровня, достаточного для
реализации на ЭВМ, расширение
области применения.
СПИСОК ЛИТЕРАТУРЫ
Поступила в редакцию 27.04.83
Механизация и
электрификация сельского хозяйства, № 2,
1986
Структурная схема процесса комплексной
переработки навоза с получением кормового белка:
Блоки: <А1>::=<технология комплексной микробиологической переработки навоза>;
<Б1>::=<отделеиие механических
включений>; <Б2>::=<измельчение и нагревание навоза>: <БЗ>::=<выдерживание навоза>; <Б4>::=<сбраживание навоза (метантенк)>; <Б5>::=<хранение
сброженного навоза>; <Б6>::=<очистка
биогаза>; <Б7>::=<хранение
биогаза (газгольдер)>; <Б8>::==<биосинтез белка (ферментер)>; <Б9>::=<приготовление и подача раствора питательных солей>;
<Б10>::=<подача технологической воды>; <Б11>::=<подача
технического кислорода>|<подача воздуха>; <Б12>::=<ино-кулятор процесса>; <Б13>::=<сжигакие отходящих гааов>; <Б14>::=<хранение бактериальной биомассы>; <Б15>::=<сгущение биомассы (сепаратор)>; <Б16>::==<плазмолиз биомассы>; <Б17>::=<хранение кормового белка>; <Б18> >::=<кормоцех
животноводческого предприятия>; <Б19>::= <использование
сброженного навоза>;
Связи: <S1>::=-<навоз из животноводческого помещения>; <S2>::=<очищенный навоз>; <S3>::=<навоз после измельчения и подогрева>; <S4>::=<подача навоза на сбраживание>; <S5>::=<отбор сброженного навоза>; <S6>::=<биогаз (60...70 % об. СН4 30...40 % об. СO2)>;
<S7>::=<очищенный от примесей биогаз>; <38>::=<биогаз на
биосинтез>; <S9> >::=<технологическая вода>: <310>::=<технологическаяво-да>; <S11>::=<растворы
питательных солей>; <S12>::=<отходящие газы>;
<S13>::=<растворы питательных солей>; <S14>::=<белковое молоко
(10...48 г/л АСВ)>;
<S15>::=<белковое молоко
(10...15 г/л АСВ»; <S16>::=<воздух> |
<технический кислород>; <S17>::=<воздух> | <технический кислород>; <S18>::=<белковое молоко на переработку>; <S20>::==<биомасса после сгущения>; <S21>::=<кормовой белок>;
<S22>::=<подача белка в
кормоцех>; <S24>::=<биогаз в ферментер-инокулятор>; <S25>::=<биогаз на непосредственное сжигание>; <S28>::=<сброженный навоз на переработку>. Вернуться к
тексту.