Jump to content
OMRON Forums

Sangmo

Members
  • Posts

    17
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by Sangmo

  1. I recommend checking the deviation of the command trajectory first.

    The look-ahead function of PMAC will not tamper with the trajectory, but if the blend parameter of PMAC is not set properly, it may lead to deviations in the instruction trajectory.

    Usually Ta Ts will affect the accuracy of the trajectory blend, you can try to set Ta Ts to 0 at this position.The premise of setting Ta Ts to 0 is that the Look ahead function is set correctly, otherwise the machine will vibrate.

     

  2. If you don't want to have an acceleration and deceleration process and only need a signal with a fixed frequency and a fixed number of pulses, I think it is more difficult to use PMAC to achieve.The best way is to use FPGA.

    Of course, if you must use PMAC to implement, you can try to perform an AND operation through the position comparison signal (EQU) and the PFM signal.

    For example, set Oo output at position 20, set Off output at position 120, and then use the out command to make the virtual axis generate pulses at a fixed frequency, and the two output signals are sent to the driver after passing through the logic AND circuit externally.

    Because PMAC is a motion controller, usually used to control the motor, so the pulse output must have an acceleration and deceleration process.The bottom layer of PMAC uses spline interpolation to plan the position/time curve, so even if you set the acceleration time to 0, it will still have a servo cycle trajectory that rises according to the curve.This is unavoidable, your request is best implemented using FPGA.

    Because for any object, whether it is piezoelectric ceramics (although the response is very fast) but it is better to have an acceleration process.

    • Like 1
  3. Normally, PMAC does not save any parameters when power off, because the entire work of PMAC is basically carried out in memory.

     

    For recording the motor position, I suggest you use an absolute encoder.

    The controller can read the absolute encoder position information after each power-on.

    It is very unreliable to record the position of the motor before the power is cut off to the controller, because the motor may still be moved after the power off.

    Because the motor may be affected by external forces without a closed loop, resulting in displacement, which will cause deviation.

  4. Before you write to the Gate3.Chan[j].Pwm[1] register

    You should check these setting

    1. Gate3.Chan[j].OutputMode should be 3 or 7

    2. Gate3.Chan[j].PackOutData should be 0

    3. The value you write to Gate3.Chan[j].Pwm[1] shoule be multiply by 65536

    Because the effective output value is high 16bits.

    The valid range of this value before multiplying by 65536 is +-32767, which

    represents the output voltage of +-10V

  5. Thank you, Curt!

     

    (You say it is a CK3E CPU. Are you sure you don't mean CK3M?)

    Well, more precisely it is a Power UMAC with a ACC24E3

     

    Typically, compensation for CMM is done on a computer. Compensation in PMAC is used to compensate for motion, but CMM does not require a high absolute motion accuracy. CMM requires only a high measurement accuracy. Therefore, the position of the motor encoder is taken back to be calculated to calculate the exact trigger position of the probe

  6. If your Phase Position is not right. The open loop test may not work.

    Please check Motor[x].PhasePosSf value is right. You can refer the Power Brick Mannual to cal it.

    And then do the six step current test.

    If your I2t protect is not set and don't get right phase pos, you may burn your motor!

  7. hello guys,i am doing a delta robot by using ck3e.can i get some documents for doing this.like forward and inverse algorithm.

    Besides that ,when i change mode from normal mode to following mode,servo jump a few position about 10 angle(360 angle 1 circle) occasionally。

    I need to ues delta robot track a moving object then put it to the box.

    Any brothers were done this . I need help.

    THX

     

    You can find the manual in the “FileDepot” in this forums

    Delta Robot Kinematics Clavel Delta.pdf

    Delta Robot Kinematics Linear Delta.pdf

  8. Hi again,

     

    there are 3 motors connected to same Gate3[0]. From Power PMAC IDE, I enable one of them and jog it, everything is good, if I enable any other motor and jog the same motor, the strange noise is coming from the motor.

    ( in both directions ). It happens like this with two others too. We have have checked electrical wiring and found that it is OK.

    Any idea why it might happen?

     

    Thank you in advance.

     

    If you don't need to change the DAC Strobe when using CK3M, you can use the default value.

    You should check the Gate3.Chan[j].CountError to see if the feedback signal is disturbed.

  9. I have two questions.

     

    1. I applied the Tracking Filter to the ACI option card, but the performance did not improve (Encoder Signal period 0.25um).

    I want to know if it improves performance when ACI option card applying Tracking Filter. Answer with“yes” or "no",

    DO not answer "probably not be helpful"

     

    2. I use the None ACI card(ACC-24E3) and sinusoidal encoder(Encoder Signal period 20um). I applied Tracking Filter but no performance improvement. I use EncTable[n].type=1. In this case, why does not it improve perfomance?

     

    You should not use tracking filters when using ACI.

    Sinusoidal encoders are used in very high precision applications. Any unnecessary delays such as filters will degrade performance rather than improve performance.

    If your performance does not meet the requirements, please look for problems from mechanical structures, drives, and electrical systems.

     

    If you want to use type=1 to get the position, you can refer to the ACC-24E3 manual Reading the Data as a Serial-Interface Position Value chapter. The ACC-24E3 ASCI chip will transfer the processed data to you via the serial bus.

     

    Simulated Serial Encoder Position

    To use the encoder position in the ASIC obtained from the FPGA through the serial encoder interface for ongoing servo position, the following saved setup elements must be specified:

    EncTable[n].Type = 1 // Single-register read conversion

    EncTable[n].pEnc = Gate3.Chan[j].SerialEncDataA.a // Serial register

    EncTable[n].index1 = 0 // No left shift or filtering

    EncTable[n].index2 = 0 // No right shift or filtering

    EncTable[n].ScaleFactor = 1/16384 // For result in encoder quadrature counts

    Motor[x].pEnc = EncTable[n].a // Use table result for position-loop feedback

    Motor[x].pEnc2 = EncTable[n].a // Use table result for velocity-loop feedback

  10. Hi

    I have a proleben about I2TFault set.

    I use the IDE Setup to setup a brushless motor, and it works fine.

    But after reboot the BrickAC. The I2tFault and AmpFault are high light in Motor Status.

    So I can not search pahse.

     

    If I set Motor[1].I2TSet=0, and save. Then I reboot the BrickAC, it will works

    fine. Then I reset Motor[1].I2TSet=2354. It's still works fine.

     

    So I write a Power-up PLC to reset the Motor[1].I2TSet with a time-delay.

    Then it works fine.

     

    I think it's not normal. But I didn't know the reason.

×
×
  • Create New...