Loading ...
Sorry, an error occurred while loading the content.

RE: [CNC_Toolkit] Re: New file uploaded to CNC_Toolkit

Expand Messages
  • Yves Gauvreau
    Michael, Rhino/GH and GMax are such different beast that I wouldn t be surprised if our work turns out a completely different beast as well. Rhino offers us a
    Message 1 of 141 , Jun 15, 2013
    • 0 Attachment
      Michael,



      Rhino/GH and GMax are such different beast that I wouldn't be surprised if
      our work turns out a completely different beast as well. Rhino offers us a
      few different types of geometry and except for the mesh type maybe all
      others are different and that is not speaking of the tools each provides,
      these are also quite different even if they have the same name, they
      probably have a different implementation. The final result or Gcode of our
      work may end up being the same or pretty close but the mean to do it will
      probably be quite different. One thing I find essential is being able to do
      a toolpath simulation and I'm not even sure if this will be possible to do
      in Rhino/GH.



      Assuming, my Gcode generator works as expected it is still a toy basically,
      you mention multiple passes, plunge, feed and retract below, all of these
      haven't been considered yet. Though I'll find a way to make sure it works
      correctly before anything else, I think I have an idea to generate a multi
      pass toolpath and account for plunge, feed, retract and depth of cut. Before
      I make a fool of myself, let me study this a little bit to make sure it
      would work.



      Thanks again,

      Yves









      From: CNC_Toolkit@yahoogroups.com [mailto:CNC_Toolkit@yahoogroups.com] On
      Behalf Of Michael
      Sent: June-14-13 10:58 PM
      To: CNC_Toolkit@yahoogroups.com
      Subject: [CNC_Toolkit] Re: New file uploaded to CNC_Toolkit





      I agree - feel better after sleep.

      That's been my intent is to create the set of tools in Grasshopper.

      I think the first thing to create is a component that makes parallel
      splines/lines in either x or y direction.

      Then we'll need to project them onto a surface (with offsets, to create
      multiple passes).

      Then we'll need to turn those projected lines into 5 axis toolpaths that
      will have a rapid to plunge location, then feed move, then retract - repeat.

      We have the g-code translation & output part & I think we've got the normal
      vector definition part down. I've got the parallel splines mostly there, but
      misses something every now & then. It could be a series of points, but I've
      not gotten that method to work completely yet either - ordering the points
      is the issue.

      My big issue is that there are surface normal issues with importing Rhino
      solds/surfaces into Gmax & the normals are often going in strange
      directions.

      What do you think?
      Cheers!

      --- In CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com> ,
      "Yves Gauvreau" <gauvreau-yves@...> wrote:
      >
      > Michael,
      >
      >
      >
      > After a good night of sleep, I think a little better sometimes LOL! This
      > morning I realised I've been giving myself a lot of trouble and that I
      > started by the wrong end of the problem as well. You where right all
      along,
      > so let's see if we can start by just trying to "translate" the CNCToolkit
      as
      > is for now into its equivalent in GH.
      >
      >
      >
      > I think one of the very useful feature of the Kit is being able to
      simulate
      > the toolpath it creates but at this time I don't see how we could do this
      in
      > GH but again that would be jumping forward.
      >
      >
      >
      > Since the Kit is a single script it implies that it's task oriented and
      each
      > of these task as to provide a mean to gather the data needed for the task,
      > process this data and output a result of some kind. I'm sure you are more
      > knowledgeable about the Kit then I am, maybe you would have suggestion(s)
      or
      > idea of how we should proceed?
      >
      >
      >
      > Regards,
      >
      > Yves
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      > From: CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com>
      [mailto:CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com> ]
      On
      > Behalf Of Michael
      > Sent: June-10-13 7:16 AM
      > To: CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com>
      > Subject: [CNC_Toolkit] Re: New file uploaded to CNC_Toolkit
      >
      >
      >
      >
      >
      > I think that's the power of the ToolKit, it is simple in its application
      and
      > the user makes sure there are no collisions. I'm working in Gmax/ToolKit
      for
      > this set of parts, but have started a VB script to generate parallel cut
      > lines, much to debug.
      >
      > A code generator like you're talking about would be great, but will take
      > lots of time to create.
      >
      > Forge ahead,
      > Cheers!
      > -Mike
      >
      > --- In <mailto:CNC_Toolkit%40yahoogroups.com> CNC_Toolkit@yahoogroups.com
      <mailto:CNC_Toolkit%40yahoogroups.com> ,
      > "Yves Gauvreau" < <mailto:gauvreau-yves@> gauvreau-yves@> wrote:
      > >
      > > Michael,
      > >
      > >
      > >
      > > I just realised there is a big flaw with my method, flaws actually, it's
      > > probably because I started by asking myself, having a normal vector with
      > > some orientation relative to the world XYZ axis, how can I rotate it one
      > > axis at a time such that the end result is a line or vector parallel to
      > the
      > > world Z. I found a pretty simple mean to do this, probably way to simple
      > and
      > > I didn't consider at all the transition from one normal line to the next
      > and
      > > unless the shortest path or trajectory on the surface of a sphere
      between
      > > the 2 is infinitesimal, it's very likely that the tool will gouge the
      part
      > > or hit anything that is on this path. It's also very likely that this
      > > transition path between 2 normal lines won't be exactly on the surface
      to
      > be
      > > machine.
      > >
      > >
      > >
      > > Though I figured that the trajectory from 1 normal to the next would be
      an
      > > arc on the surface of a sphere because of the way the controller (Mach3)
      > > implement coordination motion, I figured it would be sufficient to
      create
      > a
      > > large number of normal lines such that the length of this arc is small
      > > enough. Also I basically thrown away the object to be machined in a
      sense
      > > and I considered the tool as just a target line or vector oriented in
      the
      > > normal direction relative to the surface at some 3D point on the surface
      > to
      > > be machined and lastly, imagine we want to machine our own ear while
      it's
      > > still attached to our head. I think you can imagine no one would ever do
      > > this in practice but say we are using a model of it instead of the real
      > > thing. I'm almost certain it's possible to do this with a 5 axis without
      > > busting our head sort of speak but it's obvious to me the method I made
      > > would kill us for sure and the machine limits are not even considering.
      > >
      > >
      > >
      > > If we want to machine real world parts like say the model of our ear
      while
      > > it is still attached to our head using our 5 axis machines we will need
      a
      > > way much smarter toolpath generator then this. To use all the potential
      of
      > a
      > > 5 axis machine we will need to consider way more than just the contact
      > point
      > > on the main axis of the tool in contact with the surface to be machined,
      > > that's like trying to sculpt an object with 2 hand and one foot attached
      > > behind our back with the carving tool attached to the foot we are
      standing
      > > on.
      > >
      > >
      > >
      > > Speaking for myself (XYZAC with a trunnion table as the A axis and the C
      > > axis is a rotating table that I could use either as an indexer or as
      > > constantly rotating axis like as a lathe for example , I would be happy
      to
      > > use my machine using only 3 axis toolpaths and using the A axis just as
      an
      > > indexer and the C axis a an indexer or as a lathe like axis. This would
      > > allow me to machine practically any part I would require for the type of
      > > work I'm doing with a minimal number of fixture setups. In other words,
      I
      > > would use my machine using 3+2 type of toolpaths (the +2 most likely
      > > manually) or as a 4 axis machine or lathe if you prefer.
      > >
      > >
      > >
      > > Basically, I would only need a cam package for 3 axis work and a module
      or
      > > whatever for the lathe type toolpaths and these are way much cheaper
      than
      > an
      > > intelligent 5 axis Cam package.
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > > I just saw your message and I may have an idea for you, instead of
      > starting
      > > from points where you would need to find some algorithm to sort them in
      > way
      > > you want.
      > >
      > >
      > >
      > > Let's assume for the moment we just want to machine a single region of
      > part
      > > using a simple parallel toolpath. I think it would be easy to generate a
      > > series of lines parallel to each other one by one inside VB Component
      say
      > > something like this here:
      > >
      > >
      > >
      > > Sub Create Horizontal lines (Start point, length in X, length in Y,
      > Spacing
      > > , Clip region if any, Target Surface, Project Direction, Resolution,
      > Output)
      > >
      > >
      > >
      > > Dim Lines as Array(Length Y / spacing + 1) as Lines
      > >
      > >
      > >
      > > Start of line (X,Y) = Start point
      > >
      > > Direction = 1 ''' 1 => +X, -1 => -X
      > >
      > >
      > >
      > > For I = 0 to (Length Y / Spacing) +1
      > >
      > > Lines (i) = Create line ( Start of line, Length X,
      > > Direction)
      > >
      > > Direction *= -1 'Switch Direction
      > >
      > > Start of line = Lines (i)
      > >
      > > Start of line (Y) += Spacing
      > >
      > > Next I
      > >
      > >
      > >
      > > Call Clip lines (Lines, Clip region, (output) Clip Lines) ' This will
      trim
      > > the lines but they will the same order of creation
      > >
      > >
      > >
      > > Call Project Lines (Clip lines, Project Direction, Target Surface,
      > (output)
      > > Projected Lines) ''' These new curves (actually) will be on the surface
      > and
      > > will still have the same ordering
      > >
      > >
      > >
      > > Call Cut Projected Lines( Projected Lines, Resolution, (output)
      Segments)
      > > '''Segments =>(Array(Number of lines, Number of segments))
      > >
      > >
      > >
      > > Call Compute Normal lines 2 surface ( Segments, Target Surface, (output)
      > > Normal Lines)
      > >
      > >
      > >
      > > End sub
      > >
      > >
      > >
      > > The result of this is you are certain the normal lines will be presented
      > in
      > > the proper order to the next step i.e. Generate Gcode probably.
      > >
      > >
      > >
      > > Using the kind of algorithm, you can control the order of presentation
      of
      > > the normal lines the way you want.
      > >
      > >
      > >
      > > Regards,
      > >
      > > Yves
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > > I would start with a series of lines that I would generate from inside a
      > VB
      > > component
      > >
      > >
      > >
      > >
      > >
      > >
      > >
      > > From: <mailto:CNC_Toolkit%40yahoogroups.com> CNC_Toolkit@yahoogroups.com
      <mailto:CNC_Toolkit%40yahoogroups.com>
      > [mailto: <mailto:CNC_Toolkit%40yahoogroups.com>
      CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com> ]
      > On
      > > Behalf Of Michael
      > > Sent: June-03-13 10:49 PM
      > > To: <mailto:CNC_Toolkit%40yahoogroups.com> CNC_Toolkit@yahoogroups.com
      <mailto:CNC_Toolkit%40yahoogroups.com>
      > > Subject: [CNC_Toolkit] Re: New file uploaded to CNC_Toolkit
      > >
      > >
      > >
      > >
      > >
      > > I have some pieces that I need to cut & maybe we could see if we can
      > > generate a code using this.
      > >
      > > I have added a header & a closing so it can work with Mach3 + defined
      axis
      > > offsets for my machine, & used a . I'll post the GH definition as a
      > modified
      > > version & you can see what you think.
      > >
      > > I'm going to try generating an array or normals & see what happens.
      > >
      > > I'm thinking that another important part is generating a series of
      > > toolpaths, like roughing passes to get down to the finish pass. I like
      the
      > > ToolKit's concept of creating parallel splines or rotary, or spiral.
      It'll
      > > be just different point arrays in GH, but similar. One step at a time I
      > > know. There's a contour component that I've used before & maybe this can
      > be
      > > expanded.
      > >
      > > I think we may be making some headway.
      > > Cheers!
      > >
      > > --- In <mailto:CNC_Toolkit%40yahoogroups.com>
      CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com>
      > < <mailto:CNC_Toolkit%40yahoogroups.com>
      > mailto:CNC_Toolkit%40yahoogroups.com> ,
      > > "Yves Gauvreau" <gauvreau-yves@> wrote:
      > > >
      > > > Michael,
      > > >
      > > >
      > > >
      > > > I was curious to see if it would be a pain to wait for the gcode to be
      > > > generated. So I created an array of 10,000 points from which I
      generated
      > > > 10,000 normal lines to feed my new VB function version of the GH
      > > definition
      > > > I posted. I was surprised to see it took only a couple second at most.
      > Of
      > > > course all this is fictitious, I don't think any real CNC work would
      be
      > > > possible yet unless one takes the time an effort to generate the
      normal
      > > > lines in such a way that it reflects a real toolpath. I kind of did a
      > real
      > > > toolpath looking set of normal lines and it's all in the new version
      > I'll
      > > > post a bit later.
      > > >
      > > >
      > > >
      > > > The more I think of this, the more I think a subroutine would be
      better
      > > > because I can create as many output parameters as I want. One of them
      > > could
      > > > be a kind of picture of the state of the CNC, part, etc at some time.
      In
      > > > other words, a kind of simulation could be possible.
      > > >
      > > >
      > > >
      > > > One of the inputs of the master gcode generator would be a toggle
      button
      > > of
      > > > some sort, this would cause an on demand generation of the gcode and
      > save
      > > a
      > > > lot of resources.
      > > >
      > > >
      > > >
      > > > Just in case others follow this as well, my next function or sub will
      be
      > > for
      > > > an XYZBC table-table CNC and after that an XYZBC head-head CNC. I'm
      > > starting
      > > > to think for the time being about a GH mean to setup a CNC machine
      > > > configuration parameters that would be flexible enough to accommodate
      > most
      > > > if not all type of possible configuration of 5 axis CNC. One thing
      they
      > > all
      > > > have in common is 2 rotary axis and in both the head-head and
      > table-table
      > > > configurations, one of the axis is dependent or link to the other one
      in
      > > > some fashion. I think you get the point and if any of you have an idea
      > to
      > > > deal with all this in GH via components or via some VB code, please
      jump
      > > > in, your idea are as good as mine if not better.
      > > >
      > > >
      > > >
      > > > Thanks,
      > > >
      > > > Yves
      > > >
      > > >
      > > >
      > > >
      > > >
      > > >
      > > >
      > > > From: <mailto:CNC_Toolkit%40yahoogroups.com>
      > CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com> <
      <mailto:CNC_Toolkit%40yahoogroups.com>
      > mailto:CNC_Toolkit%40yahoogroups.com>
      > > [mailto: <mailto:CNC_Toolkit%40yahoogroups.com>
      > CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com>
      <mailto:CNC_Toolkit%40yahoogroups.com> ]
      > > On
      > > > Behalf Of Michael
      > > > Sent: June-02-13 5:34 PM
      > > > To: <mailto:CNC_Toolkit%40yahoogroups.com> CNC_Toolkit@yahoogroups.com
      <mailto:CNC_Toolkit%40yahoogroups.com>
      > < <mailto:CNC_Toolkit%40yahoogroups.com>
      > mailto:CNC_Toolkit%40yahoogroups.com>
      > > > Subject: [CNC_Toolkit] Re: New file uploaded to CNC_Toolkit
      > > >
      > > >
      > > >
      > > >
      > > >
      > > > Cool, I should be able to take a look in the next couple days. Nice
      > work,
      > > > Cheers!
      > > >
      > > > --- In <mailto:CNC_Toolkit%40yahoogroups.com>
      > CNC_Toolkit@yahoogroups.com <mailto:CNC_Toolkit%40yahoogroups.com> <
      <mailto:CNC_Toolkit%40yahoogroups.com>
      > mailto:CNC_Toolkit%40yahoogroups.com>
      > > < <mailto:CNC_Toolkit%40yahoogroups.com>
      > mailto:CNC_Toolkit%40yahoogroups.com> ,
      > > > <mailto:CNC_Toolkit%40yahoogroups.com> CNC_Toolkit@yahoogroups.com
      <mailto:CNC_Toolkit%40yahoogroups.com> <
      > <mailto:CNC_Toolkit%40yahoogroups.com>
      mailto:CNC_Toolkit%40yahoogroups.com>
      > > < <mailto:CNC_Toolkit%40yahoogroups.com>
      > mailto:CNC_Toolkit%40yahoogroups.com> wrote:
      > > > >
      > > > >
      > > > > Hello,
      > > > >
      > > > > This email message is a notification to let you know that
      > > > > a file has been uploaded to the Files area of the CNC_Toolkit
      > > > > group.
      > > > >
      > > > > File : /ToolKitToGrasshopper/GH XYZAC files (Yves)/GH XYZAC
      > table-table
      > > > > Uploaded by : felixpq <gauvreau-yves@>
      > > > > Description : Instructions to use these files
      > > > >
      > > > > You can access this file at the URL:
      > > > >
      > > >
      > >
      >
      <http://groups.yahoo.com/group/CNC_Toolkit/files/ToolKitToGrasshopper/GH%20X
      > Y>
      >
      http://groups.yahoo.com/group/CNC_Toolkit/files/ToolKitToGrasshopper/GH%20XY
      > > > ZAC%20files%20%28Yves%29/GH%20XYZAC%20table-table
      > > > >
      > > > > To learn more about file sharing for your group, please visit:
      > > > >
      > <http://help.yahoo.com/l/us/yahoo/groups/original/members/web/index.html>
      > http://help.yahoo.com/l/us/yahoo/groups/original/members/web/index.html
      > > > > Regards,
      > > > >
      > > > > felixpq <gauvreau-yves@>
      > > > >
      > > >
      > > >
      > > >
      > > >
      > > >
      > > > [Non-text portions of this message have been removed]
      > > >
      > >
      > >
      > >
      > >
      > >
      > > [Non-text portions of this message have been removed]
      > >
      >
      >
      >
      >
      >
      > [Non-text portions of this message have been removed]
      >





      [Non-text portions of this message have been removed]
    • CNC_Toolkit@yahoogroups.com
      Hello, This email message is a notification to let you know that a file has been uploaded to the Files area of the CNC_Toolkit group. File : /meslab 3ds
      Message 141 of 141 , Mar 27
      • 0 Attachment
        Hello,


        This email message is a notification to let you know that
        a file has been uploaded to the Files area of the CNC_Toolkit
        group.


        File : /meslab 3ds export mesh as.png
        Uploaded by : lumbrosod <lumbrod@...>
        Description : meshlab 3ds export


        You can access this file at the URL:
        https://groups.yahoo.com/neo/groups/CNC_Toolkit/files/meslab%203ds%20export%20mesh%20as.png


        To learn more about file sharing for your group, please visit:
        https://help.yahoo.com/kb/index?page=content&y=PROD_GRPS&locale=en_US&id=SLN15398


        Regards,


        lumbrosod <lumbrod@...>
      Your message has been successfully submitted and would be delivered to recipients shortly.