Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login
    1. Home
    2. jstevewhite
    • Profile
    • Following 0
    • Followers 1
    • Topics 4
    • Posts 36
    • Best 1
    • Controversial 0
    • Groups 0

    jstevewhite

    @jstevewhite

    1
    Reputation
    5
    Profile views
    36
    Posts
    1
    Followers
    0
    Following
    Joined Last Online

    jstevewhite Unfollow Follow

    Best posts made by jstevewhite

    • RE: Traveling Z offset

      @phaedrux

      Tool offsets are critical to the eventual application of the tool changer to the RailCore chassis. G31 is for PROBE offset - which is fine if you have only one tool, but if you have multiple tools, it's insufficient for configuration.

      That's what got me testing it. While testing it, it became clear that the tool offset is MUCH more user friendly. You'll note that bmveee had the same issue prior to switching to the G10 tool offset process, and the issue in the other post that you mention occurred with G31 and G10 tool offset as well.

      If G10 doesn't function properly, it's still broken, even if you can work around it with G31. I don't think that's related to this issue, though, but there's certainly something strange going on. The M500 wasn't saving the tool offset like it's supposed to. Specifically, in my gcode console I can issue:

      G10 L1 P0

      and get:

      G10 L1 P0
      Tool 0 offsets: X0.00 Y0.00 Z1.70, active/standby temperature(s): 0.0/0.0

      This is mirrored in my config-override.g:

      ; config-override.g file generated in response to M500 at 2019-06-27 16:10
      ; This is a system-generated file - do not edit
      ; Heater model parameters
      M307 H0 A90.0 C700.0 D10.0 S1.00 V0.0 B0
      M307 H1 A618.9 C194.1 D4.1 S1.00 V24.3 B0
      M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0
      M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
      M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
      M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0
      ; Probed tool offsets
      G10 P0 Z1.70
      G10 L2 P1 X0.00 Y0.00 Z0.00
      G10 L2 P2 X0.00 Y0.00 Z0.00
      G10 L2 P3 X0.00 Y0.00 Z0.00
      G10 L2 P4 X0.00 Y0.00 Z0.00
      G10 L2 P5 X0.00 Y0.00 Z0.00
      G10 L2 P6 X0.00 Y0.00 Z0.00
      G10 L2 P7 X0.00 Y0.00 Z0.00
      G10 L2 P8 X0.00 Y0.00 Z0.00
      G10 L2 P9 X0.00 Y0.00 Z0.00

      while troubleshooting with bmveee or duetal (I think that's mspal from our discord 😄 ) I noted that M500 never wrote their tool offset to the config-override.g. This is unexpected behavior, and is sufficient in and of itself to result in unpredictable behavior. That's when I recommended they post in the duet forums.

      Specifically, I had one of them put M501 at the end of their config.g (This should load config override). Then issue:

      G10 L1 P0 Znnn.n (insert number here)
      then
      M500
      and the entry does not appear in config-override.g as it should. This is clearly a problem, but I can't seem to figure out why. Mine works as expected.

      posted in General Discussion
      jstevewhiteundefined
      jstevewhite

    Latest posts made by jstevewhite

    • RE: Duet 3 SCARA questions

      @dc42
      Can you clarify the bit I quoted? That's from the duet docs and is very confusing.

      Also, any advice since I made this thing left handed?

      Ultimately, I've been unable to come up with any combination of reported angles in M669 that result in 0,0 being at the proximal axis. The only even remotely functional settings I've come up with result in 0,0. being way up top and no moves being rectilinear. I made a law of cosines spreadsheet and calculated the angles but there's clearly some rotation here that I don't understand.

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      @JoergS5

      Image of robot (drawbot, not printer):
      Monosnap 2020-10-17 12-44-17.jpg

      Please disregard the marked angles as other than an indication of the range of motion.

      I do not understand this bit:

      The crosstalk factors define how much the motors interfere with each other. If they are all zero then it is assumed that the X motor affects only the angle between the proximal arm and the X axis, the Y motor affects only the angle between the distal arm and the X axis (not the proximal-to-distal arm angle as you might expect), and the Z motor affects only the nozzle height. If this is true for your printer, you can omit the C parameter. Otherwise, if the parameter is of the form Caaa:bbb:ccc, then:

      aaa is the amount by which the X motor (whose primary function is to control the proximal arm) affects the angle between the distal arm and the proximal arm. For example, if movement of the proximal motor affects the proximal-to-distal joint angle in reverse (so that an X motor movement that causes one degree of proximal arm movement also changes the angle between the distal arm and the X axis by one degree in the opposite direction) then this crosstalk factor is 1.

      They seem to contradict one another.

      G92 does not seem to set the angle the machine believes the arms are at, but instead appear to affect cartesian co-ordinates:

      10/18/2020, 11:37:13 AM	M114
      X:16.886 Y:150.000 Z:0.000 E:0.000 E0:0.0 Count 1391 22457 0 Machine 16.886 150.000 0.000 Bed comp 0.000
      10/18/2020, 11:37:08 AM	G92 Y150
      10/18/2020, 11:37:00 AM	M114
      X:16.886 Y:95.766 Z:0.000 E:0.000 E0:0.0 Count 0 24915 0 Machine 16.886 95.766 0.000 Bed comp 0.000
      

      As you can see, G92 Y150 resulted in Y being set to 150 and X being unchanged, but the reported angles change to something else entirely.

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      @JoergS5

      I'll sure try that tomorrow, but at one point I had it set with the angles correct in M208 for the endstops and it still didn't have 0,0 in the appropriate location.

      I'll report back tomorrow 😄

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      There is clearly a problem with the angles I'm using here because no combination I have tried puts 0,0 at the Proximal axis.

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      @JoergS5

      Here's homedistal.g

      G91 ; relative movement
      G1 H1 Y-200 F2000 ; move distal joint counter-clockwise until triggers
      G1 H2 Y10 ; back off 10 degrees
      G1 H1 Y-20 F1200
      ;G1 H2 Y20
      G90

      and homeproximal.g

      G91 ; relative movement
      G1 H1 X200 F1200 ; move distal joint counter-clockwise until triggers
      G1 H2 X-10 ; back off 10 degrees
      G1 H1 X40 F300
      ;G1 H2 X20
      G90

      I do not use homeall.g because I can't make it stop throwing an error trying to home z, even though I have no Z axis configured.

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      @JoergS5 said in Duet 3 SCARA questions:

      A-89.9:90.1 B-130.9:20.0. < this one results in "Intermediate position outside machine limits" for any move at any point in the machine's actual rotational ability.

      So I've tried both of those configurations after (once again) correcting the rotation direction (had the distal arm rotating the wrong direction). The first one is similar to a config I've tried. It allows me to do small moves in X and Y, but the co-ordinates are nonsensical - they look right at homing, but 0,0 is maybe 300mm from the Proximal axis and once you cross it any relative move results in a long move that goes out of the working area. E.g. G91; G1 X1 results in a 90º rotation of the proximal axis.

      If I read the docs (and dc42) right, 0,0 should be at the proximal axis pivot. Meaning X and Y should be decreasing as the effector moves away from the axis. I'm wondering if I should be using angles in the lower quadrant (negative going on both axes) because the bot is left handed. e.g. 180-360 instead of 0-180.

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      @JoergS5

      So this config line:

      M669 K4 P280 D270 A0:180 B25:160 C0:0:0 ; set to SCARA and set params

      results in this:

      X:-26.283 Y:-92.346 Z:0.000 E:0.000 E0:0.0 Count 16200 14400 0 Machine -26.283 -92.346 0.000 Bed comp 0.000

      Which is sorta right ( -26, -92 is "kinda" sane ) but any motion fails with "Target Position not reachable from current position".

      I had created macros to move each motor individually some time ago, and the motion direction is appropriate as described by the section you linked (that's where I got my information above) and without them I mostly can't move the motors because any G1 (any number) is met with "Target position not reachable from current position". When I move the motors individually, the x/y co-ordinates don't make any sense in this configuration.

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      @JoergS5

      I've tried this:
      M669 K4 P280 D270 A0:180 B160:25 C0:0:0 ; set to SCARA and set params

      The proximal arm homes all the way counterclockwise, and the distal arm homes all the way clockwise. I'm not at all certain which way it SHOULD be here. I've tried all four permutations:

      M669 K4 P280 D270 A0:180 B160:25 C0:0:0 ; set to SCARA and set params
      M669 K4 P280 D270 A0:180 B25:160 C0:0:0 ; set to SCARA and set params
      M669 K4 P280 D270 A180:0 B160:25 C0:0:0 ; set to SCARA and set params
      M669 K4 P280 D270 A180:0 B25:160 C0:0:0 ; set to SCARA and set params

      Any permutation that doesn't have them opposite says X is at 520mm, which would be with the distal arm fully extended.

      It's my understanding the angle should be increasing in the counter-clockwise direction, so A0:180 B160:25 should be correct... I think? It's not straightforward at all 😄

      M114 still says:

      X:-26.283 Y:-92.346 Z:0.000 E:0.000 E0:0.0 Count 16200 14400 0 Machine -26.283 -92.346 0.000 Bed comp 0.000

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • RE: Duet 3 SCARA questions

      Config:

      ; Drives
      M569 P0 S1 ; physical drive 0 goes forwards
      M569 P1 S0 ; physical drive 1 goes forwards
      M584 X0 Y1 ; set drive mapping
      M669 K4 P280 D270 A180:0 B25:160 C0:0:0 ; set to SCARA and set params
      M350 X16 Y16 I1 ; configure microstepping with interpolation
      M92 X90.00 Y90.00 ; set steps per mm
      M566 X900.00 Y900.00 ; set maximum instantaneous speed changes (mm/min)
      M203 X6000.00 Y6000.00 ; set maximum speeds (mm/min)
      M201 X500.00 Y500.00 ; set accelerations (mm/s^2)
      M906 X800 Y800 I30 ; set motor currents (mA) and motor idle factor in per cent
      M84 S30 ; Set idle timeout

      ; Axis Limits
      M208 X-1000 Y-1000 S1 ; set axis minima
      M208 X1000 Y1000 S0 ; set axis maxima

      ; Endstops
      M574 X1 S1 P"^io0.in" ; configure active-high endstop for low end on X via pin io0.in
      M574 Y2 S1 P"!^io1.in" ; configure active-high endstop for low end on Y via pin io1.in

      After Homing, M114:

      X:-26.283 Y:-92.346 Z:0.000 E:0.000 E0:0.0 Count 16200 14400 0 Machine -26.283 -92.346 0.000 Bed comp 0.000

      So 180º and 160º.

      Moving each arm -20º ( counterclockwise ) results in:

      X:-128.114 Y:-138.061 Z:0.000 E:0.000 E0:0.0 Count 14400 12600 0 Machine -128.114 -138.061 0.000 Bed comp 0.000

      So 160 and 140º, as expected.

      But a +10 X (any move, actually) move with Dashboard jog controls gets "intermediate positions outside machine limits".

      The X and Y locations when homed match measured distances - that is, roughly 92mm from the proximal axis and 26mm offset. But moving the axis with G91; G1 H2 X-20; G90 (a macro) and the x/y co-ordinates are dramatically off.

      What am I getting wrong here?

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite
    • Duet 3 SCARA questions

      So I decided to build a SCARA drawbot just to learn more about kinematics and for something "cool" to design and build. I'm using 3.2-beta on a beta Duet board.

      I built the SCARA left handed due to lack of thought on my part:

      Autodesk Fusion 360 2020-10-14 16.04.09.png

      I'm currently homing the proximal arm to the top vertical position, and the distal arm to the max extension (about 160 degrees or so)

      My kinematic config is:
      M669 K4 P267 D267 A0:180 B20:140 C1:0:0 ; set to SCARA and set params

      Current config:

      M208 X0 Y20 S1 ; set axis minima in degrees
      M208 X180 Y140 S0 ; set axis maxima in degrees

      ; Endstops
      M574 X2 S1 P"^io0.in" ; configure active-high endstop for low end on X via pin io0.in
      M574 Y1 S1 P"!^io1.in" ; configure active-high endstop for low end on Y via pin io1.in

      C1: because the angle between the proximal and distal arm increases as the proximal arm moves clockwise. Proximal goes from 0 at the vertical position in the picture to nearly 180, though I'm actually only moving it to, say, 110 degrees.

      G91
      G1 H2 X10
      G1 H2 Y10
      G90

      Results in both arms moving 10 degrees (roughly) clockwise.

      When I home the arms DWC reports X-517.9 Y-91.3. Any attempt to move gets

      Error: G0/G1: target position not reachable from current position

      Three questions:

      1)Is there anything there that's obviously wrong (ie, "don't make it left handed"); any config suggestions are welcome

      1. Is there a way to get the angle of the arms rather than cartesian co-ordinates?

      2. Where does it think X=0 Y=0 are, and how do I control that?

      Thanks in advance!

      posted in Duet Hardware and wiring
      jstevewhiteundefined
      jstevewhite