Profinet / Powerlink / RTNet
cb
-
cb -
cb -
Bonjour,
J'aimerai faire communiquer plusieurs PC avec une communication temps réel, client / serveur (déterministe, temps de cycles < 10ms).
Suite à mes recherches (des tonnes de PDF qui disent toujours les mêmes choses...), j'ai découvert que Profinet, Powerlink et RTNet proposent des solutions pour rendre un réseau Ethernet "temps réel". Ils emploient des méthodes très similaires et font des éloges sur leur solutions mais impossible de trouver quelque chose de concret, un exemple simple... Pour profinet, le flou total, pour RTNEt j'ai trouvé un bout de code et pour powerlink https://www.ethernet-powerlink.org/index.php?option=com_content&task=section§ionid=19&id=19&Itemid=129
J'aimerai avoir des retours d'expériences afin de savoir comment cela s'utilise (programmation avec socket comme l'Ethernet standard avec des bibliothèques spéciales (si oui où les trouver) ? Possibilité d'utiliser du matériel Ethernet standard (d'après ce qu'ils disent oui...) ? Fonctionne avec un noyau RTAI ?)
Merci d'avance pour vos éclaircissements
J'aimerai faire communiquer plusieurs PC avec une communication temps réel, client / serveur (déterministe, temps de cycles < 10ms).
Suite à mes recherches (des tonnes de PDF qui disent toujours les mêmes choses...), j'ai découvert que Profinet, Powerlink et RTNet proposent des solutions pour rendre un réseau Ethernet "temps réel". Ils emploient des méthodes très similaires et font des éloges sur leur solutions mais impossible de trouver quelque chose de concret, un exemple simple... Pour profinet, le flou total, pour RTNEt j'ai trouvé un bout de code et pour powerlink https://www.ethernet-powerlink.org/index.php?option=com_content&task=section§ionid=19&id=19&Itemid=129
J'aimerai avoir des retours d'expériences afin de savoir comment cela s'utilise (programmation avec socket comme l'Ethernet standard avec des bibliothèques spéciales (si oui où les trouver) ? Possibilité d'utiliser du matériel Ethernet standard (d'après ce qu'ils disent oui...) ? Fonctionne avec un noyau RTAI ?)
Merci d'avance pour vos éclaircissements
3 réponses
RTnet : La doc d'instal : https://www.rts.uni-hannover.de/rtnet/doc.html
D'apres ce qui est indiqué, il faut unloader le module du driver reseau (a condition qu'il ne soit pas compilé dans le moyau) et charger le module RTnet.
Ca ne semble pas bien compliqué, mais a quoi cela peut bien servir ?
D'apres ce qui est indiqué, il faut unloader le module du driver reseau (a condition qu'il ne soit pas compilé dans le moyau) et charger le module RTnet.
Ca ne semble pas bien compliqué, mais a quoi cela peut bien servir ?
Salut cb,
Tu devrais oublier ProfiNET car il te faut obligatoirement un coupleur Siemens qui contient un ASIC spécial pour pouvoir gérer la synchronisation, donc ça ne fonctionnera pas avec une carte standard. Et puis ensuite il faut un logiciel pour paramétrer le coupleur, pour faire la config du réseau, pour compiler la config et enfin la charger dans le coupleur.
Sinon il y a Ethercat qui est sympa et pas excessivement dur à mettre en oeuvre, en plus il me semble que le code du driver est donné.
La communication se fait par des sockets et tes appli temps réel dans des threads.
Mais ça fonctionnera en maître-esclave et non en client serveur.
Pour Powerlink et RTnet je ne connais pas trop...
Sinon pour le temps réel, tu peux aussi appliquer un patch Xenomai au lieu de RTAI.
Tu devrais oublier ProfiNET car il te faut obligatoirement un coupleur Siemens qui contient un ASIC spécial pour pouvoir gérer la synchronisation, donc ça ne fonctionnera pas avec une carte standard. Et puis ensuite il faut un logiciel pour paramétrer le coupleur, pour faire la config du réseau, pour compiler la config et enfin la charger dans le coupleur.
Sinon il y a Ethercat qui est sympa et pas excessivement dur à mettre en oeuvre, en plus il me semble que le code du driver est donné.
La communication se fait par des sockets et tes appli temps réel dans des threads.
Mais ça fonctionnera en maître-esclave et non en client serveur.
Pour Powerlink et RTnet je ne connais pas trop...
Sinon pour le temps réel, tu peux aussi appliquer un patch Xenomai au lieu de RTAI.
Si quelqu'un a le code d'un exemple simple de communication (le squelette / envoie d'une chaine ou quelque chose dans le genre...) en utilisant Powerlink, Ethercat, ou autre réseau temps réel... je suis preneur :) J'aimerai aussi savoir quel hardware a été utilisé si possible.
Merci !
(Quel sont les avantages/inconvénients d'utilisé Xenomai au lieu de RTAI ? J'ai aussi regardé du côté de RTLinux, et bien d'autres mais niveau performances/stabilité/prix RTAI me semblait le meilleur...)
Merci !
(Quel sont les avantages/inconvénients d'utilisé Xenomai au lieu de RTAI ? J'ai aussi regardé du côté de RTLinux, et bien d'autres mais niveau performances/stabilité/prix RTAI me semblait le meilleur...)
J'utilise RTNet. Actuellement, je n'ai pu tester celui-ci sur un réseau constitué de 2 PC uniquement.
Avant de se lancer, vérifier que votre carte réseau est compatible.
Pour les exemples, ça viendra plus tard (ça s'utilise de manière très semblable aux sockets linux).
Si quelqu'un a une expérience dans les réseaux Ethernet temps réel, je suis toujours intéressé.
Avant de se lancer, vérifier que votre carte réseau est compatible.
Pour les exemples, ça viendra plus tard (ça s'utilise de manière très semblable aux sockets linux).
Si quelqu'un a une expérience dans les réseaux Ethernet temps réel, je suis toujours intéressé.