[etherlab-users] DC problems
carlos_jimenez at encopim.com
carlos_jimenez at encopim.com
Mon Nov 14 13:55:31 CET 2011
Quoting Andreas Stewering-Bone <ab at igh-essen.com>:
> Hello,
>
> DC is a little bit more difficult than normal io.
>
> First there are some questions:
>
> - Which Realtime Subsystem do you use? (RTAI, Xenomai, Preempt)
RTAI
> - Which CPU do you use?
root at rtai:~/ethercat-default/examples/dc_rtai# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Pentium(R) 4 CPU 2.80GHz
stepping : 9
cpu MHz : 2800.284
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe up
pebs bts cid xtpr
bogomips : 5600.56
clflush size : 64
cache_alignment : 128
address sizes : 36 bits physical, 32 bits virtual
power management:
> - Which NIC driver do you use?
root at rtai:~/ethercat-default/examples/dc_rtai# lspci
...
___01:01.0 Ethernet controller: Intel Corporation 82547GI Gigabit
Ethernet Controller___
02:08.0 Ethernet controller: Intel Corporation 82801EB/ER (ICH5/ICH5R)
integrated LAN Controller (rev 02)
...
root at rtai:~/ethercat-default/examples/dc_rtai# lsmod
Module Size Used by
ec_e1000 92872 0
ec_master 216679 1 ec_e1000
rtai_sem 24011 0
rtai_sched 95259 1 rtai_sem
rtai_hal 64480 2 rtai_sem,rtai_sched
e100 26234 0
> - Which etherlab master version do you use?
root at rtai:~/ethercat-default/examples/dc_rtai# ethercat version
IgH EtherCAT master devel afb40fd6018e
after this commit:
author Florian Pose <fp at igh-essen.com>
Thu Sep 22 16:52:54 2011 +0200 (7 weeks ago)
> - What is your system latency? (RTAI/testsuite)
User latency:
root at rtai:/usr/realtime/testsuite/user/latency# ./run
*
*
* Type ^C to stop this application.
*
*
## RTAI latency calibration tool ##
# period = 100000 (ns)
# average time = 1 (s)
# use the FPU
# start the timer
# timer_mode is oneshot
RTAI Testsuite - USER latency (all data in nanoseconds)
2011/11/14 13:53:08
RTH| lat min| ovl min| lat avg| lat max| ovl max| overruns
RTD| -554| -554| -490| 958| 958| 0
RTD| -559| -559| -492| 1037| 1037| 0
RTD| -554| -559| -480| 196| 1037| 0
RTD| -554| -559| -485| 2673| 2673| 0
RTD| -554| -559| -477| 2582| 2673| 0
RTD| -554| -559| -481| 2629| 2673| 0
RTD| -551| -559| -496| 2442| 2673| 0
RTD| -553| -559| -492| 275| 2673| 0
RTD| -551| -559| -491| 483| 2673| 0
RTD| -551| -559| -494| 291| 2673| 0
RTD| -558| -559| -489| 391| 2673| 0
RTD| -557| -559| -497| 2612| 2673| 0
RTD| -551| -559| -495| 276| 2673| 0
RTD| -551| -559| -494| 2602| 2673| 0
RTD| -551| -559| -495| 2707| 2707| 0
RTD| -551| -559| -497| 388| 2707| 0
RTD| -551| -559| -493| 355| 2707| 0
RTD| -551| -559| -490| 2647| 2707| 0
RTD| -551| -559| -492| 2688| 2707| 0
RTD| -551| -559| -492| 583| 2707| 0
RTD| -557| -559| -495| 463| 2707| 0
> - Which slave do you want to use?
I tried with 4 slaves, EL2004, EL1004, EL3102 and EL4132
>
> About OP State
>
> try to set
>
> ethercat debug 1
>
> and start your application and post the dmesg output.
dmesg#
EtherCAT 0: Master debug level set to 1.
ec_dc_rtai_sample: Starting...
EtherCAT: Requesting master 0...
EtherCAT DEBUG 0: IDLE -> OPERATION.
EtherCAT: Successfully requested master 0.
EtherCAT DEBUG 0: ecrt_master_callbacks(master = f7b82000, lock_cb =
f8d86020, unlock_cb = f8d86000, cb_data = f7b82000)
ec_dc_rtai_sample: Registering domain...
EtherCAT DEBUG 0: ecrt_master_create_domain(master = 0xf7b82000)
EtherCAT DEBUG 0: Created domain 0.
ec_dc_rtai_sample: Configuring PDOs...
EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xf7b82000, alias
= 0, position = 0, vendor_id = 0x00000002, product_code = 0x044d2c52)
EtherCAT DEBUG 0: Creating slave configuration for 0:0, 0x00000002/0x044D2C52.
EtherCAT DEBUG 0 0:0: Attached slave 0.
EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xf7b82000, alias
= 0, position = 1, vendor_id = 0x00000002, product_code = 0x07d43052)
EtherCAT DEBUG 0: Creating slave configuration for 0:1, 0x00000002/0x07D43052.
EtherCAT DEBUG 0 0:1: Attached slave 1.
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdos(sc = 0xf7072000, n_syncs
= 4294967295, syncs = 0xf8d868e0)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_sync_manager(sc = 0xf7072000,
sync_index = 0, dir = 1, watchdog_mode = 0)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_assign_clear(sc =
0xf7072000, sync_index = 0)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_assign_add(sc =
0xf7072000, sync_index = 0, pdo_index = 0x1600)
EtherCAT DEBUG 0 0:1: Loading default mapping for PDO 0x1600.
EtherCAT DEBUG 0 0:1: Found PDO name "Channel 1".
EtherCAT DEBUG 0 0:1: Entry 0x7000:01.
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_clear(sc =
0xf7072000, pdo_index = 0x1600)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_add(sc =
0xf7072000, pdo_index = 0x1600, entry_index = 0x7000, entry_subindex =
0x01, entry_bit_length = 1)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_assign_add(sc =
0xf7072000, sync_index = 0, pdo_index = 0x1601)
EtherCAT DEBUG 0 0:1: Loading default mapping for PDO 0x1601.
EtherCAT DEBUG 0 0:1: Found PDO name "Channel 2".
EtherCAT DEBUG 0 0:1: Entry 0x7010:01.
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_clear(sc =
0xf7072000, pdo_index = 0x1601)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_add(sc =
0xf7072000, pdo_index = 0x1601, entry_index = 0x7010, entry_subindex =
0x02, entry_bit_length = 1)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_assign_add(sc =
0xf7072000, sync_index = 0, pdo_index = 0x1602)
EtherCAT DEBUG 0 0:1: Loading default mapping for PDO 0x1602.
EtherCAT DEBUG 0 0:1: Found PDO name "Channel 3".
EtherCAT DEBUG 0 0:1: Entry 0x7020:01.
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_clear(sc =
0xf7072000, pdo_index = 0x1602)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_add(sc =
0xf7072000, pdo_index = 0x1602, entry_index = 0x7020, entry_subindex =
0x03, entry_bit_length = 1)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_assign_add(sc =
0xf7072000, sync_index = 0, pdo_index = 0x1603)
EtherCAT DEBUG 0 0:1: Loading default mapping for PDO 0x1603.
EtherCAT DEBUG 0 0:1: Found PDO name "Channel 4".
EtherCAT DEBUG 0 0:1: Entry 0x7030:01.
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_clear(sc =
0xf7072000, pdo_index = 0x1603)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_pdo_mapping_add(sc =
0xf7072000, pdo_index = 0x1603, entry_index = 0x7030, entry_subindex =
0x04, entry_bit_length = 1)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_sync_manager(sc = 0xf7072000,
sync_index = 1, dir = 2, watchdog_mode = 0)
ec_dc_rtai_sample: Registering PDO entries...
EtherCAT DEBUG 0: ecrt_domain_reg_pdo_entry_list(domain = 0xf7934f40,
regs = 0xf8d86400)
EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xf7b82000, alias
= 0, position = 1, vendor_id = 0x00000002, product_code = 0x07d43052)
EtherCAT DEBUG 0: Domain 0: Added 1 bytes, total 1.
EtherCAT DEBUG 0 0:1: ecrt_slave_config_reg_pdo_entry(index = 0x7000,
subindex = 0x01, domain = 0, bytepos=0, bitpos=0)
EtherCAT DEBUG 0 0:1: ecrt_slave_config_dc(sc = 0xf7072000,
assign_activate = 0x0700, sync0_cycle = 1000000, sync0_shift = 440000,
sync1_cycle = 0, sync1_shift = 0
ec_dc_rtai_sample: Activating master...
EtherCAT DEBUG 0: ecrt_master_activate(master = 0xf7b82000)
EtherCAT 0: Domain0: Logical address 0x00000000, 1 byte, expected
working counter 1.
EtherCAT 0: Datagram domain0-0: Logical offset 0x00000000, 1 byte, type LWR.
EtherCAT DEBUG 0: Stopping master thread.
EtherCAT DEBUG 0: Master IDLE thread exiting...
EtherCAT 0: Master thread exited.
EtherCAT DEBUG 0: FSM datagram is f7b823f4.
EtherCAT 0: Starting EtherCAT-OP thread.
ec_dc_rtai_sample: Starting cyclic sample thread...
ec_dc_rtai_sample: RT timer started with 8333/8334 ticks.
ec_dc_rtai_sample: Initialized.
EtherCAT DEBUG 0: Operation thread running with fsm interval = 4000
us, max data size=45000
EtherCAT WARNING 0: 1 datagram UNMATCHED!
ec_dc_rtai_sample: 5 slave(s).
ec_dc_rtai_sample: AL states: 0x02.
ec_dc_rtai_sample: Link is up.
EtherCAT DEBUG 0: Set application start time = 374589987757929000
EtherCAT DEBUG 0: Configuration changed (aborting state check).
EtherCAT DEBUG 0: Writing system time offsets...
ec_dc_rtai_sample: Stopping...
EtherCAT 0: Releasing master...
EtherCAT DEBUG 0: ecrt_master_deactivate(master = 0xf7b82000)
EtherCAT DEBUG 0: Stopping master thread.
EtherCAT DEBUG 0: Master OP thread exiting...
EtherCAT 0: Master thread exited.
EtherCAT 0: Starting EtherCAT-IDLE thread.
EtherCAT DEBUG 0: OPERATION -> IDLE.
EtherCAT 0: Released.
ec_dc_rtai_sample: Unloading.
EtherCAT DEBUG 0: Idle thread running with send interval = 4000 us,
max data size=45000
EtherCAT DEBUG 0: UNMATCHED datagram:
EtherCAT DEBUG: 0B CC 00 00 00 00 01 00 00 00 06 00 00
EtherCAT 0: Master debug level set to 0.
Thank you for your response!
--
Carlos Jiménez
ENCOPIM S.L.
C/. del Parc 5 (nau 13), P.I. Els Pinetons
E-08291 RIPOLLET (Barcelona)
Tel: (+34) 935 94 23 47
Fax: (+34) 935 94 64 15
==========================================================
La información contenida en la presente transmisión es confidencial y su
uso únicamente está permitido a su(s) destinatario(s). Si Ud. no es la
persona destinataria de la presente transmisión, rogamos nos lo
comunique de manera inmediata por teléfono (+34 935 942 347) y destruya
cualquier copia de la misma (tanto digitales como en papel).
The information contained in this transmission is confidential and is
intended only for the use of the addressee(s). If you are not the
designated recipient of this transmission, please advise us immediately
by telephone (+34 935 942 347) and destroy any copies (digital and
paper).
==========================================================
More information about the Etherlab-users
mailing list