Programmazione in Ambiente Profibus DP

Slides:



Advertisements
Presentazioni simili
File Linguaggio C.
Advertisements

Introduzione al linguaggio C++
Corso di Fondamenti di Programmazione canale E-O
INFORMATICA Altre Istruzioni di I/O
Uso avanzato di C.
Nel C non esiste un dato primario di tipo stringa; queste sono rappresentate con un array monodimensionale di caratteri (tipo char). Così per definire.
Introduzione al linguaggio C
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
Sviluppo di programmi strutturati
LE FUNZIONI IN C Sommario 1 Introduzione 2 Moduli di programma in C
PUNTATORI Introduzione
Introduzione allarchitettura dei calcolatori 2/ed Carl Hamacher, Zvonko Vranesic, Safwat Zaky Copyright © 2007 – The McGraw-Hill Companies srl Versione.
Programmazione con socket
Massa Laura Mela Enrica
Introduzione al linguaggio C
Configurazione & Programmazione PLC Siemens S7-300 Master DP
Il CANOpen.
Configurazione & Programmazione di un PC Master DP
PROcess FIeld BUS (PROFIBUS)
Integrazione dell'Informazione nell'Automazione Industriale
PLC PCD1 della SAIA-Burgess
INFORMATICA Strutture iterative
Argomenti dalla linea dei comandi Gli argomenti possono essere passati a qualsiasi funzione di un programma, compresa la main(), direttamente dalla linea.
Funzioni definite dall’utente
Tipi di dato e controllo del flusso Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dellInformazione Università di Siena Via Roma 56 – – SIENA.
Prof.ssa Chiara Petrioli -- Fondamenti di programmazione, a.a. 2009/2010 Corso di Fondamenti di programmazione a.a. 2009/2010 Prof.ssa Chiara Petrioli.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Puntatori Marco D. Santambrogio – Ver. aggiornata al 21 Marzo 2013.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Stringhe e Puntatori Marco D. Santambrogio – Ver. aggiornata al 18 Marzo 2013.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE File Marco D. Santambrogio – Ver. aggiornata al 9 Maggio 2012.
Laboratorio di Linguaggi P R I M O C O M P I T I N O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
Laboratorio di Linguaggi lezione III: tipi base, espressioni, type-cast Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Il livello Microarchitetturale
INFORMATICA Altre Istruzioni di I/O. © Piero Demichelis 2 Funzioni di I/O Per la lettura e la scrittura da videoterminale il C prevede numerose istruzioni.
Esercizio: Copiare un file in un nuovo file mediante le funzioni read e write.
A.A. 2010/2011Ambienti di Programmazione per il Software di Base1 (Es. – 6) Ambienti di Programmazione per il Software di Base Le Stringhe in C Input.
Esercizi FUNZIONI Passaggio di parametri per valore, variabili e tipi locali e globali, prototipo.
Esercizi Puntatori, struct con campi puntatore, puntatori a struct, rapporto tra array e puntatori. FUNZIONI Passaggio di parametri per indirizzo, passaggio.
Politecnico di Milano Esercizi Preparazione alla prima prova intermedia.
Dichiarazioni e tipi predefiniti nel linguaggio C
I File.
Le funzioni.
1 Il Frame Buffer Daniele Marini. 2 Cosè Una memoria dedicata alla registrazione temporanea di una immagine Dimensioni tipiche: –640x480 x 8 bit –1024x1024.
Il Calcolatore Elettronico
Architettura del calcolatore
Progetto MIUR 5% Salvaguardia delluomo… – 2 o Convegno Nazionale, Firenze, 2003 Procedure standardizzate per la raccolta dei dati nelle stazioni di misura.
void binario(int n); …………………
Programmazione di Calcolatori
Prof.ssa Chiara Petrioli -- Fondamenti di programmazione, a.a. 2009/2010 Corso di Fondamenti di programmazione a.a. 2009/2010 Prof.ssa Chiara Petrioli.
Unità Didattica 3 Linguaggio C
14 marzo 2002 Avvisi:.
Esercizi su File.
1 Esempi domande di esame. 2 Dato il seguente programma #include int main(){ int *p,j=9,i=5; p=&j; *p=i; printf("%d %d %d\n", i,j,*p); scanf("%d",p);/*
Prof.ssa Chiara Petrioli -- corso di programmazione 1, a.a. 2006/2007 Corso di Programmazione 1 a.a.2006/2007 Prof.ssa Chiara Petrioli Corso di Laurea.
Ripetizione La vera potenza dei programmi per computer risiede nella capacità di ripetere lo stesso calcolo o sequenza di istruzioni più volte, ogni volta.
Programmazione in linguaggio C
Architettura di una CPU
#include void main() { int a,b,c,; float s, x,x1,x2,delta,alfa,beta; int num[3]; int i; printf("La forma classica dell'equazione di 2° grado è: a*x^2+b*x+c=0\n.
Prof.ssa Chiara Petrioli -- corso di programmazione 1, a.a. 2006/2007 Corso di Programmazione 1 a.a.2006/2007 Prof.ssa Chiara Petrioli Corso di Laurea.
Arduino: introduzione alla programmazione
Politecnico di Milano © Domenico Barretta Processi concorrenti in Unix Docente Domenico Barretta Politecnico di Milano
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE File Marco D. Santambrogio – Ver. aggiornata al 21 Maggio 2014.
1 SC che operano su processi Getpid, fork, exec, wait, waitpid, exit, dup, dup2.
Sistemi Elettronici Programmabili
1 Il linguaggio C Precisazioni sull’esperienza in laboratorio.
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma “La Sapienza”
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Esercitazione sull’ ordinamento 20 maggio 2003
1 Laboratorio di Programmazione di Sistema - C Susanna Pelagatti Ricevimento: Me ,
Il C `e un linguaggio di programmazione di uso generale, originariamente sviluppato per la scrittura del sistema operativo Unix, ed oggi disponibile su.
Transcript della presentazione:

Programmazione in Ambiente Profibus DP Slave Programmazione di un PLC (Slave “Intelligente”) connesso a Profibus DP Ruolo Slave Master: PC o PLC Scheda di interfaccia Profibus DP Saia-Burgess

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave) Definizione dei Master presenti nel Bus Utilizzo dei file *.GSD Definizione del Baud rate del Bus Assegnazione Indirizzo allo Slave e al/ai Master che lo utilizzano

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave) Assegnazione del programma eseguito dallo Slave Definizione degli indirizzi di Flag di diagnostica (obbligatorio) Definizione del nome della configurazione del device "SASI Text Number" (obbligatorio). Il nome viene utilizzato nell'inizializzazione della comunicazione per il device (XOB)

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave) Definizione degli scambi di comunicazione tra Master/Slave E' possibile definire i seguenti scambi: Registro (32 bit) Master  Registro (32 bit) Slave Flag (da 1 a 8 bit) Master  Flag (da 1 a 8 bit) Slave Flag (da 1 a 8 bit) Master  Uscita (da 1 a 8 bit) Slave Registro (32 bit) Slave  Registro (32 bit) Master Flag (da 1 a 8 bit) Slave  Flag (da 1 a 8 bit) Master Ingressi (da 1 a 8 bit) Slave  Flag (da 1 a 8 bit) Master

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave)

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave) Una volta scelta la tipologia dello scambio informativo, vengono specificati gli indirizzi dei flag e/o i registri interessati allo scambio informativo

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave) Inizializzazione della Comunicazione: SASI Sintassi: SASI canale ; testo; Canale Profibus DP=9 Il testo è il SASI Text Number contiene la definizione parametri di comunicazione del device  

Definizione della Comunicazione nel PLC SAIA (Profibus DP Slave) Programma di Inizializzazione della Comunicazione Profibus DP  XOB 16 SASI 9 text_name EXOB Nota: il text name contiene tutte le configurazioni di comunicazione relative al PLC locale

Il programma in C (lato PC Master): Esempio di Interazione tra PC e PLC Scrittura di 1 byte dal PC Master su 8 Flag Interni del PLC Slave Il programma in C (lato PC Master): #include <windows.h> #include <stdio.h> #include "applicom.h"   short i; /* For loop counter */ short nchan; /* Channel number */ short neq; /* Equipment number */ short nb; /* Number of bytes */ short status; /* Interchange status */ long adr; /* First byte address */ char tabl[1]; /* Table containing the data */

Esempio di Interazione tra PC e PLC Scrittura di 1 byte dal PC Master su 8 Flag Interni del PLC Slave void main() { initbus(&status); if (!status) { nchan=0; nb=1; neq=10; adr=0;   printf("\n Valore del byte che devo scrivere (0-255) = "); scanf(" %hd", &tabl[adr]); writepackqbyte(&nchan, &neq, &nb, &adr, tabl, &status); if (status) printf("\n problemi relativi all'equipment numero %hd \n",neq);   exitbus(&status); }else printf(" non-resident applicom® communication software "); }

Esempio di Interazione tra PC e PLC Scrittura di 1 bytes dal PC ai flag Interni del PLC Supponiamo di aver impostato lo scambio dati Flag (da 1 a 8 bit) Master  Flag (da 1 a 8 bit) Slave Supponiamo che i Flag in cui il Master scrive sono quelli da 0 a 7 (F0,..., F7) Supponiamo di volere che il PLC ponga l'uscita O 50 alta se tutti i flag F0,...,F7 sono posti alti (ossia se il PC scrive 255)

Il programma in IL SAIA diviene: XOB 16 SASI 9 text_name EXOB Esempio di Interazione tra PC e PLC Scrittura di 1 bytes dal PC ai flag Interni del PLC Il programma in IL SAIA diviene: XOB 16 SASI 9 text_name EXOB

Il programma in Ladder SAIA diviene: Esempio di Interazione tra PC e PLC Scrittura di 1 bytes dal PC ai flag Interni del PLC Il programma in Ladder SAIA diviene: F0 F1 F2 F7 …… A N D O50