02-06-2022, 01:23 PM
OK, ho capito che fa nel nuovo firmware, anche se c'è un problema che lui ha identificato, ovvero che quando il motore sta girando, il tastierino introduce un lag in lettura (il tastierino è in polling quindi ogni ciclo di clock legge se qualcosa è cambiato).
Comunque prima di tutto bisogna settare i valori di accelerazione e velocità massima. Vi incollo la traduzione :
VELOCITÀ MASSIMA e ACCELERAZIONE:
Se si utilizza questo programma per la prima volta, o sono state apportate modifiche hardware o modifiche nel valore di micro-stepping , è necessario impostare prima la velocità massima e l'accelerazione massima del motore. Il modo più semplice per determinare rapidamente buoni valori di velocità e accelerazione consiste nell'usare la modalità continua, che ha un'opzione per impostare questi valori.
La velocità massima del motore deve essere impostata su un valore "conservativo" che impedisca lo stallo o perdita di passi. Il il valore massimo possibile trovato sperimentalmente è 4000 (passi/sec), ma l'impostazione effettiva sarà molto minore.
Allo stesso modo, bisogna impostare l'accelerazione su un valore che non farà "perdere la posizione" al sistema.
Dal momento che questo programma non riceve feedback sulla posizione fisica effettiva della tavola rotante, si presume che la tavola si muova di un passo per ogni segnale di passo dato; se per qualsiasi motivo la tavola non avanza quando viene dato un segnale di passo, allora la tavola rotante e il programma non saranno sincronizzati e i movimenti della tavola rotante non saranno più accurati.
Micro-stepping massima velocità Acceleration
------------------- ------------------- ------------
1 850 200
2 2500 1000
L'unico modo per determinare i valori migliori per velocità e accelerazione è per tentativi ed errori. Si inizia con valori bassi che funzionano bene, quindi aumentare i valori finché il motore non inizia a bloccarsi, esitare o perdere passi. Quindi impostare il valori per l'uso effettivo pari al 10% o 20% inferiori ai valori di stallo per consentire un margine di sicurezza.
Visto che l'inerzia della massa è un fattore importante in queste impostazioni, le prove dovrebbero essere eseguite con la tavola rotante con un tipico pezzo da lavorare in modo da tenere conto del "carico di lavoro" della tavola.
nb. Secondo la documentazione di AccelStepper: "La velocità che può essere supportata in modo affidabile è di circa 4000 passi al secondo a una frequenza di clock di 16 MHz su Arduino come Uno ecc."
Poi c'è la correzione del backslash che suggerisce di usare la funzione ARC per andare avanti e indietro e misurare quanti step perde, ma se c'è necessità lo vediamo in un prossimo post.
Ora la domanda è, chi monta il nuovo firmware e fa le prove per vedere se funziona? (io no finchè sono invischiato con l'ELS)
Comunque prima di tutto bisogna settare i valori di accelerazione e velocità massima. Vi incollo la traduzione :
VELOCITÀ MASSIMA e ACCELERAZIONE:
Se si utilizza questo programma per la prima volta, o sono state apportate modifiche hardware o modifiche nel valore di micro-stepping , è necessario impostare prima la velocità massima e l'accelerazione massima del motore. Il modo più semplice per determinare rapidamente buoni valori di velocità e accelerazione consiste nell'usare la modalità continua, che ha un'opzione per impostare questi valori.
La velocità massima del motore deve essere impostata su un valore "conservativo" che impedisca lo stallo o perdita di passi. Il il valore massimo possibile trovato sperimentalmente è 4000 (passi/sec), ma l'impostazione effettiva sarà molto minore.
Allo stesso modo, bisogna impostare l'accelerazione su un valore che non farà "perdere la posizione" al sistema.
Dal momento che questo programma non riceve feedback sulla posizione fisica effettiva della tavola rotante, si presume che la tavola si muova di un passo per ogni segnale di passo dato; se per qualsiasi motivo la tavola non avanza quando viene dato un segnale di passo, allora la tavola rotante e il programma non saranno sincronizzati e i movimenti della tavola rotante non saranno più accurati.
Micro-stepping massima velocità Acceleration
------------------- ------------------- ------------
1 850 200
2 2500 1000
L'unico modo per determinare i valori migliori per velocità e accelerazione è per tentativi ed errori. Si inizia con valori bassi che funzionano bene, quindi aumentare i valori finché il motore non inizia a bloccarsi, esitare o perdere passi. Quindi impostare il valori per l'uso effettivo pari al 10% o 20% inferiori ai valori di stallo per consentire un margine di sicurezza.
Visto che l'inerzia della massa è un fattore importante in queste impostazioni, le prove dovrebbero essere eseguite con la tavola rotante con un tipico pezzo da lavorare in modo da tenere conto del "carico di lavoro" della tavola.
nb. Secondo la documentazione di AccelStepper: "La velocità che può essere supportata in modo affidabile è di circa 4000 passi al secondo a una frequenza di clock di 16 MHz su Arduino come Uno ecc."
Poi c'è la correzione del backslash che suggerisce di usare la funzione ARC per andare avanti e indietro e misurare quanti step perde, ma se c'è necessità lo vediamo in un prossimo post.
Ora la domanda è, chi monta il nuovo firmware e fa le prove per vedere se funziona? (io no finchè sono invischiato con l'ELS)