CNCzone.com-The Largest Machinist Community on the net!



Home Page Mark Forums Read Today's Posts My Replies Classifieds Reviews Photo Gallery Web Links Share Files Advertise With Us Ad List
Go Back   CNCzone.com-The Largest Machinist Community on the net! > OpenSource CNC Design Center > OpenSource Software


OpenSource Software For the Discussion of Opensource CAD/CAM and NC shareware software etc)


This forum is sponsored by:

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Ban this user!
Old 08-22-2007, 03:18 AM
 
Join Date: Nov 2004
Location: US
Posts: 23
galacticroot is on a distinguished road
Working on a new open source 3D CAM program

Hi all, I mentioned something about this in the "ideas for an open source cam" thread, but I've started my fourth attempt at an open source CAM program. So far, I've got about 80 hours of work put into it. See the attached screen shots for an idea of the current state. Yes, I fixed the speed issue mentioned in the other post and got some form of G-code output working by the weekend .

I'm going to try to keep working on this until either it or another open source program becomes a usable 3D CAM tool.

MeshMill is the working name for it at the moment since that's what it does, although I may change it to something more creative avoid confusion with MeshCam.

Anyway, the planned features of version 1 will be:
-Load/save STL files
-Load/save G-code files
-Load/save cycle configuration
-Hierarchical cycle tree with "supercycles" for patterning, mirroring, etc... groups of cycles
-Milling simulation/3D backplot
-Toolpath optimization
-Large set of highly configurable machining cycles
-5 axis support through patterning of 3 axis cycles

It is written in Java, so it should work on Linux/Mac/Win/etc...

I am currently working on implementing tool size/shape compensation. I am not sure what algorithm would be best to use for this.

Another thing I'm not sure about is how to implement simulation/backplotting. I plan to have the stock material represented by a mesh and "virtually mill" the mesh away in an accurate way. To maintain a relatively high performance level, I know that I will probably have to dynamically subdivide and optimize the mesh.

Any thoughts on either of these problems?

Also, is there anyone here who would be interested in working on this? As I said, it is all Java.
Attached Images
File Type: jpg meshmill-1.jpg‎ (73.3 KB, 439 views)
File Type: jpg camtest3shot.jpg‎ (146.2 KB, 436 views)
Tweet this Post!Share on Facebook
Reply With Quote

  #2   Ban this user!
Old 08-23-2007, 01:53 AM
WayneHill's Avatar  
Join Date: Mar 2004
Location: Michigan
Posts: 769
Blog Entries: 5
WayneHill is on a distinguished road
galacticroot,

Looks good.
__________________
Wayne Hill
www.codemangler.com
Tweet this Post!Share on Facebook
Reply With Quote

  #3   Ban this user!
Old 08-23-2007, 02:17 AM
 
Join Date: Aug 2006
Location: Australia
Posts: 208
twistedfuse is on a distinguished road
galacticroot,

Always good to see someone who is willing to do something for everyone else. i second waynes comment. Looking great. We definately need a good free cam program to use as it is always the hardest to find to suit the needs. Keep up the good work and hopefully look forward to a proto version of MeshMill.

Daniel
Tweet this Post!Share on Facebook
Reply With Quote

  #4   Ban this user!
Old 08-23-2007, 03:26 AM
 
Join Date: Nov 2004
Location: US
Posts: 23
galacticroot is on a distinguished road
Well, I've applied for a Sourceforge project. The program will now be called "ThreeCAM". Assuming Sourceforge approves the project, I will make the source available there.

Development wise, I a lot of the day thinking about a way to handle the size/shape of the tool and haven't come up a good solution yet. In the meantime I added a really crappy way (inaccurate) of doing it. I made a variety of small improvements including support for tool tables.

Again, I will probably need some help with this. I am neither a professional programmer or mathematician and without help it would likely take years for me to develop this into a high end CAM package.
Tweet this Post!Share on Facebook
Reply With Quote

  #5   Ban this user!
Old 08-23-2007, 10:31 AM
 
Join Date: Jul 2007
Location: Canada
Posts: 5
j_e_f_f_william is on a distinguished road
Originally Posted by galacticroot View Post
Well, I've applied for a Sourceforge project. The program will now be called "ThreeCAM". Assuming Sourceforge approves the project, I will make the source available there.

Development wise, I a lot of the day thinking about a way to handle the size/shape of the tool and haven't come up a good solution yet. In the meantime I added a really crappy way (inaccurate) of doing it. I made a variety of small improvements including support for tool tables.

Again, I will probably need some help with this. I am neither a professional programmer or mathematician and without help it would likely take years for me to develop this into a high end CAM package.
Hello,

I might be interested in helping out. I say might as I am not sure how much time I will be able to spend on it (due to family, work etc). That said I program in Java for a living and am a solftware architech for a software company in the telecommunications area.

The Java 'gotcha' is that I do 99.8% of my Java codeing in the 'backend' side of things, EJBs, integrations, webservices etc and therefore little experience with the graphical side of things.

The CAM 'gotcha' is that I have no experience with CNC at the moment. I know no G code etc. I have a mill I am thinking of converting and a lathe as well so I am researching. I have come to the conclusion though that a free CAM program would make things easier as I model eveything in Alibre before manually machining so if I CNC a machine I would like to 'automate' the process as much as possible.

Have any 'design' written out or a plan? If you get others to help there will need to be some design and architecture by the brains of the project or it might get out of hand quickly. Then again that might just be my software architecture brain talking

PM me if you want to discuss more how I might be able to help or let us known once the project is publicly available.

TTYL, Jeff
Tweet this Post!Share on Facebook
Reply With Quote

Sponsored Links
  #6   Ban this user!
Old 08-24-2007, 02:03 AM
 
Join Date: Nov 2004
Location: US
Posts: 23
galacticroot is on a distinguished road
OK. I've got a basic web page up at http://www.threecam.com/. The SourceForge project page is at http://sourceforge.net/projects/threecam/.

The current code is available through subversion at threecam.svn.sourceforge.net/svnroot/threecam/ThreeCAM. I would recommend importing it in Eclipse using subclipse (http://subclipse.tigris.org/). It requires the Java3D library.

Normally, I would start a project like this by creating a detailed design specification, flowchart, etc..., but when I first started this I was mostly interested in seeing if it would work or not, so I just started coding with only a very general design in mind. I now need to retrofit a formal design to it and I haven't really decided on some of the specifics yet. I am very much open to suggestions.

The code is messy in some places, since I was trying out a variety of methods to do various things. I am working on cleaning it up.
Tweet this Post!Share on Facebook
Reply With Quote

  #7   Ban this user!
Old 08-24-2007, 02:54 PM
 
Join Date: Apr 2007
Location: USA
Posts: 1,136
harryn is on a distinguished road
Hi, I wish I had the skills to help. Just curious, have you considered working with some existing open source CAM projects ? I have no idea which ones are "good" vs "ok", etc, but here is a link to one I have been watching.

http://gcam.js.cx/index.php/Main_Page

I know he is looking for help on his project. It would be really neat if you could help him get it into 4 axis capability.

Take care

Harry

Last edited by harryn; 08-24-2007 at 03:11 PM.
Tweet this Post!Share on Facebook
Reply With Quote

  #8   Ban this user!
Old 08-24-2007, 04:40 PM
 
Join Date: Mar 2004
Location: Iowa, USA
Posts: 264
rippersoft is on a distinguished road
GalaticRoot:

I took your source and moved it into Enterprise Architect and ArgoUML. I am attaching a ZIP of both files.

If you go get ArgoUML version 0.24 and install and then open the project ThreeCam.zargo you can make you documentation. ArgoUML is Java based.

You can export to XMI and then import to Eclipse if you want. Or use Argo to do the UML.

Enterprise Architect offers a 30 day trial.

RipperSoftware
Attached Files
File Type: zip UML_3DCam.zip‎ (440.0 KB, 80 views)
Tweet this Post!Share on Facebook
Reply With Quote

  #9   Ban this user!
Old 08-25-2007, 01:18 AM
 
Join Date: Nov 2004
Location: US
Posts: 23
galacticroot is on a distinguished road
rippersoft:
Hmm. I haven't ever done anything with UML before, only simple flowcharting, but it looks handy. I'll have to learn some more about it. I downloaded ArgoUML and am currently reading about UML.

I'm currently documenting the classes and methods in eclipse.

harryn:
I was actually thinking about GCAM earlier. I downloaded a copy and tried it out. I thought it would make a good compliment to a mesh based cam. I could see it becoming sort of a graphical parametric program generator. As for adding features to it, I'll have to look at the code sometime and see what I can do.
Tweet this Post!Share on Facebook
Reply With Quote

  #10   Ban this user!
Old 08-25-2007, 03:56 PM
WayneHill's Avatar  
Join Date: Mar 2004
Location: Michigan
Posts: 769
Blog Entries: 5
WayneHill is on a distinguished road
Java Netbeans IDE interface is free.

http://www.netbeans.org/

It would be nice if everyone involved use the same development software for the project. If everyone starts going in their own preferred IDE, then it will be like herding cats.

Am I missing anything here? Does it matter what complier is used?
__________________
Wayne Hill
www.codemangler.com
Tweet this Post!Share on Facebook
Reply With Quote

Sponsored Links
  #11   Ban this user!
Old 08-25-2007, 08:17 PM
 
Join Date: Nov 2004
Location: US
Posts: 23
galacticroot is on a distinguished road
I have currently have both JavaBeans and Eclipse, but I switched to using Eclipse a couple years ago.

It probably doesn't matter much which IDE is used. For Eclipse, there are a couple metadata files with Eclipse project information (which are only used when the project is initially imported), but Eclipse will work with any Java code. If the code is edited with another IDE, it will still work with Eclipse. The only problem I could see is variation in the comment syntax. For example, comments starting with "TODO" are treated specially in Eclipse, although this can be configured on a per-project basis to work with any tags. In the end, all you are doing is editing text files.

I could see the NetBeans GUI editor being problematic, but that is only a problem if it is actually used. I don't remember how it worked exactly, but I remember that it generated code blocks which could only be changed with the GUI editor.

The compiler is completely separate from the IDE. I have been using the Sun JDK 1.5. Other compilers can be used for development, but it might be best to create releases with the official Sun JDK.

Eclipse is open source and can be downloaded at:
http://www.eclipse.org/
Tweet this Post!Share on Facebook
Reply With Quote

  #12   Ban this user!
Old 08-26-2007, 12:51 AM
WayneHill's Avatar  
Join Date: Mar 2004
Location: Michigan
Posts: 769
Blog Entries: 5
WayneHill is on a distinguished road
Which version of Ellipse are you using?
__________________
Wayne Hill
www.codemangler.com
Tweet this Post!Share on Facebook
Reply With Quote

Reply




Currently Active Users Viewing This Thread: 2 (0 members and 2 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
CNCPRO Open Source Mits Spanish CNCzone 1 06-07-2007 12:04 PM
Open Source X2 CNC Conversion ignatz Open Source CNC Machine Designs 0 03-12-2006 05:40 PM
What's in work at the open source pminmo Open Source Controller Boards 0 02-13-2005 02:55 PM
Web space available for open source cnc ShayArnett Open Source Controller Boards 1 01-11-2005 10:31 AM
Open Source Gecko 201 Look A Like? pminmo Open Source Controller Boards 5 11-06-2004 11:51 PM




All times are GMT -5. The time now is 09:11 PM.





Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Content Relevant URLs by vBSEO
Template-Modifications by TMS

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353