Skip to main content

Commencer

Les instructions suivantes vous guident vers une application simple qui utilise deux BACnet objets afin de 1) écrire un analogue BACnet valeur au moment de l'exécution et 2) déclencher une alarme selon un BACnet classe de notification lorsque le courant BACnet la valeur est en dehors d’une plage spécifique.

. Exigences:
  • Le CODESYS BACnet2 SL le paquet est installé.

  • Le runtime prend en charge BACnet. Pour que cela fonctionne, le CmpBACnet Le composant doit être saisi et configuré dans le fichier de configuration du runtime.

  1. Dans CODESYS, créez un projet standard avec un périphérique API prenant en charge BACnet.

  2. Sélectionnez l'objet API dans l'arborescence des appareils et cliquez sur Insérer un périphérique pour insérer un Serveur BACnet. Pour utiliser BACnet2, ajoutez un serveur BACnet2.

  3. Sélectionnez l'objet serveur et cliquez sur Insérer un périphérique pour insérer un BACnet_Analog_Value objet et un BACnet_Notification_Class objet en dessous.

    Les objets BACnet insérés sont affichés dans le Dispositifs voir.

    _bacnet_img_device_tree.png
  4. Double-cliquez sur le BACnet_Analog_Value objet pour ouvrir son éditeur de configuration.

    Sur le Paramètre BACnet vous voyez la configuration initiale du BACnet Analog Value objet.

  5. Modifiez les propriétés de l'objet dans le Valeur colonne comme suit :

    • AckedTransitions: '111'

    • NotificationClass: 1

    • HighLimit: dix

    • LimitEnable: '11'

    • LowLimit: 0

    Votre application fournit désormais un BACnet Analog Value et un BACnet Notification Class. La configuration est maintenant définie de manière à ce que le BACnet Analog Value générera des alarmes dès que son Present_Value la propriété atteint une valeur en dehors de [0; dix].

  6. Dans le PLC_PRG programme de votre application, définissez une variable lrVal de type LREAL et insérez le code suivant : Astuce : Vous pouvez également appuyer sur la touche F2 clé pour obtenir les instances de bloc fonction du BACnet objets de l'assistant de saisie (Appels d'instance catégorie).

    BACnet_Analog_Value.PresentValue := BACnet_Analog_Value.PresentValue + 0.0001;
    lrVal := BACnet_Analog_Value.PresentValue;
  7. Générer le code (F11), téléchargez l'application sans erreur sur le contrôleur et démarrez l'application.

    Le BACnet propriété Present_Value de la BACnet Analog Value l'objet est incrémenté.

  8. Démarrer un externe BACnet client (par exemple, Innea BACnet Explorer Free) qui s'exécute à une adresse réseau différente de celle du moteur d'exécution (par exemple, à l'aide d'une machine virtuelle). Utilisez-le pour surveiller les valeurs de BACnet propriété Present_Value et variable lrVal dans le BACnet réseau.

    Vous pouvez voir comment le BACnet propriété Present_Value est incrémentée et par conséquent la valeur de la variable lrVal augmente. Dès que Present_Value dépasse la valeur de 10, une alarme du type BACnet-NotificationClass inséré dans l'application est généré sur le BACnet périphérique serveur.

Ceci est un exemple de la façon dont vous pouvez accéder au Propriétés BACnet d'un BACnet objet au moment de l’exécution. Si aucune propriété explicite n'est fournie par le BACnet bloc fonction objet, alors au moins il fournit des fonctions auxiliaires pour accéder à certains ou à tous BACnet propriétés.

Pour plus d'informations, voir : BACnet Configuration dans le Runtime et BACnet Configuration dans le CODESYS Projet