Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
RESOLVED - Motor[4].Desired.Pos delivers nan (not a number)
#1
Hi!
I have 8 active motors, where always 2 are cascaded (#1 with #21, #2 with #22, #3 with #23, #4 with #24)

I use plc2 to start motion prog 10 in Coordinate-system &1:

open plc2
plc[2].ldata.coord=1
jog/21..23
jog/24
enable 1
sys.cdtimer[3]=500
while (( sys.cdtimer[3]>0) && (m281==0 || m282==0 || m283==0 || m284==0)) // wait for desvel=0
{
//
}
if ( sys.cdtimer[3]!>0)
{
M611=62 // Timout enable servos CS1
}
else
{
abort 1
start1:10 // Joystick Prog start
}
disable plc2
close

Using 3 (6) active motors (XYZ):
- plc2 starts prog10, and it works correctly

Using 4 (8) active motors (WXYZ)
- plc2 starts prog10 but prog10 does not run (listpc shows line 1 of prog10) and delivers Motor[4].Desired.Pos=nan,
- typing all the commands of plc2 manually into a terminal starts prog10 correctly
- Issuing #24j/#4j=0 before launching plc2 let run prog10 correctly
- after all, once Motor[4].Desired.Pos has a real number, prog10 can be started from plc2 any time without any problem


What is going wrong here?!

Regards,
Anton
Reply
#2
We haven't seen this before and can't duplicate it so far. However, I'm concerned that you issue your "start" command immediately after the "abort" command. The abort command triggers a process that does take finite time.

Try putting a small delay in between these two commands in your PLC program.
Reply
#3
This was my mistake - excuse me, Curt!
After initialization-sequence in plc1 Motor[4].AbortTa would hold "-inf", what leads to "Motor[4].Desired.Pos=nan", and finally what blocks the start of any motion prog.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)