Announcement

Collapse
No announcement yet.

Pretty cool mill vise idea

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Pretty cool mill vise idea

    Check it out

    For me it's not worth the price, but I like the idea. I think the concept is worth filing away for adapting to a future use. Some of you have likely used this before - I haven't run across it yet. Seems like there are lots of possibilities for a quick & easy fixture for short runs by just drilling two or three holes and inserting pins. Could be just on a plate that slips in like a parallel rather than exchanging jaws.

    The more I think of it, I'll bet a couple of you have used this concept a zillion times. Pretty cool.


  • #2

    I like the idea too... I would want to make my own pair of kurt jaws and drill/tap my own hole patterns for fun.. That would be a good project for a milling machine class...

    -Adrian

    Comment


    • #3

      Ohhh boy. The guy's probably done more harm than good by posting such good photos. All us cheap bahstads are just going to copy this clever idea. I like it, though.

      -M
      The curse of having precise measuring tools is being able to actually see how imperfect everything is.

      Comment


      • #4
        I'll write some software to calculate the hole patterns..

        Comment


        • #5

          Ok, I finished the software that generates hole patterns to build a jaw like that one based on your custom requirements...

          Check this out..

          You only need to specify how tall you want your Jaw to be (I selected 3 inches for this one), how large the holes will be (I selected 1/4" for this one), and what is the acceptable minimum spacing inbetween holes (I selected 1/8th inch). It then prints out all of the DRO X-Y positions you need to make everything.. The first is a series of 6 holes that you drill into your 90-degree L-holders (One pivot hole at 0,0 and 5 index holes).. Then it gives you the complete DRO X-Y Positions to start drilling each column of holes starting with row 1 up through row 9. I labled each of the 5 index holes per row starting from the Top down: A,B,C,D,E.

          Here is the output for a 3" tall jaw, with 1/4" holes and a minimum spacing of 1/8th inch between holes... You zero out your DRO where you want the lower left corner of the columns to start.

          Code:
          /opt/temp =>./jaws 3 .25 .125
          Height of jaw:  3.000000 inches
          Hole size    :  0.250000 inches
          Hole spacing :  0.125000 inches
          
          Drill 6 holes in your 90 degree L holder:
          --------------------------------------------------------
          Drill pivot hole at X=0.000000, Y=0.000000
           Drill hole A at X=2.250000, Y=0.000000
           Drill hole B at X=1.875000, Y=0.000000
           Drill hole C at X=1.500000, Y=0.000000
           Drill hole D at X=1.125000, Y=0.000000
           Drill hole E at X=0.750000, Y=0.000000
          ------[ Drilling holes for column 1] --------------
          Drill bottom #1 at X=0.375000, Y=0.375000
           Drill Column #1 Row A at X=0.414268, Y=2.624657 for degree 1
           Drill Column #1 Row B at X=0.440437, Y=2.248858 for degree 2
           Drill Column #1 Row C at X=0.453504, Y=1.872944 for degree 3
           Drill Column #1 Row D at X=0.453476, Y=1.497260 for degree 4
           Drill Column #1 Row E at X=0.440367, Y=1.122146 for degree 5
          ------[ Drilling holes for column 2] --------------
          Drill bottom #2 at X=0.750000, Y=0.375000
           Drill Column #2 Row A at X=0.985189, Y=2.612674 for degree 6
           Drill Column #2 Row B at X=0.978505, Y=2.236024 for degree 7
           Drill Column #2 Row C at X=0.958760, Y=1.860402 for degree 8
           Drill Column #2 Row D at X=0.925989, Y=1.486149 for degree 9
           Drill Column #2 Row E at X=0.880236, Y=1.113606 for degree 10
          ------[ Drilling holes for column 3] --------------
          Drill bottom #3 at X=1.125000, Y=0.375000
           Drill Column #3 Row A at X=1.554320, Y=2.583661 for degree 11
           Drill Column #3 Row B at X=1.514834, Y=2.209027 for degree 12
           Drill Column #3 Row C at X=1.462427, Y=1.836555 for degree 13
           Drill Column #3 Row D at X=1.397162, Y=1.466583 for degree 14
           Drill Column #3 Row E at X=1.319114, Y=1.099444 for degree 15
          ------[ Drilling holes for column 4] --------------
          Drill bottom #4 at X=1.500000, Y=0.375000
           Drill Column #4 Row A at X=2.120184, Y=2.537839 for degree 16
           Drill Column #4 Row B at X=2.048197, Y=2.168071 for degree 17
           Drill Column #4 Row C at X=1.963525, Y=1.801585 for degree 18
           Drill Column #4 Row D at X=1.866264, Y=1.438708 for degree 19
           Drill Column #4 Row E at X=1.756515, Y=1.079769 for degree 20
          ------[ Drilling holes for column 5] --------------
          Drill bottom #5 at X=1.875000, Y=0.375000
           Drill Column #5 Row A at X=2.681328, Y=2.475556 for degree 21
           Drill Column #5 Row B at X=2.577387, Y=2.113470 for degree 22
           Drill Column #5 Row C at X=2.461097, Y=1.755757 for degree 23
           Drill Column #5 Row D at X=2.332579, Y=1.402739 for degree 24
           Drill Column #5 Row E at X=2.191964, Y=1.054731 for degree 25
          ------[ Drilling holes for column 6] --------------
          Drill bottom #6 at X=2.250000, Y=0.375000
           Drill Column #6 Row A at X=3.236335, Y=2.397287 for degree 26
           Drill Column #6 Row B at X=3.101232, Y=2.045637 for degree 27
           Drill Column #6 Row C at X=2.954207, Y=1.699421 for degree 28
           Drill Column #6 Row D at X=2.795411, Y=1.358947 for degree 29
           Drill Column #6 Row E at X=2.625000, Y=1.024519 for degree 30
          ------[ Drilling holes for column 7] --------------
          Drill bottom #7 at X=2.625000, Y=0.375000
           Drill Column #7 Row A at X=3.783836, Y=2.303626 for degree 31
           Drill Column #7 Row B at X=3.618599, Y=1.965090 for degree 32
           Drill Column #7 Row C at X=3.441959, Y=1.633006 for degree 33
           Drill Column #7 Row D at X=3.254092, Y=1.307667 for degree 34
           Drill Column #7 Row E at X=3.055182, Y=0.989364 for degree 35
          ------[ Drilling holes for column 8] --------------
          Drill bottom #8 at X=3.000000, Y=0.375000
           Drill Column #8 Row A at X=4.322517, Y=2.195288 for degree 36
           Drill Column #8 Row B at X=4.128403, Y=1.872442 for degree 37
           Drill Column #8 Row C at X=3.923492, Y=1.557016 for degree 38
           Drill Column #8 Row D at X=3.707985, Y=1.249289 for degree 39
           Drill Column #8 Row E at X=3.482091, Y=0.949533 for degree 40
          ------[ Drilling holes for column 9] --------------
          Drill bottom #9 at X=3.375000, Y=0.375000
           Drill Column #9 Row A at X=4.851133, Y=2.073097 for degree 41
           Drill Column #9 Row B at X=4.629620, Y=1.768397 for degree 42
           Drill Column #9 Row C at X=4.397998, Y=1.472031 for degree 43
           Drill Column #9 Row D at X=4.156491, Y=1.184257 for degree 44
           Drill Column #9 Row E at X=3.905330, Y=0.905330 for degree 45
          
          
          --------[ Usage Table ]------------
           1 degree is bottom column 1, and hole 1-A
           2 degree is bottom column 1, and hole 1-B
           3 degree is bottom column 1, and hole 1-C
           4 degree is bottom column 1, and hole 1-D
           5 degree is bottom column 1, and hole 1-E
           6 degree is bottom column 2, and hole 2-A
           7 degree is bottom column 2, and hole 2-B
           8 degree is bottom column 2, and hole 2-C
           9 degree is bottom column 2, and hole 2-D
           10 degree is bottom column 2, and hole 2-E
           11 degree is bottom column 3, and hole 3-A
           12 degree is bottom column 3, and hole 3-B
           13 degree is bottom column 3, and hole 3-C
           14 degree is bottom column 3, and hole 3-D
           15 degree is bottom column 3, and hole 3-E
           16 degree is bottom column 4, and hole 4-A
           17 degree is bottom column 4, and hole 4-B
           18 degree is bottom column 4, and hole 4-C
           19 degree is bottom column 4, and hole 4-D
           20 degree is bottom column 4, and hole 4-E
           21 degree is bottom column 5, and hole 5-A
           22 degree is bottom column 5, and hole 5-B
           23 degree is bottom column 5, and hole 5-C
           24 degree is bottom column 5, and hole 5-D
           25 degree is bottom column 5, and hole 5-E
           26 degree is bottom column 6, and hole 6-A
           27 degree is bottom column 6, and hole 6-B
           28 degree is bottom column 6, and hole 6-C
           29 degree is bottom column 6, and hole 6-D
           30 degree is bottom column 6, and hole 6-E
           31 degree is bottom column 7, and hole 7-A
           32 degree is bottom column 7, and hole 7-B
           33 degree is bottom column 7, and hole 7-C
           34 degree is bottom column 7, and hole 7-D
           35 degree is bottom column 7, and hole 7-E
           36 degree is bottom column 8, and hole 8-A
           37 degree is bottom column 8, and hole 8-B
           38 degree is bottom column 8, and hole 8-C
           39 degree is bottom column 8, and hole 8-D
           40 degree is bottom column 8, and hole 8-E
           41 degree is bottom column 9, and hole 9-A
           42 degree is bottom column 9, and hole 9-B
           43 degree is bottom column 9, and hole 9-C
           44 degree is bottom column 9, and hole 9-D
           45 degree is bottom column 9, and hole 9-E
          /opt/temp =>
          The code....


          Code:
          /**********************************************************************/
          /*                                                                    */
          /* Created 04-28-05: Adrian Michaud                                   */
          /*                                                                    */
          /* Indexable Vise Jaw calculator                                      */
          /*                                                                    */
          /**********************************************************************/
          
          #include <math.h>
          #include <stdio.h>
          
          #define PI 3.1415926
          
          void main(int argc, char **argv)
          {
          int    degree,row,col;
          double height,hole_size,hole_spacing, hole_delta;
          double xPos,yPos,offsetX,offsetY;
          double angleDelta;
          
             if (argc < 4)
                {
                printf("Usage: jaws height hole_size hole_spacing\n");
                exit(1);
                }
          
             sscanf(argv[1], "%lf", &height);  
             sscanf(argv[2], "%lf", &hole_size); 
             sscanf(argv[3], "%lf", &hole_spacing); 
          
             printf("Height of jaw:  %lf inches\n", height);
             printf("Hole size    :  %lf inches\n", hole_size);
             printf("Hole spacing :  %lf inches\n", hole_spacing);
          
             hole_spacing = hole_size + hole_spacing;
          
             angleDelta = ((PI * (double)2.00) / 360.00);
          
             printf("\nDrill 6 holes in your 90 degree L holder:\n");
             printf("--------------------------------------------------------\n");
             printf("Drill pivot hole at X=%lf, Y=%lf\n", 0.00, 0.00);
          
             for (row=0; row<5; row++)
                {
                hole_delta = ((height-hole_spacing*2.00)-((double)row*hole_spacing));
                printf(" Drill hole %c at X=%lf, Y=%lf\n", 'A'+row,hole_delta, 0.00);
                }
          
             degree=1;
            
             for (col=0; col<9; col++)
                {
                xPos= hole_spacing + (hole_spacing * (double)col);
                yPos= hole_spacing;
          
                printf("------[ Drilling holes for column %d] --------------\n", col+1);
          
                printf("Drill bottom #%d at X=%lf, Y=%lf\n", col+1, xPos, yPos);
          
                for (row=0; row<5; row++)
                   {
                   hole_delta = ((height-hole_spacing)-((double)row*hole_spacing))-yPos;
          
                   offsetY = cos((double)degree*angleDelta)*hole_delta;
                   offsetX = sin((double)degree*angleDelta)*hole_delta; 
          
                   printf(" Drill Column #%d Row %c at X=%lf, Y=%lf for degree %d\n", 
                      col+1,'A'+row, xPos+offsetX, yPos+offsetY, degree);
          
                   degree++;
                   }
                }
          
          
             printf("\n\n--------[ Usage Table ]------------\n");
          
             degree=1;
          
             for (col=0; col<9; col++)
                {
                for (row=0; row<5; row++)
                   {
                   printf(" %d degree is bottom column %d, and hole %d-%c\n",
                      degree, col+1, col+1, 'A'+row);
          
                   degree++;
                   }
                }
          }
          -Adrian


          Comment


          • #6
            By the time you pick the swarf out of the 4-40 holes and chase them out with a tap because they are boogered up from something being clamped in the vise, stand on your head and try to read the numbers and fumble the screw in and tighten it in the fixed jaw, you will be really glad you saved $50.00 on this fixture.

            It is a good idea, but not a world beater, such attachments have been around a while. Somebody had one on here a year or so ago.

            Jim H.

            Comment


            • #7
              <font face="Verdana, Arial" size="2">Originally posted by JCHannum:
              By the time you pick the swarf out of the 4-40 holes and chase them out with a tap because they are boogered up from something being clamped in the vise, stand on your head and try to read the numbers and fumble the screw in and tighten it in the fixed jaw, you will be really glad you saved $50.00 on this fixture.

              It is a good idea, but not a world beater, such attachments have been around a while. Somebody had one on here a year or so ago.

              </font>
              Good point.. I'll bevel the holes at 45 deg 1/16th deep before tapping them so the threads start 1/16th deep. I'll use 1/4" hex heads for my bolts.

              -Adrian

              Comment


              • #8
                I just located and drilled holes for 1/4 inch dowels at 45.60, 30 and 22 1/2 deg on a set of soft jaws for my vise. Laid it out on the surface plate with a protractor head. Plenty close enough for what I do. If the job looks like I'm going to run into a pin I use Alum. or soft steel.

                Comment


                • #9
                  Adrian,

                  I just love to see C code! I look at it and my eyes become happy. Everone needs to pick up a book on C programming and make the world a better place.

                  I wonder just how many programmers inhabit this forum.


                  ------------------
                  That's my story and I'm sticking to it...
                  That\'s my story and I\'m sticking to it...

                  Comment


                  • #10
                    Guy lautard mentions some jaws like this in one of the Bedside reader books. They would definately come in handy, I just havent gotten around to making some.

                    3 phase how long did it take to write that program, just wondering out of curiosity. Looks like chinese to me, I would have just laid it out on a cad program.

                    Comment


                    • #11
                      Slightly tweeked to output G81 codes for a CNC (you will need to setup the depth of cut, feed, etc - I just had it output G81 X#.#### Y#.#### for the drill locations). Oh, and I haven't tested it other than to run the generator program; the resultant G-Code might be wonky...

                      Code:
                      /**********************************************************************/
                      /*                                                                    */
                      /* Created 04-28-05: Adrian Michaud                                   */
                      /*                                                                    */
                      /* Indexable Vise Jaw calculator                                      */
                      /*                                                                    */
                      /**********************************************************************/
                      
                      #include &lt;math.h&gt;
                      #include &lt;stdio.h&gt;
                      
                      #define PI 3.1415926
                      
                      int main(int argc, char **argv)
                      {
                      int    degree,row,col;
                      double height,hole_size,hole_spacing, hole_delta;
                      double xPos,yPos,offsetX,offsetY;
                      double angleDelta;
                      
                         if (argc &lt; 4)
                            {
                            printf("Usage: jaws height hole_size hole_spacing\n");
                            exit(1);
                            }
                      
                         sscanf(argv[1], "%lf", &height);  
                         sscanf(argv[2], "%lf", &hole_size); 
                         sscanf(argv[3], "%lf", &hole_spacing); 
                      
                         printf("(Height of jaw:  %lf inches)\n", height);
                         printf("(Hole size    :  %lf inches)\n", hole_size);
                         printf("(Hole spacing :  %lf inches)\n", hole_spacing);
                      
                         hole_spacing = hole_size + hole_spacing;
                      
                         angleDelta = ((PI * (double)2.00) / 360.00);
                      
                         printf("\n(Drill 6 holes in your 90 degree L holder: )\n");
                         printf("(--------------------------------------------------------)\n");
                         printf("(Drill pivot hole at X=%lf, Y=%lf)\n", 0.00, 0.00);
                      
                         for (row=0; row&lt;5; row++)
                            {
                            hole_delta = ((height-hole_spacing*2.00)-((double)row*hole_spacing));
                            printf("G81 X%lf Y%lf  ", hole_delta, 0.00); 
                      	  printf("(Drill hole %c at X=%lf, Y=%lf)\n", 'A'+row,hole_delta, 0.00);
                            }
                      
                         degree=1;
                        
                         for (col=0; col&lt;9; col++)
                            {
                            xPos= hole_spacing + (hole_spacing * (double)col);
                            yPos= hole_spacing;
                      
                            printf("(------ Drilling holes for column %d --------------)\n", col+1);
                      	  
                            printf("G81 X%lf Y%lf ", xPos, yPos);
                            printf("(Drill bottom #%d at X=%lf, Y=%lf)\n", col+1, xPos, yPos);
                      
                            for (row=0; row&lt;5; row++)
                               {
                               hole_delta = ((height-hole_spacing)-((double)row*hole_spacing))-yPos;
                      
                               offsetY = cos((double)degree*angleDelta)*hole_delta;
                               offsetX = sin((double)degree*angleDelta)*hole_delta; 
                      
                               printf("G81 X%lf Y%lf ", xPos+offsetX, yPos+offsetY);
                      			
                               printf("(Drill Column #%d Row %c at X=%lf, Y=%lf for degree %d)\n", 
                                  col+1,'A'+row, xPos+offsetX, yPos+offsetY, degree);
                      
                               degree++;
                               }
                            }
                      
                      
                         printf("\n\n(--------[ Usage Table ]------------)\n");
                      
                         degree=1;
                      
                         for (col=0; col&lt;9; col++)
                            {
                            for (row=0; row&lt;5; row++)
                               {
                               printf("( %d degree is bottom column %d, and hole %d-%c)\n",
                                  degree, col+1, col+1, 'A'+row);
                      
                               degree++;
                               }
                            }
                      }
                      [This message has been edited by hammerhead74000 (edited 04-28-2005).]

                      Comment


                      • #12
                        I want to make a set of jaws that are 3" tall out of 41xx.Then get a cheap 5" sine bar and attach the bottom roll to the fixed jaw so it will pivot up.

                        That setup,some space blocks and a little trig and I got nearly any angle I will ever need without no stinking pins
                        I just need one more tool,just one!

                        Comment


                        • #13
                          <font face="Verdana, Arial" size="2">Originally posted by mochinist:
                          Guy lautard mentions some jaws like this in one of the Bedside reader books. They would definately come in handy, I just havent gotten around to making some.

                          3 phase how long did it take to write that program, just wondering out of curiosity. Looks like chinese to me, I would have just laid it out on a cad program.
                          </font>
                          Took about 15 mins to write and probably an hour to write test cases to verify the data, etc. I also wanted to visually see the locations so I also scaled/plotted them out on a graphics display so that took another 10 mins or so.

                          -Adrian

                          Comment


                          • #14
                            <font face="Verdana, Arial" size="2">Originally posted by hammerhead74000:
                            Slightly tweeked to output G81 codes for a CNC (you will need to setup the depth of cut, feed, etc - I just had it output G81 X#.#### Y#.#### for the drill locations). Oh, and I haven't tested it other than to run the generator program; the resultant G-Code might be wonky...
                            </font>
                            Do you have a G-code interpreter/CNC machine simulator? It would be nice to get some scaled screen shots from a CNC simulator..

                            -Adrian

                            Comment


                            • #15
                              "Do you have a G-code interpreter/CNC machine simulator?"

                              Mastercam good enough?

                              I have visual C++ installed on my machine, but I don't know how to use it. Is there an easy way to run your code? Scuse my ignorance - I'm no programmer, 'cept for maybe G-code.

                              Comment

                              Working...
                              X