Difference between revisions of "MC-Basic:pls.HWASSISTANCE"

From SoftMC-Wiki
Jump to: navigation, search
m (Miborich moved page Axystems:MC-Basic:pls.HWASSISTANCE to MC-Basic:pls.HWASSISTANCE: Global renaming of Axystems: namespace into (Main):)
(Added example/explanation for CDHD2 setup)
 
(8 intermediate revisions by 2 users not shown)
Line 7: Line 7:
  
 
|AVAILABILITY=
 
|AVAILABILITY=
Versions 4.4.5 and higher
+
Versions 4.21.2 and higher
  
 
|DESCRIPTION=
 
|DESCRIPTION=
The property  for hardware assisted PLS  mode switch On/Off  .
+
The high-accuracy PLS timing mode is activated by HWAssistance.<br>
 +
*PLS High Accuracy On (<pls>.HWAssistance = <value>)<br>
  
These properties may be set when the PLS is disabled. The PLS should be declared before.
+
::When high-accuracy mode is active, the Product software extrapolates the exact time at which the axis will reach the PLS position, based on its current position, velocity and acceleration, and sets an output event for that time.<br>
* '''Turned Off''' - the PLS outputs are switched at the time of passing of the PLS source through the PLS position. The time of PLS output switch is always on integer number of motion-samples so the time accuracy of the PLS in this case equals the motion-sample duration ([[MC-Basic:SERCOS.CYCLETIME|Sercos.CycleTime]]). For the given example of '''PositionErrorDelay''' = 3 , in the case the PLS source is position command, the PLS output will be switched '''''2 samples before''''' the position command is set in the drive and in case the PLS source is position feedback it will be switched '''''1 sample after''''' the event.<br/>
+
::If HWAssistance is active, the timing of the PLS output switch will be computed to an accuracy of microseconds.<br>
 +
::The exact timing of the PLS switch is computed according to the current velocity and acceleration values of the samples before and after the PLS position.<br>
 +
::In instances of constant acceleration or linear acceleration change between the two samples, the timing of the PLS is computed exactly to ±1µs.<br>
 +
*PLS High Accuracy Off (<pls>.HWAssistance = 0)
 +
::When HWAssistance is not active (normal PLS), the PLS outputs are toggled at the moment the PLS source crosses the PLS position. <br> The timing of the PLS switch is always an integer number of motion samples; therefore, the ::timing accuracy of the PLS is equivalent to the motion bus cycle.  
  
* '''Turned on''' - the time of PLS output switch will be computed in microseconds accuracy. The exact time of PLS output switch is computed according the current velocity and acceleration values of the sample before and after the PLS position. In case of '''constant acceleration''' or linear '''acceleration change''' between the two samples time of the PLS is computed exactly up to the '''±1μsec'''.  
+
{{Note | Note that with fw version ?'"`UNIQ--nowiki-00000001-QINU`"'? and before, the position command delay of P?'"`UNIQ--nowiki-00000002-QINU`"'? <br/> samples will be taken into account as ?'"`UNIQ--nowiki-00000003-QINU`"'? expression. This means that in case of ?'"`UNIQ--nowiki-00000004-QINU`"'?,<br/> when the PLSposition is passed, the output will be triggered after 1 sample delay plus Δt, the inter-sample delay.}}
  
{{Note | Note that with fw version <nowiki>4.5.29</nowiki> and before, the position command delay of P<nowiki>ositionErrorDelay-2</nowiki> <br/> samples will be taken into account as <nowiki>hard-coded</nowiki> expression. This means that in case of <nowiki>PositionErrorDelay = 3</nowiki>,<br/> when the PLSposition is passed, the output will be triggered after 1 sample delay plus Δt, the inter-sample delay.}}
+
{{Note | '''Hwassistance''' is available only in systems that have the hardware that support this functionality <!-- -->}}
 
 
{{Note | '''Hwassistance''' is available only in systems that have the hardware that support this functionality <!-- (MIB) -->}}
 
  
  
Line 26: Line 29:
  
 
|RANGE=
 
|RANGE=
1 - TRUE  - starts the hardware assisted PLS  mode
+
- no HW assistance <br>
 +
- el2258 time-stamping module <br>
 +
2  - CDHD2 PCOM1/PCOM2 <br>
  
0 - FALSE
+
 
 +
FALSE
  
 
|UNITS=
 
|UNITS=
Line 40: Line 46:
  
 
|LIMITATIONS=
 
|LIMITATIONS=
Modal/Nodal
+
*Available only in systems with hardware that supports this functionality timestamping module el2258 or CDHD2 PCOM1/PCOM2 <br>
 +
*Modal/Nodal<br>
 +
 
 +
|EXAMPLE=
 +
CDHD2 Setup <br>
 +
1.Add objects 0x2191.0/0x2205.1 (PCOM1) or 0x2192.0/0x2206.1 (PCOM2) to TXPDO <br>
 +
2.Two (2) additional outputs above digital outputs (for instance, 0x1008 and 0x1009 if CDHD2 is the first device on the network) will be implicitly mapped into sys.dout<br>
 +
-->?ver<br>
 +
Version Number = MULTIBUS 0.4.21.2r1-C2 , Date = Nov 27 2022 [15:02:17]<br>
 +
-->common shared HWPLS1 as PLS a1 sys.DOut.1008<br>
 +
-->sys.DOut.1008 = 0 'test that output is available and can be reached <br>
 +
-->HWPLS1.HWAssistance=2<br>
 +
-->?plslist<br>
 +
PlsName=HWPLS1,AxisName=A1,Output=sys.dout.1008,HWAssistance=TRUE<br>
 +
?HWPLS1.PLSPropagationDelay=0<br>
  
The hardware assisted PLS  works with System.DOut from 1 to 8
 
  
|EXAMPLE=
 
?PLS1. HWAssistance
 
  
PLS1. HWAssistance = True
 
  
 
|SEE ALSO=
 
|SEE ALSO=

Latest revision as of 11:25, 28 November 2022

The high-accuracy PLS timing mode is activated by HWAssistance.

  • PLS High Accuracy On (<pls>.HWAssistance = <value>)
When high-accuracy mode is active, the Product software extrapolates the exact time at which the axis will reach the PLS position, based on its current position, velocity and acceleration, and sets an output event for that time.
If HWAssistance is active, the timing of the PLS output switch will be computed to an accuracy of microseconds.
The exact timing of the PLS switch is computed according to the current velocity and acceleration values of the samples before and after the PLS position.
In instances of constant acceleration or linear acceleration change between the two samples, the timing of the PLS is computed exactly to ±1µs.
  • PLS High Accuracy Off (<pls>.HWAssistance = 0)
When HWAssistance is not active (normal PLS), the PLS outputs are toggled at the moment the PLS source crosses the PLS position.
The timing of the PLS switch is always an integer number of motion samples; therefore, the ::timing accuracy of the PLS is equivalent to the motion bus cycle.
NOTE-Info.svgNOTE
Note that with fw version ?'"`UNIQ--nowiki-00000001-QINU`"'? and before, the position command delay of P?'"`UNIQ--nowiki-00000002-QINU`"'?
samples will be taken into account as ?'"`UNIQ--nowiki-00000003-QINU`"'? expression. This means that in case of ?'"`UNIQ--nowiki-00000004-QINU`"'?,
when the PLSposition is passed, the output will be triggered after 1 sample delay plus Δt, the inter-sample delay.
NOTE-Info.svgNOTE
Hwassistance is available only in systems that have the hardware that support this functionality

Short form

<pls>.HWAssistance

Syntax

?<pls>. HWAssistance

Availability

Versions 4.21.2 and higher

Type

Long

Range

0  - no HW assistance
1  - el2258 time-stamping module
2  - CDHD2 PCOM1/PCOM2


FALSE

Default

FALSE

Scope

Configuration, Task or Terminal

Limitations

  • Available only in systems with hardware that supports this functionality timestamping module el2258 or CDHD2 PCOM1/PCOM2
  • Modal/Nodal

Examples

CDHD2 Setup
1.Add objects 0x2191.0/0x2205.1 (PCOM1) or 0x2192.0/0x2206.1 (PCOM2) to TXPDO
2.Two (2) additional outputs above digital outputs (for instance, 0x1008 and 0x1009 if CDHD2 is the first device on the network) will be implicitly mapped into sys.dout
-->?ver
Version Number = MULTIBUS 0.4.21.2r1-C2 , Date = Nov 27 2022 [15:02:17]
-->common shared HWPLS1 as PLS a1 sys.DOut.1008
-->sys.DOut.1008 = 0 'test that output is available and can be reached
-->HWPLS1.HWAssistance=2
-->?plslist
PlsName=HWPLS1,AxisName=A1,Output=sys.dout.1008,HWAssistance=TRUE
?HWPLS1.PLSPropagationDelay=0

See Also