Hi Jakub,
It's kind of hard to say without more info. But here's a few things to check
(from very simple onwards):
1) check that the drives are going to OP mode ("ethercat slaves" command). If
they are not in OP mode they won't be handling PDO frames.
2) do an "ethercat slaves -v" command and check that your app is using the
correct vender ID and product code to connect to it.
3) do an "ethercat slaves -v" command and compare the two types of drives, in
particular the "Flags: Enable notLRW" flag. If one of them is true, then you
need to split the read and write PDO's into two different domains for that
drive.
4) from a fresh power up of your amps, and before you start your app, do the
"ethercat cstruct" command on the two types of amps and compare them. If they
are not the same, make sure your code is accounting for the differences.
5) before starting your amp run the command "ethercat debug 1" to set the
masters debug output level to 1. Start the app. Once started check the dmesg
log and look for any configuration errors
Regards,
Graeme Foot.
From: etherlab-users <[email protected]> On Behalf Of
[email protected]
Sent: Saturday, 30 November 2019 5:52 AM
To: [email protected]
Cc: [email protected]; [email protected]
Subject: [etherlab-users] Debugging inconsistent slave behaviour
Dear Etherlab Users,
For a few years now I've been enthusiastically using Etherlab master along with
Gavin Lambert's patchset (up to kernel 4.4) to drive a handful of Technosoft
Motion iPOS4808 BX-CAT slaves in various robotics projects. My framework
involves <ecrt.h> wrapped in custom C++ code. I thought that by now I have a
reliable plug-and-play software stack. Unfortunately, I was proven wrong when I
tried to use my code with another drive from the same family (iPOS3602 VX-CAT).
I managed to narrow down the problem to an issue with <ecrt.h> PDO exchange.
When I run the cyclic process, I keep on receiving empty datagrams from the
3602 slaves regardless of what I do. Running the same code on the same machine
with iPOS4808 slaves connected through the same cable works just fine. I can
also read all CoE fields in 3602 slaves via SDO ("sudo ethercat upload" in
console) with no problem. The manufacturer (Technosoft) claims that their
Ethercat functionality should be consistent across the entire iPOS ...-CAT
family, but something is clearly not right.
Since I have never ran into similar issues, I miss the know-how that would
allow me to dig deep enough to establish the source of the problem (even the
simple fact whether it's a problem with the slaves or the master). Hence, I
thought I may check here, whether a similar situation has happened to anyone
before. If you had any tips on how I could investigate the problem further, I
would be much obliged.
Thank you very much in advance for any help.
Yours sincerely,
Jakub Sikorski
Doctoral Candidate
Surgical Robotics Laboratory
University of Twente
7500 AE Enschede
The Netherlands
_______________________________________________
etherlab-users mailing list
[email protected]
http://lists.etherlab.org/mailman/listinfo/etherlab-users