hjpark Posted September 7, 2020 Share Posted September 7, 2020 Hi, I always appreciate your help. I am considering the encoder switching. For Example, There are two encoder head, two scale. (Please refer to the picture) I tested changing Motor[x].penc, penc2 from Enctable[1].a to Enctable[2].a. When doing this, the encoder signal is lost. Is there any way to do this without encoder loss? If it's not how you tested it, let me know. If you give me an idea, I will develop and test it. Even simple explanations are good. Link to comment Share on other sites More sharing options...
Omron Forums Support Posted September 8, 2020 Share Posted September 8, 2020 What type of encoder is this? Are you saying Motor[x].EncLoss goes true as soon as you issue settings for Motor[x].pEnc and Motor[x].pEnc2? If so I will need more information because I am not able to replicate the issue? Are you saying Motor[x].EncLoss goes true when you unplug the first encoder after switching? If so take a look at the setting for Motor[x].pEncLoss and change it with pEnc and pEnc2. I am not able to view your attachment. Link to comment Share on other sites More sharing options...
hjpark Posted September 9, 2020 Author Share Posted September 9, 2020 It is an encoder for linear scale. When changing the scale, change the parameters below. Motor[x].pEnc Motor[x].pEnc2 Motor[x].pPhaseEnc To be precise, the expression that loss occurs is a mistake. No encoder signal loss occurs. Loss occurs in the Motor Unit (M.U) and Motor[x].PhasePos If you have any ideas to correct this MU Loss, please tell me. Thank you. Link to comment Share on other sites More sharing options...
leandro.martins Posted September 16, 2020 Share Posted September 16, 2020 If I undestood correctly, I have some ideas some ideas of what might be happening. Is there an overlap between the scales? If it exists, you can test change the parameters in this region. I suppose the loss happens when the encoder head cannot read any signal, because it is out of scale, not in the changing. You can also check this assumption reading the parameter Gate3.Chan[j].LossCapt (latched value) or Gate3.Chan[j].LossStatus (current status). If I am right, you are probably configuring as below Motor[x].pEncLoss=Gate3.Chan[j].Status.a In these cases i'm used to set Gate3.Chan[j].Status = 0 to clear the failure I hope this helps in some way Link to comment Share on other sites More sharing options...
Omron Forums Support Posted September 17, 2020 Share Posted September 17, 2020 Loss occurs in the Motor Unit (M.U) and Motor[x].PhasePos From my testing it looks like Motor Position (like in the watch window) does not jump from these settings, but Motor[x].PhasePos does, which causes the motor to be uncontrollable. Please confirm the first statement by changing Motor[x].pEnc/Motor[x].pEnc2 with the motor killed so the changes do not move the motor. The position should not change. Phase position is a little more difficult. I would recommend killing the motor before setting Motor[x].pPhaseEnc and rephasing afterwards. As long as the motor does not move during the process, it should technically be possible to set Motor[x].PhasePosSf=0 during the change and then immediately back to the original value after to prevent the jump. If the motor moves while PhasePos=0 it will need to be rephased before it can be put back into closed loop. This all assumes both encoders are identical. If they're not, you may have to change some scale factors. Link to comment Share on other sites More sharing options...
Omron Forums Support Posted September 18, 2020 Share Posted September 18, 2020 It sounds like there is a trick to make this work. Hopefully this post will get an update soon. Link to comment Share on other sites More sharing options...
Richard Naddaf Posted September 21, 2020 Share Posted September 21, 2020 I have seen systems using 1 readhead instead of 2. This allows continuous counting without any special setting using a single encoder conversion table. But in your case, there are two read-heads which requires two encoder conversion tables. One idea is to add these in the encoder conversion table and use the result for both phase commutation and servo position. Link to comment Share on other sites More sharing options...
Omron Forums Support Posted September 25, 2020 Share Posted September 25, 2020 I think Richard's response assumes the encoder tapes are carefully placed end to end, not overlapping. Is this possible? Link to comment Share on other sites More sharing options...
Recommended Posts