GithubHelp home page GithubHelp logo

thinkgos / go-iecp5 Goto Github PK

View Code? Open in Web Editor NEW
88.0 7.0 68.0 300 KB

:smirk: (Archived)IEC 60870 part5 library write in pure go,support iec104 client and server , also support iec104 sepcial server,

License: GNU Lesser General Public License v3.0

Go 100.00%
iec104 iec60870-5-104 iec60870 iec104-client iec104-server

go-iecp5's Introduction

go-iecp5(Archived)

NOTE: Archived, not maintain.

NOTE: 已归档, 不再维护, 放弃License. 有需要的可以自由分发

go-iecp5 library for IEC 60870-5 based protocols in pure go. The current implementation contains code for IEC 60870-5-104 (protocool over TCP/IP) specifications.

Go.Dev reference Tests codecov Go Report Card License Tag Sourcegraph

asdu package: GoDoc
clog package: GoDoc
cs104 package: GoDoc

Feature:

  • client/server for CS 104 TCP/IP communication
  • support for much application layer(except file object) message types,

Reference

lib60870 c library lib60870
lib60870 c library doc lib60870 doc

Donation

if package help you a lot,you can support us by:

Alipay

alipay

WeChat Pay

wxpay

go-iecp5's People

Contributors

ecoshub avatar iotopo avatar thinkgos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

go-iecp5's Issues

总召唤确认报文

你好example中server_general例子中当主站发起总召
[68 0e 00 00 00 00 64 01 06 00 01 00 00 00 00 14]

从站回应的总召确认报文少了信息体地址00 00 00
[68 0b 00 00 02 00 64 01 07 00 01 00 14]

调试过程中发现此函数
func (sf *ASDU) DecodeInfoObjAddr() InfoObjAddr {
var ioa InfoObjAddr
switch sf.InfoObjAddrSize {
case 1:
ioa = InfoObjAddr(sf.infoObj[0])
sf.infoObj = sf.infoObj[1:]
case 2:
ioa = InfoObjAddr(sf.infoObj[0]) | (InfoObjAddr(sf.infoObj[1]) << 8)
sf.infoObj = sf.infoObj[2:]
case 3:
ioa = InfoObjAddr(sf.infoObj[0]) | (InfoObjAddr(sf.infoObj[1]) << 8) | (InfoObjAddr(sf.infoObj[2]) << 16)
sf.infoObj = sf.infoObj[3:]
default:
panic(ErrParam)
}
return ioa
}
会把asduPack中infoObj里的信息体地址去掉,导致sf.handler.InterrogationHandler(sf, asduPack, qoi)函数参数中asduPack里没有信息体地址?
是不是我哪里看的有问题 我看您这边说已经在工程中使用了 应该不会有这样的问题吧?谢谢!

Refusing connection

Hi @thinkgos Thank you for this project it is working great so far.

I am wondering if there is a way to refuse a connection from server.

I have a server and multiple clients, can I limit the connect to server?.

I have try to close "UnderlyingConn()" but clients keep trying connect with attempt.

Do you have any other idea, maybe sending an ASDU like StopDT from server?

使用示例

您好,请问有计划写一些详细点的server/client应用例子吗?
谢谢.

Joint Forces

Hi there. 👋 I made a Go implementation a while ago too. It's all open source. You're welcome to join.

https://github.com/pascaldekloe/part5

The code is near complete. The final version was lost on a company laptop by accident. If this is a commercial endeavour then I'd be happy to finish my project again for 11,000 Euro, delivered on January 2021. The final product includes a command line tool plus your issue #2, #8 and #10.

104服务端崩溃

使用客户端工具连接时会自动失联
存在服务端崩溃
好像没有校时
我再看看

读命令使用

想请教下read command的使用问题
使用场景:遥调(AO)读(66H)
问题:从站返回报文返回未知信息对象地址。这个是和什么有关?
调试:信息对象地址=点号+遥调偏移量。从站设置了不同的遥调偏移量0x6001 0x6101 还有其他任意设置偏移地址,都无法调通。

Read data

How should the data be read, Any examples?

The "ReadCmd" func?

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.