Vai al contenuto
PLC Forum


Avviare delle operazioni in base al segnale Analogico


farotol

Messaggi consigliati

Un saluto a tutti.

premetto che ho iniziato da poco a programmare PLC.
Lo stò utilizzando per retrofittare in parte una vecchia CNC, per adesso ho terminato con buoni risultati la gestione idraulica "mantenere a pressione il circuito, Cambio utensile, lubrificazione" riesco già a gestire l'accensione del mandrino e senso di rotazione.

Ma adesso viene il bello, la mia CNC ha il cambio meccanico di velocità, nel senso che ha 21 velocità che va da 31rpm e 3150rpm che si ottengono con la combinazione di 3 motori che muovono delle camme e 2 velocità del motore che muove il mandrino 1400rpm e 2800rpm.

https://www.youtube.com/watch?v=q4a8RzR21Ec

 

in pratica al PLC mando all'ingesso analogico una tensione che va da 0 a 10V che saranno le vologità che vanno da 0 a 3150rpm ed in base alla tensione dovrò combinare la posizione dei motori.

 

non vi chiedo l'intera soluzione lo so questo non lo farei mai, ma almeno come partire.

allego anche un file excel per spiegarmi meglio, do i relativi valori rilevati dal PLC a quella determinata velocità.

179730754_Schermata2018-04-28alle22_36_45.thumb.png.0ecbdd2718f4c63a625d4dde584fd23a.png

 

 

Link al commento
Condividi su altri siti


Ma il valore analogico 0..10 V, da dove arriva? Da un potenziometro? I gradini sono ben definiti o c'è una regolazione continua?
Se c'è una regolazione a gradini, ti basta fare delle comparazioni.
Potresti definire le soglie al valore medio tra due gradini successivi.
Per esempio, la prima soglia potrebbe essere a (16+288)/2=152, la seconda a (288+368)/2=328, la terza a (368+488)/2=428, e così via
Per valori inferiori a 152 saresti alla prima velocità. Per valori tra 152 e 328 saresti alla seconda velocità, per valori tra 328 e 428 alla terza, .........

Se la regolazione è continua, potresti avere valori che oscillano intorno ad una soglia, e questo causerebbe un continuo cambio di velocità.
Per evitarlo, dovresti creare delle ulteriori soglie intorno ai valori precedentemente calcolati, per esempio, una soglia 20 punti più bassa ed una 20 punti più alta.
Il passaggio dalla prima alla seconda lo faresti quando superi 152+20, dalla seconda alla terza quando superi 328+20, dalla terza alla quarta quando superi 428+20.
Il discesa invece, passeresti dalla quarta alla terza quando scendi sotto a 428-20, dalla terza alla seconda quando scendi sotto a 328-20, dalla seconda alla prima quando scendi sotto a 152-20.
Ecco che se il segnale oscilla intorno ai valori 152, 328, 428, non succede nulla.

 

Link al commento
Condividi su altri siti

la tensione 0-10V al plc gli arriva da un'altra scheda dedicata per il controllo del CNC.

ho calcolato la differenza tra valori rilevati e valori con calcolo proporzionale e riesco a stare abbondantemente dentro i valori calcolati.

Io ho pensato che forse la soluzione miglio sarebbe quella dei attivare dei Marker in base da un rance di Min. e Max valore analogico rilevato "I valori sono quelli all'interno del rettangolo in rosso"

 

la formula proporzionale che ho usato è (RPM/3150*27472)+16 dove il valore 2742 altro non è che Valore massimo rilevato - valore minimo rilevato 27488-16.

 

 

Schermata 2018-04-29 alle 10.27.41.png

Link al commento
Condividi su altri siti

Quote

Io ho pensato che forse la soluzione miglio sarebbe quella dei attivare dei Marker in base da un rance di Min. e Max valore analogico rilevato "I valori sono quelli all'interno del rettangolo in rosso"

Esattamente quello che ho suggerito.
Attenzione solo ad essere sicuro che il valore analogico non possa oscillare introno ad una soglia che farebbe cambiare continuamente velocità

 

Per il codice, ti consiglio di non richiamare continuamente il valore dell'ingresso analogico, ma di appoggiare il valore dell'ingresso analogico ad una variabile locale, e di utilizzare questa variabile nelle comparazioni.

Poi, tutte queste comparazioni le potresti fare in AWL o in SCL, ed ottenere un codice più snello.

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...