Archive for May, 2012

3D Laser Cutting With a 2D System

A typical laser cutter can make a precise 2D cut.  With rastering it is possible to etch the surface to add labeling.  However if the power of the laser can be finely controlled it is possible to make engineered depth cuts such as trenches or angled slopes.  This allows for laser cutting complex geometries such as a dovetail joint.

For this experiment a simple dovetail jointed box was modeled in Solidworks.

Although the long size of the box can be cut using typical methods, the end plates cannot.

Both parts where placed into a solidworks drawing which was then exported to *.pdf.  This was then imported into Corel Draw 5.  The initial drawings appeared as shown below.

The lines to be cut were converted to “hairline” and RGB code <255,0,0>.  The Raster layer is defined by the gray-scale where back is 100% and white is 0%.  The power of the laser at 100% is set in the printer’s cut settings when the part is ready to be printed.  In this case, a gradient was drawn into the areas needing a depth cut.  The gradient allows for an angled cut between two particular depths.  The colors used and the number of passes to be completed were determined using a sort of look-up table.

Before this experiment, a set of colored squares were rastered into a material sample.  This was then repeated with two and three passses.  When selecting colors for the end plate cutting, the row that could reach the proper depth was selected.  In this case, the three-passes row was used with black at one end and a dark grey at the other.  This would result in a cut that was three black passes deep at one end and three dark-grey passes at the other.

 

Shown in the laser cutting software below, the final design was then sent to the laser. For the first two passes, the vector cutting was set to be skipped.  This allowed the depth cutting to be finished before the laser cut out the final outline.

Finally the parts were removed from the laser cutter and the box shown below was assembled.  Two notable characteristics of the unglued box are its strength and its ease of assembly.  Even without glue the box doesn’t deform and tends to hold its shape.  Assembly was easier than just a tabbed box because once a joint was put together it had limited degrees of freedom about which to move.

Although this method can be time-consuming to setup, the final result creates good joints useful in engineered parts.

Servo Sin Wave

Automatic code generation is a powerful tool that when combined with Simulink promises important benefits to students and highly complicated applications alike.  Mathworks distributes an Arduino Blockset for Simulink.  The Arduino platform is a desirable to use because of its simple architecture and available hardware.  These hardware options include the ArdupilotMega (APM) which includes sensors and pinouts that will make it easier to integrate into a future aerial vehicle.

While the 2012a version only requires the base Matlab and Simulink packages, NCSU does not currently provide the 2012a version to students.  Instead the 2011a version was used since it was available.  It is not expected that there will be problems using the work done with 2011a in the 2012a release.

The base Arduino blockset includes blocks for Analog and Digital I/O as well as serial communication.  To take full advantage of the capabilites of the APM, additional blocks for SPI, I2C, PPM, and Servos are needed.  Development of a servo blocks has been the focus of this last week.

  The new blocks, shown in blue, allow for the configuration and control of servos attached to the APM.  An interesting note  is that although the APM only has 8 servo lines broken out on the side, there are an additional 3 lines (PL3, PB5, and PE3) that can be configured to output PWM commands. These lines are broken out from the APM base-board, but are not available on the sensor-shield “Oilpan”.

With just the blocks from the base, shown in yellow, and the new servo blocks it is already possible to access quite a few of the APM’s functions.  The demonstration program shown above commands two servos through a sin wave motion.  Data is read from the serial port allowing for the functionality of Servo 1 to be switched between sin wave and center position.

Return top