Home
User Manual
Contents
1. 4 bytes 1 bytes 4 bytes Running speed Running direction 0 Jog Flag option pps 1 Jog 2 2 0x82 bytes 6 bytes 130 Custom Accel Decel Time Reserved 1 9999 Flag ooption Ox0001 reserved 0x0002 Custom Accel Decel Time is used If the Flag bit is OFF status 0 Accel Decel Time value is used that saved in controller Response 1 byte FAS MoveLinearAbsPos To request Linear Interpolation move its position as much as the absolute value pulse for more than 2 motors that connected in same port Refer to 2 Library for PC program FAS_MoveLinear IncPos To request Linear Interpolation move its position as much as the incremental value pulse for more than 2 motors that connected in same port Refer to 2 Library for PC program FAS_ To request the Flag value of displaying the running status GetAxisStatus Sending 0 byte Response 5 bytes 0x40 64 1 byte 4 bytes Communication status Status flag value For bit related to each Flag refer to 1 2 5 Bit setup of Status Flag FAS_ To request the 0 status and the running Flag status Get OAxisStatus Frame type 0x22 0x23 and 0x40 are packed Sending 0 byte 0x41 Response 13 bytes 65 1 byte 4 bytes 4 bytes 4 bytes Communication Input status Output status Status flag status value value value 19 FAS GetMot ionStatus
2. Response 5 bytes 1 byte 4 bytes Communication status Command position value 20 FAS SetActualPos Ezi SERVO ALL is the closed loop control drive and so the actual position value is continuously controlled while the motor is in running The user sets it to the actual position value before it starts to operate and then can check how the actual position value is changed 0x52 82 Sending 4 bytes 4 bytes Actual position count value Response 1 byte 1 byte Communication status FAS_ To request the current actual position value pulse GetActualPos 0x53 Sending O byte 83 Response 5 bytes 1 byte 4 bytes Communication status Actual position value FAS_ To request the difference pulse between the command position value GetPosEr ror and the actual position value Sending O byte Response 5 bytes 0x54 84 1 byte 4 bytes Communication status Position difference value By this value the user can check the current running status how much inposition is tracked FAS_ To request the current running speed value pps GetActual Vel 0x55 Sending 0 byte 85 Response 5 bytes 1 byte 4 bytes Communication status Speed value FAS_ Ezi SERVO ALL is the closed loop control drive and so the command ClearPosition position value is continuously controlled while the motor is in running The user sets
3. 0x26 Response 2 bytes 38 1 byte 1 byte 45 Command performing status ansias 0 complete values except 0 error FAS_ Start Stop command for Compare Out signal Tr iggerOutput_RunA Sending 18 bytes 1 byte 4 bytes 4 byte Output start stop Pulse start position Pulse period 1 start O stop pulse pulse 0x27 4 byte 1 bytes 4 byte 39 Pulse width Output pin number spare msec fix to 0 Response 2 byte 1 byte 1 byte Communication status Command performing status 0 complete values except 0 error FAS_ Command to check if the trigger output pulse is wor king or not Tr iggerOutput_Status Sending 0 byte 0x28 Response 2 byte 40 1 byte 1 bytes Communication status Status 1 output ON O output OFF FAS_ Servo ON OFF status is set Ser voEnable Sending 1 byte 1 byte oc O 0FF 1 0N 42 Response 1 byte 1 byte Communication status FAS_ Servo alarm status is reset ServoAlarmReset 0x28 Sending 0 byte 43 Response 1 byte 1 byte Communication status 14 FAS ServoAlarmtype To request the Alarm type Sending 0 byte Response 2 byte 1 byte 1 bytes Communication status Alarm type 1 Ox2E 46 Alarm type No alarm 0 OverCurrent 1 OverSpeed 2 Step0ut 3 OverLoad 4 OverTemperature 5 BackEMF 6 MotorConnect 7 Encoder Connect 8 MotorPower 9 Inpo
4. Frame type To designate command type of relevant frames to Frame Type and Data Configuration section Data Data structure and length is set according to Frame Se 860 Slave ID Dive module number 0 15 connected to the PC communication port For the command type refer type For more information refer to Frame Type and Data Configuration section CRC To check that an error occurs during communication OxA001 of a polynomial factor in CRC Cyclic Redundancy Check is used Or X16 X15 X2 1 of a polynomial factor in CRC 16 IBM Cyclic Redundancy Check is used CRC calculation is performed for all items Slave ID Frame type Data prior to CRC item 1 1 3 CRC Calculation Example The following program source is included ina file file name the product 1 OxA001 of CRC16 const unsigned short TABLE_CRCVALUE 0X0000 0XC601 OXCCO1 OXOA00 0XD801 OX1E00 0X1400 0XD201 OXF001 0X3600 0X3C00 OXFAO1 0X2800 OXCOC1 OX06C0 OXOCCO OXCAC1 OX18C0 OXDEC1 OXD4C1 0X12C0 OX30C0 OXF6C1 OXFCC1 OX3ACO OXE8C1 OXC181 0X0780 0X0D80 OXCB81 0X 1980 OXDF81 0XD581 0X1380 0X3180 OXF781 OXFD81 0X3B80 OXE981 0X0140 0XC741 0XCD41 0X0B40 0XD941 OX1F40 0X 1540 0XD341 0XF141 0X3740 OX3D40 OXFB41 0X2 940 OXC301 0X0500 OXOFOO OxC901 0X1 B00 OXDDO1 0XD701 0X1100 0X3300 OXF501 OXFFO1 0X3900 OXEBO1 OX0
5. 75 FAS_GetMot ionStatus To read the motion status of current motor at one time Syntax int FAS_GetMot ionStatus BYTE nPortNo BYTE iSlaveNo long CmdPos long lActPos long PosErr long lActVel WORD wPos I temNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive CmdPos Parameter pointer which the command position value will be saved ActPos Parameter pointer which the actual position value will be saved PosErr Parameter pointer which the position error value will be saved ActVe Parameter pointer which the actual velocity val ue will be saved wPos temNo Parameter pointer which current running item number in the Position Table will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 76 FAS_GetAl Status To read 1 0 Input and Output values of the relevant drive the motor Axis Status the motor motion status Syntax int FAS_GetAl IStatus BYTE nPortNo BYTE SlaveNo OWORD dwinStatus DWORD dwOutStatus DWORD dwAxisStatus long CmdPos long lActPos long lPosErr long lActVel WORD wPos temNo Paramete
6. Check the value saved in the ROM nRtn FAS_GetROMPar ameter nPortNo iSlaveNo SERVO_AXISSTARTSPEED amp lParamVal _ASSERT nRtn FMM_OK You have to check if the command didn t execute correctly printf Parameter ROM Start Speed d Wn lParamVal Edit the parameter value then save it in the ROM nRtn FAS_SetParameter nPortNo iSlaveNo SERVO_AXISSTARTSPEED 100 _ASSERT nRtn FMM_OK You have to check if the command didn t execute correctly nRtn FAS_SaveAl lParameters nPortNo iSlaveNo _ASSERT nRtn FMM_OK Disconnect FAS_Close nPor tNo See Also FAS_GetRomPar ameter 46 FAS_SetPar ameter Edit the relevant parameter value and then save it to the RAM Syntax int FAS_SetParameter BYTE nPortNo BYTE iSlaveNo BYTE iParamNo long ParamValue Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive ParamNo Parameter number to be edited ParamvValue Parameter value to be edited Return Value FMM_OK Command has been normally per formed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMM_INVALID_PARAMETER_NUM There is no parameter of designated ParamNo Remarks The function operates only for one parameter designated Parameters in the drive are saved to 2
7. 1 byte 1 byte 0 247 bytes 2 bytes 1 byte Communication status Response data Low byte High byte O Slave ID Same to sending Frame When this is not same to sending data it should be recognized as the error status The Frame type Same to sending Frame When this is not same to sending data it should be recognized as the error status 3 Data When simple executive instructions are sent this data cannot be read However in case of response 1 byte is added to display the commu nication status error normal code by bytes means the Communication status as follows Hexa Decimal Description Code Code 0x00 0 Communication is normal Frame Type Error One 12 Responded Frame type cannot be recognized 0x81 129 Data error ROM data read write error A Data value responded is without the given range Received Frame Error sae re Frame data received is out of this specification Running Command Failure The user has tried to execute new running commands in wrong condition as fol lows 0x85 133 1 currently motor is running 2 currently motor is stopping 3 currently Servo is OFF status 4 try to Z pulse Origin without encoder 5 Other wrong motion command RESET Failure The user has tried to execute new running commands in wrong condition as 0x86 134 follows 1 While the servo is ON 2 Already RESET in ON by external input signal 13
8. There is no drive of iSlaveNo in the relevant port Remarks 1 If the target position is set to the farther coordinate than the original target position while the motor moves to the accelerated or uniform velocity th e motor moves to the velocity pattern until then and stops the target position Speed i i 1 1 i 1 1 i 1 i i 1 i 1 1 1 Position Override Time 2 If the target position is changed while the motor is decelerated it is again accelerated up to the uniform velocity and then stops to the tar get position Speed 1 Position Override Time 88 3 If the changed target position is set to the closer coordinate than the original target position the motor once stops to the position before change and then performs acceleration and deceleration to stop the changed target position Speed Position Override Example Refer to FAS_MoveSingleAxisAbsPos library See Also FAS_PositionIncOverr ide 89 FAS_Position IncOverr ide To change the incremental position value set while the motor moves to the incremental position Syntax int FAS_Position ncOverr ide BYTE nPortNo BYTE iSlaveNo long Overr idePos Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Over r dePos Incremental coordinate position value to be changed Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not b
9. Disconnect FAS_Close nPor tNo See Also FAS_ServoAlarmReset 52 FAS_Ser voA armReset To send AlarmReset command Syntax int FAS_ServoAlarmReset BYTE nPortNo BYTE SlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Before sending this command troubleshoot the alarm cause For alarm cause refer to User Manual_Text Example Refer to FAS_ServoEnable library See Also FAS_ServoEnable 253 2 6 Control I O Function Function Name Description To set the input signal level of the control input port FASO Ip Input signal is set to ON or OFF 7 To read the current input signal status of the control input port EAS eC O The signal status returns by bit for each input signal To set the output signal level of the control output port FAS_Set 1 00ut put Te P Output signal is set to ON or OFF A To read the current output signal status of the control output port EBS Geri PDD The signal status returns by bit for each output signal To read the pin setting status of the CN1 port FAS_Get OAssignMap The setting status for each 7
10. Return Value No response Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 94 FAS_AI MoveSing eAx isAbsPos To move the motor that connected in same port to the absolute coordinate Syntax int FAS_AI MoveSing eAxisAbsPos BYTE nPor tNo BYTE iSlaveNo long lAbsPos DWORD IVelocity Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive must be 99 AbsPos Absolute coordinate of position to move Velocity Velocity when the motor moves Return Value No response Remarks Example See Also 95 FAS_AI MoveSingleAxis IncPos To move the motor that connected in same port to the incremental coordinate value Syntax int FAS_AI IMoveSingleAxis ncPos BYTE nPor tNo BYTE iSlaveNo long IncPos DWORD Velocity Parameters nPor tNo Port number of relevant drive SlaveNo Slave number of relevant drive must be 99 ncPos Incremental coordinate of position to move Velocity Velocity when the motor moves Return Value No response Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 96 FAS_MoveLinearAbsPos FAS_MoveL near IncPos To move Linear Interpolation more than 2 motors that connected in same port to the absolute increnental coordinate Syntax int FAS_MoveLinearAbsPos BYTE nPortNo BYTE nNoOfSlaves BYTE iSlaveNo long lAbsPos DW
11. long Value int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed The port is not connected or the baudrate may be wrong return Check position information of Ezi SERVO Plus R nRtn FAS_GetCommandPos nPortNo iSlaveNo 8lValue _ASSERT nRtn FMM_OK printf CMDPOS d Wn IValue nRtn FAS_GetActualPos nPortNo iSlaveNo amp lValue _ASSERT nRtn OK printf ACTPOS d Wn Value nRtn FAS_GetPosError nPortNo iSlaveNo amp lValue _ASSERT nRtn 0K printf POSERR d Wn Value nRtn FAS_GetActualVel nPor tNo iSlaveNo amp lValue _ASSERT nRtn FMM_OK 68 printf ACTVEL d Wn IValue Disconnect FAS_Close nPor tNo See Also FAS_GetActualPos 69 FAS_GetActualPos To read the actual position value of the motor Syntax int FAS_GetActualPos BYTE nPortNo BYTE iSlaveNo long ActPos Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive ActPos Parameter pointer which the actual position value will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks When the user decides the motor position
12. 1 Compare Position ITr iggerPos 4 signed 40 pulse 134217728 134217728 Compare Width wTr igger OnTime 2 unsigned 44 msec 1 9999 Push Rat io wPushRat io 2 unsigned 46 10 90 Push Speed dwPushSpeed 4 unsigned 48 pps 0 50000 Push Position IPushPosition 4 signed 52 pulse 134217728 134217728 Push Mode wPushMode 2 unsigned 56 0 1 Blank 6 unsigned 58 0x00 For the setting method by each tem 1 2 7 refer to other manual Information of Motors Firstly the number and 2 3 characters are display the motor size and length Example 1 56XL Motor Flange size is 56mm and Extra long size Second area is disp ay the motor maker information like belo w Display Maker blank JapanSer vo SD Sanyo Denki POR Por tescap NPM NPM FUL Fulling 29 User Manual_Position Table 1 3 Program Method There are 2 method of programming for Ezi SERVO ALL The first is normally used method that using Visual C language under window system of PC Library that serviced together with Ezi SERVO ALL have to be used Refer to T2 Library for PC Program The second method can be accomplished by sending command characters directly to Ezi SERVO ALL The user have to prepare low level protocol programming like Protocol Test program This method is normally used for PLC system For excise the protocol programming ProtocolTest_PlusR exe GUI program is servi
13. FMM_INVALID_PARAMETER_NUM wltemNo is out of range Remarks Example See Also FAS_PosTableWr i teOnel tem 110 FAS_PosTableWr i teOne tem To edit one item in the specific position table Syntax int FAS_Pos ab eWr i teOnel tem BYTE nPortNo BYTE iSlaveNo WORD wi temNo WORD wOffset long Pos temVal Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive w temNo Item number to be edited wOffset offset value whichwill be save inPT items Refer to 1 2 6 Position Table tem Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMC_POSTABLE_ERROR An error occurs while position table is being written FMM_INVALID_PARAMETER_NUM wltemNo is out of range Remarks Example See Also FAS_PosTab eReadOne tem 111 2 11 Other Control Function Function Name Description FAS_Tr ggerOutput_RunA To Start Stop command for Compare Out signal FAS_Tr iggerOutput_Status To check if the trigger output pulse is working or not FAS_MovePush To request push motion maintain specified motor torque command FAS_GetPushStatus To request thecurrent push motion status 112 FAS_Tr iggerOutput_RunA To
14. PosTab eWr i teROM Sending O byte 0x63 Response 2 bytes 99 1 byte 1 byte c icati ii Command performing status OMMEN Lea LLON STARUS 0 complete values except 0 error 22 FAS PosTab eRun tem To start the position table operation from the designated PT number Sending 2 bytes 2 bytes cael PT Number 0 63 100 Response 1 byte 1 byte Communication status FAS_ To read one of PT values in the RAM of the drive PosTableReadOneltem Sending 4 byte 2 byte 2 byte PT Number 0 63 Offset value 0 40 Ox6A Refer to 1 2 6 Position Table Item for Offset value 106 Response 5 byte 1 byte 4 byte Communication status Relevant one of PT value FAS_ To save one of PT values to the RAM of the drive PosTableWriteOneltem Sending 8 byte 2 byte 2 byte 4 byte PT Number 0 63 Offset value 0 40 Relevant one of PT value 0x6B Refer to 1 2 6 Position Table Item for Offset value 107 Response 2 byte 1 byte 1 byte Communication status Command performing status values except O complete 0 error FAS_ To request push motion maintain specified motor torque MovePush Command This function is worked only with Ezi SERVO PR MI and MC 28VA cylinder Sending 28 bytes 4 byte 4 bytes 4 byte 2 bytes 2 bytes Normal Normal Normal Acce Dece
15. Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 86 FAS_MoveVelocity To move the motor to the relevant direction and velocity This function is also available for Jog motion Syntax int FAS_MoveVeloci ty BYTE nPortNo BYTE iSlaveNo DWORD Velocity int iVelDir Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Velocity Velocity when the motor moves VelDir Direction which the motor moves 0 Jog 1 Jog Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 87 FAS_Posi t i onAbs Over r ide To change the absolute position value set while the motor mov es to the absolute position Syntax int FAS_Posit ionAbsOver r ide BYTE nPortNo BYTE iSlaveNo long lOverridePos Parameters nPor tNo Port number of relevant drive Slaveno Slave number of relevant drive Overr dePos Absolute coordinate position value to be changed Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM
16. Select a serial port to be connected awBaud Input the Baudrate of the serial port Return Value When it is successfully connected TRUE will returns Otherwise FALSE will return Remarks Example include FAS_EZiMOTIONPlusR h void funcinit BYTE nPortNo 1 COMM Port Number DWORD dwBaudrate 115200 Baudrate Be variable by setting BYTE iSlaveNo 0 Slave No 0 15 char pBuf f 256 int nBuffSize 256 BYTE nType int nRtn Try to connect if FAS_Connect nPortNo dwBaudrate FALSE Connection failed Tne port is not connected or the baudrate may be wrong return if FAS_IsSlaveExist nPortNo iSlaveNo FALSE There is no relevant slave number Check the slave number of Ezi SERVO Plus R return nRtn FAS_GetSlavelnfo nPortNo iSlaveNo 8nType IpBuff nBuffSize if nRtn FMM_OK Command has not been performed properly Refer to ReturnCodes_Define h printf Port d Slave d Wn nPortNo SlaveNo printf WtType d Wn nType printf WtVersion d Wn IpBuff agg Disconnect FAS_Close nPor tNo See Also FAS_Close 39 FAS_Close To disconnect the serial port being used Syntax void FAS_Close BYTE nPor tNo Parameters nPor tNo Port number to disconnect Remarks Example Refer to FAS_Connect library See Also FAS_Connect 40 FAS_GetSlave Info To get the version in
17. Start speed Move speed Position time time 0x78 120 2 byte 4 bytes 4 byte 2 byte Push torque Push Push Push mode ratio Move speed Position Refer to User Manual Test 10 6 Push Motion Response 1 byte 1 byte Communication status 23 0x79 121 FAS GetPushStatus This function cylinder Sending 0 byte Response 2 byte To request thecurrent push motion status is worked only with Ezi SERVO PR MI and MC 28VA 1 byte 1 bytes Communication Push motion status status 0 normal Servo ON 1 push motioning but the work is not detected 2 work detected and torque is maintained x Frame Type 0x65 0x69 0x90 0x92 are allotted for internal use 24 1 2 2 Parameter Lists No Name Unit Lower Limit Upper Limit Default O Pulse per Revolution 0 9 9 1 Axis Max Speed pps 1 500 000 500 000 2 Axis Start Speed pps 1 35 000 1 3 Axis Acc Time msec 1 9 999 100 4 Axis Dec Time msec 1 9999 100 5 Speed Override 1 500 100 6 Jog Speed pps 1 500 000 5 000 7 Jog Start Speed pps 1 35 000 1 8 Jog Acc Dec Time msec 1 9 999 100 9 Servo Alarm Logic 0 1 0 10 Servo On Logic 0 1 0 11 Servo Alarm Reset Logic 0 1 0 12 S W Limit Plus Value pulse 134 217 727 134 217 7
18. and checks its actual position this function is generally used Example Refer to FAS_GetCOmmandPosition library See Also FAS_GetCommandPos 70 FAS_GetPosEr ror To read the position error of the motor Syntax int FAS_GetPosError BYTE nPortNo BYTE iSlaveNo long PosErr Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive PosErr Parameter pointer which the position error value will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_GetCOmmandPosi tion library See Also FAS_GetCommandPos FAS_GetActualPos aTi a FAS_GetActualVel To read the actual velocity of the motor Syntax int FAS_GetActualVel BYTE nPortNo BYTE iSlaveNo long ActVel Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive ActVe Parameter pointer which the actual velocity value will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FA
19. connected in same port Al lEmergencyStop 0x3C Sending O byte 60 Slave number must be 99 Response no response FAS_Al To request return to the origin at the current setting parameter Move0r iginSingleAxis condition for all motors that connec ted in same port Sending 0 byte 0x30 Slave number must be 99 61 Response no response FAS_AI To request move its position as much as the absolute value pulse SingleAxisAbsPos for all motors that connected in same port Sending 8 bytes Slave number must be 99 Ox8E 4 bytes 4 bytes 62 Absolute position value Running speed pps Response no response FAS_AI To request move its position as much as the incremental value pulse SingleAxis IncPos for all motors that connected in same port Sending 8 bytes Slave number must be 99 Ox3F 4 bytes 4 bytes 63 incremental position value Running speed pps Response no response FAS_ Request the motor to move ts position as much as the absolute MoveSingleAx i sAbsPos value pulse with Custom Accel Decel Time msec Ex Sending 40 bytes 4 bytes 4 bytes 4 bytes 2 bytes Absolute Running speed Flag option Custom Accel Time 0x80 position pps 1 9999 128 value 2 bytes 24 bytes Custom Decel Time Reserved 1 9999 Flag ooption 0x0001 reserved 0x0002 Custom Accel Time is used 17 0x0004 Custom Decel Time is used If the Flag bit is OFF status 0 Accel D
20. start stop the digital output signal Compare Out pin when reaching the specific Taregt position Syntax int FAS_Tr iggerOutput_RunA BYTE nPortNo BYTE iSlaveNo BOOL bStartTrigger long StartPos DWORD dwPer iod DWORD dwPulseTime Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive bStartTrigger Output start stop command 1 start O stop long StartPos Output start position pulse DWORD awPer iod Period of output signal pulse DWORD awPulseTime Width of output signal msec Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMM_INVALID_PARAMETER_NUM wltemNo is out of range Remarks Example See Also FAS_Tr iggerOutput_Status 113 FAS_Tr iggerOutput_Status To check if the trigger output is working or not Syntax int FAS_TrggerQOutput_Status BYTE nPortNo BYTE iSlaveNo BYTE bTriggerStatus Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive bTriggerStatus Current status of signal output Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FM
21. the command position and actual position value to 0 before it starts to operate and then can check how the command position value is changed 0x56 86 Sending 0 byte Response 1 byte 1 byte Communication status A ES FAS_ To request the pause start and pause end of motor motioning MovePause Sending 1 byte 1 byte 0x58 O pause release 1 pause start 88 Response 1 byte 1 byte Communication status FAS_ To read PT values in the RAM of the drive PosTableRead tem Sending 2 bytes 2 bytes 0x60 Readable PT number 0 63 96 Response 65 bytes 1 byte 64 bytes Communication status Relevant PT values For items by each PT refer to 1 2 6 Position Table Item FAS_ To save PT values to the RAM of the drive PosTableWr iteltem Sending 66 bytes 2 bytes 64 bytes 0x61 PT number 0 63 Relevant PT value 97 For items by each PT refer to 1 2 6 Position Table Item Response 2 bytes 1 byte 1 byte Gorun ication status Command performing status values except 0 complete 0 error FAS_ To read all PT values 64 ea in the ROM of the drive PosTableReadROM Sending O byte 0x62 Response 2 bytes 98 1 byte 1 byte Communication status command Periodo status 0 complete values except 0 error FAS_ To save all PT value 64 ea to the ROM of the drive
22. variable signals returns by bit to the Input and Output port FAS_Set OAssignMap To assign the control 0 signal to CN1 port pin and also set the signal level Setting for each 7 variable signals is assigned to the Input and Output port FAS_ OAss i gnMapReadROM To load the pin setting status of CN1 port from ROM area to RAM area 54 FAS_Set10 nput To set 1 0 input For more information refer to 1 2 Structure of Frame Type Syntax int FAS_Set10Input BYTE nPortNo BYTE iSlaveNo DWORD dwlOSetMask DWORD dw OCLRMask Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive aw 0SetMask Input bitmask value to be set aw OCLAWask Input bitmask value to be cleared Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Be careful that dwlOSetMask bit and dwlOCLRMask bit are not duplicated Example include FAS_ EziMOTIONPlusR h void funcl0 BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 DWORD dwinput dwOutput int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed The port is not connected or the baudrate may be wrong return C
23. 008 PT A7 0x00000800 Org Search Ox00080000 User Input 1 0x08000000 PT PT AO 0x000000 10 Sieni 0x0000 1000 Teaching 0x00100000 User Input 2 0x10000000 PT Al 0x00000020 Stop 0x00002000 E stop 0x00200000 User Input 3 0x20000000 PT A2 0x00000040 Jog 0x00004000 JPT input O Ox00400000 User Input 4 0x40000000 PT AS 0x00000080 Jog 0x00008000 JPT input 1 0x00800000 User Input 5 0x80000000 26 Example 1 Sending data to turn ON the Pause port Example 2 Sending 4 bytes 4 bytes 1 0 set mask value 1 0 clear mask value 0x00040000 0x00000000 data to turn OFF the Pause port 4 bytes 4 bytes 1 0 set mask value 1 0 clear mask value 0x00000000 0x00040000 1 2 5 Bit setup of Status Flag Refer to motion_define h of include files lt can be applied under the Firmware version of 06 03 043 8 Name of Flag Define Contents Roya a Position FFLAG_ERRORALL One or more error occurs 0X00000001 FFLAG_HWPOSILMT direction limit sensor turns ON 0X00000002 FFLAG_HWNEGALMT direction limit sensor turns ON 0X00000004 FFLAG_SWPOGI LMT direction program limit is exceeded 0X00000008 FFLAG_SWNEGALMT direction program limit is exceeded 0X000000 10 reserved 0X00000020 FELAG POSCNTOVER Posi tion o
24. 020000 Alarm 0x00000004 reserved 0x00000400 User Output 3 0x00040000 Moving 0x00000008 reserved 0x00000800 User Output 4 0x00080000 Acc Dec 0x00000010 PT Output 0 0x0000 1000 User Output 5 0x00 100000 ACK 0x00000020 PT Output 1 0x00002000 User Output 6 0x00200000 END 0x00000040 PT Output 2 0x00004000 User Output 7 0x00400000 AlarmBI ink 0x00000080 User Output 0 0x00008000 User Output 8 0x00800000 Example 1 Sending data to turn ON the User Output 5 port 4 bytes 4 bytes 1 0 set mask value 1 0 clear mask value 0x00100000 0x00000000 Example 2 Sending data to turn OFF the User Output 5 port 4 bytes 4 bytes 1 0 set mask value 1 0 clear mask value 0x00000000 0x00100000 1 24 Bit setup of Input pin This displays the detailed description for 0x21 Frame type This command is applicable to 32 signals in the control input port The user can use signals for test as if they are inputted without actual input signal The following table shows bit mask values by each signal q Relevant r Relevant a Relevant Relevant Signal Bit Signal Bit Signal Bit Ne Bit Name Position Name Position Name Position Position Limit 0x00000001 PT AZ 0x00000100 AlarmReset Ox00010000 JPT input 2 0x01000000 Limit 0x00000002 PT A5 0x00000200 Ser voON 0x00020000 JPT Start 0x02000000 Origin 0x00000004 PT A6 0x00000400 Pause 0x00040000 User Input O 0x04000000 Clear a 0x00000
25. 0X02000000 FFLAG_MOTIONDIR To display the motor operating direction Off On 0X04000000 FFLAG_MOTION ING The motor is running 0X08000000 FFLAG_MOT ONPAUSE The motor in running is stopped by Pause command OX 10000000 FFLAG_MOTIONACCEL The motor is operating to the acceleration section 0X20000000 FFLAG_MOT ONDECEL The motor is operating to the deceleration section 0X40000000 FFLAG_MOTIONCONST The motor is operating to the normal speed not 0x80000000 acceleration deceleration sections SIT lt ext bit assignments can be applied over the Firmware version of 06 03 043 10 Relevant Bit Name of Flag Define Contents nee Position FFLAG_ERRORALL One or more error occurs 0X00000001 FFLAG_HWPOS I LMT direction limit sensor turns ON 0X00000002 FFLAG_HWNEGALMT direction limit sensor turns ON 0X00000004 FFLAG_SWPOG I LMT direction program limit is exceeded 0X00000008 FFLAG_SWNEGALMT direction program limit is exceeded 0X000000 10 Reser ved 1 0X00000020 Reser ved2 0X00000040 FFLAG_ERRPOSOVERFLOW Position error is higher than Pos Error Overflow 0X00000080 Limit parameter after position command FFLAG_ERROVERCURRENT The motor driving device is under over current 0X00000100 FFLAG_ERROVERSPEED The motor speed exceeded 3000 rpm 0X00000200 FFLAG_ER
26. 0X8701 OX47CO OX4680 OX8641 OX8201 OX42CO 0X4380 0X8341 0X4100 OX81C1 OX8081 0X4040 ie unsigned short CalcCRC unsigned char pDataBuffer unsigned long usDataLen unsigned char nTemp unsigned short wCRCWord OXFFFF while usDatalen nTemp wCRCWord pDataBuf fer wCRCWord gt gt 8 wCRCWord TABLE_CRCVALUE nTemp return wCRGWord 2 X16 X15 X2 1 of CRC 16 1BM unsigned short CalcCRCbyAlgorithm unsigned char pDataBuffer unsigned long usDataLen const unsigned short POLYNOMIAL OxA001 unsigned short wCrc int iByte iBit Initialize CRC were Oxf fff for Byte 0 Byte lt usDatalen Byte Exclusive OR the byte with the CRC wCrc pDataBuffer Byte Loop through all 8 data bits for iBit 0 Bit lt 7 iBitt If the LSB is 1 shift the CRC and XOR the polynomial mask with the CRC Note the bit test is performed before the rotation so can t move the lt lt here if were amp 0x0001 Creo gt 1 wCrc POLYNOMIAL else Just rotate it Crec gt 1 i return wCrc 1 1 4 Response Frame Structure and Communication Error Ver6 When any command is sent the basic structure of Frame at the response side is same However there isa difference in case of Frame Data which communication status is added as shown below Slave ID Frame Type Data CRC
27. 2 FAS_ sSlaveExist To check that the drive is connected Syntax BOOL FAS_IsSlaveExist BYTE nPor tNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value TRUE The drive is connected FALSE The drive is disconnected Remarks This function is provided from the library only and it is inapplicable to the protocol program mode Example Refer to FAS_Connect library See Also FAS_Connect 43 2 4 Parameter Control Function Funct ion Name Description Current parameters are saved to the ROM Even after the drive is powered OFF parameters related to operating speed acceleration deceleration time and origin return need to be preserved FAS_SaveAl Parameters FAS SetParameter The pee vcnalee parameter is saved to the RAM ic parameter is saved Speci FAS Gs tparanetat The ae anat parameter is read from the RAM ic parameter is read Speci The designated parameter is read from the ROM FAS ae ROME A Specific parameter is read from the ROM 44 FAS_SaveAl Parameters All parameters edited up to now 8 assign status of In Out signals are saved in the ROM area Syntax Int FAS_SaveAl Parameters BYTE nPortNo BYTE SlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has
28. 27 134 217 727 13 S W Limit Minus Value pulse 134 217 727 134 217 727 134 217 727 14 S W Limit Stop Method 0 1 1 15 H W Limit Stop Method 0 1 1 16 Limit Sensor Logic 0 1 0 17 Org Speed pps 1 500 000 5 000 18 Org Search Speed pps 1 500 000 1 000 19 Org Acc Dec Time msec 1 9 999 50 20 Org Method 0 2 0 21 Org Dir 0 1 0 22 Org Offset pulse 134 217 727 134 217 727 0 23 Org Position Set pulse 134 217 727 134 217 727 0 24 Org Sensor Logic 0 1 0 25 Position Loop Gain 0 15 4 26 Inpos Value 0 15 0 27 Pos Tracking Limit pulse 1 134 217 727 5 000 28 Motion Dir 0 1 0 29 Limit Sensor Dir 0 1 0 30 Org Torque Ratio 10 100 50 31 Pos Error Overflow Limit pulse 1 134 217 727 5 000 25 1 2 3 Bit setup of Output pin This displays the detailed description for 0x20 Frame type This command is applicable only to 9 signals of User Output O User Output 8 out of 24 signal types in the control output port The rest 15 output signals of them cannot be operated by the user s disposal When any relevant situation occurs while the drive operates they are displayed The following table shows bit mask values by each signal Relevant Relevant Relevant Signal Name Bit Signal Name Bit Signal Name Bit Position Position Position Compare Out 0x00000001 Origin Search OK 0x00000100 User Output 1 0x00010000 Inposition 0x00000002 ServoReady 0x00000200 User Output 2 0x00
29. 3C0 OX0280 OXC241 OXC5C1 OXC481 0X0440 OXCFC1 OXCE81 OXOE40 OX09C0 OX0880 OXC841 OXDBC1 OXDA81 OX1A40 OX1DCO OX1C80 OXDC41 0X17C0 OX1680 OXD641 OXD1C1 OXDO81 OX1040 OXF3C1 OXF281 0X3240 0X35C0 OX3480 OXF441 OX3FCO OX3E80 OXFE41 OXF9C1 OXF881 OX3840 OX2BC0 OX2A80 OXEA41 ST CRC_Checksum c provided with OXEEO1 OX2ECO OX2F80 OXEF41 OX2D00 OXEDC1 OXEC81 OX2C40 OXE401 0X24C0 OX2580 OXE541 OX2700 OXE7C1 OXE681 0X2640 Ox2200 OXE2C1 OXE381 0X2340 OXE101 0X21C0 OX2080 OXE041 OXAQ01 OX60CO OX6180 OXA141 OX6300 OXA3C1 OXA281 0X6240 OX6600 OXA6C1 OXA781 OX6740 OXA501 OX65CO OX6480 OXA441 OX6C00 OXACC1 OXAD81 OX6D40 OXAFO1 OX6FCO OX6E80 OXAE41 OXAAO1 OX6ACO OX6B80 OXAB41 OX6900 OXA9C1 OXA881 OX6840 0X7800 OXB8C1 OXB981 0X7940 OXBBO1 OX7BCO OX7A80 OXBA41 OXBEO1 OX7ECO OX7F80 OXBF41 OX7D00 OXBDC1 OXBC81 0X7C40 OXB401 0X74C0 0X7580 OXB541 0X7700 OXB7C1 OXB681 0X7640 0X7200 OXB2C1 0XB381 0X7340 OXB101 0X71C0 OX7080 0XB041 OX5000 OX90C1 0X9181 OX5140 0X9301 OX53C0 0X5280 0X9241 0X9601 OX56C0 0X5780 OX9741 OX5500 OX95C1 0X9481 0X5440 0X9C01 OX5CCO OX5D80 OX9D41 OX5FOO OX9FC1 OX9E81 OX5E40 OX5A00 OX9AC1 OX9B81 OX5B40 OX9901 OX59C0 OX5880 0X9841 OX8801 0X48C0 0X4980 0X8941 OX4B00 OX8BC1 OX8A81 OX4A40 OX4E00 OX8EC1 OX8F81 OX4F40 OX8D01 OX4DCO OX4C80 OX8C41 0X4400 OX84C1 0X8581 OX4540
30. 5 Servo ON Failure PE l While an alarm occurs the user has tried to execute Servo ON command Servo ON Failure 0x88 136 While Emergency Stop occurs the user has tried to execute Servo ON command Servo ON Failure 0x89 187 Servo0N signal is assigned to input pin already Servo ON OFF Can execute by external input signal only CRC Error OxAA 170 Frame data received is out of CRC format In this case DLL Library of sending side automatically try to send 1 more time ro 1 If Header and Slave ID values in the sending Frame are abnormal there is no response from the drive 2 If the communication status is displayed to 130 the sizeof response data is 0 byte 10 1 2 Structure of Frame type Ver6 1 2 1 Frame type and Data Configuration 1 The following table displays the content and configuration of data by Frame type Frame p Library Name Contents Type FAS_ Connected slave type and program version information are required GetSlavelnfo i Sending 0 byte Response 1 248 bytes 0x01 1 byte 1 bytes 0 246 bytes 1 Communication ACI string with NULL byte Slave type status strlen 1 byes Y Slave type 1 Ezi SERVO Plus R ST 20 Ezi STEP Plus R ST 50 Ezi SERVO Plus R MINI 30 Ezi SERVO ALL FAS_ Connected motor type and maker information are required GetMot
31. APOSTRACKING Position error is higher than Pos Tracking oooi Limit parameter during position command run FFLAG_ERROVERLOAD Load exceeding the max torque of the motor is loaded more 0x00000800 than 5 seconds FFLAG_ERROVERHEAT The internal temperature of the drive exceeds 55 C 0X0000 1000 FFLAG_ERRBACKEMF A counter electromotive force of the motor exceeds 70V 0X00002000 FFLAG_ERRMOTORPOWER The power supplied to the motor is less than low limited 0x00004000 value FFLAG_ERRINPOSITION After operation is finished a position error occurs for 0X00008000 more than 3 seconds FFLAG_EMGSTOP The motor is under emergency stop 0X000 10000 FFLAG_SLOWSTOP The motor is under general stop 0X00020000 FFLAG_ORIGINRETURNING The motor is returning to the origin 0X00040000 FFLAG_INPOSIT1ON Inposition has been finished 0X00080000 FFLAG_SERVOO The motor is under Servo ON 0X00 100000 FFLAG_ALARMRESET AlarmReset has run 0X00200000 FFLAG_PTSTOPED Position Table operation has been finished 0X00400000 FFLAG_ORIGINSENSOR The origin sensor is ON 0X00800000 FFLAG_ZPULSE The motor operates to z pulse type of origin return 0X0 1000000 operations FFLAG_OR IG INRETOK Origin return operation has been finished 0X02000000 FFLAG_MOT I ONDIR To display the motor operating direction Off On 0X04000000 FFLAG_MOTIONING The motor is running 0X08000000 FFLAG_MOT ONPAUSE The motor in running is stopped by Pause command OX 10000000 FFLAG_MOT ONACCEL The mot
32. AS_GetlOAssignMap nPortNo iSlaveNo 12 Input Pin Count i amp dwLogicMask amp bLevel _ASSERT nRtn FMM_OK if dwLogicMask OUT_LOGIC_NONE printf Output Pin d Logic Mask Ox 08X s Wn i dwLogicMask bLevel LEVEL_LOW_ACTIVE Low Active High Active else printf Output Pin d Not assignedWn i Assign ALARM Logic High Active to output pin 9 iPinNo 9 0 9 value is available Caution O is fixed to COMPOUT nRtn FAS_SetlO0AssignMap nPortNo iSlaveNo 12 Input Pin Count iPinNo SERVO_OUT_B TMASK_ALARM LEVEL_HIGH_ACTIVE _ASSERT nRtn FMM_OK Disconnect FAS_Close nPor tNo See Also FAS_Set OAssignMap 61 FAS_Set OAss i gnMap To set 1 0 Assign Map For more information refer to 1 2 Structure of Frame Type Syntax int FAS_Set OAssignMap BYTE nPortNo BYTE iSlaveNo BYTE 1OPinNo BYTE nLogicNo BYTE bLevel Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive 0P nNo 1 0 Pin number to be read nlOLogic Logic value to be assigned to the relevant pin bLeve Active Level value of the relevant logic Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMM_INVALI
33. C CREFAILED ERROR 0x07 The packet which recelved fram drive is corrupted Cancel CRC value of communication packet from the drive is not correct Checking the Possibility of noise on communication cable 33 FMC_RECVPACKET_ERROR The command ls failed Command FAS_MoveSingleAxisAbsPas Return code FMC_RECVPACKET_ERROR 0x08 Received packet is incorrect one The length of received packet is not correct Checking the possibility of noise on communication cable FMP_FRAMETYPEERROR 0x80 A The command returned an error Command FAS_MoveSingleAxisAbsPos Return code FMP_FRAMETYPEERROR 0x80 The drive cannot recognize the command Drive do not recognize the command or wrong command is sended Checking the command value that you want to send to the drive FMP_DATAERROR The command returned an error Command FAS_MoveSingleAxisAbsPas Return code FMP DATSERROR 0x81 Input data is out of the range The value of the sended data is out of the proper range for drive Checking the value that you want to send to the drive FMP_PACKETERROR The command returned an error Command FAS_MoveSingleAxisAbsPaos Return code FMP_PACKETERROR 082 The length of received packet on drive is not correct Checking the possibility of noise on communication cable 34 The command returned an error Command FAS_MoveSingle4xisA4bsPos Return code FMP_PAC
34. Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks For nlOLogic refer to Motion_define h Example include FAS_ EziMOTIONPlusR h void funcl0Assign BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 BYTE PinNo DWORD dwLogicMask BYTE bLevel BYTE i int nRtn Try to connect if FAS_Connect nPor tNo 115200 FALSE Connection failed The port is not connected or the baudrate may be wrong return Check assigned information of input pin for i 0 i lt Input Pin Count 12 i 60 nRtn FAS_Getl0AssignMap nPortNo iSlaveNo i amp dwLogicMask 8bLevel _ASSERT nRtn FMM_OK if dwLogicMask N_LOGIC_NONE printf Input Pin d Logic Mask Ox 08X s Wn i dwLogicMask bLevel LEVEL_LOW_ACTIVE Low Active High Active else printf Input Pin d Not assignedWn i Assign SERVOON Logic Low Active to input pin 3 iPinNo 3 0 11 value is available Caution 0 2 is fixed nRtn FAS_SetlOAssignMap nPortNo iSlaveNo iPinNo SERVO_IN_B TMASK_SERVOON LEVEL_LOW_ACTI VE _ASSERT nRtn FMM_OK Check assign information of output pin for i 0 i lt 10 Output Pin Count i nRtn F
35. D_PARAMETER_NUM Designated lOPinNo or nlOLogic value is out of range Remarks To save current setting values to the memory FAS_SaveAl Parameters library should be run Example Refer to FAS_GSet OAssignMap library See Also FAS_Get OAss i gnMap 62 FAS_I 0Ass ignMapReadROM To load the status of CN1 assignment being saved in ROM area Syntax int FAS_PosTab eReadROM BYTE nPor tNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has been normally per formed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example See Also FAS_ Get OAssignMap 63 2 7 Position Control Function Function Name Description FAS_SetCommandPos To set the command position value FAS_SetActualPos To set the current position to the actual posit on value FAS_GetCommandPos To read the current command position value FAS_GetActualPos To read the actual command position value To read the difference between the actual position value and the FAS_GetPosEr ror re command position value FAS_GetActual Vel To read the actual running speed value while the motor is moving FAS_ClearPosit ion To set the command position and actual position v
36. Example See Also FAS_PosTableWr i teROM 108 FAS_PosTableRun tem To perform command from a specific tem in the position table Syntax int FAS_PosTableRun tem BYTE nPortNo BYTE iSlaveNo WORD wl temNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive wl temNo Item number to start motion Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMM_INVALID_PARAMETER_NUM wltemNo is out of range Remarks Example See Also FAS_GetAl Status FAS_MoveStop FAS_EmergencyStop 109 FAS_PosTableReadOnel tem To read a one item in the specific position table Syntax int FAS_PosTableReadOne tem BYTE nPortNo BYTE SlaveNo WORD wltemNo WORD wOffset long lPos temVal Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive w temNo Item number to be read WwOffset offset value which will be read inPT items Refer to 1 2 6 Position Table tem Return Value FMM_OK Command has been normally per formed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port
37. Ezi SERVO ALL Closed Loop Stepping System User Manual Communication Function_Ver6 Rev 01 01 04 1 Table of Contents Communication PROLOCO I S aisiscectocccceleceteses tess aatead saute ereecctscnvestebeetecalens iti etennentes 6 1 1 Communication FUNCTIONS scccccccssssssssssscccssssssssssssccsessssssssssscesssssssssssssesssssssseseessssssssnees 6 Ll T Gommun cat ron SpeG Vil Cat ONS La Ae A ee 6 1 1 2 RS 485 Communication Protocol VerB vee ceccecsscescsccscsscscssesscseesessesseseees 6 1 3 CRG Caleulation Examplex 2 2 E a AE EA 7 1 1 4 Response Frame Structure and Communication Error Ver6 n se 10 1 2 Structure of Frame type Ver6 ococcccocnonnonnonncnnonnnonananinacononanonnonnconnnnnonnonoonncanonacononanonaonnoss 11 1 2 1 Frame type and Data Configuration oooconocccccccononcnannnnnoncnonananananononannnanancccnonannns 11 l 222 Paramerer SS A ea aoe ee 25 PELS SBA SOLU GOR OUT OUT MOM NE a inc ae ec A DA tants ae sta 26 l 24 Bit lt selup or NPUR ip A eed E OEA 26 Z 3 BIE SO HU Ola Stats Fla EE A AR A EE DA NA eles 27 2 6 Rostition able toma a a ar a e e dean do 29 L Z TE UA GOFMATIOM of MODOS a IA EI AD DAS AD SD rt 29 U 3 Program Method ssiccesseisdccssessceovsosedeecsosecusveesoceccsubaceasvoadbesvobecessvededessvetececuesacdsoavecsobedasssebedeocsenes 30 Library for PC Program Ver6 sseseseseseosososessososesesessosososeosososesesessosesso
38. FAS_Close nPor tNo 99 FAS_MoveSingleAxis ncPosEx To move the motor to the Incremental coordinate Syntax int FAS_MoveSingleAxis ncPosEx BYTE nPortNo BYTE iSlaveNo long IncPos DWORD Velocity MOTION_OPTION_EX IpExOpt ion Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive ncPos Incremental coordinate of position to move Velocity Velocity when the motor moves pExOpt ion Custom option Return Value FMM_OK Command has been normally per formed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example See Also 100 FAS_MoveVe loci tyEx To move the motor to the relevant direction and velocity This function is also available for Jog motion Syntax int FAS_MoveVeloci tyEx BYTE nPortNo BYTE iSlaveNo DWORD Velocity int VelDir VELOCITY_OPTION_EX IpExOption Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Velocity Velocity when the motor moves VelDir Direction which the motor moves 0 Jog 1 Jog pExOpt on Custom option Return Value FMM_OK Command has been normal ly performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM
39. KETCACERROR 0x4 An error is occured while checking CRC of the packet which drive received FMP_PACKETCRCERROR OxAA The CRC value on drive is not correct Checking the possibility of noise on communication cable 2 Wrong Command The command returned an error Command FAS MoveSingle xisincPos Return code FMP RUNFAIL 0x85 gt Running command failure Refer to communication function manual FMP_RUNFAIL 0x85 Fail on motion command The motor can not run on next status The motor is already running The motor is under stop command Servo OFF status Try to Z pulse Origin without external encoder only for Ezi STEP Other wrong motion command The command returned an error Command FAS_ServyoAlarmReset Return code FMP_RESETFAIL 0x86 Running command failure Refer to communication function manual FMP_RESETFALL Fail on reset command The motor can not reset on next status Servo ON status Already Reset status by external input signal 35 FMP_SERVOONFAIL1 The command returned an error Command FAS_SeryoEnable Return code FMP_SERYOONFAILI 0x87 An alarm has occurred Wrong Servo ON command during Alarm happens Wrong Command E FMP_SERVOONFAIL2 A The command returned an error Command FAS_SeryoEnable Return code FMP_SERVOONFAIL2 088 The Motor is under Emergency Stop Wrong Servo ON command d
40. M_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example See Also FAS_ TriggerOutput_RunA 114 FAS_MovePush To request push motion maintain specified motor torque command Syntax int FAS_MovePush BYTE nPortNo BYTE SlaveNo DWORD dwStar tSpd DWORD dwMoveSpd long Position WORD wAccel WORD wDecel WORD wPushRate DWORD dwPushSpd long lEndPosition WORD wPushMode Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive DWORD awStartSod start speed of position command DWORD awMoveSod move speed of position command long Position absolute target position of position command WORD wAcce Accel time of position command WORD wDece Deceleration time of position command WORD wPushRate Torque ratio of Push motion DWORD awPushSod Moce speed of Push motion long IEndPosit ion absolute target position of push motion WORD wPushMode Select the push mode Stop or Non stop Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example See Also 115 FAS_GetPushStatus 116 FAS_GetPushStatus To request thecurrent push motion status Syntax int FAS_MovePush BYTE nPortNo BYTE iS
41. OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 82 FAS_MoveSing eAxisAbsPos To move the motor to the absolute coordinate Syntax int FAS_MoveSingleAxisAbsPos BYTE nPortNo BYTE iSlaveNo long lAbsPos DWORD IVelocity Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive AbsPos Absolute coordinate of position to move Velocity Velocity when the motor moves Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example include FAS_ EziMOTIONPlusR h void funcMove BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 DWORD dwAxisStatus dw nput EZ ISERVO_AXISSTATUS stAxisStatus long lAbsPos IIncPos IVelocity int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed The port is not connected or the baudrate may be wrong return Check error and Servo ON status nRtn FAS_GetAxisStatus nPortNo iS
42. ORD IFeedrate WORD wAccelTime Parameters nPor tNo Port number of relevant drive nNoOfSlaves Slave numbers for Linear motioning SlaveNo Array of Slave numbers AbsPos Array of position value for each slave in case of incremental Distance Feeadrate Speed value for motioning WAcce Time Acceleration amp deceleration time value Return Value FMM_OK Command has been successfully performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks When this function is used the Start speed value must be designated to 1 97 FAS_MoveSing eAx i sAbsPosEx To move the motor to the absolute coordinate Syntax int FAS_MoveSing eAxisAbsPos Ex BYTE nPortNo BYTE iSlaveNo long lAbsPos DWORD IVelocity MOTION_OPTION_EX IpExOption Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive AbsPos Absolute coordinate of position to move Velocity Velocity when the motor moves pExOpt ion Custom option Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALIO_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Refer to MOTION_OPTION_EX
43. S_GetCOmmandPosition library See Also 72 FAS_ClearPosition To set the command position value and actual value to 0 Syntax int FAS_SetCommandPos BYTE nPor tNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks The user sets the position command pulse output counter value This function is generally used when the user sets the current position to initial values Example include FAS_ EziMOTIONPlusR h void funcClearPosi t ion BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed Tne port is not connected or the baudrate may be wrong return Initialize Command Position and Actual Position values to 0 nRtn FAS ClearPosition nPortNo iSlaveNo _ASSERT nRtn FMM_OK Disconnect FAS_Close nPor tNo See Also FAS_SetActualPos 173 2 8 Drive Status Control Function Function Name Descr iption To read control 1 0 status running status Flag value FAS_Get OAxisStatus The current input status value the output
44. Status FFLAG_MOTIONING Disconnect FAS_Close nPor tNo 84 FAS_MoveSingleAxis ncPos To move the motor to the incremental coordinate value Syntax int FAS_MoveSingleAxis ncPos BYTE nPortNo BYTE iSlaveNo long IncPos DWORD Velocity Parameters nPor tNo Port number of relevant drive SlaveNo Slave number of relevant drive ncPos Incremental coordinate of position to move Velocity Velocity when the motor moves Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 85 FAS_MoveToL imi t To give the motor a command to search the limit sensor Syntax int FAS_MoveToL imi t BYTE nPortNo BYTE iSlaveNo DWORD Velocity int iLimitDir Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Velocity Velocioty when the motor moves iLimitDir Limit direction which the motor moves 0 Limit 1 Limit Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port
45. To request the current running progress status and ts PT number Frame type 0x51 0x53 0x54 and 0x55 are packed Sending 0 byte Response 21 bytes 0x42 66 1 byte 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes A Command Actual Position Running Current Communication T nae E position Position Difference speed running status value value value value PT number FAS_ To request all data including the current running status GetAl Status Frame type 0x41 and 0x42 are packed Sending 0 byte Response 33 bytes 0x43 1 byte 4 bytes 4 bytes 4 bytes 67 Communication Input status Output status Status flag status value value value 4 bytes 4 bytes 4 bytes 4 bytes 4 bytes Actual Position Running Current Command aap E ined position Difference speed running position value value value value PT number FAS_ Ezi SERVO ALL is the closed loop control drive and so the command SetCommandPos position value is continuously controlled while the motor is in running The user sets it to the command position value before it starts to operate and then can check how the command position value is changed 0x50 80 Sending 4 bytes 4 bytes Command position setting count value Response 1 byte 1 byte Communication status FAS_ To request the command position value pulse being tracked GetCommandPos 0x51 Sending O byte 81
46. _INVALIO_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Refer to VELOCITY_OPTION_EX struct Example include FAS_ EziMOTIONPlusR h void funcMoveVel oci tyEx BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 long IVelocity VELOCITY_OPTION_EX opt 0 int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed The port number may be wrong or incorrect Baudrate return Moving motor with different acc dec time FAS_MoveSingleAxisIncPos Ex IVelocity 30000 opt flag0ption BIT_USE_CUSTOMACCDEC 1 opt wCustomAccDecTime 300 101 nRtn FAS MoveVelocityEx nPortNo iSlaveNo IVelocity DIR_INC 8opt _ASSERT nRtn FMM_OK Sleep 5000 FAS_MoveStop nPortNo iSlaveNo See Also 102 2 10 Position Table Control Function Funct ion Name Description FAS PosTab eRead tem o read items of RAM area in the specific all items of position table FAS_PosTableWr iteltem To save specific all items of position table items to RAM area To save all of position table values to ROM area CASPIO Fen Lewy Total 256 PT values are saved To read position table values in ROM area PAS Hos tableneaanon Total 64 PT values are read FAS Postablanun ten The motor starts to run from the designated position table n sequence FAS_PosTableReadOnel tem To read items of RAM area i
47. a es le eee cee cee ta Rda aches 107 FASE POS TAD CRCACROM sa tr oa titi to talud ds a caber Dos dd Ra ed A Too o el La 108 FASSPOST AD CRUM Mr Ai een dsc ee as 109 FAS POSTAD ERC AGONS I LOMat e ad thse ceo ci Resse 110 FASZPOST aber tEOMG TEM nreno a A id 111 ARS A oeone eee oraora eaen a eea rns orne EREC aE RS Eroro S EE EEES 112 FASTTIgge DU tpuE AUNA ooo ie E ESE 113 3 FAS LRLGGSFOUTDUE Sta CUS A EN ee ial 114 AS MOVE RUS ect rete te cote as eet Neh e e o to ne 115 PAS GETPRUSRS TALUS A at RE 117 Protocol for PLC Program s ssessssssesisssssscsssssscsssesisossossesocsssssoestossssssssrosces svessrsssssses 118 1 Communication Protocols 1 1 Communication Functions Ezi SERVO ALL can control up to 16 axes by multidrop link at RS 485 two wire Pay attention that when Windows goes into standby or power save mode serial communication is basically disconnected When the system is recovered from standby mode it should be connected again with serial communication This is also applicable to the library provided 1 1 1 Communication Specifications Speci fication RS 485 Asynchronous Communication Type Half duplex 19200 38400 57600 115200 Baud Rate bps 230400 460800 921600 Data Type 8bit Binary Parity No Stop Bit bit CRC Check Yes Max Cabling Length Converter lt Drive 30 m Min Cable length between drive More than 60 cm Number of Connecte
48. alue to 0 64 FAS_SetCommandPos To set the command position value to the motor Syntax int FAS_SetCommandPos BYTE nPor tNo BYTE iSlaveNo long CmdPos Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive GmaPos Commnad position value to be set Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks The user sets the position command pulse output counter value This function is generally used when the user sets the current position to coordinates that he wants Example include FAS_ EziMOTIONPlusR h void funcClearPosi t ion BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed Tne port is not connected or the baudrate may be wrong return nitialize Command Position and Actual Position values to 0 nRtn FAS_SetCommandPos nPortNo iSlaveNo 0 _ASSERT nRtn FMM_OK nRtn FAS_SetActualPos nPortNo iSlaveNo 0 _ASSERT nRtn FMM_OK Disconnect FAS_Close nPor tNo See Also 65 FAS_SetActualPos 66 FAS_SetActualPos To set the actual position value to the mo
49. anch 23 Set next command to 23 104 nodeltem wContinuous 1 Next command should be connected without deceleration See Also nRtn FAS_PosTableWriteltem nPortNo iSlaveNo wltemNo amp nodel tem _ASSERT nRtn FMM_OK Call the value in the ROM regardless of edited position table data nRtn FAS_PosTableReadROM nPor tNo iSlaveNo _ASSERT nRtn FMM_OK Save edited position table data in the ROM nRtn FAS_PosTableWr iteROM nPortNo iSlaveNo _ASSERT nRtn FMM_OK Disconnect FAS_Close nPor tNo FAS_PosTableWr i tel tem 105 FAS_PosTableWr i tel tem To edit specific items in the position table Syntax int FAS_Pos ableWr ite tem BYTE nPortNo BYTE iSlaveNo WORD wltemNo LPITEM_NODE Ip tem Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive wi temNo Item number to be edited p tem Item structure pointer to be edited Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMC_POSTABLE_ERROR An error occurs while position table is being written FMM_INVALID_PARAMETER_NUM wltemNo is out of range Remarks Position Table data is saved to RAM ROM area This function acts to save data to RAM area When power i
50. been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Parameter values set to FAS_SetlO0AssignMap library as well as current parameter values are saved to the ROM Example include FAS_ EziMOTIONPlusR h void funcModi fyPar ameter BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 long ParamVal int nRtn Try to connect if FAS_Connect nPor tNo 115200 FALSE Connection failed The port is not connected or the baudrate may be wrong return Check Axis Start Speed Parameter nRtn FAS_Get Parameter nPortNo iSlaveNo SERVO_AXISSTARTSPEED 8lParamVal if nRtn FMM_OK Command has not been performed properly Refer to ReturnCodes_Define h _ASSERT FALSE else Parameter value saved in Ezi SERVO Plus R printf Parameter before Start Speed d Wn lParamVal 45 Change Axis Start Speed parameter as 200 then read t again nRtn FAS_SetParameter nPortNo iSlaveNo SERVO_AXISSTARTSPEED 200 _ASSERT nRtn FMM_OK You have to check if the command didn t execute correctly nRtn FAS_GetParameter nPortNo iSlaveNo SERVO_AXISSTARTSPEED 8lParamVal _ASSERT nRtn FMM_OK printf Parameter after Start Speed d Wn IParamVal
51. ced together Refer to 3 Protocol for PLC Program 30 2 Library for PC Program Ver6 2 1 files are included in Library Configuration To use this library C header file h and library file libor dl1 are required WWEASTECHWWEZ MOTION PlusRWWincludeWW The following contents should be included in a source file for development WWEASTECHWW EziMOTION PlusR WWincludeWWFAS_EziMotionPlusR h WWEASTECHWW EziMOTION PlusR WWincludeWWCOMM_Define h WWEASTECHWW EziMOTION PlusR WWincludeWWMOTION_DEFINE h WWEASTECHWW EziMOTION PlusR WWincludeWWReturnCodes_Define h include include include include Also library files are as follows WWFASTECHWW EziMOTION PlusR WWincludeWWEziMotionPlusR lib WWFASTECHWW EziMOTION PlusR WWincludeWWEziMotionPlusR dl 1 A sample program source of using library is included in a WHFASTECHWWEZiMOTION PlusR WWExamplesWw folder These 1 The following table describes values returned when each library DLL function is used The user can check the values returned at the library DLL function In case of low level programming this service not provided tem Definition Returned Descr iption Value The function has normally performed the Normal FMM_OK 0 Semanal FMM_NOT_OPEN 1 Wrong port number is inputted Input FMM_INVAL1D_PORT_NUM 2 The port that is
52. cnnnannacnnonnonononanononaonnocoaracnnos 74 ACA EA O O 75 FASEGETMOT FONS TATUS n eria A AE AE E T AR 76 FASOGETA Status as a asia 77 AC ES EEN 78 2 9 RUNNING Control Function sessanta a o d Edisa 79 FAS MOVES TOD rer e e ea EA E E E E A 80 FAS Emerg n yS tO ena eE E E E ENERE E RA EA N E ENA ETE 81 FAS Move0r Ig IMSS S suecia mai ira iaa ES E a 82 FAS Moves ng le AXIS ADS POS civic ni 83 FAS MovesIngleAXis T NCPOS iii pia iia ita is 85 FAS Move TOLIMIT ste np 86 FAS MoveVel oc Vitis sia a Maui aaa 87 FASCPOSITLONADSIVE ninia iaa 88 FAS Pos OMLMCOVER FV OG vita nata abia ibs Ries its 90 FAS V6 LOG 1TYOVERD dianas 91 PASZAL MOVES LOD site tee A a ia 92 FAS AL EMERGENCY St OP intento inicie 93 FASZA I IMOVEOr LOI NSINGLCAKI Sw a5 cere anie Ad cece ie Bh es bs ie Rai 94 FAS_Al IMoveSingleAxiS DSPOS siisi ireira eenei nielen aeeai e edenes e aeeie 95 FAS AL Moves nol CAx1S INCPOS eni ninnan e Ai e dais 96 FAS_MoveLinearAbsPos FAS_MoveLi near IMCPOS cccessecesssesessesesesssesesseeesseeesecaeseneesees 97 FAS MoOVeSI NG LAXSADSPOSEX 1 acti aid acetate pooR dot 98 FAS MoVes Ino OAAS MEPOSE Xiao iris 100 FAS MoveVe loc Exc e A annie isha seins 101 Position Table Control Funct io scsssssscesccessesssostcecsessstessesecesseosesecteosssescnsuccsesesseasesecees 103 FASTROSTADleRead lem cri a ti et ell aos 104 FAS ROS Tae e id canines ath ot nek teo let de 106 FASTROSTaDleWrTterOM cs da cock oust ic
53. comes 5V Be careful that dwlOSetMask bit and dwlOCLRMask bit are not duplicated Example Refer to FAS_SetlOlnput See Also FAS_Get100utput 58 FAS_Get O0utput To read 1 0 output values For more information refer to 1 2 Structure of Frame Type Syntax int FAS_Get 00utput BYTE nPortNo BYTE iSlaveNo DWORD dwlOOutput Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive aw O nout Parameter pointer which the output value will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_SetlOlnput library See Also FAS_Set OOutput 59 FAS_Get 0AssignMap To read 0 Assign Map For more information refer to 1 2 Structure of Frame Type Syntax int FAS_Get OAssignMap BYTE nPortNo BYTE iSlaveNo BYTE il0PinNo BYTE nlOLogic BYTE bLevel Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive 1OPinNo 1 0 pin number to be read nlOLogic Parameter pointer which the logic value assigned to a relevant pin will be saved bLevel Parameter pointer which the active level of relevant logic will be saved Return Value FMM_OK
54. d Axes 16 axes No 0 F 1 1 2 RS 485 Communication Protocol Ver6 Thers are 2 kinds of program version for SERVO ALL This manual support for Version 6 level Type Firmware version compatability User Program GUl version 1 Level 6 VO6 0x 0xx xx lt gt Level 6 6 xx X XXX 2 Level 8 VO8 xx 0xx xx lt gt Level 8 8 xx x xxx After connect the User Program GUl About Ezi MOTION Plus R GUI Version number can be check in About P us R GUI ana menu in He p menu F Plus A GUI Version 5 16 0 585 rev 191 Supported firmware version 1 Ezi SERVO Plus A ST V0 2 Ezi STEP Plus A ST VOB Copyright C 2008 FASTECH Co Ltd 1 Overview of communication FRAME Sending Frame PC Communicat ion Port n SSS Response Frame 2 Basic structure of Frame Ez SERVO Plus R Header Frame Data Tail OxAA OxCC 4 252 bytes OxAA OXEE OxAA Delimited byte 2 OxAA OxCC Displays that the Frame locates in header OxAA OxEE Displays that the Frame locates in tail If any of the Frame data is OxAA OxAA should be added right after it byte stuffing If any data following OxAA is not OxAA OxCC or OxEE it displays that an error has occurred Detailed Frame Data is configured as follows Slave ID Frame type Data CRC 2 bytes 1 byte 1 byte 0 248 bytes Low byte High byte
55. e axis status value of the relevant motor Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 78 2 9 Running Control Function Function Name Description FAS oveStop The motor in running is decelerate and stopped FAS_Emer gencyStop The motor in running stops directly without deceleration FAS_MoveOr iginSingleAxis The motor starts the origin return FAS_MoveSing eAxisAbsPos The motor moves as much as the given absolute position value FAS_MoveSing leAxis ncPos The motor moves as much as the given incremental position value FAS MoveToL imit The motor moves up to the posi tion that the limit sensor is detected FAS MoveVeloci ty The motor moves to the given velocity and direction This function is available to Jog motion FAS_Posi t ionAbsOverr ide While the motor is running the target absolute position value pulse is changed FAS_Position ncOverr ide While the motor is running the target value pulse is changed incremental position PAG Nelboliyoveiride While the motor is running the running velocity value pulse is changed FAS_Al IMoveStop All m
56. eVe loci ty To request the motor to start jog motion at the current setting parameter condition Sending 5 bytes 4 bytes 1 byte Running speed pps Running direction 0 Jog 1 Response 1 byte 1 byte Communication status Jog 0x38 56 FAS Posi t ionAbsOverr ide To request the motor to change the target absolute position value pulse while it is in running Sending 4 bytes 4 bytes Changed command position value pulse Response 1 byte 1 byte Communication status 0x39 57 FAS Posi tionlncOverr ide To request the motor to change the target incremental position value pulse while it is in running Sending 4 bytes 4 bytes Changed command position value pulse Response 1 byte 1 byte Communication status Ox3A 58 FAS_ VelocityOverr ide To request the motor to change the running speed value pps while it is in running Sending 4 bytes 4 bytes Changed running speed pps Response 1 byte 1 byte Communication status 16 FAS_ To request stop for all motor that connected in same port Al MoveStop 0x38 Sending 0 byte 59 Slave number must be 99 Response no response FAS_ To request emergency stop for all motor that
57. eceived a Error FMP_PACKETCRCERROR 170 A is not correct in packet that Drive s 2 2 Communication Status Window Above communication status is divide by 3 groups 1 Communication Error f Communication Error A The command Is failed Command FAS_MoveSingleAxisAbsPas Return code FMM_NOT_OPEN 0x01 Wrong port number is inputted FMM_NOT_OPEN COM Port is not connected f Communication Error EJ FMM_INVALID_PORT_NUM A The command Is failed Command FAS MoveSingle4xisAbsPos Return code FMM_INVALID_PORT_NUM 0x02 COM Port number is not exist Checking the Device Manager window in Window OS 232 gt FMM_INVALID_SLAVE_NUM The command ls failed Command FAS_MoveSingleAxisAbsPos Return code FMM_INVALID SLAVE_NUM 0x03 Wrong slave number is inputted FMC_DISCONNECTED 5 The command Is failed Command FAS_MoveSingleAxisAbsPos Return code FMC_DISCONNECTED 0x05 The relevant drive ls disconnected COM Port is disconnect during communication Checking the communication cable Or Power of the drive FMC_TIMEOUT_ERROR The command ls failed Command FAS_MoveSingleAxisAbsPas Return code FMC_TIMEOUT_ERROR 0x06 Response delay occurs rey cm There iS no response from the drive FMC_CRCFAILED_ERROR D The command Is failed Command FAS_MoyeSingle4xisAbsPas Return code FM
58. ecel used that saved in controller Time value s Response 1 byte FAS_ Request the motor to move ts position as much as the absolute MoveSingleAxis IncPos value pulse with Custom Accel Decel Time msec Ex Sending 40 bytes 4 bytes 4 bytes 4 bytes 2 bytes incremental Running speed Flag Custom Accel Time position pps option 1 9999 value 2 bytes 24 bytes 0x81 F a Custom Decel Time Reserved 129 1 9999 Flag ooption Ox0001 reserved 0x0002 Custom Accel Time is used 0x0004 Custom Decel Time is used If the Flag bit is OFF status 0 Accel Decel Time value is used that saved in controller Response 1 byte FAS_ Request the motor to start jog motion at the current setting parameter MoveVe loci tyEx condition with custom Accel Decel time value msec Sending 37 bytes 4 bytes 1 bytes 4 bytes Running speed Running direction 0 Jog Flag option pps 1 Jog 2 2 0x82 bytes 6 bytes 130 Custom Accel Decel Time Reserved 1 9999 Flag ooption Ox0001 reserved 0x0002 Custom Accel Decel Time is used If the Flag bit is OFF status 0 Accel Decel used that saved in controller Time value s Response 1 byte 18 FAS MoveVe loci tyEx Request the motor to start jog motion at the current setting parameter condition with custom Accel Decel time value msec Sending 37 bytes
59. een connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remar ks Refer to FAS_PositionAbsOverride library Example Refer to FAS_MoveSingleAxisAbsPos library See Also FAS_Posit ionAbsOver r ide 90 FAS_VelocityOverr ide To change the velocity set while the motor moves Syntax int FAS_Veloci tyOver r ide BYTE nPortNo BYTE iSlaveNo DWORD Velocity Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Velocity Velocity to be changed in pps Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Speed ecco Time 1 In case of change speed lt speed befor e change the motor reaches the change speed through acceleration deceleration using a new velocity pattern 5 In case of change speed gt speed before change the motor reaches the change speed through acceleration deceleration without any new velo city pattern 4 The motor reaches the speed before change without a change of the velocity pattern and then it reaches the change speed by a new velocity pattern 2 3 After acceleration deceleration is fin
60. es 35 Communication status Output status value Relevant bit by each output signal refer to 1 2 3 Bit setup of Output Piny FAS_ To assign control 1 0 signals to the pin of CN1 port and set the signal Set OAssignMap level By running FAS_SaveAl Parameters you can save the setting value to the ROM Sending 6 bytes 1 byte 4 bytes 1 byte 1 0 number 1 0 pin masking data Setting level one 1 O number O 11 corresponds to Limit Limit Org IN1 36 IN9 respectively and 12 22 corresponds to COMP OUT1 OUTS respectively 1 0 pin masking data Refer to 1 2 4 Bit setup of Input Pin Level Setting 0 Active Low 1 Active High Response 1 byte 1 byte Communication status FAS_ Pin setting status of CN1 port is read from RAM area Get OAss i gnMap Sending 1 byte 1 byte 1 0 number ee 1 Onumber 0 11 corresponds to Limitt Limit Org IN1 i IN9 respectively and 12 22 corresponds to COMP OUT1 7 OUT9 respectively Response 6 bytes 1 byte 4 bytes 1 byte Communication status 10 pin masking status Level status For more information refer to 0x24 Frame type 13 FAS OAssi gnMapReadROM Pin setting status of CN1 port is loaded to RAM from ROM area Sending 0 byte
61. formation string of the relevant drive Syntax int FAS_GetSlavelnfo BYTE nPortNo BYTE iSlaveNo BYTE pType LPSTR IpBuff int nBuffSize Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive pType Relevant drive type number pBut f Buffer pointer to get version information string nbuf fSize pBuff memory allocation size Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_Connect library See Also 4 FAS_GetMotor Info To get the motor information string of the relevant drive Syntax int FAS_GetMotor Info BYTE nPortNo BYTE iSlaveNo BYTE pType LPSTR IpBuff int nBuffSize Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive pType Relevant motor type number pBut f Buffer pointer to get version information string nbuf fSize pBuff memory allocation size Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_Connect library See Also 4
62. heck 1 0 input nRtn FAS_Get OInput nPortNo iSlaveNo amp dwlnput _ASSERT nRtn FMM_OK if dwinput amp SERVO_IN_BITMASK_LIMITP Limit input is ON 55 if dwInput amp SERVO_ IN_BITMASK_USERINO User Input O is ON Turning ON Clear Position and User Input 1 in puts and turning off Jog input nRtn FAS _SetlOlnput nPortNo iSlaveNo SERVO_IN_BITMASK_CLEARPOSITION SERVO_IN_BITMASK_USERIN1 SERVO_ IN_B TMASK_PJOG _ASSERT nRtn FMM_OK Check 1 0 output nRtn FAS_Get OOutput nPortNo iSlaveNo amp dw Output _ASSERT nRtn FMM_OK if dwOutput amp SERVO_OUT_B TMASK_USEROUTO User Output O is ON Turn off User Output 1 and 2 signals nRtn FAS_SetlO0utput nPortNo iSlaveNo 0 SERVO_OUT_BITMASK_USEROUT1 SERVO_OUT_B TMASK_USEROUT2 _ASSERT nRtn FMM_OK Disconnect FAS_Close nPor tNo See Also FAS_Get10 nput a 56 FAS_Get 0 nput To read 1 0 input values For more information refer to 1 2 Structure of Frame Type Syntax int FAS_Get10 mput BYTE nPortNo BYTE iSlaveNo DWORD dwlOlnput Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive aw O0 nout Parameter pointer which input values will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort
63. ignal level of the control output port is set Set 00utput Sending 8 bytes 4 bytes 4 bytes 1 0 set mask value 1 0 clear mask value hen specific bit of the set mask is 1 the relevant output port signal 0x20 is set to LONI a 32 hen specific bit of the clear mask is 1 the relevant output port signal is set to OFF For more information refer to 1 2 3 Bit setup of Output Pin Response 1 byte 1 byte Communication status FAS_ Input signal level of the control input port is set Set 10 nput Sending 8 bytes 4 bytes 4 bytes 1 0 set mask value 1 0 clear mask value hen specific bit of the set mask is 1 the relevant input port signal 0x21 is set to ON 33 hen specific bit of the clear mask is 1 the relevant input port signal is set to OFF For more information refer to 1 2 4 Bit setup of Input Pin Response 1 byte 1 byte Communication status 12 FAS_ Current input signal status of the control input port is read Get 10 nput Sending O byte 0x22 Response 5 byte 34 1 byte 4 bytes Communication status Input status value Relevant bit by each input signal refer to 1 2 4 Bit setup of Input Pin FAS_ Current output signal status of the control output port is read Get OOQutput Sending O byte Response 5 byte 0x23 1 byte 4 byt
64. in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks There are 10 input pins in EziSERVO ALL The user can select and use 7 input pins of them This function can read the input port status by 32bit All of them are i nsulated by a photocoupler Refer to the figure 5V 24V R2 Input A GND 24V When Port A is supplied 24V from an external input port the input is recognized to 5V High Example Refer to FAS_Set lOlnput library See Also FAS_Set 0Input 5 FAS_Set 00utput To read 0 output values For more information refer to 1 2 Structure of Frame Type Syntax int FAS_Set 00utput BYTE nPortNo BYTE iSlaveNo DWORD dw 0SetMask DWORD dw OCLRMask Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive aw 0SetMask Output bitmask value to be set aw OCLAMEask Output bitmask value be cleared Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks There are 2 input pins in EziSERVO ALL The user can select and use 1 output pins of them 24V 5V UN R2 NA Ri S Output yo A vt GND 24V When output data is 1 Port A becomes OV When it is 0 Port A be
65. ished the motor reaches the change speed corresponding to the velocity pattern of the change speed Example Refer to FAS_MoveSingleAxisAbsPos library See Also 91 FAS_AI MoveStop To stop the motor that connected in same port Syntax int FAS_AI MoveStop BYTE nPor tNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive must be 99 Return Value No response Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 92 FAS_AI EmergencyStop To stop the motor that connected in same port without deceleration Syntax int FAS_AI EmergencyStop BYTE nPor tNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive must be 99 Return Value No response Remarks This function does not include deceleration phase So the user must be careful so that the machine cannot be impacted Example Refer to FAS_MoveSingleAxisAbsPos library See Also 93 FAS_AI MoveOr iginSingleAxis To search the origin of system for all motor that is connected in same port For more information refer to User Manual_Text 9 3 Origin Return Syntax int FAS_AI MoveOr iginSingleAxis BYTE nPor tNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive must be 99
66. l with header and tail 1 Insert Comm Port number and click Connect button 2 Header Click Header and you can see OXAA OxCC on Send Buffer window 3 Slave ID Insert your slave number above ex ample is 0 and click SlaveNo 4 Frame type Insert Frame type You can find next table information in 1 2 1 Frame Type and Data Configuration on UserManual EziSERVO ALL _Communication Function Frame type DLL Library name Data 42 0x2A FAS_ServoEnable Setting the Servo ON OFF status Sending 1 byte 1 byte 0 0FF 1 0N Insert 42 in areaandclick 1byte because the size of Frame Type is 1 byte 5 Data To make Servo ON status the data is 1 Insert 1 in area and click 1 byte 6 CRC Click CRC and the calculated result value 2 bytes is displayed on Send Buffer window 7 Tail click Tail and you can see OXAA OxEE on Send Buffer window 8 Finally click Send button to send command characters to Ezi SERVO ALL You can check the motor torque and LED flash for Servo ON status 9 After sending command you can check the answering informations from Ezi SERVO ALL on Buffer Received window 118 2 Motion command de Protocol Test Connection Buffer Received Comm Port 77 Baudrate 115200 Send Buffer Heade
67. laveNo BYTE nPushStatus Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive BYTE nPushStatus Status value of push motion refer to 1 2 1 FrameType and Data Configuration Return Value FMM_OK Command has been normally per formed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected port s FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example See Also FAS_Move Push 117 3 Protocol for PLC Program i Next window is open when you click prsrcarrespi con in User Program GUl installed folder i exe i Next test procedure will help you to understand the protocol programming 1 Servo ON OFF command de Protocol Test K Connection Buffer Received Comm Port 77 Header Siv Cmd Stat REFRESH Disconnect OxAA OxCCT OxO0 0x24 0x00 OX6E 0xAD 0xAA OxEE Baudrate 115200 Send Buffer 0xAA 0xCC 0x00 0x24 0x01 0x60 0xAF 0x4 0xEE Values 1 Header 0 2 SlaveNo BYTE Static CHAR Static Eee WORD Static SHORT Static 3 Data i DWORD Static LONG Static Il i 1 byte 2 bytes A bytes 4 CRC 5 Tail CLEAR SEND gt gt The header and tail information is needed for protocol programming Additionally Frame Data Slave ID Frame type Data and CRC is also needed in every protoco
68. laveNo amp dwAxisStatus _ASSERT nRtn FMM_OK stAxisStatus dwValue dwAxisStatus if dwAxisStatus 8 0x00000001 if stAxisStatus FFLAG_ERRORALL 83 See Also FAS_ServoAlarmReset nPortNo SlaveNo if dwAxisStatus 8 0x00100000 0x00 if stAxisStatus FFLAG_SERVOON 0 FAS_ServoEnable nPortNo iSlaveNo TRUE Check input status nRtn FAS_GetlOInput nPor tNo iSlaveNo amp dwlnput _ASSERT nRtn FMM_OK if dwInput amp SERVO_IN_LOGIC_STOP SERVO_IN_LOGIC_PAUSE SERVO_IN_LOGIC_ESTOP FAS_Set Olnput nPortNo iSlaveNo O SERVO_IN_LOGIC_STOP SERVO_IN_LOGIC_PAUSE SERVO_IN_LOGI C_ESTOP Increase the motor to 15000 pulse IncPos 15000 Velocity 30000 nRtn FAS_MoveSingleAxisIncPos nPortNo iSlaveNo lIncPos IVelocity ASSERT nRtn FMM_OK Stand by until motion command is completely finished do Sleep 1 nRtn FAS_GetAxisStatus nPortNo iSlaveNo amp dwAxisStatus _ASSERT nRtn FMM_OK stAxisStatus dwValue dwAxisStatus while stAxisStatus FFLAG_MOTIONING Move the motor to 0 lAbsPos 0 Velocity 20000 nRtn FAS _MoveSingleAxisAbsPos nP ortNo iSlaveNo lAbsPos IVelocity _ASSERT nRtn FMM_OK Stand by until motion command is completely finished do Sleep 1 nRtn FAS_GetAxisStatus nPortNo iSlaveNo 8dwAxisStatus _ASSERT nRtn FMM_OK stAxisStatus dwvalue dwAxisStatus while stAxis
69. memory areas That is when power is off the ROM saves parameters permanently When power is on parameters in the ROM are copied to the DSP RAM and used When the user changes parameters it changes not parameters in the ROM but parameter in the RAM This function is to set the parameter number designated from the RAM to the relevant value Example Refer to FAS_SaveAl Parameter library See Also FAS_GetPar ameter 47 FAS_GetParamater To call specific parameter values of the drive Syntax int FAS_GetParameter BYTE nPortNo BYTE iSlaveNo BYTE iParamNo long ParamValue Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive ParamNo Parameter number to be imported ParamValue Parameter values Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMM_INVALID_PARAMETER_NUM There is no parameter of designated iParamNo Remarks The function operates only for one parameter designated Parameters in the drive are saved to 2 memory areas That is when power is off the ROM saves parameters permanently When power is on parameters in the ROM are copied to the DSP RAM and used When the user changes parameters it changes not parameters in the ROM but parameter i
70. n the RAM This function reads the parameter number designated to the RAM Example Refer to FAS_SaveAl Parameter library See Also FAS_SetPar ameter 48 FAS_GetROMPar ameter To call parameters saved in the ROM Syntax int FAS_GetROMPar ameter BYTE nPortNo BYTE iSlaveNo BYTE iParamNo long RomParam Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive ParamNo Parameter number to be imported RomParam Parameter values saved in the ROM Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMM_INVALID_PARAMETER_NUM There is no parameter of designated ParamNo Remarks To call parameter values saved in the ROM Even though this function runs the value in the RAM is not changed For this run FAS_SetParameter Example Refer to FAS_SaveAl Parameter library See Also FAS_SaveAl Parameters 49 2 5 Servo Control Function Function Name Description FAS_ServoEnable The Servo of the drive designated turns ON OFF FAS_ServoAlarmReset The drive which an alarm occurs is released Troubleshoot the alarm cause and use this function FAS_AlarmType Read the Alarm type of the drive 50 FAS_Ser
71. n the specific one item of position table FAS PosTableWriteOneltem To save specific one item of position table items to RAM area 103 FAS_PosTableRead tem To read a specific tem in the position table Syntax int FAS_PosTab eRead tem BYTE nPortNo BYTE SlaveNo WORD wltemNo LPITEM_NODE Ipltem Parameters nPor tNo Port number of relevant drive Slaveno Slave number of relevant drive wi temNo tem number to be read lp tem Item structure pointer which item value is saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMM_INVALID_PARAMETER_NUM wltemNo is out of range Remarks Example include FAS_EziMOTIONPlusR h void funcPosTable BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 WORD wl temNo TEM_NODE nodel tem int nRtn Try to connect if FAS_Connect nPor tNo 115200 FALSE Connection failed The port is not connected or the baudrate may be wrong return Read No 20 Position table value and edit the position value wltemNo 20 nRtn FAS_PosTableReadltem nPortNo iSlaveNo wltemNo amp nodel tem _ASSERT nRtn FMM_OK nodeltem Position 260000 Change the position value to 260000 nodeltem wBr
72. not connected E id FMM_INVAL10_SLAVE_NUM 3 Wrong slave number is inputted Operation An error occurs while the motor accesses Error FMM_POSTABLE_ERROR 9 to the position table FMC_D I SCONNECTED 5 The relevant drive is disconnected Connection FMC_T MEOUT_ERROR 6 Response delay 100 msec occurs Error FMG_CRCFA LED_ERROR 7 Checksum error occurs FMC_RECVPACKET_ERROR 8 Protocol level error occurs in packet that comes from Drive 2315 2 The following table shows return values included commonly in all libraries The user can tatus running status judged by the drive When the user develops programs by using protocols without libraries DLL they are available as well check the result communication s tem Descr iption Reluned Descr iption Value Normal FMP_OK 0 Communication has been normally per formed Input FMP_FRAMETYPEERROR 128 The drive cannot recognize the command Error FMP_DATAERROR 129 Inout data is out of the range The motor is already running or not prepared for FMP_ RUNFAIL 133 running Other wrong motion command The user cannot execute AlarmReset command f FMP_RESETFAIL 134 while the servo is ON Operation FMP_SERVOONFAIL1 135 An alarm has occurred Error FMP_SERVOONFAIL2 136 The motor is under Emergency Stop FMP_SERVOONFAIL3 137 ie signal is already assigned to input Protocol level error occurs in packet that Connection FMP_PACKETERROR 180 Drive s r
73. or Info i Sending 0 byte Response 1 248 bytes 0x05 1 byte 1 bytes 0 246 bytes 5 Communication Motor type ACII string with NULL byte status 1 255 strlen 1 byes Motor type refer to 1 2 7 Information of Motors FAS_ Current setting parameters amp assign of IO signals are saved in the SaveAl Parameters ROM of the drive Even though the drive is powered off saving these must be possible Values set at FAS SetParameter 8 FAS_SetlOAssignMap are saved 0x10 together 16 Sending O byte Response 1 byte 1 byte Communication status FAS_ Specific parameter values in the ROM are read GetRomPar ameter Sending 1 byte 1 byte Parameter number 0 31 0x11 17 Response 5 bytes 1 byte 4 bytes Communication status Parameter value Refer to 4 2 2 Parameter List 1 FAS_ Specific parameter values are saved to the RAM SetParameter Sending 5 bytes 1 byte 4 bytes Parameter number 0 31 Parameter value 0x12 18 Response 1 byte 1 byte Communication status Refer to 1 2 2 Parameter List FAS_ Specific parameter values in the RAM are read GetParameter Sending 1 byte 1 byte Parameter number 0x13 0 32 19 Response 5 bytes 1 byte 4 bytes Communication status Parameter value Refer to 1 2 2 Parameter List FAS_ Output s
74. or is operating to the acceleration section 0X20000000 FFLAG_MOT ONDECEL The motor is operating to the deceleration section 0X40000000 FFLAG_MOTIONCONST The motor is operating to the normal speed not 0x80000000 acceleration deceleration sections 28 1 26 Position Table Item Refer to motion_define h of include files Name ILS RS ee Number of Bytes gules Unit Low Limit Upper Parameter value Limit Position Position 4 signed 0 pulse 134217728 134217728 Low Speed dwStar tSpd 4 unsigned 4 pps 0 500000 High Speed dwMoveSpd 4 unsigned 8 pps 0 500000 Accel Time wAcce Rate 2 unsigned 12 msec 1 9999 Decel Time wOece Rate 2 unsigned 14 msec 1 9999 Command wCommand 2 unsigned 16 0 9 Wait time wWaitTime 2 unsigned 18 msec 0 600000 Continuous Action wCont inuous 2 unsigned 20 0 1 Jump Table No wBranch 2 unsigned e i e 10000 0255 Jump PT 0 wCond_br anchO 2 unsigned a E 10000 0255 Jump PT 1 wCond_br anch1 2 unsigned ee 10000 0255 Jump PT 2 wCond_br anch2 2 unsigned ER H an 10000 0255 Loop Count wLoopCount 2 unsigned 30 0 100 Loop Jump Table No wBranchAfterLoop 2 unsigned ae 0 as 10000 10255 PT set wPTSet 2 unsigned 34 0 15 Loop Counter Clear wLoopCountCLR 2 unsigned 36 0 255 Check Inposi tion bCheck Inpos 2 unsigned 38 0
75. otors that connected in same port are decelerate and stopped FAS AI Ener aenst Al motors that connected in same port are directly stop without deceleration EASA INGVEOR a insingleaKis All motors that connected in same port are starts the origin return FAS_Al MoveSing leAxisAbsPos All motors that connected in Same por t moves as much as the given absolute position value FAS_Al MoveSingleAxisIncPos All motors that connected in same port moves as much as the given incremental position value FAS_MoveL near Abs Pos More than 2 motors that connected in same por Linear Interpolation moves as much as the given absolute position value More than 2 motors that connected in same port Linear FAS_MoveL near IncPos Interpolation moves as much as the given incremental position value EAS Moves ingl eAxisAbsPosEx The motor moves as much as the given absolute position value with custom accel decel time value vs ima IAKiSlnePOSeX The motor moves as much as the given incremental position value with custom accel decel time value The motor moves to the given velocity and direction FAS_MoveVel oci tyEx This function is available to Jog motion with custom accel decel time value FAS MovePause The motor starts pause in runing or the motor starts again In pause status 79 FAS_MoveStop To stop the motor Syntax int FAS_MoveStop BYTE nPortNo BYTE iSlaveNo Parameters nPo
76. r Sly Cmd Stat Disconnect OxAA 0xCC 0x00 0x35 0x00 OxAA 0xCC 0x00 0x35 0x10 0x27 0x00 0x00 0x88 0x13 0x00 0x00 0x3D 0x97 0x44 0xEE Values 1 Header 0 2 SlaveNo BYTE Static CHAR Static Me Sua WORD Static SHORT Static Static 3 Data DWORD and 1 byte 2bytes 4 bytes 4 CRC 5 Tail CLEAR SEND gt gt 1 Header 2 Slave No 3 Frame type insert 53 in 1 byte size for Incremental Move command 4 Data Position value insert 10000 and click 4byte 5 Data Running speed insert 5000 and click 4 byte 6 CRC 7 Tail 8 Send After sending command you can check the motor rotation and if click Send more the motor will rotate one more time 3 PLC Programming In Protocol test GUI automatically calculate the Byte stuffing and CRC data For protocol programming in PLC you have to add the function of Byte stuffing and CRC calculation For Byte stuffing refer to 1 1 2 RS 485 Communication Protocol and for CRC refer to 1 1 3 CRC Calculation Example on UserManual EziSERVO ALL Communication Function 119 e Please note that the specifications are subject to change without notice due to product improvements Copyright 2008 FASTECH Co Ltd All Rights Reserved Mar 31 2012 Rev 01 01 04 120
77. r tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also 80 FAS_EmergencyStop To stop the motor without deceleration Syntax int FAS_EmergencyStop BYTE nPortNo BYTE SlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks This function does not include deceleration phase So the user must be careful so that the machine cannot be impacted Example Refer to FAS_MoveSingleAxisAbsPos library See Also 81 FAS_Move0r iginSingleAxis To search the origin of system For more information refer to User Manual_Text 9 3 Origin Return Syntax int FAS_Move0r iginSingleAxis BYTE nPortNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_
78. rnar IA higher than Pos Tracking Limit 0x00000040 value during position command run FFLAG_ERRSERVOALARM One or more error of Servo alarm 8 ea occurs 0X00000080 FFLAG_ERROVERCURRENT The motor driving device is under over current 0X00000100 FFLAG_ERROVERSPEED The motor speed exceeded 3000 rpm 0X00000200 FFLAG_ERRSPEED The motor is not tracked normally by pulse input 0X00000400 FFLAG_ERROVERLOAD Load exceeding the max torque of the motor is loaded more 0X00000800 than 5 seconds FFLAG_ERROVERHEAT The internal temperature of the drive exceeds 55 C 0X0000 1000 FFLAG_ERRREVPWR A counter electromotive force of the motor exceeds 70V 0X00002000 FFLAG_ERRMOTORPOWER The motor is not connected to drive correctly 0X00004000 FFLAG_ERRINPOSITION After operation is finished a position error occurs for 0X00008000 more than 3 seconds FFLAG_EMGSTOP The motor is under emergency stop 0X000 10000 FFLAG_SLOWSTOP The motor is under general stop 0X00020000 FFLAG_ORIGINRETURNING The motor is returning to the origin 0X00040000 FFLAG_INPOSI TION Inposition has been finished 0X00080000 FFLAG_SERVOO The motor is under Servo ON 0X00 100000 FFLAG_ALARMRESET AlarmReset has run 0X00200000 FFLAG_PTSTOPED Position Table operation has been finished 0X00400000 FFLAG_ORIGINSENSOR The origin sensor is ON 0X00800000 FFLAG_ZPULSE The motor operates to z pulse type of origin return 0X01000000 operations FFLAG_OR IGINRETOK Origin return operation has been finished
79. rs nPor tNo Port number of relevant drive SlaveNo Slave number of relevant drive awInsStatus Parameter pointer which the 0 input value will be saved awoutStatus Parameter pointer which the 0 output value will be saved QWwAx sStatus Parameter pointer which the axix status value of the relevant motor will be saved CmdPos Parameter pointer which the command position value will be saved ActPos Parameter pointer which the actual position value will be saved PosEr r Parameter pointer which the position error value will be saved ActVe Parameter pointer which the actual velocity value will be saved wPos temNo Parameter pointer which current running item number in the Position Table wil be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also FAS_GetAxisStatus FAS_GetMot ionStatus Fp FAS_GetAxisStatus To read the motor Axis Status value For status Flag refer to 1 2 Structure of Frame Type Syntax int FAS_GetAxisStatus BYTE nPortNo BYTE iSlaveNo DWORD dwAxisStatus Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive QWAxisStatus Parameter pointer which th
80. s off data is deleted Example See Also FAS_PosTableRead tem 106 FAS_PosTableWr i te ROM To save all current position table items to ROM area Syntax int FAS_PosTableWr i teROM BYTE nPortNo BYTE SlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMC_POSTABLE_ERROR An error occurs while position table is being saved Remarks Position table data is saved to RAM ROM area This function acts to save data to ROM area Even though power is off data is preserved Example See Also FAS_PosTab eReadROM 107 FAS_PosTab eReadROM To read position table items being saved in ROM area Syntax int FAS_PosTableReadR0M BYTE nPortNo BYTE iSlaveNo Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port FMC_POSTABLE_ERROR An error occurs while position table is being read Remarks
81. setting status value and the running status Flag value will return To read the current running progress status and its PT number The command position value the actual position value the speed value will return FAS_GetMot ionStatus To read all status including the current 1 0 status at one time This function is to combine FAS_Get OAxisStatus function and FAS_GetMotionStatus function FAS_GetAl IStatus FAS_GetAxisStatus To read the running status Flag value of the relevant drive 74 FAS_Get OAxisStatus To read 1 0 Input and Output values of the relevant drive and the motor Axis Status Syntax int FAS_Get OAxisStatus BYTE nPortNo BYTE iSlaveNo DWORD dwinStatus DWORD dwOutStatus DWORD dwAxisStatus Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive aw nStatus Parameter pointer which the 0 input value will be saved awoutStatus Parameter pointer which the 0 output value will be saved QWAxisStatus Parameter pointer which the axis status value of the relevant motor will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks Example Refer to FAS_MoveSingleAxisAbsPos library See Also
82. sition 10 SystemHalt 11 ROMdevice 12 Over InputVoltage 14 Position Over flow 15 FAS_ To request to stop running the motor MoveStop Sending 0 byte Response 1 byte 0x31 A 49 e Communication status FAS_ To request the running motor to stop emergent ly Emer gencyStop Sending 0 byte 0x32 Response 1 byte 50 1 byte Communication status FAS_ To request the motor to return to the origin at the current setting MoveOr iginSingleAxis parameter condition 0x33 Recs 51 esponse yte 1 byte Communication status FAS_ To request the motor to move ts position as much as the absolute MoveSingleAxisAbsPos value pu Ise Sending 8 bytes 4 bytes 4 bytes 0x34 Absolute position value Running speed pps 52 Response 1 byte 1 byte Communication status 15 0x35 53 FAS_ MoveSingleAxis ncPos To request the motor to move ts position as much as the incremental value pulse Sending 8 bytes 4 bytes Incremental value Response 1 byte Communication status 4 bytes osition p Running speed pps 1 byte 0x36 54 FAS_ MoveToLimit To request the motor to start limit motion at the current setting parameter condition Sending 5 bytes 4 bytes Running speed pps Response 1 byte 1 byte Communication status 1 byte Running direction 0 Limit 1 Limit 0x37 55 FAS Mov
83. sososeseososesesso 31 QAP Cibtary Conf IU Mestalla 31 2 2 Communication Status WINAOW ccccccsssccsssssccesscsccssscecsssssecesssscecessessessssseeessseeessessecess 32 23 A A osent oe seere oa osot en Eneee aseos era Soera E Noas Era naseer aois 37 FAS COME lisent AEEA AE aa bra de Do ETE N EE 38 FASEGNOS O tard tat etic era lola ie de E a ona hehe De A e OL hae OIE 40 FASSGCLST AVE TO tas ia le o ds er de de o Read le ed E e 41 FASO TMO O INTO Za a AE A a e ba tie 42 FAS ISS OEE O usen ori te Bed ts coca bo at osa dol 43 2 4 Param ter Control Function 44 RAS Sa VAN Par amet A A A A acters 45 FAS Set araM Sa 47 FASGetParaMa Orca iii aia ada bid 48 FAS GetROMPar ameter ui 49 ES TA AA O 50 FAS Ser VENA Bi A A Ein 51 FAS Ser VOAL ALMRESO E A AA A AAA 53 2 6 Control 1 20 FUNCTION sevvvsctescecsccsncsesccescscssteecuesadeecosnsseecnsssadecunectaocscbesteensactucvedsdsedeectsbevnseeded 54 FAS 56 U OUMPUT eos 55 FASZ GE TOI PU rosita ie eden reas T O ii 57 FAS SOLO Uat ida 58 FAS Get IO Dutti 59 RASGO uIDASS TOMADA A A A 60 FAS 96 IDAS OM da OREA 62 FAS LOASS 1ONMapREadROMs sc a i EREE lab ENEA NERE E rey 63 2 7 Position A 64 EAEE AKOE OEE EA A aa 65 FAS OC TACTUSIPOS A E NN 67 FAS COLOMA OS tn A A A tea aa 68 FAS GETAC tUl POS keirin e EE EE ER a 70 BAS GO POSE TOS AS AAA AAA 71 FAS Ge tACcta Vel ds 72 RAS Clear POSE A A A ae 73 2 8 Drive Status Control FUNCTION ccconcccoooononnonncnnnnnanonncnnononacnnono
84. struct Example include FAS_ EziMOTIONPlusR h void funcMoveEx BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 DWORD dwAxisStatus dwInput EZ ISERVO_AXISSTATUS stAxisStatus long lAbsPos lIncPos IVelocity MOTION_OPTION_EX opt 0 int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed The port number may be wrong or incorrect Baudrate return Moving motor with different acc dec time IncPos 15000 98 amp opt See Also Velocity 30000 opt f lagOpt ion B T_USE_CUSTOMACCEL opt flag0ption BIT_USE_CUSTOMDECEL 1 Il cn opt wCustomAccelTime 50 opt wCustomDecelTime 200 nRtn FAS_MoveSingleAxisIncPosEx nPortNo iSlaveNo lIncPos IVelocity _ASSERT nRtn FMM_OK Waiting until motioning is done do Sleep 1 nRtn FAS _GetAxisStatus nPortNo iSlaveNo amp dwAxisStatus _ASSERT nRtn FMM_OK stAxisStatus dwValue dwAxisStatus while stAxisStatus FFLAG_MOTIONING Moving motor to position 0 lAbsPos 0 Velocity 20000 nRtn FAS_MoveSingleAxisAbsPos nPortNo Slave No lAbsPos IVelocity _ASSERT nRtn FMM_OK Waiting until motioning is done do Sleep 1 nRtn FAS_GetAxisStatus nPortNo iSlaveNo amp dwAxisStatus _ASSERT nRtn FMM_OK stAxisStatus dwValue dwAxisStatus while stAxisStatus FFLAG_MOTIONING Disconnect
85. tor Syntax int FAS_SetActualPos BYTE nPortNo BYTE iSlaveNo long lActPos Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive ActPos Actual position value to be set Return Value FMM_OK Command has been normal ly performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks The user sets the encoder feedback counter value to the value that he wants Example Refer to FAS_GetActualPos library See Also FAS_SetCommandPos 67 FAS_GetCommandPos To read the command position of the current motor Syntax int FAS_GetCommandPos BYTE nPortNo BYTE SlaveNo long CmdPos Parameters nPor tNo Port number of relevant drive S aveNo Slave number of relevant drive CmdPos Parameter pointer that command position value will be saved Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks To read the position command pulse output counter value Example include FAS_ EziMOTIONPlusR h void funcDisplayStatus BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15
86. uring E Stop happens The command returned an error Command FAS_ServoEnable Return cade FMP_SERYOONFAIL3 0489 FMP_SERVOONFAIL3 I The Servo n signal is assigned at external input Servo ON Signal is assigned by external input pin In this case Servo ON command by DLL library is not working 3 Command Execution Error The command returned an error Command FAS_PosTablewriteltem Return code FMM_POSTABLE_ERROA 0x09 An error occurs while the motor accesses to the position table FMM_POSTABLE_ERROR The execution of DLL library for Position Table is failed 36 2 3 Drive Link Function Function Name Descr iption The drive tries to connect communication with the drive module FAS_Connect When it is successfully connected TRUE will return Otherwise FALSE will return FAS_Close The drive tries to disconnect communication with the drive module FAS GetSlave Info he drive reads drive type and program version Drive type and version information will return The drive reads motor type and maker dai Ale Motor type and maker information will return The drive checks whether there is the relevant drive ARIS EAS When it exists TRUE will return Otherwise FALSE will return 23 FAS_Connect FAS_Connect is the function of connecting Ezi SERVO ALL Syntax BOOL FAS_Connect BYTE nPortNo DWORD dwBaud Parameters nPor tNo
87. voEnable To turn ON OFF the drive servo Syntax int FAS_ServoEnab e BYTE nPortNo BYTE iSlaveNo BOOL bOnOf f Parameters nPor tNo Port number of relevant drive SlaveNo Slave number of relevant bOnOf f Enable or Disable Return Value FMM_OK Command has been normally performed FMM_NOT_OPEN The drive has not been connected yet FMM_INVALID_PORT_NUM There is no nPort in the connected ports FMM_INVALID_SLAVE_NUM There is no drive of iSlaveNo in the relevant port Remarks The given time is required until Servo ON flag in the axis status turns on after enable Example include FAS_ EziMOTIONPIusR h void funcAxisStatus BYTE nPortNo 1 COMM Port Number BYTE iSlaveNo 0 Slave No 0 15 EZISERVO_AXISSTATUS AxisStatus int nRtn Try to connect if FAS_Connect nPortNo 115200 FALSE Connection failed The port is not connected or the baudrate may be wrong return nRtn FAS_GetAxisStatus nPortNo iSlaveNo amp AxisStatus dwValue _ASSERT nRtn FMM_OK f SERVO_ON flag turns off the servo turns on if AxisStatus FFLAG_SERVOON 0 nRtn FAS_ServoEnable nPortNo iSlaveNo TRUE _ASSERT nRtn FMM_OK 1f there is an alarm AlarmReset runs if AxisStatus FFLAG_ERRORALL AxisStatus FFLAG_ERROVERCURRENT AxisStatus FFLAG_ERROVERLOAD nRtn FAS_ServoAlarmReset nPortNo iSlaveNo _ASSERT nRtn FMM_OK 51
Download Pdf Manuals
Related Search
Related Contents
Plantronics Vista M22 Velleman KNS10 toy Guide d`Installation et d`Opération pour Commutateur de Transfert ラック“全部”割 キャンペーン INSTALLATION MANUAL Kenwood Induction Hob - IH100 T9000 Premium Throttle JVC EM55RF5 Specification Sheet L`entretien de Recrutement : mode d`emploi Copyright © All rights reserved.
Failed to retrieve file