Giter VIP home page Giter VIP logo

dlms-cosem's Introduction

DLMS-COSEM

The goal of this project is to create an open reference implementation of a DLMS-COSEM compliant communications stack.

To build:

mkdir bin
cd bin
cmake ..
make

To run:

Open a console.

socat -v -x PTY,link=/tmp/ttyS10 PTY,link=/tmp/ttyS11

Open another console for the Server.

cd [DLMS-COSEM Directory]/bin/src/Linux
./Linux -S

Open another console for the Client.

cd [DLMS-COSEM Directory]/bin/src/Linux
./Linux

The Client and Server applications are menu-driven. Start the server listening first, then TCP Connect, COSEM Open, COSEM Get, and COSEM Release.

The Server supports the following objects:

0-0:96.1.{0-9}*255 [IData Class: 1]
	- Fully implemented for GET and SET.

0-0:1.0.0*255 [IClock Class: 8]
	- Available with hooks for GET, SET, and ACTION.

0-0:40.0.{0-1}*255 [IAssociationLN Class: 15]
	- Available for GET

These classes are not fully implemented, but they give the reader an indication of how to complete.

To run unit tests.

cd [DLMS-COSEM Directory]/bin/test/DLMS-COSEM-TEST
./DLMS-COSEM-TEST

For the STM32 Nucleo F207ZG development board:

Prerequisites:

	GCC for ARM (at least 4.8 or above) installed on a WINDOWS PC.
	STM32 ST-LINK Utility from st.com installed on a WINDOWS PC.

	Set the ARM_TOOLCHAIN_ROOT environment variable to the root of where GCC is installed.

cd [DLMS-COSEM Directory]/src/STM32-NUCLEO-F207ZG
make

The output will be located in [DLMS-COSEM Directory]/src/STM32-NUCLEO-F207ZG/Debug

You can program the development board using the ST-LINK software from STM.  Select the .bin file from 
the Debug folder.

The development board code is configured to be a COSEM Server.  The virtual serial port provided
through the ST-Link interface is used for debugging purposes.  The server USART is USART6.  Connect your
TX and RX lines to the following:

USART6 Connections

To create doxygen documentation:

cd [DLMS-COSEM Directory]
doxygen

The output will be located in [DLMS-COSEM Directory]/docs. 

For additional detailed information regarding the project, please refer to the Developer Guide.

Developer and Maintainer Guide

dlms-cosem's People

Contributors

beroset avatar gbarrett7124 avatar greg-otterpeak avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.