joint 0 following error

More
4 years 6 months ago #240744 by diep
joint 0 following error was created by diep
Hello!

I get each time after it starts program a joint following error.
most of time joint 0. sometimes joint 1 or joint 2.

This thing worked before like dream with linuxcnc.

What causes linuxcnc to display this error?
 

Please Log in to join the conversation.

More
4 years 6 months ago #240746 by PCW
Replied by PCW on topic joint 0 following error
Usually this is a result of a joint setup error in the hal or ini files.

 (Often the step generator is being asked to do something it cannot
so the feedback position lags the commanded position, causing
a following error)

Can you post your hal and ini files?

Please Log in to join the conversation.

More
4 years 6 months ago #240748 by diep
Replied by diep on topic joint 0 following error
Of course, should've done directly!

Let me know if you miss any files!

Please Log in to join the conversation.

More
4 years 6 months ago #240751 by diep
Replied by diep on topic joint 0 following error
Note those who wonder how looks like underneath the cardboard - had 3d printed some wheels to CNC the machine. Was fun but wouldn't do it again.  

Attachment not found

Please Log in to join the conversation.

More
4 years 6 months ago #240752 by PCW
Replied by PCW on topic joint 0 following error
What LinuxCNC version is this?

Please Log in to join the conversation.

More
4 years 6 months ago #240753 by diep
Replied by diep on topic joint 0 following error
At one of photos attached at first posting it is 2.7.0 i suppose.

Please Log in to join the conversation.

More
4 years 6 months ago #240754 by Clive S
Replied by Clive S on topic joint 0 following error

At one of photos attached at first posting it is 2.7.0 i suppose.

RE:-
MAX_ACCELERATION = 0.3
STEPGEN_MAXACCEL = 0.3
I believe the STEPGEN_MAXACCEL = 0.3 needs to be 25% more than the MAX_ACCELERATION. on each axis

Please Log in to join the conversation.

More
4 years 6 months ago #240755 by PCW
Replied by PCW on topic joint 0 following error
If you have backlash compensation enabled
you must set the stepgen maxaccel value to double
the axis maxacceleration value

Please Log in to join the conversation.

More
4 years 6 months ago #240756 by diep
Replied by diep on topic joint 0 following error
Seems have done the job putting those higher!!

Initial speed/acceleration values of machine were really slow. Had tuned those higher past days and then also modified the stepper motor driver values!

Much thanks - would never have figured that one out!



 

Please Log in to join the conversation.

More
1 year 6 months ago #327207 by khawla
Replied by khawla on topic joint 0 following error
Hello everyone,

I have a strange problem with LinuxCNC on a machine that has been configured for a long time and was working perfectly.

Until a few days ago, everything was working fine. Then I modified my Python Touchy GUI file (adding dynamic multi-language translation using `set_label` on some buttons), and from that moment the problem appeared:

> "joint 0 following error" immediately after clicking "Start".

The problem still remains even if I completely delete all the translation modifications (`LABELS` and `on_combo_language_changed`);


Code I had added:

LABELS = {
    "en": {
        "title": "Industry 4.0 Monitoring",
        "total_time": "Total machine work time:",
        "current_job": "Current job time:",
        "next_greaser": "Next greaser in:",
        "time_monitoring": "<b>Time Monitoring</b>",
        "email_section": "<b>Email Notification Management</b>",
        "history_section": "<b>Job History</b>",
        "email": "Email:",
        "add": "Add",
        "remove": "Remove",
        "close_door": "Close Door",
        "open_door": "Open Door",
        "machine_on": "Machine On",
        "machine_off": "Machine Off",
        "home_all": "Home All",
        "pause": "Pause",
        "start": "Start",
        "feed_fast": "Fast",
        "feed_slow": "Slow",
        "feed_override": "Feed Override"
    },
    "it": {
        "title": "Monitoraggio Industria 4.0",
        "total_time": "Tempo totale macchina:",
        "current_job": "Tempo job corrente:",
        "next_greaser": "Prossima lubrificazione in:",
        "time_monitoring": "<b>Monitoraggio Tempo</b>",
        "email_section": "<b>Gestione Notifiche Email</b>",
        "history_section": "<b>Storico Lavorazioni</b>",
        "email": "Email:",
        "add": "Aggiungi",
        "remove": "Rimuovi",
        "close_door": "Chiudi Porta",
        "open_door": "Apri Porta",
        "machine_on": "Macchina On",
        "machine_off": "Macchina Off",
        "home_all": "Home Tutti",
        "pause": "Pausa",
        "start": "Avvio",
        "feed_fast": "Veloce",
        "feed_slow": "Lento",
        "feed_override": "Regolazione Avanzamento"
    }
}

def on_combo_language_changed(self, combo):
    lang = combo.get_active_id() or "en"
    texts = LABELS.get(lang, LABELS["en"])

    # Main Industry 4.0 labels
    self.builder.get_object("title_industria40").set_markup(f"<span size='xx-large' weight='bold'>{texts}</span>")
    self.builder.get_object("label_tempo_totale").set_text(texts["total_time"])
    self.builder.get_object("label_tempo_job_corrente").set_text(texts["current_job"])
    self.builder.get_object("label_tempo_prossimo_greaser").set_text(texts["next_greaser"])
    self.builder.get_object("frame_label_tempo").set_markup(texts["time_monitoring"])
    self.builder.get_object("frame_label_email").set_markup(texts["email_section"])
    self.builder.get_object("frame_label_lavorazioni").set_markup(texts["history_section"])
    self.builder.get_object("label_email").set_text(texts["email"])
    self.builder.get_object("button_add_email").set_label(texts["add"])
    self.builder.get_object("button_remove_email").set_label(texts["remove"])

    # Startup tab buttons
    self.builder.get_object("estop_reset").set_label(texts["close_door"])
    self.builder.get_object("estop").set_label(texts["open_door"])
    self.builder.get_object("machine_on").set_label(texts["machine_on"])
    self.builder.get_object("machine_off").set_label(texts["machine_off"])
    self.builder.get_object("home_all").set_label(texts["home_all"])
    self.builder.get_object("cycle_pausee").set_label(texts["pause"])
    self.builder.get_object("cycle_startt").set_label(texts["start"])
    self.builder.get_object("feed_override_plus").set_label(texts["feed_fast"])
    self.builder.get_object("feed_override_minus").set_label(texts["feed_slow"])

    # Feed Override label, keeping the percentage value
    current_text = self.builder.get_object("feed_override_label").get_text()
    percentage_part = current_text.split(":")[1] if ":" in current_text else " 100%"
    self.builder.get_object("feed_override_label").set_text(f"{texts}: {percentage_part}")

 

Please Log in to join the conversation.

Time to create page: 0.059 seconds
Powered by Kunena Forum