andyf Posted October 18, 2012 Posted October 18, 2012 I am trying to use ecatsdo command in the terminal. I can read an SDO just fine, but when I try to write it fails. If I ssh to the PMAC and use the etherlab utility (/opt/etherlab/bin/ethercat) I and write just fine. Screenshot 1 shows terminal window ecatsdo read OK, but write fails Screenshot 2 shows etherlab working for both read and write Any ideas why ecatsdo might not be working? Is there a log somewhere I can look at?
teaguehall Posted May 24, 2018 Posted May 24, 2018 Curious about this topic as well. I can use the "ethercat download" command just find, however, trying to write an SDO using the ecatsdo function fails. My guess is it has something to do with permissions since the SDO index I'm writng to indicates it is rwr-r-
cmcdonald Posted May 25, 2018 Posted May 25, 2018 Try disabling the ethercat. Then try the commands. Ecat[0].enable=0 I had the same thing. I had to use the ecatTypedSDO instead. Chris
orhirshfeld Posted March 3, 2019 Posted March 3, 2019 My EtherCAT slave is working well with my IPC MotionCore but i'm trying to get data on slave using SDO i tried the following in terminal and watch list "L0=ecattypedsdo(0,3,1,$6060,0,0,1) L0" and got "-nan" than i tried to get data using /opt/etherlab/bin/ethercat but got an error as following: " root@192.168.0.136:/opt/etherlab/bin# ethercat upload -m 0 -p 2 -t int8 0x6060 1 -bash: /opt/etherlab/bin/ethercat: cannot execute binary file: Exec format error " Slave num 2 and 3 are MackTron motors by Axor and working well with CSP mode. It's PowerPmac IPC MotionCore with Sys.EcatType=1 (Actonics) I tried when ECAT[0].enable=1 (enable) and also when ECAT[0].enable=0 (disable) EDIT: By checking the EtherCAT file info, I found out it was built for 32bit ARM CPU but the IPC MotionCore running Intel x86_64 CPU with OS Ubuntu i686 (32bit) is it affecting the watch window command ecattypedsdo? I believe that I should get a different build of this executable, how should I do it? I checked the executable info as following: " root@192.168.0.136:/opt/etherlab/bin# file ./ethercat ./ethercat: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[sha1]=9caa83c5c319dcc87a78e1f31b56584283f604b8, not stripped " and also checked the CPU model and OS version as following: " root@192.168.0.136:/opt/etherlab/bin# cat /proc/cpuinfo | grep 'model name' | uniq model name : Intel® Core i7-4700EQ CPU @ 2.40GHz root@192.168.0.136:/opt/etherlab/bin# uname -a Linux lx-ppmac 4.1.18-xenomai-2.6.5 #9 SMP Tue Oct 10 12:20:19 PDT 2017 i686 i686 i686 GNU/Linux " EDIT 2 : * I tried in OP and PRE-OP modes and got the same results * I tried also reading SDO from Pneumatic Outputs, Festo CTEU module, and got the same results I am trying to use ecatsdo command in the terminal. I can read an SDO just fine, but when I try to write it fails. If I ssh to the PMAC and use the etherlab utility (/opt/etherlab/bin/ethercat) I and write just fine. Screenshot 1 shows terminal window ecatsdo read OK, but write fails Screenshot 2 shows etherlab working for both read and write Any ideas why ecatsdo might not be working? Is there a log somewhere I can look at?
Omron Forums Support Posted March 6, 2019 Posted March 6, 2019 What firmware version is this? I am able to use ecattypedsdo successfully to read/write $6060 on a 1S, from an IPC with firmware 2.2.0.1.
orhirshfeld Posted March 10, 2019 Posted March 10, 2019 Firmware version in IDE terminal: "vers 2.5.0.0" OS version in SSH terminal: "Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.1.18-xenomai-2.6.5 i686)"
orhirshfeld Posted March 20, 2019 Posted March 20, 2019 I suddenly succeed in getting some SDO information until I mistype an address and it stops working, I attached a picture to illustrate it returned the following msg: " Error: BgThread sem_timedwait(emIoctlFinish_sem) timed out " I notice a suspicious configuration in my EtherCAT Configuration in Slave configuration -> Advanced Option -> SDO Access is set to 0, what does it mean that, is timeout disabled? or access to SDO is disabled? What firmware version is this? I am able to use ecattypedsdo successfully to read/write $6060 on a 1S, from an IPC with firmware 2.2.0.1.
orhirshfeld Posted March 25, 2019 Posted March 25, 2019 I switched the master to diagnosis mode and was able to view the SDO But I still have the issue to get this data when it's not in diagnosis mode
Omron Forums Support Posted March 27, 2019 Posted March 27, 2019 I am not able to duplicate this issue. Every time I try to read an SDO from a garbage address, I can immediately read from good adresses again aftwerwards. Maybe it is specific to this ethercat slave. You should be able to recover from this state by issueing "ecat reset" in the terminal. As for the SDO access timeout, this is the time after we send out an SDO that we wait for a response. With a value of 0, the EC engineer shows that this uses the master default value. I have been having trouble getting the actual value.
Recommended Posts