Danfoss MCO 305 Design Manual page 34

Programmable motion controller
Hide thumbs Also See for MCO 305:
Table of Contents

Advertisement

MCO 305 Design Guide
IF (skip_first == 0) THEN
skip_first = 1
ELSE
marker_number = marker_number + 1
total_dist = total_dist + marker_distance
ENDIF
old_ipos = new_ipos
ENDIF
ENDWHILE
CSTOP
SET SYNCMPULSS (total_dist rnd marker_number)
OUT 2 0
RETURN
/*********************** Measure master marker distance ****************************/
SUBPROG master_measure
OUT 2 1
old_mipos = MIPOS
marker_number = 0
total_dist = 0
skip_first = 0
WHILE (IN 2 == 1) DO
new_mipos = MIPOS
IF (new_mipos != old_mipos) THEN
marker_distance = new_mipos - old_mipos
IF (marker_distance < 0) THEN
marker_distance = (marker_distance * -1)
ENDIF
IF (skip_first == 0) THEN
skip_first = 1
ELSE
marker_number = marker_number + 1
total_dist = total_dist + marker_distance
ENDIF
old_mipos = new_mipos
ENDIF
ENDWHILE
SET SYNCMPULSM (total_dist rnd marker_number)
OUT 2 0
RETURN
/******************************** Error handler ************************************/
SUBPROG errhandle
err = 1
OUT 8 1
OUT 2 0
WHILE err DO
IF (IN 8) AND NOT (IN 2) THEN
ERRCLR
err=0
ENDIF
ENDWHILE
OUT 8 0
sync_flag = 0
RETURN
/****************************************************************************/
ENDPROG
/********************************* End of program ******************************/
34
__ Functions and Examples __
// Do not use first value as it might be invalid
// Set "old" marker position to "new" marker position
// Stop when leaving slave marker measurement
// Reset "Marker measurement active" output
// Set "Marker measurement active" output
// Read "old" marker position
// Reset variable
// Reset variable
// Reset variable
// Stay in measuring mode while input 2 high
// Read "new" marker position
// Do not use first value as it might be invalid
// Set "old" marker position to "new" marker position
// Reset "Marker measurement active" output
// Set error flag to remain in error handler until error is reset.
// Set error output
// Reset "Marker measurement active" output in case of error
// Remain in error handler until the reset is received
// Reset error when Input 8 is high and input 2+3 low
// Clear error
// Reset error flag
// Reset error output
// Reset sync_flag after error
®
MG.33.L5.02 – VLT
is a registered Danfoss trademark
// Increment counter
// Summarize marker distances
// calculate average marker distance and set par.
// Check if a new marker was detected
// Calculate marker distance
// Change sign if negative
// Increment counter
// Summarize marker distances
// calculate average marker distance and set par.

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents