Ethercat installation summary

More
4 years 9 months ago #230580 by rodw
Replied by rodw on topic Ethercat installation summary
I think one possible catch is the instructions assume installing to master branch of linuxcnc. Installing it with the adoption of Python 3.9 is a bit tricky. 
Building against the master branch (the default with git clone) and running with an existing 2.8 deb install sound dangerous to me. You could consider checking out the 2.8 branch after cloning linuxcnc if thats the way you want to go. I have not tested it.

I've installed Debian 11 (Bullseye) several times now to totally avoid any Python  2.7 issues which have hurt me in the past. Fortunately, Installing Bullseye is now well documented here
www.qtpyvcp.com/install/bullseye.html
I did review these instructions when they were written and they are solid. Many thanks to Joco James in NZ for writing these. They pull in all the dependencies to run QTPYVCP and QTVCP configs as a bonus.

I did not encounter any deadlocks on a clean install. I do not have any Beckhoff devices yet.

But I have been unable to use the drives cia402 internal homing functions.

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

More
4 years 9 months ago - 4 years 9 months ago #230624 by Hakan
Replied by Hakan on topic Ethercat installation summary
Do the ect86 support homing? I don't recall seeing that in the ect60 manual. I think the stepper motors need an index signal for that and there is only A and B on the ones I have, also only inputs for A and B on the drive.
When I installed ethercat on the raspberry it was smooth sailing, none of that ecrt.h nonsense. The only thing I can think of I made different was to reboot after installing etherlab-master, which is mandatory it said. But I knew better this time and didn't do that, perhaps I should have restarted.
Last edit: 4 years 9 months ago by Hakan.

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

More
4 years 9 months ago #230628 by rodw
Replied by rodw on topic Ethercat installation summary

Do the ect86 support homing? I don't recollect seeing that in the ect60 manual.

Yes, the ETC60 and ETC86 both support internal homing and there are several homing methods using home switches similar to Linuxcnc's homing sequence. The one I was interested in was the stall homing methods. I thought these were part of the CIA402 standard.

From reading the CIA402 component docs, it indicated that that the drives would home using the index signal.I found that they would commence their cycle and would stop if the sensor was triggered but they issued a following error soon after.

I concluded that the component assumed it homed to an index on the drive as you mentioned. I don't know about the linuxcnc homing code to work around this. It would be pretty cool to home without home switches.

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

More
4 years 9 months ago #230751 by db1981
Hi people,

unfortunaly i have work for ~24h a day at the moment, so linuxcnc time is reduced...

@rodw

may be i did misunderstand something:

-does your drive starts its internal home function?
-the following error is in the drive? at the moment the drive finished its internal homing?

if yes: you have to set the homepositions from lcnc and the drive to the same values. That means if the drive finished its home routine and resets his poscounter to 0 for example the home position from the lcnc joint has to be the same value.
Because after finishing the internal routine and setting the drives pos register , op mode changes back to position mode. If in this moment the command position from lcnc is different to the drives internal position, the drives raises his following error.
it is right that lcnc sets an offset on the feedback position at the homing end cycle and zeros the DRO or set it to ini homeposition, but in the situation with an drive in position mode the commanded signal to the drive has to be equal to the drives feedback.

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

More
4 years 9 months ago #230779 by rodw
Replied by rodw on topic Ethercat installation summary

Hi people,

may be i did misunderstand something:

-does your drive starts its internal home function?
-the following error is in the drive? at the moment the drive finished its internal homing?

Yes, this what I observed.
I was reviewing homing.c source and I noted that V 2.9 as a new .INI value for homing HOME_INDEX_NO_ENCODER_RESET
Ref: linuxcnc.org/docs/devel/html/config/ini-...dex_no_encoder_reset
Source: github.com/LinuxCNC/linuxcnc/blob/master...otion/homing.c#L1104
Code:
if (H[joint_num].home_flags & HOME_INDEX_NO_ENCODER_RESET) { /* Special case: encoder does not reset on index pulse. This moves the internal position but does not affect the motor position */ offset = H[joint_num].home_offset - joint->pos_fb; joint->pos_cmd += offset; joint->pos_fb += offset; joint->free_tp.curr_pos += offset; joint->motor_offset -= offset; }

I will see if this setting helps but from what you have said,pos_fb might need to be set to pos_cmd

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

More
4 years 9 months ago - 4 years 9 months ago #230857 by rodw
Replied by rodw on topic Ethercat installation summary
Hmm, this is strange. I got my ECT86 CIA402 drive to home internally in an unexpected way but it forgets to tell Linuxcnc its homed.
Here's how (Must use V 2.9):
In the ini file set 
HOME_USE_INDEX = YES
HOME_INDEX_NO_ENCODER_RESET = YES (new in V 2.9)
do not set HOME_SEARCH_VEL 
set HOME_LATCH_VEL = internal drive homing velocity (converted from pulses per second set in drive)
Connect a proximity sensor to home input (ECT60/ECT86 = input 5)
Make sure the input is set to home function (ECT60/ETC86 = default function for input 5
Turn Linuxcnc on
Press home all and wait for inevitable joint following error. This leaves the drive in a unanticipated state (I think)
Power cycle the drive
Turn on Linuxcnc (orange button)
A few seconds later, the drive will enter its internal homing mode and will commence motion
Trigger the proximity sensor against some  metal.
The drive will stop motion
Remove the sensor from the metal and the drive will home internally!
Linuxcnc does not know it though.

Don't ask how I worked this out. First time was an accident. Then it took ages to work out a repeatable process.

So I think the cia402.comp is buggy. From the ECT60 manual, we may need to wait for the status to change so I have to look at the cia402.comp code..
Last edit: 4 years 9 months ago by rodw.

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

Time to create page: 0.126 seconds
Powered by Kunena Forum