<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Heidenhain tool length zero in Fusion Manufacture Forum</title>
    <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13111617#M7322</link>
    <description>&lt;P&gt;thank you very much for your help&lt;/P&gt;</description>
    <pubDate>Sun, 27 Oct 2024 21:41:39 GMT</pubDate>
    <dc:creator>nubrandao</dc:creator>
    <dc:date>2024-10-27T21:41:39Z</dc:date>
    <item>
      <title>Heidenhain tool length zero</title>
      <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110275#M7316</link>
      <description>&lt;P&gt;Hi, it seems that Heidenhain can have a command before running toolpath, were can the machine checks the tool length of the toolpath and and if tool table has a different value, have an error?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For example, the toolpath required a tool with 100mm, but in the tool table has 95mm&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Stops the machine&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does anyone have a post processor in Heidenhain or can share the code to had my post processor?&lt;/P&gt;</description>
      <pubDate>Sat, 26 Oct 2024 18:53:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110275#M7316</guid>
      <dc:creator>nubrandao</dc:creator>
      <dc:date>2024-10-26T18:53:57Z</dc:date>
    </item>
    <item>
      <title>Re: Heidenhain tool length zero</title>
      <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110515#M7317</link>
      <description>&lt;P&gt;So you should be able to compare the Gauge length in fusion to the Tool length value from the Tool table in Heidenhain, this wont tell you if the stickout is correct though because Heidenhain doesn't know this, so the holder must match in fusion and on the machine.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;FN 18: SYSREAD Q10=&amp;nbsp;&lt;SPAN&gt;ID50 NR1 IDX1&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Where IDX is the tool number in the tool table&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alaasW8M6T_0-1729980079564.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1426179i30588FC60643C132/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alaasW8M6T_0-1729980079564.png" alt="alaasW8M6T_0-1729980079564.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You can add this function to the program header to loop through the tools at the start of the program and check that the lengths are longer than in fusion&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt; if(true){//tool length check
    writeSeparator();
    writeComment("CHECK TOOL LENGTHS")
    var tools = getToolTable();
      if (tools.getNumberOfTools() &amp;gt; 0) {
        for (var i = 0; i &amp;lt; tools.getNumberOfTools(); ++i) {
          var tool = tools.getTool(i);
        if(tool.type == TOOL_PROBE){
          continue
        }
        writeBlock("FN 18: Q10 = SYSREAD ID50 NR1 IDX" + tool.number);
        writeBlock("FN 12: IF +Q10 LT " + xyzFormat.format(tool.holderLength + tool.bodyLength) + " GOTO LBL 10")
        
      }

    }
  }&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Where Q10 is the variable to store the tool length in&lt;/P&gt;&lt;P&gt;At the end of the program you would Put&amp;nbsp; LBL 10, or whatever you want the label number to be for the error message.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You can print to the screen the error message with the tool number but this needs to be done by setting up a file on the TNC that has the output format, you can find info on how to do this on page 395 here:&lt;/P&gt;&lt;P&gt;&lt;A href="https://content.heidenhain.de/doku/tnc_guide/pdf_files/TNC640/34059x-08/bhb/892903-26.pdf" target="_blank" rel="noopener"&gt;https://content.heidenhain.de/doku/tnc_guide/pdf_files/TNC640/34059x-08/bhb/892903-26.pdf&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;it would look something like this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;writeBlock("LBL 10");
  writeBlock("FN 16: F-PRINT TNC:\MASK\MASK1.A/SCLR:")
  writeBlock("LBL 0");
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Where MASK1.A is the name of the file containing the formatting.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;See attached post&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This was based of the info in the NYCNC video here:&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.youtube.com/watch?v=Rnx097pD51I" target="_blank" rel="noopener"&gt;https://www.youtube.com/watch?v=Rnx097pD51I&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 27 Oct 2024 08:07:01 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110515#M7317</guid>
      <dc:creator>a.laasW8M6T</dc:creator>
      <dc:date>2024-10-27T08:07:01Z</dc:date>
    </item>
    <item>
      <title>Re: Heidenhain tool length zero</title>
      <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110677#M7318</link>
      <description>&lt;P&gt;I should point out that this method only works if the holder has no segments above the Gauge line.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;There is a gauge length parameter that gets output by Fusion but its harder to access in the loop than the the simple&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;tool&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;holderLength&lt;/SPAN&gt; &lt;SPAN&gt;+&lt;/SPAN&gt; &lt;SPAN&gt;tool&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN&gt;bodyLength because the&amp;nbsp; parameter&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;operation:tool_holderGaugeLength&lt;/LI-CODE&gt;&lt;P&gt;&lt;SPAN&gt;is associated with the operation, not the tool.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;If you wanted to check the tool length at each tool change&amp;nbsp; rather than at the top of the program this is easy though&lt;/SPAN&gt;&lt;/DIV&gt;</description>
      <pubDate>Sun, 27 Oct 2024 03:34:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110677#M7318</guid>
      <dc:creator>a.laasW8M6T</dc:creator>
      <dc:date>2024-10-27T03:34:04Z</dc:date>
    </item>
    <item>
      <title>Re: Heidenhain tool length zero</title>
      <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110921#M7319</link>
      <description>&lt;P&gt;I will try thanks very much&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 27 Oct 2024 08:51:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110921#M7319</guid>
      <dc:creator>nubrandao</dc:creator>
      <dc:date>2024-10-27T08:51:07Z</dc:date>
    </item>
    <item>
      <title>Re: Heidenhain tool length zero</title>
      <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110942#M7320</link>
      <description>&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="nubrandao_0-1730020257857.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1426228iF515443FB630B03B/image-size/medium?v=v2&amp;amp;px=400" role="button" title="nubrandao_0-1730020257857.png" alt="nubrandao_0-1730020257857.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;with this post processor, this means if the tool gauge is less or more? when is going to fail?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;for example, of i design the tool with 240.1, i want it to fail if the tool in table of the machine has only 240 or less&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;what about the msk file? how can i get it? can i just copy from the one is used for probing?&lt;/P&gt;</description>
      <pubDate>Sun, 27 Oct 2024 09:15:59 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13110942#M7320</guid>
      <dc:creator>nubrandao</dc:creator>
      <dc:date>2024-10-27T09:15:59Z</dc:date>
    </item>
    <item>
      <title>Re: Heidenhain tool length zero</title>
      <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13111585#M7321</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;FN 12: is a less than function(Page 387 in the manual)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alaasW8M6T_0-1730061358736.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1426327i2DC8AE775247EF9F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alaasW8M6T_0-1730061358736.png" alt="alaasW8M6T_0-1730061358736.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;so the expression will jump to LBL 10 if the value in Q10 is less than the length from Fusion.&lt;/P&gt;&lt;P&gt;If you want to have it only fail when the tool is more than 0.1mm less than what it is in fusion you can modify the function like here:&lt;/P&gt;&lt;LI-CODE lang="general"&gt;writeBlock("FN 12: IF +Q10 LT " + xyzFormat.format(tool.holderLength + tool.bodyLength -0.1) + " GOTO LBL 10")&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For the mask file you can create your own directly on the controller.&lt;/P&gt;&lt;P&gt;just type the name and then .A at the end to create a text file.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;you could create one called TOOL-LENGTH-MESSSAGE.A&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;its contents would look like something like&amp;nbsp; this:&lt;/P&gt;&lt;LI-CODE lang="general"&gt;"TOOL %9.3F", Q11 IS TOO SHORT";&lt;/LI-CODE&gt;&lt;P&gt;The information is all there on how to do this in the Heidenhain Manual&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You would need to add a bit to the loop to store the current tool number in Q11(or whatever variable you want to use)&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="alaasW8M6T_1-1730062671958.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1426329i27210B44625FF6D7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="alaasW8M6T_1-1730062671958.png" alt="alaasW8M6T_1-1730062671958.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;see updated post attached&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've just picked arbitrary Q variables and label number, you will need to make sure that these aren't used anywhere else by the controller, you may consider using a Higher LBL number than 10 as potentially if you had a lot of different WCS in a program fusion could also use LBL 10 for the Datum call.&lt;/P&gt;&lt;P&gt;Maybe better to use like LBL 200 or something&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 27 Oct 2024 21:02:43 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13111585#M7321</guid>
      <dc:creator>a.laasW8M6T</dc:creator>
      <dc:date>2024-10-27T21:02:43Z</dc:date>
    </item>
    <item>
      <title>Re: Heidenhain tool length zero</title>
      <link>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13111617#M7322</link>
      <description>&lt;P&gt;thank you very much for your help&lt;/P&gt;</description>
      <pubDate>Sun, 27 Oct 2024 21:41:39 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-manufacture-forum/heidenhain-tool-length-zero/m-p/13111617#M7322</guid>
      <dc:creator>nubrandao</dc:creator>
      <dc:date>2024-10-27T21:41:39Z</dc:date>
    </item>
  </channel>
</rss>

