FRC team 5584. Est. 2014

 

 

Follow Our Progress

Keep updated with the team by following our social media channels. For exciting highlights videos and robot reveals, be sure to subscribe to our YouTube channel!

Read more

 

Robocamps

Come and join us at one of our Robo Camp workshops! Held at three locations across the Eastern suburbs of Melbourne. Register on our website now!

Read more

 

Our Sponsors

The companies that support our team to run each season and are helping us promote a bright future for STEM in Australia. 

Read more

 

2024 Season: Crescendo

  • 2024.ChampsREV
  • 2024.MRTAlliance
  • 2024.MRTDrive
  • 2024.MollyClimb
  • 2024.shoot
  • 2024.loading

2025 Season: Reefscape

  • 2025.load
  • 2025.ready
  • 2025.score
  • 2025.spin
  • 2025.cad
  • 2025.kickoff
  • 2025.prototype

This article describes how to generate one or more g-code files for transferring to the PC that is driving the CNC router.

NOTE #1: "Inventor HSM" is now known as "Inventor CAM"

Pre-requisites

Before commencing this article you will need:

Overview

The steps involved in this article can be broken into the following sections:

(a) create a baseboard part in Inventor

(b) create an assembly

(c) add parts to the assembly and mate them to the baseboard

(d) configure assembly orientation

(e) apply templates

(f) generate g-code

The sections that follow elaborate on each of these steps. The final sections provides some hints for troubleshooting and handling folded parts.

Create a baseboard part in Inventor

1: Launch Inventor

2: Select "New" > "New"

3: Select "Templates" > "Metric" > "Standard (mm).ipt" (note the "ipt" extension for a part)

4: Select "Create"

5: Select "Start 2D Sketch"

6: Left-click on the XY Plane

7: Select the "Sketch" tab then select "Rectangle" tool

8: Left-click on centre point then left-click in the top right quadrant

9: Select the "Sketch" tab then select "Dimension" tool

10: Left-click on top side of rectangle

11: Move mouse up then left-click again

12: Enter "600 mm" and select the green tick box

13: Select "View" tab then select "Zoom all"

14: Select the "Sketch" tab then select "Dimension" tool

15: Left-click on right side of rectangle

16: Move mouse to the right then left-click again

17: Enter "900 mm" and select the green tick box

18: Select "View" tab then select "Zoom all"

19: Check that all four sides of the rectangle are constrained

20: Select "Finish Sketch"

21: Select the "3D Model" tab then select "Extrude"

22: Enter "20 mm" then select "OK"

23: Select "File" > "Save As"

24: Enter file name (e.g. baseboard.600.900.20.ipt) then select "Save"

25: Select "File" > "Close" to return to the "Get Started" tab 

Create an assembly

1: Launch Inventor

2: Select "New" > "New"

3: Select "Templates" > "Metric" > "Standard (mm).iam" (note the "iam" extension for an assembly)

4: Select "Create"

5: Select "File" > "Save As"

6: Enter filename (e.g. "Assembly01.iam")

7: Select "Save"

Add parts to the assembly and mate them to the baseboard

1: Launch Inventor

2: Select "Open"

3: Navigate to the assembly that you just created (e.g. "Assembly01.iam")

4: Select "Open"

5: Select "Place" > "Place"

6: Navigate to and select the ipt file for the baseboard part that you just created (e.g. baseboard.600.900.20.ipt)

7: Select "Open"

8: Left-click once on screen to place the baseboard part then select "Esc" to exit the place tool

9: Select "Place" > "Place"

10: Navigate to and select the ipt file for a part that you want to cut (e.g. the "my.first.bearing.plate.ipt" part that you made in the "Create a part" section above)

11: Select "Open"

12: Left-click once anywhere to the side of the baseboard to place the part that you want to cut then select "Esc" to exit the place tool

13: Select "Constrain"

14: In the "Place a Constraint" window select "Assembly" tab

15: Set Type to "Mate" and Solution to "Mate"

16: Left-click on the top surface of the baseboard

17: Left click on the top surface of the part to be cut

18: In the "Place a Constraint" window select "OK"

19: This will constrain the surfaces of the part to be cut and the baseboard

20: If you view the baseboard from the side you should see that the part to be cut is sitting on top of the baseboard

21: If you left click on the part to be cut you will find that it can still be moved across the surface of the baseboard

22: Left-click on the baseboard part to select it

23: Right-click and and select "Grounded"

24: With the baseboard as an upright rectangle, move the part to be cut to the bottom left corner of the baseboard

25: Left-click on the part part to be cut to select it

26: Right-click and and select "Grounded"

27: You will now find that neither the baseboard or the part to be cut can be moved and they are locked in position

28: Select "File" > "Save" to commit your changes

Configure assembly orientation

1: Select "CAM" > "Setup"

NOTE: if there is no CAM tab and you have just installed Inventor HSM (see note#1) then restart your PC. If you still have no CAM tab then check the instructions in the pre-requisite list above carefully.

2: In "Stock" tab set Stock Offset Mode to "No additional stock"

3: In "Setup" tab make sure Stock point icon is selected

4: Click on stock point (the black dot) on the top of the bounding box front left corner, this sets coordinate 0,0,0 (the bounding box is the 600 mm x 900 mm x 20+3 mm volume), you may need to zoom in on the front left corner of the baseboard to achieve this

5: We need Z,X,Y to be the same as the machine in our case Z+ is vertically up, X+ is to the right and Y+ is front to back

6: Set this via the Model Orientation in the Setup tab

7: Set orientation to "Select Z axis/plane & X axis"

8: Select "Z axis" icon and tick the "Flip Z axis" (if you need to)

9: Select "X axis" icon and tick the "Flip X axis" (if you need to)

10: If you are unable to get the orientation described in step 5 above then retry the last two step with an alternate orientation (e.g. "Select Z axis/plane & Y axis" or "Select X and Y axes")

11: When you have the orientation described in step 5 select "OK"

12: Select "File" > "Save" to commit changes

Apply templates

NOTE: these instructions assume you are applying templates to the part created in the pre-requisites, if you are cutting a different part then you will need to tailor these instructions, if it is not working for you then perhaps work through this process with the sample part first to familiarise yourself with the process

We will do the mounting holes first ...

1: Right-click in the CAM tab on the left of the screen

2: Select "Create From Template" > "Drill Helix" (if the hole is the same size as the bit e.g. 4mm on the CNC then select "Drill Plunge" here instead)

3: Select the "Contour" item just created in the Assembly tree on the left of the screen

4: Right-click and select "Edit"

5: On the part to be cut, left-click on the circle at the BOTTOM of each 5mm hole

6: Select "OK" on the left of the screen

Now lets do the bearing hole, this needs to be acurate so we do this with two contours (one contour for roughing out and a second contour for finishing)

7: Right-click in the CAM tab on the left of the screen

8: Select "Create From Template" > "Pocketing STEP 1 Roughing"

9: Select the "Adaptive" item just created in the Assembly tree on the left of the screen

10: Right-click and select "Edit"

11: On the part to be cut, left-click on the circle at the BOTTOM of the bearing hole

12: Select "OK" on the left of the screen

13: Right-click in the CAM tab on the left of the screen

14: Select "Create From Template" > "Pocketing STEP 2 Finishing"

15: Select the "Contour" item just created in the Assembly tree on the left of the screen

16: Right-click and select "Edit"

17: On the part to be cut, left-click on the circle at the BOTTOM of the bearing hole

18: Select "OK" on the left of the screen

And lastly, the perimeter ...

19: Right-click in the CAM tab on the left of the screen

20: Select "Create From Template" > "Perimeter STEP 1 Roughing"

21: Select the "Contour" item just created in the Assembly tree on the left of the screen

22: Right-click and select "Edit"

23: On the part to be cut, left-click on any BOTTOM part of the perimeter

24: Select "OK" on the left of the screen

25: Right-click in the CAM tab on the left of the screen

26: Select "Create From Template" > "Perimeter STEP 2 Finishing"

27: Select the Contour item just created in the Assembly tree on the left of the screen

28: Right-click and select "Edit"

29: On the part to be cut, left-click on any BOTTOM part of the perimeter

30: Select "OK" on the left of the screen

And don't for get to save . . .

31: Select "File" "Save"

Generate g-code

We will actually create two g-code files, one for "run01" to cut the mounting and bearing holes and a second for "run02" to cut the perimeter.

Having separate runs for the holes and the perimeter allows us to cut the holes and then

1: Hold the CTRL button and left-click on each of the first three items under "Setup1"

2: Right-click on any of the selected items and select "Post Process"

3: In the "Post configuration" section make sure "BoXZY (Grbl) / omio" is selected

NOTE: if the "BoXZY (Grbl) / omio" is not listed then check that you have followed all of the instructions in the pre-requisites listed above.

4: Put a sensible name in the "Program name or number" field (e.g. Assembly01-Run01)

5: Untick the "Open NC file in editor"

6: Select "Post" then "Save" (this will save the nc file in default location, you may want to navigate and save the nc file elsewhere)

7: Left-click in the CAM tab on the left of the screen

8: Hold the CTRL button and left-click on each of the last two items under "Setup1"

9: Right-click and select "Post Process"

10: In the "Post configuration" section make sure "BoXZY (Grbl) / omio" is selected

11: Put a sensible name in the "Program name or number" field (e.g. Assembly01-Run02)

12: Untick the "Open NC file in editor"

13: Select "Post" then "Save" (this will save the nc file in default location, you may want to navigate and save the nc file elsewhere)

14: Zoom out so you can see all of the part that is to be cut

15: Select all items under "Setup1"

16: Select "CAM" > "Simulate"

17: In the "Display" tab Tick the "Stock" section then press the play button on the main screen

18: Observe the simulation to confirm that it is behaving as expected ...

19: Select "File" > "Save" to commit any changes to the assembly

Troubleshooting

Problem #1: when you run the simulation you notice that there are more passes than you were expecting 

Solution #1: this can be caused if you skipped the step above where we set Stock Offset Mode to "No additional stock". The additional stock will cause the top of your material to be higher than the  physical top. As an example, 1mm additional stock with 3mm actual stock makes total stock height 4mm, it will take 3 passes at 1.5mm depth instead of the two you were expecting.

Problem #2: if you need to cut folded parts they need some additional processing before you can add to the baseboard assembly

Solution #2: Suppose we have an existing folded part (e.g. 5584_0130_PO_S_3_Q1.ipt) ...

1: Open a new part "File" > "New" > "Templates > "Metric" > "Sheet Metal (mm).ipt"

2: Select "Manage" > "Derive"

3: Navigate to the existing part (e.g. 5584_0130_PO_S_3_Q1.ipt) and select it then "Open"

4: In the "Derived Part" window select "OK"

5: Select "Sheet Metal" > "Unfold"

6: In the "Unfold" window select "Stationary Reference (A)"

7: Left mouse click on the area of the sheet that is to remain where it is

8: In the "Unfold" window select "Add All Bends" then "OK"

9: Select "File" > "Save As"

10: Enter a suitable name for the unfolded derived part (e.g. 5584_0130_PO_S_3_Q1_UNF1.ipt)

The derived part can now be placed on the baseboard assembly as described in previous sections. Note that you need to take care when selecting the perimeter to apply the roughing and finishing templates as the perimeter will consist of multiple sections with breaks at the start and finish of each fold so you must select all sections that make up the entire perimeter. Inventor HSM (see note#1) is intelligent enough to handle this as a continuous perimeter when the g-code is generated. Definitely don't skip the simulation step described above when processing folded parts!