1020 lines
81 KiB
C#
1020 lines
81 KiB
C#
using System;
|
|
using System.Text;
|
|
|
|
namespace Shared
|
|
{
|
|
public sealed class AxtMotDef
|
|
{
|
|
// IP COMMAND LIST
|
|
public enum IPCOMMAND
|
|
{
|
|
// PGM-1 Group Register
|
|
IPxyRANGERead = 0x00, // PGM-1 RANGE READ, 16bit, 0xFFFF
|
|
IPxyRANGEWrite = 0x80, // PGM-1 RANGE WRITE
|
|
IPxySTDRead = 0x01, // PGM-1 START/STOP SPEED DATA READ, 16bit,
|
|
IPxySTDWrite = 0x81, // PGM-1 START/STOP SPEED DATA WRITE
|
|
IPxyOBJRead = 0x02, // PGM-1 OBJECT SPEED DATA READ, 16bit,
|
|
IPxyOBJWrite = 0x82, // PGM-1 OBJECT SPEED DATA WRITE
|
|
IPxyRATE1Read = 0x03, // PGM-1 RATE-1 DATA READ, 16bit, 0xFFFF
|
|
IPxyRATE1Write = 0x83, // PGM-1 RATE-1 DATA WRITE
|
|
IPxyRATE2Read = 0x04, // PGM-1 RATE-2 DATA READ, 16bit, 0xFFFF
|
|
IPxyRATE2Write = 0x84, // PGM-1 RATE-2 DATA WRITE
|
|
IPxyRATE3Read = 0x05, // PGM-1 RATE-3 DATA READ, 16bit, 0xFFFF
|
|
IPxyRATE3Write = 0x85, // PGM-1 RATE-3 DATA WRITE
|
|
IPxyRCP12Read = 0x06, // PGM-1 RATE CHANGE POINT 1-2 READ, 16bit, 0xFFFF
|
|
IPxyRCP12Write = 0x86, // PGM-1 RATE CHANGE POINT 1-2 WRITE
|
|
IPxyRCP23Read = 0x07, // PGM-1 RATE CHANGE POINT 2-3 READ, 16bit, 0xFFFF
|
|
IPxyRCP23Write = 0x87, // PGM-1 RATE CHANGE POINT 2-3 WRITE
|
|
IPxySW1Read = 0x08, // PGM-1 SW-1 DATA READ, 15bit, 0x7FFF
|
|
IPxySW1Write = 0x88, // PGM-1 SW-1 DATA WRITE
|
|
IPxySW2Read = 0x09, // PGM-1 SW-2 DATA READ, 15bit, 0x7FFF
|
|
IPxySW2Write = 0x89, // PGM-1 SW-2 DATA WRITE
|
|
IPxyPWMRead = 0x0A, // PGM-1 PWM ĂâˇÂ źłÁ¤ DATA READ(0~6), 3bit, 0x00
|
|
IPxyPWMWrite = 0x8A, // PGM-1 PWM ĂâˇÂ źłÁ¤ DATA WRITE
|
|
IPxyREARRead = 0x0B, // PGM-1 SLOW DOWN/REAR PULSE READ, 32bit, 0x00000000
|
|
IPxyREARWrite = 0x8B, // PGM-1 SLOW DOWN/REAR PULSE WRITE
|
|
IPxySPDRead = 0x0C, // PGM-1 ÇöŔç SPEED DATA READ, 16bit, 0x0000
|
|
IPxyNoOperation_8C = 0x8C, // No operation
|
|
IPxySPDCMPRead = 0x0D, // PGM-1 ÇöŔç SPEED şńął DATA READ, 16bit, 0x0000
|
|
IPxySPDCMPWrite = 0x8D, // PGM-1 ÇöŔç SPEED şńął DATA WRITE
|
|
IPxyDRVPULSERead = 0x0E, // PGM-1 DRIVE PULSE COUNTER READ, 32bit, 0x00000000
|
|
IPxyNoOperation_8E = 0x8E, // No operation
|
|
IPxyPRESETPULSERead = 0x0F, // PGM-1 PRESET PULSE DATA READ, 32bit, 0x00000000
|
|
IPxyNoOperation_8F = 0x8F, // No operation
|
|
// PGM-1 Update Group Register
|
|
IPxyURANGERead = 0x10, // PGM-1 UP-DATE RANGE READ, 16bit, 0xFFFF
|
|
IPxyURANGEWrite = 0x90, // PGM-1 UP-DATE RANGE WRITE
|
|
IPxyUSTDRead = 0x11, // PGM-1 UP-DATE START/STOP SPEED DATA READ, 16bit,
|
|
IPxyUSTDWrite = 0x91, // PGM-1 UP-DATE START/STOP SPEED DATA WRITE
|
|
IPxyUOBJRead = 0x12, // PGM-1 UP-DATE OBJECT SPEED DATA READ, 16bit,
|
|
IPxyUOBJWrite = 0x92, // PGM-1 UP-DATE OBJECT SPEED DATA WRITE
|
|
IPxyURATE1Read = 0x13, // PGM-1 UP-DATE RATE-1 DATA READ, 16bit, 0xFFFF
|
|
IPxyURATE1Write = 0x93, // PGM-1 UP-DATE RATE-1 DATA WRITE
|
|
IPxyURATE2Read = 0x14, // PGM-1 UP-DATE RATE-2 DATA READ, 16bit, 0xFFFF
|
|
IPxyURATE2Write = 0x94, // PGM-1 UP-DATE RATE-2 DATA WRITE
|
|
IPxyURATE3Read = 0x15, // PGM-1 UP-DATE RATE-3 DATA READ, 16bit, 0xFFFF
|
|
IPxyURATE3Write = 0x95, // PGM-1 UP-DATE RATE-3 DATA WRITE
|
|
IPxyURCP12Read = 0x16, // PGM-1 UP-DATE RATE CHANGE POINT 1-2 READ, 16bit, 0xFFFF
|
|
IPxyURCP12Write = 0x96, // PGM-1 UP-DATE RATE CHANGE POINT 1-2 WRITE
|
|
IPxyURCP23Read = 0x17, // PGM-1 UP-DATE RATE CHANGE POINT 2-3 READ, 16bit, 0xFFFF
|
|
IPxyURCP23Write = 0x97, // PGM-1 UP-DATE RATE CHANGE POINT 2-3 WRITE
|
|
IPxyUSW1Read = 0x18, // PGM-1 UP-DATE SW-1 DATA READ, 15bit, 0x7FFF
|
|
IPxyUSW1Write = 0x98, // PGM-1 UP-DATE SW-1 DATA WRITE
|
|
IPxyUSW2Read = 0x19, // PGM-1 UP-DATE SW-2 DATA READ, 15bit, 0x7FFF
|
|
IPxyUSW2Write = 0x99, // PGM-1 UP-DATE SW-2 DATA WRITE
|
|
IPxyNoOperation_1A = 0x1A, // No operation
|
|
IPxyNoOperation_9A = 0x9A, // No operation
|
|
IPxyUREARRead = 0x1B, // PGM-1 UP-DATE SLOW DOWN/REAR PULSE READ, 32bit, 0x00000000
|
|
IPxyUREARWrite = 0x9B, // PGM-1 UP-DATE SLOW DOWN/REAR PULSE WRITE
|
|
IPxySPDRead_1C = 0x1C, // PGM-1 UP-DATA CURRENT SPEED READ(Same with 0x0C)
|
|
IPxyNoOperation_9C = 0x9C, // No operation
|
|
IPxySPDCMPRead_1D = 0x1D, // PGM-1 ÇöŔç SPEED şńął DATA READ(Same with 0x0D)
|
|
IPxySPDCMPWrite_9D = 0x9D, // PGM-1 ÇöŔç SPEED şńął DATA WRITE(Same with 0x8D)
|
|
IPxyACCPULSERead = 0x1E, // PGM-1 °ĄźÓ PULSE COUNTER READ, 32bit, 0x00000000
|
|
IPxyNoOperation_9E = 0x9E, // No operation
|
|
IPxyPRESETPULSERead_1F = 0x1F, // PGM-1 PRESET PULSE DATA READ(Same with 0x0F)
|
|
IPxyNoOperation_9F = 0x9F, // No operation
|
|
// PGM-2 Group Register
|
|
IPxyNoOperation_20 = 0x20, // No operation
|
|
IPxyPPRESETDRV = 0xA0, // +PRESET PULSE DRIVE, 32
|
|
IPxyNoOperation_21 = 0x21, // No operation
|
|
IPxyPCONTDRV = 0xA1, // +CONTINUOUS DRIVE
|
|
IPxyNoOperation_22 = 0x22, // No operation
|
|
IPxyPSCH1DRV = 0xA2, // +SIGNAL SEARCH-1 DRIVE
|
|
IPxyNoOperation_23 = 0x23, // No operation
|
|
IPxyPSCH2DRV = 0xA3, // +SIGNAL SEARCH-2 DRIVE
|
|
IPxyNoOperation_24 = 0x24, // No operation
|
|
IPxyPORGDRV = 0xA4, // +ORIGIN(żřÁĄ) SEARCH DRIVE
|
|
IPxyNoOperation_25 = 0x25, // No operation
|
|
IPxyMPRESETDRV = 0xA5, // -PRESET PULSE DRIVE, 32
|
|
IPxyNoOperation_26 = 0x26, // No operation
|
|
IPxyMCONTDRV = 0xA6, // -CONTINUOUS DRIVE
|
|
IPxyNoOperation_27 = 0x27, // No operation
|
|
IPxyMSCH1DRV = 0xA7, // -SIGNAL SEARCH-1 DRIVE
|
|
IPxyNoOperation_28 = 0x28, // No operation
|
|
IPxyMSCH2DRV = 0xA8, // -SIGNAL SEARCH-2 DRIVE
|
|
IPxyNoOperation_29 = 0x29, // No operation
|
|
IPxyMORGDRV = 0xA9, // -ORIGIN(żřÁĄ) SEARCH DRIVE
|
|
IPxyPULSEOVERRead = 0x2A, // Preset/MPG drive override pulse data read
|
|
IPxyPULSEOVERWrite = 0xAA, // PRESET PULSE DATA OVERRIDE(ON_BUSY)
|
|
IPxyNoOperation_2B = 0x2B, // No operation
|
|
IPxySSTOPCMD = 0xAB, // SLOW DOWN STOP
|
|
IPxyNoOperation_2C = 0x2C, // No operation
|
|
IPxyESTOPCMD = 0xAC, // EMERGENCY STOP
|
|
IPxyDRIVEMODERead = 0x2D, // ľĺśóŔĚşę ľżŔŰ źłÁ¤ DATA READ
|
|
IPxyDRIVEMODEWrite = 0xAD, // ľĺśóŔĚşę ľżŔŰ źłÁ¤ DATA WRITE
|
|
IPxyMPGCONRead = 0x2E, // MPG OPERATION SETTING DATA READ, 3bit, 0x00
|
|
IPxyMPGCONWrite = 0xAE, // MPG OPERATION SETTING DATA WRITE
|
|
IPxyPULSEMPGRead = 0x2F, // MPG PRESET PULSE DATA READ, 32bit, 0x00000000
|
|
IPxyPULSEMPGWrite = 0xAF, // MPG PRESET PULSE DATA WRITE
|
|
// Extension Group Register
|
|
IPxyNoOperation_30 = 0x30, // No operation
|
|
IPxyPSPO1DRV = 0xB0, // +SENSOR POSITIONING DRIVE I
|
|
IPxyNoOperation_31 = 0x31, // No operation
|
|
IPxyMSPO1DRV = 0xB1, // -SENSOR POSITIONING DRIVE I
|
|
IPxyNoOperation_32 = 0x32, // No operation
|
|
IPxyPSPO2DRV = 0xB2, // +SENSOR POSITIONING DRIVE II
|
|
IPxyNoOperation_33 = 0x33, // No operation
|
|
IPxyMSPO2DRV = 0xB3, // -SENSOR POSITIONING DRIVE II
|
|
IPxyNoOperation_34 = 0x34, // No operation
|
|
IPxyPSPO3DRV = 0xB4, // +SENSOR POSITIONING DRIVE III
|
|
IPxyNoOperation_35 = 0x35, // No operation
|
|
IPxyMSPO3DRV = 0xB5, // -SENSOR POSITIONING DRIVE III
|
|
IPxySWLMTCONRead = 0x36, // SOFT LIMIT źłÁ¤ READ, 3bit, 0x00
|
|
IPxySWLMTCONWrite = 0xB6, // SOFT LIMIT źłÁ¤ WRITE
|
|
IPxyMSWLMTCOMPRead = 0x37, // -SOFT LIMIT şńął ˇšÁö˝şĹÍ źłÁ¤ READ, 32bit, 0x80000000
|
|
IPxyMSWLMTCOMPWrite = 0xB7, // -SOFT LIMIT şńął ˇšÁö˝şĹÍ źłÁ¤ WRITE
|
|
IPxyPSWLMTCOMPRead = 0x38, // +SOFT LIMIT şńął ˇšÁö˝şĹÍ źłÁ¤ READ, 32bit, 0x7FFFFFFF
|
|
IPxyPSWLMTCOMPWrite = 0xB8, // +SOFT LIMIT şńął ˇšÁö˝şĹÍ źłÁ¤ WRITE
|
|
IPxyTRGCONRead = 0x39, // TRIGGER MODE źłÁ¤ READ, 32bit, 0x00010000
|
|
IPxyTRGCONWrite = 0xB9, // TRIGGER MODE źłÁ¤ WRITE
|
|
IPxyTRGCOMPRead = 0x3A, // TRIGGER şńął ľĽŔĚĹÍ źłÁ¤ READ, 32bit, 0x00000000
|
|
IPxyTRGCOMPWrite = 0xBA, // TRIGGER şńął ľĽŔĚĹÍ źłÁ¤ WRITE
|
|
IPxyICMRead = 0x3B, // INTERNAL M-DATA źłÁ¤ READ, 32bit, 0x80000000
|
|
IPxyICMWrite = 0xBB, // INTERNAL M-DATA źłÁ¤ WRITE
|
|
IPxyECMRead = 0x3C, // EXTERNAL M-DATA źłÁ¤ READ, 32bit, 0x80000000
|
|
IPxyECMWrite = 0xBC, // EXTERNAL M-DATA źłÁ¤ WRITE
|
|
IPxySTOPPWRead = 0x3D, // Stop pulse width Read
|
|
IPxySTOPPWWrite = 0xBD, // Stop pulse width Write
|
|
IPxyNoOperation_3E = 0x3E, // No operation
|
|
IPxyNoOperation_BE = 0xBE, // No operation
|
|
IPxyNoOperation_3F = 0x3F, // No operation
|
|
IPxyTRGCMD = 0xBF, // TRIG output signal generation command
|
|
// Interpolation Group Registers
|
|
IPxCIRXCRead = 0x40, // Circular interpolation X axis center point read
|
|
IPxCIRXCWrite = 0xC0, // Circular interpolation X axis center point write
|
|
IPxCIRYCRead = 0x41, // Circular interpolation Y axis center point read
|
|
IPxCIRYCWrite = 0xC1, // Circular interpolation Y axis center point write
|
|
IPxENDXRead = 0x42, // Interpolation X axis end point read
|
|
IPxENDXWrite = 0xC2, // Interpolation X axis end point write
|
|
IPxENDYRead = 0x43, // Interpolation Y axis end point read
|
|
IPxENDYWrite = 0xC3, // Interpolation Y axis end point write
|
|
IPxPTXENDRead = 0x44, // Pattern interpolation X Queue data read
|
|
IPxPTXENDWrite = 0xC4, // Pattern interpolation X Queue data with queue push
|
|
IPxPTYENDRead = 0x45, // Pattern interpolation Y Queue data read
|
|
IPxPTYENDWrite = 0xC5, // Pattern interpolation Y Queue data write
|
|
IPxPTQUEUERead = 0x46, // Pattern interpolation Queue index read
|
|
IPxNoOperation_C6 = 0xC6, // No operation
|
|
IPxNoOperation_47 = 0x47, // No operation
|
|
IPxNoOperation_C7 = 0xC7, // No operation
|
|
IPxNoOperation_48 = 0x48, // No operation
|
|
IPxNoOperation_C8 = 0xC8, // No operation
|
|
IPxNoOperation_49 = 0x49, // No operation
|
|
IPxNoOperation_C9 = 0xC9, // No operation
|
|
IPxINPSTATUSRead = 0x4A, // Interpolation Status register read
|
|
IPxNoOperation_CA = 0xCA, // No operation
|
|
IPxINPMODE_4B = 0x4B, // Interpolation mode in Queue TOP contets
|
|
IPxLINPDRV = 0xCB, // Linear interpolation with Queue push
|
|
IPxINPMODE_4C = 0x4C, // Interpolation mode in Queue TOP contets
|
|
IPxCINPDRV = 0xCC, // Circular interpolation with Queue push
|
|
IPxBPINPMODE = 0x4D, // Bit Pattern Interpolation mode in Queue TOP contets
|
|
IPxBPINPDRV = 0xCD, // Bit pattern Drive
|
|
IPxNoOperation_4E = 0x4E, // No Operation
|
|
IPxNoOperation_CE = 0xCE, // No Operation
|
|
IPxNoOperation_4F = 0x4F, // No Operation
|
|
IPxNoOperation_CF = 0xCF, // No Operation
|
|
// Arithemetic Group Register
|
|
IPxNoOperation_50 = 0x50, // No Operation
|
|
IPxINPCLR = 0xD0, // Initialize all interpolation control block
|
|
IPxINPMPOINTRead = 0x51, // Interpolation deceleration manual point(unsigned) read
|
|
IPxINPMPOINTWrite = 0xD1, // Interpolation deceleration manual point(unsigned) write
|
|
IPxNoOperation_52 = 0x52, // No Operation
|
|
IPxINPCLRSWrite = 0xD2, // Initialize interpolation control block with target selection
|
|
IPxNoOperation_53 = 0x53, // No Operation
|
|
IPxINPDRVWrite = 0xD3, // linear/circular drive start with queue data(Hold on mode), Restart on pause
|
|
IPxNoOperation_54 = 0x54, // No operation
|
|
IPxNoOperation_D4 = 0xD4, // No operation
|
|
IPxNoOperation_55 = 0x55, // No operation
|
|
IPxARTSHOT = 0xD5, // Arithmetic block One time execution
|
|
IPxARTSHOPERRead = 0x56, // Arithmetic block shift and operation selection Read
|
|
IPxARTSHOPERWrite = 0xD6, // Arithmetic block shift and operation selection Write
|
|
IPxARTSHRead = 0x57, // Arithmetic block shift amount data Read
|
|
IPxARTSHWrite = 0xD7, // Arithmetic block shift amount data Write
|
|
IPxARTSOURCERead = 0x58, // Arithmetic block operand configure data Read
|
|
IPxARTSOURCEWrite = 0xD8, // Arithmetic block operand configure data Write
|
|
IPxARTCRESULT1Read = 0x59, // Arithmetic first compare result data Read
|
|
IPxNoOperation_D9 = 0xD9, // No Operation
|
|
IPxARTCRESULT2Read = 0x5A, // Arithmetic second compare result data Read
|
|
IPxNoOperation_DA = 0xDA, // No Operation
|
|
IPxARTARESULT1Read = 0x5B, // Arithmetic first algebraic result data Read
|
|
IPxNoOperation_DB = 0xDB, // No Operation
|
|
IPxARTARESULT2Read = 0x5C, // Arithmetic second algebraic result data Read
|
|
IPxNoOperation_DC = 0xDC, // No operation
|
|
IPxARTUSERARead = 0x5D, // Arithmetic block User operand A Read
|
|
IPxARTUSERAWrite = 0xDD, // Arithmetic block User operand A Write
|
|
IPxARTUSERBRead = 0x5E, // Arithmetic block User operand B Read
|
|
IPxARTUSERBWrite = 0xDE, // Arithmetic block User operand B Write
|
|
IPxARTUSERCRead = 0x5F, // Arithmetic block User operand C Read
|
|
IPxARTUSERCWrite = 0xDF, // Arithmetic block User operand C Write
|
|
// Scripter Group Register
|
|
IPySCRCON1Read = 0x40, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-1 READ, 32bit, 0x00000000
|
|
IPySCRCON1Write = 0xC0, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-1 WRITE
|
|
IPySCRCON2Read = 0x41, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-2 READ, 32bit, 0x00000000
|
|
IPySCRCON2Write = 0xC1, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-2 WRITE
|
|
IPySCRCON3Read = 0x42, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-3 READ, 32bit, 0x00000000
|
|
IPySCRCON3Write = 0xC2, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-3 WRITE
|
|
IPySCRCONQRead = 0x43, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-Queue READ, 32bit, 0x00000000
|
|
IPySCRCONQWrite = 0xC3, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-Queue WRITE
|
|
IPySCRDATA1Read = 0x44, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-1 READ, 32bit, 0x00000000
|
|
IPySCRDATA1Write = 0xC4, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-1 WRITE
|
|
IPySCRDATA2Read = 0x45, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-2 READ, 32bit, 0x00000000
|
|
IPySCRDATA2Write = 0xC5, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-2 WRITE
|
|
IPySCRDATA3Read = 0x46, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-3 READ, 32bit, 0x00000000
|
|
IPySCRDATA3Write = 0xC6, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-3 WRITE
|
|
IPySCRDATAQRead = 0x47, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-Queue READ, 32bit, 0x00000000
|
|
IPySCRDATAQWrite = 0xC7, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-Queue WRITE
|
|
IPyNoOperation_48 = 0x48, // No operation
|
|
IPySCRQCLR = 0xC8, // ˝şĹЏłĆŽ Queue clear
|
|
IPySCRCQSIZERead = 0x49, // ˝şĹЏłĆŽ ľżŔŰ źłÁ¤ Queue ŔÎľŚ˝ş READ, 4bit, 0x00
|
|
IPyNoOperation_C9 = 0xC9, // No operation
|
|
IPySCRDQSIZERead = 0x4A, // ˝şĹЏłĆŽ ľżŔŰ ľĽŔĚĹÍ Queue ŔÎľŚ˝ş READ, 4bit, 0x00
|
|
IPyNoOperation_CA = 0xCA, // No operation
|
|
IPySCRQFLAGRead = 0x4B, // ˝şĹЏłĆŽ Queue Full/Empty Flag READ, 4bit, 0x05
|
|
IPyNoOperation_CB = 0xCB, // No operation
|
|
IPySCRQSIZECONRead = 0x4C, // ˝şĹЏłĆŽ Queue size źłÁ¤(0~13) READ, 16bit, 0xD0D0
|
|
IPySCRQSIZECONWrite = 0xCC, // ˝şĹЏłĆŽ Queue size źłÁ¤(0~13) WRITE
|
|
IPySCRQSTATUSRead = 0x4D, // ˝şĹЏłĆŽ Queue status READ, 12bit, 0x005
|
|
IPyNoOperation_CD = 0xCD, // No operation
|
|
IPyNoOperation_4E = 0x4E, // No operation
|
|
IPyNoOperation_CE = 0xCE, // No operation
|
|
IPyNoOperation_4F = 0x4F, // No operation
|
|
IPyNoOperation_CF = 0xCF, // No operation
|
|
// Caption Group Register
|
|
IPyCAPCON1Read = 0x50, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-1 READ, 32bit, 0x00000000
|
|
IPyCAPCON1Write = 0xD0, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-1 WRITE
|
|
IPyCAPCON2Read = 0x51, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-2 READ, 32bit, 0x00000000
|
|
IPyCAPCON2Write = 0xD1, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-2 WRITE
|
|
IPyCAPCON3Read = 0x52, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-3 READ, 32bit, 0x00000000
|
|
IPyCAPCON3Write = 0xD2, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-3 WRITE
|
|
IPyCAPCONQRead = 0x53, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-Queue READ, 32bit, 0x00000000
|
|
IPyCAPCONQWrite = 0xD3, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ ˇšÁö˝şĹÍ-Queue WRITE
|
|
IPyCAPDATA1Read = 0x54, // °ĽšŤ¸Ž ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-1 READ, 32bit, 0x00000000
|
|
IPyNoOperation_D4 = 0xD4, // No operation
|
|
IPyCAPDATA2Read = 0x55, // °ĽšŤ¸Ž ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-2 READ, 32bit, 0x00000000
|
|
IPyNoOperation_D5 = 0xD5, // No operation
|
|
IPyCAPDATA3Read = 0x56, // °ĽšŤ¸Ž ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-3 READ, 32bit, 0x00000000
|
|
IPyNoOperation_D6 = 0xD6, // No operation
|
|
IPyCAPDATAQRead = 0x57, // °ĽšŤ¸Ž ľżŔŰ ľĽŔĚĹÍ ˇšÁö˝şĹÍ-Queue READ, 32bit, 0x00000000
|
|
IPyNoOperation_D7 = 0xD7, // No operation
|
|
IPyNoOperation_58 = 0x58, // No operation
|
|
IPyCAPQCLR = 0xD8, // °ĽšŤ¸Ž Queue clear
|
|
IPyCAPCQSIZERead = 0x59, // °ĽšŤ¸Ž ľżŔŰ źłÁ¤ Queue ŔÎľŚ˝ş READ, 4bit, 0x00
|
|
IPyNoOperation_D9 = 0xD9, // No operation
|
|
IPyCAPDQSIZERead = 0x5A, // °ĽšŤ¸Ž ľżŔŰ ľĽŔĚĹÍ Queue ŔÎľŚ˝ş READ, 4bit, 0x00
|
|
IPyNoOperation_DA = 0xDA, // No operation
|
|
IPyCAPQFLAGRead = 0x5B, // °ĽšŤ¸Ž Queue Full/Empty Flag READ, 4bit, 0x05
|
|
IPyNoOperation_DB = 0xDB, // No operation
|
|
IPyCAPQSIZECONRead = 0x5C, // °ĽšŤ¸Ž Queue size źłÁ¤(0~13) READ, 16bit, 0xD0D0
|
|
IPyCAPQSIZECONWrite = 0xDC, // °ĽšŤ¸Ž Queue size źłÁ¤(0~13) WRITE
|
|
IPyCAPQSTATUSRead = 0x5D, // °ĽšŤ¸Ž Queue status READ, 12bit, 0x005
|
|
IPyNoOperation_DD = 0xDD, // No operation
|
|
IPyNoOperation_5E = 0x5E, // No operation
|
|
IPyNoOperation_DE = 0xDE, // No operation
|
|
IPyNoOperation_5F = 0x5F, // No operation
|
|
IPyNoOperation_DF = 0xDF, // No operation
|
|
// BUS - 1 Group Register
|
|
IPxyINCNTRead = 0x60, // INTERNAL COUNTER DATA READ(Signed), 32bit, 0x00000000
|
|
IPxyINCNTWrite = 0xE0, // INTERNAL COUNTER DATA WRITE(Signed)
|
|
IPxyINCNTCMPRead = 0x61, // INTERNAL COUNTER COMPARATE DATA READ(Signed), 32bit, 0x00000000
|
|
IPxyINCNTCMPWrite = 0xE1, // INTERNAL COUNTER COMPARATE DATA WRITE(Signed)
|
|
IPxyINCNTSCALERead = 0x62, // INTERNAL COUNTER PRE-SCALE DATA READ, 8bit, 0x00
|
|
IPxyINCNTSCALEWrite = 0xE2, // INTERNAL COUNTER PRE-SCALE DATA WRITE
|
|
IPxyICPRead = 0x63, // INTERNAL COUNTER P-DATA READ, 32bit, 0x7FFFFFFF
|
|
IPxyICPWrite = 0xE3, // INTERNAL COUNTER P-DATA WRITE
|
|
IPxyEXCNTRead = 0x64, // EXTERNAL COUNTER DATA READ READ(Signed), 32bit, 0x00000000
|
|
IPxyEXCNTWrite = 0xE4, // EXTERNAL COUNTER DATA READ WRITE(Signed)
|
|
IPxyEXCNTCMPRead = 0x65, // EXTERNAL COUNTER COMPARATE DATA READ(Signed), 32bit, 0x00000000
|
|
IPxyEXCNTCMPWrite = 0xE5, // EXTERNAL COUNTER COMPARATE DATA WRITE(Signed)
|
|
IPxyEXCNTSCALERead = 0x66, // EXTERNAL COUNTER PRE-SCALE DATA READ, 8bit, 0x00
|
|
IPxyEXCNTSCALEWrite = 0xE6, // EXTERNAL COUNTER PRE-SCALE DATA WRITE
|
|
IPxyEXPRead = 0x67, // EXTERNAL COUNTER P-DATA READ, 32bit, 0x7FFFFFFF
|
|
IPxyEXPWrite = 0xE7, // EXTERNAL COUNTER P-DATA WRITE
|
|
IPxyEXSPDRead = 0x68, // EXTERNAL SPEED DATA READ, 32bit, 0x00000000
|
|
IPxyNoOperation_E8 = 0xE8, // No operation
|
|
IPxyEXSPDCMPRead = 0x69, // EXTERNAL SPEED COMPARATE DATA READ, 32bit, 0x00000000
|
|
IPxyEXSPDCMPWrite = 0xE9, // EXTERNAL SPEED COMPARATE DATA WRITE
|
|
IPxyEXFILTERDRead = 0x6A, // żÜşÎ źžź ÇĘĹÍ ´ëżŞĆř źłÁ¤ DATA READ, 32bit, 0x00050005
|
|
IPxyEXFILTERDWrite = 0xEA, // żÜşÎ źžź ÇĘĹÍ ´ëżŞĆř źłÁ¤ DATA WRITE
|
|
IPxyOFFREGIONRead = 0x6B, // OFF-RANGE DATA READ, 8bit, 0x00
|
|
IPxyOFFREGIONWrite = 0xEB, // OFF-RANGE DATA WRITE
|
|
IPxyDEVIATIONRead = 0x6C, // DEVIATION DATA READ, 16bit, 0x0000
|
|
IPxyNoOperation_EC = 0xEC, // No operation
|
|
IPxyPGMCHRead = 0x6D, // PGM REGISTER CHANGE DATA READ
|
|
IPxyPGMCHWrite = 0xED, // PGM REGISTER CHANGE DATA WRITE
|
|
IPxyCOMPCONRead = 0x6E, // COMPARE REGISTER INPUT CHANGE DATA READ
|
|
IPxyCOMPCONWrite = 0xEE, // COMPARE REGISTER INPUT CHANGE DATA WRITE
|
|
IPxyNoOperation_6F = 0x6F, // No operation
|
|
IPxyNoOperation_EF = 0xEF, // No operation
|
|
// BUS - 2 Group Register
|
|
IPxyFUNCONRead = 0x70, // Ĩ ąâ´É źłÁ¤ DATA READ,
|
|
IPxyFUNCONWrite = 0xF0, // Ĩ ąâ´É źłÁ¤ DATA WRITE
|
|
IPxyMODE1Read = 0x71, // MODE1 DATA READ,
|
|
IPxyMODE1Write = 0xF1, // MODE1 DATA WRITE
|
|
IPxyMODE2Read = 0x72, // MODE2 DATA READ,
|
|
IPxyMODE2Write = 0xF2, // MODE2 DATA WRITE
|
|
IPxyUIODATARead = 0x73, // UNIVERSAL IN READ,
|
|
IPxyUIODATAWrite = 0xF3, // UNIVERSAL OUT WRITE
|
|
IPxyENDSTATUSRead = 0x74, // END STATUS DATA READ,
|
|
IPxyCLIMCLR = 0xF4, // Complete limit stop clear command
|
|
IPxyMECHRead = 0x75, // MECHANICAL SIGNAL DATA READ, 13bit
|
|
IPxyNoOperation_F5 = 0xF5, // No operation
|
|
IPxyDRVSTATUSRead = 0x76, // DRIVE STATE DATA READ, 20bit
|
|
IPxyNoOperation_F6 = 0xF6, // No operation
|
|
IPxyEXCNTCLRRead = 0x77, // EXTERNAL COUNTER źłÁ¤ DATA READ, 9bit, 0x00
|
|
IPxyEXCNTCLRWrite = 0xF7, // EXTERNAL COUNTER źłÁ¤ DATA WRITE
|
|
IPxyNoOperation_78 = 0x78, // No operation
|
|
IPxySWRESET = 0xF8, // REGISTER CLEAR(INITIALIZATION), Software reset
|
|
IPxyINTFLAG1Read = 0x79, // Interrupt Flag1 READ, 32bit, 0x00000000
|
|
IPxyINTFLAG1CLRWrite = 0xF9, // Interrupt Flag1 Clear data write command.
|
|
IPxyINTMASK1Read = 0x7A, // Interrupt Mask1 READ, 32bit, 0x00000001
|
|
IPxyINTMASK1Write = 0xFA, // Interrupt Mask1 WRITE
|
|
IPxyUIOMODERead = 0x7B, // UIO MODE DATA READ, 12bit, 0x01F
|
|
IPxyUIOMODEWrite = 0xFB, // UIO MODE DATA WRITE
|
|
IPxyINTFLAG2Read = 0x7C, // Interrupt Flag2 READ, 32bit, 0x00000000
|
|
IPxyINTFLAG2CLRWrite = 0xFC, // Interrupt Flag2 Clear data write command.
|
|
IPxyINTMASK2Read = 0x7D, // Interrupt Mask2 READ, 32bit, 0x00000001
|
|
IPxyINTMASK2Write = 0xFD, // Interrupt Mask2 WRITE
|
|
IPxyINTUSERCONRead = 0x7E, // User interrupt selection control.
|
|
IPxyINTUSERCONWrite = 0xFE, // User interrupt selection control.
|
|
IPxyNoOperation_7F = 0x7F, // No operation
|
|
IPxyINTGENCMD = 0xFF // Interrupt generation command.
|
|
};
|
|
|
|
// CAMC-QI COMMAND LIST
|
|
public enum QICOMMAND
|
|
{
|
|
// Previous register and etc Registers
|
|
QiPRANGERead = 0x00, // Previous RANGE READ
|
|
QiPRANGEWrite = 0x80, // Previous RANGE WRITE
|
|
QiPSTDRead = 0x01, // Previous START/STOP SPEED DATA READ
|
|
QiPSTDWrite = 0x81, // Previous START/STOP SPEED DATA WRITE
|
|
QiPOBJRead = 0x02, // Previous OBJECT SPEED DATA READ
|
|
QiPOBJWrite = 0x82, // Previous OBJECT SPEED DATA WRITE
|
|
QiPRATE1Read = 0x03, // Previous RATE-1 DATA READ
|
|
QiPRATE1Write = 0x83, // Previous RATE-1 DATA WRITE
|
|
QiPRATE2Read = 0x04, // Previous RATE-2 DATA READ
|
|
QiPRATE2Write = 0x84, // Previous RATE-2 DATA WRITE
|
|
QiPSW1Read = 0x05, // Previous SW-1 DATA READ
|
|
QiPSW1Write = 0x85, // Previous SW-1 DATA WRITE
|
|
QiPSW2Read = 0x06, // Previous SW-2 DATA READ
|
|
QiPSW2Write = 0x86, // Previous SW-2 DATA WRITE
|
|
QiPDCFGRead = 0x07, // Previous Drive configure data READ
|
|
QiPDCFGWrite = 0x87, // Previous Drive configure data WRITE
|
|
QiPREARRead = 0x08, // Previous SLOW DOWN/REAR PULSE READ
|
|
QiPREARWrite = 0x88, // Previous SLOW DOWN/REAR PULSE WRITE
|
|
QiPPOSRead = 0x09, // Previous Drive pulse amount data/Interpolation end position READ
|
|
QiPPOSWrite = 0x89, // Previous Drive pulse amount data/Interpolation end position WRITE
|
|
QiPCENTRead = 0x0A, // Previous Circular Int. center/Master axis target position for multiple chip linear int. READ
|
|
QiPCENTWrite = 0x8A, // Previous Circular Int. center/Master axis target position for multiple chip linear int. WRITE
|
|
QiPISNUMRead = 0x0B, // Previous Interpolation step number READ
|
|
QiPISNUMWrite = 0x8B, // Previous Interpolation step number WRITE
|
|
QiNoOperation_0C = 0x0C, // No operation
|
|
QiCLRPRE = 0x8C, // Clear previous driving data Queue.
|
|
QiNoOperation_0D = 0x0D, // No operation
|
|
QiPOPPRE = 0x8D, // Pop and shift data of previous driving data Queue.
|
|
QiPPORTMARestore = 0x0E, // Restore data ports.
|
|
QiPPORTMABackup = 0x8E, // Backup data ports.
|
|
QiCURSPDRead = 0x0F, // Current SPEED DATA READ
|
|
QiNoOperation_8F = 0x8F, // No operation
|
|
// Working Registers
|
|
QiRANGERead = 0x10, // RANGE READ
|
|
QiRANGEWrite = 0x90, // RANGE WRITE
|
|
QiSTDRead = 0x11, // START/STOP SPEED DATA READ
|
|
QiSTDWrite = 0x91, // START/STOP SPEED DATA WRITE
|
|
QiOBJRead = 0x12, // OBJECT SPEED DATA READ
|
|
QiOBJWrite = 0x92, // OBJECT SPEED DATA WRITE
|
|
QiRATE1Read = 0x13, // RATE-1 DATA READ
|
|
QiRATE1Write = 0x93, // RATE-1 DATA WRITE
|
|
QiRATE2Read = 0x14, // RATE-2 DATA READ
|
|
QiRATE2Write = 0x94, // RATE-2 DATA WRITE
|
|
QiSW1Read = 0x15, // SW-1 DATA READ
|
|
QiSW1Write = 0x95, // SW-1 DATA WRITE
|
|
QiSW2Read = 0x16, // SW-2 DATA READ
|
|
QiSW2Write = 0x96, // SW-2 DATA WRITE
|
|
QiDCFGRead = 0x17, // Drive configure data READ
|
|
QiDCFGWrite = 0x97, // Drive configure data WRITE
|
|
QiREARRead = 0x18, // SLOW DOWN/REAR PULSE READ
|
|
QiREARWrite = 0x98, // SLOW DOWN/REAR PULSE WRITE
|
|
QiPOSRead = 0x19, // Drive pulse amount data/Interpolation end position READ
|
|
QiPOSWrite = 0x99, // Drive pulse amount data/Interpolation end position WRITE
|
|
QiCENTRead = 0x1A, // Circular Int. center/Master axis target position for multiple chip linear int. READ
|
|
QiCENTWrite = 0x9A, // Circular Int. center/Master axis target position for multiple chip linear int. WRITE
|
|
QiISNUMRead = 0x1B, // Interpolation step number READ
|
|
QiISNUMWrite = 0x9B, // Interpolation step number WRITE
|
|
QiREMAIN = 0x1C, // Remain pulse data after stopping preset drive function abnormally.
|
|
QiNoOperation_9C = 0x9C, // No operation
|
|
QiOBJORGRead = 0x1F, // Original search object speed READ
|
|
QiOBJORGWrite = 0x9F, // Original search object speed WRITE
|
|
// Universal In/Out setting
|
|
QiUIOMRead = 0x1D, // Universal in/out terminal mode READ
|
|
QiUIOMWrite = 0x9D, // Universal in/out terminal mode WRITE
|
|
QiUIORead = 0x1E, // Universal in/out terminal mode READ
|
|
QiUIOWrite = 0x9E, // Universal in/out terminal mode WRIT
|
|
// Drive start command
|
|
QiNoOperation_20 = 0x20, // No operation.
|
|
QiSTRN = 0xA0, // Normal profile mode drive start.(STD => OBJ => STD)
|
|
QiNoOperation_21 = 0x21, // No operation.
|
|
QiSTRO = 0xA0, // Start at OBJ profile mode drive start.(OBJ => STD)
|
|
QiNoOperation_22 = 0x22, // No operation.
|
|
QiSTRCO = 0xA0, // Constant speed profile #1 drive start.(OBJ)
|
|
QiNoOperation_23 = 0x23, // No operation.
|
|
QiSTRCS = 0xA0, // Constant speed profile #2 drive start.(STD)
|
|
QiNoOperation_60 = 0x5C, // No operation.
|
|
QiASTRN = 0xDC, // Normal profile mode drive start with DCFG7~0 bit data in DATAPL0 port.(STD => OBJ => STD)
|
|
QiNoOperation_61 = 0x5D, // No operation.
|
|
QiASTRO = 0xDD, // Start at OBJ profile mode drive start with DCFG7~0 bit data in DATAPL0 port.(OBJ => STD)
|
|
QiNoOperation_62 = 0x5E, // No operation.
|
|
QiASTRCO = 0xDE, // Constant speed profile #1 drive start with DCFG7~0 bit data in DATAPL0 port.(OBJ)
|
|
QiNoOperation_63 = 0x5F, // No operation.
|
|
QiASTRCS = 0xDF, // Constant speed profile #2 drive start with DCFG7~0 bit data in DATAPL0 port.(STD)
|
|
// Drive control command
|
|
QiNoOperation_24 = 0x24, // No operation.
|
|
QiSSTOP = 0xA4, // Slow Down stop.
|
|
QiNoOperation_25 = 0x25, // No operation.
|
|
QiSTOP = 0xA5, // Immediately stop.
|
|
QiNoOperation_26 = 0x26, // No operation.
|
|
QiSQRO1 = 0xA6, // Output one shot of the start pulse form SQSTR1 terminal.
|
|
QiNoOperation_27 = 0x27, // No operation.
|
|
QiSQRO2 = 0xA7, // Output one shot of the start pulse form SQSTR2 terminal.
|
|
QiNoOperation_28 = 0x28, // No operation.
|
|
QiSQRI1 = 0xA8, // Execution sync start function same as SQSTR1 input.
|
|
QiNoOperation_29 = 0x29, // No operation.
|
|
QiSQRI2 = 0xA9, // Execution sync start function same as SQSTR2 input.
|
|
QiNoOperation_2A = 0x2A, // No operation
|
|
QiSQSTP1 = 0xAA, // Output one shot of the stop pulse from SQSTP1 terminal.
|
|
QiNoOperation_2B = 0x2B, // No operation.
|
|
QiSQSTP2 = 0xAB, // Output one shot of the stop pulse from SQSTP2 terminal.
|
|
QiISCNTRead = 0x2C, // Interpolation stop counter value READ.
|
|
QiNoOperation_AC = 0xAC, // No operation.
|
|
QiISACNTRead = 0x2D, // Interpolation step counter READ for advanced deceleration mode .
|
|
QiNoOperation_AD = 0xAD, // No operation.
|
|
QiNoOperation_2E = 0x2E, // No operation.
|
|
QiESTOP = 0xAE, // Emergency stop all axis.
|
|
QiNoOperation_2F = 0x2F, // No operation
|
|
QiSWRESET = 0xAF, // Software reset(all axis).
|
|
// QiNoOperation_30 = 0x30, // Driven pulse amount during last driving(Interpolation step counter for path move).
|
|
// QiDRPCNTRead = 0xB0, // No operation
|
|
QiDRPCNTRead = 0x30, // No operation
|
|
QiNoOperation_B0 = 0xB0, // Driven pulse amount during last driving(Interpolation step counter for path move).
|
|
QiNoOperation_31 = 0x31, // No operation
|
|
QiINTGEN = 0xB1, // Interrupt generation command.
|
|
// Peripheral function setting.
|
|
QiNoOperation_33 = 0x32, // No operation.
|
|
QiTRGQPOP = 0xB2, // Pop and shift data in trigger position queue.
|
|
QiTRTMCFRead = 0x33, // Trigger/Timer configure READ.
|
|
QiTRTMCFWrite = 0xB3, // Trigger/Timer configure WRITE.
|
|
QiSNSMTRead = 0x34, // Software negative limit position READ.
|
|
QiSNSMTWrite = 0xB4, // Software negative limit position WRITE.
|
|
QiSPSMTRead = 0x35, // Software positive limit position READ.
|
|
QiSPSMTWrite = 0xB5, // Software positive limit position WRITE.
|
|
QiTRGPWRead = 0x36, // Trigger pulse width READ.
|
|
QiTRGPWWrite = 0xB6, // Trigger pulse width WRITE.
|
|
QiTRGSPRead = 0x37, // Trigger function start position READ.
|
|
QiTRGSPWrite = 0xB7, // Trigger function start position WRITE.
|
|
QiTRGEPRead = 0x38, // Trigger function end position READ.
|
|
QiTRGEPWrite = 0xB8, // Trigger function end position WRITE.
|
|
QiPTRGPOSRead = 0x39, // Trigger position or period queue data READ.
|
|
QiPTRGPOSWrite = 0xB9, // Push trigger position or period queue.
|
|
QiNoOperation_3A = 0x3A, // No operation.
|
|
QiCLRTRIG = 0xBA, // Clear trigger position or period queue.
|
|
QiNoOperation_3B = 0x3B, // No operation.
|
|
QiTRGGEN = 0xBB, // Generate one shot trigger pulse.
|
|
QiTMRP1Read = 0x3C, // Timer #1 period data READ.
|
|
QiTMRP1Write = 0xBC, // Timer #1 period data WRITE.
|
|
QiTMRP2Read = 0x3D, // Timer #2 period data READ.
|
|
QiTMRP2Write = 0xBD, // Timer #2 period data WRITE.
|
|
QiTMR1GENstop = 0x3E, // Timer #1 stop.
|
|
QiTMR1GENstart = 0xBE, // Timer #1 start.
|
|
QiTMR2GENstop = 0x3F, // Timer #2 stop.
|
|
QiTMR2GENstart = 0xBF, // Timer #2 start.
|
|
QiERCReset = 0x60, // ERC signal reset.
|
|
QiERCSet = 0xE0, // ERC signal set.
|
|
//Script1/2/3 setting registers
|
|
QiSCRCON1Read = 0x40, // Script1 control queue register READ.
|
|
QiSCRCON1Write = 0xC0, // Script1 control queue register WRITE.
|
|
QiSCRCMD1Read = 0x41, // Script1 command queue register READ.
|
|
QiSCRCMD1Write = 0xC1, // Script1 command queue register WRITE.
|
|
QiSCRDAT1Read = 0x42, // Script1 execution data queue register READ.
|
|
QiSCRDAT1Write = 0xC2, // Script1 execution data queue register WRITE.
|
|
QiCQ1Read = 0x43, // Script1 captured data queue register(top of depth 15 Queue)READ.
|
|
QiNoOperation_C3 = 0xC3, // No operation.
|
|
QiSCRCFG1Read = 0x44, // Script1 flag control register READ.
|
|
QiSCRCFG1Write = 0xC4, // Script1 flag control register WRITE.
|
|
QiSCRCON2Read = 0x45, // Script2 control queue register READ.
|
|
QiSCRCON2Write = 0xC5, // Script2 control queue register WRITE.
|
|
QiSCRCMD2Read = 0x46, // Script2 command queue register READ.
|
|
QiSCRCMD2Write = 0xC6, // Script2 command queue register WRITE.
|
|
QiSCRDAT2Read = 0x47, // Script2 execution data queue register READ.
|
|
QiSCRDAT2Write = 0xC7, // Script2 execution data queue register WRITE.
|
|
QiCQ2Read = 0x48, // Script2 captured data queue register(top of depth 15 Queue)READ.
|
|
QiNoOperation_C8 = 0xC8, // No operation.
|
|
QiSCRCFG2Read = 0x49, // Script2 flag control register READ.
|
|
QiSCRCFG2Write = 0xC9, // Script2 flag control register WRITE.
|
|
QiSCRCON3Read = 0x4A, // Script3 control register READ.
|
|
QiSCRCON3Write = 0xCA, // Script3 control register WRITE.
|
|
QiSCRCMD3Read = 0x4B, // Script3 command register READ.
|
|
QiSCRCMD3Write = 0xCB, // Script3 command register WRITE.
|
|
QiSCRDAT3Read = 0x4C, // Script3 execution data register READ.
|
|
QiSCRDAT3Write = 0xCC, // Script3 execution data register WRITE.
|
|
QiCQ3Read = 0x4D, // Script3 captured data register READ.
|
|
QiNoOperation_CD = 0xCD, // No operation.
|
|
QiNoOperation_4E = 0x4E, // No operation.
|
|
QiNoOperation_CE = 0xCE, // No operation.
|
|
QiNoOperation_4F = 0x4F, // No operation.
|
|
QiNoOperation_CF = 0xCF, // [No operation code for script reservation command].
|
|
//Script4 and Script status setting registers
|
|
QiSCRCON4Read = 0x50, // Script4 control register READ.
|
|
QiSCRCON4Write = 0xD0, // Script4 control register WRITE.
|
|
QiSCRCMD4Read = 0x51, // Script4 command register READ.
|
|
QiSCRCMD4Write = 0xD1, // Script4 command register WRITE.
|
|
QiSCRDAT4Read = 0x52, // Script4 execution data register READ.
|
|
QiSCRDAT4Write = 0xD2, // Script4 execution data register WRITE.
|
|
QiCQ4Read = 0x53, // Script4 captured data register READ.
|
|
QiNoOperation_D3 = 0xD3, // No operation.
|
|
QiSCRTGRead = 0x54, // Target source data setting READ.
|
|
QiSCRTGWrite = 0xD4, // Target source data setting WRITE.
|
|
QiSCRSTAT1Read = 0x55, // Script status #1 READ.
|
|
QiNoOperation_D5 = 0xD5, // No operation.
|
|
QiSCRSTAT2Read = 0x56, // Script status #2 READ.
|
|
QiNoOperation_D6 = 0xD6, // No operation.
|
|
QiNoOperation_57 = 0x57, // No operation.
|
|
QiINITSQWrite = 0xD7, // Initialize script queues with target selection.
|
|
QiNoOperation_58 = 0x58, // No operation.
|
|
QiINITCQWrite = 0xD8, // Initialize captured data queue with target selection.
|
|
QiSCRMRead = 0x59, // Set enable mode with target selection READ.
|
|
QiSCRMWrite = 0xD9, // Set enable mode with target selection WRITE.
|
|
QiNoOperation_5A = 0x5A, // No operation.
|
|
QiSQ1POP = 0xDA, // Pop and shift data of script1 queue.
|
|
QiNoOperation_5B = 0x5B, // No operation.
|
|
QiSQ2POP = 0xDB, // Pop and shift data of script2 queue.
|
|
//Counter function registers
|
|
QiCNTLBRead = 0x61, // Counter lower bound data READ.
|
|
QiCNTLBWrite = 0xE1, // Counter lower bound data WRITE.
|
|
QiCNTUBRead = 0x62, // Counter upper bound data READ.
|
|
QiCNTUBWrite = 0xE2, // Counter upper bound data WRITE.
|
|
QiCNTCF1Read = 0x63, // Counter configure #1 READ.
|
|
QiCNTCF1Write = 0xE3, // Counter configure #1 WRITE.
|
|
QiCNTCF2Read = 0x64, // Counter configure #2 READ.
|
|
QiCNTCF2Write = 0xE4, // Counter configure #2 WRITE.
|
|
QiCNTCF3Read = 0x65, // Counter configure #3 READ.
|
|
QiCNTCF3Write = 0xE5, // Counter configure #3 WRITE.
|
|
QiCNT1Read = 0x66, // Counter #1 data READ.
|
|
QiCNT1Write = 0xE6, // Counter #1 data WRITE.
|
|
QiCNT2Read = 0x67, // Counter #2 data READ.
|
|
QiCNT2Write = 0xE7, // Counter #2 data WRITE.
|
|
QiCNT3Read = 0x68, // Counter #3 data READ.
|
|
QiCNT3Write = 0xE8, // Counter #3 data WRITE.
|
|
QiCNT4Read = 0x69, // Counter #4 data READ.
|
|
QiCNT4Write = 0xE9, // Counter #4 data WRITE.
|
|
QiCNT5Read = 0x6A, // Counter #5 data READ.
|
|
QiCNT5Write = 0xEA, // Counter #5 data WRITE.
|
|
QiCNTC1Read = 0x6B, // Counter #1 comparator's data READ.
|
|
QiCNTC1Write = 0xEB, // Counter #1 comparator's data WRITE.
|
|
QiCNTC2Read = 0x6C, // Counter #2 comparator's data READ.
|
|
QiCNTC2Write = 0xEC, // Counter #2 comparator's data WRITE.
|
|
QiCNTC3Read = 0x6D, // Counter #3 comparator's data READ.
|
|
QiCNTC3Write = 0xED, // Counter #3 comparator's data WRITE.
|
|
QiCNTC4Read = 0x6E, // Counter #4 comparator's data READ.
|
|
QiCNTC4Write = 0xEE, // Counter #4 comparator's data WRITE.
|
|
QiCNTC5Read = 0x6F, // Counter #5 comparator's data READ.
|
|
QiCNTC5Write = 0xEF, // Counter #5 comparator's data WRITE.
|
|
//Configure and Status registers
|
|
QiUCFG1Read = 0x70, // Configure register #1 READ.
|
|
QiUCFG1Write = 0xF0, // Configure register #1 WRITE.
|
|
QiUCFG2Read = 0x71, // Configure register #2 READ.
|
|
QiUCFG2Write = 0xF1, // Configure register #2 WRITE.
|
|
QiUCFG3Read = 0x72, // Configure register #3 READ.
|
|
QiUCFG3Write = 0xF2, // Configure register #3 WRITE.
|
|
QiUCFG4Read = 0x73, // Configure register #4 READ.
|
|
QiUCFG4Write = 0xF3, // Configure register #4 WRITE.
|
|
QiNoOperation_74 = 0x74, // No operation.
|
|
QiNoOperation_F4 = 0xF4, // No operation.
|
|
QiNoOperation_75 = 0x75, // No operation.
|
|
QiNoOperation_F5 = 0xF5, // No operation.
|
|
QiNoOperation_76 = 0x76, // No operation.
|
|
QiNoOperation_F6 = 0xF6, // No operation.
|
|
QiIMASK1Read = 0x77, // Interrupt bank#1 mask register READ.
|
|
QiIMASK1Write = 0xF7, // Interrupt bank#1 mask register WRITE.
|
|
QiIMASK2Read = 0x78, // Interrupt bank#2 mask register READ.
|
|
QiIMASK2Write = 0xF8, // Interrupt bank#2 mask register WRITE.
|
|
QiSTAT1Read = 0x79, // Status register #1(END STATUS)READ.
|
|
QiESCLR = 0xF9, // Status register #1(END STATUS) Clear.
|
|
QiSTAT2Read = 0x7A, // Status register #2 READ.
|
|
QiNoOperation_FA = 0xFA, // No operation.
|
|
QiSTAT3Read = 0x7B, // Status register #3 READ.
|
|
QiNoOperation_FB = 0xFB, // No operation.
|
|
QiSTAT4Read = 0x7C, // Status register #4 READ.
|
|
QiNoOperation_FC = 0xFC, // No operation.
|
|
QiSTAT5Read = 0x7D, // Status register #5 READ.
|
|
QiNoOperation_FD = 0xFD, // No operation.
|
|
QiIFLAG1Read = 0x7E, // Interrupt bank #1 flag READ.
|
|
QiIFLAG1Clear = 0xFE, // Interrupt bank #1 flag Clear.
|
|
QiIFLAG2Read = 0x7F, // Interrupt bank #2 flag READ.
|
|
QiIFLAG2Clear = 0xFF // Interrupt bank #2 flag Clear.
|
|
};
|
|
|
|
// EVENT LIST
|
|
public enum IPEVENT
|
|
{
|
|
EVENT_IPNONE = 0x00,
|
|
EVENT_IPDRIVE_END = 0x01,
|
|
EVENT_IPPRESETDRIVE_START = 0x02,
|
|
EVENT_IPPRESETDRIVE_END = 0x03,
|
|
EVENT_IPCONTINOUSDRIVE_START = 0x04,
|
|
EVENT_IPCONTINOUSDRIVE_END = 0x05,
|
|
EVENT_IPSIGNAL_SEARCH_1_START = 0x06,
|
|
EVENT_IPSIGNAL_SEARCH_1_END = 0x07,
|
|
EVENT_IPSIGNAL_SEARCH_2_START = 0x08,
|
|
EVENT_IPSIGNAL_SEARCH_2_END = 0x09,
|
|
EVENT_IPORIGIN_DETECT_START = 0x0A,
|
|
EVENT_IPORIGIN_DETECT_END = 0x0B,
|
|
EVENT_IPSPEED_UP = 0x0C,
|
|
EVENT_IPSPEED_CONST = 0x0D,
|
|
EVENT_IPSPEED_DOWN = 0x0E,
|
|
EVENT_IPICL = 0x0F,
|
|
EVENT_IPICE = 0x10,
|
|
EVENT_IPICG = 0x11,
|
|
EVENT_IPECL = 0x12,
|
|
EVENT_IPECE = 0x13,
|
|
EVENT_IPECG = 0x14,
|
|
EVENT_IPEPCE = 0x15,
|
|
EVENT_IPEPCL = 0x16,
|
|
EVENT_IPEPCG = 0x17,
|
|
EVENT_IPSPL = 0x18,
|
|
EVENT_IPSPE = 0x19,
|
|
EVENT_IPSPG = 0x1A,
|
|
EVENT_IPSP12L = 0x1B,
|
|
EVENT_IPSP12E = 0x1C,
|
|
EVENT_IPSP12G = 0x1D,
|
|
EVENT_IPSP23L = 0x1E,
|
|
EVENT_IPSP23E = 0x1F,
|
|
EVENT_IPSP23G = 0x20,
|
|
EVENT_IPOBJECT_SPEED = 0x21,
|
|
EVENT_IPSS_SPEED = 0x22,
|
|
EVENT_IPESTOP = 0x23,
|
|
EVENT_IPSSTOP = 0x24,
|
|
EVENT_IPPELM = 0x25,
|
|
EVENT_IPNELM = 0x26,
|
|
EVENT_IPPSLM = 0x27,
|
|
EVENT_IPNSLM = 0x28,
|
|
EVENT_IPDEVIATION_ERROR = 0x29,
|
|
EVENT_IPDATA_ERROR = 0x2A,
|
|
EVENT_IPALARM_ERROR = 0x2B,
|
|
EVENT_IPESTOP_COMMAND = 0x2C,
|
|
EVENT_IPSSTOP_COMMAND = 0x2D,
|
|
EVENT_IPESTOP_SIGNAL = 0x2E,
|
|
EVENT_IPSSTOP_SIGNAL = 0x2F,
|
|
EVENT_IPELM = 0x30,
|
|
EVENT_IPSLM = 0x31,
|
|
EVENT_IPINPOSITION = 0x32,
|
|
EVENT_IPINOUT0_HIGH = 0x33,
|
|
EVENT_IPINOUT0_LOW = 0x34,
|
|
EVENT_IPINOUT1_HIGH = 0x35,
|
|
EVENT_IPINOUT1_LOW = 0x36,
|
|
EVENT_IPINOUT2_HIGH = 0x37,
|
|
EVENT_IPINOUT2_LOW = 0x38,
|
|
EVENT_IPINOUT3_HIGH = 0x39,
|
|
EVENT_IPINOUT3_LOW = 0x3A,
|
|
EVENT_IPINOUT4_HIGH = 0x3B,
|
|
EVENT_IPINOUT4_LOW = 0x3C,
|
|
EVENT_IPINOUT5_HIGH = 0x3D,
|
|
EVENT_IPINOUT5_LOW = 0x3E,
|
|
EVENT_IPINOUT6_HIGH = 0x3F,
|
|
EVENT_IPINOUT6_LOW = 0x40,
|
|
EVENT_IPINOUT7_HIGH = 0x41,
|
|
EVENT_IPINOUT7_LOW = 0x42,
|
|
EVENT_IPINOUT8_HIGH = 0x43,
|
|
EVENT_IPINOUT8_LOW = 0x44,
|
|
EVENT_IPINOUT9_HIGH = 0x45,
|
|
EVENT_IPINOUT9_LOW = 0x46,
|
|
EVENT_IPINOUT10_HIGH = 0x47,
|
|
EVENT_IPINOUT10_LOW = 0x48,
|
|
EVENT_IPINOUT11_HIGH = 0x49,
|
|
EVENT_IPINOUT11_LOW = 0x4A,
|
|
EVENT_IPSENSOR_DRIVE1_START = 0x4B,
|
|
EVENT_IPSENSOR_DRIVE1_END = 0x4C,
|
|
EVENT_IPSENSOR_DRIVE2_START = 0x4D,
|
|
EVENT_IPSENSOR_DRIVE2_END = 0x4E,
|
|
EVENT_IPSENSOR_DRIVE3_START = 0x4F,
|
|
EVENT_IPSENSOR_DRIVE3_END = 0x50,
|
|
EVENT_IP1STCOUNTER_NDATA_CLEAR = 0x51,
|
|
EVENT_IP2NDCOUNTER_NDATA_CLEAR = 0x52,
|
|
EVENT_IPMARK_SIGNAL_HIGH = 0x53,
|
|
EVENT_IPMARK_SIGNAL_LOW = 0x54,
|
|
EVENT_IPSOFTWARE_PLIMIT = 0x55,
|
|
EVENT_IPSOFTWARE_NLIMIT = 0x56,
|
|
EVENT_IPSOFTWARE_LIMIT = 0x57,
|
|
EVENT_IPTRIGGER_ENABLE = 0x58,
|
|
EVENT_IPINT_GEN_SOURCE = 0x59,
|
|
EVENT_IPINT_GEN_CMDF9 = 0x5A,
|
|
EVENT_IPPRESETDRIVE_TRI_START = 0x5B,
|
|
EVENT_IPBUSY_HIGH = 0x5C,
|
|
EVENT_IPBUSY_LOW = 0x5D,
|
|
EVENT_IPLINP_START = 0x5E,
|
|
EVENT_IPLINP_END = 0x5F,
|
|
EVENT_IPCINP_START = 0x60,
|
|
EVENT_IPCINP_END = 0x61,
|
|
EVENT_IPPINP_START = 0x62,
|
|
EVENT_IPPINP_END = 0x63,
|
|
EVENT_IPPDATA_Q_EMPTY = 0x64,
|
|
EVENT_IPS_C_INTERNAL_COMMAND_Q_EMPTY = 0x65,
|
|
EVENT_IPS_C_INTERNAL_COMMAND_Q_FULL = 0x66,
|
|
EVENT_IPxSYNC_ACTIVATED = 0x67,
|
|
EVENT_IPySYNC_ACTIVATED = 0x68,
|
|
EVENT_IPINTERRUPT_GENERATED = 0x69,
|
|
EVENT_IPINP_START = 0x6A,
|
|
EVENT_IPINP_END = 0x6B,
|
|
EVENT_IPALGEBRIC_RESULT_BIT0 = 0x6C,
|
|
EVENT_IPALGEBRIC_RESULT_BIT1 = 0x6D,
|
|
EVENT_IPALGEBRIC_RESULT_BIT2 = 0x6E,
|
|
EVENT_IPALGEBRIC_RESULT_BIT3 = 0x6F,
|
|
EVENT_IPALGEBRIC_RESULT_BIT4 = 0x70,
|
|
EVENT_IPALGEBRIC_RESULT_BIT5 = 0x71,
|
|
EVENT_IPALGEBRIC_RESULT_BIT6 = 0x72,
|
|
EVENT_IPALGEBRIC_RESULT_BIT7 = 0x73,
|
|
EVENT_IPALGEBRIC_RESULT_BIT8 = 0x74,
|
|
EVENT_IPALGEBRIC_RESULT_BIT9 = 0x75,
|
|
EVENT_IPALGEBRIC_RESULT_BIT10 = 0x76,
|
|
EVENT_IPALGEBRIC_RESULT_BIT11 = 0x77,
|
|
EVENT_IPALGEBRIC_RESULT_BIT12 = 0x78,
|
|
EVENT_IPALGEBRIC_RESULT_BIT13 = 0x79,
|
|
EVENT_IPALGEBRIC_RESULT_BIT14 = 0x7A,
|
|
EVENT_IPALGEBRIC_RESULT_BIT15 = 0x7B,
|
|
EVENT_IPALGEBRIC_RESULT_BIT16 = 0x7C,
|
|
EVENT_IPALGEBRIC_RESULT_BIT17 = 0x7D,
|
|
EVENT_IPALGEBRIC_RESULT_BIT18 = 0x7E,
|
|
EVENT_IPALGEBRIC_RESULT_BIT19 = 0x7F,
|
|
EVENT_IPALGEBRIC_RESULT_BIT20 = 0x80,
|
|
EVENT_IPALGEBRIC_RESULT_BIT21 = 0x81,
|
|
EVENT_IPALGEBRIC_RESULT_BIT22 = 0x82,
|
|
EVENT_IPALGEBRIC_RESULT_BIT23 = 0x83,
|
|
EVENT_IPALGEBRIC_RESULT_BIT24 = 0x84,
|
|
EVENT_IPALGEBRIC_RESULT_BIT25 = 0x85,
|
|
EVENT_IPALGEBRIC_RESULT_BIT26 = 0x86,
|
|
EVENT_IPALGEBRIC_RESULT_BIT27 = 0x87,
|
|
EVENT_IPALGEBRIC_RESULT_BIT28 = 0x88,
|
|
EVENT_IPALGEBRIC_RESULT_BIT29 = 0x89,
|
|
EVENT_IPALGEBRIC_RESULT_BIT30 = 0x8A,
|
|
EVENT_IPALGEBRIC_RESULT_BIT31 = 0x8B,
|
|
EVENT_IPCOMPARE_RESULT_BIT0 = 0x8C,
|
|
EVENT_IPCOMPARE_RESULT_BIT1 = 0x8D,
|
|
EVENT_IPCOMPARE_RESULT_BIT2 = 0x8E,
|
|
EVENT_IPCOMPARE_RESULT_BIT3 = 0x8F,
|
|
EVENT_IPCOMPARE_RESULT_BIT4 = 0x90,
|
|
EVENT_IPON_INTERPOLATION = 0x91,
|
|
EVENT_IPON_LINEAR_INTERPOLATION = 0x92,
|
|
EVENT_IPON_CIRCULAR_INTERPOLATION = 0x93,
|
|
EVENT_IPON_PATTERN_INTERPOLATION = 0x94,
|
|
EVENT_IPNONE_95 = 0x95,
|
|
EVENT_IPL_C_INP_Q_EMPTY = 0x96,
|
|
EVENT_IPL_C_INP_Q_LESS_4 = 0x97,
|
|
EVENT_IPP_INP_Q_EMPTY = 0x98,
|
|
EVENT_IPP_INP_Q_LESS_4 = 0x99,
|
|
EVENT_IPINTERPOLATION_PAUSED = 0x9A,
|
|
EVENT_IPP_INP_END_BY_END_PATTERN = 0x9B,
|
|
EVENT_IPARITHMETIC_DATA_SEL = 0xEE,
|
|
EVENT_IPEXECUTION_ALWAYS = 0xFF
|
|
};
|
|
|
|
public enum QIEVENT
|
|
{
|
|
EVENT_QINOOP = 0x00, // No operation.
|
|
EVENT_QIDRVEND = 0x01, // Drive end event(inposition function excluded).
|
|
EVENT_QIDECEL = 0X02, // Deceleration state.
|
|
EVENT_QICONST = 0x03, // Constant speed state.
|
|
EVENT_QIACCEL = 0X04, // Acceleration state.
|
|
EVENT_QICNT1L = 0x05, // Counter1 < Comparater1 state.
|
|
EVENT_QICNT1E = 0X06, // Counter1 = Comparater1 state.
|
|
EVENT_QICNT1G = 0x07, // Counter1 > Comparater1 state.
|
|
EVENT_QICNT1LE = 0x08, // Counter1 ĄÂ Comparater1 state.
|
|
EVENT_QICNT1GE = 0x09, // Counter1 ĄĂ Comparater1 state.
|
|
EVENT_QICNT1EUP = 0x0A, // Counter1 = Comparater1 event during counting up.
|
|
EVENT_QICNT1EDN = 0x0B, // Counter1 = Comparater1 event during counting down.
|
|
EVENT_QICNT1BND = 0x0C, // Counter1 is same with boundary value.
|
|
EVENT_QICNT2L = 0x0D, // Counter2 < Comparater2 state.
|
|
EVENT_QICNT2E = 0x0E, // Counter2 = Comparater2 state.
|
|
EVENT_QICNT2G = 0x0F, // Counter2 > Comparater2 state.
|
|
EVENT_QICNT2LE = 0x10, // Counter2 ĄÂ Comparater2 state.
|
|
EVENT_QICNT2GE = 0x11, // Counter2 ĄĂ Comparater2 state.
|
|
EVENT_QICNT2EUP = 0x12, // Counter2 = Comparater2 event during counting up.
|
|
EVENT_QICNT2EDN = 0x13, // Counter2 = Comparater2 event during counting down.
|
|
EVENT_QICNT2BND = 0x14, // Counter2 is same with boundary value.
|
|
EVENT_QICNT3L = 0x15, // Counter3 < Comparater3 state.
|
|
EVENT_QICNT3E = 0x16, // Counter3 = Comparater3 state.
|
|
EVENT_QICNT3G = 0x17, // Counter3 > Comparater3 state.
|
|
EVENT_QICNT3LE = 0x18, // Counter3 ĄÂ Comparater3 state.
|
|
EVENT_QICNT3GE = 0x19, // Counter3 ĄĂ Comparater3 state.
|
|
EVENT_QICNT3EUP = 0x1A, // Counter3 = Comparater3 event during counting up.
|
|
EVENT_QICNT3EDN = 0x1B, // Counter3 = Comparater3 event during counting down.
|
|
EVENT_QICNT3BND = 0x1C, // Counter3 is same with boundary value.
|
|
EVENT_QICNT4L = 0x1D, // Counter4 < Comparater4 state.
|
|
EVENT_QICNT4E = 0x1E, // Counter4 = Comparater4 state.
|
|
EVENT_QICNT4G = 0x1F, // Counter4 > Comparater4 state.
|
|
EVENT_QICNT4LE = 0x20, // Counter4 ĄÂ Comparater4 state.
|
|
EVENT_QICNT4GE = 0x21, // Counter4 ĄĂ Comparater4 state.
|
|
EVENT_QICNT4EUP = 0x22, // Counter4 = Comparater4 event during counting up.
|
|
EVENT_QICNT4EDN = 0x23, // Counter4 = Comparater4 event during counting down.
|
|
EVENT_QICNT4BND = 0x24, // Counter4 is same with boundary value.
|
|
EVENT_QICNT5L = 0x25, // Counter5 < Comparater5 state.
|
|
EVENT_QICNT5E = 0x26, // Counter5 = Comparater5 state.
|
|
EVENT_QICNT5G = 0x27, // Counter5 > Comparater5 state.
|
|
EVENT_QICNT5LE = 0x28, // Counter5 ĄÂ Comparater5 state.
|
|
EVENT_QICNT5GE = 0x29, // Counter5 ĄĂ Comparater5 state.
|
|
EVENT_QICNT5EUP = 0x2A, // Counter5 = Comparater5 event during counting up.
|
|
EVENT_QICNT5EDN = 0x2B, // Counter5 = Comparater5 event during counting down.
|
|
EVENT_QICNT5BND = 0x2C, // Counter5 is same with boundary value.
|
|
EVENT_QIDEVL = 0x2D, // DEVIATION value < Comparater4 state.
|
|
EVENT_QIDEVE = 0x2E, // DEVIATION value = Comparater4 state.
|
|
EVENT_QIDEVG = 0x2F, // DEVIATION value > Comparater4 state.
|
|
EVENT_QIDEVLE = 0x30, // DEVIATION value ĄÂ Comparater4 state.
|
|
EVENT_QIDEVGE = 0x31, // DEVIATION value ĄĂ Comparater4 state.
|
|
EVENT_QIPELM = 0x32, // PELM input signal is activated state.
|
|
EVENT_QINELM = 0x33, // NELM input signal is activated state.
|
|
EVENT_QIPSLM = 0x34, // PSLM input signal is activated state.
|
|
EVENT_QINSLM = 0x35, // NSLM input signal is activated state.
|
|
EVENT_QIALARM = 0x36, // ALAMR input signal is activated state.
|
|
EVENT_QIINPOS = 0x37, // INPOSITION input signal ia activated state.
|
|
EVENT_QIESTOP = 0x38, // ESTOP input signal is activated state.
|
|
EVENT_QIORG = 0x39, // ORG input signal is activated state.
|
|
EVENT_QIZ_PHASE = 0x3A, // Z_PHASE input signal is activated state.
|
|
EVENT_QIECUP = 0x3B, // ECUP input signal is high level state.
|
|
EVENT_QIECDN = 0x3C, // ECDN input signal is high level state.
|
|
EVENT_QIEXPP = 0x3D, // EXPP input signal is high level state.
|
|
EVENT_QIEXMP = 0x3E, // EXMP input signal is high level state.
|
|
EVENT_QISQSTR1 = 0x3F, // SYNC Start1 input signal is activated state(activated).
|
|
EVENT_QISQSTR2 = 0x40, // SYNC Start2 input signal is activated state(activated).
|
|
EVENT_QISQSTP1 = 0x41, // SYNC STOP1 input signal is activated state(activated).
|
|
EVENT_QISQSTP2 = 0x42, // SYNC STOP2 input signal is activated state(activated).
|
|
EVENT_QIALARMS = 0x43, // At least one alarm signal of each axis is activated state.
|
|
EVENT_QIUIO0 = 0x44, // UIO0 data is high state.
|
|
EVENT_QIUIO1 = 0x45, // UIO1 data is high state.
|
|
EVENT_QIUIO2 = 0x46, // UIO2 data is high state.
|
|
EVENT_QIUIO3 = 0x47, // UIO3 data is high state.
|
|
EVENT_QIUIO4 = 0x48, // UIO4 data is high state.
|
|
EVENT_QIUIO5 = 0x49, // UIO5 data is high state.
|
|
EVENT_QIUIO6 = 0x4A, // UIO6 data is high state.
|
|
EVENT_QIUIO7 = 0x4B, // UIO7 data is high state.
|
|
EVENT_QIUIO8 = 0x4C, // UIO8 data is high state.
|
|
EVENT_QIUIO9 = 0x4D, // UIO9 data is high state.
|
|
EVENT_QIUIO10 = 0x4E, // UIO10 data is high state.
|
|
EVENT_QIUIO11 = 0x4F, // UIO11 data is high state.
|
|
EVENT_QIERC = 0x50, // ERC output is activated.
|
|
EVENT_QITRG = 0x51, // TRIGGER signal is activated.
|
|
EVENT_QIPREQI0 = 0x52, // Previous queue data index 0 bit is high state.
|
|
EVENT_QIPREQI1 = 0x53, // Previous queue data index 1 bit is high state.
|
|
EVENT_QIPREQI2 = 0x54, // Previous queue data index 2 bit is high state.
|
|
EVENT_QIPREQZ = 0x55, // Previous queue is empty state.
|
|
EVENT_QIPREQF = 0x56, // Previous queue is full state.
|
|
EVENT_QIMPGE1 = 0x57, // MPG first stage is overflowed state.
|
|
EVENT_QIMPGE2 = 0x58, // MPG second stage is overflowed state.
|
|
EVENT_QIMPGE3 = 0x59, // MPG third stage is overflowed state.
|
|
EVENT_QIMPGERR = 0x5A, // MPG all state is overflowed state.
|
|
EVENT_QITRGCNT0 = 0x5B, // TRIGGER queue index bit 0 is high state.
|
|
EVENT_QITRGCNT1 = 0x5C, // TRIGGER queue index bit 1 is high state.
|
|
EVENT_QITRGCNT2 = 0x5D, // TRIGGER queue index bit 2 is high state.
|
|
EVENT_QITRGCNT3 = 0x5E, // TRIGGER queue index bit 3 is high state.
|
|
EVENT_QITRGQEPT = 0x5F, // TRIGGER queue is empty state.
|
|
EVENT_QITRGQFULL = 0x60, // TRIGGER queue is full state.
|
|
EVENT_QIDPAUSE = 0x61, // Drive paused state.
|
|
EVENT_QIESTOPEXE = 0x62, // Emergency stop occurred
|
|
EVENT_QISSTOPEXE = 0x63, // Slowdown stop occurred
|
|
EVENT_QIPLMTSTOP = 0x64, // Limit stop event occurred during positive driving.
|
|
EVENT_QINLMTSTOP = 0x65, // Limit stop event occurred during negative driving.
|
|
EVENT_QIOPLMTSTOP = 0x66, // Optional limit stop event occurred during positive driving.
|
|
EVENT_QIONLMTSTOP = 0x67, // Optional limit stop event occurred during negative driving.
|
|
EVENT_QIPSWESTOP = 0x68, // Software emergency limit stop event occurred.(CW)
|
|
EVENT_QINSWESTOP = 0x69, // Software emergency limit stop event occurred.(CCW)
|
|
EVENT_QIPSWSSTOP = 0x6A, // Software slowdown limit stop event occurred.(CW)
|
|
EVENT_QINSWSSTOP = 0x6B, // Software slowdown limit stop event occurred.(CCW)
|
|
EVENT_QIALMSTOP = 0x6C, // Emergency stop event occurred by alarm signal function.
|
|
EVENT_QIESTOPSTOP = 0x6D, // Emergency stop event occurred by estop signal function.
|
|
EVENT_QIESTOPCMD = 0x6E, // Emergency stop event occurred by command.
|
|
EVENT_QISSTOPCMD = 0x6F, // Slowdown stop event occurred by command.
|
|
EVENT_QIALLSTCMD = 0x70, // Emergency stop event occurred by all stop command.
|
|
EVENT_QISYSTOP1 = 0x71, // SYNC stop1 event occurred.
|
|
EVENT_QISYSTOP2 = 0x72, // SYNC stop2 event occurred.
|
|
EVENT_QIENCODERR = 0x73, // Encoder input error event occurred.
|
|
EVENT_QIMPGOVERFLOW = 0x74, // MPG input error event occurred.
|
|
EVENT_QIORGOK = 0x75, // Original drive is executed successfully.
|
|
EVENT_QISSCHOK = 0x76, // Signal search drive is executed successfully.
|
|
EVENT_QIUIO0LOW = 0x77, // UIO0 data is low state.
|
|
EVENT_QIUIO1LOW = 0x78, // UIO1 data is low state.
|
|
EVENT_QIUIO2LOW = 0x79, // UIO2 data is low state.
|
|
EVENT_QIUIO3LOW = 0x7A, // UIO3 data is low state.
|
|
EVENT_QIUIO4LOW = 0x7B, // UIO4 data is low state.
|
|
EVENT_QIUIO5LOW = 0x7C, // UIO5 data is low state.
|
|
EVENT_QIUIO6LOW = 0x7D, // UIO6 data is low state.
|
|
EVENT_QIUIO7LOW = 0x7E, // UIO7 data is low state.
|
|
EVENT_QIUIO8LOW = 0x7F, // UIO8 data is low state.
|
|
EVENT_QIUIO9LOW = 0x80, // UIO9 data is low state.
|
|
EVENT_QIUIO10LOW = 0x81, // UIO10 data is low state.
|
|
EVENT_QIUIO11LOW = 0x82, // UIO11 data is low state.
|
|
EVENT_QIUIO0RISING = 0x83, // UIO0 rising edge event occurred.
|
|
EVENT_QIUIO1RISING = 0x84, // UIO1 rising edge event occurred.
|
|
EVENT_QIUIO2RISING = 0x85, // UIO2 rising edge event occurred.
|
|
EVENT_QIUIO3RISING = 0x86, // UIO3 rising edge event occurred.
|
|
EVENT_QIUIO4RISING = 0x87, // UIO4 rising edge event occurred.
|
|
EVENT_QIUIO5RISING = 0x88, // UIO5 rising edge event occurred.
|
|
EVENT_QIUIO6RISING = 0x89, // UIO6 rising edge event occurred.
|
|
EVENT_QIUIO7RISING = 0x8A, // UIO7 rising edge event occurred.
|
|
EVENT_QIUIO8RISING = 0x8B, // UIO8 rising edge event occurred.
|
|
EVENT_QIUIO9RISING = 0x8C, // UIO9 rising edge event occurred.
|
|
EVENT_QIUIO10RISING = 0x8D, // UIO10 rising edge event occurred.
|
|
EVENT_QIUIO11RISING = 0x8E, // UIO11 rising edge event occurred.
|
|
EVENT_QIUIO0FALLING = 0x8F, // UIO0 falling edge event occurred.
|
|
EVENT_QIUIO1FALLING = 0x90, // UIO1 falling edge event occurred.
|
|
EVENT_QIUIO2FALLING = 0x91, // UIO2 falling edge event occurred.
|
|
EVENT_QIUIO3FALLING = 0x92, // UIO3 falling edge event occurred.
|
|
EVENT_QIUIO4FALLING = 0x93, // UIO4 falling edge event occurred.
|
|
EVENT_QIUIO5FALLING = 0x94, // UIO5 falling edge event occurred.
|
|
EVENT_QIUIO6FALLING = 0x95, // UIO6 falling edge event occurred.
|
|
EVENT_QIUIO7FALLING = 0x96, // UIO7 falling edge event occurred.
|
|
EVENT_QIUIO8FALLING = 0x97, // UIO8 falling edge event occurred.
|
|
EVENT_QIUIO9FALLING = 0x98, // UIO9 falling edge event occurred.
|
|
EVENT_QIUIO10FALLING = 0x99, // UIO10 falling edge event occurred.
|
|
EVENT_QIUIO11FALLING = 0x9A, // UIO11 falling edge event occurred.
|
|
EVENT_QIDRVSTR = 0x9B, // Drive started.
|
|
EVENT_QIDNSTR = 0x9C, // Speed down event occurred.
|
|
EVENT_QICOSTR = 0x9D, // Constant speed event occurred.
|
|
EVENT_QIUPSTR = 0x9E, // Speed up event occurred.
|
|
EVENT_QICONTISTR = 0x9F, // Continuous drive started.
|
|
EVENT_QIPRESETSTR = 0xA0, // Preset drive started.
|
|
EVENT_QIMPGSTR = 0xA1, // MPG drive started.
|
|
EVENT_QIORGSTR = 0Xa2, // Original drive started.
|
|
EVENT_QISSCHSTR = 0xA3, // Signal search drive started.
|
|
EVENT_QIPATHSTR = 0xA4, // Interpolation drive started.
|
|
EVENT_QISLAVESTR = 0xA5, // Slave drive started.
|
|
EVENT_QICCWSTR = 0xA6, // CCW direction drive started.
|
|
EVENT_QIINPWAIT = 0xA7, // Inposition wait event occurred.
|
|
EVENT_QILINSTR = 0xA8, // Linear drive stated.
|
|
EVENT_QICIRSTR = 0xA9, // Circular drive started.
|
|
EVENT_QIDRVENDII = 0xAA, // Drive stopped.(Inposition state included)
|
|
EVENT_QIDNEND = 0xAB, // Speed down end event occurred.
|
|
EVENT_QICOEND = 0xAC, // Constant speed end event occurred.
|
|
EVENT_QIUPEND = 0xAD, // Speed up end event occurred.
|
|
EVENT_QICONTIEND = 0xAE, // Continuous drive ended.
|
|
EVENT_QIPRESETEND = 0xAF, // Preset drive ended.
|
|
EVENT_QIMPGEND = 0xB0, // MPG drive ended.
|
|
EVENT_QIORGEND = 0xB1, // Original drive ended.
|
|
EVENT_QISSCHEND = 0XB2, // Signal search drive ended.
|
|
EVENT_QIPATHEND = 0xB3, // Interpolation drive ended.
|
|
EVENT_QISLAVEEND = 0xB4, // Slave drive ended.
|
|
EVENT_QICCWEND = 0xB5, // CCW direction drive ended.
|
|
EVENT_QIINPEND = 0xB6, // Escape from Inposition waiting.
|
|
EVENT_QILINEND = 0xB7, // Linear drive ended.
|
|
EVENT_QICIREND = 0xB8, // Circular drive ended.
|
|
EVENT_QIBUSY = 0xB9, // During driving state.
|
|
EVENT_QINBUSY = 0xBA, // During not driving state.
|
|
EVENT_QITMR1EX = 0xBB, // Timer1 expired event.
|
|
EVENT_QITMR2EX = 0xBC, // Timer2 expired event.
|
|
EVENT_QIDRVENDIII = 0xBD, // Drive(that interrupt enable bit is set to high) end event
|
|
EVENT_QIERROR = 0xBE, // Error stop occurred.
|
|
//EVENT_QINOP = 0xBF, // NOP.
|
|
EVENT_QIALWAYS = 0xFF // Always Generate.
|
|
};
|
|
|
|
//-------------------------------
|
|
// CAMC-QI Script/Caption Define
|
|
//-------------------------------
|
|
public const int QI_SCR_REG1 = 1;
|
|
public const int QI_SCR_REG2 = 2;
|
|
public const int QI_SCR_REG3 = 3;
|
|
public const int QI_SCR_REG4 = 4;
|
|
public const int QI_OPERATION_ONCE_RUN = 0x00000000; // bit 24 OFF
|
|
public const int QI_OPERATION_CONTINUE_RUN = 0x01000000; // bit 24 ON
|
|
public const int QI_INPUT_DATA_FROM_SCRIPT_DATA = 0x00000000; // bit 23 OFF
|
|
public const int QI_INPUT_DATA_FROM_TARGET_REG = 0x00800000; // bit 23 ON
|
|
public const int QI_INTERRUPT_GEN_ENABLE = 0x00400000; // bit 22 ON
|
|
public const int QI_INTERRUPT_GEN_DISABLE = 0x00000000; // bit 22 OFF
|
|
public const int QI_OPERATION_EVENT_NONE = 0x00000000; // bit 21=OFF, 20=OFF
|
|
public const int QI_OPERATION_EVENT_AND = 0x00100000; // bit 21=OFF, 20=ON
|
|
public const int QI_OPERATION_EVENT_OR = 0x00200000; // bit 21=ON, 20=OFF
|
|
public const int QI_OPERATION_EVENT_XOR = 0x00300000; // bit 21=ON, 20=ON
|
|
|
|
public static uint QI_SND_EVENT_AXIS(int Axis) // bit 19~18 (00:X, 01:Y, 10:Z, 11:U)
|
|
{
|
|
return (((uint)Axis % 4) << 18);
|
|
}
|
|
|
|
public static uint QI_FST_EVENT_AXIS(int Axis) // bit 17~16 (00:X, 01:Y, 10:Z, 11:U)
|
|
{
|
|
return (((uint)Axis % 4) << 16);
|
|
}
|
|
|
|
public static uint QI_OPERATION_EVENT_2(uint Event) // bit 15..8
|
|
{
|
|
return ((Event & 0xFF) << 8);
|
|
}
|
|
|
|
public static uint QI_OPERATION_EVENT_1(uint Event) // bit 7..0
|
|
{
|
|
return (Event & 0xFF);
|
|
}
|
|
|
|
public static uint QI_OPERATION_COMMAND(int Command, int Axis) // bit 7..0 : enum _QISCOMMAND ÂüÁś
|
|
{
|
|
return (uint)((Command & 0xFF) << ((Axis % 4) * 8));
|
|
}
|
|
}
|
|
}
|