Delta Tau Forums
Token incorrectly repeatly created when "export ethercat variables" - Printable Version

+- Delta Tau Forums (http://forums.deltatau.com)
+-- Forum: Delta Tau Data Systems (http://forums.deltatau.com/forumdisplay.php?fid=1)
+--- Forum: Power PMAC (http://forums.deltatau.com/forumdisplay.php?fid=2)
+--- Thread: Token incorrectly repeatly created when "export ethercat variables" (/showthread.php?tid=2571)



Token incorrectly repeatly created when "export ethercat variables" - lovu - 11-15-2017

Hello there,

As is told, "#define Slave_XX ECAT[i].IO[k].Data" is created when "export ethercat variables" is doing. The problem is that tokens following "#define" are always incorrectly repeatly created, which causes misunderstanding!

Just like:
Code:
"
#define Slave_0_6040_0_Controlword  ECAT[0].IO[0].Data
#define Slave_0_607A_0_Targetposition  ECAT[0].IO[1].Data
#define Slave_0_6081_0_Profilevelocity  ECAT[0].IO[2].Data
#define Slave_0_6083_0_Profileaccelerati  ECAT[0].IO[3].Data
#define Slave_0_6084_0_Profiledecelerati  ECAT[0].IO[4].Data
#define Slave_0_60FF_0_Targetvelocity  ECAT[0].IO[5].Data
#define Slave_0_6071_0_Targettorque  ECAT[0].IO[6].Data
#define Slave_0_60B8_0_Touchprobefunctio  ECAT[0].IO[7].Data
#define Slave_0_60FE_1_Digitaloutputs  ECAT[0].IO[8].Data
#define Slave_1_6040_0_Controlword  ECAT[0].IO[9].Data
#define Slave_1_607A_0_Targetposition  ECAT[0].IO[10].Data
#define Slave_1_6081_0_Profilevelocity  ECAT[0].IO[11].Data
#define Slave_1_6083_0_Profileaccelerati  ECAT[0].IO[12].Data
#define Slave_1_6084_0_Profiledecelerati  ECAT[0].IO[13].Data
#define Slave_1_60FF_0_Targetvelocity  ECAT[0].IO[14].Data
#define Slave_1_6071_0_Targettorque  ECAT[0].IO[15].Data
#define Slave_1_60B8_0_Touchprobefunctio  ECAT[0].IO[16].Data
#define Slave_1_60FE_1_Digitaloutputs  ECAT[0].IO[17].Data
#define Slave_2_6040_0_Controlword  ECAT[0].IO[18].Data
#define Slave_2_607A_0_Targetposition  ECAT[0].IO[19].Data
#define Slave_2_6081_0_Profilevelocity  ECAT[0].IO[20].Data
#define Slave_2_6083_0_Profileaccelerati  ECAT[0].IO[21].Data
#define Slave_2_6084_0_Profiledecelerati  ECAT[0].IO[22].Data
#define Slave_2_60FF_0_Targetvelocity  ECAT[0].IO[23].Data
#define Slave_2_6071_0_Targettorque  ECAT[0].IO[24].Data
#define Slave_2_60B8_0_Touchprobefunctio  ECAT[0].IO[25].Data
#define Slave_2_60FE_1_Digitaloutputs  ECAT[0].IO[26].Data
#define Slave_3_6040_0_Controlword  ECAT[0].IO[27].Data
#define Slave_3_607A_0_Targetposition  ECAT[0].IO[28].Data
#define Slave_3_6081_0_Profilevelocity  ECAT[0].IO[29].Data
#define Slave_3_6083_0_Profileaccelerati  ECAT[0].IO[30].Data
#define Slave_3_6084_0_Profiledecelerati  ECAT[0].IO[31].Data
#define Slave_3_60FF_0_Targetvelocity  ECAT[0].IO[32].Data
#define Slave_3_6071_0_Targettorque  ECAT[0].IO[33].Data
#define Slave_3_60B8_0_Touchprobefunctio  ECAT[0].IO[34].Data
#define Slave_3_60FE_1_Digitaloutputs  ECAT[0].IO[35].Data
#define Slave_4_6040_0_Controlword  ECAT[0].IO[36].Data
#define Slave_4_607A_0_Targetposition  ECAT[0].IO[37].Data
#define Slave_4_6081_0_Profilevelocity  ECAT[0].IO[38].Data
#define Slave_4_6083_0_Profileaccelerati  ECAT[0].IO[39].Data
#define Slave_4_6084_0_Profiledecelerati  ECAT[0].IO[40].Data
#define Slave_4_60FF_0_Targetvelocity  ECAT[0].IO[41].Data
#define Slave_4_6071_0_Targettorque  ECAT[0].IO[42].Data
#define Slave_4_60B8_0_Touchprobefunctio  ECAT[0].IO[43].Data
#define Slave_4_60FE_1_Digitaloutputs  ECAT[0].IO[44].Data
#define Slave_5_6040_0_Controlword  ECAT[0].IO[45].Data
#define Slave_5_607A_0_Targetposition  ECAT[0].IO[46].Data
#define Slave_5_6081_0_Profilevelocity  ECAT[0].IO[47].Data
#define Slave_5_6083_0_Profileaccelerati  ECAT[0].IO[48].Data
#define Slave_5_6084_0_Profiledecelerati  ECAT[0].IO[49].Data
#define Slave_5_60FF_0_Targetvelocity  ECAT[0].IO[50].Data
#define Slave_5_6071_0_Targettorque  ECAT[0].IO[51].Data
#define Slave_5_60B8_0_Touchprobefunctio  ECAT[0].IO[52].Data
#define Slave_5_60FE_1_Digitaloutputs  ECAT[0].IO[53].Data
#define Slave_0_6041_0_Statusword  ECAT[0].IO[4096].Data
#define Slave_0_2100_0_Statusword1  ECAT[0].IO[4097].Data
#define Slave_0_6064_0_Positionactualval  ECAT[0].IO[4098].Data
#define Slave_0_606C_0_Velocityactualval  ECAT[0].IO[4099].Data
#define Slave_0_6077_0_Torqueactualvalue  ECAT[0].IO[4100].Data
#define Slave_0_60F4_0_Followingerroract  ECAT[0].IO[4101].Data
#define Slave_0_60B9_0_Touchprobestatus  ECAT[0].IO[4102].Data
#define Slave_0_60BA_0_Touchprobepositio  ECAT[0].IO[4103].Data
#define Slave_0_60BB_0_Touchprobepositio  ECAT[0].IO[4104].Data
#define Slave_0_60FD_0_Digitalinput  ECAT[0].IO[4105].Data
#define Slave_0_1001_0_Errorregister  ECAT[0].IO[4106].Data
#define Slave_0_6061_0_Modesofoperationd  ECAT[0].IO[4107].Data
#define Slave_0_6041_0_Statusword  ECAT[0].IO[4108].Data
#define Slave_0_6061_0_Modesofoperationd  ECAT[0].IO[4109].Data
#define Slave_0_1001_0_Errorregister  ECAT[0].IO[4110].Data
#define Slave_0_6064_0_Positionactualval  ECAT[0].IO[4111].Data
#define Slave_0_606C_0_Velocityactualval  ECAT[0].IO[4112].Data
#define Slave_0_6077_0_Torqueactualvalue  ECAT[0].IO[4113].Data
#define Slave_0_60F4_0_Followingerroract  ECAT[0].IO[4114].Data
#define Slave_0_60FD_0_Digitalinput  ECAT[0].IO[4115].Data
#define Slave_0_6041_0_Statusword  ECAT[0].IO[4116].Data
#define Slave_0_60B9_0_Touchprobestatus  ECAT[0].IO[4117].Data
#define Slave_0_6061_0_Modesofoperationd  ECAT[0].IO[4118].Data
#define Slave_0_1001_0_Errorregister  ECAT[0].IO[4119].Data
#define Slave_0_6064_0_Positionactualval  ECAT[0].IO[4120].Data
#define Slave_0_606C_0_Velocityactualval  ECAT[0].IO[4121].Data
#define Slave_0_6077_0_Torqueactualvalue  ECAT[0].IO[4122].Data
#define Slave_0_60F4_0_Followingerroract  ECAT[0].IO[4123].Data
#define Slave_0_60BA_0_Touchprobepositio  ECAT[0].IO[4124].Data
#define Slave_0_60BB_0_Touchprobepositio  ECAT[0].IO[4125].Data
#define Slave_0_60FD_0_Digitalinput  ECAT[0].IO[4126].Data
#define Slave_0_6041_0_Statusword  ECAT[0].IO[4127].Data
#define Slave_0_6061_0_Modesofoperationd  ECAT[0].IO[4128].Data
#define Slave_0_1001_0_Errorregister  ECAT[0].IO[4129].Data
#define Slave_0_6064_0_Positionactualval  ECAT[0].IO[4130].Data
#define Slave_0_606C_0_Velocityactualval  ECAT[0].IO[4131].Data
#define Slave_0_6077_0_Torqueactualvalue  ECAT[0].IO[4132].Data
#define Slave_0_60F4_0_Followingerroract  ECAT[0].IO[4133].Data
#define Slave_0_60FD_0_Digitalinput  ECAT[0].IO[4134].Data
#define Slave_0_6040_0_Controlword  ECAT[0].IO[4135].Data
#define Slave_0_6040_0_Controlword  ECAT[0].IO[4136].Data
#define Slave_0_607A_0_Targetposition  ECAT[0].IO[4137].Data
#define Slave_0_60FF_0_Targetvelocity  ECAT[0].IO[4138].Data
#define Slave_0_6071_0_Targettorque  ECAT[0].IO[4139].Data
#define Slave_0_6081_0_Profilevelocity  ECAT[0].IO[4140].Data
#define Slave_0_6083_0_Profileaccelerati  ECAT[0].IO[4141].Data
#define Slave_0_6084_0_Profiledecelerati  ECAT[0].IO[4142].Data
#define Slave_0_60FE_1_Digitaloutputs  ECAT[0].IO[4143].Data
#define Slave_0_6040_0_Controlword  ECAT[0].IO[4144].Data
#define Slave_0_60B8_0_Touchprobefunctio  ECAT[0].IO[4145].Data
#define Slave_0_607A_0_Targetposition  ECAT[0].IO[4146].Data
#define Slave_0_60FF_0_Targetvelocity  ECAT[0].IO[4147].Data
#define Slave_0_6071_0_Targettorque  ECAT[0].IO[4148].Data
#define Slave_0_6081_0_Profilevelocity  ECAT[0].IO[4149].Data
#define Slave_0_6083_0_Profileaccelerati  ECAT[0].IO[4150].Data
#define Slave_0_6084_0_Profiledecelerati  ECAT[0].IO[4151].Data
#define Slave_0_6040_0_Controlword  ECAT[0].IO[4152].Data
#define Slave_0_607A_0_Targetposition  ECAT[0].IO[4153].Data
#define Slave_0_60FF_0_Targetvelocity  ECAT[0].IO[4154].Data
#define Slave_0_6071_0_Targettorque  ECAT[0].IO[4155].Data
#define Slave_0_6081_0_Profilevelocity  ECAT[0].IO[4156].Data
#define Slave_0_6083_0_Profileaccelerati  ECAT[0].IO[4157].Data
#define Slave_0_6084_0_Profiledecelerati  ECAT[0].IO[4158].Data
#define Slave_1_6041_0_Statusword  ECAT[0].IO[4159].Data
#define Slave_1_2100_0_Statusword1  ECAT[0].IO[4160].Data
#define Slave_1_6064_0_Positionactualval  ECAT[0].IO[4161].Data
#define Slave_1_606C_0_Velocityactualval  ECAT[0].IO[4162].Data
#define Slave_1_6077_0_Torqueactualvalue  ECAT[0].IO[4163].Data
#define Slave_1_60F4_0_Followingerroract  ECAT[0].IO[4164].Data
#define Slave_1_60B9_0_Touchprobestatus  ECAT[0].IO[4165].Data
#define Slave_1_60BA_0_Touchprobepositio  ECAT[0].IO[4166].Data
#define Slave_1_60BB_0_Touchprobepositio  ECAT[0].IO[4167].Data
#define Slave_1_60FD_0_Digitalinput  ECAT[0].IO[4168].Data
#define Slave_1_1001_0_Errorregister  ECAT[0].IO[4169].Data
#define Slave_1_6061_0_Modesofoperationd  ECAT[0].IO[4170].Data
#define Slave_1_6041_0_Statusword  ECAT[0].IO[4171].Data
#define Slave_1_6061_0_Modesofoperationd  ECAT[0].IO[4172].Data
#define Slave_1_1001_0_Errorregister  ECAT[0].IO[4173].Data
#define Slave_1_6064_0_Positionactualval  ECAT[0].IO[4174].Data
#define Slave_1_606C_0_Velocityactualval  ECAT[0].IO[4175].Data
#define Slave_1_6077_0_Torqueactualvalue  ECAT[0].IO[4176].Data
#define Slave_1_60F4_0_Followingerroract  ECAT[0].IO[4177].Data
#define Slave_1_60FD_0_Digitalinput  ECAT[0].IO[4178].Data
#define Slave_1_6041_0_Statusword  ECAT[0].IO[4179].Data
#define Slave_1_60B9_0_Touchprobestatus  ECAT[0].IO[4180].Data
#define Slave_1_6061_0_Modesofoperationd  ECAT[0].IO[4181].Data
#define Slave_1_1001_0_Errorregister  ECAT[0].IO[4182].Data
#define Slave_1_6064_0_Positionactualval  ECAT[0].IO[4183].Data
#define Slave_1_606C_0_Velocityactualval  ECAT[0].IO[4184].Data
#define Slave_1_6077_0_Torqueactualvalue  ECAT[0].IO[4185].Data
#define Slave_1_60F4_0_Followingerroract  ECAT[0].IO[4186].Data
#define Slave_1_60BA_0_Touchprobepositio  ECAT[0].IO[4187].Data
#define Slave_1_60BB_0_Touchprobepositio  ECAT[0].IO[4188].Data
#define Slave_1_60FD_0_Digitalinput  ECAT[0].IO[4189].Data
#define Slave_1_6041_0_Statusword  ECAT[0].IO[4190].Data
#define Slave_1_6061_0_Modesofoperationd  ECAT[0].IO[4191].Data
#define Slave_1_1001_0_Errorregister  ECAT[0].IO[4192].Data
#define Slave_1_6064_0_Positionactualval  ECAT[0].IO[4193].Data
#define Slave_1_606C_0_Velocityactualval  ECAT[0].IO[4194].Data
#define Slave_1_6077_0_Torqueactualvalue  ECAT[0].IO[4195].Data
#define Slave_1_60F4_0_Followingerroract  ECAT[0].IO[4196].Data
#define Slave_1_60FD_0_Digitalinput  ECAT[0].IO[4197].Data
#define Slave_1_6040_0_Controlword  ECAT[0].IO[4198].Data
#define Slave_1_6040_0_Controlword  ECAT[0].IO[4199].Data
#define Slave_1_607A_0_Targetposition  ECAT[0].IO[4200].Data
#define Slave_1_60FF_0_Targetvelocity  ECAT[0].IO[4201].Data
#define Slave_1_6071_0_Targettorque  ECAT[0].IO[4202].Data
#define Slave_1_6081_0_Profilevelocity  ECAT[0].IO[4203].Data
#define Slave_1_6083_0_Profileaccelerati  ECAT[0].IO[4204].Data
#define Slave_1_6084_0_Profiledecelerati  ECAT[0].IO[4205].Data
#define Slave_1_60FE_1_Digitaloutputs  ECAT[0].IO[4206].Data
#define Slave_1_6040_0_Controlword  ECAT[0].IO[4207].Data
#define Slave_1_60B8_0_Touchprobefunctio  ECAT[0].IO[4208].Data
#define Slave_1_607A_0_Targetposition  ECAT[0].IO[4209].Data
#define Slave_1_60FF_0_Targetvelocity  ECAT[0].IO[4210].Data
#define Slave_1_6071_0_Targettorque  ECAT[0].IO[4211].Data
#define Slave_1_6081_0_Profilevelocity  ECAT[0].IO[4212].Data
#define Slave_1_6083_0_Profileaccelerati  ECAT[0].IO[4213].Data
#define Slave_1_6084_0_Profiledecelerati  ECAT[0].IO[4214].Data
#define Slave_1_6040_0_Controlword  ECAT[0].IO[4215].Data
#define Slave_1_607A_0_Targetposition  ECAT[0].IO[4216].Data
#define Slave_1_60FF_0_Targetvelocity  ECAT[0].IO[4217].Data
#define Slave_1_6071_0_Targettorque  ECAT[0].IO[4218].Data
#define Slave_1_6081_0_Profilevelocity  ECAT[0].IO[4219].Data
#define Slave_1_6083_0_Profileaccelerati  ECAT[0].IO[4220].Data
#define Slave_1_6084_0_Profiledecelerati  ECAT[0].IO[4221].Data
#define Slave_2_6041_0_Statusword  ECAT[0].IO[4222].Data
#define Slave_2_2100_0_Statusword1  ECAT[0].IO[4223].Data
#define Slave_2_6064_0_Positionactualval  ECAT[0].IO[4224].Data
#define Slave_2_606C_0_Velocityactualval  ECAT[0].IO[4225].Data
#define Slave_2_6077_0_Torqueactualvalue  ECAT[0].IO[4226].Data
#define Slave_2_60F4_0_Followingerroract  ECAT[0].IO[4227].Data
#define Slave_2_60B9_0_Touchprobestatus  ECAT[0].IO[4228].Data
#define Slave_2_60BA_0_Touchprobepositio  ECAT[0].IO[4229].Data
#define Slave_2_60BB_0_Touchprobepositio  ECAT[0].IO[4230].Data
#define Slave_2_60FD_0_Digitalinput  ECAT[0].IO[4231].Data
#define Slave_2_1001_0_Errorregister  ECAT[0].IO[4232].Data
#define Slave_2_6061_0_Modesofoperationd  ECAT[0].IO[4233].Data
#define Slave_2_6041_0_Statusword  ECAT[0].IO[4234].Data
#define Slave_2_6061_0_Modesofoperationd  ECAT[0].IO[4235].Data
#define Slave_2_1001_0_Errorregister  ECAT[0].IO[4236].Data
#define Slave_2_6064_0_Positionactualval  ECAT[0].IO[4237].Data
#define Slave_2_606C_0_Velocityactualval  ECAT[0].IO[4238].Data
#define Slave_2_6077_0_Torqueactualvalue  ECAT[0].IO[4239].Data
#define Slave_2_60F4_0_Followingerroract  ECAT[0].IO[4240].Data
#define Slave_2_60FD_0_Digitalinput  ECAT[0].IO[4241].Data
#define Slave_2_6041_0_Statusword  ECAT[0].IO[4242].Data
#define Slave_2_60B9_0_Touchprobestatus  ECAT[0].IO[4243].Data
#define Slave_2_6061_0_Modesofoperationd  ECAT[0].IO[4244].Data
#define Slave_2_1001_0_Errorregister  ECAT[0].IO[4245].Data
#define Slave_2_6064_0_Positionactualval  ECAT[0].IO[4246].Data
#define Slave_2_606C_0_Velocityactualval  ECAT[0].IO[4247].Data
#define Slave_2_6077_0_Torqueactualvalue  ECAT[0].IO[4248].Data
#define Slave_2_60F4_0_Followingerroract  ECAT[0].IO[4249].Data
#define Slave_2_60BA_0_Touchprobepositio  ECAT[0].IO[4250].Data
#define Slave_2_60BB_0_Touchprobepositio  ECAT[0].IO[4251].Data
#define Slave_2_60FD_0_Digitalinput  ECAT[0].IO[4252].Data
#define Slave_2_6041_0_Statusword  ECAT[0].IO[4253].Data
#define Slave_2_6061_0_Modesofoperationd  ECAT[0].IO[4254].Data
#define Slave_2_1001_0_Errorregister  ECAT[0].IO[4255].Data
#define Slave_2_6064_0_Positionactualval  ECAT[0].IO[4256].Data
#define Slave_2_606C_0_Velocityactualval  ECAT[0].IO[4257].Data
#define Slave_2_6077_0_Torqueactualvalue  ECAT[0].IO[4258].Data
#define Slave_2_60F4_0_Followingerroract  ECAT[0].IO[4259].Data
#define Slave_2_60FD_0_Digitalinput  ECAT[0].IO[4260].Data
#define Slave_2_6040_0_Controlword  ECAT[0].IO[4261].Data
#define Slave_2_6040_0_Controlword  ECAT[0].IO[4262].Data
#define Slave_2_607A_0_Targetposition  ECAT[0].IO[4263].Data
#define Slave_2_60FF_0_Targetvelocity  ECAT[0].IO[4264].Data
#define Slave_2_6071_0_Targettorque  ECAT[0].IO[4265].Data
#define Slave_2_6081_0_Profilevelocity  ECAT[0].IO[4266].Data
#define Slave_2_6083_0_Profileaccelerati  ECAT[0].IO[4267].Data
#define Slave_2_6084_0_Profiledecelerati  ECAT[0].IO[4268].Data
#define Slave_2_60FE_1_Digitaloutputs  ECAT[0].IO[4269].Data
#define Slave_2_6040_0_Controlword  ECAT[0].IO[4270].Data
#define Slave_2_60B8_0_Touchprobefunctio  ECAT[0].IO[4271].Data
#define Slave_2_607A_0_Targetposition  ECAT[0].IO[4272].Data
#define Slave_2_60FF_0_Targetvelocity  ECAT[0].IO[4273].Data
#define Slave_2_6071_0_Targettorque  ECAT[0].IO[4274].Data
#define Slave_2_6081_0_Profilevelocity  ECAT[0].IO[4275].Data
#define Slave_2_6083_0_Profileaccelerati  ECAT[0].IO[4276].Data
#define Slave_2_6084_0_Profiledecelerati  ECAT[0].IO[4277].Data
#define Slave_2_6040_0_Controlword  ECAT[0].IO[4278].Data
#define Slave_2_607A_0_Targetposition  ECAT[0].IO[4279].Data
#define Slave_2_60FF_0_Targetvelocity  ECAT[0].IO[4280].Data
#define Slave_2_6071_0_Targettorque  ECAT[0].IO[4281].Data
#define Slave_2_6081_0_Profilevelocity  ECAT[0].IO[4282].Data
#define Slave_2_6083_0_Profileaccelerati  ECAT[0].IO[4283].Data
#define Slave_2_6084_0_Profiledecelerati  ECAT[0].IO[4284].Data
#define Slave_3_6041_0_Statusword  ECAT[0].IO[4285].Data
#define Slave_3_2100_0_Statusword1  ECAT[0].IO[4286].Data
#define Slave_3_6064_0_Positionactualval  ECAT[0].IO[4287].Data
#define Slave_3_606C_0_Velocityactualval  ECAT[0].IO[4288].Data
#define Slave_3_6077_0_Torqueactualvalue  ECAT[0].IO[4289].Data
#define Slave_3_60F4_0_Followingerroract  ECAT[0].IO[4290].Data
#define Slave_3_60B9_0_Touchprobestatus  ECAT[0].IO[4291].Data
#define Slave_3_60BA_0_Touchprobepositio  ECAT[0].IO[4292].Data
#define Slave_3_60BB_0_Touchprobepositio  ECAT[0].IO[4293].Data
#define Slave_3_60FD_0_Digitalinput  ECAT[0].IO[4294].Data
#define Slave_3_1001_0_Errorregister  ECAT[0].IO[4295].Data
#define Slave_3_6061_0_Modesofoperationd  ECAT[0].IO[4296].Data
#define Slave_3_6041_0_Statusword  ECAT[0].IO[4297].Data
#define Slave_3_6061_0_Modesofoperationd  ECAT[0].IO[4298].Data
#define Slave_3_1001_0_Errorregister  ECAT[0].IO[4299].Data
#define Slave_3_6064_0_Positionactualval  ECAT[0].IO[4300].Data
#define Slave_3_606C_0_Velocityactualval  ECAT[0].IO[4301].Data
#define Slave_3_6077_0_Torqueactualvalue  ECAT[0].IO[4302].Data
#define Slave_3_60F4_0_Followingerroract  ECAT[0].IO[4303].Data
#define Slave_3_60FD_0_Digitalinput  ECAT[0].IO[4304].Data
#define Slave_3_6041_0_Statusword  ECAT[0].IO[4305].Data
#define Slave_3_60B9_0_Touchprobestatus  ECAT[0].IO[4306].Data
#define Slave_3_6061_0_Modesofoperationd  ECAT[0].IO[4307].Data
#define Slave_3_1001_0_Errorregister  ECAT[0].IO[4308].Data
#define Slave_3_6064_0_Positionactualval  ECAT[0].IO[4309].Data
#define Slave_3_606C_0_Velocityactualval  ECAT[0].IO[4310].Data
#define Slave_3_6077_0_Torqueactualvalue  ECAT[0].IO[4311].Data
#define Slave_3_60F4_0_Followingerroract  ECAT[0].IO[4312].Data
#define Slave_3_60BA_0_Touchprobepositio  ECAT[0].IO[4313].Data
#define Slave_3_60BB_0_Touchprobepositio  ECAT[0].IO[4314].Data
#define Slave_3_60FD_0_Digitalinput  ECAT[0].IO[4315].Data
#define Slave_3_6041_0_Statusword  ECAT[0].IO[4316].Data
#define Slave_3_6061_0_Modesofoperationd  ECAT[0].IO[4317].Data
#define Slave_3_1001_0_Errorregister  ECAT[0].IO[4318].Data
#define Slave_3_6064_0_Positionactualval  ECAT[0].IO[4319].Data
#define Slave_3_606C_0_Velocityactualval  ECAT[0].IO[4320].Data
#define Slave_3_6077_0_Torqueactualvalue  ECAT[0].IO[4321].Data
#define Slave_3_60F4_0_Followingerroract  ECAT[0].IO[4322].Data
#define Slave_3_60FD_0_Digitalinput  ECAT[0].IO[4323].Data
#define Slave_3_6040_0_Controlword  ECAT[0].IO[4324].Data
#define Slave_3_6040_0_Controlword  ECAT[0].IO[4325].Data
#define Slave_3_607A_0_Targetposition  ECAT[0].IO[4326].Data
#define Slave_3_60FF_0_Targetvelocity  ECAT[0].IO[4327].Data
#define Slave_3_6071_0_Targettorque  ECAT[0].IO[4328].Data
#define Slave_3_6081_0_Profilevelocity  ECAT[0].IO[4329].Data
#define Slave_3_6083_0_Profileaccelerati  ECAT[0].IO[4330].Data
#define Slave_3_6084_0_Profiledecelerati  ECAT[0].IO[4331].Data
#define Slave_3_60FE_1_Digitaloutputs  ECAT[0].IO[4332].Data
#define Slave_3_6040_0_Controlword  ECAT[0].IO[4333].Data
#define Slave_3_60B8_0_Touchprobefunctio  ECAT[0].IO[4334].Data
#define Slave_3_607A_0_Targetposition  ECAT[0].IO[4335].Data
#define Slave_3_60FF_0_Targetvelocity  ECAT[0].IO[4336].Data
#define Slave_3_6071_0_Targettorque  ECAT[0].IO[4337].Data
#define Slave_3_6081_0_Profilevelocity  ECAT[0].IO[4338].Data
#define Slave_3_6083_0_Profileaccelerati  ECAT[0].IO[4339].Data
#define Slave_3_6084_0_Profiledecelerati  ECAT[0].IO[4340].Data
#define Slave_3_6040_0_Controlword  ECAT[0].IO[4341].Data
#define Slave_3_607A_0_Targetposition  ECAT[0].IO[4342].Data
#define Slave_3_60FF_0_Targetvelocity  ECAT[0].IO[4343].Data
#define Slave_3_6071_0_Targettorque  ECAT[0].IO[4344].Data
#define Slave_3_6081_0_Profilevelocity  ECAT[0].IO[4345].Data
#define Slave_3_6083_0_Profileaccelerati  ECAT[0].IO[4346].Data
#define Slave_3_6084_0_Profiledecelerati  ECAT[0].IO[4347].Data
#define Slave_4_6041_0_Statusword  ECAT[0].IO[4348].Data
#define Slave_4_2100_0_Statusword1  ECAT[0].IO[4349].Data
#define Slave_4_6064_0_Positionactualval  ECAT[0].IO[4350].Data
#define Slave_4_606C_0_Velocityactualval  ECAT[0].IO[4351].Data
#define Slave_4_6077_0_Torqueactualvalue  ECAT[0].IO[4352].Data
#define Slave_4_60F4_0_Followingerroract  ECAT[0].IO[4353].Data
#define Slave_4_60B9_0_Touchprobestatus  ECAT[0].IO[4354].Data
#define Slave_4_60BA_0_Touchprobepositio  ECAT[0].IO[4355].Data
#define Slave_4_60BB_0_Touchprobepositio  ECAT[0].IO[4356].Data
#define Slave_4_60FD_0_Digitalinput  ECAT[0].IO[4357].Data
#define Slave_4_1001_0_Errorregister  ECAT[0].IO[4358].Data
#define Slave_4_6061_0_Modesofoperationd  ECAT[0].IO[4359].Data
#define Slave_4_6041_0_Statusword  ECAT[0].IO[4360].Data
#define Slave_4_6061_0_Modesofoperationd  ECAT[0].IO[4361].Data
#define Slave_4_1001_0_Errorregister  ECAT[0].IO[4362].Data
#define Slave_4_6064_0_Positionactualval  ECAT[0].IO[4363].Data
#define Slave_4_606C_0_Velocityactualval  ECAT[0].IO[4364].Data
#define Slave_4_6077_0_Torqueactualvalue  ECAT[0].IO[4365].Data
#define Slave_4_60F4_0_Followingerroract  ECAT[0].IO[4366].Data
#define Slave_4_60FD_0_Digitalinput  ECAT[0].IO[4367].Data
#define Slave_4_6041_0_Statusword  ECAT[0].IO[4368].Data
#define Slave_4_60B9_0_Touchprobestatus  ECAT[0].IO[4369].Data
#define Slave_4_6061_0_Modesofoperationd  ECAT[0].IO[4370].Data
#define Slave_4_1001_0_Errorregister  ECAT[0].IO[4371].Data
#define Slave_4_6064_0_Positionactualval  ECAT[0].IO[4372].Data
#define Slave_4_606C_0_Velocityactualval  ECAT[0].IO[4373].Data
#define Slave_4_6077_0_Torqueactualvalue  ECAT[0].IO[4374].Data
#define Slave_4_60F4_0_Followingerroract  ECAT[0].IO[4375].Data
#define Slave_4_60BA_0_Touchprobepositio  ECAT[0].IO[4376].Data
#define Slave_4_60BB_0_Touchprobepositio  ECAT[0].IO[4377].Data
#define Slave_4_60FD_0_Digitalinput  ECAT[0].IO[4378].Data
#define Slave_4_6041_0_Statusword  ECAT[0].IO[4379].Data
#define Slave_4_6061_0_Modesofoperationd  ECAT[0].IO[4380].Data
#define Slave_4_1001_0_Errorregister  ECAT[0].IO[4381].Data
#define Slave_4_6064_0_Positionactualval  ECAT[0].IO[4382].Data
#define Slave_4_606C_0_Velocityactualval  ECAT[0].IO[4383].Data
#define Slave_4_6077_0_Torqueactualvalue  ECAT[0].IO[4384].Data
#define Slave_4_60F4_0_Followingerroract  ECAT[0].IO[4385].Data
#define Slave_4_60FD_0_Digitalinput  ECAT[0].IO[4386].Data
#define Slave_4_6040_0_Controlword  ECAT[0].IO[4387].Data
#define Slave_4_6040_0_Controlword  ECAT[0].IO[4388].Data
#define Slave_4_607A_0_Targetposition  ECAT[0].IO[4389].Data
#define Slave_4_60FF_0_Targetvelocity  ECAT[0].IO[4390].Data
#define Slave_4_6071_0_Targettorque  ECAT[0].IO[4391].Data
#define Slave_4_6081_0_Profilevelocity  ECAT[0].IO[4392].Data
#define Slave_4_6083_0_Profileaccelerati  ECAT[0].IO[4393].Data
#define Slave_4_6084_0_Profiledecelerati  ECAT[0].IO[4394].Data
#define Slave_4_60FE_1_Digitaloutputs  ECAT[0].IO[4395].Data
#define Slave_4_6040_0_Controlword  ECAT[0].IO[4396].Data
#define Slave_4_60B8_0_Touchprobefunctio  ECAT[0].IO[4397].Data
#define Slave_4_607A_0_Targetposition  ECAT[0].IO[4398].Data
#define Slave_4_60FF_0_Targetvelocity  ECAT[0].IO[4399].Data
#define Slave_4_6071_0_Targettorque  ECAT[0].IO[4400].Data
#define Slave_4_6081_0_Profilevelocity  ECAT[0].IO[4401].Data
#define Slave_4_6083_0_Profileaccelerati  ECAT[0].IO[4402].Data
#define Slave_4_6084_0_Profiledecelerati  ECAT[0].IO[4403].Data
#define Slave_4_6040_0_Controlword  ECAT[0].IO[4404].Data
#define Slave_4_607A_0_Targetposition  ECAT[0].IO[4405].Data
#define Slave_4_60FF_0_Targetvelocity  ECAT[0].IO[4406].Data
#define Slave_4_6071_0_Targettorque  ECAT[0].IO[4407].Data
#define Slave_4_6081_0_Profilevelocity  ECAT[0].IO[4408].Data
#define Slave_4_6083_0_Profileaccelerati  ECAT[0].IO[4409].Data
#define Slave_4_6084_0_Profiledecelerati  ECAT[0].IO[4410].Data
#define Slave_5_6041_0_Statusword  ECAT[0].IO[4411].Data
#define Slave_5_2100_0_Statusword1  ECAT[0].IO[4412].Data
#define Slave_5_6064_0_Positionactualval  ECAT[0].IO[4413].Data
#define Slave_5_606C_0_Velocityactualval  ECAT[0].IO[4414].Data
#define Slave_5_6077_0_Torqueactualvalue  ECAT[0].IO[4415].Data
#define Slave_5_60F4_0_Followingerroract  ECAT[0].IO[4416].Data
#define Slave_5_60B9_0_Touchprobestatus  ECAT[0].IO[4417].Data
#define Slave_5_60BA_0_Touchprobepositio  ECAT[0].IO[4418].Data
#define Slave_5_60BB_0_Touchprobepositio  ECAT[0].IO[4419].Data
#define Slave_5_60FD_0_Digitalinput  ECAT[0].IO[4420].Data
#define Slave_5_1001_0_Errorregister  ECAT[0].IO[4421].Data
#define Slave_5_6061_0_Modesofoperationd  ECAT[0].IO[4422].Data
#define Slave_5_6041_0_Statusword  ECAT[0].IO[4423].Data
#define Slave_5_6061_0_Modesofoperationd  ECAT[0].IO[4424].Data
#define Slave_5_1001_0_Errorregister  ECAT[0].IO[4425].Data
#define Slave_5_6064_0_Positionactualval  ECAT[0].IO[4426].Data
#define Slave_5_606C_0_Velocityactualval  ECAT[0].IO[4427].Data
#define Slave_5_6077_0_Torqueactualvalue  ECAT[0].IO[4428].Data
#define Slave_5_60F4_0_Followingerroract  ECAT[0].IO[4429].Data
#define Slave_5_60FD_0_Digitalinput  ECAT[0].IO[4430].Data
#define Slave_5_6041_0_Statusword  ECAT[0].IO[4431].Data
#define Slave_5_60B9_0_Touchprobestatus  ECAT[0].IO[4432].Data
#define Slave_5_6061_0_Modesofoperationd  ECAT[0].IO[4433].Data
#define Slave_5_1001_0_Errorregister  ECAT[0].IO[4434].Data
#define Slave_5_6064_0_Positionactualval  ECAT[0].IO[4435].Data
#define Slave_5_606C_0_Velocityactualval  ECAT[0].IO[4436].Data
#define Slave_5_6077_0_Torqueactualvalue  ECAT[0].IO[4437].Data
#define Slave_5_60F4_0_Followingerroract  ECAT[0].IO[4438].Data
#define Slave_5_60BA_0_Touchprobepositio  ECAT[0].IO[4439].Data
#define Slave_5_60BB_0_Touchprobepositio  ECAT[0].IO[4440].Data
#define Slave_5_60FD_0_Digitalinput  ECAT[0].IO[4441].Data
#define Slave_5_6041_0_Statusword  ECAT[0].IO[4442].Data
#define Slave_5_6061_0_Modesofoperationd  ECAT[0].IO[4443].Data
#define Slave_5_1001_0_Errorregister  ECAT[0].IO[4444].Data
#define Slave_5_6064_0_Positionactualval  ECAT[0].IO[4445].Data
#define Slave_5_606C_0_Velocityactualval  ECAT[0].IO[4446].Data
#define Slave_5_6077_0_Torqueactualvalue  ECAT[0].IO[4447].Data
#define Slave_5_60F4_0_Followingerroract  ECAT[0].IO[4448].Data
#define Slave_5_60FD_0_Digitalinput  ECAT[0].IO[4449].Data
#define Slave_5_6040_0_Controlword  ECAT[0].IO[4450].Data
#define Slave_5_6040_0_Controlword  ECAT[0].IO[4451].Data
#define Slave_5_607A_0_Targetposition  ECAT[0].IO[4452].Data
#define Slave_5_60FF_0_Targetvelocity  ECAT[0].IO[4453].Data
#define Slave_5_6071_0_Targettorque  ECAT[0].IO[4454].Data
#define Slave_5_6081_0_Profilevelocity  ECAT[0].IO[4455].Data
#define Slave_5_6083_0_Profileaccelerati  ECAT[0].IO[4456].Data
#define Slave_5_6084_0_Profiledecelerati  ECAT[0].IO[4457].Data
#define Slave_5_60FE_1_Digitaloutputs  ECAT[0].IO[4458].Data
#define Slave_5_6040_0_Controlword  ECAT[0].IO[4459].Data
#define Slave_5_60B8_0_Touchprobefunctio  ECAT[0].IO[4460].Data
#define Slave_5_607A_0_Targetposition  ECAT[0].IO[4461].Data
#define Slave_5_60FF_0_Targetvelocity  ECAT[0].IO[4462].Data
#define Slave_5_6071_0_Targettorque  ECAT[0].IO[4463].Data
#define Slave_5_6081_0_Profilevelocity  ECAT[0].IO[4464].Data
#define Slave_5_6083_0_Profileaccelerati  ECAT[0].IO[4465].Data
#define Slave_5_6084_0_Profiledecelerati  ECAT[0].IO[4466].Data
#define Slave_5_6040_0_Controlword  ECAT[0].IO[4467].Data
#define Slave_5_607A_0_Targetposition  ECAT[0].IO[4468].Data
#define Slave_5_60FF_0_Targetvelocity  ECAT[0].IO[4469].Data
#define Slave_5_6071_0_Targettorque  ECAT[0].IO[4470].Data
#define Slave_5_6081_0_Profilevelocity  ECAT[0].IO[4471].Data
#define Slave_5_6083_0_Profileaccelerati  ECAT[0].IO[4472].Data
#define Slave_5_6084_0_Profiledecelerati  ECAT[0].IO[4473].Data
"
Many of the tokens are reused!
What's wrong with it? IDE or ?


RE: Token incorrectly repeatly created when "export ethercat variables" - Eric Hotchkiss - 11-15-2017

Once I comment it up, I don't think there are any repeats. It's just that each slave has 2 sections, one for inputs one for outputs.

The last number on each line seems to only increase.

Code:
//Slave 0 Ouput
#define Slave_0_6040_0_Controlword ECAT[0].IO[0].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[1].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[2].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[3].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[5].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[6].Data
#define Slave_0_60B8_0_Touchprobefunctio ECAT[0].IO[7].Data
#define Slave_0_60FE_1_Digitaloutputs ECAT[0].IO[8].Data

//Slave 1 Ouput
#define Slave_1_6040_0_Controlword ECAT[0].IO[9].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[10].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[11].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[12].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[13].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[14].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[15].Data
#define Slave_1_60B8_0_Touchprobefunctio ECAT[0].IO[16].Data
#define Slave_1_60FE_1_Digitaloutputs ECAT[0].IO[17].Data

//Slave 2 Ouput
#define Slave_2_6040_0_Controlword ECAT[0].IO[18].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[19].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[20].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[21].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[22].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[23].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[24].Data
#define Slave_2_60B8_0_Touchprobefunctio ECAT[0].IO[25].Data
#define Slave_2_60FE_1_Digitaloutputs ECAT[0].IO[26].Data

//Slave 3 Ouput
#define Slave_3_6040_0_Controlword ECAT[0].IO[27].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[28].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[29].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[30].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[31].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[32].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[33].Data
#define Slave_3_60B8_0_Touchprobefunctio ECAT[0].IO[34].Data
#define Slave_3_60FE_1_Digitaloutputs ECAT[0].IO[35].Data

//Slave 4 Ouput
#define Slave_4_6040_0_Controlword ECAT[0].IO[36].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[37].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[38].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[39].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[40].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[41].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[42].Data
#define Slave_4_60B8_0_Touchprobefunctio ECAT[0].IO[43].Data
#define Slave_4_60FE_1_Digitaloutputs ECAT[0].IO[44].Data

//Slave 5 Ouput
#define Slave_5_6040_0_Controlword ECAT[0].IO[45].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[46].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[47].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[48].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[49].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[50].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[51].Data
#define Slave_5_60B8_0_Touchprobefunctio ECAT[0].IO[52].Data
#define Slave_5_60FE_1_Digitaloutputs ECAT[0].IO[53].Data

//Slave 0 Input
#define Slave_0_6041_0_Statusword ECAT[0].IO[4096].Data
#define Slave_0_2100_0_Statusword1 ECAT[0].IO[4097].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4098].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4099].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4100].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4101].Data
#define Slave_0_60B9_0_Touchprobestatus ECAT[0].IO[4102].Data
#define Slave_0_60BA_0_Touchprobepositio ECAT[0].IO[4103].Data
#define Slave_0_60BB_0_Touchprobepositio ECAT[0].IO[4104].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4105].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4106].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4107].Data
#define Slave_0_6041_0_Statusword ECAT[0].IO[4108].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4109].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4110].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4111].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4112].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4113].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4114].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4115].Data
#define Slave_0_6041_0_Statusword ECAT[0].IO[4116].Data
#define Slave_0_60B9_0_Touchprobestatus ECAT[0].IO[4117].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4118].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4119].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4120].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4121].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4122].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4123].Data
#define Slave_0_60BA_0_Touchprobepositio ECAT[0].IO[4124].Data
#define Slave_0_60BB_0_Touchprobepositio ECAT[0].IO[4125].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4126].Data
#define Slave_0_6041_0_Statusword ECAT[0].IO[4127].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4128].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4129].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4130].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4131].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4132].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4133].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4134].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4135].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4136].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[4137].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[4138].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[4139].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[4140].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[4141].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4142].Data
#define Slave_0_60FE_1_Digitaloutputs ECAT[0].IO[4143].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4144].Data
#define Slave_0_60B8_0_Touchprobefunctio ECAT[0].IO[4145].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[4146].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[4147].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[4148].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[4149].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[4150].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4151].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4152].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[4153].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[4154].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[4155].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[4156].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[4157].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4158].Data

//Slave 1 Ouput
#define Slave_1_6041_0_Statusword ECAT[0].IO[4159].Data
#define Slave_1_2100_0_Statusword1 ECAT[0].IO[4160].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4161].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4162].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4163].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4164].Data
#define Slave_1_60B9_0_Touchprobestatus ECAT[0].IO[4165].Data
#define Slave_1_60BA_0_Touchprobepositio ECAT[0].IO[4166].Data
#define Slave_1_60BB_0_Touchprobepositio ECAT[0].IO[4167].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4168].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4169].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4170].Data
#define Slave_1_6041_0_Statusword ECAT[0].IO[4171].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4172].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4173].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4174].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4175].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4176].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4177].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4178].Data
#define Slave_1_6041_0_Statusword ECAT[0].IO[4179].Data
#define Slave_1_60B9_0_Touchprobestatus ECAT[0].IO[4180].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4181].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4182].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4183].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4184].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4185].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4186].Data
#define Slave_1_60BA_0_Touchprobepositio ECAT[0].IO[4187].Data
#define Slave_1_60BB_0_Touchprobepositio ECAT[0].IO[4188].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4189].Data
#define Slave_1_6041_0_Statusword ECAT[0].IO[4190].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4191].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4192].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4193].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4194].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4195].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4196].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4197].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4198].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4199].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[4200].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[4201].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[4202].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[4203].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[4204].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[4205].Data
#define Slave_1_60FE_1_Digitaloutputs ECAT[0].IO[4206].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4207].Data
#define Slave_1_60B8_0_Touchprobefunctio ECAT[0].IO[4208].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[4209].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[4210].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[4211].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[4212].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[4213].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[4214].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4215].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[4216].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[4217].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[4218].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[4219].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[4220].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[4221].Data

//Slave 2 Ouput
#define Slave_2_6041_0_Statusword ECAT[0].IO[4222].Data
#define Slave_2_2100_0_Statusword1 ECAT[0].IO[4223].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4224].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4225].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4226].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4227].Data
#define Slave_2_60B9_0_Touchprobestatus ECAT[0].IO[4228].Data
#define Slave_2_60BA_0_Touchprobepositio ECAT[0].IO[4229].Data
#define Slave_2_60BB_0_Touchprobepositio ECAT[0].IO[4230].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4231].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4232].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4233].Data
#define Slave_2_6041_0_Statusword ECAT[0].IO[4234].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4235].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4236].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4237].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4238].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4239].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4240].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4241].Data
#define Slave_2_6041_0_Statusword ECAT[0].IO[4242].Data
#define Slave_2_60B9_0_Touchprobestatus ECAT[0].IO[4243].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4244].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4245].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4246].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4247].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4248].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4249].Data
#define Slave_2_60BA_0_Touchprobepositio ECAT[0].IO[4250].Data
#define Slave_2_60BB_0_Touchprobepositio ECAT[0].IO[4251].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4252].Data
#define Slave_2_6041_0_Statusword ECAT[0].IO[4253].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4254].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4255].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4256].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4257].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4258].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4259].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4260].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4261].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4262].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[4263].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[4264].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[4265].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[4266].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[4267].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[4268].Data
#define Slave_2_60FE_1_Digitaloutputs ECAT[0].IO[4269].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4270].Data
#define Slave_2_60B8_0_Touchprobefunctio ECAT[0].IO[4271].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[4272].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[4273].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[4274].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[4275].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[4276].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[4277].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4278].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[4279].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[4280].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[4281].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[4282].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[4283].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[4284].Data

//Slave 3 Ouput
#define Slave_3_6041_0_Statusword ECAT[0].IO[4285].Data
#define Slave_3_2100_0_Statusword1 ECAT[0].IO[4286].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4287].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4288].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4289].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4290].Data
#define Slave_3_60B9_0_Touchprobestatus ECAT[0].IO[4291].Data
#define Slave_3_60BA_0_Touchprobepositio ECAT[0].IO[4292].Data
#define Slave_3_60BB_0_Touchprobepositio ECAT[0].IO[4293].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4294].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4295].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4296].Data
#define Slave_3_6041_0_Statusword ECAT[0].IO[4297].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4298].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4299].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4300].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4301].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4302].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4303].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4304].Data
#define Slave_3_6041_0_Statusword ECAT[0].IO[4305].Data
#define Slave_3_60B9_0_Touchprobestatus ECAT[0].IO[4306].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4307].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4308].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4309].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4310].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4311].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4312].Data
#define Slave_3_60BA_0_Touchprobepositio ECAT[0].IO[4313].Data
#define Slave_3_60BB_0_Touchprobepositio ECAT[0].IO[4314].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4315].Data
#define Slave_3_6041_0_Statusword ECAT[0].IO[4316].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4317].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4318].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4319].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4320].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4321].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4322].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4323].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4324].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4325].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[4326].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[4327].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[4328].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[4329].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[4330].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[4331].Data
#define Slave_3_60FE_1_Digitaloutputs ECAT[0].IO[4332].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4333].Data
#define Slave_3_60B8_0_Touchprobefunctio ECAT[0].IO[4334].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[4335].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[4336].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[4337].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[4338].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[4339].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[4340].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4341].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[4342].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[4343].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[4344].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[4345].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[4346].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[4347].Data

//Slave 4 Ouput
#define Slave_4_6041_0_Statusword ECAT[0].IO[4348].Data
#define Slave_4_2100_0_Statusword1 ECAT[0].IO[4349].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4350].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4351].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4352].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4353].Data
#define Slave_4_60B9_0_Touchprobestatus ECAT[0].IO[4354].Data
#define Slave_4_60BA_0_Touchprobepositio ECAT[0].IO[4355].Data
#define Slave_4_60BB_0_Touchprobepositio ECAT[0].IO[4356].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4357].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4358].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4359].Data
#define Slave_4_6041_0_Statusword ECAT[0].IO[4360].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4361].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4362].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4363].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4364].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4365].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4366].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4367].Data
#define Slave_4_6041_0_Statusword ECAT[0].IO[4368].Data
#define Slave_4_60B9_0_Touchprobestatus ECAT[0].IO[4369].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4370].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4371].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4372].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4373].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4374].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4375].Data
#define Slave_4_60BA_0_Touchprobepositio ECAT[0].IO[4376].Data
#define Slave_4_60BB_0_Touchprobepositio ECAT[0].IO[4377].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4378].Data
#define Slave_4_6041_0_Statusword ECAT[0].IO[4379].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4380].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4381].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4382].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4383].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4384].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4385].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4386].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4387].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4388].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[4389].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[4390].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[4391].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[4392].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[4393].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[4394].Data
#define Slave_4_60FE_1_Digitaloutputs ECAT[0].IO[4395].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4396].Data
#define Slave_4_60B8_0_Touchprobefunctio ECAT[0].IO[4397].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[4398].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[4399].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[4400].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[4401].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[4402].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[4403].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4404].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[4405].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[4406].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[4407].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[4408].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[4409].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[4410].Data

//Slave 5 Ouput
#define Slave_5_6041_0_Statusword ECAT[0].IO[4411].Data
#define Slave_5_2100_0_Statusword1 ECAT[0].IO[4412].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4413].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4414].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4415].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4416].Data
#define Slave_5_60B9_0_Touchprobestatus ECAT[0].IO[4417].Data
#define Slave_5_60BA_0_Touchprobepositio ECAT[0].IO[4418].Data
#define Slave_5_60BB_0_Touchprobepositio ECAT[0].IO[4419].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4420].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4421].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4422].Data
#define Slave_5_6041_0_Statusword ECAT[0].IO[4423].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4424].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4425].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4426].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4427].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4428].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4429].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4430].Data
#define Slave_5_6041_0_Statusword ECAT[0].IO[4431].Data
#define Slave_5_60B9_0_Touchprobestatus ECAT[0].IO[4432].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4433].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4434].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4435].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4436].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4437].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4438].Data
#define Slave_5_60BA_0_Touchprobepositio ECAT[0].IO[4439].Data
#define Slave_5_60BB_0_Touchprobepositio ECAT[0].IO[4440].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4441].Data
#define Slave_5_6041_0_Statusword ECAT[0].IO[4442].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4443].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4444].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4445].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4446].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4447].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4448].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4449].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4450].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4451].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[4452].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[4453].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[4454].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[4455].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[4456].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[4457].Data
#define Slave_5_60FE_1_Digitaloutputs ECAT[0].IO[4458].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4459].Data
#define Slave_5_60B8_0_Touchprobefunctio ECAT[0].IO[4460].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[4461].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[4462].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[4463].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[4464].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[4465].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[4466].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4467].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[4468].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[4469].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[4470].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[4471].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[4472].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[4473].Data



RE: Token incorrectly repeatly created when "export ethercat variables" - lovu - 11-15-2017

(11-15-2017, 01:01 PM)Eric Hotchkiss Wrote: Once I comment it up, I don't think there are any repeats. It's just that each slave has 2 sections, one for inputs one for outputs.

The last number on each line seems to only increase.

Code:
//Slave 0 Ouput
#define Slave_0_6040_0_Controlword ECAT[0].IO[0].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[1].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[2].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[3].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[5].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[6].Data
#define Slave_0_60B8_0_Touchprobefunctio ECAT[0].IO[7].Data
#define Slave_0_60FE_1_Digitaloutputs ECAT[0].IO[8].Data

//Slave 1 Ouput
#define Slave_1_6040_0_Controlword ECAT[0].IO[9].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[10].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[11].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[12].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[13].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[14].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[15].Data
#define Slave_1_60B8_0_Touchprobefunctio ECAT[0].IO[16].Data
#define Slave_1_60FE_1_Digitaloutputs ECAT[0].IO[17].Data

//Slave 2 Ouput
#define Slave_2_6040_0_Controlword ECAT[0].IO[18].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[19].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[20].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[21].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[22].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[23].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[24].Data
#define Slave_2_60B8_0_Touchprobefunctio ECAT[0].IO[25].Data
#define Slave_2_60FE_1_Digitaloutputs ECAT[0].IO[26].Data

//Slave 3 Ouput
#define Slave_3_6040_0_Controlword ECAT[0].IO[27].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[28].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[29].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[30].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[31].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[32].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[33].Data
#define Slave_3_60B8_0_Touchprobefunctio ECAT[0].IO[34].Data
#define Slave_3_60FE_1_Digitaloutputs ECAT[0].IO[35].Data

//Slave 4 Ouput
#define Slave_4_6040_0_Controlword ECAT[0].IO[36].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[37].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[38].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[39].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[40].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[41].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[42].Data
#define Slave_4_60B8_0_Touchprobefunctio ECAT[0].IO[43].Data
#define Slave_4_60FE_1_Digitaloutputs ECAT[0].IO[44].Data

//Slave 5 Ouput
#define Slave_5_6040_0_Controlword ECAT[0].IO[45].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[46].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[47].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[48].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[49].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[50].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[51].Data
#define Slave_5_60B8_0_Touchprobefunctio ECAT[0].IO[52].Data
#define Slave_5_60FE_1_Digitaloutputs ECAT[0].IO[53].Data

//Slave 0 Input
#define Slave_0_6041_0_Statusword ECAT[0].IO[4096].Data
#define Slave_0_2100_0_Statusword1 ECAT[0].IO[4097].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4098].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4099].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4100].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4101].Data
#define Slave_0_60B9_0_Touchprobestatus ECAT[0].IO[4102].Data
#define Slave_0_60BA_0_Touchprobepositio ECAT[0].IO[4103].Data
#define Slave_0_60BB_0_Touchprobepositio ECAT[0].IO[4104].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4105].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4106].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4107].Data
#define Slave_0_6041_0_Statusword ECAT[0].IO[4108].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4109].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4110].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4111].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4112].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4113].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4114].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4115].Data
#define Slave_0_6041_0_Statusword ECAT[0].IO[4116].Data
#define Slave_0_60B9_0_Touchprobestatus ECAT[0].IO[4117].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4118].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4119].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4120].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4121].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4122].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4123].Data
#define Slave_0_60BA_0_Touchprobepositio ECAT[0].IO[4124].Data
#define Slave_0_60BB_0_Touchprobepositio ECAT[0].IO[4125].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4126].Data
#define Slave_0_6041_0_Statusword ECAT[0].IO[4127].Data
#define Slave_0_6061_0_Modesofoperationd ECAT[0].IO[4128].Data
#define Slave_0_1001_0_Errorregister ECAT[0].IO[4129].Data
#define Slave_0_6064_0_Positionactualval ECAT[0].IO[4130].Data
#define Slave_0_606C_0_Velocityactualval ECAT[0].IO[4131].Data
#define Slave_0_6077_0_Torqueactualvalue ECAT[0].IO[4132].Data
#define Slave_0_60F4_0_Followingerroract ECAT[0].IO[4133].Data
#define Slave_0_60FD_0_Digitalinput ECAT[0].IO[4134].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4135].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4136].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[4137].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[4138].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[4139].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[4140].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[4141].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4142].Data
#define Slave_0_60FE_1_Digitaloutputs ECAT[0].IO[4143].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4144].Data
#define Slave_0_60B8_0_Touchprobefunctio ECAT[0].IO[4145].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[4146].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[4147].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[4148].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[4149].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[4150].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4151].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4152].Data
#define Slave_0_607A_0_Targetposition ECAT[0].IO[4153].Data
#define Slave_0_60FF_0_Targetvelocity ECAT[0].IO[4154].Data
#define Slave_0_6071_0_Targettorque ECAT[0].IO[4155].Data
#define Slave_0_6081_0_Profilevelocity ECAT[0].IO[4156].Data
#define Slave_0_6083_0_Profileaccelerati ECAT[0].IO[4157].Data
#define Slave_0_6084_0_Profiledecelerati ECAT[0].IO[4158].Data

//Slave 1 Ouput
#define Slave_1_6041_0_Statusword ECAT[0].IO[4159].Data
#define Slave_1_2100_0_Statusword1 ECAT[0].IO[4160].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4161].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4162].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4163].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4164].Data
#define Slave_1_60B9_0_Touchprobestatus ECAT[0].IO[4165].Data
#define Slave_1_60BA_0_Touchprobepositio ECAT[0].IO[4166].Data
#define Slave_1_60BB_0_Touchprobepositio ECAT[0].IO[4167].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4168].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4169].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4170].Data
#define Slave_1_6041_0_Statusword ECAT[0].IO[4171].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4172].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4173].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4174].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4175].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4176].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4177].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4178].Data
#define Slave_1_6041_0_Statusword ECAT[0].IO[4179].Data
#define Slave_1_60B9_0_Touchprobestatus ECAT[0].IO[4180].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4181].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4182].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4183].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4184].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4185].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4186].Data
#define Slave_1_60BA_0_Touchprobepositio ECAT[0].IO[4187].Data
#define Slave_1_60BB_0_Touchprobepositio ECAT[0].IO[4188].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4189].Data
#define Slave_1_6041_0_Statusword ECAT[0].IO[4190].Data
#define Slave_1_6061_0_Modesofoperationd ECAT[0].IO[4191].Data
#define Slave_1_1001_0_Errorregister ECAT[0].IO[4192].Data
#define Slave_1_6064_0_Positionactualval ECAT[0].IO[4193].Data
#define Slave_1_606C_0_Velocityactualval ECAT[0].IO[4194].Data
#define Slave_1_6077_0_Torqueactualvalue ECAT[0].IO[4195].Data
#define Slave_1_60F4_0_Followingerroract ECAT[0].IO[4196].Data
#define Slave_1_60FD_0_Digitalinput ECAT[0].IO[4197].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4198].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4199].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[4200].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[4201].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[4202].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[4203].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[4204].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[4205].Data
#define Slave_1_60FE_1_Digitaloutputs ECAT[0].IO[4206].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4207].Data
#define Slave_1_60B8_0_Touchprobefunctio ECAT[0].IO[4208].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[4209].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[4210].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[4211].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[4212].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[4213].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[4214].Data
#define Slave_1_6040_0_Controlword ECAT[0].IO[4215].Data
#define Slave_1_607A_0_Targetposition ECAT[0].IO[4216].Data
#define Slave_1_60FF_0_Targetvelocity ECAT[0].IO[4217].Data
#define Slave_1_6071_0_Targettorque ECAT[0].IO[4218].Data
#define Slave_1_6081_0_Profilevelocity ECAT[0].IO[4219].Data
#define Slave_1_6083_0_Profileaccelerati ECAT[0].IO[4220].Data
#define Slave_1_6084_0_Profiledecelerati ECAT[0].IO[4221].Data

//Slave 2 Ouput
#define Slave_2_6041_0_Statusword ECAT[0].IO[4222].Data
#define Slave_2_2100_0_Statusword1 ECAT[0].IO[4223].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4224].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4225].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4226].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4227].Data
#define Slave_2_60B9_0_Touchprobestatus ECAT[0].IO[4228].Data
#define Slave_2_60BA_0_Touchprobepositio ECAT[0].IO[4229].Data
#define Slave_2_60BB_0_Touchprobepositio ECAT[0].IO[4230].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4231].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4232].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4233].Data
#define Slave_2_6041_0_Statusword ECAT[0].IO[4234].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4235].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4236].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4237].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4238].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4239].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4240].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4241].Data
#define Slave_2_6041_0_Statusword ECAT[0].IO[4242].Data
#define Slave_2_60B9_0_Touchprobestatus ECAT[0].IO[4243].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4244].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4245].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4246].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4247].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4248].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4249].Data
#define Slave_2_60BA_0_Touchprobepositio ECAT[0].IO[4250].Data
#define Slave_2_60BB_0_Touchprobepositio ECAT[0].IO[4251].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4252].Data
#define Slave_2_6041_0_Statusword ECAT[0].IO[4253].Data
#define Slave_2_6061_0_Modesofoperationd ECAT[0].IO[4254].Data
#define Slave_2_1001_0_Errorregister ECAT[0].IO[4255].Data
#define Slave_2_6064_0_Positionactualval ECAT[0].IO[4256].Data
#define Slave_2_606C_0_Velocityactualval ECAT[0].IO[4257].Data
#define Slave_2_6077_0_Torqueactualvalue ECAT[0].IO[4258].Data
#define Slave_2_60F4_0_Followingerroract ECAT[0].IO[4259].Data
#define Slave_2_60FD_0_Digitalinput ECAT[0].IO[4260].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4261].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4262].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[4263].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[4264].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[4265].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[4266].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[4267].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[4268].Data
#define Slave_2_60FE_1_Digitaloutputs ECAT[0].IO[4269].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4270].Data
#define Slave_2_60B8_0_Touchprobefunctio ECAT[0].IO[4271].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[4272].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[4273].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[4274].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[4275].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[4276].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[4277].Data
#define Slave_2_6040_0_Controlword ECAT[0].IO[4278].Data
#define Slave_2_607A_0_Targetposition ECAT[0].IO[4279].Data
#define Slave_2_60FF_0_Targetvelocity ECAT[0].IO[4280].Data
#define Slave_2_6071_0_Targettorque ECAT[0].IO[4281].Data
#define Slave_2_6081_0_Profilevelocity ECAT[0].IO[4282].Data
#define Slave_2_6083_0_Profileaccelerati ECAT[0].IO[4283].Data
#define Slave_2_6084_0_Profiledecelerati ECAT[0].IO[4284].Data

//Slave 3 Ouput
#define Slave_3_6041_0_Statusword ECAT[0].IO[4285].Data
#define Slave_3_2100_0_Statusword1 ECAT[0].IO[4286].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4287].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4288].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4289].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4290].Data
#define Slave_3_60B9_0_Touchprobestatus ECAT[0].IO[4291].Data
#define Slave_3_60BA_0_Touchprobepositio ECAT[0].IO[4292].Data
#define Slave_3_60BB_0_Touchprobepositio ECAT[0].IO[4293].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4294].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4295].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4296].Data
#define Slave_3_6041_0_Statusword ECAT[0].IO[4297].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4298].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4299].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4300].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4301].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4302].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4303].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4304].Data
#define Slave_3_6041_0_Statusword ECAT[0].IO[4305].Data
#define Slave_3_60B9_0_Touchprobestatus ECAT[0].IO[4306].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4307].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4308].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4309].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4310].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4311].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4312].Data
#define Slave_3_60BA_0_Touchprobepositio ECAT[0].IO[4313].Data
#define Slave_3_60BB_0_Touchprobepositio ECAT[0].IO[4314].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4315].Data
#define Slave_3_6041_0_Statusword ECAT[0].IO[4316].Data
#define Slave_3_6061_0_Modesofoperationd ECAT[0].IO[4317].Data
#define Slave_3_1001_0_Errorregister ECAT[0].IO[4318].Data
#define Slave_3_6064_0_Positionactualval ECAT[0].IO[4319].Data
#define Slave_3_606C_0_Velocityactualval ECAT[0].IO[4320].Data
#define Slave_3_6077_0_Torqueactualvalue ECAT[0].IO[4321].Data
#define Slave_3_60F4_0_Followingerroract ECAT[0].IO[4322].Data
#define Slave_3_60FD_0_Digitalinput ECAT[0].IO[4323].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4324].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4325].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[4326].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[4327].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[4328].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[4329].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[4330].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[4331].Data
#define Slave_3_60FE_1_Digitaloutputs ECAT[0].IO[4332].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4333].Data
#define Slave_3_60B8_0_Touchprobefunctio ECAT[0].IO[4334].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[4335].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[4336].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[4337].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[4338].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[4339].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[4340].Data
#define Slave_3_6040_0_Controlword ECAT[0].IO[4341].Data
#define Slave_3_607A_0_Targetposition ECAT[0].IO[4342].Data
#define Slave_3_60FF_0_Targetvelocity ECAT[0].IO[4343].Data
#define Slave_3_6071_0_Targettorque ECAT[0].IO[4344].Data
#define Slave_3_6081_0_Profilevelocity ECAT[0].IO[4345].Data
#define Slave_3_6083_0_Profileaccelerati ECAT[0].IO[4346].Data
#define Slave_3_6084_0_Profiledecelerati ECAT[0].IO[4347].Data

//Slave 4 Ouput
#define Slave_4_6041_0_Statusword ECAT[0].IO[4348].Data
#define Slave_4_2100_0_Statusword1 ECAT[0].IO[4349].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4350].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4351].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4352].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4353].Data
#define Slave_4_60B9_0_Touchprobestatus ECAT[0].IO[4354].Data
#define Slave_4_60BA_0_Touchprobepositio ECAT[0].IO[4355].Data
#define Slave_4_60BB_0_Touchprobepositio ECAT[0].IO[4356].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4357].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4358].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4359].Data
#define Slave_4_6041_0_Statusword ECAT[0].IO[4360].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4361].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4362].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4363].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4364].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4365].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4366].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4367].Data
#define Slave_4_6041_0_Statusword ECAT[0].IO[4368].Data
#define Slave_4_60B9_0_Touchprobestatus ECAT[0].IO[4369].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4370].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4371].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4372].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4373].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4374].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4375].Data
#define Slave_4_60BA_0_Touchprobepositio ECAT[0].IO[4376].Data
#define Slave_4_60BB_0_Touchprobepositio ECAT[0].IO[4377].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4378].Data
#define Slave_4_6041_0_Statusword ECAT[0].IO[4379].Data
#define Slave_4_6061_0_Modesofoperationd ECAT[0].IO[4380].Data
#define Slave_4_1001_0_Errorregister ECAT[0].IO[4381].Data
#define Slave_4_6064_0_Positionactualval ECAT[0].IO[4382].Data
#define Slave_4_606C_0_Velocityactualval ECAT[0].IO[4383].Data
#define Slave_4_6077_0_Torqueactualvalue ECAT[0].IO[4384].Data
#define Slave_4_60F4_0_Followingerroract ECAT[0].IO[4385].Data
#define Slave_4_60FD_0_Digitalinput ECAT[0].IO[4386].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4387].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4388].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[4389].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[4390].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[4391].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[4392].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[4393].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[4394].Data
#define Slave_4_60FE_1_Digitaloutputs ECAT[0].IO[4395].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4396].Data
#define Slave_4_60B8_0_Touchprobefunctio ECAT[0].IO[4397].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[4398].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[4399].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[4400].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[4401].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[4402].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[4403].Data
#define Slave_4_6040_0_Controlword ECAT[0].IO[4404].Data
#define Slave_4_607A_0_Targetposition ECAT[0].IO[4405].Data
#define Slave_4_60FF_0_Targetvelocity ECAT[0].IO[4406].Data
#define Slave_4_6071_0_Targettorque ECAT[0].IO[4407].Data
#define Slave_4_6081_0_Profilevelocity ECAT[0].IO[4408].Data
#define Slave_4_6083_0_Profileaccelerati ECAT[0].IO[4409].Data
#define Slave_4_6084_0_Profiledecelerati ECAT[0].IO[4410].Data

//Slave 5 Ouput
#define Slave_5_6041_0_Statusword ECAT[0].IO[4411].Data
#define Slave_5_2100_0_Statusword1 ECAT[0].IO[4412].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4413].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4414].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4415].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4416].Data
#define Slave_5_60B9_0_Touchprobestatus ECAT[0].IO[4417].Data
#define Slave_5_60BA_0_Touchprobepositio ECAT[0].IO[4418].Data
#define Slave_5_60BB_0_Touchprobepositio ECAT[0].IO[4419].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4420].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4421].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4422].Data
#define Slave_5_6041_0_Statusword ECAT[0].IO[4423].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4424].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4425].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4426].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4427].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4428].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4429].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4430].Data
#define Slave_5_6041_0_Statusword ECAT[0].IO[4431].Data
#define Slave_5_60B9_0_Touchprobestatus ECAT[0].IO[4432].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4433].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4434].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4435].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4436].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4437].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4438].Data
#define Slave_5_60BA_0_Touchprobepositio ECAT[0].IO[4439].Data
#define Slave_5_60BB_0_Touchprobepositio ECAT[0].IO[4440].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4441].Data
#define Slave_5_6041_0_Statusword ECAT[0].IO[4442].Data
#define Slave_5_6061_0_Modesofoperationd ECAT[0].IO[4443].Data
#define Slave_5_1001_0_Errorregister ECAT[0].IO[4444].Data
#define Slave_5_6064_0_Positionactualval ECAT[0].IO[4445].Data
#define Slave_5_606C_0_Velocityactualval ECAT[0].IO[4446].Data
#define Slave_5_6077_0_Torqueactualvalue ECAT[0].IO[4447].Data
#define Slave_5_60F4_0_Followingerroract ECAT[0].IO[4448].Data
#define Slave_5_60FD_0_Digitalinput ECAT[0].IO[4449].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4450].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4451].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[4452].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[4453].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[4454].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[4455].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[4456].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[4457].Data
#define Slave_5_60FE_1_Digitaloutputs ECAT[0].IO[4458].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4459].Data
#define Slave_5_60B8_0_Touchprobefunctio ECAT[0].IO[4460].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[4461].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[4462].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[4463].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[4464].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[4465].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[4466].Data
#define Slave_5_6040_0_Controlword ECAT[0].IO[4467].Data
#define Slave_5_607A_0_Targetposition ECAT[0].IO[4468].Data
#define Slave_5_60FF_0_Targetvelocity ECAT[0].IO[4469].Data
#define Slave_5_6071_0_Targettorque ECAT[0].IO[4470].Data
#define Slave_5_6081_0_Profilevelocity ECAT[0].IO[4471].Data
#define Slave_5_6083_0_Profileaccelerati ECAT[0].IO[4472].Data
#define Slave_5_6084_0_Profiledecelerati ECAT[0].IO[4473].Data

Eric, thank you for your kindly reply.

But what do you mean by that "It's just that each slave has 2 sections"?

I know there are input pdos and output pdos. But if the same token is defined for many different values, which one will it replace when pre-processing?

eg:

//Slave 0 Ouput
#define Slave_0_6040_0_Controlword ECAT[0].IO[0].Data

//Slave 0 Input
#define Slave_0_6040_0_Controlword ECAT[0].IO[4135].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4136].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4144].Data
#define Slave_0_6040_0_Controlword ECAT[0].IO[4152].Data


RE: Token incorrectly repeatly created when "export ethercat variables" - Eric Hotchkiss - 11-15-2017

Oh I see, #define Slave_0_6040_0_Controlword is repeated, even though it's using different ECAT registers. Could you compare the values in ECAT[0].IO[0].Data, ECAT[0].IO[4135].Data and ECAT[0].IO[4136].Data? Like stick them all in the watch window.


RE: Token incorrectly repeatly created when "export ethercat variables" - lovu - 11-16-2017

(11-15-2017, 06:04 PM)Eric Hotchkiss Wrote: Oh I see, #define Slave_0_6040_0_Controlword is repeated, even though it's using different ECAT registers. Could you compare the values in ECAT[0].IO[0].Data, ECAT[0].IO[4135].Data and ECAT[0].IO[4136].Data? Like stick them all in the watch window.

Yes, They are:
Code:
ECAT[0].IO[0].Data
ECAT[0].IO[0].Data=15
ECAT[0].IO[4135].Data
ECAT[0].IO[4135].Data=5175
ECAT[0].IO[4136].Data
ECAT[0].IO[4136].Data=5175
ECAT[0].IO[4144].Data
ECAT[0].IO[4144].Data=5175
ECAT[0].IO[4152].Data
ECAT[0].IO[4152].Data=5175

I just set ECAT[0].Enable=1 and do "#1j/" "#1j=0" in terminal.

It's strange these do not appear on my friend's IDE, but do I...


RE: Token incorrectly repeatly created when "export ethercat variables" - lovu - 11-20-2017

Hello there,

Is there any feedback?


RE: Token incorrectly repeatly created when "export ethercat variables" - steve.milici - 11-20-2017

Please contact the ODT Technical Support Group with the details of the PMAC platform (firmware version) and IDE version:
support@deltatau.com.