# Cross Brace

This is how to constrain our cross brace, this will be done in our `! Chassis.iam` file.

## Cross Brace

For this robot we will have two cross braces, both aluminum 2x that are 30 holes long. We can find these in `Structure/C-Channels/Aluminum 1x2x1/1x2x1x30 Aluminum.ipt`. We will also need a 2.5" standoff from `Structure/Standoff.ipt`, and one 0.5" and 0.375" spacer from `Motion/Spacers/Spacer (Nylon) .500 OD`.

The two cross braces will have two standoffs going between them, with a spacer box inside to make sure nothing can bend.

![Gathered Parts](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLm7DDwsaU0ySrj8vb%2Fimage.png?alt=media\&token=bed450d5-e289-4753-ad13-e760e4312b84)

### Standoff Constraints

We will start by constraining the standoff and spacers. I'm going to turn off visibility on both 2xs to make it easier to work.

After constraining the spacers to each other with an insert constraint, we are going to use an insert constraint to connect the spacer to the standoff, but with an offset of 0.063". This is the thickness of metal, so nothing will clip once this gets constrained to the drive.

![Insert Constraint between Spacer and Standoff](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLm_R4Zs1jFUbxpVeb%2Fimage.png?alt=media\&token=b9f948c1-0617-48f3-9e27-a580babc2ce7)

We have a completed standoff brace.

![](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLnxnALq8nE_-Bcz0c%2Fimage.png?alt=media\&token=e2e583a2-a0db-406d-9346-3699b08d6aa5)

Now we can reveal the drive channels from the model browser.

![Toggle Visibility on Cross Braces](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLnNtgs9P7Ti_gQdFn%2Fimage.png?alt=media\&token=a43c22d3-0651-46c0-bb47-ba5e7bbdc6cf)

Before constraining to the drive channels, we need to **temporarily** ground one of them to make it easier for us to constrain.

![Enable Grounded on Component](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLoViIzGMwp6iIW6XE%2Fimage.png?alt=media\&token=17461021-5f0a-43ac-9412-6b6ee64d339e)

Now we can constrain the standoff assembly to the drive. To make this easier, we are first going to vanish the spacers by selecting all of them with `ctrl+left click` and pressing `alt+v` on our keyboards.

![Selecting all Spacers](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLvdCiQRCcgHFBKmvf%2F-MfQ5_QK3RY_ba00z21s%2Fimage.png?alt=media\&token=33aee4e9-dc5b-4edf-a7b1-5b03b80b962c)

Then we will use an insert constraint between the standoff and the c-channel.

![Insert Constraint between Standoff and C-Channel](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLvdCiQRCcgHFBKmvf%2F-MfQ5tYpHPKhFL0vjfxC%2Fimage.png?alt=media\&token=bf239a62-50a5-4d89-b0b2-53101b644808)

And one more insert constraint on the other side.

![Insert Constraint between Standoff and C-Channel](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLvdCiQRCcgHFBKmvf%2F-MfQ63BOwVoQPP0Zs9g-%2Fimage.png?alt=media\&token=5f48b55e-ace3-46ed-9afe-4b2161f7ace8)

Now that the standoff is constrained, we can unvanish the spacers by going to our model browser and selecting all of the spacers with `ctrl+left click` and pressing `alt+v` on our keyboards.

![](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLvdCiQRCcgHFBKmvf%2F-MfQ6TdP4kgbDo6oelX-%2Fimage.png?alt=media\&token=610933a1-6150-458b-a5b9-d8bf464b2c85)

The ungrounded channel is only constrained to the grounded channel at one point and can rotate. To fix this, we use a mate constraint between two other holes.

![Mate Constraint between C-Channels](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLp8oYvyym1BcQDJyY%2Fimage.png?alt=media\&token=be394065-36a1-45dc-963d-301d64818cb4)

Now are cross braces are fully constrained to each other, and we can unground the grounded c-channel.

![Ungrounding C-Channel](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLpPgvHB1OslNBfDjS%2Fimage.png?alt=media\&token=d209cad3-2ca3-4715-9e69-362f48c492a0)

### Constraining to Origin Plane

First we will use a flush constraint between the top one of the cross braces and the `XZ Plane`. We can constrain to the `XZ Plane` by opening the `Origin` folder in the model browser, and selecting `XZ Plane`.

![Flush Constraint between C-Channel and XZ Plane](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLpmPDfMCMg2RM_gR7%2Fimage.png?alt=media\&token=96de62d6-ec34-4a86-82ff-4838e7dbb53e)

We can use the `YZ Plane` like our mid plane from the basic tutorial. Using a flush constraint, select the edge of the c-channel and the `YZ Plane` and offsetting by 15/2, this origin plane becomes our midplane.

![Flush Constraint between C-Channel and YZ Plane](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLqJmpD1lX2EFfx9s4%2Fimage.png?alt=media\&token=a5f8484b-3226-4e8f-9aaf-9e9fbcff6c0c)

Finally, we want the `XY Plane` centered between our cross braces. We will use another flush constraint, selecting the flange of the c-channel and the `XY Plane`.

![Flush Constraint between C-Channel and XY Plane](https://3510336827-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7yGVyBrcpSR8SDSikj%2F-MfLB3W0WvIijQbUXpE1%2F-MfLr-V6s-aYnZg2Y5Jk%2Fimage.png?alt=media\&token=aee41e95-e727-4a16-a87d-b65a536643c2)

The center of our cross brace is now (0, 0), and the origin planes can be used to mirror!

{% hint style="info" %}
Remember to save!
{% endhint %}

## Contributors to this Article:

* Jess - EZ
