Computer-Controlled
Machining

CNC workflow for a ceiling lamp

Project Timeline

Assignment Introduction

Computer Controlled Machining

For the Computer Controlled Machining week, the task was to design and manufacture a large object, approximately one meter in size, using a CNC milling machine.

Bill of Materials

Components used for the ceiling lamp

  • Spruce Wood (1200mm x 200mm x 36mm)

    Base material for the lamp body, milled in two parts and glued together.

  • Frosted Acrylic Sheet

    Diffuser plate for soft light distribution across the lamp.

  • Metal Plate

    Top plate for mounting and optional heat dissipation from the LED strip.

  • LED Strip

    Main light source with dimming and microcontroller compatibility.

  • Threaded Inserts & Screws

    Reusable connection between wood body, acrylic, and metal plate.

  • Dowels & Wood Glue

    Alignment and bonding of the two milled wood sections.

Software & Tools

Ceiling Lamp

Since we had just moved and urgently needed a ceiling lamp for the walk-in closet, I decided to make one. The plan was a nearly rectangular ceiling lamp with rounded corners, featuring a frosted acrylic plate to diffuse the light, which would sit above the acrylic.

For lighting, I am using an LED strip. This allows simple dimming and microcontroller control, occupies very little space, and produces minimal heat, which can be dissipated through the metal plate if necessary. The lamp was designed to measure around 1200 mm x 200 mm x 38 mm, keeping it flat against the ceiling. With this setup, all requirements for the lamp are met.

For this project, I used inexpensive spruce wood. In the future, I recommend using higher-quality wood, as spruce tends to splinter easily. Despite being widely available and cheap, it is not ideal for this kind of project.

Design

I designed the lamp in Houdini, keeping it fully parametric. This allows adjustments in the future if measurements change or if milling requires corrections. For example, the original design was slightly too large because I did not take the CNC offsets into account for screw fixing, so I quickly adjusted the file.

To make assembly and disassembly easy, I added threaded inserts with corresponding screws. These connect the metal plate to the wood and hold the acrylic plate in place. Thicknesses, offsets, and screw positions can all be modified parametrically.

Making Of

Milling Preparation

To prepare for milling, I imported the design into Fusion 360. Here I ran into the first challenge: Fusion 360 does not support N-gons (polygons with more than four edges). My Houdini model had to be converted into a mesh with 3-4 sided polygons using the Divide SOP (Surface Operator) in Houdini. This caused some loss of clearly defined edges, but allowed the model to import into Fusion.

Unfortunately, this was not my only issue. Fusion also requires solid bodies for milling operations. Unlike other software (for example Blender, 3ds Max, Rhino, and Maya), this type of 3D object does not use visible mesh segments, but only volume. I tried converting the object inside Fusion 360, but even after converting, the faces could not be selected reliably. Because of this, I recreated the object in Fusion using a parametric sketch and extrusions. This then allowed me to select every edge and face for milling operations.

Fusion 360 parametric sketch and extrusion setup
Fusion Design Reconstruction

Milling Operations

In Fusion 360's Manufacturing workspace, I set up the following operations:

2D Pocket:
Cuts out a recessed area. Start and end positions, as well as depth, are adjustable.
My Settings: 6mm Diameter Cutter, 3mm even Steps

2D Contour:
Cuts along a contour to separate parts from the material. Tabs are used to prevent the pieces from shifting during cutting. Start and end positions, depth, and tab placement are adjustable.
My Settings: 6mm Diameter Cutter, 3mm even Steps, 4mm Tab Width, 2mm Tab Height, 150mm Tab Distance

Bore:
Creates a spiral-like cutting path to create holes in the material. Start and end positions and depth are adjustable.
My Settings: 4mm Diameter Cutter, 12 Degree Spiral

Other important settings in the pop-up when selecting any of the operations above include selecting the tool, spindle speed, feed rate, and step depth.

For the tools, I used a configuration file with all available cutters in the lab already set up, but additional tools and custom parameters like spindle speed or feed rate can also be added in the tool section.

Step depth is typically set to half the diameter of the cutter (for example, a 6 mm cutter -> 3 mm step depth). Enabling "Even Steps" prevents leftover small cuts.

Fusion 360 milling operations overview
Milling Operations Overview
2D contour tab settings in Fusion 360
2D Contour Tab Settings
Create NC Program dialog in Fusion 360
Create NC Program
NC job export settings in Fusion 360
Export NC Job

NC File Export

Once all operations were defined, I exported the NC file by right-clicking the created milling setup and selecting "Post Process". NC files describe the CNC toolpath as coordinates and simple commands, such as turning the vacuum on (M8) or changing tools (described by a T followed by the tool ID of the CNC).

Fusion does not automatically add some commands (for example, vacuum start), so these must be added manually at the start of the program.

Milling

I transferred the NC file to our CNC machine, an EAS Versatil 2500. The vacuum system was engaged, and the board was secured using screws along the edges and a few in the middle cutout. I reviewed safety procedures and watched out for the emergency stops as well as fire extinguishers for the worst case. Once all precautions were in place, I started the milling process.

Board secured with screws on the CNC bed
Screwed Material Setup
CNC machine start and secured board
CNC Start

Post-Processing

After milling, the board had to be carefully removed from the bed. Tabs used to secure the lamp during cutting had to be cut first in the center, allowing the main piece to be freed. The remaining edges of the tabs could be easily trimmed with a sharp chisel. Afterwards I smoothed it using a router.

Close-up of milled tabs before removal
Tabs Close-Up
Cutting tabs to free the lamp body
Cutting Tabs

Because a lamp height of 38 mm in total could be challenging for the cutter, I milled it in two parts. The boards were then joined using dowel holes and a layer of wood glue. Multiple clamps ensured the pieces dried flat without gaps.

In the coming weeks, the electronics, acrylic, and metal plate will be added to complete the lamp and give it its final finish - stay tuned!

Gluing the milled lamp body parts
Glueing Lamp Parts
Clamping two lamp parts during glue drying
Clamping Lamp Parts

Project Files

Downloads

Houdini Project Files

Fusion 360 / Manufacturing Files

Start 0%