Hello,
I have faced situation when robot stopped and reported for "software limit reach" during SPLINE motion.
Some facts about motion I ask robot to perform:
1. It's quite long (~3000mm) almost straight motion. Motion can consist of 1-5 segments, depending on the required complexity of path.
2. First point if motion is always PTP (with defined S and T). Due to motion nature, the selection of S and T parameters depends on the Z coordinate of the base (essentially, the height of the base), and the movements are performed relative to this base. So, like, from particular Z of base we are changing from 2 43 to 6 59.
3. For single segment motion single SLIN used, for larger amount of segments combination of SLIN-SPL (SPL here makes transitions between SLIN more smooth) are used. Any amount of segments are packed into SPLINE in code. For example:
PTP LINE_SCAN_POINTS[1]
FOUR_POINTS_ROW()
...
DEF FOUR_POINTS_ROW()
SPLINE
SLIN LINE_SCAN_POINTS[2]
SPL LINE_SCAN_POINTS[3]
SLIN LINE_SCAN_POINTS[4]
ENDSPLINE
END
Display More
4. Amount of segments is always different. As well as positions of each point (coordinates are calculated externally and sent to robot):
- X coordinate changes along mentioned 3000mm
- Amplitude of the possible change in the Z coordinate is 150mm
- Angle B can vary from -5 to 5 degrees
- A,C and Y are constant
Single segment motion coordinates example:
LINE_SCAN_POINTS[1]={X -115.000,Y 2003.44,Z -529.840,A -90.0000,B 2.58000,C 0.0,S 2,T 43}
LINE_SCAN_POINTS[2]={X 3130.00,Y 2003.44,Z -607.700,A -90.0000,B 2.58000,C 0.0,S 2,T 43}
Are there an option to check the possibility of executing a SPLINE motion before performing it? Or, may be, force robot to do additional checks during SPLINE planning, so it can report that there will be a problem?