You are here: Technical References > Application Modules > Unwind-Rewind > User Interface Program

User Interface Program

M1_Interface Program

Program Type: SFC"Sequential function chart" It can be used to program processes that can be split into steps. The main components of SFC are: - Steps with associated actions - Transitions with associated logic conditions - Directed links between steps and transitions

The M1_Interface program interfaces the PAC"Programmable Automation Controller" PAC is a compact controller that combines the features and capabilities of a PC-based control system with that of a typical programmable logic controller (PLC). A PAC thus provides not only the reliability of a PLC, but also the task flexibility and computing power of a PC. Additionally, because they function and communicate over popular network interface protocols, PACs are able to transfer data from the machines they control to other machines and components in a networked control system to the following items in the system:

. The M1_Interface Program contains the following code:

Code Segment Functionality

Error ResetNew start of the microprocessor

Resets the error reset button 1 sec after being pushed

Pilz Pnoz Relay interface

If Pilz Pnoz relay trips then machine state set to Standby (unless in the Error Fatal MachineThe complete assembly of all connected parts or devices, of which at least one is movable State )

Machine State

Sets machine state based on KOLLMORGEN

  • AKI or internal Control Panel inputs(M1_CmdState)
  • Present Machine state (M1_AckState)
  • Present Machine and Axis Status Words (M1_StatusWord and Ax_StatusWord)
  • Pilz Pnoz relay status.

Signal Light Control

Set Digital outputs based to indicate present machine state

Displays present state

Sets Remote IO outputs to indicate present state of machine state controller

Handle FunctionA function calculates a result according to the current value of its inputs. A function has no internal data and is not linked to declared instances. Calls

Function call for Axis Jog Commands in Manual Machine State

Read Axes Information

Read axis information to be displayed in the Kollmorgen AKI: Ax_RefPos, AxActPos, Ax_Act_Speed, A2_PosErr, and A2_ActTorque

Reset KOLLMORGEN AKI Status Information

Reset Main and Axis Status Word send to the KOLLMORGEN AKI

Analog Input scaling

See Roll Inertia and Radius

Inertia Calculation

See Roll Inertia and Radius

Adjust  Trigger Reference Position

See Phase adjusting the die cutter

Parameters Description

AckStateLEDs[i] := (M1_AckState = i);

Links  the appropriate LED on the Control Panel to the present acknowledged operation mode of the state machine

bM1_Standby

bM1_Manual

bM1_Automatic

bM1_ErrorFatal

bM1_ErrorStop

When one of these control panel buttons (bM1_xxxxxx) is pushed, the state machine is requested to change using the parameter M1_CmdState

bM1_CallAutomaticFunction1 := bM1_RunMasterEndless;

bM1_CallAutomaticFunction2 := bM1_RunMasterOneCycle;

bA1_CallManualFunction1 := bJogAxis1Positive;

bA1_CallManualFunction2 := bJogAxis1Negative;

bA2_CallManualFunction1 := bJogAxis2Positive;

bA2_CallManualFunction2 := bJogAxis2Negative;

bA3_CallManualFunction1 := bJogAxis3Positive;

bA3_CallManualFunction2 := bJogAxis3Negative;

bA4_CallManualFunction1 := bJogAxis4Positive;

bA4_CallManualFunction2 := bJogAxis4Negative;

Links controls in the Control Panel Automatic section to the Call Functions within the M1_StateController program

bA1_CallStandbyFunction1:= rSaveParamAxis1(bSaveParamAxis1);

bA1_CallStandbyFunction2:= RestoreParamAxis1(bRestoreParamAxis1);

bA2_CallStandbyFunction1:= rSaveParamAxis2(bSaveParamAxis2);

bA2_CallStandbyFunction2:= rRestoreParamAxis2(bRestoreParamAxis2);

Links controls in the Control Panel Standby section to the Call Functions within the M1_StateController program

#ifdef DEF_CStopHWLimitSwitchWired

   bA1_CallManualFunction1:=bJogAxis1PositiveAND bA1_PosLimitSwitch;

   bA1_CallManualFunction2:=bJogAxis1NegativeAND A1_NegLimitSwitch;

   #else

   bA1_CallManualFunction1 := bJogAxis1Positive;

   bA1_CallManualFunction2 := bJogAxis1Negative;

   #endif

   bA2_CallManualFunction1 := bJogAxis2Positive;

   bA2_CallManualFunction2 := bJogAxis2Negative;

Links controls in the Control Panel Manual section to the Call Functions within the M1_StateController program

 


Stay Connected with Kollmorgen

Copyright © 2015 Kollmorgen™