
Внутреннее описание метода
Модули инженерных знаний, связанные по входу и выходу объединяются в методы (см. рис. 18).
Рисунок 18
Метод также имеет входные и выходные свойства, для него генерируется отдельный PRT-модуль.
Экран, служащий для описания входных и выходных свойств метода представлен на рис.19.
Список входных свойств метода формируется автоматически при нажатии на кнопку «Автоматическая сборка входов». В него включаются все входные свойства входящих в метод модулей, которые не являются выходными ни для одного из них (т.е. те свойства, значения которых не определяются ни одним МИЗ, входящим в метод).
Список выходных свойств метода формируется также как и для модуля инженерных знаний.
Для сохранения списков входных и выходных свойств метода в базе знаний служит кнопка «Записать свойства метода».
Кнопка «Генерация метода» служит для генерации PRT-модуля для данного метода. При этом входящие в метод МИЗ связываются по входным и выходным свойствам, и для каждого из них определяется ранг. Ранг модулей инженерных знаний определяет последовательность их запуска при работе метода.
Рисунок 19
Моделирование работы метода осуществляется кнопкой «Модель» аналогично моделированию работы МИЗ.
Приложение Пример программного модуля, сгенерированного в системе skb.
Текст программного модуля генерируется в файле с расширением PRT. Имя файла составляется из буквы, обозначающей тип механизма МИЗ (для методов – «M»), подчеркивания и цифры – внутреннего идентификатора МИЗ или метода. Программный модуль оформляется в виде подпрограммы, параметрами которой являются флаг ошибки (not_work) и номер множества для передачи значений входных и выходных свойств (set_atr). Ниже приведен текст программного модуля для МИЗ «Расчет основных размеров цилиндрических колес», механизмом которого являются формулы. Текст формируется в файле F_1.PRT.
Sub f_1 (not_work,set_atr)
system sets
system sdb
!*************************************************************************!
! Интерфейсный модуль элемента баз знаний для подключения МИЗ как !
! исполняемого модуля. Данный программный элемент сгенерирован с помощью !
! подсистемы формирования баз знаний SKB, программного продукта фирмы !
! СПРУТ-технология.
!
! БЗ: KOLESO\KOLESO
! Тип элемента : f
! Элемент : K01
! Полное название : Расчет основных размеров цил. колес
! Разработчик : Евгенев Г.Б.
! Источник : Детали машин: Атлас конструкций. Часть 1. М.:Машиностроение,
! 1992.-лист 193
!
!*****************************************************************************!
a_20$ = SET$[set_atr,1] ! ViSt - Вид ступени передачи
a_14 = SET[set_atr,2] ! m - Модуль, мм
a_15 = SET[set_atr,3] ! b - Ширина зубчатого венца, мм
a_17 = SET[set_atr,4] ! z - Число зубьев
a_16 = SET[set_atr,5] ! beta - Угол наклона, град
not_work = 0
miz_error = 0
! Begin of mechanizm
a_1 = a_14*a_17/cos(a_16)
miz_error = error
If miz_error>0 then begin
error = 0
jump 107
end
a_39 = 2.5*a_14+2
miz_error = error
If miz_error>0 then begin
error = 0
jump 107
end
a_38 = 0.6*a_14
miz_error = error
If miz_error>0 then begin
error = 0
jump 107
end
a_12 = 6
miz_error = error
If miz_error>0 then begin
error = 0
jump 107
end
a_13 = 20
miz_error = error
If miz_error>0 then begin
error = 0
jump 107
end
a_36 = 2
miz_error = error
If miz_error>0 then begin
error = 0
jump 107
end
If miz_error = 0 then begin
a_1_F$="Y"
a_39_F$="Y"
a_38_F$="Y"
a_12_F$="Y"
a_13_F$="Y"
a_36_F$="Y"
end else begin
107:
a_1_F$="N"
a_39_F$="N"
a_38_F$="N"
a_12_F$="N"
a_13_F$="N"
a_36_F$="N"
end
! End of mechanizm
TOSET(set_atr,6) = a_1
TOSET(set_atr,7) = a_39
TOSET(set_atr,8) = a_38
TOSET(set_atr,9) = a_12
TOSET(set_atr,10) = a_13
TOSET(set_atr,11) = a_36
not_work = miz_error
SubEnd