Skip to main content

EtherNet/IP (EIP) communication driver for industrial automation controllers

Project description

procaaso-eip

A Python library for EtherNet/IP (EIP) communication with industrial automation controllers.

Overview

procaaso-eip provides a comprehensive communication driver for EtherNet/IP protocol, enabling Python applications to interface with industrial controllers including VFDs (Variable Frequency Drives), motor controllers, and I/O modules.

Features

  • EtherNet/IP Protocol: Full CIP (Common Industrial Protocol) implementation
  • Multiple Controller Support: Pre-built drivers for various industrial hardware
  • EDS File Parser: Parse and utilize Electronic Data Sheet files
  • Type-Safe: Built with Pydantic for robust data validation

Supported Hardware

This library includes hardware interfaces for:

  • PowerFlex 750/753 Variable Frequency Drives
  • Nanotec motor controllers (C5-E-1-11, C5-E-2-11)
  • Moxa I/O modules (E1212, E1242)
  • Kollmorgen servo drives (AKD series)
  • Mettler Toledo devices (ACT350)

Installation

pip install procaaso-eip

Or with Poetry:

poetry add procaaso-eip

Quick Start

from eip.controller_libraries.powerflex_750_controller.factory import PowerFlexFactory

# Connect to a PowerFlex VFD
controller = PowerFlexFactory.create_controller(
    address="192.168.1.10",
    port=44818,
    model="753"
)

# Control the drive
controller.set_speed_units("RPM")
controller.set_motor_np_rpm(1750)
controller.set_run(True)

Command-Line Tools

The package includes an EDS file parser:

eds-parser --help

Controllers

This library has a number of hardware interfaces that will use ethernet/IP to communicate

Running Tests

For testing changes to this library, install the required modules, then do the following:

For general tests, navigate to the tests folder and eneter the following style, referencing your specific hardware:

python -m tests.test_motor_controller

How to touch a PowerFlex device remotely

  1. Ensure that the firewall is open sudo ufw allow 2244/tcp

  2. Open up the wire gaurd connection Make sure you can ping

  3. Bring up the ssh tunnel ssh -p 2244 -N -L 3301:195.168.1.11:44818 consynsys@< IP Address of the edge device > -o ExitOnForwardFailure=yes -o ServerAliveInterval=30 -o ServerAliveCountMax=3

  4. Activate your VM

  5. Run the tester

    python -m eip.controller_libraries.tests.powerflex_tests.UnifiedControllerTester
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

procaaso_eip-0.1.9.tar.gz (118.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

procaaso_eip-0.1.9-py3-none-any.whl (129.4 kB view details)

Uploaded Python 3

File details

Details for the file procaaso_eip-0.1.9.tar.gz.

File metadata

  • Download URL: procaaso_eip-0.1.9.tar.gz
  • Upload date:
  • Size: 118.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.10 Windows/11

File hashes

Hashes for procaaso_eip-0.1.9.tar.gz
Algorithm Hash digest
SHA256 7b5cf9bce7cf40b138514f53d69e79caf9ee72429706b4d45619f3c4411f1e9d
MD5 b0479fae576c6ed97787215ba2fe24f5
BLAKE2b-256 42b8ce6c847e6d836ea3f71ab451c7d5d0a86e47453b4847d2c9bea0b96a7806

See more details on using hashes here.

File details

Details for the file procaaso_eip-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: procaaso_eip-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 129.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.10 Windows/11

File hashes

Hashes for procaaso_eip-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 a8b7fe2062f268ed0d34ae62b2b8806e2ed9fed2f134102c93123624c66d706c
MD5 0ac32b366deebcbf7c86c392c9482afd
BLAKE2b-256 9db487af2cbf9ea70d9897f1dad8875510a15d01407d3ca71039912504db19a9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page