Skip to content

Connecting with PLC-5 Hosted on Node 51 #325

@thealphadollar

Description

@thealphadollar

I'm trying to connect to a PLC-5 type Allen Bradely machine that is hosted on IP (example) - 10.***.105.** and Node 51. Below are the error logs of the same.

plc_pull-1  | 2025-04-22 15:17:01,372 - ERROR - Generic message 'get_plc_info' failed: Connection failure (see extended status) - Link address not available  (01, 312)
plc_pull-1  | Exception in thread Thread-12 (run_plc_pull):
plc_pull-1  | Traceback (most recent call last):
plc_pull-1  |   File "/usr/local/lib/python3.11/site-packages/pycomm3/logix_driver.py", line 328, in get_plc_info
plc_pull-1  |     raise ResponseError(f"get_plc_info did not return valid data - {response.error}")
plc_pull-1  | pycomm3.exceptions.ResponseError: get_plc_info did not return valid data - Connection failure (see extended status) - Link address not available  (01, 312)
plc_pull-1  |
plc_pull-1  | The above exception was the direct cause of the following exception:
plc_pull-1  |
plc_pull-1  | Traceback (most recent call last):
plc_pull-1  |   File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
plc_pull-1  |     self.run()
plc_pull-1  |   File "/usr/local/lib/python3.11/threading.py", line 982, in run
plc_pull-1  |     self._target(*self._args, **self._kwargs)
plc_pull-1  |   File "/plc_pull/plc_pull_to_db.py", line 330, in run_plc_pull
plc_pull-1  |     PLC_CONNECTIONS_CACHE[plc_name] = get_new_plc_conn(plc_type, plc_ip)
plc_pull-1  |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
plc_pull-1  |   File "/plc_pull/plc_pull_to_db.py", line 220, in get_new_plc_conn
plc_pull-1  |     connector.open()
plc_pull-1  |   File "/usr/local/lib/python3.11/site-packages/pycomm3/logix_driver.py", line 165, in open
plc_pull-1  |     self._initialize_driver(**self._init_args)
plc_pull-1  |   File "/usr/local/lib/python3.11/site-packages/pycomm3/logix_driver.py", line 174, in _initialize_driver
plc_pull-1  |     self._info = self.get_plc_info()
plc_pull-1  |                  ^^^^^^^^^^^^^^^^^^^
plc_pull-1  |   File "/usr/local/lib/python3.11/site-packages/pycomm3/logix_driver.py", line 336, in get_plc_info
plc_pull-1  |     raise ResponseError("Failed to get PLC info") from err
plc_pull-1  | pycomm3.exceptions.ResponseError: Failed to get PLC info

My usage of the method is very simple,

connector = LogixDriver(plc_ip, init_tags=False, init_program_tags=False)
connector.open()

Can someone please guide me towards the right direction to connect to the PLC-5? Or is it unsupported?

I'm using pycomm3 1.2.4 and python 3.11

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions