All Projects → pascaldekloe → part5

pascaldekloe / part5

Licence: other
IEC 60870-5 — transmission protocols

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to part5

DrawingBotV3
DrawingBotV3 is a software for creating line drawings from Images
Stars: ✭ 161 (+335.14%)
Mutual labels:  serial-communication
go-iecp5
😏 IEC 60870 part5 library write in pure go,support iec104 client and server , also support iec104 sepcial server,
Stars: ✭ 52 (+40.54%)
Mutual labels:  iec60870
pySerialTransfer
Python package to transfer data in a fast, reliable, and packetized form
Stars: ✭ 78 (+110.81%)
Mutual labels:  serial-communication
USB Serial Bridge
USB Serial Bridge for STM32F103C8Tx based ARM modules
Stars: ✭ 39 (+5.41%)
Mutual labels:  serial-communication
RetroWiFiModem
An ESP8266 based RS232 <-> WiFi modem with Hayes AT style commands and LED indicators
Stars: ✭ 65 (+75.68%)
Mutual labels:  rs232
MonoSerialPort
Serial port library for .Net / Mono, that can be used with virtual usb port
Stars: ✭ 42 (+13.51%)
Mutual labels:  serial-communication
usbSerialPortTools
provide read and write debugging tools between USB serial port and serial port (UART ,RS232) under Android system
Stars: ✭ 38 (+2.7%)
Mutual labels:  rs232
QSimpleScada
Qt based simple SCADA framework, with dashboard, static and dynamic components
Stars: ✭ 152 (+310.81%)
Mutual labels:  scada
ma-core-public
Mango Automation Core public code
Stars: ✭ 66 (+78.38%)
Mutual labels:  scada
wtphm
SCADA data pre-processing library for prognostics, health management and fault detection of wind turbines. Successor to https://github.com/lkev/wt-fdd
Stars: ✭ 38 (+2.7%)
Mutual labels:  scada
SerialTransfer
Arduino library to transfer dynamic, packetized data fast and reliably via Serial, I2C, or SPI
Stars: ✭ 273 (+637.84%)
Mutual labels:  serial-communication
ParadoxRs232toMqtt
esp8266, serial bus to mqtt for Paradox alarm systems
Stars: ✭ 66 (+78.38%)
Mutual labels:  rs232
serial.nim
A Nim library for accessing serial ports.
Stars: ✭ 59 (+59.46%)
Mutual labels:  rs232
android-bluetooth-serial
A library for Android to simplify basic serial communication over Bluetooth, for example when communicating with Arduinos.
Stars: ✭ 120 (+224.32%)
Mutual labels:  serial-communication
rodbus
Rust implementation of Modbus with idiomatic bindings for C, C++, .NET, and Java
Stars: ✭ 34 (-8.11%)
Mutual labels:  scada
micronova controller
Allows you to easily control via MQTT any Micronova equiped pellet stove. (MCZ, Extraflame, Laminox, and many others brands!)
Stars: ✭ 30 (-18.92%)
Mutual labels:  serial-communication
iot-master
物联大师是开源免费的物联网智能网关系统,集成了标准Modbus和主流PLC等多种协议,支持数据采集、公式计算、定时控制、自动控制、异常报警、流量监控、Web组态、远程调试等功能,适用于大部分物联网和工业互联网应用场景。
Stars: ✭ 119 (+221.62%)
Mutual labels:  scada
serialPort
Android通用的串口通信库
Stars: ✭ 39 (+5.41%)
Mutual labels:  serial-communication
pi485
An open-source TTL UART <-> RS485 converter, intended for a Raspberry Pi or Arduino
Stars: ✭ 29 (-21.62%)
Mutual labels:  rs485
terminal
Terminal inside the microcontroller (cli for mcu)
Stars: ✭ 31 (-16.22%)
Mutual labels:  rs232

GoDoc Build Status

Part5 With The Go Programming Language

The International Electrotechnical Commission standard 870 part 5 (IEC 870-5) is a set of transmission procedures intended for SCADA systems. Prefix 60 was added later as in IEC 60870. For serial communication please refer to 60870-5-101 and 60870-5-104 is the TCP-based evolution.

The project consists of a high-level framework, including a low-level library, and tooling for network exploration and automated testing. Incomplete! About 95% of the work has been published; see issue #1.

This is free and unencumbered software released into the public domain.

Definitions

At its essence, part 5 formalizes reliable means to exchange data and commands.

The initiating stations are called primary and the responding stations are secondary. With unbalanced transmission stations are either primary or secodary [master/slave] and with balanced transmission stations can act both as primary and as secondory [peer-to-peer].

Addressing follows this initiate–respond context; an origin address remains that of the primary and a destination address points to (something on) the secondary, regardless of the message direction.

A common address can be seen as a data set wherein each data element has its own predefined information object address. The set may be downloaded with an interrogation command.

The standard provides commands that operate on data and they may trigger remote procceses by agreement. Again, each command is applied to a single information object address. Secondaries either confirm or reject execution. Optionaly the command may indicate completion with a terminate message. Some commands can be preceded with a select directive which locks down processing to one at a time.

To get started please see the API documentation of Dial [serial], DialTCP or ListenTCP.

TODO

  • file transfer
  • parameters
  • complete ASDU encoding types

iechbin

The project comes with a test tool. Download a prebuilt binary or run go get -u github.com/pascaldekloe/part5/cmd/iechbin to make one yourself. Without arguments the command opens a browser UI.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].