Exemple : CANbus
Produit: CODESYS CAN
Description
Le CANBusAPI.library
bibliothèque vous permet d'utiliser facilement les fonctions CANbus. La bibliothèque a été optimisée pour la programmation orientée objet dans ST et la programmation graphique telle que CFC. La bibliothèque est basée sur CAN Bus Low Level
bibliothèque système.
Avec cette bibliothèque, vous pouvez facilement utiliser les fonctions CANbus. Il est basé sur la CANbus bibliothèque système. Avec la CANBusAPI.library
bibliothèque, un exemple d'application est fourni. Cette application contient deux programmes avec des implémentations différentes (orienté objet dans ST et graphique dans CFC) qui montrent comment utiliser la bibliothèque.
Informations Complémentaires
Le CANBusAPIExample.project
Le projet exemple contient deux implémentations : une dans ST, une dans CFC. Les deux implémentent de différentes manières la façon dont des télégrammes CAN spécifiques peuvent être reçus et renvoyés.
Dans la configuration de la tâche, ajoutez l'appel d'un des deux programmes (CFC_PRG
, ST_PRG
) et téléchargez l'application sur le contrôleur. Démarrez l'application. Maintenant, lorsque vous générez un télégramme CAN avec un ID approprié (par exemple, 0x500
) d'un appareil externe, ce télégramme est traité et envoyé avec l'ID modifié.
Exemple en ST
Ce programme reçoit tous les messages entrants et les renvoie avec CAN-ID +1.
MsgProcessor_EchoST
: Le bloc fonction implémente la CAN.IMessageProcessor
interface. Le ProcessMessage
méthode a déjà été mise en place. Dans cette méthode, l'ID CAN du message reçu est incrémenté de 1 et réécrit dans le pilote CAN.
ST_PRG
: Le programme configure le pilote CAN avec le DEVICE_CONFIG
structure et génère une instance de MsgProcessor_EchoST
et MaskReceiver
. MaskReceiver
doit être généré une seule fois et non cycliquement ; sinon un nouveau MaskReceiver
sera généré à chaque appel. Le MaskReceiver
est configuré de manière à ce que tous les messages puissent être reçus avec lui. Ensuite, tous les messages sont automatiquement transmis au ProcessMessage
fonction de MessageProcessor
.
Exemple dans CFC
Ce programme reçoit tous les messages dans la plage CAN ID de 16#500
pour 16#550
et les renvoie avec CAN-ID+1.
MsgProcessor_EchoST
: Implémente la CAN.IMesageProcessor
interface. Le ProcessMessage
méthode a déjà été mise en place. Dans cette méthode, l'ID CAN du message reçu est incrémenté de 1 et réécrit dans le pilote CAN.
CFC_PRG
: Le programme configure le pilote CAN avec le DEVICE_CONFIG
structure et génère une instance de MsgProcessor_EchoST
et AreaReceiver
. Le AreaReceiver
est configuré pour recevoir tous les messages dans la plage CAN ID de 16#500
pour 16#550
. Les messages reçus sont alors automatiquement transmis au ProcessMessage
fonction de MessageProcessor
. De plus, il est possible d'utiliser le CANBusDiagnosis
bloc fonctionnel pour surveiller l'état du pilote CAN.
Pour plus d'informations sur les blocs fonctionnels, consultez le fichier PDF inclus dans le package.
Configuration système requise et restrictions
Système de programmation | CODESYS Development System (version 3.5.6.0 ou supérieure) |
Système d'exécution | CODESYS Control Win (version 3.5.6.0) |
Composants complémentaires | - |
Avis
TÉLÉCHARGER Projet