Skip to content
/ pyads Public
forked from stlehmann/pyads

Python wrapper for TwinCAT ADS

License

Notifications You must be signed in to change notification settings

windrad6/pyads

 
 

Repository files navigation

pyads - Python package

Build Status Coverage Status Documentation Status PyPI version Code style: black

This is a python wrapper for TwinCATs ADS library. It provides python functions for communicating with TwinCAT devices. pyads uses the C API provided by TcAdsDll.dll on Windows adslib.so on Linux. The documentation for the ADS API is available on infosys.beckhoff.com.

Documentation: http://pyads.readthedocs.io/en/latest/index.html

Installation

From PyPi:

$ pip install pyads

From Github:

$ git clone https://github.com/MrLeeh/pyads.git --recursive
$ cd pyads
$ python setup.py install

Features

  • connect to a remote TwinCAT device like a plc or a PC with TwinCAT
  • create routes on Linux devices and on remote plcs
  • supports TwinCAT 2 and TwinCAT 3
  • read and write values by name or address
  • read DUTs (structures) from the plc
  • notification callbacks

Basic usage

import pyads

# add route to remote plc
pyads.add_route("192.168.1.12.1.1", "192.168.1.12")

# connect to plc and open connection
plc = pyads.Connection('127.0.0.1.1.1', pyads.PORT_SPS1)
plc.open()

# read int value by name
i = plc.read_by_name("GVL.int_val", pyads.PLCTYPE_INT)

# write int value by name
plc.write_by_name("GVL.int_val", i, pyads.PLCTYPE_INT)

# close connection
plc.close()

About

Python wrapper for TwinCAT ADS

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.9%
  • Dockerfile 0.1%