TIA Portal Siemens s7-300 tutorial

download TIA Portal Siemens s7-300 tutorial

of 83

Transcript of TIA Portal Siemens s7-300 tutorial

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    1/83

    Controllori a Logica

    Programmabile Siemens

    Dipartimento di IngegneriaElettrica ed Elettronica

    S.S.C. A. Pilloni 1

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    2/83

    Obbiettivi

    Automazione come integrazione e SiemensSIMATIC STEP 7 - TIA Portal

    PLC in breve

    S7 300 - CPU314C-2 PN/DP Interfacciarsi con la Suite TIA Portal

    Creare un progetto Gestione I/O & Merker

    Gestione del flusso di programma Istanze FC, FB, DB

    Esercizi di scripting in KOP (Ladder) ed SCL

    S.S.C. A. Pilloni 2

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    3/83

    Automazione come integrazione (1)

    E un diverso modo di concepire e di realizzare i processi diproduzione

    Lautomazione dovrebbe presumere una logica di sistema

    integrato, basato n su singole macchine, n su gruppi di

    macchine, ma sull'intero processo di produzioneJ. Diebold, Automation: the advent of automated factory,

    Van Nostrand, New York, 1952

    Time To Market (TTM): Tempo che intercorre dall'ideazione di un prodottoalla sua effettiva commercializzazione

    S.S.C. A. Pilloni 3

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    4/83

    SIMATIC STEP 7 - TIA Portal (1)

    S.S.C. A. Pilloni 4

    Totally Integrated Automation Portal

    STEP 7 V11

    SIMATIC Controllers

    WinCC V11

    SIMATIC HMI

    StartDrive V11*

    SINAMICS

    Siemens Totally Integrated Automation Portal

    Totally Integrated Automation Portalfornisce un ambiente di sviluppocompleto (end-to-end) per SIMATIC STEP 7 e SIMATIC WinCC.

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    5/83

    Pros: SIMATIC STEP 7 - TIA Portal

    Programmazione dei controller SIMATIC S7-300, 400, 1200, 1500eper controller basati su PC (i.e. WinAC - SCADA)

    Configurazionedi retee dell'hardwareper tutti i componenti diautomazione

    Diagnosticaonline per l'intero progetto Funzionalit per il Motion Controlintegrate Supporto SIMATIC WinCC Basic per SIMATIC Basic Panelfa parte

    della dotazione Supporto di ben 5 linguaggi di programmazione:

    LADDER(KOP, Kontaktplan) FBD(FUP, Funktionsplan) SCL(Structured Control Language) SFC (S7-GRAPH solo su PLC di alta fascia, i.e. S7-300, 400, 1500 ) C++/C# per SCADA WinAC

    S.S.C. A. Pilloni 5

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    6/83

    Cons: SIMATIC STEP 7 - TIA Portal (1)

    S.S.C. A. Pilloni 6

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    7/83

    PLC in breve (1)

    E un sistema elettronico programmabile utilizzato per

    limplementazione di:

    logiche di sequenziamento, temporizzazione e calcolo

    controllare mediante ingressi ed uscite (digitali/analogiche) varitipi di macchine in ambito industriale

    Caratteristiche:

    Riconfigurabilit / Programmabilit

    Compattezza

    Modularit

    Low-cost

    S.S.C. A. Pilloni 7

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    8/83

    PLC in breve (2)

    Configurazione minima: CPU Alimentatore AC (85...264 [V], 47...63 [Hz]), DC (20.4...28,8[V]) I/O digitali (a transistore 024 Volt) I/O analogici (ADC/ DAC a 16 bit, I/O range 10 [V], 020, 420 [mA]) Ambiente di sviluppo (IDE)

    Espansioni: Moduli I/O a rel (pros.isolamento galvanico, ampiezza fuori standard,

    cons.vita minore, maggiore ingombro) Moduli encoder Human Machine Interface (HMI) Moduli di comunicazione: Modbus e Profibus (Rs-232, Rs-485),

    Profinet TCP/IP (Ethernet 802.XX), UMTS/GPRS

    S.S.C. A. Pilloni 8

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    9/83

    Uscite a Rel

    Un rel non una semplice uscita digitale!

    Un rel un elemento predisposto per essereinserito in serie in avvolgimenti alimentati (in AC o in

    DC), abilitandone o disabilitandone la conduzione

    S.S.C. A. Pilloni 9

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    10/83

    Significato del nome:S7 300 - CPU314C-2 PN/DP

    f

    S.S.C. A. Pilloni 10

    S7-300 : Famiglia PLC CPU314C: Tipo CPU 2 PN (ProfiNet): Ethernet Industriale con 2 porte ETH DP (Decentralized Periferical): Tipo di Profibus su RS-232/422,

    da 9.6 kbit/s a 12 Mbit/s, max 300 m.

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    11/83

    S7 300 - CPU314C-2 PN/DP

    S.S.C. A. Pilloni 11

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    12/83

    Comprendere i messaggi del PLC:Status and error indicators

    S.S.C. A. Pilloni 12

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    13/83

    Cablaggio I/O Pin-out Connector X11

    S.S.C. A. Pilloni 13

    4AI+ 1 AI PT100 + 2 AO+ 8 DI

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    14/83

    Cablaggio I/O Pin-out Connector X12

    S.S.C. A. Pilloni 14

    16 DI + 16 DO

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    15/83

    Creare un progetto sul TIA

    S.S.C. A. Pilloni 15

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    16/83

    Configurazione di lavoro:Inserire il modello del PLC

    S.S.C. A. Pilloni 16

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    17/83

    Configurazione di lavoro:Inserire moduli di espansione

    S.S.C. A. Pilloni 17

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    18/83

    Dati digitali memorizzati in bit, Byte,Word, Double-Word, ecc.

    S.S.C. A. Pilloni 18

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    19/83

    Configurazione di lavoro:Indirizzamento moduli I/O

    S.S.C. A. Pilloni 19

    Indirizzi I/O Integrati del PLC

    S7 300-CPU314C-2 PN/DP 24 DI da %I136.0 a %I138.7

    (1 bit per uscita)

    5 AI da %I800.0 a %I809.7

    (1 word per uscita)

    16 DO da %Q136.0 a

    %Q138.7 (1 bit per uscita)

    2 AO da %Q800.0 a

    %Q803.7 (1 word per

    uscita)

    Indirizzi I/O espansione:

    8 DI da %I0.0 a %I0.7

    8 DO da %Q0.0 a %Q0.7

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    20/83

    Ingressi, Uscite e Merker (1)

    Gli ingressi sono operandi che provengonodirettamente dal collegamento del PLC con ilcampo

    Le uscitesono gli operandi che permettono al PLCdi inviare comandi verso il campo

    I merkersono dei registri residenti nella memoriadi sistema del PLC da usare come memorie dilavoro

    Ingressi, uscitee merkerhanno una dimensioneespressa in bit/byte/worded hanno un indirizzounivoco

    S.S.C. A. Pilloni 20

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    21/83

    Ingressi, Uscite e Merker (2)

    Indirizzamento Ingresso digitale (DI):

    Indirizzamento Uscita digitale (DO):

    S.S.C. A. Pilloni 21

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    22/83

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    23/83

    Formati dei dati in un PLC

    S.S.C. A. Pilloni 23

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    24/83

    Ciclo di funzionamento della CPU (1)

    S.S.C. A. Pilloni 24

    STATO AVVIAMENTO Modo RUN

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    25/83

    Ciclo di funzionamento della CPU (2)

    Task eseguiti ad ogni ciclo discansionein Modo RUN(time-cycle):2. Scrittura uscite3. Lettura ingressi4. Esecuzione programma

    utente5. Manutenzione e gestione

    del sistema

    Il time-cycle varia in funzionedel numero e del tipo diistruzioni, dellonere dicomunicazione e soprattuttodella potenza del processore

    S.S.C. A. Pilloni 25

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    26/83

    Istanze OB, FC, FB, DB

    I BlocchiOrganizzativi (OB) comandano l'elaborazione delprogramma principale e consentono di reagire ad eventiciclici, a tempo o di allarme

    I BlocchiFunzione (FB) sono dei blocchi di codice conmemoria per implementare delle routine. Un FB ha sempre

    associatoun DB di Istanza per accedere/salvare i suoidati locali a prescidenre dallesecuzione della routine

    I BlocchiFunzione (FC) sono blocchi di codice senzamemoriaper implementare delle routine. Dopo lesecuzionedella FC i suoi dati vengono dimenticati dalla CPU

    I Blocchi Dati (DB) sono aree dati nel programma utentecontenenti dati utente. Sono di due tipi:

    DB Globali

    DB di Istanza(blocco dati locali ad un FB)

    S.S.C. A. Pilloni 26

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    27/83

    In un DB globale, tutti i blocchi (FB, FCe OB) possonoleggere/scriverei dati in esso contenuti

    possibile creare un DB globale in modo indipendenterispetto agli altri blocchi del programma.

    Il DB dIstanza pu essere creato solo se nel programma disponibile il relativo FB e ne contiene i suoi dati locali

    Data Block Globali e dIstanza

    S.S.C. A. Pilloni 27

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    28/83

    Creazione OB, FB, FC e DB

    S.S.C. A. Pilloni 28

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    29/83

    Blocchi Organizzativi (OB)

    OB100: Permette di eseguiredel codice solo al durante il ciclodi avvio del PLC (e.g.STOP UN)e poi mai pi!

    OB35: Serve per eseguireeseguire porzioni di codice adintervalli regolari, e.g. ogni10msec, come il Controllo PID

    OB1: noto come Maincomanda l'elaborazione delprogramma principale

    S.S.C. A. Pilloni 29

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    30/83

    OB1 MAIN La CPU S7 elabora l'OB1 e le istruzione al suo interno ciclicamente

    L'elaborazione ciclica dell'OB1 inizia dopo che si concluso l'avvio.

    Terminata l'elaborazione dell'OB 1, la CPU invia dati globali e prima del nuovo avvio

    dell'OB1, scrive l'immagine di processo delle uscite nelle unit di uscita, attiva

    l'immagine di processo degli ingressi e riceve i dati globali per la CPU

    L'OB1ha la priorit pi bassa di tutti gli OB con controllo del

    tempo di esecuzione

    Tutti gli altri OB sono in grado di interromperne l'elaborazione

    I seguenti eventi determinano il richiamo dell'OB1 Elaborazione dell'avvio terminata

    Elaborazione dell'OB1 (del ciclo precedente) terminata

    S.S.C. A. Pilloni 30

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    31/83

    ESERCIZIO 1: Operazioni AND ed OR adue ingressi

    Cablare due ingressi di comando digitali, es. I1 e I2, al PLC

    In LADDER scrivere un codice che comanda:

    una prima uscita del PLC con il risultato logico AND

    una seconda con risultato di logico OR

    S.S.C. A. Pilloni 31

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    32/83

    ESERCIZIO 1: Operazioni AND ed OR adue ingressi

    Definire gli ingressi/uscite e/o merker di lavoro nella tabellaMostra tutte le variabili

    S.S.C. A. Pilloni 32

    Inserire degli indirizzi validi

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    33/83

    Esercizio 1: Operazioni AND ed OR

    S.S.C. A. Pilloni 33

    Ingressi Digitali Uscita Digitale

    Andare nel Main

    Scrivere la logica

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    34/83

    Debug sul simulatore s7 300 (1)

    S.S.C. A. Pilloni 34

    1. 2.

    3. 4.

    Settare la modalit Run-P Aprire le finestre che permettono

    di scrivere/leggere gli ingressi/uscite/

    merker di interesse

    Evidenziare il

    progetto e

    premere su

    carica nel

    dispositivo

    Caricare il SW nel Simulatore/PLC

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    35/83

    Debug sul simulatore s7 300 (2)

    S.S.C. A. Pilloni 35

    5. 6.

    7.

    Premere sugli occhialini

    Avviare il PLC e premere Fine

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    36/83

    Tra hardware e Software

    S.S.C. A. Pilloni 36

    Molte logiche comunisono spesso fornite intermini di schemaelettrico in quanto lusodel PLC un di pi per farfunzionare un sistema

    Sta poi allo sviluppatore

    software capire come edove inserire il PLC nellalogica di controllo

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    37/83

    SM

    I3Salvamotore

    Esercizio 2: Avviamento manuale di unmotore trifase con salvamotore

    S.S.C. A. Pilloni 37

    Scrivere un codice LADDER che permettelavviamento di un motore trifase in accordo con gli

    schemi di controllo e di potenza proposti

    SM

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    38/83

    Esercizio 2: Avviamento manuale di unmotore trifase con salvamotore

    Definire le gli ingressi/uscite/merker di lavoronella Tabella dell Variabili Standard

    S.S.C. A. Pilloni 38

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    39/83

    Esercizio 2: Avviamento manuale di unmotore trifase con salvamotore

    Implementazione della logica

    In quali condizioni la macchina dovr partire (KM1=1)?

    In quali condizioni la macchina dovr spegnersi (KM1=0)?

    E se (KM1=1) cosa succede se ripremo il pulsante dimarcia?

    S.S.C. A. Pilloni 39

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    40/83

    Esercizio 3: Impianto di sollevamento

    Un PLC controlla la marcia e larresto della pompa utilizzando

    le misure di livello nei due serbatoi

    Ciascun serbatoio ha 2 sensori dilivello on-off, A1, B1, A2,B2

    S.S.C. A. Pilloni 40

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    41/83

    Esercizio 3: Impianto di sollevamento

    Assumiamo che i sensori di livello siano altiquando il livelloeccedela quota di riferimento.

    Questo significa che la condizione di svuotamento per ilserbatoio S1 B1 basso, mentre la condizione di saturazione

    per il serbatoio S2 A2 alto

    La lettura B1/2=0 ed A1/2=1 impossibile.Si potrebbe mettere un check che generi unallarme ove si rilevasse tale lettura,ovviamente dovuta a un guasto dei sensori

    S.S.C. A. Pilloni 41

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    42/83

    Esercizio 3: Impianto di sollevamento

    Definiamo per semplicit una logica di funzionamento in cui nellamodalit manualela marcia e larresto sono pilotati dagli appositipulsanti (come nellesercizio precedente)

    Mentre, nella modalit automatica: Il segnale di marcia ON viene dato se la quota nel Serb. 1sta sopra quella

    minima (B1=1) e se nel contempo la quota nel serbatoio di destinazione inferiore alla quota massima (A2=0)

    In tutte le altre condizioni marcia OFF

    Se le quote nei due serbatoi scendono entrambe sotto la minima (B2=0and B1=0) allora si deve attivare la generazione di un allarme (Allarme

    LOW12) Se le quote nei due serbatoi superano entrambe la soglia massima (A2=1

    and A1=1) allora si deve attivare la generazione di un allarme (AllarmeHIGH12)

    S.S.C. A. Pilloni 42

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    43/83

    Esercizio 3: Impianto di sollevamento

    Variabili di lavoro:

    S.S.C. A. Pilloni 43

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    44/83

    Esercizio 3: Impianto di sollevamento

    S.S.C. A. Pilloni 44

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    45/83

    Input/Output Analogici

    A differenza dei segnali booleani, che possono assumere solodue stati, e.g. 0V o +24V, i segnali analogici hanno un numeroarbitrario di valori in un determinato range, e.g. 0-10V

    Per elaborare tali grandezze, il valore letto della tensione, e.g.

    0-10V, o corrente, e.g. 4-20mA, deve essere convertito inun'informazione digitale, e.g. 16bit

    Questa operazione viene detta conversione A/D e la suarisoluzione dipende dal numero di bit di risoluzione

    Tipicamente gli I/O analogici dei PLC utilizzano 15bit + 1bit disegno (totale 16bit)25= 32768

    S.S.C. A. Pilloni 45

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    46/83

    Input/Output Analogici

    I campi dei valori digitalizzati per il PLC S7-300 sonorappresentati in questo modo:

    E.g. Conversione 0-10[V]

    La trasformazione del valore analogico per l'ulterioreelaborazione nel PLC uguale sia per ingressi che per le usciteanalogici

    S.S.C. A. Pilloni 46

    Signal [0-10V] 0[V] 0.36 mV =10

    27648 1[V] 10[V] 11.85[V]

    [0-32768] 0 1 27648/10 27648 25=32768

    =

    [] [ ]

    i i i i l

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    47/83

    Esercizio 3: Acquisire un segnaleanalogico

    Un segnale analogico tra 0-10 [V] cablato sul CH0 degli AIintegrati della CPU

    Il segnale relativo ad una misura di temperatura scalatalinearmente nel range 10 e 100 [C]

    Creare una funzione(FC) che converte il segnale acquisto nelsuo valore di temperatura

    Salvare il dato in DBGlobalechiamato Misure_Campo cheal suo interno contiene una variabile di tipo Real chiamataTemperatura

    S.S.C. A. Pilloni 47

    E i i 3 A i i l

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    48/83

    Esercizio 3: Acquisire un segnaleanalogico

    Creare un FCin SCLed un DBGlobale

    S.S.C. A. Pilloni 48

    E i i 3 A i i l

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    49/83

    Esercizio 3: Acquisire un segnaleanalogico

    Definire allinternodel DB Globale la variabile di tipoReal Temperatura

    S.S.C. A. Pilloni 49

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    50/83

    Esercizio 3: Acquisire un segnale

    Definire linterfaccia(ingressied uscite) della nostra funzioneed implementare la seguente proporzione

    S.S.C. A. Pilloni 50

    ? ? ? ? ? =

    _ ? ? ? ?

    E i i 3 A i i l

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    51/83

    Esercizio 3: Acquisire un segnaleanalogico

    Trascinare nel Main (OB1) la funzione appena scritta epassandogli come ingresso lindirizzodellIngressoAnalogico ecome uscita il puntatore al DB

    S.S.C. A. Pilloni 51

    E i i 3 A i i l

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    52/83

    Esercizio 3: Acquisire un segnaleanalogico

    Note: Il PLC interpreta queste due operazioni

    diversament #Temperatura:=10+(90/27648)*INT_TO_REAL(#Raw_Mes)

    #Temperatura:=10+(90/27648.0)*INT_TO_REAL(#Raw_Mes)

    Fate attenzione al tipo di dati che usate!!! Il blocco SCALE allinterno

    della libreria Operazioni diConversione risolveva gi il

    nostro problema

    S.S.C. A. Pilloni 52

    E i i 4 A i t t

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    53/83

    Esercizio 4: Avviamento motore concontrollo sulla temperatura

    Inserire nel codice dellEsercizio2 un controllo sullatemperatura del motore che impedisce lavviamentodelmotore se la temperatura maggiore di 90C.

    S.S.C. A. Pilloni 53

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    54/83

    TON: Ritardo all'inserzione

    Con l'istruzione TON si ritarda l'impostazione dell'uscita Qdi una durata PT

    L'istruzione si avvia se il risultato logico nell'ingresso IN passada "0" a "1" (fronte di salita del segnale)

    S.S.C. A. Pilloni 54

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    55/83

    Esercizio 5: Sequenza 2 bit

    Implementare un codice implementa ilseguente scenario

    S.S.C. A. Pilloni 55

    2s 4s 6s 8s 10s

    12s 14s 16s

    Led1_2bit (%Q136.0)

    Led1_2bit (%Q136.1)

    Start_Timer (%I136.0)

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    56/83

    Esercizio 5: Sequenza 2 bit

    S.S.C. A. Pilloni 56

    Il Merker reset_sequenzaserve per resettare ilcontatore ogni 8 secondi

    Segmento 1:

    Segmento 2:

    Segmento 3:

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    57/83

    CTD: Conteggio all'indietro

    Il valore di conteggio "CV" inizializzata a "PV"

    Ogni commutazione di CD" da "0" a "1" decrementatadi 1 il valore di conteggio "CV" fino a -32768

    Se CV 0luscita Q=1 Se LDcommuta da "0" a "1" "CV" viene settata a "PV"

    S.S.C. A. Pilloni 57

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    58/83

    Esercizio 6: Conta bottiglie

    In un impianto di imbottigliamente presente un sensore cherileva il passaggio di una bottiglia su un nastro trasportatore

    Dopo aver contato 6 bottiglie generare un segnale impulsivo eresettare il contatore

    S.S.C. A. Pilloni 58

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    59/83

    Macchine a Stati

    Ad alto livello i processi industriali sono gestiti dalsequenziamento di azioni coordinate dal verificarsi di

    eventi

    Levoluzione di tali sistemi pu quindi essere vista come un

    AUTOMA A STATI FINITI, detto anche Macchina a Stati La scrittura di una Macchina a Stati in LADDER si basa

    lindividuazione delle seguenti condizioni:1. Individuazione delle condizioni di passaggio di stato:

    |ACTUAL STATE| &|INPUTs|(SETNEW STATE, RESETOLD STATE)2. Individuazione delle azioni da compiere in uno stato:

    |ACTUAL STATE|(SET/RESETOUTPUTs)

    S.S.C. A. Pilloni 59

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    60/83

    Esercizio 7: Macchina a Stati

    S.S.C. A. Pilloni 60

    VERNIC-CIATURA(V=1,L=0)

    LUCIDA-TURA

    (V=0,L=1)

    HOME(V=L=0)

    Start & Abilit.

    Fine_Vern. & Abilit.Fine_Luc &

    NOT Abilit.

    Fine_Vern.&Abilit.

    Fine_Vern.& NOT Abilit. Lucitatrice Cabina di

    Vernicciatura

    Si consideri un processo industriale di vernicciatura elucidatura automatizzato

    Implementare in Ladder lAutomanota linterfacciaI/O

    4 Ingressi digitali: Start, Abiltazion, Fine_Vern.e Fine_Lucid.

    2 Uscite: V (Vernicia), L (Lucida)

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    61/83

    Esercizio 7: Macchina a Stati

    Definire Ingressi ed Uscite

    Identificare gli stato dellAutomacon dei flagindirizzati ad esempio con dei Merker booleani

    S.S.C. A. Pilloni 61

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    62/83

    Esercizio 7: Macchina a Stati|ACTUAL STATE| &|INPUTs|(SETNEW STATE, RESETOLD STATE)

    Segmento 1:

    Segmento 2: Segmento 3:

    S.S.C. A. Pilloni 62

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    63/83

    Esercizio 7: Macchina a Stati

    |ACTUAL STATE|(SET/RESETOUTPUTs)

    S.S.C. A. Pilloni 63

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    64/83

    Esercizio 7: Macchina a Stati

    Ricordando che lOB100 permette di eseguire del codicesolo al durante il ciclo di avvio del PLC (vedi slide #29)

    Per inizializzare lautomanello stato HOME, in un OB100inseriremoil seguente segmento:

    S.S.C. A. Pilloni 64

    Dopo il primo ciclo del PLC ilvalore del Merker M4.2associato ad HOME che dibase vale 0 diventa il suonegato, ovvero 1

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    65/83

    Esercizio 8: Implementazione F.d.T

    Implementare in SCL il seguente sistema dinamico

    ()=

    1 =

    Al fine di implementare su un calcolatore un equazione

    differenziale necessario discretizzarla! Approssimando la derivata con Eulero implicito

    ()

    (passo di discretizzazione)

    si ottiene la seguente equazione alle differenze finite

    =

    1

    = 0,1,2

    S.S.C. A. Pilloni 65

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    66/83

    Esercizio 8: Implementazione F.d.T

    Lequazione alle differenze finite

    =

    + ( 1)

    + = 0,1, ()

    mostra come luscitadel sistema al passo dipende oltre che

    dal valore istantaneo dellingresso, e dalle costanti , ,

    anche dalluscitaal passo precedente !!!

    Esempio iterazione algoritmo: K=0: 0 = 0 0 la condizione iniziale del sistema

    K=1: =

    +

    0

    +

    K=2: 2 =

    + 1

    + 2

    K=n: =

    + ( 1)

    +

    S.S.C. A. Pilloni 66

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    67/83

    Esercizio 8: Implementazione F.d.T

    Ricordando che I blocchi FB sono blocchi di codice chememorizzano i propri valori in modo permanente in modo da

    poterne disporre anche dopo l'elaborazione del blocco (vedislide #26), implementeremo il nostro algoritmo su un FB

    Vista la struttura della (*) sceglieremo come lingueaggio lSCL

    S.S.C. A. Pilloni 67

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    68/83

    Esercizio 8: Implementazione F.d.T

    Definire linterfacciadella FB:

    S.S.C. A. Pilloni 68

    Le variabili static

    permettono didisporre di un datoanche dopo la sual'elaborazione

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    69/83

    Esercizio 8: Implementazione F.d.T

    Codice SCL della FB

    S.S.C. A. Pilloni 69

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    70/83

    Esercizio 8: Implementazione F.d.T

    Infine al fine di simulare completamente il comportamentodinamico del sistema sar necessario richiamare tale FBesattamente ogni secondi

    A tal fine la FB sar richiamata in un OBdi interruptciclico il

    cui tempo di chiamata dipende dalla sua priorit, es. OB35hapriorit 12 e viene richiamato ogni 10msec

    Creazione di un OB di Interrupt

    S.S.C. A. Pilloni 70

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    71/83

    Esercizio 8: Implementazione F.d.T

    S.S.C. A. Pilloni 71

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    72/83

    Controllo PID

    il sistema di controllo in retroazione di gran lunga pi comunenell'industria, in particolare nella versione PI

    Siemens propone un ampia libreria per la regolazione PID

    A titolo di esempio nel seguito

    mostreremo come simulare il seguenteloop di controllo utilizzando lFBdellEsercizio 8per simulare il ilprocesso, ed il blocco Cont_C come

    regolatore

    S.S.C. A. Pilloni 72

    2.01.0

    1 1 0 . 0

    () ()

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    73/83

    Esercizio 9: Controllo P

    Realizzare un regolatore proporzionale con guadagno pari a 2utilizzando il blocco Cont_C di Siemens e verificare che aregime la risposta al gradino vale esattamente

    = lim

    1 ()

    = lim

    1.0

    2.01 1 0 . 0

    1 2.0

    1 1 0 . 0

    =2

    3= 0.666

    S.S.C. A. Pilloni 73

    2.01.0

    1 1 0 . 0

    = 1.0() ()

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    74/83

    Esercizio 9: Controllo P

    NellOB35inseriamo il CONT_C. Associamo luscitadel PIDLMNallingressodel processo, luscitadel processo a PV_IN(e.g. vedi slide #64) ed il setpoint del regolatore SP_INT ad unmerker, quindi settiamo il tempo di ciclo a 10msec

    S.S.C. A. Pilloni 74

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    75/83

    Esercizio 9: Controllo P

    Cliccando sulliconadi configurazionesettiamo le seguenti schermate delmenu

    S.S.C. A. Pilloni 75

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    76/83

    Esercizio 9: Controllo P

    S.S.C. A. Pilloni 76

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    77/83

    Esercizio 9: Controllo P

    S.S.C. A. Pilloni 77

    Il blocco CONT_Cimplementa di base laconfigurazioneAnti-WindUP, inoltrepermette di saturarelazione di controllo.

    Per maggiori dettaglisu CONT_C si rimandaallHelp

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    78/83

    Esercizio 9: Controllo P

    S.S.C. A. Pilloni 78

    ll

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    79/83

    Esercizio 9: Controllo P

    S.S.C. A. Pilloni 79

    Setpoint

    Uscita processo

    ll

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    80/83

    Esercizio 10: Controllo PID

    Utilizzare una configurazione PID generica ed eseguire iltuning online del regolatore

    Per far ci dovremo modificare la schermata di configurazionecome segue

    S.S.C. A. Pilloni 80

    i i 0 C ll

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    81/83

    Esercizio 10: Controllo PID

    Il tuning dei parametri del PID pu chiaramente essere fattoanche online.

    Per far ci caricare il codice nel simulatore o nel PLC reale se vitrovate in impianto, andare in modalit Online , quindi

    cliccare sulliconadella messa in servizio

    S.S.C. A. Pilloni 81

    E i i 10 C ll PID

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    82/83

    Esercizio 10: Controllo PID Forzare nella finestra di Ottimizzazione, diverse

    configurazioni di tuning sino a trovare quella soddisfacente

    S.S.C. A. Pilloni 82

    Test al gradino con tuninig differenti

    Setpoint

    ParametriPID

    Avviare lacquisizionedegli stream

    R f

  • 7/24/2019 TIA Portal Siemens s7-300 tutorial

    83/83

    References

    https://cache.industry.siemens.com/dl/files/395/18654395/att_33361/v1/KOP_i.pdf

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

    http://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-

    050_R1209_PLCSIM.pdf http://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Down

    load/Documents/Getting%20Started%20S7-1200-it.pdf

    https://cache.industry.siemens.com/dl/files/395/18654395/att_33361/v1/KOP_i.pdfhttps://cache.industry.siemens.com/dl/files/395/18654395/att_33361/v1/KOP_i.pdfhttps://www.youtube.com/watch?v=dy2NabkU5GQhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w5.siemens.com/italy/web/AD/ProdottieSoluzioni/HomeSCE/Download/Documents/Getting%20Started%20S7-1200-it.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttp://w3.siemens.com/mcms/sce/de/fortbildungen/ausbildungsunterlagen/tia-portal_module/tabcardseiten/Documents/SCE_EN_020-050_R1209_PLCSIM.pdfhttps://www.youtube.com/watch?v=dy2NabkU5GQhttps://www.youtube.com/watch?v=dy2NabkU5GQhttps://cache.industry.siemens.com/dl/files/395/18654395/att_33361/v1/KOP_i.pdfhttps://cache.industry.siemens.com/dl/files/395/18654395/att_33361/v1/KOP_i.pdfhttps://cache.industry.siemens.com/dl/files/395/18654395/att_33361/v1/KOP_i.pdf