CODESYS placeholder e namespaces

Public 02/2014
CODESYS placeholder e namespaces:
Semplice sviluppo e librerie per l’ applicazione
CODESYS Users‘ Conference 2014, Roland Wagner
CODESYS® a trademark of 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Agenda
2
1
Regole per lo sviluppo di una libreria
2
Demonstration
3
Facilitations as of CODESYS V3.5 SP4
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Regole per lo sviluppo di una libreria
Base: Libreria
 Collezione di elementi riutilizzabili







3
POUs, es. funzioni di function blocks
DUTs come strutture, union oppure enumerations
Variabili globali, costanti e liste di parametri
Metodi e caratteristiche di interfacce
Liste testo, gruppi di immagini, visualizzazioni
File esterni (es. documentazione)
Tabelle Cam
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Regole per lo sviluppo di una libreria
Base: libreria
 Repository per Librerie:
 Tool specifico per la gestione delle librerie
 Diverse “repositories” possibili
 Manager per le Librerie :
 Progetto specifico per la gestione della libreria
 Riutilizzo delle POUs di librerie integrate
 Riferimento ad altre librerie
4
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Regole per lo sviluppo di una libreria
1. Definire un ragionevole nome della libreria
2. Utilizzo di templates al fine di guadagnare compattezza
3. Utilizzo di una familiare e compatta struttura di un progetto
4. Registrazione di un globale namespace della libreria
5. Completare le informazioni del progetto
6. Utilizzare la strada giusta per il riferimento alle altre librerie
7. Design disponibile per interfacce esterne e interne
8. Implementare una gestione degli errori user-friendly
9. Utilizzare il motivo giusto (protezione) per l’ apertura
10. Seguire una convenzione dei nomi per assicurare un codice pulito
11. Lavorando su una libreria esistente, assicurarsi interfacce compatibili
a versioni precedenti
5
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Regole per lo sviluppo di una libreria
Cosa è un namespace?
 Una stringa di caratteri latini, unico in tutto il mondo e il più breve possibile
 Esempio: "LAT" per una libreria che include "Lists And Trees"
 Registrazione Placeholder sotto: [email protected]
 CODESYS setup: "LibraryRegistry.chm" con attuali namespace registrati
 Identificazione positiva di una libreria
 Identificazione positiva di POUs in differenti
librerie, es.
 CL2.Send();
 SIO.Send();
 Differenti POU chiamate
6
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Regole per lo sviluppo di una libreria
Placeholder
 CODESYS ha tre posti per la definizione di placeholder
 Device description
<ts:section name="placeholder-libraries">
…
<ts:setting name="3S CANopenDevice“
type="string“
access="visible">
<ts:value>3S CANopenDevice, 3.5.1.0
(3S - Smart Software Solutions GmbH)</ts:value>
</ts:setting>
…
</ts:section>
7
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Regole per lo sviluppo di una libreria
Placeholder
 CODESYS ha tre posti per la definizione di placeholder
 Device description
 Library profile
 Progetto CODESYS
<LibraryProfile>
<Resolution
PlaceholderName="DataServer"
CompilerVersion="3.5.0.0“
GroupName="DataServer">
Data Server, 3.5.0.0 (System)
<Resolution
<LibraryProfile>
 Risoluzione dei placeholders: nell’ ordine sopra
 Utilizzo della risoluzione trovata prima
8
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Agenda
9
1
Rules for library development
2
Demonstration
3
Facilitazioni nella CODESYS V3.5 SP4
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Agenda
10
1
Rules for library development
2
Demonstration
3
Facilitazioni nella CODESYS V3.5 SP4
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Facilitazioni nella CODESYS V3.5 SP4
Concetti migliorati
 Regole per lo sviluppo della libreria
 Concetto del placeholder per l’ implementazione delle librerie
 Riferimento placeholder invece di una versione concreta
 Risoluzione di un placeholder
 attraverso il device
 attraverso library profile (la maggior parte dipendente dalla versione del
compilatore)
 Assicurarsi che solo una versione di libreria sicura è utilizzata
 "Star" concetto delle librerie di interfacce
 Data types e interfacce: sempre utilizzate nelle più recenti versioni
 Disponibile per tutte le altre librerie
 Richiesta base: solo estensioni compatibili (check in CODESYS)
11
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Facilitazioni nella CODESYS V3.5 SP4
Spazio per miglioramenti
 I placeholder per gli end-users non sono accessibili
 Nessun accesso alla device description
 Nessun accesso alla library profile
 Sistemi della libreria con difficili placeholder da realizzare nel CODESYS
Store
 Accesso al library profile possibile, ma solo in funzione della versione del
compilatore
 Interfaccia utente può portare all’ uso di errori
12
© 3S-Smart Software Solutions GmbH
CODESYS placeholders and namespaces
Facilitazioni nella CODESYS V3.5 SP4
Miglioramenti
 Introduzione di placeholders "free"
 Nessuna risoluzione tramite device description oppure library profile
 Gli User possono selezionare la versione nell’ amministratore della libreria
 "Project Environment" offre updates.
 Auto definizione di librerie
 Implementazione delle librerie ( dovrebbero essere inserite attraverso
placeholder)
 Librerie Interfacce ( dovrebbero essere inserite attraverso "star")
 Contenitore librerie ( dovrebbero essere inserite attraverso una versione
rilasciata)
 Significante facilitazione per aggiungere riferimenti alla libreria
13
© 3S-Smart Software Solutions GmbH
Inspiring Automation Solutions
Thank you for your attention.
14
© 3S-Smart Software Solutions GmbH