### Punti da vedere: *** #### FB500 : DB di istanza *** * Adesso include la chiamata alle FC570 e usa le DB di motori como istanza. * Modificata logica DP Alarm ```pascal // PROFINET SET S "DB PN/DP Diag List".PN_Node_Motori[#Manage.CFG_Node_N] U #Manage.CFG_PN U #Nodes_RangeOK SPBN PNC U "DB PN/DP Diag List".PN_Node_Motori_Allarm[#Manage.CFG_Node_N] = #PN_Alarm ``` Per includere la DB128 aggiornata per la FC80. Se setta "DB PN/DP Diag List".PN_Node_Motori per escludere la alarma mancanza comunicazione de la lista generale #### Movigear ADV_DPRDAT - FC528: *** * Creata FC528 per usare DPRD_DAT * Se utiliza PAW per aggiornare la EW con gli ingressi digitali collegati direttamente al motore. ![[Pasted image 20240423165428.png]] * Quindi e importante che su tutti i motori sia aggiornato il Signal_PAW: * `"DB Ttop Motor XX".Manage.CFG_Add_Signal_PAW := XXXX;` #### Popup di Flusso: pagina 956 *** * Su questa linea la gente de SIPA hanno richiesto se si poteva aiutare nella conferma di flusso: ![[Pasted image 20240423121425.png]] ![[Pasted image 20240423164419.png]] * Questa popup è gestita dal FC175. * E visualizzata sempre quando ci sia un cambiamento nel flusso, formato o dispositivo legato al flusso. * Questo popup è solo informativo e intende aiutare l'operatore a comprendere lo stato della linea. Una volta accettato lo stato, è solo informativo. * Il flusso viene modificato effettivamente nella pagina dei selettori. Su la FC175 ce un sistema di chiamata al PopUp che in avviamento puo essere molesto su il segmento 21: ![[Pasted image 20240423133833.png]] Per ==disabilitare questa funzionalità e solo comentare questo segmento==. ##### Pagina dei Selettori: ![[Pasted image 20240423132016.png]] * Il pulsante di Controllo Flusso: Fa vedere il popup de controllo di Flusso * Questo pulsante ce anche sul template solo quando ci sono ancora flussi non accettati #### GEOSYNC gestito con scheda di conteggio *** La logica permette laborare con le due sistemi, come conteggio o come sistema standard ingressi digitali La scheda di conteggio e montata sul IM remota ugualmente al sistema standard ![[Pasted image 20240423132540.png]] La prima scheda tipo HS e quella di conteggio La seconda scheda e una scheda normali e se puo utilizare per gestire gli conteggi di manera standard. Se se collegano fisicamente i ingressi di conteggio su questa scheda e dopo si abilita la "FC SA1 Conteggi" il sistema funzionerebbe come standard Su la OB30 che per il sistema di conteggio e configurata a 3ms ci sono 2 segmenti: * Copia di ingressi su la DB "DB SA1 Conteggi" * Selezione dello sistema di conteggio * IM_Slow * HSCounter : scheda HS di conteggio ![[Pasted image 20240423133650.png]] Il 'FC SA1 ConteggiHS' esegue il conteggio sulla scheda piuttosto che sulla logica del PLC. Ciò consente di aggiornare gli ingressi molto meno frequentemente senza perdere conteggi, in quanto la scheda può contare fino a 10 kHz. Di conseguenza, il sistema è in grado di eseguire il differenziale senza dover osservare ogni singola bottiglia che passa. #### Consensi nuova UDT - Forzamento dal HMI *** Abbiamo modificato i consensi in 3 punti: 1. Solo un gruppo di pagine per tutti i machine 2. Posibilita di forzamento di ingressi e uscite 3. Logica ampliata per gestire "analogiche" via ethernet. Consente 3 per ingressi via analogiche e 3 tipi via Ethernet: 1. Type_0_10v 2. Type_4-20ma 3. Type 0-20ma 4. Type_Ethernet_Bph 5. Type_Ethernet_Bpm 6. Type_Ethernet_% ##### Sul HMI: I consensi sul HMI sono cambiati a tipo MUX: ![[Pasted image 20240423134441.png]] Non ci sono piu uno per machina. Adesso e tutto gestito con un set di pagine per tutte le machine. #### Pagina 710: ![[Pasted image 20240423135125.png|750]] ![[Pasted image 20240423164605.png|750]] Questa pagina permette di abilitare o disabilitare individualmente l'azione forzata per ogni segnale, sia in ingresso che in uscita. Una volta abilitato un'azione forzata, il segnale può essere forzato a 0 o a 1 cliccando sulla casella di controllo corrispondente. Il resto della funzionalita rimane uguale a prima. Per gestire tutte le machine con solo un gruppo di paggine i testi sono tutte Lista di Testi: ![[Pasted image 20240423135626.png|396]] Per gestire la pagina dei Timers ci sono creati Text list per i Timers: ![[Pasted image 20240423135725.png]] ==E importante capire che i Timers non sono piu legati a i segnali== questo vuol dire che adesso il numero de un timer non ha collegamente con il numero de una digital input/output. I dati dei segnali continuano a essere su ogni DB pero adesso per potere utilizare il sistema di MJX abbiamo creato una UDT: UDT Signal ![[Pasted image 20240423140032.png]] Questa UDT ha la stessa info che i DB originali pero e stata ordinata in diversi Struct. Se e ampliato anche le uscite da 8 a ==16 : 8 uscite per Infeed e 8 uscite per Discharge== Per gestire la logica di forzamento se hanno creato diversi piccole FC che aiutano a non repitiere lo stesso código: ![[Pasted image 20240423140313.png]] Utilizzando UDT, si crea un livello aggiuntivo sulle DB, per facilitare la leggibilità delle FC e per rendere più semplice la creazione di FC di consensi per altre macchine ogni FC di consenso riceve come parametro l'UDT con cui deve lavorare. Questo è visibile nella OB1: ```pascal // Consensi CALL "FC Signal Synchrobloc" Synchro :="DB Signal Synchrobloc".Signals CALL "FC Signal Labeller (HSpeed)" Labeler :="DB Signal Labeller (HSpeed)".Signals CALL "FC Signal S.Wrapper SK800F" SK800F :="DB Signal S.Wrapper SK800F".Signals CALL "FC Signal Pack Handle Applicator" PackHandle :="DB Signal Pack Handle Applicator".Signals CALL "FC Signal S.Wrapper SK802T" SK802T :="DB Signal S.Wrapper SK802T".Signals CALL "FC Signal Paletizer" Paletizer :="DB Signal Paletizer".Signals ``` Su ogni FC di consensi: *** | Segmenti | | Descrizione | Se aggiornano queste variabili | | -------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Net1 : | Configuration - Input / Output Signals | Come le FC originali qua vanno gli Ex.x e Ax.x della periferia | Digital.InputSignal[x]
Axxx.x ( uscite ) | | Net2: | Configuration -Analog Input -Speed Reference | FC che gestisce gli due cannali analogiche sia via scheda analagocia o via ethernet | Analogic.Processed.Channel_0X![[Pasted image 20240423170804.png]] | | Net3: | Configuration - Hmi Visibility | Settaggio di visibilità di ogni segnali usate sul HMI | Configuration.Digital.Input[x]
Configuration.Digital.Output.Infeed[x]
Configuration.Digital.Output."Discharge Timers"[x]
Configuration.Digital.Output."Infeed Timers"[x] | | Net4: | | | | | Net5: | Configuration - Infeed Signals | Gestione dei Timers. Se gli segnali sono via Address sul panello o se i Timers usando ingressi non settati sul address su la pagina dello HMI | Digital.**Photocell**.Infeed[x] | | Net6: | Configuration Discharge Signals | Gestioni dei Timers per il Discharge. Uguale a Infeed | Digital.**Photocell**.Discharge[x] | | Net7: | INFEED PROCESSED 1 | Per ogni Timer se debe chiamare a FC555 . Se puo definere ogni timer de tipo solo TON o TON/TOFF. Ogni Timer se puo fare la logica standard usando Digial.Photocell o fare una especiale. | Digital.**"Processed.Timer"**.Infeed | | Net11: | | | | | Net12: | DISCHARGE PROCESSED 1 | Per ogni Timer se debe chiamare a FC554 . Se puo definere ogni timer de tipo solo TON o TON/TOFF. Ogni Timer se puo fare la logica standard usando Digial.Photocell o fare una especiale. | Digital.**"Processed.Timer"**.Discharge[x] | | Net16: | | | | | Net17: | INFEED Machine Empty- Delay ON | Timer opzionale per Machine Empty | | | Net18: | DISCHARGE Machine Empty- DelayON | Timer opzionale per Machine Empty | | | Net19: | | | | | Net20: | INLET - Outs | Se chiama alle FC553 per gestire i forzamento de uscite | Digital.**OutputSignal**.Infeed[x] | | Net21: | OULET - Outs | Se chiama alle FC557 per gestire i forzamento de uscite | Digital.**OutputSignal**.Discharge[x] | | | | | | ##### Net 2 : Analog Input: CALL "FC Compute Machine Speed" Signal_type :=#"Type_4-20ma" Signal_PEW :="EW1002":P Signal_Ethernet_IN :=0 Channel :=1 Actual Speed :=#Labeler.Analogic.Processed.MachineSpeed Machine_DB :=#Labeler IN HMI-Recipe Data :=#Labeler.Recipe.Infeed.Analogic_01 OUT Analog Processed :=#Labeler.Analogic.Processed.Channel_01 ###### Parametri: IN: La Signal_type puo essere: 1. Type_0_10v 2. Type_4-20ma 3. Type 0-20ma 4. Type_Ethernet_Bph 5. Type_Ethernet_Bpm 6. Type_Ethernet_% 1 a 3 sono Analogiche e se debe usare il Signal_PEW 4 a 6 sono via Ethernet e se debe usare Signal_Ethernet_IN OUT: Actual Speed < == CPM * 60.0 Labeler.Analogic.Processed.Channel_01 < == ![[Pasted image 20240423170804.png]] ##### Net 3 : Configuration - Hmi Visibility // SET and RESET all Configuration Bits that are needed CALL "FC Signal Configuration Bits" Number Inputs :=3 Number Ouputs Infeed :=4 Number Ouputs Discharge :=4 Number Infeed Timers :=4 Number Discharge Timers :=3 DB Signal :=#Labeler Questa funcione activa o resetta bits di Configuration sempre partendo dal bit 0 per la quantità passata come parametro. Por esempio se Number Inputs := 3 vuol dire che si settano i bits `[0],[1],[2]` e se resettano tutti gli altri. Se si vuole lasciare uno o piu sensa visibilità e gli altri settati sempre se puo fare con SET: ```pascal SET //DIGITAL INPUT [FROM MACHINE TO CONVEYORS] R #"DB Labeller".Configuration.Digital.Input[2] //INFEED DIGITAL OUTPUT [FROM INFEED CONVEYORS TO MACHINE] R #"DB Labeller".Configuration.Digital.Output.Infeed[2] ``` ##### Net 5-6 : Read_DI CALL "FC Signals Infeed Timers Read" AddressTimers Number :=1 Signal is External :=FALSE External Signal :=FALSE DB Signals :=#SK800F * Questa Funzione Chiamata (FC) invoca FC_Read_DI se il segnale non è Esterno. Il risultato di FC_Read_DI o Segnale Esterno viene caricato su Digital.Fotocellula.Infeed/Discharge ##### Net 7-12: PROCESSED ![[Pasted image 20240423175656.png]] * Normalmente questo sara il uso de questi blocchi. * Gli ingressi TON Set / TOFF Set sono come prima si faceva: U "DB Signal Synchrobloc".CFG_VIS_DOUT_03 U "DB Signal Synchrobloc".ST_IN_Signal_03 = "DB Signal Synchrobloc".T03.S U "DB Signal Synchrobloc".CFG_VIS_DOUT_03 UN "DB Signal Synchrobloc".ST_IN_Signal_03 = "DB Signal Synchrobloc".T04.S * Il parametro is TOFF Used permete se e False de usare solo il TON Questo blocco invoca il 'FC S_Everz_Struct' per ogni timer e, in base al risultato del timer, imposta il valore digitale 'Processed.Timer'. ##### Net 20-21 OUTs : ![[Pasted image 20240423180722.png]] ![[Pasted image 20240423180738.png]] * Questi blocchi permettono di impostare i bit di Digital.**OutputSignal**.Infeed[x] / Digital.**OutputSignal**.Discharge[x] sulla base della logica in ingresso fornita dal parametro "Signal Logic", a meno che il segnale non sia **Forzato** manualmente dall'HMI. Se il segnale è forzato tramite l'HMI, questo blocco non opererà e il valore verrà preso direttamente dall'HMI.