-
AutorePost
-
3 Giugno 2018 alle 10:20 #3229
theremino
Amministratore del forumQuesto programmino di automation dovrebbe aiutarti, produce movimenti random in XYZ molto simili al tuo esempio.
Se hai bisogno di modificarlo per aggiungere la posizione del comparatore chiamami e ti aiuterò.
L’idea sarebbe di riuscire a ottenere l’errore anche senza Theremino CNC e quindi eliminare una grossa parte di possibilità dalle ricerche.v1 = 0 ' Random Minimum v2 = 10 ' Random Excursion v5 = 1 ' Counter start v6 = 50 ' Counter end Label MainLoop Gosub WaitAllMotOrs Slot(1) = v1 + v2 * Rnd Slot(3) = v1 + v2 * Rnd Slot(5) = v1 + v2 * Rnd v5 = v5 + 1 Print v5 & " of " & v6 If v5 >= v6 Goto End EndIf Goto MainLoop Label End Slot(1) = 0 Slot(3) = 0 Slot(5) = 0 End Label WaitAllMotors Wait Seconds 0.1 ' ---- ensure motors really started Label WaitAllMotors2 If Abs(Slot(2)) + Abs(Slot(4)) + Abs(Slot(6)) < 0.01 Return EndIf Goto WaitAllMotors2 ' End of WaitAllMotors
3 Giugno 2018 alle 22:57 #3231VincenzoS
Partecipante1) Ho mandato i file ad un amico che li eseguirà su una macchina con gli stessi motori… attendo esito.
2) Preparo file più piccolo con codici che sbagliano.
3) i codici alla fine mi servivano per spedire la CNC al comparatore, lettura di alcuni secondi e poi via a posizione di partenza.
4) Lo stesso file è stato scritto anche in automation con gli stessi movimenti e non ha prodotto errori. Non sbaglia.“…Dopo ogni test Theremino CNC segnava 0 in Z ma la macchina meccanicamente NO. Ma marcatura su asse Z e micrometro sempre in sintonia….”
Marcatura su asse Z cosa è ???qui mi sono espresso male…
Ho segnato un linea sul giunto motore per sincerarmi che non ci fossero slittamenti anomali della vite a ricircolo.
Questa linea, prima di ogni test è stata posizionata in linea con riferimento marcato sulla struttura e indice 0 sul comparatore.Domani sera provo con automation e produco nuovo aggiornamento.
Saluti.
4 Giugno 2018 alle 8:38 #3235theremino
Amministratore del forumCon una sequenza di X Y Z scritta in automation l’errore non c’è stato?
Era proprio XYZ come quella che ha sbagliato? Ho capito bene?
A questo punto allora bisognerà concentrarsi sulle differenze tra le due fino a capire dove sta il problema.Fai sempre attenzione al valore che si trova sullo Slot 5 (asse Z) sulla applicazione HAL.
Quel valore deve terminare sempre con zero (o con il valore da te stabilito come valore finale)
Mi sembra che hai già confermato che è così, ma ci tengo a farti notare che quel valore è il riscontro più sicuro che abbiamo. Se lui è giusto allora il problema può essere solo dopo, quindi nel Master, nei segnali di pilotaggio dei driver, o nei driver, o nei motoriMi hai scritto che il programmino di Automation ti da un errore, in effetti è stato scritto con la versione 4 che ha molte istruzioni nuove. La pubblicheremo oggi o domani e magari tra qualche ora te ne mando una provvisoria per posta o aggiungo un link qui.
4 Giugno 2018 alle 9:07 #3237theremino
Amministratore del forumEcco i collegamenti alla versione 4.1 (provvisoria) di Automation:
http://www.theremino.com/wp-content/uploads/files/Theremino_Automation_V4.1.zip
http://www.theremino.com/wp-content/uploads/files/Theremino_Automation_V4.1_WithSources.zipE finalmente Automation dispone anche di un vero file di documentazione:
http://www.theremino.com/wp-content/uploads/files/Theremino_Automation_Help_ITA.pdfLa versione 4.1 è tutta un’altra cosa rispetto alle precedenti.
Ci sono i Breakpoint, i Watch, il FullsScreen, i Select-Case e molte altre nuove istruzioni.6 Giugno 2018 alle 12:38 #3259VincenzoS
PartecipanteBuongiorno, ho eseguito il programma random con Automation numerose volte con varie impostazioni dei parametri e diverse velocità da 1000 mm/min. a 4000.
Nel video inviato a Theremino (non sono riuscito ad allegarlo qui – qualcosa andava storto) si può vedere il risultato ottenuto con tutte le variabili.
E’ sempre stato preciso.
Nella stessa sessione operativa ho eseguito anche qualche Gcode con Theremino CNC per verifica… ed ecco l’errore comparire già dopo 2000 righe di codice.
Con un “go to zero” i parametri letti negli slot e nel master risultano ZERO.
Una cosa in particolare notavo (speriamo sia utile) … Nella schermata di Theremino CNC i valori di XYZ non sempre corrispondono con quelli del master e degli slot. Mi è capitato di vedere che un lavoro che in genere termina con la Z in sicurezza di 10mm di avere un valore visualizzato nel CNC di 9.950, nel master e negli slot è 10.
O anche che invece di stare a zero dice .050, master è a zero ed un “go to zero” non produce effetti meccanici ma azzera solo il display CNC.
Appena posso posto qualche foto.
Saluti
Vincenzo6 Giugno 2018 alle 18:09 #3262theremino
Amministratore del forumPer ora lasciamo perdere eventuali piccoli errori di 0.050 che sono causati dalla tolleranza che si imposta sulla app. CNC.
Se sull’HAL alla fine il valore di Z è zero, non importa chi ha inviato i valori (Automation o CNC), il motore zeta deve stare a zero.
Per cui la perdita di passi deve essere dopo, nella zona Master – Drivers – MotoriSe ci fosse un errore nel firmware del Master, questo errore si verificherebbe sia inviando dati da Automation che da CNC, per cui lo escluderei.
Quindi bisogna cercare nella zona (diciamo elettromeccanica) tra le uscite del Master i Driver e i Motori.Importante anche notare che (grazie al disaccoppiamento totale dato dagli slot) l’unica differenza tra Automation e CNC può essere solo nei tempi con cui vengono inviati i valori.
Questa settimana inizierò una revisione profonda della applicazione CNC e chissà che mi venga qualche altra idea.
7 Giugno 2018 alle 10:09 #3265VincenzoS
PartecipanteGrazie, intanto ricontrollo anche tutto dal principio.
E’ strano comunque che accade tutto questo.
Ieri un incisione a profondità variabile di dimensioni piccole (3 cm) con .6mm di profondità massima e poche righe di comandi ha scavato in totale per 1mm.
Non fa errori se eseguo incisioni a profondità fissa dove i movimenti in Z sono solo quelli in rapido per spostarsi da una zona all’altra.Saluti.
Vincenzo15 Giugno 2018 alle 12:34 #3309VincenzoS
PartecipanteBuongiorno Livio, spero sia utile questo mio ultimo test
“RAPIDO”
T1M6
G0Z5.000
G0X0.000Y0.000
G0X10Y10Z5.000
G0Z0
G0X0Y0Z-5
G0X10Y10Z-3
G0X0Y0Z0
M30“LENTO”
T1M6
G1Z5.000
G1X0.000Y0.000
G1X10Y10Z5.000
G1Z0
G1X0Y0Z-5
G1X10Y10Z-3
G1X0Y0Z0
M30Il file “rapido” viene eseguito senza errori con movimenti in rapido sino a 6000mm/min.
il file “lento” con solo codici G1 va in errore anche su tutti gli assi in maniera casuale con errori a volte anche superiori a .1mm. Con feed anche di 100.
Attivando la compensazione la situazione peggiora.
Ulteriore test con G1 e feed a 6000 sembra non produrre errori.
I test sono stati eseguiti con portatile con e senza alimentazione di rete.
Saluti
Vincenzo. -
AutorePost
- Devi essere connesso per rispondere a questo topic.