Jump to content
OMRON Forums

Eric Hotchkiss

Omron
  • Posts

    558
  • Joined

  • Last visited

  • Days Won

    8

Everything posted by Eric Hotchkiss

  1. You can name the PLC something like "ResetPLC" to keep the descriptive name and avoid the short word issues.
  2. This would be a technical support issue. Please contact ODT's direct technical support with your full issue details at: ODT-Support@Omron.com You can also contact Omron TSG at "ia.techsupport@omron.com" but make sure to have PMAC or Delta Tau in the subject line for proper routing.
  3. Take a look at the "Step and Direction, PFM Output" section of the Power Brick LV ARM manual. It has a PLC which can temporarily be used to select a frequency divider, as well as instructions to manually output a frequency and motor settings. I believe you should also be able to issue something like #1out50 for 50% of Fmax. https://automation.omron.com/en/us/products/family/Brick LV
  4. It sounds like 1 is the real issue and 2 happens because encoder settings aren't properly saved. Can you please share...? Your IDE version, firmware version, and CPU type. (in the green bar at the top of the IDE) A screenshot of the encoder setup page. A screenshot of the motor setup topology page.
  5. Here they are. Position Following.pdf
  6. This is possible. You could servo the motor to a position of zero and then write a position to Motor[1].MasterPos every servo cycle. There will be a delay of one servo cycle. I am including training slides on position following. Not everything applies when just writing to MasterPos directly. Offset/normal following mode applies, as well as the speed and acceleration limit features on the last slide. It would be best to do this from a custom servo routine attached to Motor 0 (written in C, pshm->Motor[x].MasterPos=Value;).
  7. We have a tool to remove vibration called a Trajectory Pre-Filter, sometimes referred to as vibration suppression. We used to have a demo where a linear motor had a block and spring on top. When vibration suppression was enabled, the block did not vibrate. Typically either a Low-pass or notch filter would be used. I would recommend to start with a Low-pass. The concept is discussed in the Power PMAC Users Manual and the tool to implement the filter in interactive position loop tuning. There is also a way to use MATLAB to generate a trajectory, but it's much more complicated and I don't know if it would have input shaping functionality.
  8. Firmware versions will typically be distributed directly to customers through Omron Distributors rather than being available for download for anyone. If you need to upgrade the firmware on your unit or obtain a specific other version, contact your Omron Distributor for more information. You may need to provide some information about the product so that the correct file and procedure are provided. These can be obtained by issuing "CPU", "TYPE", and "VERS" into the terminal window, so please be prepared to provide the responses to these commands, too.
  9. Yes, we have an application note on hot connect groups. Here it is. DeltaTau_HotConnectDisableEnableSlave_Ver1.2.pdf
  10. I am attaching an application note on how these values are used and how to set them in PMAC. It may be that MaxSessions was added repeatedly because a step was missed. I hope this is helpful. Configuring an SSH Timeout In Power PMAC.pdf
  11. The name "homeSlvEpoxyChanger.pmc" does not matter. The problem is that homeSlvEpoxyChanger is used for a global variable name as well as after "open program". I would suggest changing it to "Open Prog homeSlvEpoxyChangerProg" to make the program name unique.
  12. The name "homeSlvEpoxyChanger.pmc" is not really used. What name appears after open subprog? Does it say "open subprog homeSlvEpoxyChanger"?
  13. PowerPMAC IDE 4.3.0.107 is compatible with an arm, 1020 CPU with Firmware 2.6.0.0. Are you able to build and download a new project after $$$***? Is the name "homingSlvEpoxyChanger" used for anything else in the project like a program name?
  14. I believe you are trying to set up Motor 4 as Gate3[1].Chan[0], even though the IDE expects it to be Gate3[0].Chan[3]. This was an issue in previous IDE versions, I am not sure exactly when it was corrected, but it seems to work fine in my IDE 4.6.0.14. If you do not wish to update the IDE, you will have to set the following variables. These can be dragged into the terminal from the editor window. Motor[4].pEncStatus=CK3WAX[3].Chan[0].Status.aMotor[4].pEncCtrl=CK3WAX[3].Chan[0].OutCtrl.aMotor[4].pCaptFlag=CK3WAX[3].Chan[0].Status.aMotor[4].pCaptPos=CK3WAX[3].Chan[0].HomeCapt.a To sync these settings with the IDE project, right click on the motor folder and select "Sync All Motor Settings (PMAC to Project)". If this is a sinusoidal encoder, you may also want to make sure the following settings are in affect: Arctangent Enabled: Gate3[1].Chan[0].AtanEna = 1 With Standard Sinusoidal: Motor[4].EncType = 6 With ACI: Motor[4].EncType = 7
  15. I am assuming you are using the IDE plot tool for settings and have it open. What firmware and IDE versions are you using? It's possible they we released far enough apart that gathered data does not upload correctly. There is a legacy mode that might be able to help if the firmware is too old for the IDE. Firmware version is visible in the top bar of the IDE or after the command "vers" is issued in the terminal. IDE version is visible in the top bar. It can also help to Start Gather, Stop Gather, Upload and Plot once manually first if the gather tools is misbehaving. What type of encoder is the motor using? Quadrature? Sinusoidal? Serial? Plotting velocity while moving and checking if Gate3[i].Chan[j].CountError is automatically set true (after manually setting it to 0) can help diagnose encoder issues.
  16. How do you want the speed of the rotary axis (C) decided? Should it be running at a constant speed? Should it slow down to maintain a constant overall speed when X and Z speed up? How do you want the speed of X and Z to decided? Should they follow along to draw on a rotating cylinder? Should they maintain a fixed combined feedrate (ignoring C)?
  17. Take a look at EncTable[n].PrevEnc. The name might be a little confusing, it's where the ECT output value is saved. EncTable[11].pEnc=EncTable[3].PrevEnc.a Because PrevEnc is an integer, this means a type 1 ECT entry (integer read) can still be used. Note that this register must be multiplied by EncTable[n].ScaleFactor to get the result you expect. This means you can set EncTable[11].ScaleFactor=EncTable[3].ScaleFactor to read both Motor 11 and Motor 3 positions at the same scale. I tried this with a digital tracking filter on my quadrature encoder and I needed EncTable[11].ScaleFactor = EncTable[3].ScaleFactor = 1/256 to read the filtered value correctly. Also note there is a section in the Power Brick ARM Manuals titled "Digital Tracking Filter" that calculates EncTable[n].index1, EncTable[n].index2, and EncTable[n].index4. https://assets.omron.com/m/661730249d3863b4/original/Power-Brick-LV-ARM-User-Manual.pdf EncTable[11].type = 1 EncTable[11].pEnc = EncTable[3].PrevEnc.a EncTable[11].index1 = // From Brick PLC EncTable[11].index2 = // From Brick PLC EncTable[11].index4 = // From Brick PLC EncTable[11].ScaleFactor = EncTable[3].ScaleFactor // or maybe 1/65536 Motor[x].pEnc = EncTable[n].a Motor[x].pEnc2 = EncTable[n].a
  18. You can set an encoder conversion table entry to act as a digital tracking filter by changing the values of index1 and index2. A "motor" could then be set up to read the position and display it in the position window. It would probably look like below. EncTable[n].type = 1 // Single register read EncTable[n].pEnc = [HardwareLocation].a EncTable[n].index1 = (filter Ki) // For possible digital tracking filter EncTable[n].index2 = (filter gain) // For possible digital tracking filter EncTable[n].ScaleFactor = 1/65536 // For result units of LSBs Motor[x].pEnc = EncTable[n].a // Use result for position-loop feedback Motor[x].pEnc2 = EncTable[n].a // Use result for velocity-loop feedback You could also write your own code in PLC 0 (the RTI PLC) if you feel setting up a motor to read the position is too complicated. RTI is divided down from Servo based on Sys.RtIntPeriod.
  19. I don't think I understand the question because these links take me to the files. Are you having issues getting the files on your computer or your PMAC?
  20. The parameters are not accessible after reboot because the save failed. Are you able to save immediately after issuing "$$$***"? Can you show the error message?
  21. Was this question about Sysmac Studio? If so your local Omron representative should be able to help. This sub-forum is meant for legacy Delta Tau products from multiple generations back, so I don't think it will get a lot of attention.
  22. Two EtherCAT bridge devices can be used to connect three PMACs as shown below. I left out the computer connections on eth0. The EtherCAT port on PMAC is sometimes labeled ETH1 and Sometimes labeled ECAT. I have labeled it "ECAT M" for ECAT Master. Arrows pointing to nothing are to daisy chain extra EtherCAT devices. In this configuration, PMAC 1 must transfer data between PMAC 2 and PMAC 3. They do not talk directly. Once PMAC slave is available, it will be much easier to have multiple slaves together on the same network.
  23. You would want to use the ECAT port on both masters. It could be labeled ETH1 or ECAT. On the Power Brick ARM models, for example, the port is labeled "ETH1/ECAT".
  24. I took a new ECX-EC out of the box and set it up with only Power PMAC IDE 4. I did not use any other software. I believe the EL6695 would require setup in TwinCAT before following the EtherCAT slave setup from the app note.
  25. I believe there was a miscommunication. PMAC and the NC HMI is fully capable of controlling a lathe system. The platform is very flexible and can be used to control almost any type of system, and the NC HMI ultimately doesn't get into kinematics or the mechanics of the specific hardware, so they can be adapted to control a lathe if it is set up. That said, our pre-made library contains a standard list of G Codes for use by a milling machine. We do not have a sample G Code library for a Lathe application for Power PMAC.
×
×
  • Create New...