Jump to content
OMRON Forums

JeffLowe

Members
  • Posts

    283
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by JeffLowe

  1. Do you have lookahead turned on and have you set a reasonable Aux axis feetrate limit (Isx86)?
  2. I have found it useful to add these as we for adding and removing axes under program control. M190->Y:$0000C0,16,4,U ; #1 CS Type Register None=0 A=1, B=2 C=3 UVW =4 XYZ = 7, I=5 (Kinematic) M290->Y:$000140,16,4,U ; #2 CS Type Register None=0 A=1, B=2 C=3 UVW =4 XYZ = 7, I=5 (Kinematic) M390->Y:$0001C0,16,4,U ; #3 CS Type Register None=0 A=1, B=2 C=3 UVW =4 XYZ = 7, I=5 (Kinematic) M490->Y:$000240,16,4,U ; #4 CS Type Register None=0 A=1, B=2 C=3 UVW =4 XYZ = 7, I=5 (Kinematic)
  3. Sina: The OP does not have the communications library. Are there example code snippets that he could use to implement a rotary buffering mechanism?
  4. For programs that large you will need to use the rotary buffer and spool the program in. PcomServer has drivers for doing this from a windows application.
  5. Is there an easy formula for calculating the DC gain of a lowpass from ix38 and ix39? I know the Tuning Pro takes care of this when it is used, but I need to use other methods for my gain scheduler.
  6. As the name suggests these are boolean and take 0 or 1. bMacro allows use of the #define/#if and so on to be used in your code. These are handy features so I'd use a value of 1 for these. The bMap and bLog are used if you want to create the map and log files which are useful for debugging. bDnld is used to indicate you wish the code to be loaded into the PMAC. this certainly will be set to 1 unless you are just testing code for syntax.
  7. With this define made" #define ACC34_1A M1032 This is not permitted: ACC34_1A->u.user:$00.0.32; // ACC34A_1 Inputs sw1 switches(5-1): 11101 Yet this is ok: M1032->u.user:$00.0.32; // ACC34A_1 Inputs sw1 switches(5-1): 11101 Why?
  8. Yes, the On/Off switch is in the ON position. Since my goal is to use the communications library purchased from Delta Tau to facilitate communications between the PPMAC and Windows I am using the _Delta Tau_ supplied demo source code for test. Test system: 3.0 GHz Quad Core with 4G memory, Windows7, 1 GHz PPMAC, gigibit ethernet. Nothing else running, no break points, 8-10 seconds to get a response from the pressing of [send Command]. Is this normal, and if not what must I do to fix the _Delta Tau_ Supplied application?
  9. I have built the VB com lib demos and am using the Unsolicited Event widget to get an idea of the speed that we can expect from the sends and getsends interface. The VB demo takes around eight seconds from Send Command till a response comes back. The response drops characters, and I see the occasional message "Can not receive response from the device. Operation has timed out". Is this typical of this interface, and is there any way to improve the speed and reliability?
  10. PLC Stop errors are caused by your plcs writing into ES_ERR_STOP_M or ES_ERR_STOP_2M. Look at those two variables and see which bit is set in them. Since the bit settings for each message repeat across the eight message words it is possible the plcs are writing an a message to the wrong M variable. The bits for each message class are defined in Errors_num.h.
  11. Is the Acc-24E3A likewise latched for every Phase interrupt (expecially the ArcTan position)?
  12. When installing PPCom the Disk directs me to the software activation website. If I enter the serial number and the PO it returns invalid OP. IF I leave the PO blank I get to another screen that requests a site code. Where do I find this?
  13. If you can find it, Delta Tau once has a vary good applications note titled Hall Effect Phasing that covers determining the value for Ix91. Halls are only a rough estimate that result in +/- 30 degrees of variation in phase angle, which translates to around a 13% loss of torque. This will be a random variation depending on where the axis powers-up. In these cases it is best limit speeds and accelerations until you have homed and to apply a fine phase offset (Ix75) as part of your homing procedure with the setphase command to apply the correct phase value at a known position instead of the initial estimate. Assuming standard hall configuration, to determine the phase correction value at home, Home the axis to establish your reference position. Watch Mx71 and slow jog your motor until it wraps around. From that point watch Mx28 and slowly jog to either side of the wrap around position noting axis position where the hall change state. Move the axis to the point half way between these transitions and set Mx71=0. Move the axis back to the home position and set Ix75=Mx71. Note that this same approach can be used to check for correct hall alignment if you start from a hand phased motor (ie: set Ix79 to some positive value if Ix72=683 or a negative value if Ix72=1365 and enabling the amplifier with #xo0. When the motor settles set Mx71=0, kill the axis and return Ix79 to zero) From the Mx71 rollover position the hall transitions should be a symmetrical distance either side.
  14. Can anyone recommend an RPC (Remote Procedure Call) package for communicating between Linux and Windows? Polling for infrequent changes through GPascii seems less than desirable. Thx
  15. The Phase interrupt and servo interrupt are hardware interrupts with the timing of each set separately in PMAC in the gate setup ivars. The edges of these interrupts latch the registers in the servo gate arrays and trigger the two tasks. For smooth sinusoidal commutation the phase task is typically done more often than the servo calculations and the servo interrupt occurring at some integral fraction of the phase, ie every second or third phase task. The Phase task simply takes the last calculated servo filter output and applies it to the commanded output at motor's current phase angle. The servo task is what is operating the control law, i.e. the basic PID loops or the optional advanced servo algorithm. This task uses the present desired and actual states to generate a required servo effort to be applied to the motors. There also exists within PMAC an option to attach user written code to either of these two interrupts to accomplish other functions if needed. HTH
  16. Because as I said, the ACC-5E may or may not be in the system and If I could establish the clock as coming from the ACC-24E3A, which will ALWAYS be in the system, I will not have to alter my configuration depending on if the optional 5E is installed. In addition the Phase frequency divisor for the ACC-24E3 is a floating point number based on a 300 MHz internal clock and affords more flexibility in selecting phase and servo frequencies than an integer divisor of 117,964.8 KHz. Any suggestions on how to accommodate this without having to use two different base configurations?
  17. I have a non-responsive PPMAC (No green light, No activity indicators on Ethernet). I'd like to try reloading firmware through the Miniusb on the flash module. Is there an image available for this?
  18. Because as I said, the ACC-5E may or may not be in the system and If I could establish the clock as coming from the ACC-24E3A, which will ALWAYS be in the system, I will not have to alter my configuration depending on if the optional 5E is installed. In addition the Phase frequency divisor for the ACC-24E3 is a floating point number based on a 300 MHz internal clock and affords more flexibility in selecting phase and servo frequencies than an integer divisor of 117,964.8 KHz.
  19. My system has an ACC 5E and two ACC-24E3A boards. I would like to set this up like this: Gate2[0].PhaseServoDir=3 // Not using this as a macro card, just I/O, may remove at some future point Gate3[0].PhaseServoDir=0 // Clock source for servos Gate3[1].PhaseServoDir=3 // external clock form first 24E3A The problem is that on reset (power up or $$$) it always reverts to: Gate2[0].PhaseServoDir=0 Gate3[0].PhaseServoDir=3 Gate3[1].PhaseServoDir=3 Is there a way to make the PPmac do this?
  20. What is the current practice for being able to directly alter system variables? I need to modify the clock sources on my acc cards, but this seems to be being handled by something internal to the project. In this case I have an ACC-5E0 which is addressed as a macro gate2 and the IDE insists on making this board the S/P clock master in the rack. I would like to make my first ACC-24E3 the clock master in the rack to get better control over the phase/servo frequencies. I am able to write Gate2[0].PhaseServoDir=3 and save this but I have not found a way to alter Gate3[0].PhaseServoDir, even with the Sys.WpKey-$AAAAAAAA
  21. I can't seem to locate these headers: gplib.h and RtGpShm.h. Thanks.
  22. The hardware reference manual lists the digital feedback as supporting "multiple serial feedback protocols". Is there any more information about what is supported, and is Biss C one of these? Thanks, Jeff
  23. With 2G of ram the Turbo PMAC NC can support programs up to 600-700 MB long. For larger programs they can be broken down into ~600 MB chunks and called as subprograms. As long as you are running G103 P0 and the programs are stored on a local hard disk the interpolation should be continuous through the calls. We use this technique to run 4-5GB surfaces at 1000 blocks/sec.
  24. Also check Ixx28 and Ixx88 for all motors in the CS.
  25. Same Issue. Where is the manual?
×
×
  • Create New...