Week 7 - Computer-Controlled Machining

Assignment

Individual assignment

make something big

Group assignment

test runout, alignment, speeds, feeds, and toolpaths for your machine

Link to group page

Process

Idea & Sketching

To make my weekly assignment I wanted to design something that would be fun and exuberant, since most of the works that I’ve seen from the previous years usually are always about furnitures (to be honest, especially in Fab Lab situations, these works are importante and useful, but our lab is already stuffed with chairs, shelves and tables). It’s been a while that I had this idea of crafting a musical instrument and this module seemed the perfect occasion to make one.

A big one.

An upright bass.

Personally, I never player an upright bass, and for sure never ever built a custom instrument, since I always regarded it as a very complex topic which requires years of craftmanship skills and experience. But after some thoughts I realized that with the raw material I would be provided (a large OSB board) and my lack of experience with the tools to be used, I could never expect a remotely professional result, but I could easily design a ready-made assembling kit for a cheap but functional instrument that could be used for learning purpose (both in machine-controlled manifacturing and bass playing) and introduce to the vast world of luthery.

I knew it wouldn’t be the easiest task, that’s why in my early plans I reduced the instruments from 4 to 2 strings and avoided to render all the complex and harmonius shapes of a proper double bass.

notes

Instead, what I wanted to try was to design very raw and barebone instrument that could remind its humble making process and materials, with a farraginous, incomplete, ragged, almost steampunk design. In honor to its most prominent element I gave it the working name of OSBass.

Designing & assembling

On Onshape I started to draw the sketch of all the elements that would constitute the instrument. To be sure to make it easy to adapt my design to any “just in case”, I set up every single dimension as a parameter that could be easily checked and changed, although I ended with a very big list of variables.

sketch

After sketching every component I extruded all the elements with the width of the OSB board and saw a first result of my design process.

parts

This design had some peculiar features that needed indeed to be tested - such as the strength of joints or the usefulness of clamps I intended to use to keep many pieces together - and there are many elements that I’ve drawn only after personal consideration and evaluation - like the three-piece neck, the many offsets for the strings or the tuning system provided by the moving bridge - but before testing these parts, I made use of an important feature of Onshape, called Assembly that could show me if I considered all the connections properly.

Essentialy, on the Assembly tab, you import your pieces from the Part Studio and assign a specific point to either a plane, a side or a corner in all the parts you’re interested in joining with the Mate connector command and then you proceed to couple your mates with the proper type of connection you want to create. In my case, I used the Fastened mate command and this automatically allowed the various parts to stick together.

mates

In little time I was able to see an assembled model of my upright bass and see if there was any issue regarding his structure.

assembly 1

assembly 2

Specifically, this helped me a lot to fine-tune certain values of little parts, such many non-trivial joints or the headstock of the instrument, that I could see better only with all the elements put in their right place.

joint

Crafting a cardboard prototype

A couple of days before the end of the assignment we had the bad news that the OSB boards that we were supposed to use would not arrive in time. This crushed my desire to akwardly play my custom instrument in front of Neil Gershenfeld, so I’ve chosen instead to craft a cardboard prototype to see if my design could at least pass a proof of concept.

For this reason I used another special feature of Onshape, being it the ability to version the project and make different branches to work separately on different features.

versioning

In my case, what I needed to do in my branch was to change many parameters to rescale significantly the design and remove certain parts that wouldn’t be needed in cardboard prototype (string holes, bridges, etc.).

Having designed a full parametric project from the first step was significantly important, as well as having a consistent and practical name taxonomy that could easily and intuitively make me reach all the variables I wanted.

Nonetheless, when I rescaled my model, many, too many, errors appeared in my design.

faulty design

This issues occured not because I set up my parameters badly, but because I set up the costrains of the design badly. While redrawing the sketches of this branch I found out that many of the costrains that I used in the best case useless, in the worst detrimental, and with parameters too off a certain range the overall design would get flawed.

After fixing it all up again and resizing the model, I exported the Onshape project as a SOLIDWORKS file. This might seem strange, since Onshape allows easily to export DXF files, but it allows you only to export them for single parts. So if you have a project with several parts you either download many different files and the joining them together, or you use a gimmick like I did. I opened the downloaded SOLIDWORKS file and the saved it as a DXF file. This command allows you to choose exactly which faces to export from your project’s parts, and then it assemblies them in a single DXF file. This was a very time saving features, and surely a big lack from Onshape.

I opened my DXF file on Illustrator to adapt it for our laser cutter and the I took a large cardboard (we have a looooot of cardboard in the lab recovered on a daily basis from parcel boxes, stacking up in huge piles, but no one ever uses it) to start the cutting process.

lasercut

The result was incredibly flawed. The various elements simply would not stay in place.

faulty 1

faulty 2

This was because of two things:

  1. I forgot to put a kerf value on the model parameters, and so certain points in the joints were a bit loose.

  2. When I opened the DXF on Adobe Illustrator, it’s possible that I have unvolontarily accepted a conversion that resulted in a scaling of the whole file. In fact, the overall size was reduced by almost half.

After some reassesments and process corrections, I was finally able to produce a valid DXF file that could make me cut a proper model.

cardboard 1

cardboard 2

Preparing to mill

Once the osb arrived at our lab I was eager to cut out my instrument, but first I had to delve into the world of Aspire by Vectric. Once a supposedly wise man said that he couldn’t understand people that weren’t preparing their cutting files in front of the CNC machine. This is an interesting point of view with an arguable validity, but I surely learned there are many ways to prepare a milling file, and each one can be good for a different reason, but comes clear as soon as you get closer to activating your machine is that there are many technical rules and aspects to keep in consideration that lie outside the mere model design. Luckily, Aspire is designed to keep you focused on many of these rules as long as you understand to obey them.

Being that Aspire also features some editing tools, once opened the DXF file, I took the personal duty to align and juxtapoint all the shapes I was going to cut it the least surface I could figure out, so to save the most material possible out of my board.

overview

As it is possible to see in the picture above, I also provided several circles on the outer border that are nothing more the pockets to slot washers that will hold the osb to the sacrifical layer of the machine.

The next step was to create the toolpaths. Essentially I needed three toolpaths: for the pockets inside the pieces, for the outline of the pieces and for the washers’ slots.

Once you’ve selected the vectors you want to be associated to that cut, you can choose the tab on the top-left of the window called Toolpath to set all the parameters necessary to produce the file to prompt to the CNC.

Aspire gives you an overwhelming quantity of variables in this section, most of which are declinations and tunings for the kind of result you want to achieve. To my purpose what was really necessary to define properly in the first place was the tool and its parameters.

tool

I had at my disposal a 14 inch 2 flutes flat drill bit, for which most parameters (seen in the picture above) were already defined and tested, but there was one variable, the Feed Rate, which required a bit more care and investigation.

This value represents how fast the spindle will travel over the milling surface, and if badly set this speed can be crucial for both tool and the milled material. To calculate it properly, there’s a formule to use:

Feed Rate = Spindle Speed * Number of Flutes * Chip Load

If spindle speed and number of flutes were already known what I had to find was the chip load value associated with my work. This number stands for the amount of material that is removed in a given time by the bit and it’s something related also to the kind of material you’re using. There are several charts on the web that can help you find out the proper chip load value for your work and in the end I confronted the official Feeds and Speeds Charts and another technical datasheet by ShopBot. From the charts it resulted that any value between 0.002 and 0.009 should have worked, and so I ended using an average value 0.005.

In this way, the result of the formule was 120 inches per minute, which we’ve been suggested to at least divide by 2 since this value usually represents the top-most extreme the bit can handle with the given material - which can surely mean tool wearing and breaking. For the sake of safety I ended using a value for Feed Rate of 50 and Plunge Rate of 20 (which is generally suggested to be at least the half of Feed Rate).

After setting the tool, I needed to define the number of passes for the tool to accomplish to cut through the material. Aspire provides a separate window onto which you can define this process in different way, the easier being defining simply the number of passes. The program will divide the thickness of the material by the this number and you get the depth the drill will dig at every pass.

passes

In my case, I opted for 7 passes of 2.657mm each.

Another important feature of Aspire is that of making you set tabs over the cutting line. Simple as clicking over the drawing, you can set up as many tabs as you want in you model, meaning small brdiges that won’t be cut away in the design so that the pieces won’t warp or twist or hurl away during the milling.

tabs

In my case I set at least 1 tab for every side of each piece, 2 for the longer ones.

There are many other parameters you can set during the creation of a toolpaths that are essentially fine-tunings and are more suitable for expert users and fine materials. Being me the maker and osb the material I used, the only other particularities of my toolpaths were:

  • Outline - The cut was done from the outside, meaning that the bit routes externally to the design.

  • Pockets & Holes - The cut was done from the inside, otherwise the bit would have kerfed the pieces.

  • Screwholes - These are the slots for the washers, so they are only 1mm deep cuts over the surface.

In the right-top corner of the Aspire window, there are two icons that allows you to check both direction of cut (with arrows) and material consumption (with purple highlights) of your routes, which are very useful in cases like mine where I had to check that kerfs weren’t ovelapping.

routes

Once all the toolpaths were created I saved as sbp files and moved on to the CNC machine.

Preparing the machine

Using a CNC machine like the ShopBot in our lab requires primarily two things:

  • Safety

  • Patience

Lacking of those less can result in the best-case scenario in a waste of material, in the worst-case scenario in severe damaging of the machine, the building and the people involved. So I armed myself with the most I have of both and proceeded to operate the machine.

safety Patiently concerned about safety

After placing my osb over the machine, following the procedures exposed in the group assignment, I installed the bit on the spindle, turned on the machine, started the control application and zeroed all the axis.

zero x y

zero z

The next thing to do was to start the Part File for the screwholes, and so from the Command Consoled of the control application I launched the File -> Part File Load and primpted the Screwholes.sbp file.

start cutting

I was asked to confirm the operation and then the CNC machine started to dig the slots for the washer all over the board. After a couple of minutes the work was done, I drove away the spindle, turned off the machine and screwed the board to the sacrifical layer.

screw this

Once applied 6 pairs of washer and nail the board was steady and still and I was ready to launch the final job.

Machining and finishing

First I launched the cut regarding holes and pockets inside the various parts, the moved to the outline of all the parts.

milling

This process required almost 3 hours to finish, and everything in the meantime went smooth and fine. At the end, I carefully removed the whole board from the machine and with the aid of hammer and chisel started to removed all the tabs from their frame.

out of frame

Since OSB is material highly prone to splintering, I finely sanded every single part until everything was smooth as a calf’s skin.

sanding

Then I proceeded to assemble all the pieces according the structure I designed.

good-result

Result

This assignment has a sad epilogue…

assembling

When I was almost done in assembling my amazing upright bass, with my mind already busing on thinking on the best solution for the strings’ material, I left the almost complete instrument self-standing in the open air unattended for a lapse of time of less than 5 seconds. In that little span, a jet of wind hit the bass making it fall on the ground and crash in several, unrepairable pieces.

broken-dreams

I was thrifty enough to have saved a full half of my board for cases like this one, and in the meantime I had to finish other tasks I was dragging and chose to wait some time to mill again the broken pieces.

Unfortunately, I forgot to mark that board of mine as necessary and untouchable, leaving it at the mercy of the other people in the lab. And that’s exactly what happened: that board was used for a different project and I was left with no more material to use.

A small consolation came from the fact that I already had a proof of concept for my model - having assembled it for the most of it - and soon as I’ll get my hands of enough OSB I’m sure I’m going to mill again the pieces I’m missing. But until that day, I remain with a big, silent hole inside my upright bass-less soul…

Here’s the links the file of this assignment:

Gist & Further development

There’s a certain skill of abstraction that needs to adopted in order to figure an articulated, complete, big object out of a plain board of material, as well as there’s a certain amount of splinters you have to extract from your hands before understanding how woods behaves, and similarly there’s an amount of hours of pure noise at 120 dB that you have to bear before you properly understand how a CNC machine really works.

CADs and CAMs can help and ease this jobs to a great length, but resigning yourself to the idea that hours, resources and trials can be wasted at any attempt involving great machines is the best way to learn how that even failed works can be occasions for learning.

The ShopBot is an immensely versatile machine that I would really love to know and use more for the most disparate purposes (furnitures, tools, machines, etc), but its ineherent way of working requires a devotion that cannot be defined by time constraints, so I’ll surely use it again when I’ll be sure to have the time and patience to properly operate it.

Tools and software used