Designing the System

In this part of the tutorial, we will explore a typical use case for designing a system within Requirements Portal. This process involves creating a digital model and breakdown of the system, calculating performance parameters, performing trade-off studies, and making design decisions.

Configure the Valitypes

Valitypes ensure that every new block you create already contains valis of a certain type with a default formula and unit (e.g., mass, power consumption, etc.). We need to ensure that correct valitypes exist.

  1. Click the  icon at the top right left and select Settings from the menu that appears. On the page that opens, select the Valitypes entry in the left-hand side pane to see all the existing valitypes. 

  2. Make sure that valitypes Mass and PowerConsumption exist. If they do not exist, add them by clicking on the  button at the bottom right of the page and add valitypes with these names.

  3. The units for the PowerConsumption valitype might be in kW or W. If the unit is in kW, double-click in the cell and edit the kW to W. Also, in this tutorial, we will use the mass property of the blocks in grams; it is your choice to keep the units in kg or g.

  4. Enable the add by default property for valitypes Mass and PowerConsumption. Double-click in the cell for one of these valitypes and select True from the menu that appears, then do the same for the other valitype. These valitypes will be automatically added to every new block you create later in this tutorial.

    Note that this property is a user setting, i.e., this will not affect which valitypes other users have checked as default.

soc() in valitype values means the 'sum of children' and ensures that, by default, this vali adds up valis of the same type in the system breakdown.

Adding Systems to the Project

Let's start building your fan! Every product can be broken down into its sub-systems, like a tree. The hierarchical system tree is one of the core features of Requirements Portal.

In the Blocks Module, you can create and access the system tree, which includes all systems and sub-systems, including technical parameters (valis).

  1. Navigate to the Blocks Module by clicking the Blocks entry in the project tree at the left.

  2. By default, a project includes a block named after the project (in our case, Valifan). Right-click its entry in the project tree and select the Add Block command. Enter Propeller in the Name field of the Create new block window that appears and click . Expand the Valifan block to see the new sub-block in the navigation tree.

     
  3. Similarly, create the following sub-blocks for the Valifan block: MotorSpeed_Controller, and Structure.

    • In the Create new block window, you can click the  button option to create multiple blocks without leaving the window.

    • You can drag and drop blocks in the tree to change their hierarchy level.

Changing Technical Parameters (Valis)

In Requirements Portal, Valis are technical parameters that contain your engineering values. Valis have properties such as formulas, values, history, and much more. So, let's go ahead and add values to your valis!

  1. Select the Valifan block in the navigation pane. Click the  button at the top left to open the Create Property window. In this window, make sure that the Vali tab is opened and select the Mass valitype from the drop-down of the Name field. Leave default values for other fields and click .

  2. Similarly, add another vali of the PowerConsumption valitype. Created valis will be shown in the Properties view of the Valifan block.

    If you wish to see more information and attributes for your valis, you can click on the vali name. This opens the details page of the vali, where you can also edit its formula. For this tutorial, we will just change the values within the list view.

  3. Newly created sub-blocks of the Valifan block already contain valis Mass and PowerConsumption (because these valis has been configured to be added by default in valitype settings). Now, change value of these valis in each sub-block. To do this, select a sub-block, double-click the corresponding cell in the Value column. Enter the following values:

    • MotorMass = 110gPowerConsumption = 1W

    • PropellerMass = 30gPowerConsumption = 0W (make sure to enter 0W instead of soc())

    • Speed_ControllerMass = 15gPowerConsumption = 0.1W

    • StructureMass = 80gPowerConsumption = 0W (make sure to enter 0W instead of soc())

    • When entering the Value property, it is essential to include both the numerical value and its unit, e.g., 110g.

    • In the Display Unit column, you can specify the unit in which you wish the value to be represented. Thus, by initially inputting the value as 110g and setting the Display Unit as kg, the calculation engine will convert and display it as 0.11kg.

    • For calculations, the calculation engine uses the unit provided in the Value field. If you require the unit to be displayed in a different format, like pounds (lbs), the calculation engine will convert the displayed unit accordingly. Learn more about the list of units used by the calculation engine.

    • Make sure to always use dots (.) as decimal separators for the values.

    An example of values added to the Motor sub-block is shown below.

  4. Navigate to the Valifan block and note that its total Mass has been automatically calculated to 235 g (or 0.235 kg) and its total PowerConsumption has been calculated to 1.1 W.

Adding a New Vali

In previous steps, we have shown how to add valitypes. However, valis (properties) are not restricted to mass and power consumption alone. Different properties can be added to the blocks. In Requirements Portal, you can create a new vali that can be a number with or without a unit. It can also be a matrix, textvali (e.g., material), datevali (e.g., purchase date) and datasets (two dimensions). You can access valis in formulas using the $ symbol in any field.

In the following steps, we will add the propeller efficiency and delivered power.

  1. Navigate to the Propeller block and click the  button at the top left to open the Create Property window. In this window, make sure that the Vali tab is opened and enter Efficiency to the Name field and 0.85 to the Formula and unit field. Leave the Display Unit field empty and click .

  2. Similarly, add another vali with the name power_delivered and add the formula as  $Motor.PowerConsumption*$Propeller.efficiency. As you type the $ symbol in the Formula and unit field, a drop-down will appear from which you can choose the required. Leave the Display Unit field empty (the correct units, W, will be assigned automatically based on the calculation) and click .

    You can also access a vali from a different project in a formula or analysis by typing $ and selecting show other projects from the drop-down.

    The valis of the Propeller block should now look as shown below.

  3. Click the name of the power_delivered vali open a detailed page with additional information and properties. Here, you can see Formula, Properties, Info, Connected Copies, Actions and have access to the vali's History.

Detailing the Design

All valis with the formula soc() (Sum of Children), have an associated budget table and chart which can be viewed in the vali information.

  1. Navigate to the Valifan block and click the Mass vali name to open its details.

  2. Click the Budget control at the top to view a breakdown of the fan's total mass. You can show children of a block by clicking the arrow at the left of the block name.

  3. Click the Breakdown Chart control to view a breakdown of the total mass of the fan. The pie chart shows the mass breakdown for the immediate lower level of subsystems.

Using Margins

At an early development stage, you are usually not sure about the exact values of any property. This is why adding a margin to the value can be helpful. Requirements Portal propagates this uncertainty throughout all your calculations (linear uncertainty propagation).

For example, you might not know the final value of a mass. In most cases, you end up with a mass higher than expected. For these cases, you can add a security margin to your vali. Using this margin, Requirements Portal automatically calculates a worst-case for your vali. Let's do this with the propeller mass.

  1. Navigate to the Propeller block and enable visibility of the Margin + and Margin - columns in the table using the Columns control at the right.

  2. In the Margin + column for the Mass vali, enter 10 (which means a 10% margin+).

  3. Click the name of the Mass vali to open its detailed view. The Worst Case value will be shown as 33g | 30g due to the 10% margin+.

  4. Based on the margin defined on the Propeller block, Requirements Portal automatically updates the margins and worst cases on the higher level. Navigate to the Valifan block and open the detailed view of its Mass vali. As you can see, the fan's mass now has a total margin of +1.28% and a worst-case of 238g | 235g.

Adding Tags for Your Custom Needs

Tags are a multi-purpose tool for your specific team needs. You can use them to mark valis and blocks. Use them to indicate:

  • Reliability of a value (e.g., assumption/calculated/measured).

  • Actions for team members (e.g., review: Tom/approval: Christine).

  • Any other marking or grouping.

  1. Navigate to the Motor block.

  2. Double-click the cell in the Tags column for the Mass vali, type measurement and press Enter to add the tag.

  • The table can be filtered by specific tags. Hover the cursor over the Tags column header, click the  icon, and then click the  icon in the popup that appears to access filter options.

  • You can change the color of a tag in settings ( » Settings » Tags).

Linking Blocks to Requirements

Main page: Applicable Blocks

Now that you have your basic system structure, let's establish a connection between the Valifan system and the requirements from our Fan_Specs specification. This creates a direct link between the system design and the requirement.

  1. Navigate to the Fan_Specs specification (expand the Requirements entry in the project tree and click the Fan_Specs entry).

  2. Check the box at the left of the Identifier column header to select all requirements within the specification.

  3. Double-click within a cell of the Applicable Block column, select Valifan from the drop-down, and confirm the bulk update.

     
  • You can quickly navigate to a linked system in the Blocks Module by hovering the cursor over an entry in the Applicable Block column and clicking the  button ().

  • You can check requirements linked to a system in the Blocks Module by clicking the Requirements control above the vali table ().

  • Whenever you create a requirement, it will be automatically linked to the currently selected system.

Now, when the requirements to the product and the product itself are defined, let's verify the system.

If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Feature Availability

The features available to you depend on which Altium solution you have – Altium Develop, an edition of Altium Agile (Agile Teams or Agile Enterprise), or Altium Designer (on active term).

If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

Content