시스템 설계하기
이 튜토리얼의 이 부분에서는 Requirements Portal에서 시스템을 설계할 때의 전형적인 사용 사례를 살펴보겠습니다. 이 과정에는 시스템의 디지털 모델과 분해 구조를 생성하고, 성능 파라미터를 계산하며, 트레이드오프(Trade-off) 분석을 수행하고, 설계 결정을 내리는 작업이 포함됩니다.
Valitypes 구성
Valitypes는 새 블록을 만들 때마다 기본 수식과 단위(예: 질량, 소비 전력 등)를 가진 특정 유형의 vali가 이미 포함되도록 보장합니다. 올바른 valitypes가 존재하는지 확인해야 합니다.
-
오른쪽 상단의
아이콘을 클릭하고 표시되는 메뉴에서 Settings을(를) 선택합니다. 열리는 페이지에서 왼쪽 패널의 Valitypes 항목을 선택하여 기존 valitypes를 모두 확인합니다.
-
valitypes Mass 및 PowerConsumption이(가) 존재하는지 확인합니다. 존재하지 않는 경우, 페이지 오른쪽 하단의
버튼을 클릭하여 이 이름으로 valitypes를 추가합니다.
-
PowerConsumption valitype의 단위는 kW 또는 W일 수 있습니다. 단위가 kW라면 셀을 더블클릭하고 kW 을(를) W(으)로 수정합니다. 또한 이 튜토리얼에서는 블록의 질량 속성을 그램(g) 단위로 사용할 예정이며, 단위를 kg로 유지할지 g로 할지는 선택 사항입니다.
-
valitypes Mass 및 PowerConsumption에 대해 add by default 속성을 활성화합니다. 해당 valitype 중 하나의 셀을 더블클릭하고 표시되는 메뉴에서 True을(를) 선택한 다음, 다른 valitype에도 동일하게 적용합니다. 이 valitypes는 이후 이 튜토리얼에서 새 블록을 만들 때마다 자동으로 추가됩니다.
프로젝트에 시스템 추가
이제 팬을 만들어 봅시다! 모든 제품은 트리 구조처럼 하위 시스템으로 분해할 수 있습니다. 계층형 시스템 트리는 Requirements Portal의 핵심 기능 중 하나입니다.
Blocks Module에서는 모든 시스템과 하위 시스템(기술 파라미터(valis) 포함)으로 구성된 시스템 트리를 생성하고 접근할 수 있습니다.
-
왼쪽의 프로젝트 트리에서 Blocks 항목을 클릭하여 Blocks Module로 이동합니다.
-
기본적으로 프로젝트에는 프로젝트 이름을 딴 블록이 포함됩니다(우리의 경우 Valifan). 프로젝트 트리에서 해당 항목을 마우스 오른쪽 버튼으로 클릭하고 Add Block 명령을 선택합니다. 표시되는 Create new block 창의 Name 필드에
Propeller을(를) 입력하고
을(를) 클릭합니다. 탐색 트리에서 Valifan 블록을 확장하여 새 하위 블록을 확인합니다.
-
마찬가지로 Valifan 블록에 대해 다음 하위 블록을 생성합니다:
Motor,Speed_Controller, 및Structure.
기술 파라미터(Valis) 변경
Requirements Portal에서 Valis 은(는) 엔지니어링 값을 담는 기술 파라미터입니다. Valis에는 수식, 값, 이력 등 다양한 속성이 있습니다. 이제 valis에 값을 추가해 봅시다!
-
탐색 패널에서 Valifan 블록을 선택합니다. 왼쪽 상단의
버튼을 클릭하여 Create Property 창을 엽니다. 이 창에서 Vali 탭이 열려 있는지 확인하고, Name 필드의 드롭다운에서 Mass valitype을(를) 선택합니다. 다른 필드는 기본값으로 두고
을(를) 클릭합니다.
-
마찬가지로 PowerConsumption valitype의 다른 vali를 하나 더 추가합니다. 생성된 valis는 Valifan 블록의 Properties 보기에서 표시됩니다.
-
Valifan 블록의 새로 생성된 하위 블록에는 이미 valis Mass 및 PowerConsumption 이(가) 포함되어 있습니다(이 valis는 valitype 설정에서 기본으로 추가되도록 구성했기 때문입니다). 이제 각 하위 블록에서 이 valis의 값을 변경합니다. 이를 위해 하위 블록을 선택한 다음 Value 열에서 해당 셀을 더블클릭합니다. 다음 값을 입력합니다:
-
Motor: Mass =
110g, PowerConsumption =1W -
Propeller: Mass =
30g, PowerConsumption =0W(soc()대신0W을(를) 입력해야 합니다) -
Speed_Controller: Mass =
15g, PowerConsumption =0.1W -
Structure: Mass =
80g, PowerConsumption =0W(soc()대신0W을(를) 입력해야 합니다)
Motor 하위 블록에 추가된 값의 예시는 아래와 같습니다.
-
-
Valifan 블록으로 이동하여 총 Mass이(가) 235 g(또는 0.235 kg)로 자동 계산되었고, 총 PowerConsumption이(가) 1.1 W로 계산되었음을 확인합니다.
새 Vali 추가
이전 단계에서는 valitypes를 추가하는 방법을 보여주었습니다. 하지만 vali(속성)는 질량과 소비 전력에만 제한되지 않습니다. 블록에 다양한 속성을 추가할 수 있습니다. Requirements Portal에서는 단위가 있거나 없는 숫자 형태의 새 vali를 만들 수 있습니다. 또한 행렬, textvali(예: 재질), datevali(예: 구매일), datasets(2차원)도 가능합니다. 어떤 필드에서든 $ 기호를 사용해 수식에서 valis에 접근할 수 있습니다.
다음 단계에서는 프로펠러 효율과 전달 전력을 추가하겠습니다.
-
Propeller 블록으로 이동한 다음 왼쪽 상단의
버튼을 클릭하여 Create Property 창을 엽니다. 이 창에서 Vali 탭이 열려 있는지 확인하고 Name 필드에 Efficiency을(를), Formula and unit 필드에0.85을(를) 입력합니다. Display Unit 필드는 비워 둔 채
을(를) 클릭합니다.
-
마찬가지로 이름이
power_delivered인 다른 vali를 추가하고, 수식은$Motor.PowerConsumption*$Propeller.efficiency(으)로 추가합니다. Formula and unit 필드에$기호를 입력하면 드롭다운이 나타나며, 여기서 필요한 항목을 선택할 수 있습니다. Display Unit 필드는 비워 둡니다(계산에 따라 올바른 단위 W가 자동으로 할당됩니다). 그런 다음
을(를) 클릭합니다.
이제 Propeller 블록의 valis는 아래와 같이 표시되어야 합니다.
-
power_delivered vali의 이름을 클릭하면 추가 정보와 속성이 있는 상세 페이지가 열립니다. 여기에서 Formula, Properties, Info, Connected Copies, Actions을(를) 확인할 수 있으며, vali의 History에도 접근할 수 있습니다.
설계 상세화
soc() (Sum of Children) 수식을 사용하는 모든 valis에는 연결된 예산 표와 차트가 있으며, 이는 vali 정보에서 확인할 수 있습니다.
-
Valifan 블록으로 이동한 다음 Mass vali 이름을 클릭하여 세부 정보를 엽니다.
-
상단의 Budget 컨트롤을 클릭하여 팬의 총 질량에 대한 세부 내역을 확인합니다. 블록 이름 왼쪽의 화살표를 클릭하면 블록의 하위 항목(children)을 표시할 수 있습니다.
-
Breakdown Chart 컨트롤을 클릭하여 팬의 총 질량에 대한 세부 내역을 확인합니다. 원형 차트는 바로 아래 레벨의 서브시스템에 대한 질량 분해를 보여줍니다.
마진 사용
개발 초기 단계에서는 어떤 속성의 정확한 값을 확신하기 어렵습니다. 그래서 값에 마진을 추가하는 것이 도움이 될 수 있습니다. Requirements Portal은 이 불확실성을 모든 계산에 걸쳐 전파합니다(선형 불확실성 전파).
예를 들어 최종 질량 값을 모를 수 있습니다. 대부분의 경우 예상보다 더 큰 질량으로 귀결됩니다. 이런 경우 vali에 안전 마진을 추가할 수 있습니다. 이 마진을 사용하면 Requirements Portal이 해당 vali의 최악 조건(worst-case)을 자동으로 계산합니다. 프로펠러 질량으로 이를 수행해 보겠습니다.
-
Propeller 블록으로 이동하고, 오른쪽의 Columns 컨트롤을 사용해 표에서 Margin + 및 Margin - 열이 보이도록 설정합니다.
-
Mass vali의 Margin + 열에
10을(를) 입력합니다(10% margin+를 의미).
-
Mass vali 이름을 클릭하여 상세 뷰를 엽니다. 10% margin+로 인해 Worst Case 값이 33g | 30g (으)로 표시됩니다.
-
Propeller 블록에 정의된 마진을 기반으로 Requirements Portal은 상위 레벨의 마진과 최악 조건을 자동으로 업데이트합니다. Valifan 블록으로 이동해 Mass vali의 상세 뷰를 여세요. 보시다시피 이제 팬의 질량은 총 마진이 +1.28%이고 최악 조건이 238g | 235g입니다.
사용자 정의 요구에 맞는 태그 추가
태그는 팀의 특정 요구를 위한 다목적 도구입니다. valis와 블록을 표시하는 데 사용할 수 있습니다. 다음을 나타내는 데 활용하세요.
-
값의 신뢰도(예:
assumption/calculated/measured). -
팀 구성원을 위한 작업(예:
review: Tom/approval: Christine). -
기타 모든 표시 또는 그룹화.
-
Motor 블록으로 이동합니다.
-
Mass vali의 Tags 열에서 해당 셀을 더블클릭하고
measurement을(를) 입력한 다음Enter을(를) 눌러 태그를 추가합니다.
블록을 요구사항에 연결
Main page: 적용 가능한 블록
이제 기본 시스템 구조가 준비되었으니, Fan_Specs 사양의 요구사항과 Valifan 시스템 간 연결을 설정해 보겠습니다. 이렇게 하면 시스템 설계와 요구사항 사이에 직접 링크가 생성됩니다.
-
Fan_Specs 사양으로 이동합니다(프로젝트 트리에서 Requirements 항목을 확장하고 Fan_Specs 항목을 클릭).
-
Identifier 열 헤더 왼쪽의 체크박스를 선택하여 사양 내 모든 요구사항을 선택합니다.
-
Applicable Block 열의 셀 안을 더블클릭하고 드롭다운에서 Valifan을(를) 선택한 다음 일괄 업데이트를 확인합니다.
)
)