Question

  1. La carte d'interface CAN sera-t-elle probablement installée en tant que port COM?

  2. Comment diviser un message en un fichier séparé? Qu'en est-il de l'assemblage des données de plusieurs trames reçues dans un seul message? Est-ce une préoccupation valable?

  3. Qu'est-ce que la pile CANopen? Si je dispose déjà d'une API pour communiquer avec les ports série, mon programme peut-il lire / envoyer des messages CANopen sans la pile CANopen? Qu'est-ce que mon programme doit faire exactement?

  4. Quelle est la manière idéale / correcte d'implémenter le dictionnaire d'objets dans un logiciel?

(Situation actuelle: je dois écrire un programme Java pour interpréter les messages CANopen. En raison de certaines circonstances, je ne parviens pas à mettre la main sur le matériel CAN.)

(C’est la suite de la série de questions sur le dépassement de pile que j’ai posées la semaine dernière sur Java et CANopen .

Était-ce utile?

La solution

  1. Cela dépend de votre carte d'interface. Mais très probablement, ce ne sera pas un port COM, mais vous obtiendrez un fichier DLL contenant des fonctions exportées pour accéder à la carte (la plupart des interfaces CAN disponibles sont connectées via le port USB à votre PC). Mais ne vous inquiétez pas: même si ce n’est pas une norme officielle, la plupart de ces fichiers DLL utilisent les mêmes fonctions afin que vous puissiez échanger votre interface CAN avec une autre provenant d’un autre fabricant sans aucun problème.

  2. Il est très rare d'envoyer autant de données sur le bus CAN que vous devez les scinder en plusieurs trames. Mais si vous devez absolument le faire, vous devez le faire vous-même.

  3. Une pile CANopen est une bibliothèque qui fournit des fonctions de niveau supérieur que vous pouvez utiliser. Il prend en charge tout ce dont CANopen a besoin (p. Ex. Battement de coeur) pour que vous n'ayez pas à le faire vous-même. Une bonne pile prend également en charge plusieurs cadres (2). Malheureusement, ces piles ne sont pas disponibles à bon marché, mais à mon humble avis, elles en valent la peine.

  4. La plupart des implémentations utilisent une structure, en ROM ou en RAM, selon que le OD peut être modifié ou non. Mais une bonne pile CANopen s’occupe déjà de cela pour vous.

Autres conseils

3) Bien qu'une pile CANopen commerciale soit certainement une bonne idée, il est toujours possible de lire / envoyer des messages CANopen sans en utiliser un.

Nous ne savons pas à quoi sert votre demande. Mais si vous n’êtes probablement pas satisfait d’une pile CANopen, par exemple, si vous disposez déjà d’un bus CANopen opérationnel avec des nœuds maître et esclave et que vous souhaitez simplement écouter un message particulier. Un autre exemple pourrait être si vous écrivez une petite configuration ou un utilitaire de test avec un ensemble de messages petit et bien défini utilisé. Dans de tels cas, une pile CANopen commerciale complète pourrait entraîner une surcharge.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top