hexagon logo

Shift Home Position on Virtual Machine

Hi Guys,

We recently purchased a 9-12-8 Global S machine with a scanning head. The length of the indexing portion (scanning head + longer tip) kind of freaked us out, and we wanted to be able to simulate the machine offline in order to catch collisions between the head or probe and the legs of the bridge. However, the closest model in the PC-DMIS (2019 R1) model list is the 9-12-8 Evo. The hardware dimensions seem close enough to use, but the home positions of this virtual machine and our physical machine differ by several inches. This is a problem because when we put the CAD model on the same granite position as in the real world, there is a large offset from reality on the physical machine. I could ditch the virtual machine and run my manual alignment to get it to work online, but a better solution would seem to be to move the home position on the virtual machine to better correlate with reality.

From what I've found on this forum already, it seems like many of you have done similar things with the machine models. I've played around with the usermachine.dat file a little bit (starting with a copy of the Global Evo 9-12-8 from machine.dat), but it's not at all clear to me from the help file what I would need to do change the origin/start point/home position, or even if those are in fact the same. Could any of you point me in the right direction? Thank you.
Parents
  • Finally, I have something that looks write offline and runs through online without any messing around. , I ended up shifting the CAD components of the model around the origin rather than either changing the joint values or messing with the CAD like I mentioned above.

    For posterity (actually for me when I try to set it up for our other machine in 6 months Slight smile ), this is how I did it. Start with the unedited custom machine created as outlined above:

    ITEM:GLOBAL_S_9-12-8 Bridge-Hexagon
    cadgeom 0 0 0 1 0 0 0 1 0 0 0 1 1 Global_Evo_9-12-8.DRAW
    tablecenter 450 600 -882.9974 0 0 1
    linearjoint 0 0 0 0 1 0 0 0 0 1200 y axis
    cadgeom 0 0 0 0 1 0 1 0 0 0 1 0 2 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 -1 0 0 0 0 0 900 x axis
    cadgeom 0 0 0 0 1 0 0 0 1 1 0 0 3 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 0 1 0 0 0 -800 0 z axis
    cadgeom 0 0 0 0 -1 0 1 0 0 0 0 1 4 Global_Evo_9-12-8.DRAW
    connect 0 0 0 0 0 1 ARM
    


    1. Measure how much the home position needs to move. I did this referencing the -X, -Y, +Z corner of the granite. I probed the position on the physical machine by offsetting 2-4-6 and 1-2-3 blocks from the edge and probing them relative to the STARTUP alignment. I measured the position of the machine model by zooming way in on the edges of the granite with the grid turned on. The difference between each axis is what you're looking for. Remember to properly account for signs and the size of the blocks!
    2. Now, move the granite in the model (the first `cadgeom` line) that amount. The first three numbers are X, Y, Z. You'll need to play with the signs to get it to do what you want, but it's easy to check with the grid.
    3. Next, change the first and third numbers in the next `cadgeom` line to the X and Z values used above. The signs should be the same, but you never know...
    4. Finally, change just the third number in the third `cadgeom` line to the Z value. Watch out because some of these flip coordinate systems on you, so look closely at the result! The third number might not be the one you want...

    Here's what I ended up with:

    ITEM:GLOBAL_S_9-12-8 Bridge-Hexagon
    cadgeom [COLOR=#FF0000]35.72256 -177.41519 -18.23212[/COLOR] 1 0 0 0 1 0 0 0 1 1 Global_Evo_9-12-8.DRAW
    tablecenter 450 600 -882.9974 0 0 1
    linearjoint 0 0 0 0 1 0 0 0 0 1200 y axis
    cadgeom [COLOR=#FF0000]35.72256[/COLOR] 0 [COLOR=#FF0000]-18.23212[/COLOR] 0 1 0 1 0 0 0 1 0 2 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 -1 0 0 0 0 0 900 x axis
    cadgeom 0 0 [COLOR=#FF0000]-18.23212[/COLOR] 0 1 0 0 0 1 1 0 0 3 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 0 1 0 0 0 -800 0 z axis
    cadgeom 0 0 0 0 -1 0 1 0 0 0 0 1 4 Global_Evo_9-12-8.DRAW
    connect 0 0 0 0 0 1 ARM
    


    Notes:
    1. All XYZ's are in millimeters.
    2. The linearjoint values also do things, as discussed above, but they definitely flip coordinate systems sometimes.
    3. I tried changing the connect position to get the wrist to line up with the end of the quill at one point. It worked for that, but may have caused the disconnect between where I was clicking on the CAD model and where the probe was making hit motions I found later.
    4. If you figure out what the `tablecenter` values actually do, please let us know.
    5. You can edit the cad model by finding the file in the install directory under Models/CMM/, changing the extension (on a copy!) to .CAD, and loading it into PC-DMIS. It ended up being a huge rabbit trail for me, though.
    6. The help files are here. They say just enough to get you in trouble, but might be helpful combined with this.
Reply
  • Finally, I have something that looks write offline and runs through online without any messing around. , I ended up shifting the CAD components of the model around the origin rather than either changing the joint values or messing with the CAD like I mentioned above.

    For posterity (actually for me when I try to set it up for our other machine in 6 months Slight smile ), this is how I did it. Start with the unedited custom machine created as outlined above:

    ITEM:GLOBAL_S_9-12-8 Bridge-Hexagon
    cadgeom 0 0 0 1 0 0 0 1 0 0 0 1 1 Global_Evo_9-12-8.DRAW
    tablecenter 450 600 -882.9974 0 0 1
    linearjoint 0 0 0 0 1 0 0 0 0 1200 y axis
    cadgeom 0 0 0 0 1 0 1 0 0 0 1 0 2 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 -1 0 0 0 0 0 900 x axis
    cadgeom 0 0 0 0 1 0 0 0 1 1 0 0 3 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 0 1 0 0 0 -800 0 z axis
    cadgeom 0 0 0 0 -1 0 1 0 0 0 0 1 4 Global_Evo_9-12-8.DRAW
    connect 0 0 0 0 0 1 ARM
    


    1. Measure how much the home position needs to move. I did this referencing the -X, -Y, +Z corner of the granite. I probed the position on the physical machine by offsetting 2-4-6 and 1-2-3 blocks from the edge and probing them relative to the STARTUP alignment. I measured the position of the machine model by zooming way in on the edges of the granite with the grid turned on. The difference between each axis is what you're looking for. Remember to properly account for signs and the size of the blocks!
    2. Now, move the granite in the model (the first `cadgeom` line) that amount. The first three numbers are X, Y, Z. You'll need to play with the signs to get it to do what you want, but it's easy to check with the grid.
    3. Next, change the first and third numbers in the next `cadgeom` line to the X and Z values used above. The signs should be the same, but you never know...
    4. Finally, change just the third number in the third `cadgeom` line to the Z value. Watch out because some of these flip coordinate systems on you, so look closely at the result! The third number might not be the one you want...

    Here's what I ended up with:

    ITEM:GLOBAL_S_9-12-8 Bridge-Hexagon
    cadgeom [COLOR=#FF0000]35.72256 -177.41519 -18.23212[/COLOR] 1 0 0 0 1 0 0 0 1 1 Global_Evo_9-12-8.DRAW
    tablecenter 450 600 -882.9974 0 0 1
    linearjoint 0 0 0 0 1 0 0 0 0 1200 y axis
    cadgeom [COLOR=#FF0000]35.72256[/COLOR] 0 [COLOR=#FF0000]-18.23212[/COLOR] 0 1 0 1 0 0 0 1 0 2 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 -1 0 0 0 0 0 900 x axis
    cadgeom 0 0 [COLOR=#FF0000]-18.23212[/COLOR] 0 1 0 0 0 1 1 0 0 3 Global_Evo_9-12-8.DRAW
    linearjoint 0 0 0 0 1 0 0 0 -800 0 z axis
    cadgeom 0 0 0 0 -1 0 1 0 0 0 0 1 4 Global_Evo_9-12-8.DRAW
    connect 0 0 0 0 0 1 ARM
    


    Notes:
    1. All XYZ's are in millimeters.
    2. The linearjoint values also do things, as discussed above, but they definitely flip coordinate systems sometimes.
    3. I tried changing the connect position to get the wrist to line up with the end of the quill at one point. It worked for that, but may have caused the disconnect between where I was clicking on the CAD model and where the probe was making hit motions I found later.
    4. If you figure out what the `tablecenter` values actually do, please let us know.
    5. You can edit the cad model by finding the file in the install directory under Models/CMM/, changing the extension (on a copy!) to .CAD, and loading it into PC-DMIS. It ended up being a huge rabbit trail for me, though.
    6. The help files are here. They say just enough to get you in trouble, but might be helpful combined with this.
Children
No Data