Code Monkey home page Code Monkey logo

ultimatereprappost's Introduction

UltimateRepRapPost

Latest release is R1.01 with improved compensation with steps. Get it here

The ULTIMATE Duet3D RepRap CNC Post-Processor for Autodesk Fusion 360

With Linear Backlash Compensation, support for multi-tool, inline probe and more

Ultimate-Post-Processor-Banner

Post Properties

Post properties are divided into logical sections, each controlling a specific aspect of the output

Updates:

  • Added: Flush Accumulated Compensation Error option for Linear Backlash Compensation
  • Bug fix: Spindle RPM Catch up dwell handling
  • Improved: Linear Backlash Compensation
  • Added: Flush Accumulated Compensation Interval option for Linnear Backlash Compensation
  1. Work Space
    • Audible signal when operator's attention needed
      Check this to get an audible notifications whenever special attention required such as when the tool is ready for change, or where the extreme caution is adviced, such as when failure to remove a probe can cause damages to the tool, part, machine or even the operator. The audible signal is generated on the computer that runs the control and NOT the controller board. So, this requires your PC to be audio enabled and volume is up.

    • Corner Probe Placement
      Depending on your setup, you may place your corner probe on any of the four corner of your stock. This will let the program to know and therefore to adjust for your corner probe location. If you choose nnot to use corner probe at all, these parameters will be ignored.

    • Corner Probe on initial start [1st Tool must be pre-mounted]
      Preforms XYZ-Corner Probe on start of script. It takes the corner probe dimensions and placemennnt from the options you specify in this stage, under sectionn 3- Probes

    • Spindle RPM catch up time for 6K (in sec.)
      How many seconds does the Spindle motor need to catch up from 0 to 6000. Determines time needed for all other speeds as well. For example if catch-up time for 6000 (6K) is 15 seconds, it will be 30 seconds for 12000 and 7.5 for 3000 and so forth.
      Get a chronometer and start your spindle motor from stationary to 6000 RPM and measure how many seconds it takes for it to catch up and settle on the RPM and input that number here.

    • WCS to be used [If Setup WCS isn't 0, it overrides this]
      Choose the correct Work Coordinate System that is in use from 8 available slots. The post reserves WCS 9 for manual tool change operations. For the sake of file portability, this setting will be entirely ignored if you have specified WCS in your Fusion360 setup. This ensures that you don't accidentally override the intended WCS choice if you received the file from an another place.
      If you want the ability to choose your WCS in the post, you should leave the WCS offset on 0 when you setup your model for operations.

  2. Multi-Tools
    • Home axis on tool change
      Homes all axis after tool is changed and before it is potentially probed

    • Manual tool change
      If checked, manual tool change procedure will be preformed as needed. The spindle stops and the machine waits and asks for the tool to be replaced, and the program is interrupted until tool change is confirmed for the operators safety. The machine will only resume after operator connfirms the new tool is secured and after a 3 seconds back up time. Then the tool will return to where it was last and spindle restarts. If other operation such as Z-Probe where requested on tool change, they will be preformed before the spindle restart.
      During the tool change the WCS 0,0,0 and all other parameters are reserved and new tool diameter will be taken into consideration for continues flawless machining.
      Note: In an unlikely event if accidentally confirmed the tool is changed while still dealing with the spindle, let go of the spindle as soon as it starts to move back to it's position and while the spindle motor is still off, and preform Emergency Stop.

    • Probe Tool on each tool change
      Preforms probe after every tool change. There are three probing options available:
      • No probe
        No probing to undertake after tool changes
      • Z-probe
        Preforms Z-probe after tool changes. Z-Probe thickness will be taken from Probes section below
      • Corner Probe
        Preforms corner after tool changes. Corner Probe dimensions will be taken from Probes section below

    • X for Tool Change [ignored if WCS9 is used]
    • Y for Tool Change [ignored if WCS9 is used]
    • Z for Tool Change [ignored if WCS9 is used]
      These are absolute X, Y and Z position suitable for tool change. If manual tool change is selected, the Spindle will be turned off and moved to this position and stays there for the tool to be changed. The spindle will then returns to the exact location before tool change and carries on.
      If probe after tool change is selected, the program pauses and an on screen messages appears to let you mount the probe before requested probe to be preformed, after the probe, the program pauses with another on screen message to allow you to remove probe before resuming machining.
      On moving to the tool change position, and in order to minimize the risk of collision, the spindle moves a dog leg in this order:
      Move to specified Z
      Move to specified X
      and finally move to specified Y
      Similar move sequences are used for the spindle to go back and to probe
      Note1: If you choose the WCS9 Home to be used for tool change, these XYZ values are ignored and WCS9 will be used instead.
      Note2: If you choose specify XYZ for tool change instead of using WCS9, the WCS9 Home will be updated with specified values in the Post

    • Use WCS9 Home as tool change position
      Check this to use your pre-defined 0,0,0 position you have saved in WCS9 for tool change.
      Note: Unchecking this will result for the WCS9 values to be overwritten by above XYZ Tool Change position values. Please see above for more information.

  3. Probes
    • Z-Probe thickness
      Thickness of the Z-Probe (Z-probe stick out on the top of stock). This is the amount in millimetre that goes above the stock that the probe (tool) touches. The touching point is Z=0+(probe thickness)

    • Corner Probe Length (X dimension)
    • Corner Probe Length (Y dimension)
      How far the corner probe sticks out off the stock side in X axis and Y axis in millimetre

    • Corner Probe thickness
      Similar to Z-Probe thickness but for the corner probe. See above

    • Safe Distance to retract after probe
      How far the probe can safely retract in all 3 directions to release the probe

    • Safe Distance to retract after Z-probe
      How far in Z axis the probe can safely retract to release the Z-probe

  4. Linear Backlash Compensation

    How does it work?
    Direction change backlash occurs when the machine mechanically falls short in moving the head to the requested amount as the direction of the motion changes, but it carries on moving the head correctly for the next move if it happens to be in the same direction. For example if the machine is moving towards Y+ (or holding right after a move towards Y+) and the next command is to move towards the Y- for 5mm, the machine may only move 4.5mm towards Y- instead, but reports 5mm motion to the controller. So, both the controller and Fusion have no idea that there is a 0.5mm shortage of motion and therefore some slight deformity in the output object/cut. This is particularly problematic in repeated back and forth motions.
    The software can overcome this shortage by boosting these specific moves to the right amount so the head actually moves to the right amount. This will happen by fooling the controller that the requested stop point after a direction change is slightly larger to the specific amount but it keeps Fusion360 to still think it has moved to the desired amount. These adjustments should happen in correct occasions and only when really needed.

    Compensated Tools Motion Box
    If measured accurately, boosting moves to compensate for the backlash should not impact the shape or dimension of the resulting model. After all, what it should do is to render an even more accurate model. The boosts however will force the controller to feed the motors a few extra steps that in effect will slightly change the readings on the compensated axis without Fusion 360 knowing. If the changes were reported to Fusion 360 it will try to readjust the move back, that change of direction will trigger the compensator again and if Fusion 360 kicks in again to readjust the result will be and undesired vibration.
    What happens after all is that, while the actual moves don't affect the dimension of the cuts, we end up having an slightly enlarged 'reported' tool motion box. This post will print the readjusted tool 'theoretical' or 'reported' to controller motion box as comments at the end of the G-Code program it generates. It's always a good idea to take a look at the adjusted motion box report to make sure the machine will not run out of range of its allowable movements in any compensated axis, and if so the stock should be replaced to avoid that.

    How to measure the backlash for this post-Processor
    Jog an axis to one direction and jog it back 10mm and measure how far short of 10mm the axis has come back. Repeat the same for 1mm and note the offset amounts. We need the offset for both 1mm and 10mm motion after change of direction.

    • Apply Backlash Compensation
      If unticked the linear backlash compensation will not be calculated or applied.
    • Flush Accumulated Compensation Error
      When checked, it resets the tool position to WCS home before each operation and starts with a clean slate for that operation. This in effect reduces the risk of errors or offsets accumulations which could be a result of hundreds of back and forth motions in preforming every operation
    • Flush Accumulated Compensation on Interval
      When checked, it preforms the flushing routine (as above) on specific intervals of:
      • None
      • Every 500 moves
      • Every 1000 moves
    • X Axis measured backlash for 10mm
    • X Axis measured backlash for 1mm
    • Y Axis measured backlash for 10mm
    • Y Axis measured backlash for 1mm
    • Z Axis measured backlash for 10mm
    • Z Axis measured backlash for 1mm
      Input 2 measured backlash on each axis (the offset for 1mm motion on direction change and for 10mm motion on each axis. Input 0 if there is no backlash on the axis. The numbers should represent how far each mentioned axis is short from the desired amount of motion as described above.

      Note: This in no way is a replacement for adjusting your config.g parameters and/or tuning the hardware to the best of your capability. It's only a final resort to overcome backlash.
... to be completed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.