Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

UNABLE TO CONNECT TO AT960 LASER TRACKER - pythonnet

#1
I am not able to connect to an AT960 Laser Tracker using the RoboDK GUI.

When I click "Connect" in the "Laser Tracker System" pane, I get the following message in the "Laser Tracker Status log":

Quote:Laser Tracker status
Not connected
Stopped
Starting...
Working...
:: ID = BF2DCC56-B02A-B19F-C8E3-F09A91CD6196, Len = 128
:: ID = BF2DCC56-B02A-B19F-C8E3-F09A91CD6196, Len = 84
:: ID = BF2DCC56-B02A-B19F-C8E3-F09A91CD6196, Len = 84
RoboDK Driver for Leica Tracker Pilot - v4.0.0
Use one of the simulator trackers for testing the driver in RoboDK:
IP: at960simulator
IP: ats600simulator
IP: ats402simulator
Important: You may need to select Command-Initialize to start the tracker for some trackers
Command INIT: Initialize tracker
Command GETR: Get reflectors
Command STATUS: Tracker status
Command LOCK: Lock tracker on target
Command UNLOCK: Unloadk tracker
Command SAMPLES 100: 100 samples per measurement
Command SAMPLES 500: 500 samples per measurement
Command SAMPLES 1000: 1000 samples per measurement
Command SETR 0: Set reflector 0
Command SETR 1: Set reflector 1
Command SETR 2: Set reflector 2
Command SETR 3: Set reflector 3
Command SETR 4: Set reflector 4
Command SETR 5: Set reflector 5
Command SETR 6: Set reflector 6
Command SETR 7: Set reflector 7
Command SETR 8: Set reflector 8
Tracker not connected
Working...
Connecting to tracker: 192.168.0.99
Working...
:: ID = BF2DCC56-B02A-B19F-C8E3-F09A91CD6196, Len = 128
:: ID = BF2DCC56-B02A-B19F-C8E3-F09A91CD6196, Len = 84
:: ID = BF2DCC56-B02A-B19F-C8E3-F09A91CD6196, Len = 84
Unexpected error: Traceback (most recent call last):
Unexpected error: File "C:/RoboDK/api/Leica/LeicaTrackerPilot.py", line 206, in RunDriver
Unexpected error: RunCommand(LISTCMD.pop(0))
Unexpected error: File "C:/RoboDK/api/Leica/LeicaTrackerPilot.py", line 280, in RunCommand
Unexpected error: if TrackerConnect():
Unexpected error: File "C:/RoboDK/api/Leica/LeicaTrackerPilot.py", line 501, in TrackerConnect
Unexpected error: return ConnectToTracker(Tracker_IP)
Unexpected error: File "C:/RoboDK/api/Leica/LeicaTrackerPilot.py", line 689, in ConnectToTracker
Unexpected error: connectedTracker.Settings.Units.LengthUnit = EnumMeter
Unexpected error: TypeError: since Python.NET 3.0 int can not be converted to Enum implicitly. Use Enum(int_value)
since Python.NET 3.0 int can not be converted to Enum implicitly. Use Enum(int_value)
Tracker error
#2
I think pythonnet released a major version and the batch script doesn't take version range into account.
Can you try with pythonnet 2.5.2 or earlier?

C:\RoboDK\Python37\python.exe -m pip install pythonnet==2.5.2

I'll check with Albert for the specific version, and we will ensure it is working with the latest version too.
Please read the Forum Guidelines before posting!
Find useful information about RoboDK by visiting our Online Documentation.
#3
Hi Jeremy,

That solved the problem. Thanks!
#4
Sam,

I am reopening this thread because I encountered another issue (on a different machine) when attempting to apply this fix.

Code:
C:\RoboDK\Python311>python.exe -m pip install pythonnet==2.5.2
Collecting pythonnet==2.5.2
 Using cached pythonnet-2.5.2.tar.gz (1.9 MB)
 Preparing metadata (setup.py) ... done
Requirement already satisfied: pycparser in c:\robodk\python311\lib\site-packages (from pythonnet==2.5.2) (2.21)
Installing collected packages: pythonnet
 DEPRECATION: pythonnet is being installed using the legacy 'setup.py install' method, because it does not have a 'pyproject.toml' and the 'wheel' package is not installed. pip 23.1 will enforce this behaviour change. A possible replacement is to enable the '--use-pep517' option. Discussion can be found at https://github.com/pypa/pip/issues/8559
 Running setup.py install for pythonnet ... error
 error: subprocess-exited-with-error

 × Running setup.py install for pythonnet did not run successfully.
 │ exit code: 1
 ╰─> [6 lines of output]
     usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
        or: setup.py --help [cmd1 cmd2 ...]
        or: setup.py --help-commands
        or: setup.py cmd --help

     error: option --single-version-externally-managed not recognized
     [end of output]

 note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> pythonnet

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

[notice] A new release of pip available: 22.3.1 -> 23.0.1
[notice] To update, run: python.exe -m pip install --upgrade pip

C:\RoboDK\Python311>echo DONE
DONE

C:\RoboDK\Python311>pause
Press any key to continue . . .

This new machine runs Python 3.11.1, which I believe caused the issue.

I would like to continue using 3.11.1 because all my other code is written for 3.11.1 and match case is awesome. Is there a workaround for this besides switching Python versions to 3.7.3?
#5
Did you try installing the latest version of Pythonnet?

Just remove the version from the install command:
Code:
python.exe -m pip install pythonnet
#6
As specified on PyPI, pythonnet 2.5.2 only goes up to Python 3.8:
https://pypi.org/project/pythonnet/2.5.2/

I tested with pythonnet 3.0.1 this morning on Python 3.11 and did not get the crash in the driver.
Using pip freeze, I am using
clr-loader==0.2.5
cffi==1.15.1
pycparser==2.21
Please read the Forum Guidelines before posting!
Find useful information about RoboDK by visiting our Online Documentation.
#7
Code:
C:\Users\xxx>pip list
Package         Version
--------------- -------
attrs           22.2.0
cffi            1.15.1
clr             1.0.3
clr-loader      0.2.5
colorama        0.4.6
contourpy       1.0.6
cycler          0.11.0
dill            0.3.6
fonttools       4.38.0
iniconfig       1.1.1
joblib          1.2.0
kiwisolver      1.4.4
numpy           1.24.1
packaging       22.0
pandas          1.5.2
Pillow          9.4.0
pip             22.3.1
pluggy          1.0.0
POAP            0.1.26
psutil          5.9.4
pycparser       2.21
pyDOE2          1.3.0
pyparsing       3.0.9
pySOT           0.3.3
pySW            1.4
pytest          7.2.0
python-dateutil 2.8.2
pythonnet       3.0.1
pytz            2022.7
pywin32         305
scikit-learn    1.2.0
scipy           1.10.0
setuptools      65.5.0
six             1.16.0
threadpoolctl   3.1.0

[notice] A new release of pip available: 22.3.1 -> 23.0.1
[notice] To update, run: python.exe -m pip install --upgrade pip


Albert, I tried removing the version from the .bat and still have this issue.

Sam, it looks like I have the same versions as you, but unfortunately, I am still encountering this problem.
#8
The Leica driver that ships with the RoboDK installer is more recent than the one https://robodk.com/downloads/private/Leica.zip.
Albert will update the link soon, but you can install update RoboDK in the meantime to get the latest version (located in C:\RoboDK\api\Leica).
Please read the Forum Guidelines before posting!
Find useful information about RoboDK by visiting our Online Documentation.
#9
I downloaded a new version of RoboDK and grabbed the .bat, .dll, and .py out of the api/leica folder. This changed what error I was getting, but did not resolve it:

Stopped
Starting...
Working...
module 'clr' has no attribute 'AddReference'
Manually run the following file using Administrator Privileges: C:/RoboDK/api/Leica/Install-Pythonnet.bat
Installation not complete, check Log
Stopped
#10
Email us at info@robodk.com and ask to get in touch with me, citing this forum thread.
Please read the Forum Guidelines before posting!
Find useful information about RoboDK by visiting our Online Documentation.
  




Users browsing this thread:
1 Guest(s)