Welcome! Log In Create A New Profile

Advanced

developing software for rapid prototyping applications

Posted by sun2407 
developing software for rapid prototyping applications
December 30, 2008 11:32PM
Hi,

I'm trying to build a new software package that will run with the RepRap machine rather than using JAVA. I was just on the The RepRap host software page located here: [dev.www.reprap.org]

and I found some instructions on how to construct the software. Starting with these basic steps:

1. Reading in 3D objects
2. Slicing the objects to make each build layer
3. Organizing a slice into coherent 2D geometry
and so on.....

Programming is not one of my strong suits but I'm really interested in developing another software package that would run on the RepRap.

Does anyone out there know of any textbooks, articles, whatever that goes into some detail of developing software for rapid prototyping applications?

I googled online but was unable to find something..

thank you

sun2407
Re: developing software for rapid prototyping applications
December 31, 2008 12:04AM
Well thats most defiantly a research project. The link you listed does go into some detail.

Since this is a new subject/technology there are not going to be a lot of primers out there. Most of the technology in this space has not been open source but part of commercial turnkey solutions.

I suggest using the suggested software, studying, contribute to it before striking out on your own.

I have been programming for 25+ years and this also all new ground for me also. The old dog is trying to learn new tricks!
Re: developing software for rapid prototyping applications
December 31, 2008 12:25AM
It looks like I have to take it one step at a time. But if you do come across any material/books/articles please do share.

thank you

sun2407
Re: developing software for rapid prototyping applications
December 31, 2008 12:44AM
sun2407 Wrote:
-------------------------------------------------------
>
> Does anyone out there know of any textbooks,
> articles, whatever that goes into some detail of
> developing software for rapid prototyping
> applications?
>
> I googled online but was unable to find
> something..
>
I'm not surprised. You'll find a few articles here and there on rapid prototyping. Most of the software that runs rapid prototyping machines, however, is proprietory.

By the time there are textbooks published about what we're doing, we'll be doing something else.

smiling bouncing smiley


-------------------------------------------------------

Hell, there are no rules here - we're trying to accomplish something.

Opportunity is missed by most people because it is dressed in overalls and looks like work.

Thomas A. Edison
Re: developing software for rapid prototyping applications
December 31, 2008 11:13AM
Here's some quick info. There is much more out there. If you get either of these two books you will get a wealth of information from the bibliography sections.

***Books***
Rapid Prototyping--Laser-based and Other Technologies
[www.amazon.com]

Rapid Prototyping: Principles and Applications (2nd Edition) (Paperback)
[www.amazon.com]



***Articles in Specific Areas***

**Part Orientation and Support Generation:
Masood, S.H., W. Rattanawong and P. Iovenitti (200). Part building orientations based on volumetric error in fused deposition modeling. Int. J. Adv. Manuf. Tech., Vol. 16, pp. 162-.

Masood, S.H. and W. Rattanawong (2002). A generic part orientation system based on volumetric error in rapid protytyping. INt. J. Adv. Manuf. Tech. Vol. 19, pp. 209-216.

**Model Slicing (uniform layer thickness):
Luo, R.C., Y. Ma (1995). A slicing algorithm for rapid prototyping and manufacturing. Proc. IEEE Int. Conf. Robotics and Automation, IEEE, pp. 2841-2846.

Liao, Y.S. and Y.Y. Chiu (2001). A new slicing procedure for rapid prototyping systems. Int. J. Advanced Manuf. Tech., Vol. 18, No. 8, pp. 579-585.

**Model Slicing (variable layer thickness):
Tata, K., G. Fadel, A. Bagchi and N. Aziz. Efficient slicing for layered manufacturing. Rapid Prototyping J., Vol. 4, No. 4, pp. 151-167.

Tyberg, F. And F.H. Bohn (1998). Local adaptive slicing. Rapid Prototyping J., Vol 4, No. 3, pp. 118-127.

**Tool Path Generationsad smileyzigzag tool path):
Stratasys, Inc. (1997). QuickSlice and FDM Manuals, Stratasys, Inc.

Wasser, T., A. Dhar and C. Jayal and Pistor (1999). Implementation and evaluation of novel buildstyles in fused deposition modeling. Proc. 10th Solid Freeform Fabr. Symp., The University of Texas at Austin, Austin, TX, pp. 95-102.

Qiu, D., N.A. Langrana, S.C. Danforth, A. Safari and M. Jafari (2001). Intelligent toolpath for extrusion-based LM process. Rapid Prototyping J., Vol 7, No. 1, pp. 18-23.

**Tool Path Generationsad smileycontouring and spiral paths):
Crawford, R.H. (1993). Computer aspects of Solid Freeform Fabrication: Geometry, Process Control, and Design. Proc 4th Solid Freeform Fabr. Symp., The University of Texas at Austin, Austin, TX, pp. 102-112.

Farouki, R.T., T. Koenig, K. Tarabanis, J.U. Korein and J.S. Batchelder (1995). Path planning with offset curves for layered fabrication processes. Journal of Manufacturing Systems, Vol. 14 No. 5, pp. 355-368.

Beaman, J.L., J.W. Barlow, D.L. Bourell, R.H. Crawford, H.L. Marcus and K.P. McAlea (1997). Solid Freeform Fabrication: A New Direction in Manufacturing. Kluwer Academic Publishers, London, UK.

Yang, Y., H.T. Loh, J.Y.H. Fuh and Y.G. Wang (2002a). Equidistant path generation for improving scanning efficiency in layered manufacturing. Rapid Prototyping J., Vol 8. No. 1, pp.30-37.

Demented
As you only intend on importing 3D objects and not creating them in your application I would recommend 3D system .slc file format. Rhino supports exporting to .slc and takes care of all your slicing.

I have wrote a simple VB.net app that churns out Gcode from .slc files. Just need to sort out filling in the boundries with a hatch. If any one is interested?
Re: developing software for rapid prototyping applications
January 01, 2009 06:20PM
Sorry forgot to ask........

Has anyone been able to fill an existing .gcode with skeinforge?
if so please tell me how!!!

Thanks
Mike
Re: developing software for rapid prototyping applications
January 01, 2009 06:38PM
Hi Michael,

If you have the code and documentation I would love to see how you are doing this.

thank you
sun
Re: developing software for rapid prototyping applications
January 01, 2009 06:48PM
Well the code is looking at me right now in Visual studio, It works well and even a large file only takes seconds to process.

Firstly I found some code to decode the .slc format into a nice ASCII format, but was C++ so took me a while to make it usefull then I just parse that with a VB app and out comes G Code!

Do you have a G-Code viewer or Mach installed, If so look at

[www.mickduffin.com]

as you will see its spot on (for my app) M codes can be changed to suit machine (Mine is not RepRap). How ever the GCode is only of the boundry of a contour it needs filling.
Re: developing software for rapid prototyping applications
January 01, 2009 07:02PM
Have a look at [rapid.lpt.fi]

Was originaly intended to be the industry standard in RP.

Almost all the information you need to use .slc

Mike.
Re: developing software for rapid prototyping applications
January 02, 2009 03:06AM
sun2407, don't forget to check out Enrique Perez's Skeinforge, a RepRap driver written in Python.
[reprap.org]
I'm pretty sure it uses Adrian's code to slice a 3D object into layers.

Also check out cam.py from the fab lab folk. Documentations appears to be orally transmitted from user to user.
[web.media.mit.edu]
[fab.cba.mit.edu]
Re: developing software for rapid prototyping applications
January 02, 2009 04:11AM
Hi Micheal,

Thanks for pointing out the slc format and making a gcode converter!

I see the format description, but don't see the slc to ascii converter or the ascii to gcode converter, could you please post a link to both converters? In general since ascii is much easier to handle than binary; I suggest that, if possible, we keep the slices in ascii.

Xsainnz, Dave and I were developing an svg slice format at:
[sourceforge.net]

but there have been no contributions since November so that is in limbo.

Currently, the skeinforge input plugin structure can only handle a triangle mesh. I'm planning on generalizing the structure so that it can handle a slice format, but that will take at least two weeks.

Skeinforge is a python toolchain to convert a triangle mesh into gcode. It slices a mesh into layers and then insets those layers with my intersecting circle algorithm. The gcode can then be sent to a reprap with a machine controller program like replicatorG or send.py. A description of skeinforge is at:
[reprap.org]

Edited 1 time(s). Last edit at 01/02/2009 04:12AM by Enrique.
Re: developing software for rapid prototyping applications
January 02, 2009 05:06AM
Hi,

The .slc format when exported is in binary format (otherwise would be about 10 times the size!), if you scroll down [rapid.lpt.fi] you will find the source code to a command line app in C++ that spits out ASCII slices that look just like GCode exept for the header information which we just parse out. We also have to add a the X and Y before the coordinates.
And G1, G0 moves at the appropriate place.

I should also point out that VB.NET can capture the output without it having to write the .txt file.

It could also be very easily adapted to create .svg slices, you can even draw the co-ordinates in VB as curves. How ever I am building this specificly to output GCode to make it as universal as possible accross different RP technologies (Like my DIY Selective Laser Sintering machine!!!)

I have attached a compiled version of the SLC 2 ASCII program, It was written in VS2003 so you may need the VS2003 C++ redistrutable package. However I doubt it.

Enrique If you like email me michael at mickduffin.com and i'll help you with the rest.

Again if anyone can help with a hatch fill let me know!!!!

Michael.
Attachments:
open | download - MDSLC.rar (10.4 KB)
Re: developing software for rapid prototyping applications
January 02, 2009 05:25AM
The above attached file now spits out co-ords with X and Y before them, Making it much easier to parse with your own code!
Re: developing software for rapid prototyping applications
January 02, 2009 10:24AM
How do you get a copy rhino at a reasonable cost?
Re: developing software for rapid prototyping applications
January 02, 2009 10:32AM
Dont know mine was free smiling smiley,

Rhino is not the only application to support exporting to SLC's.
I'll see if I can find something really free.
Re: developing software for rapid prototyping applications
January 02, 2009 11:22AM
Freds, Not found anything free yet but if you are interested in this then you could always download the trial version of Rhino, Think it limits the number of file saves to 25 or so.

But would get you going.
Re: developing software for rapid prototyping applications
January 02, 2009 12:22PM
I wouldn't mind if they had a hobbiest cost but they have a sales pitch along the lines of try it until your are addicted and then pay full boat/price.
Re: developing software for rapid prototyping applications
January 02, 2009 12:39PM
I know its far too expensive for the hobbiest, That will be why i turned to the dark side and searched IsoHunt! (I got addicted too),

However i noticed you have some years of programming experience and the AOI plugin documentation is pretty good and the .slc format is very simple?

I don't think it would take a crazy complex script to output .slc

Mike.
Re: developing software for rapid prototyping applications
January 02, 2009 11:14PM
Skeinforge actually started as an Art of Illusion plugin called Export Slices, which turned a triangle mesh into a series of slices. I ported it over to python because the AOI scripting language, beanshell, runs about ten times slower than python and takes me about twice as long to develop than an equivalent python script.

Slicing a correct triangle mesh is straightforward. However sometimes the mesh made from the underlying geometry has holes in it. You can bridge the holes to a certain extent, but this is not foolproof. Ultimately it is best to slice the Constructive Solid Geometry shape directly. This is why I will make a plugin to import the constructive solid geometry in the Art of Illusion XML file. This will take at least a couple of weeks after I change the import structure, which will itself take a couple of weeks, so it will be at least a while before skeinforge has a foolproof method of importing shapes.

I prefer ascii formats because I can simply look at the file to see how it is constructed and debugging is much easier. The extra file size is not a problem because the ultimate output will be an ascii gcode file which is much larger than the input slices, so if the computer can handle the output size, it can handle the input size. If file size ever becomes a problem, zipping the files brings them down to roughly the size of a binary file, and there are many unzip programs and libraries.
Re: developing software for rapid prototyping applications
January 03, 2009 05:55AM
I agree file size is not an issue, Even a very complex model I created GCode for was still only 8MB!

And like most normal people I cannot decode binary in my head smiling smiley

I use Rhino because I like it, That is how it exports slices and they work.

I have attached the C++ soure for the .slc binary to ascii converter.
As I said in earlier posts the ascii output is very similar to gcode. If nothing else it will simply help bridge a gap between Rhino and Gcode for RP.

Mike
Attachments:
open | download - sourcecode.txt (6.2 KB)
Re: developing software for rapid prototyping applications
March 08, 2009 03:03PM
Whoops wrong place!

Edited 1 time(s). Last edit at 03/09/2009 06:14PM by Michael.Duffin.
Re: developing software for rapid prototyping applications
March 08, 2009 03:20PM
Michael.Duffin Wrote:
-------------------------------------------------------
> Updated laser.zip can be found at;
>
> [www.mtwvaleting.co.uk]

Hi Michael

Link does not work, and what functionality is supposed to be there?
Dear Michael Duffin,
it is mehdi from turkey.
Thank you so much for source code of MDSLC,but i can't run this file !!!
msvcp71d.dll not found message show when i run
could you help me
and can i use the source code in vs 2005 or 2008?

Regards

Mehdimerikhi@gmail.com
Michael.Duffin Wrote:
-------------------------------------------------------
> Hi,
>
> The .slc format when exported is in binary format
> (otherwise would be about 10 times the size!), if
> you scroll down
> [rapid.lpt.fi]
> you will find the source code to a command line
> app in C++ that spits out ASCII slices that look
> just like GCode exept for the header information
> which we just parse out. We also have to add a the
> X and Y before the coordinates.
> And G1, G0 moves at the appropriate place.
>
> I should also point out that VB.NET can capture
> the output without it having to write the .txt
> file.
>
> It could also be very easily adapted to create
> .svg slices, you can even draw the co-ordinates in
> VB as curves. How ever I am building this
> specificly to output GCode to make it as universal
> as possible accross different RP technologies
> (Like my DIY Selective Laser Sintering
> machine!!!)
>
> I have attached a compiled version of the SLC 2
> ASCII program, It was written in VS2003 so you may
> need the VS2003 C++ redistrutable package. However
> I doubt it.
>
> Enrique If you like email me michael at
> mickduffin.com and i'll help you with the rest.
>
> Again if anyone can help with a hatch fill let me
> know!!!!
>
> Michael.


Dear Sir,
it is mehdi from turkey.
Thank you so much for source code of MDSLC,but i can't run this file !!!
msvcp71d.dll not found message show when i run
could you help me
and can i use the source code in vs 2005 or 2008?

Regards
VDX
Re: developing software for rapid prototyping applications
May 06, 2013 06:02PM
... the last post is from 2009, don't await a fast answer eye rolling smiley


Viktor
--------
Aufruf zum Projekt "Müll-freie Meere" - [reprap.org] -- Deutsche Facebook-Gruppe - [www.facebook.com]

Call for the project "garbage-free seas" - [reprap.org]
Sorry, only registered users may post in this forum.

Click here to login