Jump to content
OMRON Forums

hbausley

Members
  • Posts

    90
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by hbausley

  1. Startup scripts are located in /.readonly/etc/init.d The logger is /.readonly/etc/init.d/rsyslog We reduced the number of startup scripts to reduce bootup time. However, there is no reason you cannot start them yourself whenever you want, or modify the bootup startup scripts. To start it yourself do /etc/init.d/rsyslog start To stop it yourself do /etc/init.d/rsyslog stop To have it automatically start on boot make a symbolic link in the /.readonly/etc/rc2.d folder to rsyslog For example: mount -o remount,rw / cd /.readonly/etc/rc2.d ln -s ../init.d/rsyslog S11rsyslog mount -o remount,ro / The way debian linux startup scripts works is if there is a filename in the /etc/rc2.d folder starting with S it automatically calls that script with the start parameter after it. If there is a K at the beginning of the filename it automatically calls the script with the stop parameter. The startup order is determined by the number after the S. The numbers need not be in sequence but the startup sequence relative to other S## is determined by the value of the number. This rule applies to the folders /etc/rcS , /etc/rc0.d, rc1.d .. rc6.d. Go to http://en.wikipedia.org/wiki/Runlevel for some basics if you want to know about administering your system.
  2. DC's will use either the user specified dcrefslave (if found and compatible) or the first compatible slave (if user dcrefslave not specified or not found or compatible). We will trap bogus slave numbers in the future to avoid confusion. Also dcrefslave only has an effect when you change ecat[].enable is transitioned from 0 to 1 changing it on the fly will do nothing
  3. Sorry, there is no way to send a standard ascii stream over the Turbo PMAC's ethernet port. There is a small limited micro controller that handles ethernet on that product that was designed to simulate the prevalent interfaces (ie. ISA) at the time it was created more than a decade ago.
  4. The digital and analog I/O modules ie. EL1xxx,EL2xxx,EL3xxx,EL4xxx have built in mappings. The PDO Mapping and SyncManagers are already configured in the device therefore no configuration is necessary to map the I/O and it will work. The software attempts to setup the structures to match the devices configuration for consistency.
  5. You must have an Acc24E3[].phaseServoDir=0. An Acc24E3 cannot get its clock from the ethercat network, this is not physically possible as the CPU cannot generate interrupts to the Acc24E3. What happens is the ethercat alters the rate at which the Acc24E3 generates interrupts so that our phase and servo interrupts are synchronous to the ethercat reference slave. As a time difference is detected Acc24E[].PhaseServoClockCtrl is modified to stay synchronous to the ethercat reference slave. You should see it occasionally change in the watch window. To if you are staying synchronous check the value of ecat[0].dcclockdiff. If it is not steadily growing or reducing distributed clocks is working. If the terminal reports ecat[0].dcrefslave=8 then it is using slave 8 as the reference clock. We have not tested most of the EL6xxx special devices. We will have to order an EL6688 and test it with our controller to see what is required to for setting up the application time.
  6. We will have a new version posted within a week.
  7. Yes in theory the EtherCat network is very fast. In practice I have not seen an amplifier which is able implement that speed on EtherCat. Check out this document from Yaskawa about their Sigma 5 amplifier with the EtherCat option. http://www.yaskawa.com/site/dmservo.nsf/536df907f9fe9d5586256c4e0056b851/86256ec30069fdef8625771a006b3d92/$FILE/FL.SGDV-EC.01.pdf Sigma-5 with Real-Time Ethernet Communication Ethernet for Control Automation Technology System Performance • 1.6kHz velocity loop bandwidth delivers increased machine throughput by slashing settling time As I stated i don't understand why but every EtherCat amplifier I looked at ended up at this same sub 2kHz bandwidth. If you know of a 10kHz amplifier and motor combo on EtherCat please share I would enjoy working with it. The bandwidth limitations are determined by the slaves processing power. For instance in the lab we used one amplifier in torque mode at 16kHz over EtherCAT. However, that amplifier can only operate at 16kHz with quadrature encoders. If other types of feedback are that require more processing by the slave the maximum rate decreases down to 4kHz.
  8. I tested a few different EtherCat amplifier and I also looked at some PowerLink amplifiers. They can close the servo loop quickly inside the amplifier itself if you are able to wire the feedback to the amp. This allows for the much faster servo rates at the amplifier. But if you need to coordinate though the motion controller the rate is about 2kHz. The closest i got to an answer as to why is that PowerLink can't process data faster then 2kHz. The recommendation I received was to wire an encoder input to the amplifier and allow the amplifier to close the servo loop internally to solve this issue. To sync two servos faster then 2kHz on PowerLink it is recommend that you use an encoder output from one amp wired to the encoder input of the other amp. This can lead to some tricky issues with a secondary encoder or high speed vector locking. Both EtherCat and PowerLink run on standard Ethernet hardware. PowerLink have some hardware requirements but basically it is standard cat 6 Ethernet. I am speculating the underlaying issue is the current ethernet hardware as both EtherCat and PowerLink seem to have the same limitation. EtherCAT is not really standard ethernet hardware. It only uses standard hardware for the master. Slaves have a special ASIC or FPGA that extracts process data and inserts data on the fly so that the network is realtime and data doesn't stop at every slave. The Master which does use a standard ethernet adapter does have the responsibility of reading all the slaves and writing back to all of the slaves. This is the only time the ethercat packet slows down.
  9. You are correct the ethernet chipset on the PMAC460CPU is not compatible with the EtherCAT library and the external one is compatible. Yes, we are considering making one of two the ethercat ports on the main cpu board compatible in the future.
  10. SHansen was on the right track. We added the call below to your example and it sleeps. param.__sched_priority = 1; pthread_setschedparam(pthread_self(), SCHED_FIFO, &param); nanosleep is reserved to xenomai threads. The rtos was compiled without the option that causes the main thread to be a xenomai thread. We recompiled the rtos with this option. We will post a powerpmac.deb version 1.5.4.0 with that option restored so it works without pthread_setschedparam as it did previously. As a rule for realtime code use nanosleep and for generic non realtime code use sleep or usleep.
  11. Currently there is no solution other than a custom makefile. We will enter this into our bug reporting system,
  12. The data I send was “OPEN PROG 1 CLEAR<00>Q1=Q1+1<00>CLOSE<00>”where <00> indicated ASCII 0. If using "carrage return+linefeed" sequence, downloading error would happen. Is there something I left out during downloading such as compiling or other procedure? The errors I found were literal, among them were some questions. Page 3 (1)Second line---->What did ^X mean? (2)17th line---- There is no definition of FLUSH_TIMEOUT Page 4 (1)Controdiction:29th line EthCmd.RequestType = VR_UPLOAD; 36th EthCmd.RequestType = VR_DOWNLOAD; (2)Next-to-last line: Function “send” and “recv” did not use “outstr”! What was the role of “outstr” played in the example? Page 5 (1)10th line: EthCmd.RequestType=VR_UPLOAD; EthCmd.Request = VR_PMAC_GETBUFFER; 18th line: EthCmd.RequestType = VR_DOWNLOAD; EthCmd.Request = VR_PMAC_GETLINE; (2)22th line:What was the role of “outstr”? Page 6 (1)In VR_PMAC_PORT, what was the meaning of “offset” and “outch”? I recommend you download the program at the following link it is great for helping debug your program. http://hercules-setup.findmysoft.com/# Below is an example screen shot of correctly sent data. You can print your data as hex variables before your send command to find the problem and compare it to what is in hercules. The first line is a get response of I10. The second command is a write buffer command. And the third is a getresponse of list plc 1 which returns the plc we wrote. Regarding the manual ambiguities ^X stands for Control-X which is hex value 0x18 EthCmd.wValue for VR_PMAC_FLUSH is irrelevant so you can set FLUSH_TIMEOUT to 0. VR_PMAC_GETBUFFER and VR_PMAC_GETLINE should have been documented to use VR_UPLOAD for the requests however either would work. In addition, neither one of these really use outstr so EthCmd.wLength should be 0. It appears to be a cut and paste mistake from copying GetResponse. For VR_PMAC_PORT offset is the offset from the DSP base host port and outchar is the data to write into the port. You should have no reason to ever use this command.
  13. Yes we have added the ability to synchronize to an external slave. ecat[0].dcrefslave will do this. You set this to the slave number you want the distributed clocks to use as the reference slave. We have not done this with the EL6688 but with amplifiers. The other parameters associated with this are A.) ECAT[0].DCRefBand This is how many nsec out of sync before a correction to the PowerPMAC phase interrupt rate will be made in order to stay in sync with the reference slave. 10000 is usually a good value for this. B.) ECAT[0].DCRefPlus How much to increase the phase interrupt rate if the clock drift of the master is greater than positive ECAT[0].DCRefBand. Usually 2 is a good value for this C.) ECAT[0].DCRefMinus=2 How much to decrease the phase interrupt rate if if the clock drift of the master is greater than -ECAT[0].DCRefBand. Usually 2 is a good value for this D.) ECAT[0].DCClockDiff The drift between the master and slave can be monitored with in the watch window. If the distributed clocks are setup correctly the ECAT[0].DCClockDiff should stay not deviate more than +/- ECAT[0].DCRefBand Regarding your previous question on redundancy we should have this feature verified in our Q1/Q2 2013 release.
  14. 1.There is no certification test for a master or at least there wasn't the last time we checked. However, Delta Tau is a regular participant at the EtherCAT North America plugfest to help insure interoperability with various slave modules, both I/O and drives. In addition, many drives are kept at Delta Tau's facility from various manufactures for testing. 2. Currently there are no Delta Tau slave modules available at this time. We do not currently have a target date for delivery of any. 3. Redundancy is not currently available.
  15. Go to this forum link. http://forums.deltatau.com/showthread.php?tid=57 In the zip file in the pmaceth/src folder is a functioning getresponse. Don't worry that the title is Linux Driver and Comm for Turbo PMAC.zip because ethernet socket communication is very portable.
  16. I think you are moving the pointer around instead of just putting data into it. Should recv(sock,(char*)&instr,1400,0); be recv(sock,(char*)instr,1400,0); ?
  17. No it is not. The resulting ECAT.IO structure is not continuous. ECAT[master].IOcount dictates how many I/O you want serviced.
  18. Recently a customer had problems building projects with the IDE see the attached jpeg. We received the following report: "The IDE does not build projects properly on my computer. The error message is “8092 fork: child -1 - died waiting for longjmp before initialization”.. In this instance the problem was resolved by upgrading the NVIDIA video drivers. Below are the links that led to resolution of this problems for future reference. http://cygwin.com/ml/cygwin/2011-08/msg00134.html http://cygwin.com/faq/faq.using.html#faq.using.bloda
  19. PowerPMAC login is user:root pwd:deltatau To login to powerpmac pass this user/pwd from your telnet session. Are you trying to add new user ? Atul If you need to reload your system from scratch the instructions are here. http://forums.deltatau.com/showthread.php?tid=885
  20. Here are some VC++ examples maybe they will give you a clue. I would try one of them. http://www.codeproject.com/Articles/937/Telnet-Console-Application http://www.codeproject.com/Articles/46/NT-Telnet-server-and-client http://www.codeproject.com/Articles/13071/Programming-Windows-TCP-Sockets-in-C-for-the-Begin http://www.codeproject.com/Articles/1904/Beginning-Winsock-Programming-Simple-TCP-client
  21. From the bottom of the edge connector to the top of the PCIe board, the maximum height that will fit directly in the connector is 3.25 inches. From the front of the PCIe board to the back of the PCIe board the maximum length of a board that will fit is 6.25 inches if there is a backplane UBUS connector behind the PCIe board. However if there is not a connector behind the slot the maximum length would be 6.8 inches. The GE card is 2.7 x 6.6 inches which means it will fit. To install the GE card would require that the Power UMAC CPU card be placed in the first slot of the rack so that there is no UBUS backplane connector to the left of the CPU board. You just want to make sure that you work out the ordering logistics with your distributor so that there is extra room to the left of the first backplane slot. Normally the racks are constructed with the first backplane slot right next to the sheet metal of the rack.
  22. What specifically are you looking for? Dimensional data? It is a PCIe x4 slot specification 1.1 root complex.
  23. We toyed with a project called PPmacServer like this but it never gathered enough steam to become a production ready product. Basically how it worked is we created a C# class PPmacClassLibrary.dll on the PowerPMAC that communicated directly to libppmac.so (the same library C apps used). That class was exposed over a .NET Remote TCP channel supplied by an application PpmacServer.Exe. The user application on the PC also included the PPmacClassLibrary.dll There are probable other methods to do accomplish RPC's but this is the one we tried thinking that most of our developers work with .NET Attached is an early internal power point document we created on this methodology. PowerPMAC Communication Library.ppt
  24. An image 1GNoVideo-1.4.027.zip is here : ftp://support.deltatau.com/DT-USA/Power%20PMAC%20Suite/Firmware/DiskImages Instructions on what to do with it are here: http://forums.deltatau.com/showthread.php?tid=169&highlight=Winimage
  25. hbausley

    webserver

    Alternatively you can use the IDE --------------------------------------- From the IDE menu click the following Delta Tau -> Configure -> Download Firmware Select the Kernel Update tab in the dialog box that shows up Click the Stop Reboot checkbox Click Install package This does exactly what you thought It copies powerpmacweb.deb to ftp://192.168.0.200/usrflash then executes dpkg -i powerpmacweb.deb from either a ssh or telnet session.
×
×
  • Create New...