Domnev: Difference between revisions

From Teltonika Networks Wiki
No edit summary
No edit summary
 
(126 intermediate revisions by the same user not shown)
Line 1: Line 1:
<p style="color:red">The information in this page is updated in accordance with 00.07.03.1 firmware version .</p>
<p style="color:red">The information on this page is updated in accordance with the [https://wiki.teltonika-networks.com/view/FW_%26_SDK_Downloads'''00.07.08'''] firmware version .</p>
==Introduction==
__TOC__
==Summary==
This article contains instructions on how to send M-Bus data to the server using various protocols.
This article contains instructions on how to send M-Bus data to the server using various protocols.


==Configuration overview and prerequisites==
==Configuration overview & prerequisites==
 
Before we begin, let's take a look at the configuration that we are attempting to achieve and the prerequisites that make it possible.
Before we begin, let's take a look at the configuration that we are attempting to achieve and the prerequisites that make it possible.


Line 13: Line 13:
* An end device (PC, Laptop, Tablet, Smartphone) for configuration;
* An end device (PC, Laptop, Tablet, Smartphone) for configuration;


If you're having trouble finding any page or some of the parameters described here on your device's WebUI, you should turn on '''"Advanced WebUI"''' mode. You can do that by '''clicking''' the '''"Basic"''' button '''under''' '''"Mode,"''' which is located at the top-right corner of the WebUI.
{{Template:Networking_rutos_manual_basic_advanced_webui_disclaimer
[[File:TRB143 advanced.gif|border|center|class=tlt-border|1004x1004px]]
| series = RUTX
}}


==Node-RED installation and setup==
==Adding M-Bus devices==
The '''[[TRB143_M-Bus|M-Bus Settings]]''' section is used to configure the general service functionality. To set up a new M-Bus instance, go to '''Services → M-Bus → Client'''. Add a new device to the configuration press [[File:Add Button.png|60x90px]] button which is shown below.


We are going to set up Node-RED in Linux virtual machine. For Node-RED to work, you would need to install Node.js version 14.00 or higher, if you already have Node.js installed, verify Node.js version using this command:
[[File:Mbus adding new device.png||border|class=tlt-border]]
<pre>
 
node -v
===Device configuration===
</pre>
If you do not have Node.js installed, run these commands to install it:
<pre>
sudo apt install curl
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash –
sudo apt-get install -y nodejs
</pre>
Once we have Node.js installed, we can install Node-RED. Use this command to install:
<pre>
sudo npm install -g –unsafe-perm node-red
</pre>
Use the command ''node-red'' to start a local server. Here is how the terminal should look like if the server starts correctly:
[[File:Server is running node red terminal.png|border|600px|class=tlt-border]]
----
----
Once you have the local server running, use the local IP and port number in your internet browser. In this case, we are using 127.0.0.1:1880:
You will be granted to a new window. Configure your M-Bus device accordingly:
[[File:Use server address in web browser.png|border|500px|class=tlt-border]]
 
# '''Name''': Enter the desired name of the M-Bus device
# '''Address type''': select which M-Bus address will be used
# '''Primary/Secondary address''': specify M-Bus address
 
[[File:Mbus adding new device configuration v3.png|border|class=tlt-border]]
 
Test if the M-Bus device is reachable by a specified primary/secondary address. To do so click on [[File:Ping_device_option_mbus.png|110x110px]]. You might get on of two outputs:


For MQTT usage, we are going to need MQTT-specific nodes. Use the side menu to navigate to Manage Palette section and install these nodes:
* If you have specified correct primary/secondary address, you will receive:
*node-red-contrib-aedes
[[File:Mbus device pingable v2.png|border|class=tlt-border|300px]]
*node-red-contrib-mqtt-broker


[[File:Manage palette and download these mqtt nodes.png|border|500px|class=tlt-border]]
* If you have specified incorrect primary/secondary address, you will receive (if you do not know what address should be used, refer to the Scanning for available M-Bus devices (PRIDET URL) secion:
[[File:Mbus device not pingable v2.png|border|class=tlt-border|300px]]


==Configuration==
Once finished, save the configuration by clicking [[File:Savenapply button.png|Savenapply button.png]].


===M-Bus Data to Server via MQTT===
===Scanning for available M-Bus devices===
This sections contains information on how to send M-Bus data to the server on Node-RED using MQTT protocol.
====Data to Server configuration====
----
----
[[File:Mbus data to server MQTT renewed.png|border|class=tlt-border|1094x1094px]]


# '''Enable''' instance;
If you are not sure what address your M-Bus devices have, you can try scanning for the available M-Bus devices. To do so click on [[File:Scan button.png]] button.
# '''Name:''' enter desired instance name;
 
# '''Data source:''' M-bus;
====Scan settings====
# '''Protocol:''' MQTT;
----
# '''JSON format:''' enter what data you would like to send;
You will be granted to a new window. Configure scan settings accordingly:
# '''URL/Host/Connection string:''' enter address of server;
 
# '''Port:''' enter server port;
# '''Scan type''': select which M-Bus address will be scanned
# '''Topic''': enter desired topic name;
# '''Scan range''': From what M-Bus address scanning will start and M-Bus address until scanning will be performed.
====M-Bus configuration====
[[File:Mbus scan.png|border|class=tlt-border]]
 
To start the scan click on [[File:Start scan button.png]] button.
 
====Found devices====
----
----
[[File:M bus configuration correct.png|border|class=tlt-border|954x954px]]
Once the scan is finished you should see the list of M-Bus devices that TRB143 were able to find:
 
[[File:Mbus scanned devices add.png|border|class=tlt-border]]


# '''Enable''' M-Bus;
You can either [[File:Pencil2.png]] '''(1)''' M-Bus devices primary address or [[File:Add Button.png|60x90px]] '''(2)''' to the M-Bus devices list.
# Enter desired '''instance name''';
# '''Add''';


[[File:M bus instance configuration.png|border|class=tlt-border|954x954px]]
==Gathering M-Bus data==


# '''Enable''' instance;
If the device successfully added to the list, under the General settings you should see that the Status changes to <span style="color:green">Active</span>.
# '''Period''': enter desired period;
# BLOGAS - NAME NEREIKIA


[[File:M bus slave configuration.png|border|class=tlt-border|954x954px]]
[[File:Mbus status active v2.png|border|class=tlt-border]]


# '''Enable''' request configuration;
===Data collecting groups===
# '''Slave address:''' enter desired slave address;
# '''Data type:''' select desired data type (this time we will be using '''XML''');
# '''Save & apply''' changes.
====Node-RED configuration====
----
----
Below you can see Node-Red block diagram that is used to receive data:
To reach data collecting groups configuration press [[File:Pencil2.png]] button. [[File:Add Button.png|60x90px]] button lets you to create a new instance.
* aedes broker
 
* MQTT in
[[File:Mbus data collect overview.png|border|class=tlt-border]]
* Debug
 
[[File:Node-rs-topology.png|border|center|class=tlt-border|654x654px]]
====Data collecting group instance====
----
----


[[File:Node-red-broker-configuration.png|border|left|class=tlt-border|454x454px|left]]
Each data collection group contains the following information. Configure device accordingly:
[[File:Node-red-debug-config.png|border|right|class=tlt-border|537x537px|right]]
 
<table class="nd-othertables_2" style="display: inline-table;">
# '''Enabled''': on
    <tr>
# '''Name''': desired name of the instance
        <td width=755; style="border-bottom: 1px solid white;">
# '''Period''': desired time duration between data retrievals
# '''MQTT Port''': 1883;
# '''Data type''': desired data type to process the received data. Depending on your needs you can select between 5 different data types: '''JSON, XML, ASCII, Hexadecimal''' and '''Binary'''.
# '''WS Bind''': port;
 
# '''Done''';
[[File:Mbus data collect group v2.png|border|class=tlt-border]]
Everything else can be left as default.
 
</td>
You can check if your configuration works accordingly by pressing the [[File:Mbus test button.png]] button. You should see the data in a pop-up field:
<td width=755; style="border-bottom: 1px solid white;">
# '''Output''': msg. payload;
# '''To''': debug window;
# '''Done''';
Everything else can be left as default.
</td>
    </tr>
</table>


[[File:Mbus TEST output.png|border|class=tlt-border]]
====Group values====
----
----
[[File:Node-red-subscriber-configuration.png|border|class=tlt-border|1094x1094px]]
To reach group values configuration press [[File:Pencil2.png]] button:


[[File:Mbus edit group values.png|border|class=tlt-border]]


====Results====
There you can adjust additional settings:
----
 
# '''Enable''': Enable/disable data group value.
# '''FCB toggle''': FCB (Frame Count-Bit), one-bit counter for reliable server-client communication.
# '''Manufacturer information''': Select to include manufacturer information in the payload.
# '''Selected parameters''': Select to include the all parameters saved from device, or a custom subset of them. If the custom is selected you can specify '''frame''', '''record''' numbers and also a '''paramater'''
 
[[File:Mbus device groupsa.png|border|class=tlt-border]]




==Sending data to the server==
The '''[[TRB143_Data_to_Server|Data to Server]]''' feature provides you with the possibility to set up data senders that collect data from various sources and periodically send it to remote servers. This section will walk you through configuring the Data to Server to send M-Bus data to the desired HTTP or MQTT server.


===M-Bus Data to Server Via HTTP===
===Data to Server configuration===
This sections contains information on how to send M-Bus data to the server on Node-RED using HTTP protocol.
----
----
====Data to Server configuration====
To set up Data to Server, navigate to Services → Data to Server. Enter desired name of the instnace and hit [[File:Add Button.png|60x90px]] button which is shown below.
 
[[File:Mbus data to server create.png|border|class=tlt-border]]
 
===Data configuration===
----
----
[[File:mbus data to server http.png|border|class=tlt-border|954x954px]]


====M-Bus configuration====
Each data collection group contains the following information. Configure device accordingly:
 
# '''Name''': desired name of the instance
# '''Type''': M-Bus data
# '''Format''': custom or JSON depending on a need.
 
[[File:Mbus data to server configuration.png|border|class=tlt-border]]
 
 
Once finished configuring Data configuration tab click on [[File:Mbus data to server collection edit.png|160x160px]] button.
 
===Collection configuration===
----
----
[[File:Mbus config HEX data.png|border|class=tlt-border|954x954px]]


# '''Enable''' request configuration;
[[File:Mbus data to server collection configuration.png|border|class=tlt-border]]
# '''Slave address:''' enter desired slave address;
# '''Data type:''' select desired data type (this time we will be using '''HEX''');
# '''Save & apply''' changes.


====Node-RED configuration====
Once finished configuring Collection configuration tab click on [[File:Mbus data to server server button.png|160x160px]] button.
 
===Server configuration===
----
----
This section contains information on how to configure MQTT and HTTP servers information.


====Results====
====HTTP configuration====
----
----


===MQTT broker===
# '''Type''': HTTP
MQTT Broker is an entity that listens for connections on the specified port and relays received messages to MQTT client.
# '''Server address''': desired server address
 
'''Note''': not specified fields are optional.
 
[[File:Mbus data to server HTTP configuration.png|border|class=tlt-border]]
 
====MQTT configuration====
----
----
=====MQTT broker configuration=====
 
# '''Type''': MQTT
# '''Server address''': desired server address
# '''Topic''': MQTT topic to be used for publishing the data.
 
'''Note''': not specified fields are optional.
 
[[File:Mbus data to server MQTT configuration.png|border|class=tlt-border]]
 
Once finished configuring Server configuration tab click on [[File:Savenapply button.png|Savenapply button.png]] button.
 
===Results===
----
----
[[File:Mbus MQTT Broker.png|border|class=tlt-border|954x954px]]


=====M-Bus configuration=====
[[File:Mbus data received v2.png|border|class=tlt-border]]
----
=====Node-RED configuration=====
----
=====Results=====
----


==See Also==
'''Note''': received data formating depends on the settings you apply under Data to Server and M-Bus configurations.
* [[TRB143_M-Bus|M-Bus]]
* [[TRB143_Data_to_Server|Data to Server]]
* [[TRB143_MQTT#MQTT_Broker|MQTT Broker]]
==External links==

Latest revision as of 07:20, 25 October 2024

The information on this page is updated in accordance with the 00.07.08 firmware version .

Summary

This article contains instructions on how to send M-Bus data to the server using various protocols.

Configuration overview & prerequisites

Before we begin, let's take a look at the configuration that we are attempting to achieve and the prerequisites that make it possible.

Prerequisites:

  • TRB143;
  • M-Bus device;
  • Server;
  • An end device (PC, Laptop, Tablet, Smartphone) for configuration;

If you're having trouble finding this page or some of the parameters described here on your device's WebUI, you should turn on "Advanced WebUI" mode. You can do that by clicking the "Advanced" button, located at the top of the WebUI.

Adding M-Bus devices

The M-Bus Settings section is used to configure the general service functionality. To set up a new M-Bus instance, go to Services → M-Bus → Client. Add a new device to the configuration press button which is shown below.

Device configuration


You will be granted to a new window. Configure your M-Bus device accordingly:

  1. Name: Enter the desired name of the M-Bus device
  2. Address type: select which M-Bus address will be used
  3. Primary/Secondary address: specify M-Bus address

Test if the M-Bus device is reachable by a specified primary/secondary address. To do so click on . You might get on of two outputs:

  • If you have specified correct primary/secondary address, you will receive:

  • If you have specified incorrect primary/secondary address, you will receive (if you do not know what address should be used, refer to the Scanning for available M-Bus devices (PRIDET URL) secion:

Once finished, save the configuration by clicking Savenapply button.png.

Scanning for available M-Bus devices


If you are not sure what address your M-Bus devices have, you can try scanning for the available M-Bus devices. To do so click on button.

Scan settings


You will be granted to a new window. Configure scan settings accordingly:

  1. Scan type: select which M-Bus address will be scanned
  2. Scan range: From what M-Bus address scanning will start and M-Bus address until scanning will be performed.

To start the scan click on button.

Found devices


Once the scan is finished you should see the list of M-Bus devices that TRB143 were able to find:

You can either (1) M-Bus devices primary address or (2) to the M-Bus devices list.

Gathering M-Bus data

If the device successfully added to the list, under the General settings you should see that the Status changes to Active.

Data collecting groups


To reach data collecting groups configuration press button. button lets you to create a new instance.

Data collecting group instance


Each data collection group contains the following information. Configure device accordingly:

  1. Enabled: on
  2. Name: desired name of the instance
  3. Period: desired time duration between data retrievals
  4. Data type: desired data type to process the received data. Depending on your needs you can select between 5 different data types: JSON, XML, ASCII, Hexadecimal and Binary.

You can check if your configuration works accordingly by pressing the button. You should see the data in a pop-up field:

Group values


To reach group values configuration press button:

There you can adjust additional settings:

  1. Enable: Enable/disable data group value.
  2. FCB toggle: FCB (Frame Count-Bit), one-bit counter for reliable server-client communication.
  3. Manufacturer information: Select to include manufacturer information in the payload.
  4. Selected parameters: Select to include the all parameters saved from device, or a custom subset of them. If the custom is selected you can specify frame, record numbers and also a paramater


Sending data to the server

The Data to Server feature provides you with the possibility to set up data senders that collect data from various sources and periodically send it to remote servers. This section will walk you through configuring the Data to Server to send M-Bus data to the desired HTTP or MQTT server.

Data to Server configuration


To set up Data to Server, navigate to Services → Data to Server. Enter desired name of the instnace and hit button which is shown below.

Data configuration


Each data collection group contains the following information. Configure device accordingly:

  1. Name: desired name of the instance
  2. Type: M-Bus data
  3. Format: custom or JSON depending on a need.


Once finished configuring Data configuration tab click on button.

Collection configuration


Once finished configuring Collection configuration tab click on button.

Server configuration


This section contains information on how to configure MQTT and HTTP servers information.

HTTP configuration


  1. Type: HTTP
  2. Server address: desired server address

Note: not specified fields are optional.

MQTT configuration


  1. Type: MQTT
  2. Server address: desired server address
  3. Topic: MQTT topic to be used for publishing the data.

Note: not specified fields are optional.

Once finished configuring Server configuration tab click on Savenapply button.png button.

Results


Note: received data formating depends on the settings you apply under Data to Server and M-Bus configurations.