General informationPurpose of Gurux.DLMS.AMI component is given FAST and SIMPLE Advanced Metering Infrastructure for DLMS meters. This project consists of three different part Gurux.AMI offers a meter reading application that you can schedule or order to read wanted objects from DLMS meters. Read values are saved to the database.
Starting with Gurux.AMIGurux.AMI is using .Net Core 6. First, you must install it on your PC or use Gurux Docker. You can download docker file from here. You can get source codes from GitHub
DatabaseAt the moment Gurux.AMI is supporting the following databases:
Examples for database settingsDocker database settings are defined here.
MariaDB and MySQL
Microsoft SQL Server (MSSQL)
User Id=USER_ID;Password=PASSWORD;Data Source=HOST_NAME:1521/XEPDB1;
dotnet run --environment Development
Creating userAt first you need to create an administrator user. This is done by selecting "Register". Fill your email address and password to create user. The first user is admin user. Default user roles can be set in "Configuration/Roles".
Creating Device templateThe Device template will define meter settings. Each meter is different and the settings are also different. You can connect for the meter with GXDLMSDirector and remove unnecessary device objects. Then you can import the device settings file by selecting "Device Templates" and pressing the Add button. This might take some time if the device template is large. The new device template is imported when the Save button is pressed.
Creating DeviceAfter the device template is imported a new device can be created by selecting "Devices" and pressing "Add" button. Set name for the device and set the correct parameters. After that, the new device is created.
Agent access tokenBecause all communication is encrypted you need to generate a token for the agent. It's done by selecting "Generate access token". Save this token, because it's not saved anywhere. It's needed when a new agent is added.
AgentThe agent will collect data from the meter. The agent will establish the connection for the Gurux.DLMS.AMI server and will wait for new tasks to execute. The agent is downloaded to PC by selecting "Agents" and pressing "Add" button. Then select "Download the agent"- Unzip agent for the folder and start it by running
Reading the value from the meter.After the agent is operating and the meter is added you can see meter objects by selecting the wanted device. Selecting the object and pressing the read -button the new task is added to the task list and the agent will start to read it. The value is updated for the user interface as soon as it's read.
Key management SystemKey Management System is build in for Gurux.DLMS.AMI. Device secrets are shown for the user only when a new device is created. After that secret information can be accessed only using key management system.
Using Gurux.DLMS.AMI from other applications.Gurux.DLMS.AMI is offering REST interface that can be used to read or write values. All the commands are available by selecting https://localhost:8001/swagger/ Before use REST interface you need to create a Personal Access Token.
Personal Access Token.You need a personal access token to access the Gurux.DLMS.AMI services from other applications. The personal access token is done by selecting the profile from the upper right corner or https://localhost:8001/Identity/Account/Manage
Then select "Personal Access Token" and press "Add" button. Give a name for the token and select scopes that you want to access.