Sviluppare il publisher NetLogic e l'interfaccia

Sviluppare una NetLogic e integrarlo con l'interfaccia.
  1. Sviluppare la NetLogic
  2. In
    Vista progetto
    , espandere
    UI
    .
  3. Fare clic con il pulsante destro del mouse su
    MainWindow (type)
    e selezionare
    Nuovo
    NetLogic di runtime
    .
  4. Passare il puntatore del mouse sulla NetLogic, selezionare
    Modifica
    e immettere
    PublisherLogic
    .
  5. Fare doppio clic sulla NetLogic.
    Viene aperto l'editor di codice esterno.
  6. Nell'editor di codice, sostituire il codice esistente con il codice seguente:
    #region StandardUsing using System; using FTOptix.CoreBase; using FTOptix.HMIProject; using UAManagedCore; using OpcUa = UAManagedCore.OpcUa; using FTOptix.NetLogic; using FTOptix.UI; using FTOptix.OPCUAServer; #endregion using uPLibrary.Networking.M2Mqtt; using uPLibrary.Networking.M2Mqtt.Messages; public class PublisherLogic : BaseNetLogic { public override void Start() { var brokerIpAddressVariable = Project.Current.GetVariable("Model/BrokerIpAddress"); // Create a client connecting to the broker (default port is 1883) publishClient = new MqttClient(brokerIpAddressVariable.Value); // Connect to the broker publishClient.Connect("
    PublisherClient
    "); // Assign a callback to be executed when a message is published to the broker publishClient.MqttMsgPublished += PublishClientMqttMsgPublished; } public override void Stop() { publishClient.Disconnect(); publishClient.MqttMsgPublished -= PublishClientMqttMsgPublished; } private void PublishClientMqttMsgPublished(object sender, MqttMsgPublishedEventArgs e) { Log.Info("Message " + e.MessageId + " - published = " + e.IsPublished); } [ExportMethod] public void PublishMessage() { var variable1 = Project.Current.GetVariable("Model/Variable1"); variable1.Value = new Random().Next(0, 101); // Publish a message ushort msgId = publishClient.Publish("/my_topic", // topic System.Text.Encoding.UTF8.GetBytes(((int)variable1.Value).ToString()), // message body MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE, // QoS level false); // retained } private MqttClient publishClient; }
    NOTA: Il codice recupera il valore da pubblicare dalla variabile
    Modello
    Variabile1
    che verrà creata successivamente.
  7. Salvare il codice.
  8. Creazione degli elementi di interfaccia
  9. In
    Vista progetto
    , fare clic con il pulsante destro del mouse su
    Modello
    e selezionare
    Nuovo
    Variabile
    .
    Viene creata
    Variabile1
    . Il valore della variabile viene recuperato dallo script
    PublisherLogic
    .
  10. Aggiungere il pulsante Pubblica:
    1. In
      Vista progetto
      , fare clic con il pulsante destro del mouse su
      MainWindow (type)
      e selezionare
      Nuovo
      Controlli base
      Pulsante
      .
    2. Passare il puntatore del mouse sul pulsante, selezionare
      Modifica
      e immettere
      PublishButton
      .
    3. In
      Proprietà
      , impostare
      Testo
      su
      Publish
    4. Nel riquadro
      Eventi
      , accanto a
      Evento MouseClick
      , selezionare
      Aggiungi
      e selezionare
      ProjectName
      UI
      MainWindow (type)
      PublisherLogic
      PublishMessage
      .
Fornire un feedback
Hai domande o feedback su questa documentazione? invia il tuo feedback qui.