General Function Block Behavior
Products: ACR9600, ACR9630, ACR9640
The function blocks in the ACR IEC PLC follow the PLCopen rules.
Â
Input Parameters:Â The parameters are used with the rising edge of the execute input. To modify any parameter, it is necessary to change the input parameter(s) and to trigger the motion again.
Missing Input Parameters:  If any parameter of a function block input is missing (open), then the value from the previous invocation of this instance will be used. In the first invocation, the initial value is applied.
Position Versus Distance: Â Position is a value defined within a coordinate system. Distance is a relative measure related to technical units. Distance is the difference between two positions.
Sign Rules: Â The Velocity, Acceleration, Deceleration, and Jerk are always positive values. Position and Distance can be both positive and negative
Real Datatypes: Â Inputs such as velocity and distance that require REAL datatypes should include the decimal place to avoid compile errors. E.g. FB.Velocity:=12.0
Output Exclusivity  With Execute:
-The outputs Busy, Done, Error, and CommandAborted are mutually exclusive; only one of them can be TRUE on one function block.Â
If Execute is TRUE, one of these outputs has to be TRUE.Â
Only one of the outputs Active, Error, Done, and CommandAborted is set at the same time.
With Enable:
-The outputs Valid and Error are mutually exclusive; only one of them can be TRUE on one FB.
Output Status  (With Execute FBs)Â
Done, InGear, InSync, InVelocity, Error, ErrorID, and CommandAborted outputs are reset with the falling edge of ExecuteÂ
The falling edge of Execute does not stop or even influence the execution of the actual function block.
-The corresponding outputs are set for at least one cycle even if Execute was reset before the function block completed.Â
If an instance of a function block receives a new execute before it finished (as a series of commands on the same instance), the function block will not return any feedback, such as Done or CommandAborted, for the previous action.
Output Status (With Enable): Â The outputs Valid and Error are mutually exclusive; only one of them can be TRUE on one FB.
Behavior of CommandAborted Output  CommandAborted is set when a commanded motion is interrupted by another motion command.
The reset behavior of CommandAborted is like that of Done. When CommandAborted occurs, the other output signals, such as InVelocity, are reset.
Behavior of Busy Output  Every function block can have an output Busy, reflecting that the function block is not finished. Busy is SET at the rising edge of Execute, and RESET when one of the outputs Done, Aborted, or Error is set. It is recommended that this function block should be kept in the active loop of the application program for at least as long as Busy is TRUE, because the outputs may still change.
Active Output  The Active output is required on buffered function blocks. This output is set at the moment the function block takes control of the motion of the associated axis. For un-buffered mode, the outputs Active and Busy can have the same value.