Vai al contenuto
PLC Forum


Posizionamento Asse Con Cj1Mcpu21 E Encoder + Inverter


amedeoferoci

Messaggi consigliati

Salve,

mi piacerebbe molto avere Vostre considerazioni (ed anche un buon aiuto!) in merito ad una operazione che sto effettuando su una macchina.

Premesse molto riassunte

Ho una macchina con la quale è possibile tagliare in lunghezza e quindi forare delle barre di legno, mediante un sistema di avanzamento dei pezzi su un doppio "cingolo", uno dei quali fissato su una spalla fissa e l'altro su una spalla mobile, per poter impostare tutte le dimensioni di taglio desiderate.

Dopo la prima operazione di taglio, il pezzo avanzava verso la seconda operazione di foratura; giunto a battuta in prossimità di due pistoni pneumatici, una volta bloccato in posizione, salivano verticalmente due elettromandrini, tramite supporto pneumatico, quindi una volta forato il pezzo nella direzione ortogonale al lato lungo, gli elettromandrini e i pistoni ritornavano in posizione ed il pezzo continuava il suo movimento verso l'uscita dei cingoli.

Ho avuto la necessità di realizzare queste barre di legno con foratura "di testa" e non piu' sul lato lungo.

Dopo le opportune modifiche meccaniche sui due gruppi mandrini, che ho quasi terminato, e le varie modifiche di cablaggio in quanto la disposizione dei mandrini è cambiata, sto arrivando al bello, e cioè la messa a punto del programma del plc, da modificare in base alla nuova configurazione della macchina.

A questo punto ho bisogno del vostro aiuto! :smile:

La macchina è comandata da un Cj1m cpu21 e relativi moduli i/o, c'è inoltre un encoder (Hohner BS1930/500) fissato all'asse che mette in movimento i due cingoli che si occupano dell'avanzamento dei pezzi. Poi al plc è collegato un pannello NS5 da cui si danno i var icomand ialla macchina (apertura spalla, avviamento motori taglio, avviamento avanzamento pezzi, attivazione/esclusione mandrini foratura). L'inverter che comanda il motore di avanzamento dovrebbe essere un omron J7 (devo verificare, ora mi sfugge)

Questa la premessa (posso integrarla con tutti gli eventuali altri dati necessari).

Ho scaricato i manuali del plc e tutti gli altri manuali da voi consigliati per la programmazione del cj1m, avendo già da qualche tempo letto tutti i messaggi che in qualche modo riguardano questo argomento, e cioè il posizionamento di un asse con encoder e inverter. Dispongo della versione 6.1 di Cx programmer e del programma originale che gestiva le operazioni della macchina.

Ora cosa dovrei modificare?

Innanzitutto vorrei capire esattamente dove intervenire e modificare i parametri per variare la "fermata" del pezzo al momento della foratura, in quanto i cingoli precedentemente facevano percorrere al pezzo in lavorazione una distanza tale che la foratura avvenisse da dietro, nel lato lungo del pezzo, perpendicolarmente.

Ora che devo ottenere la foratura di testa (ho cioè ruotato i mandrini di 90 gradi) il pezzo si dovrebbe "fermare" un po' prima.... mi sarebbe veramente molto molto utile un vostro consiglio su come intervenire e cambiare i parametri, affinchè il pezzo possa arrestarsi ad una distanza inferiore da me indicata.

Immagino che siano necessari ulteriori dati, tipo il motore (nr giri e dati riduttore), diametro pulegge dei cingoli ecc.... oppure avendo già il programma (e quindi lo stack che si occupa del calcolo per l'avanzamento dei pezzi) potrei solo cambiare dei parametri ed ottenere il posizionamento? si tratterebbe di circa 30 mm prima, rispetto a quello che è ottenuto con l'attuale programma...

Ci sarebbe una "scorciatoia" che mi possa permettere di accorciare la distanza fatta percorrere al pezzo? Leggevo in altre discussioni, sempre qui, quando avete dato delle indicazioni su come si lavora con i dati dell'encoder, ma essendo abbastanza inesperto nella programmazione non vorrei fare danni o stare molto tempo su una cosa che per voi è come l'abbicì :smile:

Posso pubblicare il file del programma attuale o la stampa/immagine della porzione di programma in cui si trattano questi movimenti.

Come secondo obiettivo, vorrei anche modificare l'attuale movimento della macchina per quanto riguarda la prima lavorazione di taglio.

Attualmente il taglio avviene tramite due motori, fissati a due pistoni pneumatici, che salgono e scendono alternativamente una volta che il pezzo è posizionato sotto di essi e bloccato da pistoni pneumatici.

Io vorrei far tagliare i pezzi durante il loro movimento in avanti sui cingoli, bloccando i due motori in posizione parallela, appena fuori dei cingoli, senza cioè far effettuare la prima fermata del pezzo, il bloccaggio e il taglio con i motori che salgono / scendono.

Naturalmente anche questa operazione è nel programma attuale ed io ho immaginato di bloccare i due motori meccanicamente e di eliminare nel programma la parte di arresto pezzo, bloccaggio e ripartenza.

A questo punto spero di essere riuscito a illustrarvi la situazione, sono comunque a vostra disposizione per fornire altri elementi utili a inquadrare tutti gli aspetti, tra poco carichero' qui il programma del plc nell'attuale versione e alcune immagini dei "punti" in cui dovrebbero avvenire queste operazioni che io voglio modificare.

Vi ringrazio per la pazienza di aver letto tutto il lungo messaggio, spero molto in vostre considerazioni e suggerimenti, ho comunque il desiderio e l'intenzione di studiare i manuali omron e risucire a capirne sempre di piu'.... ma se intanto riuscissi a fare queste prime modifiche, la macchina sarebbe in funzione... ;)

Grazie ancora

Andrea

Link al commento
Condividi su altri siti


senza vedere la macchina e verificare alcune cose, io che non sono esperto come tanti qui faccio fatica ad aiutarti, ma teoricamente se ti colleghi col plc quando il pezzo è in movimento, dovresti vedere il canale encoder che incrementa, se segui quel canale vedrai che setta un keep o qualche altra menoria di stop comunque ci guardo stasera meglio e poi ti faccio sapere , ma spiega meglio cosa devi fare

Link al commento
Condividi su altri siti

Grazie harl per la risposta, in effetti ho intenzione di collegarmi col cx-programmer al plc mentre è in funzione, debbo prima finire di rimontare la macchina dopo le modifiche meccaniche apportate.

In ogni caso, quello che devo modificare è il percorso che ogni pezzo compie, una volta caricato sui cingoli di avanzamento. Cioè invece che percorrere una determinata distanza in avanti, dovrei far fermare prima il pezzo, di circa 30 mm.

Visto che l'inverter si occupa del movimento ed il plc lo comanda con le istruzioni ACC (888), INI (880), SPED(885) come si vede nel programma intorno all'istruzione 232 della sezione "trasporto" e come si vede nell'immagine che inserisco sotto, immagino che io debba agire qui.

Ho letto la spiegazione di tali istruzioni sul manuale del plc, purtroppo non riesco a comprendere come sia indicata la distanza percorsa dal pezzo o il numero di impulsi trasmessi, o la logica che sta dietro a queste istruzioni e come si trasferiscono all'atto pratico nel movimento risultante nella macchina.

Riconosco di avere delle notevoli lacune :wacko: e di partire senza molte informazioni di base... in questo momento volevo concentrare gli sforzi verso la messa in funzione il piu' rapidamente possibile della macchina....

Link al commento
Condividi su altri siti

aggiungo ancora un dettaglio

nella sezione "conteggio trasporto" che è nel programma, ci sono delle istruzioni che sicuramente sono collegate al discorso del posizionamento, forse nell'istruzione 495? quando si fa una addizione, poi piu' sotto una sottrazione e tra i commenti appare "distanza tra micro e battuta taglio"...

:wacko:

ci sono anche tutta una serie di condizioni e consensi affinchè la macchina proceda in questa serie di operazioni: il pezzo entra, viene trasportato in avanti ed attiva un micro, quindi arriva ad una battuta formata da un pistoncino che scende (il pistoncino ha i sensori di posizione alto/basso), poi altri pistoncini bloccano il pezzo anche lateralmente... quindi un disco montato su un pistone posto in movimento verticale, scende e taglia il pezzo (il pistone ha anch'esso i sensori che indicano la posizione su o giu)

una volta che il pezzo è tagliato, i pistoni lo liberano e il pezzo procede ancora in avanti fino alla successiva battuta e come in precedenza viene bloccato da altri pistoni.

A questo punto si attiva un mandrino che fora il pezzo, quindi il pezzo è liberato e prosegue in avanti...

Spero di aver chiarito e di non aver creato piu' confusione!! :smile:

Link al commento
Condividi su altri siti

allora al volo ,perchè ho anch'io dei casini con una macchina quindi sono nei guai ma comunque

rung 10-497

d200 impulsi trasporto

d250 quota distanza tra micro e battuta di taglio ,quando d200 è uguale a d250 ed i due bit sono alti si setta la memoria di ok pezzo in posizione di taglio

d260 distyanza tra micro e battuta ingresso

Modificato: da harl
Link al commento
Condividi su altri siti

Ciao harl,

potresti spiegarmi ancora un po' questa cosa? :smile:

Non riesco a capire in che unità di misura sono queste grandezze o comunque cosa dovrei cambiare....

Tra l'altro, stasera ho rimontato la macchina ed ho avviato la procedura col vecchio programma, ho tentato di accedere al plc tramite pc, cavo seriale e cx programmer, ma non sono riuscito :toobad: devo verificare i settaggi e i dip switch, siccome era tardi provero' domani ad entrare e a verificare il funzionamento a pc collegato

Link al commento
Condividi su altri siti

come prima cosa vorrei entrare con cx programmer e attivare ogni attuatore per verificarne la funzionalità, specialmente nella zona in cui ho modificato meccanicamente la macchina (dove ho girato la posizione dei mandrini, vorrei farli lavorare in manuale, attivandoli uno per uno, per verificare che non vadano in posizioni errate tipo contro i cingoli di avanzamento....)

poi faro' girare il programma e seguiro' l'illuminazione in verde dei rung, in modo da capire tutte le fasi e le condizioni che il programma richiede, quindi procedero' al cambio dei parametri per far avanzare il pezzo con circa 30 mm di meno rispetto ad ora... poi devo settare le lame di taglio in posizione fissa ed escludere la prima fermata così come aviene adesso.... :wacko: la vedo lunga... e complicata!

ma non mi arrendo, DEVO risolvere i problemi e far funzionare la macchina come dico io (e cioè come la programmo), ma d'altronde sappiamo tutti che le macchine fanno quello che gli si dice, non quello che si vuole!! :P

Link al commento
Condividi su altri siti

che plc monti per vedere il collegamento ? dimmi se capisci.........................

allora un encoder ha un unita di misura che indica gli impulsi giro, cioè un giro completo del suo alberino equivalgono a tott impulsi, esempio rapporto 1/10 un giro dieci impulsi in uscita se in un giro fa per tutta la meccanica dietro riduttore motore cinghie ecc.. un centimetro ecco il dilemma che nel tuo caso sono 30 cm sottrai 30 giri cioe 300 impulsi ho cercato di spiegarti con parole da sacrilegio speriamo che nel forum ora non mi uccidono.

sicuramente la tua misura è salvata in una dm essendo fissa cioè ha un valore in esadecimale in qualche blocco con scritto dm o d soltanto dipende dal modello del plc.

le dm sono aree di memoria tipo dei cassetti dove salvi delle info dei valori che se la metti in un tim ti fa contare il tim fino a quel valore in un cnt ti fa contare cnt fino a quel valore ecc......

collegandoti col plc nei punti visti sopra vedrai che quei blocchi che ti avevo detto hanno un valore ci clicchi su e prova a cambiare il valore ma tieni sempre una mano sul fungo se sbagli almeno fermi al volo e segna il valore originale

d200 erano gli impulsi trasporto che secondo me è il conteggio che fa andando avanti col pezzo quando il conteggio arriva uguale a d250setti la memoria di pezzo ok in posizione d taglio, percui se regoli bene d260 distanza tra micro e battuta e diminuisci d250 di quello che ti serve dovresti esserci .....fammi sapere ciao

facciamo un passo alla volta prima fermiamo il pezzo bene poi guardiamo i mandrini ecc certo che se mi mandi una foto non mi dispiace

Modificato: da harl
Link al commento
Condividi su altri siti

Buongiorno harl, preciso e puntuale come ogni giorno alle 7:23 ! :P

il plc è un cj1m cpu21, mi ero già collegato circa un anno fa, sempre con qualche problema, ma riuscii ad entrare e a scaricare il programma sul pc ed anche il programma del ns5, che poi dovro' modificare, ma come dici tu, un passo alla volta! :smile:

ieri sera ho cercato nei manuali e ho trovato le varie impostazioni dei dip switch e della rete, oggi sono certo di poter entrare nel plc e poi di poter fare le prove preliminari, attivando ciascun attuatore singolarmente.

Poi provero' a modificare come mi dici tu, in questo caso sarebbero 30 mm da togliere, quindi si tratta di togliere qualcosa al d250 se ho ben capito... provo e ti faccio sapere, poi faccio anche delle foto, per migliore comprensione di come è impostata la macchina.

Intanto grazie, a presto!

Link al commento
Condividi su altri siti

:wallbash: non riesco proprio ad andare in linea col plc!

le ho provate tutte, il cavo dovrebbe essere a posto (lampeggia il led di comunicazione), ho anche selezionato online automatico e dopo molti tentativi non riesce a collegarsi...

uso cx-programmer, coem ho già detto... la cosa strana è che se io volessi selezionare manualmente i parametri di connessione, il programma non mi permette di selezionare il tipo di dati 7 (appare 8 non modificabile) la parità ecc ecc... ma perche??? :wallbash:

il plc è in run, non appaiono allarmi o errori, la macchina funziona.... ma non mi lascia entrare con cx programmer!!

:wacko:

Link al commento
Condividi su altri siti

sono entrato! :clap: era il cavo di collegamento sbagliato... mi ha tratto in inganno il fatto che comunque il led di dialog osi accendeva :wacko: comunque ora faccio tutte le prove delle singole componenti in manuale... poi provo a modificare i parametri

Link al commento
Condividi su altri siti

ho scattato alcune foto alla macchina e ora le carico, per una migliore visione della situazione:

intfor1.jpg

qui si vede in primo piano il gruppo motore/encoder, subito dietro il gruppo foratura e poi il gruppo lame taglio

intfor2.jpg

vista laterale in corrispondenza del gruppo foratura

intfor3.jpg

vista laterale in corrispondenza della zona di taglio

Dopo essere entrato nel plc, ho testato in modalità manuale i vari attuatori, ho regolato l'altezza di salita del gruppo foratura e controllato in generale la funzionalità.

Ad un certo punto, ho avuto l'intuizione che per risolvere il problema del taglio, all'inizio delle operazioni, potrebbe essere sufficiente anticipare la fermata del pezzo, sia per il taglio che per la foratura; ho immaginato cioè che la macchina dovrebbe essere stata progettata in modo tale che quando il primo pezzo entra, viene bloccato nella posizione di taglio, avviene il taglio e procede verso la foratura. Nel momento in cui avviene la foratura, allo stesso tempo dovrebbe avvenire il taglio del secondo pezzo, che si è mosso insieme al primo (il primo arriva alla fermata per la foratura, il second oarriva alla fermata per il taglio).. e così via...

Quindi ho ipotizzato che, anticipando opportunamente la fermata dei pezzi, regolando i pistoni che fermano il pezzo in posizione anch'essi spostati in avanti, dovrei ottenere quello che desidero!

E cioè, se io anticipo la fermata del primo pezzo nella zona taglio, automaticamente anche nella zona foro il pezzo dovrebbe arrestarsi prima, della stessa distanza, o no?

:huh:

Link al commento
Condividi su altri siti

Un aggiornamento:

all'entrata dei pezzi, l'impulso di avanzamento pezzo è dato da un micro e cioè quando viene attivato, dopo un certo numero di impulsi encoder, inizia la procedura di fermata/bloccaggio pezzo/ taglio, quindi il pezzo procede e si arresta nella zona foratura.

Ho provato a muovere manualmente il micro ed in base all'anticipo o al ritardo rispetto al dente di trascinamento del cingolo, il pezzo si ferma prima o dopo, mantenendo la stessa distanza tra il punto di inizio della prima fermata e il secondo (taglio e foratura).

Questa sarebbe per me la soluzione piu' semplice, cioè traslare fisicamente il micro indietro, mettendolo su una guida regolabile, ed avrei risolto il tutto senza necessità di riprogrammare :smile:

Lunedì faro' questa operazione e inseriro' qui i risultati. Se tutto andrà bene, dovro' poi regolare i pistoni di bloccaggio, i dischi di taglio ed i gruppi foratura... ma a quel punto avro' ottenuto cio' che desidero!

In un secondo momento, riprogrammero' il terminale NS5 inserendo un menu' a discesa, nel quale impostero' le varie larghezze di taglio che automaticamente saranno raggiunte dalla macchina in base alla dimensione scelta.

Poi sarà veramente come dico io!

A presto e buon fine settimana a voi.

:thumb_yello:

Modificato: da amedeoferoci
Link al commento
Condividi su altri siti

eccomi qui, oggi ho modificato la posizione del micro di ingresso, tramite un supporto regolabile, ed ho risolto il problema! :thumb_yello:

sto regolando adesso i vari pistoni / pressori per stabilire esattamente la posizione quando si effettua la foratura, piccoli aggiustamenti di meccanica e la parte principale sarà perfettamente funzionante, come da me desiderato (taglio del pezzo e foratura di testa).

Ringrazio in modo particolare harl, che mi ha dato delle informazioni utili e che mi hanno poi "aperto" la via alla soluzione da me adottata ;)

Ora ci sarebbe la seconda parte, e cioè il settaggio dell'interfaccia NS5 per poter regolare automaticamente la macchina secondo le larghezze desiderate.

Leggendo i manuali della macchina ed in parallelo le sezioni del programma plc comprese nel file che ho caricato, ho provato a fare delle modifiche al programma del NS5, purtroppo ancora non ho trovato la soluzione.

la sezione "muove_spalla" si occupa dell'apertura o chiusura della spalla mobile, anche in questo caso mediante generazione di impulsi verso un inverter. tuttavia c'è anche un'altra sezione, la "muove_spalla_auto", che io immagino possa servire per fare degli spostamenti in automatico, in base alla misura stabilita. Nel "muove_spalla" le varie istruzioni si traducono in un'attivazione delle uscite (4 uscite) apre lento, chiude lento, apre veloce e chiude veloce.

Io ho provato a impostare sul NS5 un menu' di selezione ,che legge i dati su un file .lst e li va a scrivere nell'indirizzo DM602, che viene indicato nel programma come "quota target".

Solo che quando premo il pulsante di scelta sul NS5, non succede nulla, anche se facendo il test effettivamente i valori vanno a modificare il DM602 e di conseguenza altri DM collegati.

Mi vengono alcuni dubbi, e cioè:

- i lfile .lst è un file di testo, nel quale io ho inserito semplicemente i valori (una sola colonna di dimensioni crescenti). Devo indicare ai programmi che sono valori? sono necessarie intestazioni?

- una volta che indico e quindi setto il DM602, non ci dovrebbe essere una istruzione che "conferma" o comunque avvia il movimento, attivando la bobina relativa finchè il valore impostato non è uguale a quello letto?

- il fatto che ci sia la sezione "muove spalla" e "muove spalla auto", ma io posso scegliere da ns5 solo la voce muove spalal manuale, non potrebbe essere che manca un pezzo di programma, che riguarda la parte automatica?

Qui faccio appello a voi tutti, che avete già programmato NS5 insieme a CJ1M, potreste darmi una dritta? nei manuali omron non ci sono affatto spiegazioni, anche sul cd designer poco o nulla.... :worthy: mi sarebbe davvero di grande aiuto!

Comunque io insisto e non mi fermo, studio e cerco, provo e riprovo... finchè la macchina non farà cio' che io voglio, cioè quello che il programma -modificato- le indicherà di fare.

Intanto sono molto soddisfatto! :P

A presto!

Link al commento
Condividi su altri siti

ti ringrazzio per la tua risposta ma io non ho fatto niente .......................tu sei stato grande che hai risolto da solo ^_^........................

mi spieghi come hai fatto con ns5, ne sto programmando uno anch'io ora a nche li non sono un genio è il mio secondo pannello quindi non sono pratico ma non ho capito :

ho provato a impostare sul NS5 un menu' di selezione ,che legge i dati su un file .lst

Link al commento
Condividi su altri siti

dunque, col NS5 veramente non ho fatto granchè, ho solo cercato di aggiungere una lista di selezione, nella quale i dati sono letti dal file .lst

ho scaricato un progetto di prova dal sito omron ed effettivamente ho constatato che il file .lst non ha particolari formattazioni (cioè non ha virgolette, separatori tipo ; o , o cose del genere)

quando tramite cx designer vado a impostare che i dati del file .lst devono essere trasferiti nell'area DM602 credo che questo avvenga, infatti con un test sembrerebbe che i valori impostati dalla lista di selezione vadano a cambiare altre DM.... ma la macchina non si muove!

Come infatti dicevo sopra, nella sezione di programma "muove spalla auto" non ci sono bobine da attivare, a differenza di "muove spalla" dove ai 4 pulsanti che ho sul NS5 corrispondono 4 bobine che effettivamente aprono e chiudono....

chi mi puo' aiutare?? :smile::worthy:

Link al commento
Condividi su altri siti

Ciao Amedeo, quando sei online prova a monitorare il 1450.00, questo bit è presente solo nella sezione "muove_spalla_auto", può darsi che sul tuo pannello con, non so quale oggetto, lo puoi attivare/disattivare; eventualmente cercalo all'interno del progetto del NS se viene utilizzatoe e su che pagina.

Volendolo provare puoi settarlo e resettarlo quando sei online col PLC, in questo caso Attenzione alle mani!!!

Le aree di memoria tra PLC e HMI vengono aggiornate costantemente, a seconda delle impostazioni della porta di comunicazione.

Se hai necessità di confermare un dato su evento, la classica situazione è un bit specifico che attiva un istruziuone MOV di un valore fisso o un area di memoria ad un area di memoria che solitamente è utilizzata come riferimento.

Ciao

Link al commento
Condividi su altri siti

ma funzionava come comando ?

1450 è presente solo dove diceva kevin molto strano sembra essere una memoria di movimento ma non la trovo in un altra posizione mmmmmmmmhhhhhhhhhhhhhhhhh strano ,

per quanto mi posso immaginare visto che programmare è molto soggettivo, usare un keep per poi lasciarlo li a muorire mi sembra strano

Link al commento
Condividi su altri siti

se i motori di apertura e chiusura spalla sono corretti da programma postato muovi la spalla solo in manuale se no chi ha fatto il prg ha denominato male gli i/o, in spalla auto setti due memmorie la prima setta la seconda che poi non vedo agire sulle uscite indicate dai motori di apertura e chiusura .

magari dico una c.......ta ma per me non ti va ..........................

sono curioso di saperne di più ora hahahahahahah

Link al commento
Condividi su altri siti

effettivamente, come avete osservato anche voi, sto seguendo il 1450 e al momento ho fatto soltanto una prova con cx simulator (ho installato una versione recente di cx-one e dal cx-designer mi collego per le prove sul cx programmer).

Anche io ho osservato che questo 1450 è necessario per attivare alcune operazioni su "muove spalla auto", tuttavia sembrerebbe che il programma non sia stato ultimato! :P

leggendo il programma così com'è sembra proprio che manchi qualcosa, dopo le comparazioni che il programma fa tra la quota target (che io ho impostato come settaggio col valore preso dalla lista di selezione, nella quale ho inserito le varie larghezze che vorrei fossero raggiunte in automatico) e la quota letta dalla macchina.... non c'è nulla che poi dica d iattivare le bobine di movimento motore fino al punto calcolato....

in piu' sul NS5 come dicevo c'era solo l'opzione muove manuale, ma vedendo il programma e analizzando nell'insieme avrebbe dovuto esserci anche un muove automatico.... <_<

ho fatto qualche piccola modifica e cioè ho aggiunto una pagina al programma del NS5 con cx programmer, in quella pagina ho inserito la lista di selezione con le varie dimensioni e ho messo un pulsante che va ad attivare il 1450 finchè è premuto... ma sul simulator non ottengo granchè, immagino la stessa cosa avvenga sulla macchina.... faro' delle prove ma credo si debba aggiungere qualcosa al programma per gestire il movimento in automatico una volta fatti i calcoli...

e poi non sono sicur odel formato corretto che inserisco nella lista di selezione.... se vado a vedere cosa si scrive nel DM602 quando io inserisco ad esempio 413 com larghezza, esce fuori un numero in BCD enorme! quindi anche qui c'è da lavorare....

domani vi sapro' dire di piu', la macchina è a punto per quanto riguarda la parte meccanica (con il posizionamento anticipato :thumb_yello: ) e cerchero' di provare il movimento automatico, come l'ho modificato io, sul plc.

Intanto rifletto, mi documento e studio!

Debbo ottenere il risultato voluto.... sento che la strada è buona!

Grazie per le vostre indicazioni! a domani!

Link al commento
Condividi su altri siti

come sospettavo e come facilmente prevedibile, il programma così com'è non funziona con l'apertura automatica. ho inoltre regolato la macchina in tutti gli aspetti (sincronizzazione larghezza effettivamente tagliata con quella letta dal sensore, centratura fori sul pezzo, bloccaggio ecc) e risulta essere molto complicato il poter impostare la macchina su una determinata larghezza di taglio, mediante il movimento manuale.

questo perchè con la velocità piu' alta non si è precisi e con quella piu' bassa la macchina si arresta quasi sempre troppo presto o troppo tardi (i pulsanti sbloccano un freno motore e poi lo fanno muovere... prendere la dimensione a tentativi è un'impresa).

A questo punto diventa urgente il posizionamento automatico, e qui torno ancora una volta a chiedere il vostro aiuto! :worthy:

Vorrei modificare il programma nella sezione "automatico" ed avrei necessità di capire bene alcuni aspetti:

- il valore target settato dovrebbe essere in BCD, in quanto i calcoli e i confronti sono fatti in questo formato; la lista di selezione che ho preparato contiene un numero indicato in millimetri, che corrisponde alla dimensione che io vorrei impostare. Ma sembra che il calcolo effettuato non sia adeguato.... sebene non ho ancora un riscontro, in quanto la macchina ancora non si muove in automatico

- una volta fatti i calcoli, come posso inviare il risultato (il confronto tra target e misura letta) affinchè le bobine di apertura / chiusura siano attivate e si fermino al momento giusto? (come per il movimento manuale)

qualcosa tipo "mantieni attivata la bobina finchè il valore letto non sia uguale a quello calcolato "...

- mi potreste dare una dritta per completare il programma?

grazie ancora a tutti!

Modificato: da amedeoferoci
Link al commento
Condividi su altri siti

per i calcoli secondo me....................

un giro encodercompleto sono 100 impulsi bene in un giro encoder la spalla muove di 50 mm bene 1 giro encoder=100 impulsi = 50 mm ovvero 10 impulsi= 5 mm, 1 impulso 0.5 mm e cosi trovi la conversione degli impulsi con i mm .

personalmente io metterei un sensore di zero, come hanno tutte le macchine in fabbrica da me in quanto col tempo la meccanica con i vari giochi ecc fanno perdere un pò sulla precisione invece tornando ad uno 0 sicuro siamo sicuri di partire sempre da quel punto a contare e di solito lo zero si fa con il valore più piccolo nel tuo caso lo farei a macchina tutta chiusa o sul minimo formato che devi fare.

fatto ciò sfrutterei la parte di programma già fatta dove hai anche un fattore di correzione giochi meccanici.crei un pulsante di zero dove esegui un keep che chiude la macchina magari in lenta fino a quando non raggiunge il sensore di zero, a questo punto pulsante automatico apertura sfrutto il programma già esistente ovvero quota di target maggiore quota giochi di 300 per esempio muovo in veloce se minore muovo in lenta cosi mi avvicino lentamente al valore voluto e sono più preciso(mi sembra di ricordare che aveva le due velocità già nel programma )

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...