Vai al contenuto
PLC Forum


Diritti D'autore In Automazione - Come proteggere il proprio software


i.messori

Messaggi consigliati

Sono il direttore tecnico di una società di progettazione nel campo dell'automazione industriale. Sviluppiamo il software PLC e il progetto CAE di quadri elettrici per impianti/macchine automatici. Ultimamente siamo stati spiazzati dal comportamento di un nostro cliente che ha dato il nostro software PLC ad un nostro concorrente per avere un preventivo. Finora avevamo fornito il software PLC completamente aperto, mentre il progetto CAE solo su carta. Avete documentazione (o indirizzarmi verso fonti) riguardante il copyright nel campo dell'automazione industriale?

E' utile registrare il software alla SIAE?

Grazie.

Link al commento
Condividi su altri siti


  • Risposte 73
  • Created
  • Ultima risposta

Top Posters In This Topic

  • nll

    9

  • Piero Azzoni

    7

  • aerresystem

    7

  • Pietro_1

    5

Ultimamente siamo stati spiazzati dal comportamento di un nostro cliente che ha dato il nostro software PLC ad un nostro concorrente per avere un preventivo.

Purtroppo questo e' un mondo di bravoni e furboni, certe cose fan ribaltare lo stomaco :angry:

Link al commento
Condividi su altri siti

In passato la nostra azienda ha avuto lo stesso problema , ma non e' riuscita a vare niente , e' sufficiente che il concorrenta cambi poche cose , o al limite usi un altro plc, che non si puo' dimostrare che abbia copiato il tuo.

Purtroppo non ho seguito la vicenda personalmente , ma provo ad informarmi se c'e' qualche cosa che si puo' fare.

ciao

Luca

Link al commento
Condividi su altri siti

Il problema sta sempre nel contratto di partenza: se si vende l'applicazione il software applicativo è di propietà del cliente. Se si specifica che si vende solo la licenza d'uso del software (come fanno tutti i maggiori produttori) si può ricorrere a termini di legge.

Purtroppo di solito chi fa il nostro lavoro non specifica niente o quasi, quindi diventa molto difficile che si è vendutao la sola licenza d'uso.

Link al commento
Condividi su altri siti

Sicuramente il tuo cliente non e' corretto.

ma la corretteza e' cosa diversa da considerazioni di carattere legale.

Mi sono espresso piu' volte su questo sito in merito al fatto che ritengo assolutamente giusto che normalmente il sorgente NON VADA DATO, salvo specifiche e chiare condizioni contrattuali.

MA..... stavolta mi sento di dover dire....

Se e' vero, ed e' vero che il sorgente dei programmi (di tutti i programmi) e' proprieta' intellettuale di chi lo ha scritto.

E' anche vero che quando chi l'ha scritto LIBERAMENTE ne da' copia al suo cliente...

Lo ha dato al suo cliente !

e non e' una frase banale.

la giusta difesa del giusto diritto alla proprieta' intellettuale sta nel NON DARE IL SORGENTE.

Se per ragioni "varie" lo si e' dato...

Se per ragioni "varie" lo si e' ricevuto si e' liberi di darlo ad altri, anche a chi non fosse "gradito" al l'originale autore.

Ovvio che anche in questo caso c'e' l'eccezione, potrei dare al mio cliente il sorgente con vincolo di segretezza, ma anche questo e' un contratto patricolare.

Non confondiamo mai l'eccezione con la regola, e stiamoci attenti !!

Link al commento
Condividi su altri siti

Saluti a tutti,

prendo spunto da questa discussione per chiedere aiuto su di un argomento correlato; considerando lo specifico dello step7:

è possibile proteggere i vari blocchi e funzioni? + o meno come è stato fatto per i blocchi già integrati nello step7 (esempio: SFB29)

Grazie e ciao

Link al commento
Condividi su altri siti

Gabri hai centrato il problema ,

Non serve quasi a niente non dare il sorgente, il cliente puo' prendere il programma direttamente dal plc.

Certo non avra' la lista commenti e le etichette , ma questo fara' solo perdere un po' di tempo in piu'.

In non so se si puo' bloccare la lettura dei blocchi.

Saluti

Luca

Link al commento
Condividi su altri siti

stefano.gallo

Se intendi proteggere tutti blocchi dalla lettura generalizzata della CPU, mi pare ci sia una funzione integrata nelle proprietà della CPU con la possibilità di attivarla con una password.

Per quanto riguarda i singoli blocchi di programma si possono benissimo proteggere impedendo la visione del listato semplicemente realizzando la sorgente KNOW HOW PROTECTED del blocco e poi ricompilarlo. Quando si proverà ad entrare nel blocco verrà visualizzata la finestra di blocco protetto non modificabile.

Ciao Stefano

Link al commento
Condividi su altri siti

Grazie 1000,

le dritte mi son servite tantissimo, anche perchè dall'. on line dello step7 non ho ricavato niente!!Mi sa che sia la protezione dei blocchi che della cpu le utilizzerò spesso....e nella prossima fornitura specificherò anche che viene fornita ESCLUSIVAMENTE la licenza d'uso, anche perchè se qualche esperto da 1occhiata ai miei software mi fa radiare dalla categoria!!

Saluti a tutti

Link al commento
Condividi su altri siti

Lo step 7 prevede esplicitamente la protezione dei blocchi, se il blocco è protetto quando si cerca di visualizzarlo appare, invece del sorgente, la scritta "blocco protetto". E' chiaro che questa protezione è aggirabile da untenti "scafati". Baste leggere vari post di questo forum e si noterà che c'è sempre qualc'uno che chiede: "come posso legger i blocchi protetti?"

C'è adirittura un tecnico italiano che vende su internet il software per questa applicazione!

Link al commento
Condividi su altri siti

Il software dei plc deve essere considerato come qualunque schema elettrico di un circuito , il cliente finale ha diritto ad avere tutto il programma , cosi come di un quadro deve avere tutti i disegni ( attualmente sono richiesti anche in formato elettronico) ,

naturalmente come i disegni il software per legge non deve essere consegnato o fatto visionare a terzi.

Il cliente finale ha il diritto , con i listati dei programmi come con i disegni elettrici , di poter controllare , individuare e ripristinare facilmente logiche di funzionamento o eventuali guasti , è anche necessario considerare che per una società un fermo

impianto o macchina è una grossa perdita in denaro , e il ripristino immediato è legato anche al programma software facilmente consultabile .

Draccula

:ph34r:

Link al commento
Condividi su altri siti

  • 3 years later...

Una volta creata la sorgente del blocco non mi ricordo piu

dove va messa l'opzione KNOW HOW PROTECTED e la corretta sintassi

Qualcuno si ricorda ?

ciao

walter

Link al commento
Condividi su altri siti

Mi ricollego su questa vecchia discussione ripristinata da walterword per dire anche la mia.

Io sono univocamente in correspondenza con quello scritto da Piero.

Incambio, quello scritto da draccula sembrarebbe soltanto il su desirerio, qualcosa andrebbe bene altre assolutamente no.

Dalla mia sperienza anche internazionale, vi posso dire che qualche ditta setta addirittura delle password su tutto il sistema HW/SW in modo di non potere andare neppure ON LINE con la CPU. Altri incambio, ti danno tutto, pure il file programma.

Molti costruttori, in fase di negoziazzione nella vendita e traspasso della loro tecnologia' attraverso i loro rappressentanti trascurano questo importante particolare anche per il temore di fraccassare nell'affare.

Poi, arrivano gli imprevisti .... chi ha saputo fare resta in piede... chi non chiude baracca.

Se Io vendo un sistema HMI abbinato ad un PLC dove c'e' una serie di applicazioni ( SCADA, . manuals, tutti i disegni, etc) che mi permettano di dirli al mio cliente che usando questi nel justo modo che si li viene indicato ed anche collaudato in fase di FAT (factory acceptance test), validation, commissioning.... non vedo perche' devo darli i segreti del know how acquisito.

E' impensabile che il manutentore di turno dovrebbe avere il LADDER del PLC per risolvere un problema oppure modifficare il SW.

Modificato: da Savino
Link al commento
Condividi su altri siti

Come premessa direi che il problema dovrebbe sempre essere risolto prima, a livello contrattuale.

Poi ci sono vari aspetti da considerare, non ultimo la possibilità che il fornitore sparisca dal mercato. A questo punto, se al cliente è stato fornito un sistema superprotetto, cosa succede nel caso ci siano problemi, oppure se il cliente ha bisogno di apportare una modifica?

Secondo me fornire un programma senza documentazione è come fornire la macchina senza schema elettrico.

Vorrei ricordare che anche sugli schemi elettrici di solito c'è una nota che dice più o meno così: "Questo disegno è di proprietà della ditta XYZ. E' vietato riprodurre e/o rendere noto a terzi questo disegno senza autorizzazione della ditta XYZ".

Quindi ritengo giusto fornire al cliente tutta la documentazione, specificando che al cliente è stata venduta la licenza (salvo diversi accordi), che il cliente non può apportare modifiche (salvo assumersene la resposabilità), che il cliente non può fornire la documentazione a terzi. Poi, si sa, è questione di correttezza.

Anche la correttezza però va valutata a doppio senso. Com'è possibile chiedere al cliente di essere corretto non fornendo il materiale a terzi, quando i primi ad essere scorretti siamo noi che ce lo vogliamo legare a filo doppio? In base a quale principio il cliente non dovrebbe essere libero di far modificare da terzi il software da noi fornito? Non sono pochi i casi di ditte che, una volta installato un impianto, poi risultano latitanti quando c'è bisogno di interventi, oppure applicano tariffe da banda armata.

In alcuni casi io mi sono fatto nuovi clienti proprio perché il precedente fornitore dimostrava una chiusura totale. Il cliente ha preferito spendere soldi per rifare tutto il programma da zero, pur di essere libero di scegliere a quale albero impiccarsi.

Ci sono poi altri problemi, non ultimo (anzi forse è proprio il primo) quello della sicurezza: se il cliente è libero di modificare il software, come sarà possibile dimostrare che non è colpa del software originale una qualsiasi causa di malfunzionamento?

Lo stesso problema c'è però anche per la parte elettromeccanica. Se il cliente manomette una sicurezza e succede... l'irreparabile, e poi ripristina la sicurezza...

Io di solito fornisco tutto al cliente, e specifico che il software rimane di mia proprietà. Il cliente ha acquistato solo la licenza.

Se riterrà opportuno in futuro rivolgersi ad un altro, pazienza :)

Per quanto riguarda la protezione dei blocchi, devi generare il file sorgente. Dove ci sono le proprietà della funzione (FC, FB, DB) che vuoi proteggere, scrivi KNOW_HOW_PROTECT. Se sbagli sintassi, o se lo scrivi nel posto sbagliato, il compilatore ti segnala l'errore.

Personalmente non perdo tempo a fare queste cose, perché rimuovere la protezione è una cosa troppo banale. Non chiedetemi però come si fa, perché non risponderò neanche in privato.

Link al commento
Condividi su altri siti

In alcuni casi io mi sono fatto nuovi clienti proprio perché il precedente fornitore dimostrava una chiusura totale.

Bravo, batta, succede proprio così.

E' successo anche a me tante volte, al punto che ormai "mettere le mani" in impianti fatti da altri che non esistono più o che sono latitanti è diventata una mia specialità ! ;)

Poi, si sa, è questione di correttezza.

Certo, ed ognuno di noi, che facciamo questo mestiere, sa in cuor suo se quello che vende è farina del suo sacco oppure no ....... :whistling::whistling:

Vero, ragazzi ..???

Link al commento
Condividi su altri siti

Al di là del blocco o protezioni dei programmi che cosa fornite al cliente? Esempio: quadro xx con relativi schemi elettrici manualistica dei componenti commerciali installati ecc... per il plc? come vi muovete? fornite anche lo schema ladder (o altro)?

Grazie

Link al commento
Condividi su altri siti

Per mia esperienza posso dire che i nostri clienti chiedono il software assolutamente libero ogni , variabile all'interno del PLC commentata , ogni segmento commentato c'è chi vuole il software traducibile in KOP , chi in FUP oppure in AWL , chi non vuole sentire parlare di SCL o chi non sa che cos'è e non dice niente , comunque vendendo noi le macchine NON ho mai trovato un cliente che non volesse il CD con il software del PLC ed eventuali software di supervisione. Altrimenti se non forniamo tutta la documentazione (come descritto nel loro capitolato di offerta) semplicemente non pagano. Il software fa parte della macchina così come viene fornita la documentazione della parte meccanica ed impiantistica viene fornita anche la documentazione software. Sinceramente ogni tanto la mia azienda si avvale di softwaristi esterni per sopperire ai picchi di lavoro ma assolutamente il loro software DEVE essere chiaro e visibile alla nostra azienda ed al cliente. Un' ultima cosa non ho mai sentito parlare di licenze d'uso di software di plc in quanto il software di una macchian va bene solo su quella macchina (al limite per qualche piccola macchina di seria) e non posso utilizzarlo su macchine diverse , infatti il costo dello sviluppo di un software di PLC copre completamente il tempo impiegato per laprogettazione e debug del software stesso.Non credo si possa fare un parallelo con software tipo eplan , o autocad dove il costo della singola licenza non copre ilcosto dello sviluppo del software stesso

Link al commento
Condividi su altri siti

;) Salve a tutti.

Porto il mio esempio che però esula dallo specifico discorso PLC ma si riferisce al settore meccanico.

Come progettista meccanico, ed essendo in combinata con una officina meccanica per le lavorazioni del caso, in fase di valutazione e preparazione offerta specifico tutte le varie voci inerenti il contratto. Per esempio: sviluppo documentazione (e non solo disegni ma anche data-sheet parti commerciali), calcoli, realizzazione. Ovviamente in fase di contrattazione specifico più che chiaramente l'eventuale (e dico eventuale perchè alcuni Clienti non sono interessati al malloppo docuementale) consegna anche della docuemntazione olter il prodotto. Il più delle volte i Clienti decidono di non avere la documentazione ma di utilizzarmi come Ufficio Tecnico/Progettazione decentrato (anche perchè gestire poi la documentazione a molti da fastidio) anche per eventuali controlli in fase di realizzazione prodotto (serie e/o prototipi che siano). Sempre nell'offerta specifico, infine, la voce di consegna know-how della documetnaizone laddove occorresse l'interruzione del rapporto di lavoro. In tal caso ci si accorda sulla parte spettante non inclusa nelle rpecedenti voci.

Forse sbaglierò ma almeno le cose sono: CHIARE CONCISE e soprtatutto SCRITTE..

Chiaro che occorre definire un template di offerta che porterà ad avere diverse pagine di specifiche. Lavoro che viene fatto una sola volta per tutte ed all'inizio.

Verba Volant Scripta Manent

Scusatemi della lungaggine, ma, anche se non del "giro", volevo dire la mia in tutt'altro ambito ma che, astre dalla materia.

Ciao e Buon lavoro ;)

Link al commento
Condividi su altri siti

ciao a tutti,

mi inserisco in questa nota e mai completamente risolta questione,

concordo pienamente con Livio e Piero quando dicono che la soluzione è NEL contratto,

poi ognuno ha le sue esperienze e lavora in ambiti tra i più diversificati ... ergo:

io la vedo così (contratto a parte):

considero il PLC alla stregua di un componente che esegue delle operazioni,

se lo paragoniamo ad un banalissimo cronotermostato che tutti abbiamo in casa,

sappiamo che verrà abilitato il comando in base a dei parametri (che io inserisco),

nessuno si sognerebbe di chiedere il sorgente alla ditta costruttrice,

magari però documentare o rendere pubblico il funzionamento logico sì,

la gestione degli I/O, i parametri da settare, allarmi, ecc

come poi verrà realizzato all'interno (sorgente) sono affari del programmatore,

rendere pubblico il sorgente, oltre ai problemi di know-how, comporta... ahimè ...

la quasi sicurezza che qualcuno o prima o poi, ci metta il naso cambiando "qualcosa",

penso sia capitato a molti ... e chissà perchè: "...non l'ha mai toccato nessuno!"

ciao

Link al commento
Condividi su altri siti

ti contradici, prima dici che sta tutto nel contratto poi tiri fuori casi generalizzati

mi ripeto, I CASI GENERALIZZATI NON ESISTONO

se software quello devi dare

se insieme al software vendi anche il plc devi dare anche quest'ultimo

allo stesso modo se vendi genericamente un qualcosa che funziona quello devi dare

se vendi software in versione sorgente completo di ogni commento quello devi dare

nessuno puo' esimersi dal dare cio' che ha venduto

nessuno puo' richiedere cio' che non ha comperato

Link al commento
Condividi su altri siti

mah ... vedi Piero, non è una contraddizione ...

come già scritto, se hai un contratto a prova di virgola, le risposte sono tutte lì,

il problema nasce quando (maggior parte dei casi) il contratto non è preciso,

e questa discussione nasce perchè ognuno di noi, clienti compresi,

interpreta l'argomento secondo il proprio punto di vista ... ovviamente dirai ...

ma quanti veramente hanno un contratto a prova di bomba?

spero in molti (io no), e forse, dopo questa discussione, molti di più!!!

e se il contratto non è chiaro? ... quì si innescano una serie di luoghi comuni,

abitudini, interpretazioni personali e .... chi più ne ha più ne metta!

l'esempio del cronotermostato era solo un punto di vista,

potrei sbagliarmi, ma penso che la maggior parte di chi scrive, venda la "macchina"

intesa come assieme di componenti tra cui PLC e relativo software,

se fai o vendi solo sw, sicuramente il problema l'hai già risolto (è la tua risorsa!)

altra cosa se vendi la "macchina" dove riguardo l'argomento, si è più superficiali,

prova ne è l'interesse legato a questa discussione ....

ovviamente è solo un parere personale (... e quanti dubbi!!!!)

ciao a tutti :P

Link al commento
Condividi su altri siti

  • 1 month later...

Io sapervo che per avere il sorgente di un programma il cliente deve farne esplicita richiesta scritta in fase d'ordine, altrimenti il Software si sottintende dato in licenza d'uso o non è cosi'?

Oggi, quando acquisto una automobile acquisto anche sicuramente una centralina (microcontrollore) ma non acquisto il software (firmware??!!)che determina il funzionamento della centralina. Pero' la casa madre permette a chiuque e senza alcuna attrezzatura, di accedere e quindi d'interfacciarsi alla diagnostica della centralina per riparare eventuali malfunzionamenti della vettura generati da dispositivi esterni. Se la centralina è morta perchè si è bruciata o si è sprogrammata vado al concessionario è chiedo il ricambio, cioè centralina completa di software, cosi' ho la vettura perfettamante funzionante.

Diverso è il discorso se la macchina presenta vizi a causa del software (e sono tanyi i casi) in tal caso il produttore deve porre rimedio e ciò, perchè è il produttore il diretto responsabile del prodotto.

Un ampliamento della macchina deve essere previsto dal costruttore,ad esempio un gancio traino e accessori vari, se noaltrimenti il prodotto non è modificabile e chi eventualmente lo modifica lo fa a proprio rischio e pericolo o no?

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