1. Dismiss Notice
  2. Hey guyz. Welcome to the All New Phlatforum!



    Sign Up and take a look around. There are so many awesome new features.

    The Phlatforum is a place we can all hang out and

    have fun sharing our RC adventures!

  3. Dismiss Notice
  4. Hey guyz. Welcome to the All New Phlatforum!



    Sign Up and take a look around. There are so many awesome new features.

    The Phlatforum is a place we can all hang out and

    have fun sharing our RC adventures!

CNC wire cutter

Discussion in 'Types of CNC machines' started by swarfer, Apr 14, 2010.

  1. swarfer

    swarfer Moderator Staff Member

    Offline
    Messages:
    808
    Trophy Points:
    28
    Location:
    Grahamstown, South Africa
    I'm planning to build a CNC wire cutter sooner than a 3 axis mill and was searching for code to drive it.
    Seems all the free wire cutting code has either disappeared or been turned into non-free code.
    Also, I want my machines toall run off the same PC, which will run either TurboCNC or EMC, thus requiring G codes. I'll just plug the stepper motors into the controllers as required across the 2 machines.

    So, I thought to extend Phlatscript to handle XZ and UW axes in parallel. My first plan is to do it the simple way, ie mostly manual in that the user would set up the correctly scaled cut lines at each end of the virtual machine in Sketchup, then position the bounding box over each one and generate the Gcode.
    One end will be the XZ plane and the other the UW. Then some simple external scripting can combine the 2 files before sending to the cutter. There would need to be an option button somewhere to select which axes to use for the G-code, easy enough.

    An advancement would be the facility to tag the relevant cutlines for the axes they must cut, then generate all the G-code in one swoop. I don't understand enough of the Sketchup APi to do this yet.

    Anyhow, I thought I'd toss this in the pond and see what others think.
     
  2. 3DMON

    3DMON Moderator Staff Member

    Offline
    Messages:
    2,380
    Trophy Points:
    38
    Location:
    Sebastian, Florida
    That would be cool if you get it to work.
    Why UW for the other 2 axes? I thought the most popular axes are XYZ and A. Just curious, as I'm not that familiar with the extra axes but I have a 4 axes board with XYZA on it.

    Looking forward to seeing what you come up with.
     
  3. TigerPilot

    TigerPilot Well-Known Member

    Offline
    Messages:
    1,578
    Trophy Points:
    48
    Shaun, I think you can substitute UW with ZA.

    I love the idea to make the PS do also wire cutting. I too was wondering what had happened to the programs to do it. I too thought that there used to be a bunch of them for free and couldn't find any lately. Randy has a wire cutter but I don't know what program he is using.
     
  4. kyyu

    kyyu Active Member

    Offline
    Messages:
    1,183
    Trophy Points:
    36
    Location:
    Maryland
    swarfer,

    Someone asked me about this at rcgroups and I did do a quick investigation to see if it can be done. I did a quick test, where I manually edited the gcode for a rectangle and it worked. I posted a video showing it:
    http://www.rcgroups.com/forums/showpost ... ostcount=8

    By the way, there is a plugin that will plot airfoils into sketchup from the common airfoil coordinate files. That should come in handy: viewtopic.php?f=103&t=1036

    -Kwok
     
  5. swarfer

    swarfer Moderator Staff Member

    Offline
    Messages:
    808
    Trophy Points:
    28
    Location:
    Grahamstown, South Africa
    Hiya
    UVW are parallel to XYZ
    A is normally a rotary axis
     
  6. swarfer

    swarfer Moderator Staff Member

    Offline
    Messages:
    808
    Trophy Points:
    28
    Location:
    Grahamstown, South Africa
    Thanks Kwok that is another step on the way. I was wondering how I was going to do that.
     
  7. swarfer

    swarfer Moderator Staff Member

    Offline
    Messages:
    808
    Trophy Points:
    28
    Location:
    Grahamstown, South Africa
    Some further thought says that to automatically combine the two ends of a tapered wing the Gcode has to be output in the same order, and each end must have the same number of cut lines so they can be matched up. This will take a bit of fiddling if one does any editing as that tends to disturb the cut order, but maybe the grouping trick will sort it out or one of the new phlatsript features I vaguely remember at this point..

    Well, EMC has a simulate mode and displays the results in isometric so all this can be tested pretty easily. Now if only I had time...
     
  8. cncmachineguy

    cncmachineguy Member

    Offline
    Messages:
    133
    Trophy Points:
    16
    Location:
    Odenton MD
    Well here is something I know a LITTLE about. ;) I do not profess to know all about every controller nor do I know all there is to know about gcode. But I have been programming it for about 17 years, all by hand. I have used some cam packages to include featurecam 10, but mostly in my line of work hand coding works best most of the time.

    Now for cutting planes on Rosie, I LOVE the phlatscript!

    Ok enough history, on with my post.

    I have only programed about 5 different controllers in my 17 years, but on all of them UVW is NOT parallel to XYZ! It is XYZ. The difference is when in G90 (absolute) mode, XYZ are referanced to the set zero point. When in G91 (incremental) mode, XYZ are referenced to the last point. UVW are used to do an incremental move for this line only when in G90 mode.

    Now none of that really matters for this discission, but I thought it should be pointed out.
    As far as what the 4th axis is named, I think that my be up to each controller and how it is set up.

    As for phlatscript generating the gcode for a 4 axis wire cutter, I would think it could be done, but it may need to be a completely different plugin.

    Swarfer, you are kinda correct about the code needing to be output at the same time, but really both sides of the cutter need to have their moves programed in the same line. If we think of the axis as x,x(1) and z,z(1), the gcode would be something like :
    G1 X1.3 X(1)2.6 Z4. Z(1)6.

    One other thing that must be considered when programming a beast such as this:
    Phlat script has to know the distance between the colums. The reason is this:

    Lets assume you are cutting a wing with a 12" root and a 6" tip, 18" long. If the colums are 24" apart, and the wire is at the leading edge the distance to the trailing edge for X may be 18" and the distance for the tip edge for X1 may be 2". (Don't check my math on this, I am just making up numbers for this example.) Even though the cord is only 12". The Angles must be considered here.



    If any of this makes sense, Yea me! If not just ask. :)
     
  9. tvcasualty

    tvcasualty New Member

    Offline
    Messages:
    637
    Trophy Points:
    0
    I explored doing this and it became a prety complex operation.
    (Just setting up the mechanics)
    Then it all will require a very percise setup, the block must sit square, be of proper length, etc etc...

    Looking into alternative solutions... :)
     
  10. crash5050

    crash5050 Member

    Offline
    Messages:
    190
    Trophy Points:
    16
    Location:
    Greenwood/ Fort Smith, Arkansas
    Try FoamWorks, it gives you8 a 30 day trial, and you could use time stopper on it if you wanted to.
     
  11. kyyu

    kyyu Active Member

    Offline
    Messages:
    1,183
    Trophy Points:
    36
    Location:
    Maryland
    I tried this simple test, to setup the drawing manually in sketchup. There aren't that many points to this one, so I could have use the resulting gcode and manually combined it, to cut with a cnc hotwire.


    [​IMG]


    [​IMG]


    [​IMG]


    [​IMG]


    [​IMG] Attached files [​IMG] [​IMG] [​IMG] [​IMG] [​IMG]
     
  12. cncmachineguy

    cncmachineguy Member

    Offline
    Messages:
    133
    Trophy Points:
    16
    Location:
    Odenton MD
    Kwok that is awesome! If there was a work around for the manual combining of the code I think you would have it!
     
  13. TigerPilot

    TigerPilot Well-Known Member

    Offline
    Messages:
    1,578
    Trophy Points:
    48
    Kwok, where did you get that plugin? I've checked a few places but couldn't find it.

    Edit: I think I found it. It is something that you have to copy/paste and is in French, right?
    Edit: I uploaded the file after I englisized it. I still don't know how to use the 'Trim' option. Attached files Extend.rb (5 KB)Â
     
  14. kyyu

    kyyu Active Member

    Offline
    Messages:
    1,183
    Trophy Points:
    36
    Location:
    Maryland
    The one I have is called "trim_extend.rb", although the one you posted looks the same. One thing, I noticed is the context menu names are slightly different. If you google that name you should get some hits. I might have gotten it from the Ruby Depot or Skechucation Forum. The trim doesn't work for me, either. But I have a vague memory of trying it with skechup v6 and it working? I guessing it's because the new sketchup breaks lines that intersect, so trim is kind of meaningless. Here is the version I have:

    Attached files trim_extend.zip (1.4 KB)Â
     
  15. swarfer

    swarfer Moderator Staff Member

    Offline
    Messages:
    808
    Trophy Points:
    28
    Location:
    Grahamstown, South Africa
    I have done a simple sketchup layout of how I envisage doing this
    [​IMG]
    You draw the near side and far side of the cutting machine the correct distance apart.
    Just a single line for each is fine.
    Then draw the plan outline of the wing between these two lines.
    Project the outline to the cutting mahcien size lines. You now have the length the
    Wing ribs must be cut at the extents of the machine.
    Project some vertical lines and position the wing rib shapes between them, at a suitable height
    above the reference lines.
    Use PHlatscript to place 'outside' cut lines around those shapes (you can of course include spar slots etc)

    Now position the phlatscript cut box at end 1 and generat Gcode, then position it at end 2 and generate gcode.

    The last step is to (externally) combine those two sets of Gcode into one file for actual cutting.
    This depends on the Gcode being generated in a predictable order, say from trailing edge, down around leading and back to trailing edge. IF there are the same number of segmentsthen the files will match line for line in terms of 'which part are we cutting now' and then a script can combine them into
    G01 X1 Y1 U1.2 W1.3
    type lines to cut both ends of a face at once.

    Now place the wing blank at the correct distance from 'end 1' on the machine, click 'go' and go have coffee while it happens for you. The wing blank doesn't even have to be the correct length, you will still get the designed wing 'somewhere inside' it.
     
  16. swarfer

    swarfer Moderator Staff Member

    Offline
    Messages:
    808
    Trophy Points:
    28
    Location:
    Grahamstown, South Africa
    But then the cutting machine would have to run Windows and my machines at home are not supposed to annoy me, therefore they run Linux (-:
     
  17. Crash

    Crash Moderator Staff Member

    Offline
    Messages:
    469
    Trophy Points:
    18
    Location:
    Waco, Texas, USA
    This line really made me LOL!

    I am spending more and more time each day getting up on Linux (now have two machines converted). My life would be so much easier if everything that has been released for Windows would be completely MAC compatible. Thanks goodness that the Linux following is getting bigger.

    To quote my friend, Jamie: "Windows 7 is like Vista without the suck."

    My quote: "But it's STILL Windows!"
     
  18. crash5050

    crash5050 Member

    Offline
    Messages:
    190
    Trophy Points:
    16
    Location:
    Greenwood/ Fort Smith, Arkansas
    There is always WINE, and vmware. All of my machines aer Fedora boxes with Winderz virtual machines.
     
  19. tvcasualty

    tvcasualty New Member

    Offline
    Messages:
    637
    Trophy Points:
    0
    Sure is cool to see so many going to linux.
     
  20. tvcasualty

    tvcasualty New Member

    Offline
    Messages:
    637
    Trophy Points:
    0
    I am sure you guys can see from the nice examples above the amount of time (or code) it would take to get this setup working for one wing section. This made me weary of the entire process as it is complex.

    What about this proposal?
    Instead of a full automatic 4 axis cnc hotwire… What about this approach:

    First come up with two templates, wing tip and wing root.
    Mill those templates out on the pp and make the edges smooth.
    Next load those templates into a mount and sandwich a block of foam between them.
    The hotwire then could be turned on and either manually raked over the templates, or driven by a motor.
    Next step would be to flip the sandwich and rake the bottom.

    This would not have the total flexibility of the hotwire setup, and you would need to craft templates…
    But the machine would be simple to build and the code already exists to perform the operations.

    Templates can be milled from MDF or hardboard.

    I have another project to accomplish before I attempt this, but I think it would be well worth the try.
     
  21. cncmachineguy

    cncmachineguy Member

    Offline
    Messages:
    133
    Trophy Points:
    16
    Location:
    Odenton MD
    I have tried a simular method where I milled some templates from .04 alum, glued them to the sides of a proper cize block of foam, then tried to hotwire them by manually moving the bow around the templates.

    The issue I ran into was trying to get my left hand to move slower then my right so as to end up at the TE at the same time. I started from the LE.

    The cores came out very pretty, just never correct. When one hand went too fast or slow, the core had a flat spot there. :(

    I think if one want to do it manually, the best option I have seen is one end of the bow is fixed, then just follow 1 template. This works because all tapers converge somewhere in space. Problem is if that point is too far out, how do you attach the bow to it?

    Doesn't someone already have this problem solved here? Seems to me I read a post about a CNC hotwire. Maybe the foam monkey?

    I will have to surf the CNC section.
     
  22. cncmachineguy

    cncmachineguy Member

    Offline
    Messages:
    133
    Trophy Points:
    16
    Location:
    Odenton MD
  23. tvcasualty

    tvcasualty New Member

    Offline
    Messages:
    637
    Trophy Points:
    0
    The flying monkey is the one that talked me out of building a similar setup.
    Now if the EMC / phlatscript combo could handel it right now, I would prolly ignor his advice. :)


    I'll have to sit on this egg for a while and see what hatches up...
     
  24. kyyu

    kyyu Active Member

    Offline
    Messages:
    1,183
    Trophy Points:
    36
    Location:
    Maryland
  25. cncmachineguy

    cncmachineguy Member

    Offline
    Messages:
    133
    Trophy Points:
    16
    Location:
    Odenton MD
    @Erik , would be intresting to know the highlights of how he did that.

    @kwok, sending email
     

Share This Page