I've been doing a bit of amateur research on FDM machines - that's those printers that squirt out 3D models. I've made a Meccano (like Tinkertoy) device that can print a cylinder, and a simple electrical circuit (yes, RepRap will lay conductors too) but Dr. Adrian Bowyer at Bath Univiersity (http://reprap.org) is the owner/coordinator. His designs & docs are GPL'd; mine are too.
The big difference between conventional FDM and RepRap is that RepRap will be designed to be able to print the majority of its own components - so everybody can have one!
Now, RepRap people are aware of AoI. Are AoI people interested in RepRap? Interested to the point of doing work on formats, STL exports, a direct driver for the beast etc.? At this stage of the game I feel my skills are best lent to the hardware side, but as an AoI user I'm enthused by the prospect of AoI rather than something like Blender (with its impenetrable user interface) being adopted for the modelling work.
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
That is yet another verry interesting application of a 3D modeller.
If no one else is interested, I am happy to build an STL import/export translator. My spare time is already well booked (VectorRender, ArtOfSharing, CompositingRender plus others) but STL looks to be very well aligned with AOI's internal representation, so I should be able to squeeze it in.
I have cruised the RepRap site, and seen nothing on the direct driver. What did people actually have in mind for that?
Cheers!
Nik
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm told that the driver layer is going to be documented as a proper API so that the project can proceed in an orderly manner. There are a number of possible hardware solutions, and the abstraction layer will definintely be needed as development continues. You're one of the people who'd make me feel much more comfortable, Nik, if you cast your eye over them once they're in a releasable format!
I'm less enthused with OpenRP. For an "Open" protocol, it's pretty short on released source.
There will be other challenges too, such as converting the traditionally 2D or at best layered circuits into a form where they can be integrated with an STL file or 3D model.
Modelling a coil embedded in plastic is going to be fun too! But not half as much fun as printing one :)
How's the Boolean stuff feeling these days Peter?
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Actually, I recall someone looking at STL output already...
...searching this forum, Francois has already written an STL script. What's the status of that?
I certainly don't want to steal Francois' thunder on this. Either I or Francois can easily turn Francois' script into a Translator, and add the corresponding import functionality as well.
I see your point regarding printed circuit layouts: looks like the STL format may need extending somewhat. BTW, will the circuit layouts be physical, or logical, or both? In fact, it seems that STL is very limited for your purposes. How are you planning on defining materials, etc? Would a better option be to use a more flexible format to begin with, rather than extending an existing standard?
Regarding boolean modelling, I think the STL exporter will always output from a triangle mesh representation, so from my understanding, issues from boolean modelling will be moot (correct me if I'm wrong, anyone).
Cheers!
Nik.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ok, I've downloaded Francois' STL script, and wrapped a Translator interface around it.
I've also built a corresponding import function.
Note that a sphere exported, then re-imported becomes an unsmoothed triangle mesh. This is because STL only stores a face normal, as opposed to one normal per vertex, which is how AOI stores meshes internally.
I'll post the jar in my usual place for now, and upload them onto the AOISP site soon (with my other plugins, that I haven't gotten around to yet):
STL validation has been added to both export and import.
Note that a sphere exported and then re-imported causes the parser to report a mismatch between the normals read and calculated. This is not a validation error, and appears to be caused by rounding error. If so, then I'll probably add a tolerance field to silence the warnings.
Cheers!
Nik.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
java.lang.NoSuchMethodError: java.lang.String.replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
at artofillusion.translators.STLTranslator.exportStream(STLTranslator.java:162)
at artofillusion.translators.STLTranslator$1.run(STLTranslator.java:876) at java.lang.Thread.run(Thread.java:536)
Any chance you can tell from that which particular bit of Java I've not set the right flag or environment variable for this time? :)
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'vee been looking at it, and I think the String.replace method only came in for Java 5. Please don't say I've got to change Java versions right now...
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
> How's the Boolean stuff feeling these days Peter?
Well, it still could use a complete rewrite. But I did fix a bug in 2.0 that was causing a lot of the intermittent failures with booleans, so hopefully it's now in good enough shape to be useable for most purposes.
That looks like a really cool project! I'm not sure whether the self-replicating aspect is really as important as they claim, but there's definitely lots of uses for an inexpensive rapid prototyper that can build electric circuits.
Peter
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm sure that people will have a lot of reasons for using a RepRap, and not all of them will get it with the intention of using it to make another one - until a friend asks for a copy or they want to print out a V1.1 RepRap with extra dangly bits.
Still, it's caught my imagination. Anyone want to AoI a logo of two robotic hands assembling one another a la Escher?
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I forgot to mention in my last post that the STLTranslator performs what validations I found on the web during both import and export. I will add something to the GUI to show the validation results more clearly (something like a big green tick vs a big red cross...).
If you can get the odd binary STL file, that would be great. I might also try to get something done in AutoCAD here, but my AutoCAD knowledge is zero.
Personally, I would *love* to have a RepRap sitting next to the bubblejet. Then I could materialise all those boat models of mine :o)
Speaking of which, has anyone considered the possible use of bubble-jet technology in RepRap? Could this be turned to a better compositing technique than what is currently used?
Just a thought.
Cheers!
Nik.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I want one on my bench too. We've only got to build the one...
Yes, using inkjet/bubblejet has been considered. While OK for prototyping, the problem is that a bubblejet head doesn't do so well as a part that can be made by the final RepRap.
Ideally, these things will be reproducable except for very basic comodity parts - the sort of bits you'd be able to pick up in central Africa if you were a schoolteacher there. Until we can come up with a suitable controller, MIT's US$100 laptops will come in very handy!
This means the RepRap can be widely self-distributed in areas that really need them. It shouldn't be too long before people come up with RepRap designs for water purifiers, windmills, generators and other devices useful in a resource-limited lifestyle.
In fact, people who like that kind of thing might like to do the models now, while the RepRap guys are working on the hardware.
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
A cheap 3D prototyping tool - even if it's not completely self-replicating, the ability to make parts cheaply is very promising :). Imagine - everybody having their own 3D prototyping machine :).
And the ability to create its own electrical circuits is also very interesting and would be nice to play around with.
In fact - I wonder - creating 3D circuits :D? I can imagine a cube filled with wires :D.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Imagine printing the windings of a transformer or a motor. Multi-layer circuit boards with sockets - no soldering.
Microwave photonics and waveguides.
Custom antennae.
Keyboards and even entire handheld PDAs just awaiting the chip...
Interesting stuff. Now who is going to make the AoI models? :)
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Well, here's my first functional circuit. The EVA base was laid down using my Meccano extruder but manually moving an X-Y platform - automated X-Y tables are next on the list:
I hand-painted the silver paint, but I'll be developing a simple extruder for that too. Actually, I have the STL file for the Wood's Metal (low MP solder) extruder for Nik to test.
This is going to be such fun to model on AoI. I hope to do a test run using AoI models on a Stratasys FDM machine in the near future.
Vik :v)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
They are pretty outdated - FDM (Fusion deposit modeling if im not wrong) is to unprecise.
If you want a smooth surface on prototype parts you have to post work to much on FDM parts.
The only cool thing is their second material as
support geometrie... (but thats is not the discussion i want to go in).
So - if you want precision - go STL (Stereolithografie)
Its not designed for circuit boards (wasnt that gerber files and LITHOGRAPHIE?) but good for mechanical and design parts - even large parts for automotive design.
Standard Autocad is not capable of making good STL files, but Mechanical Desktop is!
And every other midrange and highend modeler today.
Have a look at Rhino - AFAIK theres a 30 day trial version.
There you have acces to pretty much parameters like surface deviation. max triangle size and so on.
The nice thing about reading STL files is:
You can import from nearly every CAD System without to much trouble! Thats a huge step in my eyes!
My Truespace has this option (was a ~150$ Plugin)
and im really glad about this tool!
Its already production proved!
On the other hand:
Im using STL files for moldflow simulation (plastic injection in moldtool) - so it really come in handy to have AOI STL ready for reading and writing!
Harald
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
EDIT:
Now that if read about the RepRap Project I know why your going FDM ;-)
Stupid me... should read more before posting,
since editing here seems impossible.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
A thousand apologies. I missed the fact that this method was 1.5 only. AOI is intentionally keeping 1.4 compatability, so this is my mistake. I'll post a modified source atc shortly.
(At least now I know what the "replace" method issue is now :o)
Cheers!
Nik.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Version 0.03 has a number of small changes, including improved importing and the removal of calls to String.replace().
The new JAR is available through the Plugins manager (Francois, the more I use this, the more I love it!), and the corresponding source is available from the AOISP project.
Enjoy! (tm).
Nik.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I've been doing a bit of amateur research on FDM machines - that's those printers that squirt out 3D models. I've made a Meccano (like Tinkertoy) device that can print a cylinder, and a simple electrical circuit (yes, RepRap will lay conductors too) but Dr. Adrian Bowyer at Bath Univiersity (http://reprap.org) is the owner/coordinator. His designs & docs are GPL'd; mine are too.
The big difference between conventional FDM and RepRap is that RepRap will be designed to be able to print the majority of its own components - so everybody can have one!
Now, RepRap people are aware of AoI. Are AoI people interested in RepRap? Interested to the point of doing work on formats, STL exports, a direct driver for the beast etc.? At this stage of the game I feel my skills are best lent to the hardware side, but as an AoI user I'm enthused by the prospect of AoI rather than something like Blender (with its impenetrable user interface) being adopted for the modelling work.
Vik :v)
That is yet another verry interesting application of a 3D modeller.
If no one else is interested, I am happy to build an STL import/export translator. My spare time is already well booked (VectorRender, ArtOfSharing, CompositingRender plus others) but STL looks to be very well aligned with AOI's internal representation, so I should be able to squeeze it in.
I have cruised the RepRap site, and seen nothing on the direct driver. What did people actually have in mind for that?
Cheers!
Nik
I'm told that the driver layer is going to be documented as a proper API so that the project can proceed in an orderly manner. There are a number of possible hardware solutions, and the abstraction layer will definintely be needed as development continues. You're one of the people who'd make me feel much more comfortable, Nik, if you cast your eye over them once they're in a releasable format!
I'm less enthused with OpenRP. For an "Open" protocol, it's pretty short on released source.
There will be other challenges too, such as converting the traditionally 2D or at best layered circuits into a form where they can be integrated with an STL file or 3D model.
Modelling a coil embedded in plastic is going to be fun too! But not half as much fun as printing one :)
How's the Boolean stuff feeling these days Peter?
Vik :v)
Actually, I recall someone looking at STL output already...
...searching this forum, Francois has already written an STL script. What's the status of that?
I certainly don't want to steal Francois' thunder on this. Either I or Francois can easily turn Francois' script into a Translator, and add the corresponding import functionality as well.
I see your point regarding printed circuit layouts: looks like the STL format may need extending somewhat. BTW, will the circuit layouts be physical, or logical, or both? In fact, it seems that STL is very limited for your purposes. How are you planning on defining materials, etc? Would a better option be to use a more flexible format to begin with, rather than extending an existing standard?
Regarding boolean modelling, I think the STL exporter will always output from a triangle mesh representation, so from my understanding, issues from boolean modelling will be moot (correct me if I'm wrong, anyone).
Cheers!
Nik.
>I certainly don't want to steal Francois' thunder on this
Please do go on! It's a pleasure to see that the bits I write can be useful to others.
Francois
Ok, I've downloaded Francois' STL script, and wrapped a Translator interface around it.
I've also built a corresponding import function.
Note that a sphere exported, then re-imported becomes an unsmoothed triangle mesh. This is because STL only stores a face normal, as opposed to one normal per vertex, which is how AOI stores meshes internally.
I'll post the jar in my usual place for now, and upload them onto the AOISP site soon (with my other plugins, that I haven't gotten around to yet):
http://nik.homelinux.net/files/STLTranslator.jar
(and source at:)
http://nik.homelinux.net/files/STLTranslator-src.zip
Cheers!
Nik.
I've posted an update to the STLTranslator at the usual places:
(plugin)
http://nik.homelinux.net/files/STLTranslator.jar
(source)
http://nik.homelinux.net/files/STLTranslator-src.zip
STL validation has been added to both export and import.
Note that a sphere exported and then re-imported causes the parser to report a mismatch between the normals read and calculated. This is not a validation error, and appears to be caused by rounding error. If so, then I'll probably add a tolerance field to silence the warnings.
Cheers!
Nik.
Nik, I tried this out and on my PC I get:
java.lang.NoSuchMethodError: java.lang.String.replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
at artofillusion.translators.STLTranslator.exportStream(STLTranslator.java:162)
at artofillusion.translators.STLTranslator$1.run(STLTranslator.java:876) at java.lang.Thread.run(Thread.java:536)
Any chance you can tell from that which particular bit of Java I've not set the right flag or environment variable for this time? :)
Vik :v)
I'vee been looking at it, and I think the String.replace method only came in for Java 5. Please don't say I've got to change Java versions right now...
Vik :v)
>I think the String.replace method only came in
for Java 5
replace:
public String replace(CharSequence target,
CharSequence replacement)
[...]
Since:
1.5
Yes indeed, but it should not be a lot of work to use a 1.4 method instead, I guess.
Francois
I've posted a further update of the STLTranslator here:
(plugin)
http://nik.homelinux.net/files/STLTranslator.jar
(source)
http://nik.homelinux.net/files/STLTranslator-src.zip
This update has binary import/export working, although the only external binary test file I have does not import perfectly.
If anyone can provide me with one or two simple binary sample STL files (of a cube or a sphere), I would appreciate it.
Being able to import again means that AOI can hopefully be used to edit models that did not originate in AOI.
Cheers!
Nik.
I'll see if Adrian has anything handy.
Vik :v)
> How's the Boolean stuff feeling these days Peter?
Well, it still could use a complete rewrite. But I did fix a bug in 2.0 that was causing a lot of the intermittent failures with booleans, so hopefully it's now in good enough shape to be useable for most purposes.
That looks like a really cool project! I'm not sure whether the self-replicating aspect is really as important as they claim, but there's definitely lots of uses for an inexpensive rapid prototyper that can build electric circuits.
Peter
I'm sure that people will have a lot of reasons for using a RepRap, and not all of them will get it with the intention of using it to make another one - until a friend asks for a copy or they want to print out a V1.1 RepRap with extra dangly bits.
Still, it's caught my imagination. Anyone want to AoI a logo of two robotic hands assembling one another a la Escher?
Vik :v)
I forgot to mention in my last post that the STLTranslator performs what validations I found on the web during both import and export. I will add something to the GUI to show the validation results more clearly (something like a big green tick vs a big red cross...).
If you can get the odd binary STL file, that would be great. I might also try to get something done in AutoCAD here, but my AutoCAD knowledge is zero.
Personally, I would *love* to have a RepRap sitting next to the bubblejet. Then I could materialise all those boat models of mine :o)
Speaking of which, has anyone considered the possible use of bubble-jet technology in RepRap? Could this be turned to a better compositing technique than what is currently used?
Just a thought.
Cheers!
Nik.
I want one on my bench too. We've only got to build the one...
Yes, using inkjet/bubblejet has been considered. While OK for prototyping, the problem is that a bubblejet head doesn't do so well as a part that can be made by the final RepRap.
Ideally, these things will be reproducable except for very basic comodity parts - the sort of bits you'd be able to pick up in central Africa if you were a schoolteacher there. Until we can come up with a suitable controller, MIT's US$100 laptops will come in very handy!
This means the RepRap can be widely self-distributed in areas that really need them. It shouldn't be too long before people come up with RepRap designs for water purifiers, windmills, generators and other devices useful in a resource-limited lifestyle.
In fact, people who like that kind of thing might like to do the models now, while the RepRap guys are working on the hardware.
Vik :v)
A cheap 3D prototyping tool - even if it's not completely self-replicating, the ability to make parts cheaply is very promising :). Imagine - everybody having their own 3D prototyping machine :).
And the ability to create its own electrical circuits is also very interesting and would be nice to play around with.
In fact - I wonder - creating 3D circuits :D? I can imagine a cube filled with wires :D.
Imagine printing the windings of a transformer or a motor. Multi-layer circuit boards with sockets - no soldering.
Microwave photonics and waveguides.
Custom antennae.
Keyboards and even entire handheld PDAs just awaiting the chip...
Interesting stuff. Now who is going to make the AoI models? :)
Vik :v)
Well, here's my first functional circuit. The EVA base was laid down using my Meccano extruder but manually moving an X-Y platform - automated X-Y tables are next on the list:
http://reprap.blogspot.com/
I hand-painted the silver paint, but I'll be developing a simple extruder for that too. Actually, I have the STL file for the Wood's Metal (low MP solder) extruder for Nik to test.
This is going to be such fun to model on AoI. I hope to do a test run using AoI models on a Stratasys FDM machine in the near future.
Vik :v)
If you're interested, my report on making circuits with hot-melt EVA and silver paint is now online:
http://diamondage.co.nz/research_docs/ SilverPaintTracks.pdf
I'll start a separate thread about circuits.
Vik :v)
Regarding FDM Machines:
They are pretty outdated - FDM (Fusion deposit modeling if im not wrong) is to unprecise.
If you want a smooth surface on prototype parts you have to post work to much on FDM parts.
The only cool thing is their second material as
support geometrie... (but thats is not the discussion i want to go in).
So - if you want precision - go STL (Stereolithografie)
Its not designed for circuit boards (wasnt that gerber files and LITHOGRAPHIE?) but good for mechanical and design parts - even large parts for automotive design.
Standard Autocad is not capable of making good STL files, but Mechanical Desktop is!
And every other midrange and highend modeler today.
Have a look at Rhino - AFAIK theres a 30 day trial version.
There you have acces to pretty much parameters like surface deviation. max triangle size and so on.
The nice thing about reading STL files is:
You can import from nearly every CAD System without to much trouble! Thats a huge step in my eyes!
My Truespace has this option (was a ~150$ Plugin)
and im really glad about this tool!
Its already production proved!
On the other hand:
Im using STL files for moldflow simulation (plastic injection in moldtool) - so it really come in handy to have AOI STL ready for reading and writing!
Harald
EDIT:
Now that if read about the RepRap Project I know why your going FDM ;-)
Stupid me... should read more before posting,
since editing here seems impossible.
Vik,
A thousand apologies. I missed the fact that this method was 1.5 only. AOI is intentionally keeping 1.4 compatability, so this is my mistake. I'll post a modified source atc shortly.
(At least now I know what the "replace" method issue is now :o)
Cheers!
Nik.
No worries, Nik. You're doing a damn fine job of it.
Vik :v)
The STLTranslator has been updated.
Version 0.03 has a number of small changes, including improved importing and the removal of calls to String.replace().
The new JAR is available through the Plugins manager (Francois, the more I use this, the more I love it!), and the corresponding source is available from the AOISP project.
Enjoy! (tm).
Nik.