Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Using ACE, Open the default configuration you used in the "Getting Started Guide"
  2. Download and open Elecsys-AzureIoT-Demo.xml from the http://partner.elecsyscorp.com site within the same ACE window
  3. In your default configuration, enable the DNS Client object by setting its Enabled checkbox.


  4. Disable Virtual Unit 3 by clearing its Enabled checkbox.


  5. Copy and paste the following objects from the Elecsys-AzureIoT-Demo.xml config into your default configuration.
    1. TLS Tunnels  (paste under Networks)
      Image RemovedImage Added

    2. FieldUnitInternalMast2 (paste under NullCircuit)
      Image RemovedImage Added

    3. VirtualRW Unit 4 (paste under NullCircuit)
      Image RemovedImage Added

    4. Data Simulator (paste under Internal Channel 15)
      Image RemovedImage Added


    5. MQTT_Client (paste under Clients)
      Image RemovedImage Added

    6. Global Text (paste under Clients
      Image RemovedImage Added

    Include Page
    Renaming Nodes
    Renaming Nodes


  6. Copy Table data from the Elecsys-AzureIoT-Demo.xml Internal Channel 15 → Scan Table into your RediGate Configuration (in Internal Channel, open Scan Table, right-click and select Paste, over-write data). 

    Image Removed

    Image Added

    Image Removed


    Image Added

     

    Info
    titleScan Table Info

    The "Scan Table" object tells the RediGate which RTU (Unit 2, the data simulator) to run at an interval (Scan Period) which is set to every 600 seconds. This is how frequently the RediGate will check the data simulator for changes, which will result in data being published every 10 minutes. You can change this to whatever number you would like, however you will want to keep an eye on the number of messages published as Azure charges on a per message basis.

  7. Update your MQTT_Client properties to match the parameters in your Azure IoT Hub account:
    Image RemovedImage Added

    1. The ${GATEWAY} parameter references the System → Unit Name value, which in the default configuration is "RediGate120E".


    2. You will need to change your "System → Unit Name" property to match the "Device Id" of the registered device in the Azure IoT Hub. In the screenshot below, the device ID of "RediGate120E" matches that of the default configuration.Image Removed

      Image Added

    3. The "MQTT_Client → User Name" property needs to match the "Hostname" property in Azure IoT Hub, followed by /deviceID at the end of the URL (in our case   /${GATEWAY}   since that is what we are using for our Device ID).



  8. Update the "TLS Tunnels → STUNNEL Parameters" property to match the "Hostname" property of your Azure IoT hub, followed by   :8883
    Image Removed
    Image Added

  9. Use the Azure "Device Explorer Twin" software tool (https://github.com/Azure/azure-iot-sdks/releases/download/2016-11-17/SetupDeviceExplorer.msi) to create a SharedAccessSignature
    1. Find the "SharedAccessKeyConnection string – primary key" for the "iothubowner" user in Azure.
      Image RemovedImage Added

    2. Enter the Copy these credentials into the "Connection Information" section on the "Device Explorer Twin". In this example, we use HostName=elecsysdev.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey={iothubowner Primary Key from above}
      Image Removed
      Image Added

    3. Once you have a successful connection in the "Device Explorer Twin", navigate to the "Management" tab and select the appropriate Device ID, press the "SAS Token" button, set the appropriate TTL (days of validity for the device key), and click "Generate"
    Image Removed
    1. Image Added

    2. Copy the highlighted section below from your SASTokenForm beginning after the ";SharedAccessSignature=".  Paste into the first row of the "Global Text" object of your RediGate configuration, in the "Replacement Text" column.

      Image Removed
      Image Added
  10. Upload configuration to your RediGate
  11. Confirm that data is being published every 10 minutes using the "Device Explorer Twin" Data tab:

...

  1. Copy and paste the "VirtualRW Unit 4" field unit from Elecsys-AzureIoT-Demo into your configuration


  2. Upload configuration to your RediGate
  3. Open the Microsoft "Device Explorer Twin" software, and perform the following steps:
    1. Select the "Messages To Device Tab"
    2. Select your device from the "Device ID" dropdown, and copy the following text into the "Message" field:   {"d": {"IntValue": 150}}
    3. Enter "device" for the "Key" field and "VirtualRW_" for the "Value" field (make sure to include the underscore character _ after the VirtualRW).
      Image RemovedImage Added
    4. Click "Send" to send the command to the IoT Hub, which the RediGate will subscribe to and send out to the "IntValue" tag under VirtualRW RTU
  4. Confirm that the data was written to the RediGate by logging in to the RediGate with Putty and accessing MQTT Client Diagnostic screen (Option 3 → 17). Here you should see a value in the "Last Recv Topic" that looks similar to the screenshot below: 
    Image RemovedImage Added
  5. The value that you published should be saved in the Internal Channel 15 → Virtual RTU 4 → RTDB → Register 30001. See Accessing RTDB Data Dump for info on viewing RTDB values in the RediGate

...