go-mcprotocol

module
v0.0.0-...-2bf79c4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 29, 2021 License: Apache-2.0

README

go-mcprotocol

go-mcprotocol is a library for PLC (Programmable Logic Controller) access.

This client supports a constant TCP connection that is kept alive until explicitly closed.

Project Status

Work In Progress

Usage for Library

You can read plc register bellow codes.

	client, _ := mcp.New3EClient(opts.Host, opts.Port, mcp.NewLocalStation(), keep_alive_flag)
	read, _ := client.Read("D", 100, 3)
	registerBinary, _ := mcp.NewParser().Do(read)

	fmt.Println(string(registerBinary.Payload))
Health Check
	if err := client.HealthCheck(); err != nil {
		log.Fatalf("failed health check for plc: %v", err)
	}

Usage Tool

Output file format

Format is CSV. Items are timestamp and Base64 encoded MC Protocol response.

2019-10-07T07:08:00.3623052Z,0AAA//8DAAwAAAAAAAAAAAAAAAAA
2019-10-07T07:08:00.8622182Z,0AAA//8DAAwAAAAAAAAAAAAAAAAA
2019-10-07T07:08:01.3616205Z,0AAA//8DAAwAAAAAAAAAAAAAAAAA
...

Usage for tool

Collect the register values​of PLC by MC Protocol(MELSEC Communication Protocol). This tools is gather plc register data and dump local files.

Examples
$ plcmirror -H <Your PLC Host> -P <Your PLC Port> --device D --offset 100 --num 10 --dir /var/log/plcmirror
Options
> plcmirror -help
  Usage:
    plcmirror [OPTIONS]
  
  Application Options:
    /H, /host:      PLC hostname
    /P, /port:      Melsec communication protocol port number
    /D, /device:    Register name like D that is mirror target
    /O, /offset:    PLC register offset addr that is mirror target
    /N, /num:       number of device points
        /dir:       file output path (default: .)
    /I, /interval:  mirroring interval [milli sec] (default: 500)
  
  Help Options:
    /?              Show this help message
    /h, /help       Show this help message

License

Apache 2

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL