Hello Henry,

for drives there are some points you have to look for:
- Does the drive require DC?
- Does the DC sync well?
   If not the slave will get into Safeop+Err State
- Does the master has good realtime behavior?
If not you will get Mailbox Error and you are not able to get the drive working

Normally the Master steps into SafeOP to check if the drive is DC sync. if it syncs it goes to OP.

Greatings

Andreas


Henry Bausley schrieb:

When attempting to use the latest Yaskawa drive I cannot get PDO's to update with valid data I just get 0s as the slave stays in preop after calling ecrt_master_activate.

Is there away to make the master goes through SafeOP? I didn't see the what to use in the API. According to Yaskawa the SafeOp state is required see the correspondence below:

Also should the Yaskawa interface have SafeOp set in the SII? When I do a ethercat slaves -v it comes back with Enable SafeOp: no

Below is the correspondence with Yaskawa where they tell me SafeOp is required.

I placed the debugging logs at the end of this email.

_______________________________________________________________________________

Hi Henry,

This could indicate that the drive is not yet in OP mode. One way to verify is to check if the RUN LED is solid green. If it's not solid green, it's not in OP mode, so no PDO data is exchanged. The drive can send SDO data in certain modes other than OP mode, so being able to read SDO information is not a good indicator of the drive's mode.

As for bringing the drive to OP mode, our manual shows the ECAT State Machine. Be sure to follow this state machine. There is no way to jump from Pre-OP to OP mode without first going through Safe-OP. Perhaps that is what your master is trying to do? You might be able to verify this by reading a wireshark trace.



Derek Lee
Motion Product Engineer
Yaskawa America Inc.
2121 Norman Dr. S.
Waukegan, IL 60085

Phone: 847-887-7235
Fax: 847-887-7280


*Henry Bausley <[email protected]>*

09/29/2010 04:06 PM


        
To
        [email protected]
cc
        
Subject
        Re: Fw: Ethercat Module



        



Thank you for sending another drive it arrived at my desk this morning.

I do have a question for the developers. What would cause 0's to always be sent for the Process Data communication? If I read objects of the Service Dictionary Object via mailbox communication I can read index=$6064 subindex=0 and I get the encoder position. However if I use the default PDO mapping 0 is always returned for objects $6064 and $6041. In addition I cannot set the output objects $607a and $6040
  they always get overwritten to 0.

Is there a special sequence I need to perform to make cyclic Process data communication possible?

_____________________________________________________________________________________

EtherCAT: Master driver devel unknown
EtherCAT: 1 master waiting for devices.
ec_r8169 Gigabit Ethernet driver 2.3LK-NAPI loaded
ec_r8169 0000:81:00.0: no MSI. Back to INTx.
EtherCAT: Accepting device 00:0A:CD:17:F3:7D for master 0.
ec0: RTL8168b/8111b at 0xb91f8000, 00:0a:cd:17:f3:7d, XID 38000000 IRQ 18
EtherCAT 0: Starting EtherCAT-IDLE thread.
EtherCAT 0: Link state changed to UP.
EtherCAT 0: 1 slave(s) responding.
EtherCAT 0: Slave states: PREOP.
EtherCAT 0: Scanning bus.
EtherCAT 0: Bus scanning completed in 9 ms.
EtherCAT ERROR 0-0: Corrupt mailbox response received!
EtherCAT DEBUG: 8F 00 01 00 00 63 00 80 04 00 00 00 01 10 05 00
EtherCAT DEBUG: 00 07 45 72 72 6F 72 20 52 65 67 69 73 74 65 72
EtherCAT DEBUG: 65 60 9A 60 B1 60 B2 60 B8 60 B9 60 BA 60 BC 60
EtherCAT DEBUG: C1 60 C2 60 E0 60 E1 60 F4 60 FC 60 FD 60 FE 60
EtherCAT DEBUG: FF 60 02 65 03 27 10 27 20 27 E0 27 3F 60 40 60
EtherCAT DEBUG: 41 60 5A 60 5B 60 5C 60 5D 60 5E 60 60 60 61 60
EtherCAT DEBUG: 62 60 63 60 64 60 65 60 66 60 67 60 68 60 6B 60
EtherCAT DEBUG: 6C 60 6D 60 6E 60 71 60 72 60 74 60 76 60 77 60
EtherCAT 0: Master debug level set to 1.
EtherCAT: Requesting master 0...
EtherCAT DEBUG 0: IDLE -> OPERATION.
EtherCAT: Successfully requested master 0.
EtherCAT DEBUG 0: ecrt_master_callbacks(master = 0xaf33f000, send_cb = 0xb917963c, receive_cb = 0xb91795c4, cb_data = 0xaf33f000)
EtherCAT DEBUG 0: ecrt_master_create_domain(master = 0xaf33f000)
EtherCAT DEBUG 0: Created domain 0.
EtherCAT DEBUG 0: ecrt_master_create_domain(master = 0xaf33f000)
EtherCAT DEBUG 0: Created domain 1.
EtherCAT DEBUG 0: ecrt_master_create_domain(master = 0xaf33f000)
EtherCAT DEBUG 0: Created domain 2.
EtherCAT DEBUG 0: ecrt_master_create_domain(master = 0xaf33f000)
EtherCAT DEBUG 0: Created domain 3.
EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xaf33f000, alias = 64, position = 0, vendor_id = 0x00000539, product_code = 0x02200001) EtherCAT DEBUG 0: Creating slave configuration for 64:0, 0x00000539/0x02200001.
EtherCAT DEBUG 0 64:0: Attached slave 0.
Configure n_pdos 0
EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdos(sc = 0xaf0e4000, n_syncs = 2, syncs = 0xbcee87e0) EtherCAT DEBUG 0 64:0: ecrt_slave_config_sync_manager(sc = 0xaf0e4000, sync_index = 2, dir = 1, watchdog_mode = 0) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_assign_clear(sc = 0xaf0e4000, sync_index = 2) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_assign_add(sc = 0xaf0e4000, sync_index = 2, pdo_index = 0x1601)
EtherCAT DEBUG 0 64:0: Loading default mapping for PDO 0x1601.
EtherCAT DEBUG 0 64:0: Entry 0x6040:00.
EtherCAT DEBUG 0 64:0: Entry 0x607A:00.
EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_mapping_clear(sc = 0xaf0e4000, pdo_index = 0x1601) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_mapping_add(sc = 0xaf0e4000, pdo_index = 0x1601, entry_index = 0x6040, entry_subindex = 0x00, entry_bit_length = 16) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_mapping_add(sc = 0xaf0e4000, pdo_index = 0x1601, entry_index = 0x607A, entry_subindex = 0x00, entry_bit_length = 32) EtherCAT DEBUG 0 64:0: ecrt_slave_config_sync_manager(sc = 0xaf0e4000, sync_index = 3, dir = 2, watchdog_mode = 0) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_assign_clear(sc = 0xaf0e4000, sync_index = 3) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_assign_add(sc = 0xaf0e4000, sync_index = 3, pdo_index = 0x1A01)
EtherCAT DEBUG 0 64:0: Loading default mapping for PDO 0x1A01.
EtherCAT DEBUG 0 64:0: Entry 0x6041:00.
EtherCAT DEBUG 0 64:0: Entry 0x6064:00.
EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_mapping_clear(sc = 0xaf0e4000, pdo_index = 0x1A01) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_mapping_add(sc = 0xaf0e4000, pdo_index = 0x1A01, entry_index = 0x6041, entry_subindex = 0x00, entry_bit_length = 16) EtherCAT DEBUG 0 64:0: ecrt_slave_config_pdo_mapping_add(sc = 0xaf0e4000, pdo_index = 0x1A01, entry_index = 0x6064, entry_subindex = 0x00, entry_bit_length = 32)
Configure PDOs on SM2.
EtherCAT DEBUG 0: ecrt_domain_reg_pdo_entry_list(domain = 0xaf3ca640, regs = 0xbcf7b50c) EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xaf33f000, alias = 64, position = 0, vendor_id = 0x00000539, product_code = 0x02200001) EtherCAT DEBUG 0 64:0: ecrt_slave_config_reg_pdo_entry(sc = 0xaf0e4000, index = 0x6041, subindex = 0x00, domain = 0xaf3ca640, bit_position = 0xbcf6b560)
EtherCAT DEBUG 0: Domain 0: Added 6 bytes, total 6.
EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xaf33f000, alias = 64, position = 0, vendor_id = 0x00000539, product_code = 0x02200001) EtherCAT DEBUG 0 64:0: ecrt_slave_config_reg_pdo_entry(sc = 0xaf0e4000, index = 0x6064, subindex = 0x00, domain = 0xaf3ca640, bit_position = 0xbcf6b580) EtherCAT DEBUG 0: ecrt_domain_reg_pdo_entry_list(domain = 0xaf3ca740, regs = 0xbcf8750c) EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xaf33f000, alias = 64, position = 0, vendor_id = 0x00000539, product_code = 0x02200001) EtherCAT DEBUG 0 64:0: ecrt_slave_config_reg_pdo_entry(sc = 0xaf0e4000, index = 0x6040, subindex = 0x00, domain = 0xaf3ca740, bit_position = 0xbcf6b520)
EtherCAT DEBUG 0: Domain 1: Added 6 bytes, total 6.
EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xaf33f000, alias = 64, position = 0, vendor_id = 0x00000539, product_code = 0x02200001) EtherCAT DEBUG 0 64:0: ecrt_slave_config_reg_pdo_entry(sc = 0xaf0e4000, index = 0x607A, subindex = 0x00, domain = 0xaf3ca740, bit_position = 0xbcf6b540) EtherCAT DEBUG 0: ecrt_domain_reg_pdo_entry_list(domain = 0xaf3ca600, regs = 0xbcfa3510) EtherCAT DEBUG 0: ecrt_domain_reg_pdo_entry_list(domain = 0xaf3caf80, regs = 0xbcfaf510)
EtherCAT DEBUG 0: ecrt_master_activate(master = 0xaf33f000)
EtherCAT 0: Domain0: Logical address 0x00000000, 6 byte, expected working counter 1. EtherCAT 0: Datagram domain0-0: Logical offset 0x00000000, 6 byte, type LRD. EtherCAT 0: Domain1: Logical address 0x00000006, 6 byte, expected working counter 1. EtherCAT 0: Datagram domain1-6: Logical offset 0x00000006, 6 byte, type LWR. EtherCAT 0: Domain2: Logical address 0x0000000c, 0 byte, expected working counter 0. EtherCAT 0: Domain3: Logical address 0x0000000c, 0 byte, expected working counter 0.
EtherCAT DEBUG 0: Stopping master thread.
EtherCAT DEBUG 0: Master IDLE thread exiting...
EtherCAT 0: Master thread exited.
EtherCAT DEBUG 0: FSM datagram is af33f3e4.
EtherCAT 0: Starting EtherCAT-OP thread.
EtherCAT DEBUG 0: Operation thread running with fsm interval = 1000 us, max data size=11250
[email protected]:/opt/ppmac#




------------------------------------------------------------------------

_______________________________________________
etherlab-users mailing list
[email protected]
http://lists.etherlab.org/mailman/listinfo/etherlab-users


--

------------------------------------------------------------------------

Dipl.-Ing. Andreas Stewering-Bone Amtsgericht Essen HRB 11500 Ingenieurgemeinschaft IgH USt-Id.-Nr.: DE 174 626 722 Gesellschaft für Ingenieurleistungen mbH Geschäftsführung: Heinz-Bäcker-Str. 34 Dr.-Ing. S. Rotthäuser D-45356 Essen Dr.-Ing. T. Finke Tel.: +49 201 / 360-14-15 Dr.-Ing. W. Hagemeister Fax.: +49 201 / 360-14-14 Tel.: +49 201 / 360-14-0 [email protected] http://www.igh-essen.com
------------------------------------------------------------------------

_______________________________________________
etherlab-users mailing list
[email protected]
http://lists.etherlab.org/mailman/listinfo/etherlab-users

Reply via email to