Алгоритм автоматизации разработки схем общих систем
управления
О.А.
Савчук,
ведущий инженер,
ФГУП “НПО “Аврора”, oks-bvg@yandex.ru, г. Санкт-Петербург
Экономический эффект от
внедрения систем управления во многом зависит от стоимости проектирования этих систем.
Вопросы сокращения трудозатрат, связанных с разработкой конструкторских
документов являются одной из важных задач при разработке систем управления.
Системы управления судовыми техническими средствами в этом плане не являются
исключением. Для этого класса систем управления вопрос снижения затрат на
проектирование также актуален, особенно учитывая, что на сегодняшний день на
одного работающего в судостроительной промышленности приходится до пяти
работников, занятых в смежных отраслях [1]. Недостаточная аспектированность
данных, огромным количеством которых оперирует используемая вычислительная
техника [2], предопределяет недостаточную эффективность ее использования, в том
числе из-за большого объема ручного ввода исходных данных.
В
настоящей докладе предлагается метод повышения информационной насыщенности
исходных данных, апробированный при разработке схем общих крупных систем
управления судовыми техническими средствами. Такие системы управления,
насчитывая в своём составе несколько сотен приборов и соединительных ящиков,
обеспечивают управление несколькими тысячами исполнительных органов (ИО) и
предоставляют информацию от нескольких тысяч источников информации (ИИ). Схема
общая такой системы насчитывает до нескольких десятков тысяч кабелей,
соединяющих её оборудование между собой, причём до 90% от их общего количества
–это кабели от ИИ и ИО. В данном случае рассматриваются ИО и ИИ, от каждого из
которых к оборудованию системы подходит не более десяти кабелей.
По
существующим в судостроении стандартам индекс кабеля не должен превышать 13
символов, которые образуют три цифробуквенные группы, разделенные двумя
дефисами. При одиннадцатизначном обозначении обозначения кабелей выглядят как,
например, 03-6УК-23456, или 00-5МН-34567. При этом первая группа показывает
принадлежность кабеля к местным (соединяющим оборудование одного отсека) или к
магистральным (соединяющим оборудование двух разных отсеков). В первом случае,
03 для местного кабеля отсека 3, во втором 00 для магистрального кабеля,
независимо от отсеков, которые он соединяет. Вторая группа определяет шифр
системы управления (6УК в первом примере и 5МН во втором), третья определяет
порядковый номер кабеля (23456 в первом примере и 34567 –во втором). Оставим
дань сложившимся традициям в части первой и второй групп и рассмотрим несколько
пристрастнее третью группу. Оказывается, что в существующей практике среди
множества этих номеров могут быть и не уникальные (уникальность обозначения
определяется только при сочетании всех трех групп). Таким образом, в сегодняшних
системах управления можно, наряду с кабелем 02-6УК-34567, можно встретить,
например, и кабель 05-6УК-34567 и кабель 05-6УК-34567. Поскольку третья группа
не несет никакой информации, кроме информации о порядковом номере кабеля в
определенном отсеке её нельзя использовать в качестве исходных данных для
какой-либо автоматизации процесса создания схемы общей. Следовательно далее,
независимо от формы выполнения схемы общей (графической или табличной),
неизбежен рутинный ручной труд по внесению в неё номеров кабелей от ИИ и ИО к
приборам системы управления.
Вместе
с тем третья группа могла предоставлять, помимо порядкового номера, и другую
информацию, например, о номере ИИ (ИО) к которому подходит кабель. Это не
трудно сделать. если все ИИ и ИО имеют в обозначении уникальную цифровую
составляющую. Представим крупную систему управления, в которой насчитывается до
9 тысяч ИО и ИИ, причем каждый из них имеет в обозначении уникальную цифровую
составляющую в диапазоне от 1000 до 9999, причем к каждому из них подходит не
более десяти кабелей.
В
таком случае цифровая составляющая в обозначении кабеля, отходящего от ИИ или
ИО может содержать цифры, заимствованные из цифровой составляющей обозначения
ИИ и ИО, к которым присоединяют цифру с порядковым номером кабеля от данного ИИ
(ИО). Например, если ИИ имеет цифровое обозначение 5463 и должен соединяться с
системой управления тремя кабелями, то цифровые составляющие в-обозначении этих
кабелей могли бы быть соответственно 54630, 54361 и 54362. Таким образом, обеспечивается
автоматизация процесса создания схемы общей, причем номера кабелей несут
информацию о номере ИИ (ИО) и следовательно могут быть использованы в качестве
исходных данных для последующего создания схем их подключения к аппаратуре
систем управления.
Ниже приводятся стандартные
процедуры Microsoft Access, которые могут быть использованы для получения схемы
общей в табличной форме, приведенной в таблице 1.
Номер и название таблицы
оформляются соответствующими стилями ("Номер таблицы" и
"Название таблицы"). Содержание таблицы оформляется шрифтом гарнитуры
Arial, размер –
Таблица 1
Откуда
идет |
Куда идет |
Кабель |
Марка |
||
Оборудование |
Отсек |
Оборудование |
Отсек |
||
1 |
2 |
3 |
4 |
5 |
6 |
ПР7-0700 |
1 |
1000 |
1 |
1-6УК-10000 |
КМПВЭ-500 4*0,75 |
Конечная цель настоящей работы состоит в
автоматизации создания табличной формы схемы общей для местных кабелей от ИО и ИИ
на основе исходных данных, полученных от проектанта корабля для системы с
шифром, например, 6УК.
Работа по автоматизации создания таблицы 1
начинается с получения от проектанта корабля исходных данных, выполненной в виде
таблицы 2 на основе Microsoft Access.
Таблица 2 для каждой единицы оборудования, с которым связана система управления
(ИО и ИИ), обязательно должна содержать поле 4 (которое является ключевым) с
уникальными номером оборудования, поле 2 с указанием типа оборудования и поле 3
с указанием отсека расположения оборудования. Разрядность номеров принята
равной четырем, что обеспечивает уникальную нумерацию для нескольких тысяч
единиц оборудования.
Таблица 2
Наименование |
Тип |
Отсек |
Номер |
1 |
2 |
3 |
4 |
Сигнализатор положения |
С |
1 |
1000 |
Сигнализатор положения |
С |
1 |
1001 |
Сигнализатор положения |
С |
2 |
1002 |
Газоанализатор |
Г |
2 |
1003 |
Газоанализатор |
Г |
2 |
1004 |
Электромагнит |
Э |
2 |
1005 |
Электромагнит |
Э |
3 |
1006 |
С проектантом корабля должна быть достигнута
договорённость, что порядковый номер каждого кабеля от каждого ИИ или ИО должен
состоять из цифр номера соответствующего оборудования, к которым добавлена ещё
одна цифра.
Предлагаемая далее одна из возможных технологий
состоит в следующем:
а) на основе таблицы 2 создаётся запрос1:
SELECT Таблица2.Тип, Таблица2.Отсек,
Таблица2.Номер (1)
с
помощью запроса (1) создаётся таблица 3, которая содержит тип, отсек, в котором
находится оборудование, и номер оборудования. В этой таблице ключевым является,
также как и в таблице 2, поле с номером ИИ и ИО.
Таблица 3 (запрос 1)
Тип |
Отсек |
Номер |
1 |
2 |
3 |
С |
1 |
1000 |
С |
1 |
1001 |
С |
2 |
1002 |
Г |
2 |
1003 |
Г |
2 |
1004 |
Э |
2 |
1005 |
Э |
3 |
1006 |
На основе таблицы 3 создают
другие запросы, которые в конечном итоге приведут к созданию таблицы 4.4, в
которой каждому ИО (ИИ) будет сопоставлен один кабель с обозначением согласно
принятым нормативам и указанному выше принципу заимствования номера ИО (ИИ).
Создание таблицы 4.4 может
быть выполнено одним обобщенным запросом 2.0, однако с целью прослеживания
логики его построения ниже приведены пошаговые запросы 2.1…2.4. Запрос 2.1
обеспечивает построение первой группы в обозначении кабеля, запрос 2.2
присоединяет к первой группе обозначения кабеля вторую группу, запрос 2.3
включает в обозначение кабеля третью группу и запрос 2.4 преобразует предыдущий
результат так, чтобы ключевым полем стало поле “Кабель”.
SELECT Таблица3.Тип,
Таблица3.Отсек, Таблица3.Номер, left(Таблица1.Отсек,1) & "-6УК-" & Таблица3.Номер
& "0" AS Кабель
На первом шаге формируют
первую группу в обозначении кабеля для каждой из единиц оборудования, которая
содержит в себе номер помещения, следовательно, она будет заимствована из
столбца номер 2 таблицы 3:
SELECT Таблица3.Тип,
Таблица3.Отсек, Таблица3.Номер, left(Таблица3.Отсек,1) AS Кабель_шаг1
Таблица
4.1 (запрос 2.1)
Тип |
Отсек |
Номер |
Кабель_шаг1 |
1 |
2 |
3 |
4 |
С |
1 |
1000 |
1 |
С |
1 |
1001 |
1 |
С |
2 |
1002 |
2 |
Г |
2 |
1003 |
2 |
Г |
2 |
1004 |
2 |
Э |
2 |
1005 |
2 |
Э |
3 |
1006 |
3 |
Далее, формируют вторую группу символов обозначения
кабеля, которая определяется шифром системы управления:
SELECT Таблица3.Тип,
Таблица3.Отсек, Таблица3.Номер, left(Таблица3.Отсек,1) AS Кабель_шаг1,
Кабель_шаг1 & "-6УК-" AS Кабель_шаг2
Таблица 4.2 (запрос 2.2)
Тип |
Отсек |
Номер |
Кабель_шаг1 |
Кабель_шаг2 |
1 |
2 |
3 |
4 |
5 |
С |
1 |
1000 |
1 |
1-6УК- |
С |
1 |
1001 |
1 |
1-6УК- |
С |
2 |
1002 |
2 |
2-6УК- |
Г |
2 |
1003 |
2 |
2-6УК- |
Г |
2 |
1004 |
2 |
2-6УК- |
Э |
2 |
1005 |
2 |
2-6УК- |
Э |
3 |
1006 |
3 |
3-6УК- |
Для
формирования полного обозначения кабеля, из столбца 3 таблицы 3 заимствуют
третью составляющую, которая и определяет порядковый номер кабеля:
SELECT Таблица3.Тип, Таблица3.Отсек, Таблица3.Номер,
left(Таблица3.Отсек,1) AS Кабель_шаг1, Кабель_шаг1 & "-6УК-" AS
Кабель_шаг2, Кабель_шаг2 & Таблица1.Номер & "0" AS Кабель
Таблица 4.3 (запрос 2.3)
Тип |
Отсек |
Номер |
Кабель_шаг1 |
Кабель_шаг2 |
Кабель |
1 |
2 |
3 |
4 |
5 |
6 |
С |
1 |
1000 |
1 |
1-6УК- |
1-6УК-10000 |
С |
1 |
1001 |
1 |
1-6УК- |
1-6УК-10010 |
С |
2 |
1002 |
2 |
2-6УК- |
2-6УК-10020 |
Г |
2 |
1003 |
2 |
2-6УК- |
2-6УК-10030 |
Г |
2 |
1004 |
2 |
2-6УК- |
2-6УК-10040 |
Э |
2 |
1005 |
2 |
2-6УК- |
2-6УК-10050 |
Э |
3 |
1006 |
3 |
3-6УК- |
3-6УК-10060 |
Таким
образом, с помощью запроса (2.3) создаётся таблица 4.3, из которой остается
убрать лишние столбцы (4) и (5) таблицы 4.3, образовавшиеся в результате работы
над формированием индекса кабеля.
SELECT
Запрос1.Тип, Запрос1.Отсек, Запрос1.Номер, Запрос1.Кабель
С
помощью запроса (2.4) создают таблицу 4.4, которая содержит по одному кабелю для каждой из единиц
оборудования. При этом первая цифра в обозначении кабеля заимствована из
столбца 2 таблицы 3, а порядковый номер выполнен на основе данных столбца 3 таблицы
3. Заметим, что запрос (2.4) составлен так, чтобы в таблице 4.4 ключевым стало
поле (4) “Кабель”.
Таблица 4.4 (запрос 2.4)
Тип |
Отсек |
Номер |
Кабель |
1 |
2 |
3 |
4 |
С |
1 |
1000 |
1-6УК-10000 |
С |
1 |
1001 |
1-6УК-10010 |
С |
2 |
1002 |
1-6УК-10020 |
Г |
2 |
1003 |
2-6УК-10030 |
Г |
2 |
1004 |
2-6УК-10040 |
Э |
2 |
1005 |
2-6УК-10050 |
Э |
3 |
1006 |
3-6УК-10060 |
б)
на основе таблицы 4.4 создают запрос 3, цель которого выделить все элементы оборудования
одного типа, например, типа C:
WHERE (((Запрос2.4.Тип)
Like "С")) (3)
В результате получают таблицу 5, которая содержит
всё оборудование типа С.
Таблица 5 (запрос 3)
Тип |
Отсек |
Номер |
Кабель |
1 |
2 |
3 |
4 |
С |
1 |
1000 |
1-6УК-10000 |
С |
1 |
1001 |
1-6УК-10010 |
С |
2 |
1002 |
2-6УК-10020 |
в) На основе таблицы 5 создают последующие запросы,
цель которых получить новую таблицу, в которой дополнительно к данным таблицы 5
присутствует столбец с указанием марки, жильности и сечения кабеля.
Предположим, что от каждой единицы оборудования
типа С отходит только один четырёхжильный кабель типа КМПВЭ-500 с сечением жил
0,75 мм².
Тогда с помощью запроса 4.1 получают таблицу 6.1, где
для каждого оборудования типа С будет указана марка кабеля типа КМПВЭ-500:
SELECT Запрос3.Тип, Запрос3.Отсек, Запрос3.Номер, Запрос3.Кабель,
"КМПВЭ-500" as Марка_шаг1
Таблица 6.1 (запрос 4.1)
Тип |
Отсек |
Номер |
Кабель |
Марка_шаг1 |
1 |
2 |
3 |
4 |
5 |
С |
1 |
1000 |
1-6УК-10000 |
КМПВЭ-500 |
С |
1 |
1001 |
1-6УК-10010 |
КМПВЭ-500 |
С |
2 |
1002 |
2-6УК-10020 |
КМПВЭ-500 |
Далее добавляют к марке кабеля жильность и сечение,
которые были определены, как было сказано выше, 4*0,75:
SELECT Запрос3.Тип, Запрос3.Отсек, Запрос3.Номер, Запрос3.Кабель,
"КМПВЭ-500" AS Марка_шаг1, Марка_шаг1 & "4*0,75" as
Марка
Полученный при реализации запроса (4.2) результат
приведен в таблице 6.2.
Таблица 6.2 (запрос 4.2)
Тип |
Отсек |
Номер |
Кабель |
Марка_шаг1 |
Марка |
1 |
2 |
3 |
4 |
5 |
6 |
С |
1 |
1000 |
1-6УК-10000 |
КМПВЭ-500 |
КМПВЭ-500 4*0,75 |
С |
1 |
1001 |
1-6УК-10010 |
КМПВЭ-500 |
КМПВЭ-500 4*0,75 |
С |
2 |
1002 |
2-6УК-10020 |
КМПВЭ-500 |
КМПВЭ-500 4*0,75 |
Как и при формировании индекса кабеля, образуется
лишний столбец (5) таблицы 6.2, который ликвидируют с помощью запроса 4.3:
SELECT Запрос4.Тип, Запрос4.Отсек, Запрос4.Номер,
Запрос4.Кабель, Запрос4.Марка
Таким образом, с помощью запроса (4.3) создают
таблицу 6.3, в которой дополнительно к данным таблицы 5 появляется столбец с
указанием марки, жильности и сечения кабеля для оборудования типа С.
Таблица 6.3
Тип |
Отсек |
Номер |
Кабель |
Марка |
1 |
2 |
3 |
4 |
5 |
С |
1 |
1000 |
1-6УК-10000 |
КМПВЭ-500 4*0,75 |
С |
1 |
1001 |
1-6УК-10010 |
КМПВЭ-500 4*0,75 |
С |
2 |
1002 |
2-6УК-10020 |
КМПВЭ-500 4*0,75 |
г) Выполним процедуры по пунктам б) и в) для остальных
типов оборудования, подставляя каждый раз в запрос (4) соответствующие данные
кабеля (например, КНРЭ 2*1 для типа Э, КМПВЭ-500 10*0,5 для типа Г). Полученные
результаты приведены в таблице 7 и 8.
Таблица 7
Тип |
Отсек |
Номер |
Кабель |
Марка |
1 |
2 |
3 |
4 |
5 |
Э |
2 |
1005 |
2-6УК-10050 |
КНРЭ 2*1 |
Э |
3 |
1006 |
3-6УК-10060 |
КНРЭ 2*1 |
Таблица 8
Тип |
Отсек |
Номер |
Кабель |
Марка |
1 |
2 |
3 |
4 |
5 |
Г |
2 |
1003 |
2-6УК-10030 |
КМПВЭ-500 10*0,5 |
Г |
2 |
1004 |
2-6УК-10040 |
КМПВЭ-500 10*0,5 |
д) Если от всех типов оборудования отходит только
один кабель, то выполняют запрос 5, цель которого объединить таблицы 6.3, 7 и 8
в таблицу 9:
SELECT * from [Таблица 6.3] UNION SELECT * from [Таблица 7] UNION SELECT * from [Таблица 8]
Таблица 9
Тип |
Отсек |
Номер |
Кабель |
Марка |
1 |
2 |
3 |
4 |
5 |
С |
1 |
1000 |
1-6УК-10000 |
КМПВЭ-500 4*0,75 |
С |
2 |
1002 |
2-6УК-10020 |
КМПВЭ-500 4*0,75 |
Г |
2 |
1003 |
2-6УК-10030 |
КМПВЭ-500 10*0,5 |
Г |
2 |
1004 |
2-6УК-10040 |
КМПВЭ-500 10*0,5 |
Э |
2 |
1005 |
2-6УК-10050 |
КНРЭ 2*1 |
Э |
3 |
1006 |
3-6УК-10060 |
КНРЭ 2*1 |
Таблица 9 отличается от таблицы 1 только отсутствием
двух первых столбцов, для заполнения которых могут быть составлены, при
необходимости, соответствующие запросы. Эту необходимость легко может оценить
разработчик схемы общей в функции количества и номенклатуры приборов, к которым
подходят кабели от ИИ и ИО. После чего, сделав сравнительный анализ размещения
оборудования по отсекам, и определив связи, составляется ряд запросов по
формированию магистральных кабелей, исходя из полученных данных.
Однако, если от оборудования какого- либо типа, например типа С отходит
не один, а два кабеля, то необходимо создать ещё один запрос (6) цель которого
получить таблицу 5.1, в которой отражены данные для вторых кабелей от
устройства С.
SELECT Запрос3.Тип, Запрос3.Отсек, Запрос3.Номер,
left(Запрос3.Отсек,1) AS Кабель_шаг1, Кабель_шаг1 & "-6УК-" AS Кабель_шаг2,
Кабель_шаг2 & Запрос3.Номер & "1" AS Кабель
Таблица 5.1 (запрос 6)
Тип |
Отсек |
Номер |
Кабель |
1 |
2 |
3 |
4 |
С |
1 |
1000 |
1-6УК-10001 |
С |
1 |
1001 |
1-6УК-10011 |
С |
2 |
1002 |
2-6УК-10021 |
Эту таблицу 5.1 затем надо будет учесть при
составлении запроса (5). Аналогичные процедуры надо выполнить для того оборудования,
от которого отходит по два кабеля, но при этом к номеру оборудования добавлять
не 0, а 1 и, при необходимости, изменять марку кабеля. Точно такие же процедуры
надо выполнить ещё раз для оборудования, от которого отходит три кабеля, но при
этом к номеру добавлять 2, и, при
необходимости изменять марку кабеля и так далее, чтобы затем объединить все
полученные таблицы в итоговую, как указано выше.
В заключении следует отметить, что указанные
процедуры автоматизации создания схемы общей могут быть применены и для систем
как с большим количеством ИО (ИИ), так и с меньшим. В первом случае достаточно
при необходимости увеличить (а во втором уменьшить) разрядность цифровой
составляющей обозначения ИИ (ИО).
Надо
также отметить, что в современных крупных системах управления судовыми
техническими средствами, использующих высокие технологии, количество связей
между приборами не менее чем на порядок меньше рассмотренной категории
кабельных связей. Однако и для этой категории могут быть использованы
аналогичные процедуры автоматизации на основе повышения информационной
насыщенности обозначения приборов [3].
1.
Шлемов А.Ф. Актуальные проблемы в отечественном и зарубежном
кораблестроении / Вестник фонда “Кораблестроение” №1, март
2.
Богданов Д.В., Мазаков Е.Б., Неилко О.Б., Чекинов С.Г. Модели и
алгоритмы концептуального проектирования автоматизированных систем управления /
Под ред. Чекинов С.Г.- М.: Компания Спутник+, 2004.
3.
Киселев В.В., Савчук О. А., Соколова О.И. Система нумерации
элементов схем общих крупных судовых систем управления общекорабельными
системами. / Сборник докладов научно-технической конференции ФГУП “НПО “ Агат”
“Системные проблемы корабельных информационно- управляющих комплексов
(эффективность, надежность, экономика)” часть
2, март