Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 26 Next »

Schematics define all electrical connections (and some special properties) within a PCB project. Components are placed and then wires are drawn to define connections. Further detail can then be added using classes, notes, and other tags.

CONTENTS

RETURN TO HOME PAGE: Altium Designer

Workflow

Read more below:

 Click here to expand...

Project Creation

This is just creating the actual Altium project for everyone to work on. Usually done by the project lead.

Top Level Planning & Design

Top level plan and design may consist of a few things. At a minimum, it may be setting up hierarchical sheets to allow for multiple team members to be able to work on sections of the design. For larger projects though this may entail larger decisions and planning.

Optional Top Level Review

This is an early stage design review. To be completed if needed on larger projects.

Detailed Design

This is the core of schematic work. Designing the circuitry, determining components, and making connections as required for the design. At this stage components may be barebones schematic symbols. Design work will be completed by the project team members.

Schematic Review

Once design is complete, a review is necessary. All members of the EE team will be invited to participate and provide feedback on all aspects of the design.

Component Build-out

Once the design is approved via a design review, components can be fully built out. Read more in Component Creation.

Component Reviews

Once a component is complete, EE heads must review the components to ensure they are ready for production. Read more in Component Creation.

Iterate on Feedback

After a review, there is always feedback to be implemented in the design. This stage is the time to iterate on suggestions, and ultimately deliver a final design. All project team members participate in addressing feedback.

Import to Layout

Once done, the schematic can be ported to layout! See https://nerdocs.atlassian.net/wiki/spaces/NER/pages/156205064/PCB+Layout#Importing-Changes for more.

Project Creation

At NER we have created a standard project template to set up new project with everything they need to get started. This means creating a new project is as simple as selecting the template:

Open expand for step-by-step

 Click here to expand...
  1. Right click the cloud in the Projects panel and select “Create Project…”

  2. In the pop up, select “NER Standard Project” under the PCB category

  3. Enter a title and description

  4. Open the Advanced drop down. Select the three dots at the right end of the “Folder” field

  5. In the pop up, select where the project should go in the vault (somewhere in Projects!), and hit OK

  6. Click “Create”!

    1. Local Storage and Parameters can be left alone

  7. Your project will now be in the Projects panel. Make sure to “Save to Server” to allow others to see it.

Make sure to save to server to allow others to see the project!

Basic Components and Wires

Fundamentally, all schematics consist of component symbols and wires connecting them. The following is an intro to working with these.

Placing Components

Components should be found via the component panel. It has the best organization structure and allows you to easily filter by parameter! More depth is available at https://nerdocs.atlassian.net/wiki/spaces/NER/pages/119111681/Vault+Organization#Components-Panel, but the process is summarized below:

  1. Open the panel via the panels button (or the components shortcut in the schematics toolbar!)

    1. If you see this just hit the blue “Use Existing Components”

  2. Select component type via the dropdown menu at the top of the panel

  3. Filter results (opened via the button in the top left of the panel)

  4. Just Click + Drag the component in or Right-click and select “Place”

  5. Adjust component position as needed (click and drag)!

When dragging a component you can:

  • Spacebar to rotate

  • X to mirror over X-axis

  • Y to mirror over Y-axis

  • Tab to pause movement and open properties

Ultimately, there are not a lot of hard requirements for schematics, but we recommend reading the rest of this page, as well as the Vault Guidelines, for best practices.

Placing Wires

Wires are quite intuitive to work with. A wire is started by hitting Ctrl + W (or hitting the button in the toolbar) and then clicking your start point. The wire will then follow your mouse as you click in between points, eventually reaching your end point.

When placing a (or dragging an existing) wire you can:

  • Spacebar to toggle path

    • Basically if doing an across then up it will instead do an up then across

  • Shift + Spacebar to toggle route mode

    • Will cycle through right angles, 45 degrees, and freeform angles

  • Tab to pause movement and open properties

Wires form what are called “Nets.” This term comes up quite a bit in Altium and effectively just means any set of things that are supposed to be connected directly with copper.

When dragging components with connected wires, the wires will attempt to stay connected. How they behave is partially dependent on selection method. It is best to learn by playing with it, but basically inclusive selection will treat wires as stiff objects, whereas exclusive selection will only keep the selected segments rigid and the rest adaptive.

Designators (Annotation)

To manage the link between schematics, layout, and BOMs all components require unique designators. These are letter-number pairs that indicate the type of part and which instance it is within a project. Fortunately, Altium can take care of designators automatically.

Updating Designators (Annotation)

When a schematic is completely done, but doesn’t have designators you will see error lines on the components due to lack of unique designators. Adding designators in schematics is called “annotation.”

  1. Open the annotation tool via the “Tools” menu

  2. Toggle settings as needed in the annotation window

    1. In most cases you will not need to change any of these!

    2. To highlight some useful bits

      1. Bottom left can be used to disable a few sheets

      2. The right half summarizes changes that will be made

      3. The “Matching Options” section is a more advanced feature used to resolve mismatches when updating designators that have already been annotated once

  3. Click “Update Changes List”

  4. A pop-up will appear with how many changes were made. This is just a sanity check, click “OK” if it looks ok

  5. If the list on the right looks ok, click “Accept Changes (Create ECO)”

  6. In the ECO, click “Execute Changes”, and then “Close”

  7. Done!

Designating Hierarchical Documents

Read the below section to learn more about hierarchical projects. Your project is probably hierarchical if it has the green sheet symbols shown in the below schematic.

Note how in the above schematic, there are multiple .SchDoc files that are being used more than once. When this occurs components will be given a primary designator using the normal annotation process. In parenthesis will be the unique designator assigned to each component, as shown in the below screenshot.

This will work, however to meet Vault Guidelines, the unique designators should be swapped to use letters. This allows for significantly easier reading and placement of designator's once pulled into layout.

Step-by-step below:

 Click here to expand...
  1. Within the same menus as the above tool, select the “Board Level Annotate…” tool (Tools > Annotation > Board Level Annotate…)

  2. Click “Annotate Options”

  3. In the pop-up, set the new designator naming scheme

    1. This can be set by clicking the dropdown menu, or typing your own variables from scratch

    2. See https://nerdocs.atlassian.net/wiki/spaces/NER/pages/118718470/Vault+Guidelines#Annotations for what we recommend to select

  4. Click “OK”

  5. Click “Annotate” and then whichever dropdown button makes sense for you (undesignated for new parts only, or all for all components in the project)

    1. You should see the right column update per your settings

  6. Click “Accept Changes (Create ECO)” in the bottom right

  7. Click “Execute Changes” in the bottom left of the ECO window

  8. Close everything out!

Improving Readability

As with all design work, schematics are used express solutions to open ended problems. With no restrictions on how solutions are approached, it is very important to document your work in a way that everyone can understand! With our team size and various experience levels there is a very wide audience that must be able to comprehend your work.

Even the best engineers will forget how they did something when they come back to it months or years later, so documentation isn’t just for others!

Altium has many features targeted to improve readability of schematics as well as add further information that isn’t conveyed by electrical circuits alone. The below sections will outline a few important tools for enhancing schematics.

Additionally, check out the https://nerdocs.atlassian.net/wiki/spaces/NER/pages/118718470/Vault+Guidelines#Schematics when working on schematics. We have a handful of club-wide recommendations and requirements to setup some baseline consistency across the team.

Net Labels

Net labels serve two functions: connecting and naming. Given any existing wire in a schematic, a net label can be placed to provide a more descriptive name.

These names can be very helpful for correlating schematics to the layout, as the net names will transfer into the PCB layout. It’s recommended to keep the name short but informative.

By default, Altium will name nets without labels based on the component designators and pad numbers the net connects to. For example, NetC5_2, NetU14_6, etc.

Net labels additionally can be used to actually define nets and make new connections. Duplicate net labels can be placed and Altium will consider all wires labeled the same a single net. The above screenshot uses many labels for connections from the component on the left (IB, IA, GPIO, etc) as well as for power (VREG and GND)

Note how VREG and GND in this example have special shapes. This is a special type of label called a power port!

Net labels are frequently used for both purposes. Connections without wires are often helpful for complex schematics as well as any connections that have to otherwise traverse large portions of your page.

Check out some of NERs more complex schematics to see how we historically use net labels (anything with a microcontroller pretty much)

The https://nerdocs.atlassian.net/wiki/spaces/NER/pages/118718470/Vault+Guidelines#Schematics highlight a few suggestions regarding how to use net labels in NER projects.

How to Add Net Labels

 Click here to expand...

There are a few different places to access the net label tool.

  • You can right click the “Wire” button in the schematic toolbar and then switch to “Net Label”

    • Note that the schematic panel will remember your most recent tool within these sub menus

  • You can right click anywhere in the schematic and navigate to “Place” > “Net Label”

  • You can navigate the toolbar to “Place” > “Net Label”

Once in the tool, you simply click on a wire to add a label. Then double click or open the properties panel to edit the name. As with other tools, you can also hit Tab while moving to pause movement and edit the properties.

Notes

As the name implies, notes are for adding notes to your schematic. These can cover anything from clarifying how a circuit works, including calculations proving functionality, or notation on how to place the components once in layout.

 Click here to expand...

There are a few different places to access the net label tool.

  • You can right click the “Text String” button in the schematic toolbar and then switch to “Note”

    • Note that the schematic panel will remember your most recent tool within these sub menus

  • You can right click anywhere in the schematic and navigate to “Place” > “Note”

  • You can navigate the toolbar to “Place” > “Note”

Once in the tool, you simply click in the schematic to designate one corner and click somewhere else to define the other corner. Then double click or open the properties panel to edit the name. As with other tools, you can also hit Tab while moving to pause movement and edit the properties.

Check out the https://nerdocs.atlassian.net/wiki/spaces/NER/pages/118718470/Vault+Guidelines#Notes for more about how we do notes including color coding, numerical annotations, and more.

Hierarchical Pages

Altium allows for hierarchical designs, which primarily impact schematic design, but can also be used to improve speed of layouts for large or repetitive boards.

In summary, hierarchical design is when schematic pages are embedded inside other schematic pages. This creates a tree structure that enables benefits such as reusing pages for repetitive circuits and creating organized sections of your circuitry.

The above screenshot shows how hierarchical design was used in Shepherd BMS 17D and the below is a example from Altium of how higher sheets connect to the lower ones via “ports.”

Setting up for Hierarchy

Altium has 5 options for “Net Identifier Scope,” which essentially defines how your hierarchy will be created. This setting is found in the project options which is found by right clicking in your schematic and selecting “Project Options,” or by opening via the task bar (“Project” > “Project Options”)

These options are:

  • Automatic

  • Flat

  • Hierarchical

  • Strict Hierarchical

  • Global

We typically use Strict Hierarchy, which ensures that all connections between sheets must be explicitly defined with ports. You can read more about the other options here: https://www.altium.com/documentation/altium-designer/accessing-defining-managing-project-options#options

Implementing Hierarchy

Actually creating a hierarchical design is as simple as adding a sheet symbol into any schematic. From there Altium will treat your design as hierarchical according to the setting you chose above.

Step-by-step:

 Click here to expand...
  1. First create a separate schematic file for your sub-sheet. This is done by right clicking the project name in the project panel, then navigating to “Add New to Project” > “Schematic”

  2. Rename, update the template, etc to get the schematic to a good spot

  3. In your top sheet, select the “Place Sheet Symbol” button from the schematic toolbar

  4. Similar to notes, you click once to set the first corner, and then a second time to set the opposite corner

  5. Once placed, open the properties to set the link to the sub-sheet

    1. Set the “File Name” field to select the sub-sheet schematic

    2. Set the “Designator” to be a unique name for this instance of the sheet

Tips on Hierarchy

Hiding Rooms

Check out https://nerdocs.atlassian.net/wiki/spaces/NER/pages/158073007/Altium+Reference+Tips+Troubleshooting#View-Configuration for how to hide rooms when you’re in layout.

Room Creation

By default, hierarchical sheets will each create a “component room” when pulled into PCB layout. These rooms can be moved, copied, and manipulated with all the components and copper put within them. Additionally, rules (and any other queries) can be applied on the room level.

These are generated any time changes from schematics are pushed from schematics to layout. This behavior can be turned off or modified as needed.

Hierarchical Annotations

See above https://nerdocs.atlassian.net/wiki/spaces/NER/pages/136314883/Schematic+Capture#Designating-Hierarchical-Documents for how to annotate hierarchical projects.

Easy Copying

As shown in the Shepherd screenshot at the start of this section, hierarchy can be used for repetitive circuits. This saves time not only in schematic, but also in layout thanks to rooms.

For reusing a schematic a few times, just place more sheet symbols!

For reusing a schematic many many times, see the section for repeaters: https://nerdocs.atlassian.net/wiki/spaces/NER/pages/136314883/Schematic+Capture#Hierarchical-Repeaters

Classes and Other Parameters

Beyond the basics of wires and components, there are many parameters that can be added to indicate special properties of nets and components. All of these parameters come with extra Altium features to ultimately assist in implementation of the feature in layout.

Some of the most common uses are differential pairs, high voltage isolation, routing restrictions, and impedance matching.

Official documentation: https://www.altium.com/documentation/altium-designer/specifying-design-requirements-during-design-capture

Placing Parameter Sets and Blankets

A parameter set in Altium can be placed from a few different menus, including the schematic toolbar, right clicking in schematic, or the window toolbar

Once selected, the parameter set can be placed on any wire, pin, or net label. It can then be assigned properties to actually apply to the net that it is touching (double clicking will open properties).

The following section explains a few of the options. Additionally, you can enter a display name for the parameter set and choose what properties to show on schematic.

Pairing with parameter sets are also blankets. These allow for coverage of multiple nets at once with only one parameter directive. The tool is located next to the parameter set tool in all the same contexts (via toolbars, right click, etc).

A blanket is placed by clicking once to start and a second time to set the opposite corner. Any net or component touching the blanket will have the attributes applied to it. Attributes are assigned to a blanket by adding a parameter set that is touching the boundary.

Types of Parameters

The following are the different parameters that can be applied within a parameter set:

  • Net Class - Used to group nets of similar type. We often use this for HV/LV distinction.

  • Component Class - Used to group components of a similar type.

  • Rules - Used to directly apply a layout rule to the net. Any normal rule can be applied. Most often used for length or width restrictions imposed by component datasheets.

  • Parameters - Used to assign any arbitrary parameter.

Net Classes

Creating a net class is very similar to net labels. Simply enter a name and use the same name on other objects to add them to the group.

As mentioned above, net classes are typically utilized to group nets of similar type together. Historically at NER we have used this for indicating similar potentials of nets to enable easier clearance and creepage rule development for mixed TS/GLV boards.

Another purpose is to designate nets as signal versus power, to enable stricter isolation of analog measurements or critical communications from noisy power or switching nodes.

More information about using net classes for rules is covered in https://nerdocs.atlassian.net/wiki/spaces/NER/pages/156205064/PCB+Layout+Matt+Edition#Design-Rules

Differential Pairs

Differential pairs are a feature in Altium that allows the user to tell Altium if a pair of signals should be routed differentially. If this is the case, it will apply restrictions to keep the traces impedance matched to a value of the designers choice.

 Click here to expand...

The differential pair marker can be found in a few different menus, including the schematic toolbar and just right clicking anywhere in schematic.

A marker must be placed on each of the two nets that make up the differential pair. Additionally, each net must have a net label of the same name, one ending in “_N” and the other in “_P”, indicating “negative” and “positive”.

This is usually an arbitrary distinction, but depends on your circuit

The above image utilizes the “_P” and “_N” suffixes to establish they are the paired nets. See the below {X} section to learn more about the bus used on the right.

Once created in schematic, the exact impedance requirement is set using design rules. This can be set by using the design rules label mentioned in the above section or by adding it directly to the DIFFPAIR directive.

This requires having already setup impedance profiles in layout. Our project template will have a couple, but check out https://nerdocs.atlassian.net/wiki/spaces/NER/pages/156205136/Advanced+Layout#Impedance-Profiles for more.

“Advanced” Schematic Features

This section will encompass any features that we use frequently, but are beyond the scope of a basic introductory tutorial.

Variants

Variants are a way to indicate different manners in which a PCB may be populated with components for different use cases. For our purposes, they are generally used to indicate what components are DNP/DNI (Do Not Populate/Place/Install), which is useful in making sure that we don’t accidentally populate the wrong things when assembling boards.

 Adding Variants to a Project

Right Click on a Project in the Projects tab, and click Variants

At the bottom left of the Variant Management window, click on “Add Variant,” and enter an appropriate name. If you’re solely making the variant for tracking DNPs, then enter a name like “[Project name] Default Population”

You should now see your new variant in the Projects Panel. You can double click on a variant here to switch which variant is active:

To mark components as DNP, open a schematic sheet and click the tab that doesn’t say “Editor” at the bottom left of the view port. You should get a view of the schematic page with everything grayed out except for the components.

While in this tab, select a component to DNP, and right click it. Click Part Actions → Toggle Fitted/Not Fitted. The component should now show a large ❌ through it.

To return to normal schematic editing, simply click the Editor tab at the bottom right of the view port.

Busses

{talk about busses}

Impedance Matching

{talk about setting impedance in schematic and then link to layout since thats where you really define it}

Hierarchical Repeaters

{}

{More?}

{}

RETURN TO HOME PAGE: Altium Designer

  • No labels