Checking a HIPERFACE Encoder using basic tools

More
29 Mar 2021 09:13 #203998 by GuiHue
Dear all,

not sure if I'm at the right place, but given that users have discussed retrofits of various old equipment in the past, I hope my question is not too far out of scope.

I have come across a Harmonic Drive hollow Shaft Servo motor with a Sick Stegmann Encoder that speaks HIPERFACE as its native (and only) language. While there are numerous drives (e.g. Kollmorgen Servostar 601) that can speak Hiperface and drive the Servo, I'd rather first check if the encoder is still operational or not. The HD unit ist rather old (HD was kind enough to bring documents forward, while hinting that the unit is out of production since 16 years;)).

HIPERFACE uses sin/soc + RS485 for absolute information. Following documentation by HD and specifically Stegmann I was able to apply power to the encoder and use a scope the check for SIN/COS Signals. These seem to be in order. Yay:).

Not for the part I have absolutely no clue about and where I do seek help. I'd like to know if the encoders digital interface still works. My thinking was: Connect a USB to RS485 Device, Open a Serial Connection and send it commands.
Hiperface is documented here:
cdn.sick.com/media/docs/5/65/865/operati...col_en_im0064865.pdf

Further, it specifies commands to be sent (see p. 9 and p 17ff). I understand that these are HEX.

Now the simple question: How do I send those commands in the easiest way? Which tool in windows (or linux) would I use?
I should be getting an answer to HEX: FF 50 AF (Broadcast address, Request status, XOR Cheksum), right?

Any help is greatly appreciated:).

Please Log in or Create an account to join the conversation.

More
29 Mar 2021 10:19 #204007 by andypugh
I have used (Under Linux) "screen" in the past.
linux.die.net/man/1/screen
This web page suggests "tio"
opensource.com/article/20/5/tio-linux

I am not sure how you would send hex codes with either, but I guess there is a way.

It might be more adaptable to write a Python script.
pyserial.readthedocs.io/en/latest/
The example code here would probably get you going, but you would send the codes you gave, rather than keyboard input:
stackoverflow.com/questions/676172/full-...ing-pyserial-package
The following user(s) said Thank You: GuiHue

Please Log in or Create an account to join the conversation.

More
02 Apr 2021 20:13 #204552 by GuiHue
Well, my Python-FU is godawful, but I did manage to send the required bytes of hex code and decode the return signal. It isn't rocket surgery, but when it's an absolute first, it will take some time.

I added the bits of Python code to this post. Maybe this will be useful for someone in the future.

@andypugh: Thank you for the right pointers! Would'nt have tried without.

File Attachment:

File Name: hiperface.py
File Size:4 KB
Attachments:
The following user(s) said Thank You: andypugh

Please Log in or Create an account to join the conversation.

Moderators: cncbasher
Time to create page: 0.064 seconds
Powered by Kunena Forum