cmcgrath5035

Forum Replies Created

Viewing 15 posts - 436 through 450 (of 1,771 total)
  • Author
    Posts
  • in reply to: tinyg interprets G2/G3 code incorrectly #10653
    cmcgrath5035
    Moderator

    Try mm mode, or a PP that will generate all G1 moves (no arcs)

    in reply to: how can I monitor the status of a homing operation? #10649
    cmcgrath5035
    Moderator

    Homing: I sort of understand your objective but believe it is incompatible with how the homing command works. The most prevalent use for tinyG ia XYZ milling machines, with support for rotational axes as well but few well defined use cases.
    Many users implement only X,Y homing, no Z switches. There is only one homed state, yes/no. So issuing a G28.2 homes specified axes, assumes axes not on the list are not home-able (no switches) and sets the homed state if the specified axes complete successfully.
    It is not clear to me how to make it work for your use case.

    LabView and I/O – When you say ” I query the serial port for how much in the buffer and read that out. “, are you referring to the Labview receive serial buffer or the tinyG transmit serial buffer?
    There is no “some back-and-forth in the background I’m not aware of.” beyond Xon/Xoff or RTS/CTS hardware level flow control on the tinyG side.

    in reply to: how can I monitor the status of a homing operation? #10646
    cmcgrath5035
    Moderator

    Query state of switches? in tinyG 440.20, I think answer is no, but need to dig out the whole answer. Perhaps in the new I/O implemented in G2core, some of which may be backported to tinyG in futurehttps://github.com/synthetos/g2/wiki/Digital-IO

    Can you describe how LabView interfaces to tinyG? Serial port (USB) direct connect, or via an intermediary (e.g. SPJS). Baud rate, flow control, etc?

    in reply to: burn config file to tinyg board? #10644
    cmcgrath5035
    Moderator

    confusing indeed

    So in tinyG FW (and Hardware) space, there is a command, defa=1, that when executed copies the compiled set of defaults into EEPROM, making them current. Used on occasions when EEPROM gets corrupted. The compiled in defaults are almost never what real users want/need.
    A few folks have gone to the trouble of compiling their own version of the tinyG FW with their stable machine setting compiled in, so that defa=1 reverts the machine to their native setup.
    It is always good to keep a file around on you host computer of all the parameter settings that are working well for you. That would be a $$ parameter dump.

    in reply to: burn config file to tinyg board? #10642
    cmcgrath5035
    Moderator

    You running tinyG or G2core?

    No need with tinyG, the controller has onboard EEPROM, configuration changes are persistent.

    But since you are asking, likely you are running G2core, where there is no persistent memory (yet).

    There are at least 2 options
    1. If you are a Chilipeppr user, the SPJS widget has an option to send a set of initialization commands to tinyG(G2core) on startup. Those could be parameter updates.
    2. What I prefer to do is rebuild the G2core binary with a custom parameters.h file that has my specific configuration. Those defaults are loaded on restart, can be tweaked from there on.

    in reply to: TinyG and DQ542MA Stepper Motor Drivers? #10639
    cmcgrath5035
    Moderator

    I agree with Gallen66 that external drivers are not required for tinyG to run NEMA 23s, but you will get maximum stepper performance, should you need it, with those external drivers.
    Many folks do run with external drivers, particularly those with long running (hours at a time) Gcodes controlling high current steppers.
    If you choose not to use your external drivers, be sure to provide adequate moving air (a fan) for tinyG

    It is a builders choice.

    I’ll add that if you do run high current/high torque motors, you should routinely check fastener torque, particularly pulley set screws.
    It’s not 100% clear that some of the machine designs in service were designed to handle the power (torque) that is available these days.

    in reply to: Wiring and recomendations #10634
    cmcgrath5035
    Moderator

    If you anticipate doing a lot of projects like this, consider investing in some ferrules and a tool.
    For exaample


    Makes terminating stranded wire in screw terminals much cleaner and fool proof

    in reply to: rotary axis scaling not making sense #10630
    cmcgrath5035
    Moderator

    A axis parameters are displayed, in cli mode, with $a command.

    I don’t understand your comment

    “The rotary stage should be in mode 2 and act simply like the linear stages.”

    Axis modes are defined here: https://github.com/synthetos/TinyG/wiki/TinyG-Configuration-for-Firmware-Version-0.97#xam—axis-mode

    Gcode movements for rotational axes are in degrees, G1 A3 is a 3 degree movement in standard mode. $aam=1. Use $3tr (in your case, if A axis stepper is connected to motor 3) to implement gearing ratio from stepper to output shaft.
    The Gcode specifies movement of the output shaft.

    If you prefer to create a custom Gcode stream that specifies linear movement, e.g. G1 A5 to move the A axis 5mm , then you can set $aam=3 (radius mode) and parameter $ara is set based on this definition https://github.com/synthetos/TinyG/wiki/TinyG-Configuration-for-Firmware-Version-0.97#ara—radius-value

    I don’t know of any ‘standard’ tool chain that would generate that Gcode for you

    in reply to: rotary vs linear axis homing (or not) #10628
    cmcgrath5035
    Moderator

    I sort of follow your discussion above.
    First, see my comment in your other post, what I read says setting min=max=360 degrees is equivalent to shutting off limits, but not clear from your description that is what is happening either.

    I believe your switch action is not what is programmed into tinyG fw. You have both A switches set $asn=$asx=1, homing.
    Only one should be set =1, you home to min or max, not both (or either).
    TinyG homes on a transition, either low-high or high-low, based on $st setting, NO or NC.

    You could fork the firmware and rework the C code, if you want.

    in reply to: rotary axis scaling not making sense #10626
    cmcgrath5035
    Moderator

    To be honest, first person I have seen using rotary axis limits.
    This Link https://github.com/synthetos/TinyG/wiki/TinyG-Configuration-for-Firmware-Version-0.97#xtn-xtm—travel-minimum-travel-maximum says setting min and max to same value means “no limits, which may explain behavior in your other post

    You have both motor 3 and motor 4 mapped to A axis and enabled.
    Is this really true?. I’m not sure it would make a difference if M4 were not connected to anything.

    You have Motor 3 mapped to A axis and A axis in radius mode, Radius = 0.1989 deg, which is interpreted as move 1/.1989 degrees when G1 A1 is sent. Re-read how $3tr =2 is interpreted for a rotary axis.
    https://github.com/synthetos/TinyG/wiki/TinyG-Configuration-for-Firmware-Version-0.97#1tr—travel-per-revolution
    I am not 100% clear if your movement described is rotary stepper or rotary output after gear reduction

    When I read

    When I send the command G1 F100 A1 it moves more than 360 degrees instead of one degree.

    I sort of think you should be in $aam=1, so that G1 A1 means 1 degree of movement requested.

    • This reply was modified 7 years, 1 month ago by cmcgrath5035.
    in reply to: Wiring and recomendations #10623
    cmcgrath5035
    Moderator

    The tinyG wiki at https://github.com/synthetos/TinyG/wiki/ has some general wiring recommendations but machine sizes and your ultimate set-up goals dictate details.
    The DQ542MA can be interfaced to tinyG, bypassing the on-board stepper drivers. If you want to increase the current drive capability to your steppers and improve thermal handling, the DQ542MA will do that for you, at a cost you have already paid out, from your description.
    Interfacing tinyG 3.3v logic directly to external opto-isolated units like the DQ542MA can lead to marginal drive conditions. You might consider adding some buffer and level translation logic such as shown in this wiki item https://github.com/synthetos/g2/wiki/G2core-on-DUE—External-Interfaces

    I suggest you visit https://plus.google.com/communities/110852928951643236736 and https://plus.google.com/communities/104346367498010042037/stream/dbb1a4ab-a641-41e9-ac80-b7b273986da7 and read thru posts from folks proud of their machine builds, many of which include YouTube videos.

    in reply to: rotary axis scaling not making sense #10622
    cmcgrath5035
    Moderator

    OOps, the link you posted points to this thread, not your Parameters dump

    in reply to: Motor 2 driver malfunction #10619
    cmcgrath5035
    Moderator

    I saw your message, they will get back to you.

    in reply to: rotary axis scaling not making sense #10618
    cmcgrath5035
    Moderator

    Not that it should really matter for this discussion, are we discussing a tinyG or G2core machine here? I ask because tinyG does not support $_mi=16, but you are not using $_mi=16 either.
    Also, I will assume you are using the onboard tinyG drivers, or a Gshield/DUE hardware setup. If Gshield, the microstepping pins are all open, thus $_mi=8

    Also assuming from what you show that $3ma=3, mapping motor 3 to A axis

    Can you verify assumptions so far, or describe what is different?

    Can you provide all the motor 3 and all the A axis parameters?
    That would be results of $3 command and $a command
    Or, Dump all parameters $$ , copy them to a Cloud drive and provide a URL for viewing.

    in reply to: tinyg interprets G2/G3 code incorrectly #10615
    cmcgrath5035
    Moderator

    Perhaps, but do be aware that at any point in time tinyG and G2core may or may not be the same code/algorithms.
    There is a chance that in G2core $fb=100.26, the most recent builds, some additional tweaks to the ‘gCode to motion’ code have been made.
    This is a long standing issue, with roots in interpretation of gCode implementation ‘rules’ used by the generators (e.g. Fusion) and the interpreters, e.g. tinyG or G2. Compute accuracy may also have a play here (8bit vs 16 bit).
    But good to see you are making progress.

Viewing 15 posts - 436 through 450 (of 1,771 total)