Jump to content
OMRON Forums


  • Posts

  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

dholden's Achievements


Contributor (5/14)

  • First Post
  • Collaborator Rare
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges



  1. Very nice, all is now working well I had not fully appreciated the importance of having all of the cards in a rack when doing a $$$*** command. Thanks!
  2. I have the following rack system Slot 1 Turbo PMAC CPU Slot 2 ACC-5E Slot 3 ACC-24E2A (4-axis) Slot 4 ACC-24E2A (4-axis) My system will have 3 "remote" Macro servo axes and 8 "local" stepper axis. What I mean by local is that the steppers are controlled by the ACC-24E2A card NOT controlled over MACRO. I have successfully setup either: -All 8 Axes of stepper motion while removing the ACC-5E or -All 3 Axes of servo motion while removing the 2 ACC-24E2A cards When i plug all cards in i will see the encoder positions of the MACRO servo change if i turn the shafts, however if i try to command a move (i.e. "#1j=0") i get the error message: "Attempt to perform phase reference during move, move during phase reference, or enabling with phase clock error" Also by global status bit 7, Servo/Macro IC config error is set It would seem the cards are fighting whose clock to use (my best guess), so i set jumper E13 on the ACC-24E2A cards to jump 1-2 (receive phase and servo clocks). this however did not resolve the issue I also tried changing SW1 positions from 6 5 4 3 2 1 Card 1 on on on on on on Card 2 on on on on off on to 6 5 4 3 2 1 Card 1 on on on off on on Card 2 on on on off off on This also did not resolve the issue. The ACC-5E SW1 settings are currently 4 3 2 1 Card 1 on on on on What am I missing/what should I check Thanks
  3. S1 Dipswitch are all set to "on" This should make the base channel address $78400 (MARCO IC 0) This is the only other card in the rack right now (with the Turbo PMAC CPU) to help with troubleshooting Also, I can confirm that J1 jumper pins 1-2. I am using fiber for MACRO not the RJ45 connectors.
  4. I have an ACC-5E that was working fine with a Power PMAC but when i try to use it with a Turbo PMAC it does not accept configuration. Specifically when using the card in a rack system with a Trubo PMAC i cannot set any of the MACRO variables, for example: I6800=6527 I6802=3 I6840=$4030 I6890=$90 etc... When setting a value to these variables they simply return to a value of zero. Any idea why this would be the case? is there a difference between the Power PMAC card vs the Turbo PMAC card? Are there jumpers that need to be changed Any Ideas or suggestions would be appreciated Thanks
  5. I have an application that would be very easy to implement via electronic gearing, but with one catch, what I would gear to is moving when I want to apply the electronic gearing and I do not wan to expose my axis to uncontrolled acceleration as this gearing is applied. Is there a way to define (or just limit) the maximum acceleration an axis would undergo when enabling electronic gearing?
  6. In the Turbo PMAC the On-Line command for open loop mode was #1o0 for zero torque #1o50 for 50% torque #1o100 for 100% torque in a PLC the code would be cmd"#1o50" What is the command(s) for open loop mode in PPMAC (on-Line and in a PLC)? Also the max allowable torque was at register Ixx69, Output Command Limit/Scale, (0-32,767). What is the PPMAC equivalent? In the Turbo and you were in open loop mode you could changed the open loop magnitude via suggested M-Var xx79 (a value of 0-32,767 resulted in 0-100% torque). How is this accomplished in the PPMAC? Finally, what is the best variable to monitor if you are in open loop mode, int he Turbo it was suggested M-Var Mxx38?
  7. In my system I have a servo motor driving a set of rolls which feeds material and also a second encoder providing position feedback (the material at times slips slightly in the feed rolls). This setup is pretty straightforward, Ixx03 points to the encoder tracking the material position and Ixx04 points to the servo motor encoder. All is working well except there is one issue, if the encoder or rolls lose contact with the web material there is no following error so the servo driving the rollers will run away. What suggestions would there be for fixing this issue? Thanks
  8. How do I see kinematic positions when i watch online? Specifically, how would I see the values of C6 and L1? Right now when I monitor them online they stay at a value of zero.
  9. I may have answered my own question, it looks like my error was correctly setting up Lookahead, which limits the max speed and acceleration of a move. Basically this controls how aggressively you 'jump' to the PMATCH position after changing following modes. If anyone feels there is something more I am missing on this please let me know. Thanks
  10. Below is the motion program for the above kinematics. When we want to enable tracking we simply set EnableHwJogBit and run the program (&1b3r) The line encoder runs slowly but constantly Since I see no change in L1 or C6 I assume PMATCH is actually doing nothing, causing the jumps. If I should see change in L1 and C6 what should I look to change? If I should not see change in L1 and C6 what should I be looking for from here? Thanks //Motion Program open prog 3 Linear Abs F 1 // Set Feed Rate to 1inch/sec Ta 0.250 // Set accel time to 0.250 sec X 2.0 // Move to position 1 DWELL 0 EncoderPosCaptured = Motor[3].ActPos // Get Current Line Encoder Position KinematicsMode = LineFollowingMode // Enable Part Belt Tracking Mode DWELL 10 cmd"&1PMATCH" DWELL 10 // Do ths every time you change kinematics modes while(EnableHwJogBit == 1){ // Track with Line Encoder X 2.0 // ******SMALL JUMP HERE****************************************************************** } KinematicsMode = NormalMode // Disable Line Encoder Tracking Mode DWELL 10 cmd"&1PMATCH" DWELL 10 // Do ths every time you change kinematics modes // ******LARGE JUMP HERE****************************************************************** X 0 // Move back to home DWELL 0 close
  11. With forward an inverse kinematics setup using only X-Axis for simplicity I should see C6 and L1 update when watching online right? they both stay at Zero and i am getting the classic Kinematics 'jump' when moving from 'Line Following Mode' to 'Normal Mode' suggestions? Below is my setup Motor 1 is my X-Axis Motor 3 is my belt tracking encoder (line encoder) // Global Definitions global KinematicsMode; global NormalMode = 1,LineFollowingMode = 2; global EncoderPosCaptured, TrackingOffset; #define KinPosMotor1 L1 // Motor Position in Counts #define KinPosAxisX C6 // Coordinate System Position in Inches #define KinAxisUsed D0 // See table below for examples or page 472 of the Users Manual // Coordinate system definition &1 // Select C.S. #1 #1 -> I // Use Kinematics for Motor 1 Coord[1].SegMoveTime = 2 // 2 mSec segmentation period (required to be > 0 for kinematics) // Forward kinematics &1 // Address Coordinate System 1 open forward // Open Forward Kinematics Buffer KinAxisUsed = $40 // Specify X axis used in inverse kinematics if(Coord[1].HomeComplete){ // Have all axes in this coordinate system Completed Home? KinPosAxisX = KinPosMotor1 / 20320; // X-Axis Tool Tip Position Calculation } else { // Not valid; halt operation KinPosAxisX = sqrt(-1); // Return "not-a-number“ for X axis } close // Close Forward kinematics buffer // Inverse kinematics &1 // Address coordinate system 1 open inverse // Open buffer, clear contents if(KinematicsMode == NormalMode){ //Check if we are in 'Normal Mode' KinPosAxisX = KinPosAxisX; // Inverse kinematic equations for NO Tracking } if(KinematicsMode == LineFollowingMode){ //Check if we are in 'Line Following Mode' and Apply the Tracking Offset //Get the Current Line Encoder Position, Subtract from the Captured Position, and Convert to Inches TrackingOffset = (Motor[3].ActPos - EncoderPosCaptured) / 53333; KinPosAxisX = KinPosAxisX + TrackingOffset; // Apply TrackingOffset to the X-Axis of the Coordinate System } KinPosMotor1 = KinPosAxisX * 20320; // Scale Position to Counts close
  12. Also in the Turbo PMAC you have to set a bit to enable kinematics, is this true on the Power PMAC as well and if so which bit is it?
  13. I have had good success with "Tracking a Moving Object" in the Turbo PMAC and I wanted to know if this document was for the Power PMAC. If not where I would find the Power PMAC version of the example. I notice there are no PMATCH commands as you change following modes. in the Turbo PMAC you typically needed something like this: KinematicsMode=FollowingBelt DWELL 10 cmd"PMATCH" DWELL 10 Is PMATCH not needed in the PowerPMAC for this application? Even when i do find a few sparse examples of PMATCH in the Users Manual it is not preceded and followed by DWELL commands in the motion program, is this correct? Thanks Tracking a Moving Object.pdf
  14. I have run across a scenario that seems to come up rather regularly and I would appreciate any thoughts on what I might be missing. I have been in situations where I have a servo drive/motor pairing that I could configure in Velocity or Torque mode. 9 times out of 10 I use Torque mode because I am trying to position a servo on a ball screw axis or something similar. This makes total sense and I understand that the motion controller is handling speed and position in this case and the drive is only closing the current loop. I do, from time to time, have cases where i don't care to position an axis and simply need to run at a given velocity, a spindle motor axis for example, and it is here that I wonder which mode is best. Perhaps the better way to put it is: Are there any reasons NOT to be in Torque mode when running the axis at a constant velocity? The only disadvantage I have seen so far is that if my tuning is off I could have ever-increasing following error that eventually leads to a fatal following error situation. Tuning in general seems more sensitive in this application, as loads vary much more in a cutting application than a fixed inertial load with known accelerations might.
  15. Greg Thanks, I thought that was what Steve meant but now I am certain!
  • Create New...