Delta Tau Forums

Full Version: Token incorrectly repeatly created when "export ethercat variables"
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
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 ?
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
(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
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.
(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...
Hello there,

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