Advanced Search

Search Results (Searched for: )

  • grandixximo
  • grandixximo's Avatar
Today 13:18 - Today 13:27
Replied by grandixximo on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

sync0Shift should not be 0

sync0Shift needs to be at least a third of your cycle

Set to 500000 not 0

Also please post files as attachments, or link to paste bin or Google drive, don't paste the entire text in the forum.

Also run ethercat master command, share the output here, preferably in a text file.

I would suggest the first device to be DC enabled, and the xml devices should match what is actually connected to the machine.

Have different versions of the xml and Hal if you have different machines with different configurations.
  • papagno-source
  • papagno-source
Today 12:50
Replied by papagno-source on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

Just to complete the information. The xml file contains drives that aren't actually present, so you can manage machines with different configurations. The real machine only has the x-y-z axes and an analog spindle.
So address 0 (I/O card), address 1 x-axis, address 2 y-axis, address 3 z-axis. The subsequent addresses aren't actually present, but this is done so as not to change much in the .hal file.
But I repeat, on Debian 10 the same xml files are used, the function syncToRefClock="true"
  • papagno-source
  • papagno-source
Today 12:44
Replied by papagno-source on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

xml on debian trixie
i have test refClockSyncCycles = -1 , but problem is the same

<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1" syncToRefClock="true">
<slave idx="0" type="generic" vid="0000022b" pid="0531ec01" configPdos="true">
<sdoConfig idx="3103" subIdx="08">
<sdoDataRaw data="16"/>
</sdoConfig>
<sdoConfig idx="3104" subIdx="08">
<sdoDataRaw data="16"/>
</sdoConfig>
<sdoConfig idx="3103" subIdx="09">
<sdoDataRaw data="03"/>
</sdoConfig>
<sdoConfig idx="3104" subIdx="09">
<sdoDataRaw data="01"/>
</sdoConfig>
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="7001" subIdx="01" bitLen="8" halPin="out_veloci" halType="bit"/>
<pdoEntry idx="7002" subIdx="01" bitLen="16" halPin="ao0" halType="float" scale="2765"/>
<pdoEntry idx="7002" subIdx="02" bitLen="16" halPin="ao1" halType="float" scale="2765"/>
<pdoEntry idx="7003" subIdx="01" bitLen="32" halPin="comparation_value" halType="float" scale="1"/>
<pdoEntry idx="7003" subIdx="02" bitLen="32" halPin="setvalue" halType="float" scale="1"/>
<pdoEntry idx="7003" subIdx="03" bitLen="16" halPin="control_word" halType="bit"/>
<pdoEntry idx="7004" subIdx="01" bitLen="32" halPin="comparation_valuev" halType="float" scale="1"/>
<pdoEntry idx="7004" subIdx="02" bitLen="32" halPin="setvaluev" halType="float" scale="1"/>
<pdoEntry idx="7004" subIdx="03" bitLen="16" halPin="control_wordv" halType="bit"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6000" subIdx="01" bitLen="8" halPin="in_veloci" halType="bit"/>
<pdoEntry idx="6003" subIdx="01" bitLen="32" halPin="counter_value" halType="float" scale="1"/>
<pdoEntry idx="6003" subIdx="02" bitLen="16" halPin="counter_status" halType="bit"/>
<pdoEntry idx="6003" subIdx="03" bitLen="16" halPin="microsecond" halType="S32"/>
<pdoEntry idx="6004" subIdx="01" bitLen="32" halPin="counter_valuev" halType="float" scale="1"/>
<pdoEntry idx="6004" subIdx="02" bitLen="16" halPin="counter_statusv" halType="bit"/>
<pdoEntry idx="6004" subIdx="03" bitLen="16" halPin="microsecondv" halType="S32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE X -->
<slave idx="1" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000078125 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE Y -->
<slave idx="2" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE Z -->
<slave idx="3" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI SP -->
<slave idx="4" type="generic" vid="01dd" pid="10400140" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6042" subIdx="00" bitLen="16" halPin="cmdvel" halType="float"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE A -->
<slave idx="5" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE B -->
<slave idx="6" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE C -->
<slave idx="7" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
</master>
</masters>
  • papagno-source
  • papagno-source
Today 12:41 - Today 12:41
Replied by papagno-source on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

xml debian 10

<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="-1">
<slave idx="0" type="generic" vid="0000022b" pid="0531ec01" configPdos="true">
<sdoConfig idx="3103" subIdx="08">
<sdoDataRaw data="16"/>
</sdoConfig>
<sdoConfig idx="3104" subIdx="08">
<sdoDataRaw data="16"/>
</sdoConfig>
<sdoConfig idx="3103" subIdx="09">
<sdoDataRaw data="03"/>
</sdoConfig>
<sdoConfig idx="3104" subIdx="09">
<sdoDataRaw data="01"/>
</sdoConfig>
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="7001" subIdx="01" bitLen="8" halPin="out_veloci" halType="bit"/>
<pdoEntry idx="7002" subIdx="01" bitLen="16" halPin="ao0" halType="float" scale="2765"/>
<pdoEntry idx="7002" subIdx="02" bitLen="16" halPin="ao1" halType="float" scale="2765"/>
<pdoEntry idx="7003" subIdx="01" bitLen="32" halPin="comparation_value" halType="float" scale="1"/>
<pdoEntry idx="7003" subIdx="02" bitLen="32" halPin="setvalue" halType="float" scale="1"/>
<pdoEntry idx="7003" subIdx="03" bitLen="16" halPin="control_word" halType="bit"/>
<pdoEntry idx="7004" subIdx="01" bitLen="32" halPin="comparation_valuev" halType="float" scale="1"/>
<pdoEntry idx="7004" subIdx="02" bitLen="32" halPin="setvaluev" halType="float" scale="1"/>
<pdoEntry idx="7004" subIdx="03" bitLen="16" halPin="control_wordv" halType="bit"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6000" subIdx="01" bitLen="8" halPin="in_veloci" halType="bit"/>
<pdoEntry idx="6003" subIdx="01" bitLen="32" halPin="counter_value" halType="float" scale="1"/>
<pdoEntry idx="6003" subIdx="02" bitLen="16" halPin="counter_status" halType="bit"/>
<pdoEntry idx="6003" subIdx="03" bitLen="16" halPin="microsecond" halType="S32"/>
<pdoEntry idx="6004" subIdx="01" bitLen="32" halPin="counter_valuev" halType="float" scale="1"/>
<pdoEntry idx="6004" subIdx="02" bitLen="16" halPin="counter_statusv" halType="bit"/>
<pdoEntry idx="6004" subIdx="03" bitLen="16" halPin="microsecondv" halType="S32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE X -->
<slave idx="1" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000078125 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE Y -->
<slave idx="2" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE Z -->
<slave idx="3" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI SP -->
<slave idx="4" type="generic" vid="01dd" pid="10400140" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6042" subIdx="00" bitLen="16" halPin="cmdvel" halType="float"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE A -->
<slave idx="5" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE B -->
<slave idx="6" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
<!-- INIZIO PARAMETRI ASSE C -->
<slave idx="7" type="generic" vid="850104" pid="01030507" configPdos="true">
<syncManager idx="0" dir="out"></syncManager>
<syncManager idx="1" dir="in"></syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="drivecontrol" halType="bit"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="u32"/>
<!--PARAMETRO POSCOMAND IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="838860.7"/>
<pdoEntry idx="6098" subIdx="00" bitLen="8" halPin="homemode" halType="u32"/>
<!--PARAMETRO HOMESPPED1 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="01" bitLen="32" halPin="homespeed1" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMESPPED2 IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="6099" subIdx="02" bitLen="32" halPin="homespeed2" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEACC IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="609A" subIdx="00" bitLen="32" halPin="homeacc" halType="float" scale="838860.7"/>
<!--PARAMETRO HOMEOFFSET IN SCALE SCRIVERE 8388607/X DOVE X SONO MM A GIRO MOTORE ESEMP: 8388607/10MM = 838860.7 -->
<pdoEntry idx="607C" subIdx="00" bitLen="32" halPin="homeoffset" halType="float" scale="838860.7"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6063" subIdx="00" bitLen="32" halPin="enccounts" halType="s32"/>
<!--PARAMETRO POS IN SCALE SCRIVERE X/8388607 DOVE X SONO MM A GIRO MOTORE ESEMP: 10/8388607/= 0.0000011920930376 -->
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="0.0000011920930376"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="torque%" halType="float" scale="0.1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velmotore" halType="float" scale="0.00007"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="allarm" halType="u32"/>
</pdo>
</syncManager>
<dcConf assignActivate = "300" sync0Cycle = "*1" sync0Shift = "0" />
<watchdog divider="2498" intervals="1000"/>
</slave>
</master>
</masters>
  • papagno-source
  • papagno-source
Today 12:38 - Today 12:38
Replied by papagno-source on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

Good morning everyone. We're running some tests with Rodw on a Debian Trixie system, kernel 6.12.74-rt, and ethercat 1.6.9.
Just to be fair, we're using the same configuration on real machines, so motors connected to lead screws, running Debian 10, kernel 4.19.0-27-rt, ethercat 1.5.2, and linuxcnc 2.9.0-pre1. So, with Debian 10, the machines work without problems. When I first start up, the drives and all ethercat I/O are immediately visible, meaning, for example, the positions of the absolute encoders for the motors appear instantly upon startup.
With Debian Trixie, we're having two problems. A less serious one, that is, at startup, the motor encoders' values ​​appear late, the first drive starting to appear after about a second (x axis), after another second Y appears and after that Z appears. But the most serious problem is that if you run the machine, the axes shake, then they stop shaking, then the vibration comes back and everything gets worse if I move windows on the desktop. Rodw has already attached the latency test on the matter, but I repeat, the PC is always the same and all the i/o and xml files are the same. Now I tried to copy from Debian 10 the bin/lcec_conf and rtlib/lcec.so files into the respective directories of Debian Trixie, without result, same problem. We tried to copy the same files from a version with the Grandixxximo patch, same problem, I also tried to vary the lcec.0.pll-drift pin, with values ​​from 10 to 1000 without solving. Honestly, I don't I know what to do. I'm attaching the XML files I use on Debian 10 and Trixie.
  • RotarySMP
  • RotarySMP's Avatar
Today 11:56 - Today 11:58
Replied by RotarySMP on topic Schaublin 125-CNC retrofit.

Schaublin 125-CNC retrofit.

Category: Turning

Thanks.

Good point. I didn't consider helix angle. I tried with G76 P1.27 J0.4 R1.8 Q30 but the tip chipped out after a few passes. I then went down in J over a few attempts, with 0.2 resulting in a lot of passes, and the tip wearing out rather than chipping. I ended up with R2 and J0.3. I'd put in a fresh tip and rerun the code to clean up the thread, and use that same tip to rough out the next part.

They are crap Amazon inserts, so maybe  as carbide prices went up, they mixed some sawdust into the mixture :)

I was was unsure how much overhang to give those jaws. I really need to make up some new ones, as all the only I have are heavily used.
Yeah, I only cut in both directions, as it gave me the nice chamfer on the step.

 
  • spumco
  • spumco
Today 11:40
Replied by spumco on topic Schaublin 125-CNC retrofit.

Schaublin 125-CNC retrofit.

Category: Turning

Thanks for the vid Mark!

Couple of unsolicited thoughts...
  • I wonder if part of your threading inserts were dying because they're designed for RH helix instead of LH? Probably not, but I have to wonder.
    • I also saw what looked like a million threading passes.  Perhaps your aren't taking a deep enough cut per pass and rubbing?
  • Looks like your pneumatic chuck has adjustable serrated top jaws.  Instead of turning a new step diameter so far out that you run in to the holes, maybe move the top jaws out a couple of serrations?  My Rohm is similar and has a specification on how many serrations you can overhang before they get dodgy.
  • Birds-nesting during facing... just cut from OD to ID instead of both directions. That inner step was so shallow you should be able to just plunge in Z- and cut to the ID.
Nice job on the tool changer!
  • leandrocontarini
  • leandrocontarini
Today 11:15 - Today 11:16
Replied by leandrocontarini on topic Chinese Mesa 7I92 from aliexpress NEW

Chinese Mesa 7I92 from aliexpress NEW

Category: Driver Boards

Recuperei a minha dessa forma.
Com o cabo jtag.
Instalei um  .bit errada e a placa travou , depois o vendedor forneceu o .bit correto e usei o jtag para recuperar a placa.
Estou com 3 modelos de placas aqui, todas funcionam muito bem.
  • DerKlotz
  • DerKlotz
Today 10:20

When I implement a handwheel, the milling motor stops spinning

Category: Advanced Configuration

I changed the lines as follows

net program.is-idle whb.halui.program.is-idle
net program.is-paused whb.halui.program.is-paused

net program.is-idle not.0.in <= halui.program.is-idle
net program.is-paused halui.program.is-paused => time.0.pause

No errors at startup but is it right???
 
  • RotarySMP
  • RotarySMP's Avatar
Today 10:07 - Today 10:09
Replied by RotarySMP on topic Schaublin 125-CNC retrofit.

Schaublin 125-CNC retrofit.

Category: Turning

Thanks a lot for your help and advice guys. I got the turret.comp finished and working really nicely. (Attached)

Here is a video of it in action, doing it's first production run...



Cheers,
Mark
  • rodw
  • rodw's Avatar
Today 09:49
Replied by rodw on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

Thanks for ideas.

It gets worse and I've been pondering the next step.: "The machine is unusable; the axes shake and make a lot of noise. I tried rebooting and changing the refclock settings from -1 to values ​​of 1 or 1000, but to no avail. The PC has an Intel NIC, but, as I said, the hardware and software are identical to Debian 10. At this point, I don't know what to do. The problem is EtherCAT."
The customer would like to try Ethercat 1.52 from his Debian 10 days but I don't think it will run on later kernels 
The current Debian 10 Ethercat version on their repos is 1.62, Debian 12 and Debian 13 is 1.69 with no other earlier versions published. Latency is OK but not great for a 4 core machine
 

The only thing I can think of is to roll back to Debian 12. Any other ideas? 

 
  • endian
  • endian's Avatar
Today 08:52
Replied by endian on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

Thought I'd ask here. User has upgraded from Debian 10 to latest Debian 13.3 and 2.10pre RIP config. Now Running grandixximos Ethercat driver but have not set syncToRefClock yet.

He reports:
With the same xml file, i/o and drive configuration, Debian 10 kernel 4.19 with ethercat 1.5.2 works fine, it has no latency at boot and hasn't given any problems. The current system has kernel 6.12 with ethercat 1.6.9 and has synchronization problems at boot, sometimes it doesn't see some drives on the bus, I'm forced to turn it off and on again. Would it be possible to use the current 6.12 kernel and linuxcnc 2.10, with ethercat 1.5.2?

I copied the lcec_conf and lcec.so files into the respective bin and rtailib folders from the Debian 10 version that I have and which works well on my machines, with linuxcnc 2.9.0 pre1 and etherrcat 1.5.2. At boot time, the drives are now seen within 1-2 seconds of booting and are always found on the bus.

This has 5 axis servos and a few Beckhoff modules attached to EK1100 

Next step is to add syncToRefClock

It seems odd to me that today's Ethercat hal driver is not performing but rolling back to an older version of it works. It seems to me his problem is the driver, not the version of Ethercat.

Any ideas or advice?

 

Ive experience of this non recognizing slaves on the bus during some experimenting at my debian 12 + 6.xx kernel ... but everything was solved by using non generic drivers and restarting ethercat service ifself... back that time I have benn using the 1.5.2 ethercat ... 

but it is sometimes odd till todays that with some hardware at bus ethercat is self-restarting and with some hardware is not ... and therefore bus has no slave active 

Ive not found solution at this till now...
  • Hakan
  • Hakan
Today 07:12 - Today 07:13
Replied by Hakan on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

It would be helpful to see the messages in syslog from when there was a problem.
journalctl --since=2026-4-5 | grep EtherCAT 

from 5 April as an example. And cut to a reasonable length.
  • rob123
  • rob123
Today 06:45
Replied by rob123 on topic Error unable to launch after pncconf.

Error unable to launch after pncconf.

Category: PnCConf Wizard

Hello PCW, I am having the same trouble.
Do you have or know where I can get a copy of 5i25_prob_rfx2.bit that includes a DPLL?
Thanks Robert?
  • leexi
  • leexi
Today 06:22

probe basic lath to define a net spindle-index-en spindle.0.index-enable

Category: HAL

I test all before and is working thetristate-bit make the solution to write to I/O bit

but now i found ddt not the best solution to built index, now I have to make a .comp to built a solution, I would like to have standard solution avoiding to write a none standard .comp but seems to me today the Lcnc standard components are not mature for absolute encoders with low information output as the one that I have, (or maybe is my lack of acknowledge from my side on Lcnc platform).
But only encoder counts in a multi-turn format s32 and encoder spins counter as well as multi-turn format s32.
And as well I believe the ethercat firmware developer for my ethercat encoder module they can add a index signal as well. But now that is what I have.

Thank you.
Displaying 1 - 15 out of 285050 results.
Time to create page: 4.505 seconds
Powered by Kunena Forum