%%%
  VERSION: 1
  LANGUAGE: ENGLISH
%%%

MODULE SWTEXT (SYSMODULE)

!---------------------------------------
! G L O B A L  D A T A
!--------------------------------------- 

  ! Definition of stringtype for spotware
  ALIAS string swstring;

  ! Description: 
  ! CONST sw_string Version_XXXXXXXX := "1.2";
  !
  !          XXXXXXXX - Module name
  !                 1 - version number  (changed of SEROP) 
  !                 2 - revision number (changed of SEROP)
  CONST string Version_SWTEXT := "4.4";

  ! NOTE!
  ! Remember that the string length in each variable is limited to 40 characters.

  ! Error messages - servo gun
  CONST swstring TxtGunNotOpen :=	"Can not close the gun. It is not open!";
  CONST swstring TxtErrCloseSgun :=	"Can not close the gun in motors off";
  CONST swstring TxtErrOpenSgun :=	"Can not open the gun in motors off";
  CONST swstring TxtErrCalibSgun :=	"Can not calibrate the gun in motors off";
  CONST swstring TxtRevCUpdate := 	"1.Synchronize the tip position.";
  CONST swstring TxtFineCalib := 	"2.Initialize the servo gun position.";
  CONST swstring TxtServCal1 := 	"A ManServiceCalib is required before";
  CONST swstring TxtServCal2 := 	"continuing the program execution.";

  ! Error messages - supervision
  CONST swstring TxtNoWater1 := 	"Not enough water supply in pipe1!";
  CONST swstring TxtNoWater2 := 	"Not enough water supply in pipe2!";
  CONST swstring TxtOverTemp := 	"Overtemperature!";
  CONST swstring TxtLowAirPress := 	"Low air pressure in equalize cylinder!";
  CONST swstring TxtTimerReady := 	"Timer not ready!";
  CONST swstring TxtWeldContactor := 	"The weld contactor is off!";

  ! Error messages - supervision type
  ! Do not change the names. They are used internally!
  CONST swstring TxtSwPrepare := 	"Error in SwPrepare";
  CONST swstring TxtSwCloseGun := 	"Error in SwCloseGun";
  CONST swstring TxtSwPreWeld := 	"Error in SwPreWeld";
  CONST swstring TxtSwOpenGun := 	"Error in SwOpenGun";

  ! Error messages - general error info
  ! Do not change the names. They are used internally!
  CONST swstring TxtGenCurrGun := 	"Current gun: ";
  CONST swstring TxtGenCurrValue := 	"Current value: ";
  CONST swstring TxtGenNOfGun := 	"Number of defined guns > 8";
  CONST swstring TxtGenNoEquip := 	"Non existent gun";
  CONST swstring TxtGenNoName := 	"Name not specified in data(mecunit)";
  CONST swstring TxtGenChName := 	"Rename curr_gundata.gun_name";
  CONST swstring TxtGenGunPos := 	"Wrong gun position";
  CONST swstring TxtGenGunNotEqu := 	"Gun position has to be equal to previous";
  CONST swstring TxtGenModGunPos := 	"Modify position";
  CONST swstring TxtGenArgPrePos := 	"Argument PrePos lesser than zero";
  CONST swstring TxtGenGunTitle := 	"Gun error";
  CONST swstring TxtGenWeldTitle := 	"Weld error";
  CONST swstring TxtGenWeldTimout := 	"Weld complete timeout";
  CONST swstring TxtGenWeldFault := 	"Weld fault reported";
  CONST swstring TxtGenCurrRobT := 	"Current robtarget:";
  CONST swstring TxtGenWeldAbort := 	"Weld aborted!";
  CONST swstring TxtGenPosSkip := 	"Current position skipped";
  CONST swstring TxtGenStepwNA := 	    "Current weld skipped";
  CONST swstring TxtGenStepwNA1 := 	    "Welding during stepwise execution is not";
  CONST swstring TxtGenStepwNA2 := 	    "implemented for software equalizing.";
  CONST swstring TxtGenStepwNA3 := 	    "Use simtype 3 for weld position";
  CONST swstring TxtGenStepwNA4 := 	    "modifications.";

  ! Error messages - plate thickness error
  ! Do not change the names. They are used internally!
  CONST swstring TxtPlateGunPos :=	"Negative gun position!";
  CONST swstring TxtPlateMissing :=	"Missing plates!";
  CONST swstring TxtPlateImproper :=	"Improper geometry!";
  CONST swstring TxtPlateTol :=		"Tolerance:          ";
  CONST swstring TxtPlateExpTh :=	"Expected thickness: ";
  CONST swstring TxtPlateAchTh :=	"Achieved thickness: ";
  CONST swstring TxtInfoTP	 :=	"Press Ignore to skip the thickness test";
  CONST swstring TxtContAnyWay :=	"Press OK to close the gun";
  CONST swstring TxtCurrErrSkip :=	"Current error skipped";
  CONST swstring TxtCurrErrAbort :=	"Current error ignored";

  ! Error messages - forcedata
  ! Do not change the names. They are used internally!
  CONST swstring TxtForceData := 	"Invalid forcedata";
  CONST swstring TxtForceTime := 	"Invalid value of force_time";

  ! Error messages - spotdata
  ! Do not change the names. They are used internally!
  CONST swstring TxtSpotData := 	"Invalid spotdata";
  CONST swstring TxtChkProgNo := 	"Invalid value of prog_no";

  ! Common error messages - spotdata and forcedata
  ! Do not change the names. They are used internally!
  CONST swstring TxtChkCurrValue := 	"Current value: ";
  CONST swstring TxtChkInterval1 := 	"Allowed interval: ";
  CONST swstring TxtChkInterval2 := 	" <= value <= ";
  CONST swstring TxtChkTipForce := 	"Invalid value of tip_force";
  CONST swstring TxtChkPlateThi := 	"Invalid value of plate_thickness";
  CONST swstring TxtChkPlateTol := 	"Invalid tolerance of plate_thickness";

  ! Error messages - gundata
  ! Do not change the names. They are used internally!
  CONST swstring TxtGunData := 		"Invalid gundata";
  CONST swstring TxtGunInterval1 := 	"Allowed interval: 0 <= value <= ";
  CONST swstring TxtGunInterval2 := 	"Allowed values: 0 < value";
  CONST swstring TxtGunType1 := 	"Invalid value of data gun_type";
  CONST swstring TxtGunType2 := 	"Allowed values: 1";
  CONST swstring TxtGunCloseTime := 	"Invalid value of data pre_close_time";
  CONST swstring TxtGunEquTime := 	"Invalid value of data pre_equ_time";
  CONST swstring TxtSpotWeldTout := 	"Invalid value of weld_timeout";
  CONST swstring TxtGunRlsDist :=       "Invalid value of release_dist";
  CONST swstring TxtGunDeflDist :=      "Invalid calculated deflection value";
  CONST swstring TxtGunDeflTime :=      "Invalid value of deflection_time";

  ! Error messages - simdata
  ! Do not change the names. They are used internally!
  CONST swstring TxtSimData := 		"Invalid simdata";
  CONST swstring TxtChkSimType := 	"Invalid value of sim_type";

  ! Error messages - other data
  ! Do not change the names. They are used internally!
  CONST swstring TxtOthData := 		"Invalid data";
  CONST swstring TxtOthProgNum1 := 	"Invalid value of data prog_num_type";
  CONST swstring TxtOthProgNum2 := 	"Allowed values are: 0, 1 or 2";
  CONST swstring TxtOthParity1 := 	"Invalid value of data prog_num_parity";
  CONST swstring TxtOthParity2 := 	"Allowed values are: 0, 1 or 2";
  CONST swstring TxtOthOptArg := 	"No optional argument is selected";
  CONST swstring TxtOthRedSpeed1 :=     "Reduced speed N/A for SW Equalizing";
  CONST swstring TxtOthRedSpeed2 :=     "Allowed value (in percent): ";
  CONST swstring TxtOthRedSpeed3 :=     "Speed override (TP): ";
  
  ! Error messages - Touchup routine
  ! Do not change the names. They are used internally!
  CONST swstring TxtTouchUpTitle :=     "TouchUp Error";
  CONST swstring TxtDataNotAvail1 :=    "Touch up data not available!";
  CONST swstring TxtDataNotAvail2 :=    "Please contact your ABB FAC.";
  CONST swstring TxtCritPos1 :=         "Critical position for a measurement!!";
  CONST swstring TxtCritPos2 :=         "Supervise the touch up/increase force";
  CONST swstring TxtCritPos3 :=         "(Position not suitable for MeasureWearL)";
  CONST swstring TxtHighForce1 :=       "TouchUp force to large!!";
  CONST swstring TxtHighForce2 :=       "Overload at least of axis ";

  ! Erro message - UpdateCalibData routine
  ! Do not change the names. They are used internally!
  CONST swstring TxtNewTipOutOfRg :=    "New tip out of range!";
  CONST swstring TxtMovTipSize :=       "New moveable tip with unexpected size";
  CONST swstring TxtDiffToLast :=       "Difference to last tip: ";
  CONST swstring TxtTipChgTol :=        "Tip change tolerance: +";
  CONST swstring TxtTipWrOutOfRg :=     "Tip wear out of range!";
  CONST swstring TxtActTipWearMov :=    "Actual tip wear (moveable): ";
  CONST swstring TxtTipWearTol :=       "Tip wear tolerance: +";
    
  ! Erro message - MeasureWearL instruction
  ! Do not change the names. They are used internally!
  CONST swstring TxtNoSurfFound  :=     "No surface was found in TouchUp";
  CONST swstring TxtChkPos :=           "Check position of the programmed point";
  CONST swstring TxtChkTip :=           "Check for missing or wrong tip";
  CONST swstring TxtIncDistVar  :=      "Increase variable m_movein_dist";
  
  ! Messages - TupPosCheck routine
  ! Do not change the names. They are used internally!
  CONST swstring TxtTupPosCheck1 :=    "Check of current position for TouchUp";
  CONST swstring TxtTupPosCheck2 :=    "(Typical value: ";
  CONST swstring TxtTupPosCheck3 :=    "Current tool: ";
  CONST swstring TxtTupPosCheck4 :=    "Current wobj: ";
  CONST swstring TxtChkValue :=         "TouchUp value (axis ";
  CONST swstring TxtReDo :=             "ReDo";

  ! Error message - UpdateFixTipData routine
  ! Do not change the names. They are used internally!
  CONST swstring TxtFixTipSize :=       "New fixed tip with unexpected size";
  CONST swstring TxtDiffToRefTip :=     "Difference to reference tip:";
  CONST swstring TxtActTipWearFix :=    "Actual tip wear (fixed): ";

  ! Function keys messages
  ! Do not change the names or the value. They are used internally!
  CONST swstring TxtCancel := 		"Cancel";
  CONST swstring TxtInfo := 		"Info";
  CONST swstring TxtIgnore:=		"Ignore";
  CONST swstring TxtSkip := 		"Skip";
  CONST swstring TxtRetry := 		"Retry";
  CONST swstring TxtReweld := 		"Reweld";

  ! Function keys messages and teachpendant messages. Only used in manual actions
  ! Common messages
  CONST swstring TxtManSelGun := 	"Select gun. Press CANCEL to quit.";
  CONST swstring TxtManGunNo{8}:=	["Gun1","Gun2","Gun3","Gun4","Gun5","Gun6","Gun7","Gun8"];
  CONST swstring TxtManReturn := 	"Return";
  CONST swstring TxtManNext := 		"Next";
  CONST swstring TxtManChange := 	"Change";
  CONST swstring TxtManCancel := 	"Cancel";
  CONST swstring TxtManCurrValue := 	"Current value: ";
  CONST swstring TxtManMecNoAct := 	"Mechanical unit is not active";
  CONST swstring TxtManActUnit := 	"Activate unit";

  ! Function keys messages and teachpendant messages used in manual actions
  ! for routine ManAddGunName
  CONST swstring TxtManFoundGun := 	"Found a servogun with the name";
  CONST swstring TxtManQueryGun := 	"Do you want to use this servogun?";
  CONST swstring TxtManGunDef1 :=	"Current number of guns defined";
  CONST swstring TxtManGunDef2 := 	"in the system are";
  CONST swstring TxtManSelGunNo1 :=	"Select gun number";
  CONST swstring TxtManSelGunNo2 :=	"The gun";
  CONST swstring TxtManSelGunNo3 :=	"will be used for";
  CONST swstring TxtManGunData1 :=	"curr_gundata";
  CONST swstring TxtManGunData2 :=	".gun_name";
  CONST swstring TxtManGunData3 :=	"will be updated.";
  CONST swstring TxtManGunNoErr1 :=	"There are only";
  CONST swstring TxtManGunNoErr2 :=	"guns defined";
  CONST swstring TxtManGunNoErr3 :=	"in the system.";
  CONST swstring TxtManSelNewGun :=	"Select a new gun number!";
  CONST swstring TxtManNoGun :=	"No servoguns were found";
  CONST swstring TxtManAddMocCfg :=	"Add configuration for servogun";

  ! Function keys messages and teachpendant messages used in manual actions
  ! for routine ManSpot
  CONST swstring TxtManSpotData := 	"Current spotdata:";
  CONST swstring TxtManSpotDataDe := 	"Current spotdata definition";
  CONST swstring TxtManSpotWeld := 	"Weld";
  CONST swstring TxtManSpotForce := 	"Input tip force";
  CONST swstring TxtManSpotThick := 	"Input plate thickness";
  CONST swstring TxtManSpotToler := 	"Input plate tolerance";
  CONST swstring TxtManSpotProg := 	"Input weld program";
  CONST swstring TxtManSpotTout := 	"Input weld timeout";

  ! Function keys messages and teachpendant messages used in manual actions
  ! for routine ManSetForce
  CONST swstring TxtManSetFData := 	"Current manforcedata:";
  CONST swstring TxtManSetFDataDe :=	"Current forcedata definition";
  CONST swstring TxtManSetFApply := 	"Apply";
  CONST swstring TxtManSetFForce := 	"Input tip force";
  CONST swstring TxtManSetFThick := 	"Input plate thickness";
  CONST swstring TxtManSetFToler := 	"Input plate tolerance";
  CONST swstring TxtManSetFTout := 	"Input force time";

  ! Teachpendant messages used in manual actions for routine ManServiceCalib
  CONST swstring TxtManServCalib := 	"Manual service calibration";
  CONST swstring TxtManFineCalib := 	"2.Initialize the servo gun position.";
  CONST swstring TxtManFCalInfo1 := 	"After the gun has been fine calibrated.";
  CONST swstring TxtManFCalInfo2 := 	"Tip wear will be reset.";
  CONST swstring TxtManRevCUpdate := 	"1.Synchronize the tip position.";
  CONST swstring TxtManRevCInfo1 := 	"After the rev.counter has been lost or";
  CONST swstring TxtManRevCInfo2 := 	"updated. Tip wear will not be updated.";
  CONST swstring TxtManAckFineCal := 	"Are you sure that you want to continue?";

! Teachpendant messages used in manual actions for routine ManCalib
  CONST swstring TxtManCalibCh := 	"Choose the type of calibration";

  ! Teachpendant messages used in manual actions for routine ManForceCalib
  CONST swstring TxtManForceCal := 	"Manual force calibration";
  CONST swstring TxtManSelNum := 	"How many measurements? (min2,max10)";
  CONST swstring TxtManSelVal := 	"Enter force value";
  CONST swstring TxtManSelThick :=	"Select sensor thickness (min0,max100)";
  CONST swstring TxtManSelTime :=	"Select force time (min1,max10)";
  CONST swstring TxtManSelOK := 	"Press OK to continue";
  CONST swstring TxtManSelCancel := 	"Press CANCEL to change";
  CONST swstring TxtManSetThick :=	"Enter thickness in mm.";
  CONST swstring TxtManSetTime :=	"Enter force time in sec.";
  CONST swstring TxtManInvVal := 	"Invalid value, default will be used:";
  CONST swstring TxtManInValue := 	"Enter measured tip force";
  CONST swstring TxtManNoCalib := 	"Number of force calibrations done: ";
  CONST swstring TxtManNoCalibP := 	"No of calibrations to be performed ";
  CONST swstring TxtManMaxForce :=	"Select max tip force";
  CONST swstring TxtManNumCalib :=	"Select number of calibrations";
  CONST swstring TxtManCurrCalib1 :=	"Press OK to perform";
  CONST swstring TxtManCurrCalib2 :=	"calibration no: ";
  CONST swstring TxtManCurrTorque := 	"Current motor torque = ";
  CONST swstring TxtManCurrForce := 	"Current force = ";
  CONST swstring TxtManCurrThick := 	"Current thickness = ";
  CONST swstring TxtManCurrTime := 	"Current force time = ";
  CONST swstring TxtManCurrVal := 	"Current values:";
  CONST swstring TxtManQueryRest1 := 	"Press OK to activate";
  CONST swstring TxtManQueryRest2 := 	"the new calibration";
  CONST swstring TxtManRestart := 	"Press OK to restart the system";
  CONST swstring TxtManMaxProgF1 := 	"Max programmable force";
  CONST swstring TxtManMaxProgF2 := 	"for this gun is ";
  CONST swstring TxtManAcceptVal :=   	"Is this value OK?";
  CONST swstring TxtManAckMeas   :=  	"Press OK to accept measurement";
  CONST swstring TxtManRedoMeas  :=  	"Press RETRY to try again";
  CONST swstring TxtManRecalErr1 := 	"Force calibration failed";
  CONST swstring TxtManRecalErr2 := 	"Check the values and try again";
  CONST swstring TxtManRecalErr3 := 	"Do not restart system until a";
  CONST swstring TxtManRecalErr4 := 	"valid force calibration is made";

  ! Teachpendant messages used in manual actions for routine UpdateRobtarget
  CONST swstring TxtUpdateRobt1 :=      "Weld position TouchUp routine";
  CONST swstring TxtUpdateRobt2 :=      "Press Change to adjust the gun position.";
  CONST swstring TxtUpdateRobt3 :=      "Press Next to continue to the next ";
  CONST swstring TxtUpdateRobt4 :=      "Press Shift to change to the ";
  CONST swstring TxtUpdateRobt5 :=      "Move the fixed electrode by";
  CONST swstring TxtUpdateRobt6 :=      "INCreasing/DECreasing the distance";
  CONST swstring TxtUpdateRobt7 :=      "to the sheet. Manually or Automatic.";
  CONST swstring TxtUpdateRobt8 :=      "to the sheet. Small/Large to chg length."; 
  CONST swstring TxtUpdateRobt9 :=      "No changes was made to the weldpoint";
  CONST swstring TxtUpdateRobt10 :=     "Move the movable electrode by";
  CONST swstring TxtUpdateRobt11 :=      "weld position."; 
  CONST swstring TxtUpdateRobt12 :=     "movable electrode or STOP to proceed.";  
  CONST swstring TxtUpdateRobt13 :=     "fixed electrode or STOP to proceed.";
  CONST swstring TxtUpdateRobt14 :=      "Use ModPos to update your position";
  CONST swstring TxtShift       :=      "Shift";  
  CONST swstring TxtInc         :=      "INC";
  CONST swstring TxtDec         :=      "DEC";
  CONST swstring TxtAuto        :=      "AUTO"; 
  CONST swstring TxtStop        :=      "STOP";

  ! Teachpendant messages used in manual actions for routine UpdateFixTipData
  CONST swstring TxtDiffFixToRef  :=    "Difference fixed to ref tip = ";
  CONST swstring TxtActWearFixTip :=    "Actual wear fixed tip= ";           
  CONST swstring TxtTotwearFixTip :=    "Total wear fixed tip= ";
  CONST swstring TxtMeasRefDist  :=     "Measured reference distance = ";
  
  ! Teachpendant messages used in manual actions for routine UpdateCalibData
  CONST swstring TxtActWearMov :=       "Actual wear moveable tip= ";
  CONST swstring TxtTotWearMov :=       "Total wear moveable tip= ";
  CONST swstring TxtActTipWrBoth :=   "Actual tip wear (both tips)= ";
  CONST swstring TxtTotTipWrBoth  :=  "Total tip wear (both tips)= ";
  CONST swstring TxtTotTWReachMax :="Total tip wear has reached max tip wear";
  CONST swstring TxtDiffMov2LstTp := "Difference moveable to last tip = ";
    
  ! Teachpendant messages used in manual actions for routine ReCalcTCP
  CONST swstring TxtReCalcMess1 := "You have to change the ";
  CONST swstring TxtRecalcMess2 := "tip_wear_ratio value in gundata."; 
  CONST swstring TxtRecalcMess3 := "The value is not between 0 and 100.";
  CONST swstring TxtRecalcMess4 := "This instruction has no effect "; 
  CONST swstring TxtRecalcMess5 := "to compensate for the tip wear.";
ENDMODULE
