Domanda

Qualcuno ha parlato con successo profibus da un'applicazione .NET?

In tal caso, quale dispositivo/scheda hai utilizzato per ottenere questo risultato, quale era l'applicazione e hai utilizzato qualche tipo di codice preesistente o disponibile?

È stato utile?

Soluzione

Non abbiamo usato Profibus, ma abbiamo usato DispositivoNET (un altro protocollo basato su CAN), Ethernet/IP E ControlNet che hanno tutti sfide simili.

Lo facciamo dalla fine degli anni '90 e quindi ci affidiamo principalmente al nostro codice generato utilizzando hardware standard.Le aziende che hanno mostrato longevità durante quel periodo che ricordo sono:-

  • AnyBus (HMS, www.anybus.com) abbiamo recentemente iniziato a utilizzare i loro prodotti gateway poiché possiamo posizionare le interfacce bus di campo vicino all'hardware e quindi comunicare tramite Ethernet normale (solitamente utilizzando Ethernet/IP www.odva.org).Questo ha il vantaggio di separare hardware e PC utilizzando solo un cavo di rete.Le classi Ethernet/IP .NET sono state scritte da noi poiché all'epoca non c'era molto sul mercato.Sono sicuro che una rapida ricerca su Google troverebbe le librerie di classi adatte
  • SST (www.mysst.com) dispongono di interfacce bus di campo da oltre un decennio.L'ultima scheda SST che abbiamo utilizzato per DeviceNET aveva ancora solo il codice campione VB6.Una buona selezione di supporto bus di campo e diversi fattori di forma, ad es.PC104, PCI, PMCIA
  • Beckhoff/Wago (www.beckhoff.com, www.wago.com) in genere utilizziamo Beckhoff per l'I/O più che per le schede di interfaccia, ma anche in questo caso si tratta di un'azienda che esiste da molto tempo.Hanno anche prodotti che supportano l'esposizione tramite OPC (un altro modo per ottenere informazioni I/O senza comunicare direttamente con l'hardware/driver del dispositivo)

Suggerisco di non utilizzare direttamente le interfacce OPC con l'hardware (va bene per la comunicazione utilizzando PC (.NET)->PLC->Profibus) poiché è necessario garantire che il sistema di controllo risponda alla perdita di controllo dall'applicazione .NET.Presumo che tu abbia bisogno di un Master Profibus qui (non di uno slave), quindi finché il tuo sistema di controllo è intrinsecamente a prova di guasto, la perdita di comunicazione dovrebbe significare che il sistema di controllo entra in uno stato "Idle" e quindi la maggior parte dei L'I/O tornerà allo stato fail-safe.

Cerchiamo inoltre di garantire di non inserire codice relativo alla sicurezza in .NET.La maggior parte del nostro codice .NET è un'interfaccia utente da un PLC, ma in alcuni punti controlliamo direttamente il bus di campo ma garantiamo che gli interblocchi hardware impediscano un funzionamento non sicuro, utilizzando interruttori/relè di sicurezza o un piccolo PLC con il compito di solo interblocco . E soprattutto rendere il sistema a prova di guasto! La perdita di comunicazioni dal codice .NET dovrebbe arrestare l'automazione in uno stato di sicurezza.

Altri suggerimenti

Abbiamo utilizzato Steeplechase per connetterci al nostro Profibus al nostro sistema di prelievo automatizzato.

http://www.phoenixcontact.com/automation/32131_31909.htm

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top