Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
EtherCAT "Communications Device" Setup

I am using an EtherCAT communications device EL 6022, and I am having some difficulties. I can manage to get the device into OP, however when I map the PDO's (which I have to do manually) They do not effect the device.

I am using the IDE,because of its EtherLAB functionality, required by my PMAC 465

My version says "EtherCAT IO Devices Licences Only" is this the problem, as I am using a communications device, however I have used EtherCAT with Amplifiers before?

ECAT[i].Slave[j].PDOMapping[m].PDOCount should this be the number of pdos in the 0x1604 register or the number of pdos I have mapped in the delta tau?

When I set and ECAT[].IO[].data I can correlate this with some data in the "system ethercat -px data|hexdump" however this does not effect the PDO inside the slave. I can check if the PDO(inside the slave) is set by checking it's corresponding read only SDO.

Has anyone set up a communication device, especially EL6xxx before?

Here is the mapping I perform
ECAT[0].Slave[1].PDO[256].index =$7000
ECAT[0].Slave[1].PDO[256].subindex =1
ECAT[0].Slave[1].PDO[256].BitLength =16
ECAT[0].Slave[1].PDO[256].input = 0
ECAT[0].Slave[1].PDO[257].bitlength = 0

ECAT[0].Slave[1].PDOMapping[128].Index = $1604
ECAT[0].Slave[1].PDOMapping[128].PDOCount = 1
ECAT[0].Slave[1].PDOMapping[128].pPDO = ECAT[0].Slave[1].PDO[256].a
ECAT[0].Slave[1].PDOMapping[129].Index = 0
ECAT[0].Slave[1].PDOMapping[129].PDOCount = 0
ECAT[0].Slave[1].PDOMapping[129].pPDO = 0

ECAT[0].Slave[1].SyncManager[0].Index = 2
ECAT[0].Slave[1].SyncManager[0].dir = 1
ECAT[0].Slave[1].SyncManager[0].PDOMappingCount = 1
ECAT[0].Slave[1].SyncManager[0].watchdogmode = 0
ECAT[0].Slave[1].SyncManager[0].pPDOMapping = ECAT[0].Slave[1].PDOMapping[128].a

ECAT[0].IO[0].Slave = 1
ECAT[0].IO[0].index = ECAT[0].Slave[1].PDO[256].index
ECAT[0].IO[0].subindex = ECAT[0].Slave[1].PDO[256].subindex
ECAT[0].IO[0].Bitlength = ECAT[0].Slave[1].PDO[256].BitLength
ECAT[0].IO[0].Input = 0
ECAT[0].IO[0].Type = 8
ecat ionamewr 0 0

Attached Files Image(s)
You shouldn't have to write to those structures manually. I'm confused as to why you don't see an "is fixed?" column, but have you tried clicking on the x7000 row highlighted in blue in your picture and then clicking the "Add New PDOs" button in the bottom left? It should have a gui to walk you through adding the PDOs to the mapping, assuming it is set up as not fixed by the manufacturer.

And since you are having to add PDOs manually, are you sure you have the most up to date ESI file?

Forum Jump:

Users browsing this thread: 1 Guest(s)