RSRC LVARLBVW! ">>"@  J B&*0<ψȈfofofo+++++++++++++++ Servo VIs Servo CtrlsSerial Control.viCmdsTranslator.viPIC-Command.vi++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++99ݽwp1 p1p0@Wڿ؅*ꪩj꿫꿫꟢*ꯨ*ﯨ**ꨳ/ ??? 1?q|8Й Йؙٙٙٙف?>?>?>>xxx?<{<ϟ>By{xŸ?<{<ϟ>By{xŸ?<{<ϟ>By{xŸqO?<{yy|8|)) N|D@ <>K1@Pf - ُ B~i $¢~B>V{ LVINCmdsTranslator.vi PY c$ c cRP"@P@flg@oRt@eofudf PTaskxdfdPtxdPoldPext P P P P@@@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionCluster chP"@P@flg@oRt@eofudfP0String p0dfd P0txd P0old P0extTP"@P@flg@oRt@eofudflP@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionClusterArray0p@"P00dfd0P@"P00txd0P@"P00old0P@"P00ext PP"@P@flg@oRt@eofudf6PP @!status @code@0source error outxP!0dfdPP!0txdPP!0oldPP!0ext P" P@@`0regular expression`0regular expression`0regular expression`0regular expressionvh@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionClusterArray Constant P@@@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionCluster\hP@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionCluster`0regular expression`0regular expression`0regular expression`0regular expression`0regular expression c c$zv@@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionClusterArray ConstantD@@P @!status @code@0sourceerror in (no error)@@0String@?String!@?String c c\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionCluster c@0Name @Command@ # data bytes@Cmd Byte c@0 Description@offset past match???00?00?00@?String@?String@0String @Task cD 0@0String 0 c  c 0 c  c 0 c  c 0 0 c c c c c c c c@ c c i$Zor 4 Reset Position Command value: 0x0 Number of data bytes: 0 Command byte: 0x00 Description: Resets the 32 bit encoder counter to 0. Also resets the internal command position to 0 to prevent the motor from jumping abruptly if the position servo is enabled. Do not issue this command while executing a trapezoidal profile motion Set Address Command value: 0x1 Number of data bytes: 2 Command byte: 0x21 Data bytes: 1. Individual address: 0-0xFF (initial value 0x00) 2. Group Address: (initial value 0xFF) Description: Sets the individual address and group address. Group addresses are always interpreted as being between 0x80 and 0xFF. If a PIC-SERVO is to be a group leader, clear bit 7 of the desired group address in the second data byte; the PIC-SERVO will automatically set bit 7 internally after flagging the PIC-SERVO as a group leader. (If bit 7 of the second data byte is set, the module will default to being a group member.) The first time this command is issued after power-up or reset, it will also enable communications for the next module in the network chain by lowering the its ADDR_OUT signal. Define Status Command value: 0x2 Number of data bytes: 1 Command byte: 0x12 Data bytes: 1. Status items: (default: 0x00) Bit 0: send position (4 bytes) 1: send A/D value (1 byte) 2: send actual velocity (2 bytes - no fractional component) The signed 16 bit integer returned is the negative of the velocity in units of counts per servo tick 3: send auxiliary status byte (1 byte) 4: send home position (4 bytes) 5: send device ID, version number (2 bytes) (PIC-SERVO device ID = 0) 6, 7: not used - clear to zero Description: Defines what additional data will be sent in the status packet along with the status byte. Setting bits in the first data byte will cause the corresponding additional data bytes to be sent after the status byte. The status data will always be sent in the order listed. For example if bits 0 and 3 are set, the status packet will consist of the status byte followed by four bytes of position data, followed by the aux. status byte, followed by the checksum. The status packet returned in response to this command will include the additional data bytes specified. On power-up or reset, the default status packet will include only the status byte. (See section 5.3 for a definition of the status byte and the auxiliary status byte.) Read Status Command value: 0x3 Number of data bytes: 1 Command byte: 0x13 Data bytes: 1. Status items: Bit 0: send position (4 bytes) 1: send A/D value (1 byte) 2: send actual velocity (2 bytes - no fractional component) The signed 16 bit integer returned is the negative of the velocity in units of counts per servo tick 3: send auxiliary status byte (1 byte) 4: send home position (4 bytes) 5: send device ID, version number (2 bytes) (PIC-SERVO device ID = 0) 6, 7: not used - clear to zero Description: This is a non-permanent version of the "define status" command. The status packet returned in response to this command will incorporate the data bytes specified, but subsequent status packets will include only the data bytes previously specified with the define status command. Load Trajectory Command value: 0x4 Number of data bytes: n = 1-14 Command byte: 0xn4 Data bytes: 1. Control byte: Bit 0: load position data ( n += 4 bytes) 1: load velocity data ( n += 4 bytes) 2: load acceleration data ( n += 4 bytes) 3: load PWM value ( n += 1 bytes) 4: servo mode - 0 = PWM mode, 1 = position servo 5: profile mode - 0 = trapezoidal profile, 1 = velocity profile 6: in velocity & PWM modes: 0 = FWD direction, 1 = REV direction 7: start motion now Description: All motion parameters are set with this command. Setting one of the first four bits in the control byte will require additional data bytes to be sent (as indicated) in the order listed. The position data (range* +/- 0x7FFFFFFF) is only used as the goal position in trapezoidal profile mode. The velocity data (range 0x00000000 to 0x7FFFFFFF) is used as the goal velocity in velocity profile mode or as the maximum velocity in trapezoidal profile mode. The acceleration data (range 0x00000000 to 0x7FFFFFFF) is used in both trapezoidal and velocity profile mode. The PWM value (range 0-0xFF), used only when the position servo is not operating, sends a raw PWM values directly to the amplifier. The PWM value is reset to 0 internally on any condition which automatically disables the position servo. Bit 4 of the control byte specifies whether the position servo should be used or if the PWM mode should be entered. Bit 5 specifies whether a trapezoidal profile motion should be initiated or if the velocity profiler is used. Trapezoidal profile motions should only be initialized when the motor velocity is 0. (Bit 0 of the status byte indicates when a trapezoidal profile motion is complete, or in velocity mode, when the command velocity has been reached.) Bit 6 indicates the velocity or PWM direction when velocity or PWM modes are selected. If bit 7 is set, the command will be executed immediately. If bit 7 is clear, the command data will be buffered and it will be executed when the "start motion" command is issued. Example: To load only new position data and acceleration data but not start the motion yet, the command byte would be 0x94, the control byte would be 0x15, followed by 4 bytes of position data (least significant byte first), followed by 4 bytes of acceleration data. Start Motion Command value: 0x5 Number of data bytes: 0 Command byte: 0x05 Description: Causes the trajectory information loaded with the most recent Load Trajectory command to execute. This is useful for loading several PIC-SERVO chips with trajectory information and then starting them simultaneously with a group command. Set Gain Command value: 0x6 Number of data bytes: 14 (for version 4 and higher - only 13 bytes for versions 1,2 & 3) Command byte: 0xE6 (for version 4 and higher - use 0xD6 for versions 1,2 & 3) Data bytes: 1,2. Position gain Kp (0 - 0x7FFF) 3,4. Velocity gain Kd (0 - 0x7FFF) 5,6. Position gain Ki (0 - 0x7FFF) 7,8. Integration limit IL (0 - 0x7FFF) 9. Output limit OL(0 - 0xFF) 10. Current limit CL(0 - 0xFF) odd values: CUR_SENSE proportional to motor current even values: CUR_SENSE negatively proportional to motor current 11,12. Position error limit EL (0 - 0x3FFF) 13. Servo rate divisor SR (1 - 0xFF) 14. Amplifier deadband compensation (0 - 0xFF) (version 4 and higher only) Description: Sets all parameters and limits governing the behavior of the position servo. The use of the PID gain parameters (Kp, Kd, Ki, IL, OL) are described in section 4.3. The 16 bit value used to specify IL is multiplied by 256 internally to get the actual IL value used by the PID algorithm. The current limit, CL (used if the CUR_SENSE input is connected to a current sense output of the amplifier) is actually a seven bit value with bit 0 used to indicate if CL is to be used as an upper bound or a lower bound on the CUR_SENSE value. Odd values of CL are used if CUR_SENSE is directly proportional to motor current (0v = 0 amp); even values assume CUR_SENSE is negatively proportional to motor current (5v = 0 amp). Setting CL to 0 effectively disables current limiting. The position error limit will cause the position servo to be disabled should the position error grow beyond the limit. The servo rate divisor sets the servo tick time to be a multiple of 0.51 msec (1.953 KHz). For example SR=3 gives a servo rate of 651 Hz. The servo tick rate is also used as the profiling timebase, although command processing and current limiting are always performed at the maximum tick rate. Version 4 of the PIC-SERVO has a 14th data byte which is used to compensate for the deadband region around zero PWM output exhibited by some amplifier/motor combinations. The deadband compensation value will be added to the magnitude of the PWM output to force the amplifier into its active region. If the command 0xD6 is used (and only 13 data bytes are sent, version 4 will use a default value of zero for the deadband compensation. (Also note that versions 1,2 & 3 will simply ignore the 14th data byte if it is sent.) Stop Motor Command value: 0x7 Number of data bytes: 1 or 5 Command byte: 0x17 or 0x57 Data bytes: 1. Stop control byte Bit 0: Amplifier enable 1: Turn motor off 2: Stop abruptly 3: Stop smoothly 4: Stop here (not available on version 1) 5,6,7: Clear to zero 2-5 Stopping position (only required if bit 4 above is set) Description: Stops the motor in the specified manner. If bit 0 of the Stop Control Byte is set, AMP_EN will be set; if bit 0 is cleared, AMP_EN will be cleared, regardless of the state of the other bits. If bit 1 is set, the position servo will be disabled, the PWM output value will be set to 0, and bits 2, 3 and 4 are ignored. If bit 2 is set, the current command velocity and the goal velocity will be set to zero, the position servo will be enabled, and velocity mode will be entered. If the velocity servo was previously disabled, the motor will simply start servoing to its current position. If the motor was previously moving in one of the profiling modes, it will stop moving abruptly and servo to its current position. This stopping mode should only be used as an emergency stop where the motor position needs to be maintained. A more graceful stop mode is entered by setting bit 3 - this sets the goal velocity to 0 and enters velocity mode, causing the motor to decelerate to a stop at the current acceleration rate. If bit 4 is set, the motor will move to the specified stopping position abruptly with no profiling. This mode can be used to cause the motor to track a continuous string of command positions. Note that if the stopping position is too far from the current position, a position error will be generated. Only one of the bits 1, 2, 3 or 4 should be set at the same time. Note: the Stop Motor command must be issued initially to set AMP_EN (if used) before other motion commands are issued. I/O Control Command value: 0x8 Number of data bytes: 1 Command byte: 0x18 Data bytes: 1. I/O control byte Bit 0: Output value of Limit1 1: Output value of Limit2 2: Direction of Limit1 (0 = output, 1 = input) 3: Direction of Limit2 (0 = output, 1 = input) 4,5,6,7: Clear to zero Description: Controls whether the limit1 and 2 signals are inputs (default) or outputs and sets the output values. Set Homing Mode Command value: 0x9 Number of data bytes: 1 Command byte: 0x19 Data bytes: 1. Homing control byte Bit 0: Capture home position on change of Limit1 1: Capture home position on change of Limit2 2: don't care (versions1 & 2) Turn motor off on home (version 3 or higher) 3: Capture home on change of Index 4: don't care (versions 1 & 2) Stop abruptly on home (version 3 or higher) 5: don't care (versions1 & 2) Stop smoothly on home (version 3 or higher) 6: Capture home position when an excess position error occurs 7: Capture home position when current limiting occurs Description: Causes the controller to monitor the specified conditions and capture the home position when any of the flagged conditions occur. The home_in_progress bit in the status byte is set when this command is issued and it is then lowered the home position has been found. With firmware versions 1 & 2, the user must stop the motor explicitly, if necessary, after the home position has been found. In firmware version 3 (or higher) setting one (and only one) of bits 2, 4 or 5 will cause the motor to stop automatically in the specified manner once the home condition has been triggered. This feature can also be used as a safety shutoff. Set Baud Rate Command value: 0xA Number of data bytes: 1 Command byte: 0x1A Data bytes: 1. Baud rate divisor, BRD sample values: 9600 BRD = 129 19200 BRD = 63 57600 BRD = 20 115200 BRD = 10 Description: Sets the communications baud rate. All PIC-SERVO chips on the network must have their baud rates changed at the same time, therefore this command should only be issued to a group including all of the controllers on the network. A status packet returned from this command would be at the new baud rate, so typically (unless the host's baud rate can be accurately synchronized), there should be no group leader when this command is issued. The baud rate divisor is programmed directly into the PIC16C73's SPBRG register with the bit BRGH = 1. Please refer to the PIC16C7x data sheet for details in obtaining other baud rates. Clear Sticky Bits Command value: 0xB Number of data bytes: 0 Command byte: 0x0B Description: The overcurrent and position error bits in the status byte and the position wrap and servo timer overrun bits in the aux. status byte will stay set unless cleared explicitly with this command. Save Current Position as Home Command value: 0xC Number of data bytes: 0 Command byte: 0x0C Description: Causes the current position to be saved as the home position. This command is typically issued to a group of controllers to cause their current positions to be stored synchronously. The stored positions can then be read individually by reading the home position No Operation Command value: 0xE Number of data bytes: 0 Command byte: 0x0E Description: Does nothing except cause a status packet with the currently defined status data to be returned. Hard Reset Command value: 0xF Number of data bytes: 0 Command byte: 0x0F Description: Resets the control module to its power-up state. No status will be returned. Typically, this command is issued to all the modules on the network. Reset PositionDescription: Resets the 32 bit encoder counter to 0. Also resets the internal command position to 0 to prevent the motor from jumping abruptly if the position servo is enabled. Do not issue this command while executing a trapezoidal profile motion Set Address!Data bytes: 1. Individual address: 0-0xFF (initial value 0x00) 2. Group Address: (initial value 0xFF) Description: Sets the individual address and group address. Group addresses are always interpreted as being between 0x80 and 0xFF. If a PIC-SERVO is to be a group leader, clear bit 7 of the desired group address in the second data byte; the PIC-SERVO will automatically set bit 7 internally after flagging the PIC-SERVO as a group leader. (If bit 7 of the second data byte is set, the module will default to being a group member.) The first time this command is issued after power-up or reset, it will also enable communications for the next module in the network chain by lowering the its ADDR_OUT signal. Define StatusData bytes: 1. Status items: (default: 0x00) Bit 0: send position (4 bytes) 1: send A/D value (1 byte) 2: send actual velocity (2 bytes - no fractional component) The signed 16 bit integer returned is the negative of the velocity in units of counts per servo tick 3: send auxiliary status byte (1 byte) 4: send home position (4 bytes) 5: send device ID, version number (2 bytes) (PIC-SERVO device ID = 0) 6, 7: not used - clear to zero Description: Defines what additional data will be sent in the status packet along with the status byte. Setting bits in the first data byte will cause the corresponding additional data bytes to be sent after the status byte. The status data will always be sent in the order listed. For example if bits 0 and 3 are set, the status packet will consist of the status byte followed by four bytes of position data, followed by the aux. status byte, followed by the checksum. The status packet returned in response to this command will include the additional data bytes specified. On power-up or reset, the default status packet will include only the status byte. (See section 5.3 for a definition of the status byte and the auxiliary status byte.) Read StatusData bytes: 1. Status items: Bit 0: send position (4 bytes) 1: send A/D value (1 byte) 2: send actual velocity (2 bytes - no fractional component) The signed 16 bit integer returned is the negative of the velocity in units of counts per servo tick 3: send auxiliary status byte (1 byte) 4: send home position (4 bytes) 5: send device ID, version number (2 bytes) (PIC-SERVO device ID = 0) 6, 7: not used - clear to zero Description: This is a non-permanent version of the "define status" command. The status packet returned in response to this command will incorporate the data bytes specified, but subsequent status packets will include only the data bytes previously specified with the define status command.Load TrajectoryData bytes: 1. Control byte: Bit 0: load position data ( n += 4 bytes) 1: load velocity data ( n += 4 bytes) 2: load acceleration data ( n += 4 bytes) 3: load PWM value ( n += 1 bytes) 4: servo mode - 0 = PWM mode, 1 = position servo 5: profile mode - 0 = trapezoidal profile, 1 = velocity profile 6: in velocity & PWM modes: 0 = FWD direction, 1 = REV direction 7: start motion now Description: All motion parameters are set with this command. Setting one of the first four bits in the control byte will require additional data bytes to be sent (as indicated) in the order listed. The position data (range* +/- 0x7FFFFFFF) is only used as the goal position in trapezoidal profile mode. The velocity data (range 0x00000000 to 0x7FFFFFFF) is used as the goal velocity in velocity profile mode or as the maximum velocity in trapezoidal profile mode. The acceleration data (range 0x00000000 to 0x7FFFFFFF) is used in both trapezoidal and velocity profile mode. The PWM value (range 0-0xFF), used only when the position servo is not operating, sends a raw PWM values directly to the amplifier. The PWM value is reset to 0 internally on any condition which automatically disables the position servo. Bit 4 of the control byte specifies whether the position servo should be used or if the PWM mode should be entered. Bit 5 specifies whether a trapezoidal profile motion should be initiated or if the velocity profiler is used. Trapezoidal profile motions should only be initialized when the motor velocity is 0. (Bit 0 of the status byte indicates when a trapezoidal profile motion is complete, or in velocity mode, when the command velocity has been reached.) Bit 6 indicates the velocity or PWM direction when velocity or PWM modes are selected. If bit 7 is set, the command will be executed immediately. If bit 7 is clear, the command data will be buffered and it will be executed when the "start motion" command is issued. Example: To load only new position data and acceleration data but not start the motion yet, the command byte would be 0x94, the control byte would be 0x15, followed by 4 bytes of position data (least significant byte first), followed by 4 bytes of acceleration data. Start MotionDescription: Causes the trajectory information loaded with the most recent Load Trajectory command to execute. This is useful for loading several PIC-SERVO chips with trajectory information and then starting them simultaneously with a group command.Set GainData bytes: 1,2. Position gain Kp (0 - 0x7FFF) 3,4. Velocity gain Kd (0 - 0x7FFF) 5,6. Position gain Ki (0 - 0x7FFF) 7,8. Integration limit IL (0 - 0x7FFF) 9. Output limit OL(0 - 0xFF) 10. Current limit CL(0 - 0xFF) odd values: CUR_SENSE proportional to motor current even values: CUR_SENSE negatively proportional to motor current 11,12. Position error limit EL (0 - 0x3FFF) 13. Servo rate divisor SR (1 - 0xFF) 14. Amplifier deadband compensation (0 - 0xFF) (version 4 and higher only) Description: Sets all parameters and limits governing the behavior of the position servo. The use of the PID gain parameters (Kp, Kd, Ki, IL, OL) are described in section 4.3. The 16 bit value used to specify IL is multiplied by 256 internally to get the actual IL value used by the PID algorithm. The current limit, CL (used if the CUR_SENSE input is connected to a current sense output of the amplifier) is actually a seven bit value with bit 0 used to indicate if CL is to be used as an upper bound or a lower bound on the CUR_SENSE value. Odd values of CL are used if CUR_SENSE is directly proportional to motor current (0v = 0 amp); even values assume CUR_SENSE is negatively proportional to motor current (5v = 0 amp). Setting CL to 0 effectively disables current limiting. The position error limit will cause the position servo to be disabled should the position error grow beyond the limit. The servo rate divisor sets the servo tick time to be a multiple of 0.51 msec (1.953 KHz). For example SR=3 gives a servo rate of 651 Hz. The servo tick rate is also used as the profiling timebase, although command processing and current limiting are always performed at the maximum tick rate. Version 4 of the PIC-SERVO has a 14th data byte which is used to compensate for the deadband region around zero PWM output exhibited by some amplifier/motor combinations. The deadband compensation value will be added to the magnitude of the PWM output to force the amplifier into its active region. If the command 0xD6 is used (and only 13 data bytes are sent, version 4 will use a default value of zero for the deadband compensation. (Also note that versions 1,2 & 3 will simply ignore the 14th data byte if it is sent.) Stop MotorData bytes: 1. Stop control byte Bit 0: Amplifier enable 1: Turn motor off 2: Stop abruptly 3: Stop smoothly 4: Stop here (not available on version 1) 5,6,7: Clear to zero 2-5 Stopping position (only required if bit 4 above is set) Description: Stops the motor in the specified manner. If bit 0 of the Stop Control Byte is set, AMP_EN will be set; if bit 0 is cleared, AMP_EN will be cleared, regardless of the state of the other bits. If bit 1 is set, the position servo will be disabled, the PWM output value will be set to 0, and bits 2, 3 and 4 are ignored. If bit 2 is set, the current command velocity and the goal velocity will be set to zero, the position servo will be enabled, and velocity mode will be entered. If the velocity servo was previously disabled, the motor will simply start servoing to its current position. If the motor was previously moving in one of the profiling modes, it will stop moving abruptly and servo to its current position. This stopping mode should only be used as an emergency stop where the motor position needs to be maintained. A more graceful stop mode is entered by setting bit 3 - this sets the goal velocity to 0 and enters velocity mode, causing the motor to decelerate to a stop at the current acceleration rate. If bit 4 is set, the motor will move to the specified stopping position abruptly with no profiling. This mode can be used to cause the motor to track a continuous string of command positions. Note that if the stopping position is too far from the current position, a position error will be generated. Only one of the bits 1, 2, 3 or 4 should be set at the same time. Note: the Stop Motor command must be issued initially to set AMP_EN (if used) before other motion commands are issued. I/O Control?Data bytes: 1. I/O control byte Bit 0: Output value of Limit1 1: Output value of Limit2 2: Direction of Limit1 (0 = output, 1 = input) 3: Direction of Limit2 (0 = output, 1 = input) 4,5,6,7: Clear to zero Description: Controls whether the limit1 and 2 signals are inputs (default) or outputs and sets the output values.Set Homing Mode |Data bytes: 1. Homing control byte Bit 0: Capture home position on change of Limit1 1: Capture home position on change of Limit2 2: don't care (versions1 & 2) Turn motor off on home (version 3 or higher) 3: Capture home on change of Index 4: don't care (versions 1 & 2) Stop abruptly on home (version 3 or higher) 5: don't care (versions1 & 2) Stop smoothly on home (version 3 or higher) 6: Capture home position when an excess position error occurs 7: Capture home position when current limiting occurs Description: Causes the controller to monitor the specified conditions and capture the home position when any of the flagged conditions occur. The home_in_progress bit in the status byte is set when this command is issued and it is then lowered the home position has been found. With firmware versions 1 & 2, the user must stop the motor explicitly, if necessary, after the home position has been found. In firmware version 3 (or higher) setting one (and only one) of bits 2, 4 or 5 will cause the motor to stop automatically in the specified manner once the home condition has been triggered. This feature can also be used as a safety shutoff. Set Baud Rate Data bytes: 1. Baud rate divisor, BRD sample values: 9600 BRD = 129 19200 BRD = 63 57600 BRD = 20 115200 BRD = 10 Description: Sets the communications baud rate. All PIC-SERVO chips on the network must have their baud rates changed at the same time, therefore this command should only be issued to a group including all of the controllers on the network. A status packet returned from this command would be at the new baud rate, so typically (unless the host's baud rate can be accurately synchronized), there should be no group leader when this command is issued. The baud rate divisor is programmed directly into the PIC16C73's SPBRG register with the bit BRGH = 1. Please refer to the PIC16C7x data sheet for details in obtaining other baud rates.Clear Sticky Bits Description: The overcurrent and position error bits in the status byte and the position wrap and servo timer overrun bits in the aux. status byte will stay set unless cleared explicitly with this command.Save Current Position as Home Description: Causes the current position to be saved as the home position. This command is typically issued to a group of controllers to cause their current positions to be stored synchronously. The stored positions can then be read individually by reading the home position No OperationmDescription: Does nothing except cause a status packet with the currently defined status data to be returned. Hard ResetDescription: Resets the control module to its power-up state. No status will be returned. Typically, this command is issued to all the modules on the network.     Command value: 0x%x%dCommand byte: 0xNumber of data bytes:%x` ` ` +`N`u`m`b`e`r` `o`f` `d`a`t`a` `b`y`t`e`s`:!`C`o`m`m`a`n`d` `b`y`t`e`:` `0`x` ` ` $B &0 <N @^z@|6@Pw B@||,H{&dtxh\t`|Pl8\Dd4F`@| VIDSCmdsTranslator.viXi386@code 62E{@E`ETPUEd$=t1=#ÐӀ}#t} uE(E!E"ɍHHƅt hhUEPt?ʃ9t'QRRVhh@u8 d$ZY=6t 6ɍHHH HHHHH H$H(ƅƅSQRVWPEEXPE EXQRuhPED$X" d$ZY=t鞸EEPERUQ YZXEEPERUQ YZXEEPERUQ YZXEEQRuhPED$X d$ZY=t_^ZY[ÐuP$P$d$ =k fxƅW?ƀQRhPhVQWRdt:d$ ZY= ƅQRP($P$ d$ZY= QRP$P$ d$ZY= fxƅDžEQRP $P$hhhP$uC/:d$$ZY=y =m ƅVW,_^fxƅt?QRhPhhQWRr:d$ ZY= ƅQRP|$P$5 d$ZY= fx"%ƅDž,E$x(QRP $P,$hhhPt$|u-:d$$ZY=y =[ ƅVW-x_^fx&ƅtt?hQRhPhhQWR0xq:d$ ZY= ƅQRPd$Ph$ d$ZY= fx*9ƅDž@E|8`<QRP4$P@$hhhP\$du,:d$$ZY=y =I ƅVW.`_^fx. ƅ\t?PQRhPhhQWRDp:d$ ZY= ƅfx2y ƅPW?8ƀDQRP4$PhVQWRHo:d$ ZY=s ƅQRP0$P8$ d$ZY=Z fx6 ƅ4}ƅfx: ƅQRP$(s d$ZY=P, XP-!XP."XQRP#$0! d$ZY=ƅfx> ƅDžL=t LL=tQRPh d$ZYk PLTEQRPT$WhP$ d$ZY=?t9?PǍuP$P$d$ = ƅfxB Elxr>?;LӸ9~Ӊ)QRSVhh@u% d$ZY=6>QRP$ d$ZY=xQRP$PD$L d$ZY=_t6PGXG7GGt"=-1>?;t-QRRVhh@u d$ZY>?=ƅ}(u ƅ hhUEP8d$ =fxe tTEl@9tJO@E`ETQRPRd$ZYÐ@E`ETQRPu<d$ZYÐ}ztƅQRhhPf5$hhV4/d$ZYt@E`QRhhPx$ULd$ZY=2}zuQR|Fd$ZYÐQR|Fd$ZYQRxFd$ZYÐQR|HFd$ZY=tQRP=ud$ZYDžÐQRFZYxETPQRQx*Fd$ ZY|DžOAtrDžPEXDžDž"DždDžl3DžhDždDžÐ}z􋕰=u=u)=tQRURhPQV/d$ZYƅ}(u ƅ0 hhUEP8d$ ="fxEP@PtTEl@9tJ@E`ETQRPR#d$ZYÐ@E`ETQRPu<d$ZYÐ}zt׀}#t}"uH}!v}/uvQRPED$)#d$ZY==t p h搐ÐE{ [@E`ETPUEd$=t=t=t=tE{ E{‰ppVLFX@'PUEd$=uÐTcx@Tc0@Tc8@Tc(@iTck2@OTcL@5Tc8f@Tcp,@Tc8@Tcl8@Tc`3@TcA@TclA@TcM@eTcPI6@KTcTGP@1Tcdj@TcT@TcW@TcP @TcP @Tc@@Tc@@{Tck @aTck:@GTcT@-Tckn@Tc@Tc\@@Ðx&}1p@p @'PUEd$=uÐTc@Tc:@^Tbc t@$T-c@Tc@Tc "@vTMc \@d$ZY_^ZY[]ÐTdT*9B9+,j99+4+g+Y  +l +  9k 9 m*   P  {;;B\o );L;+dE<"@<;I?ya'fnv~%lD[r %?Ys)C]w:CODE 62(6.0rc5Oldest compatible LabVIEW.2Sd2Xl2T2YpPPP @Task@0Stringl@@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionClusterArray6@P @!status @code@0source error out99ݽwp1 p1p0@++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++DTHPDT288~ @Taskxl@@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionClusterArrayh\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionCluster @Command @0 Description@Cmd Byte"@ # data bytes@0Name@0String!(@0regular expression@?String&@offset past match?v@@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionClusterArray Constantvf@\@P@0Name @Command@ # data bytes@Cmd Byte@0 DescriptionCluster0F6@P @!status @code@0sourceerror IO&@p" referenceL@@P @!status @code@0sourceerror in (no error)F6@P @!status @code@0source error out.@@0 Strings []*@@0String @!status @code@0sourceLl (HdddlH( llHH( ll$$$88$$$88($$$$$88 $||0\ WD?L?L DescriptionH W2TT~XD # data bytesHX2SDuuClusterSDCommandH X2TDCmd BytePDԐNameHPZ2#0#0HZ2RDO&kP&kStringH`Y2.SFdT)6((Qq~q~ArrayHW2UDGoHo error outRD$JgKgstatusH$xT2SZTZPD$ӆӇcodeHxZ2xy򺳳RDJkKksourceHZ2 P0 QPD@YAYTaskHW2'5(5HY2H I HDX2YrZrHDZ2[r\rHDpY2?[@[^D - -regular expression^Dssregular expression^D  regular expressionSD(5(5ClusterHD|T2HDZ20=0=HD|V2L YL YHDX2ijPD+ 8(+ 8(NameHDDX2;H;HSD^k^kClusterPDananNameHDS2q~q~SDrrCommandHDV2HDxY2XDۃ # data bytesTD͔Cmd ByteHDV2WDե DescriptionHDdT2©©SD< I;< I;CommandXDM ZGM ZG # data bytesHDY2] j] jZDYfYfArray ConstantHDY2lylyTD^ k9^ k9Cmd ByteHDU2n {n {WDo |Ao |A DescriptionHDY2^D)K)Kregular expressionHDW2,9J,9J^Ddqdqregular expressionHDY2tt^D*j*jregular expressionHDU2-Z:i-[:i^Dduqdvqregular expression^D''regular expressionHDW2&&HDZ2tdte^D#L0#M0regular expressionHDY23@3@PD7~D7DTaskHDhZ23@3@ Reset Position Set Address Define Status Read StatusLoad Trajectory Start MotionSet Gain Stop Motor I/O ControlSet Homing Mode Set Baud RateClear Sticky BitsSave Current Position as Home No Operation Hard Reset|PNG  IHDR(-SPLTE岲LLLf3̙f3f3ffffff3f3333f333f3f3̙f3̙̙̙̙f̙3̙ffffff3f3333f333̙f3̙̙f3̙̙f3̙̙f3ff̙ffff3f33̙33f333̙f3ffffff3ffff̙fff3fffffff3ffffffffffff3fff3f3f3f3ff33f3ffffff3f3333f333333̙3f3333333f3333f3f3f3ff3f33f33333333f333333333f333f3̙f3̙̙f3ffffff3f3333f333̙f3 """)))UUUMMMBBB999|PP֭֓𠠤.9?IDATxc`f($!lTTH@@Mr~ 0-p l4K9M/dIENDB`33qzPNG  IHDR(-SPLTE岲LLLf3̙f3f3ffffff3f3333f333f3f3̙f3̙̙̙̙f̙3̙ffffff3f3333f333̙f3̙̙f3̙̙f3̙̙f3ff̙ffff3f33̙33f333̙f3ffffff3ffff̙fff3fffffff3ffffffffffff3fff3f3f3f3ff33f3ffffff3f3333f333333̙3f3333333f3333f3f3f3ff3f33f33333333f333333333f333f3̙f3̙̙f3ffffff3f3333f333̙f3 """)))UUUMMMBBB999|PP֭֓𠠤.9AIDATxc`f(`O -?B( ȶ0@T  Y9N` A?KIENDB`q FPHPCmdsTranslator.vitFPHPD228lls~ 62LT2pS2(S2+5Eň2`XL ͳ@47,   ||0t$  , ( TX(PX0 X Odo4Q<>(@PC<Av4 FX >M8t34 2X St34 F s34 2 |v30  dop > 0cpcpcpp : bqbqbqL 2 0zu0z/{.|-}( t  D<S 0x 84 N< tv30 7< ,¦0 < 0do@PC<hBň(( 4 F( v30 ( do4 2( |t3p >( 0cpcpcpp :( bqbqbqL 2( /{u0z/{.|-}@PC<5BȚ4 F T t3 |4 Q< 4 F  u30  T 5do4 2 T "1t3p > T 0)cp)cp)cpp : T )5bq)5bq)5bqL 2 T "1/{u0z/{.|-}4 2 Pu30  do,  X T(4 Q NK 8 H R4pt4 E<ˬ P$ dd |\  T 4 F d N'ltv30  $ dB4 2 d -RGt30  d )NKdo4 F  pt34  r (v3@P r B4~v CA0 w dop 2 vbqvbqvbq0 W  ~tp 2 0~vcp~vcp~vcp0 U 4do0  0 s  0¦|g8hB<S`D88DP9The error in cluster can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. 0  D84 F Fps30 7 I3³T4 GIhw3D4OIh8@< jR[w3X2,0dThe status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4 FD ҅w34 2D wݳw3|n O_ O_ O_ O_ O_ @Po@$@ :D @hopcpclg@ :D hoododkhThe code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4QI3Ԏ, Tt4 F Ilw34 2  O1ݳw3L 2D qw0z0z/{.|-}0 D oܳp 4+  K1M K1M K1M0  I3ܳ00The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed., 4,4 PW?$L@io4 F?ZHw30  2/L4 J &6$x3< 2 G s3pT20  E$.,H| " BDHPCmdsTranslator.vipl BDHPDl>28pdpdpk~ 62VDY2lS2l>2+82,o\jpo0n0@|Xxh4 B|Xsw34604 2D0430 x, TL w  p @ T44/{,d , 8 \ 8h x4P[\  h , T;R<{&4QWt`4  2 Zsv3 @ P0-0 "t"",  T$ B  08 (@L\P , (4 '0 @ \>^N4 B\>\Pt3!!x !@x!!:,0!l !8 Hd0!  Wt!8,! *+0+1 !@l lT!!l0i\oVk  4!P]P 4!!^P#!,!VfXk(0!$ @ ! 0!l! !@ TL 0 !@ T  0!% l?|OtG4!/^~;Z!0D!cXW!X4!Q.?4! J  .lw3""-"d"04"08{4"08l{냀 "8 4"08 4꓀" 4"08 |{"d4"08 " "8d " "8 "8 L ,4"08 " , " P 4"08 "\"0"0 " L04"0 #d!y+n&4"0  <"d+y6n0" 8"(4-L\P " T4"^L0""1D1x14" J tu3 #@h,#1++0* ,#^,#*d!!L)4#470## #@ T$l4# J   hw34$Ql %$4$ J 0 '6v34% H\P 0% 3 0 9 4%  2  tw3&&& &0&   &,&**+p+,&pl &8l<\9 ;&, &8l 8l&!0&@+4hx"4& ,XP&*D & T$x &8l98 &@ P lX &@d(x &@ Ph & T(4&b P 64&EI00&;lA2B:4&  2 />pw3'40'  .?,'4(l 'Tf$_ 'T4'/1#4'0T&!  'T4'0T&1+ '4'0T  '( 'Tl4'0T!#'l 'T$4'0T !)#% 'TX`H(4'0TX#4'0T!)1#-' 4'_0 ' 'T| '@ Th04,4'P`!!'p'0';lPD"2*'83 '@ TEp?d4'P0'0 8':"Bd@',0 '@l@''d'A49Xc4P 98l:x,0 98l9,049b P,7Hʸ 9, 9@ P2,p,,9-|8-z49b P dQH  98l9-8$9-.L/0//9- 9@,-49 F- XgTv3H:R,Xx-X9"8 :../`/@:P v-B4kzz.,:A@: 6.L @kzrhkhkhk4:  v.L kzhv30; _.L kz0; W- ix{@; 6.L rzzglglgl0; w- lǮ³0; U- iʱ4;4b,; T@ 0|4; J+ ] l:v34< 2+ m |0w3L= :+ nz 0z0z/{.|-}0= 3+ l }4= J1 n }Bv34> 21 ~ v30? 1 } 4?Q 0} t?4?g YT0?NN4?l\l0?-8:, ?M>M\AL4?/6q/O ?3`5 8?d?$4?03`5dq/|?v7?<\2 F99 ?3?=\?,?3=\==FxF$F4?TV800?GTEqCOI?3@4?03`7e/?7?=?=Ь?h et tl,C T>S@<C>C> C@ TDt>>lC@@@CAL CAlDtBx>l CAl?0A>4CTU04CEH0,C To@ C@ PKO?C?CR?CB<CB4C J@< +kv34DQ>+V<k>TDB0D @< +V<kDCH4D  2@< ,Y;jv34EQ?dr`nE<<[ EAl>B AL>ALBXVHCPOZIU0EAl>WCfOpIk EAlC|B<ECC0EAl>DUCZOfI` EAlBB0EAl?YO`WpSh EAlCB0EAl@pZWP_`[X EAlDBEC0EAl?XOPW`SX EAlCC0EAlB\\_Pg`cX EAlE(CC,EBxAB C|BCD,E3@G4IMN`NO4EDM0E>l>0EAl@[W`_p[h4E03`7fq?yOuG4EHa0EG4EGd0EGElEF$>4E03`=gy?O}G E3`?0FDF$4E03`Fh?OG E3`EFxEF$ E3`FF4E03`Gi?OGEF E@ PE(HHG EMEpMIkNI}N}K6]I]IlK<l;8ll, P8 T K(WKW K@ PX`WW4Kb PWl{H ,K,p-HHOW,KX,0G?W4KA0Z04KWPa0KZKf WWK2HIIHK[KX,zSzK[<K\ Kd2dL| KdX,e<<K\ Kdd`[Ep?0KE(Dt0<\  lh$$L4Mlxm0Mk4M"` h8irmnP,MxkMp,jMkj$\M ,;>lJR< N|es o 4 ,RSIDb2?$(b2@pLb2Ab2B b2Cb2Db2E4b2Fb2Gb2HHb2Ib2Jb2KDb2Mb2Nb20a2<`2`2\`2`a2`2L8b2Dc2hc2Mc2N c2CmdsTranslator.viTranslateStatusBit.vi  Globals.vi Stat Info.ctlStatusByte.ctl Demo.viPIC-Init Servo.viPIC-SetStatusByte.viPIC-Close Servo.viPIC-Reset Position.vi  gains.ctlPIC-Set Gains.viPIC-Stop Motor.viPIC-Clear Sticky Bits.viPIC-Set Home.viPIC-No Operation.viPIC-Hard Reset.viPIC-Go Home.viPIC-Define Trajectory.viTrajectory.ctlStatus Items.ctlK Stat Info.ctlStatusByte.ctl gains.ctlTrajectory.ctlStatus Items.ctlTDDOUse DDOUseDDOUseDDOUseDDOUsePIC-Set Baud Rate.vi Strike Key.vi Simple Hit.vin}؁?k}'⾪ZT=* j着*ᆰᆰ*ꫪꫪꪯ窯*'⾪'+'+****:111111100?0CA"$888@E@t"`fgg |&pfBgf&8`fgfgfgffffffggfffgfffffffff#3!33?~>yq?{O8|?x|x?y?Ϗ<8|x>>ϟy<><<~3O<<??ffffbfffffffffffffffff?O8 E}(??ZT?ǀL H ?İ@H Ŀ DH @ ?   į  įࠊį?HࠊࠊH@?@ Hࠎ ࠊ䯊  ÀȠ 0 ,ˆ̌Ḧ,΢<(,̌.̢ ,, Ȍ̢̢̂ ,b,. (̈,H (̈,b..̢,,H8,Ȉ, (̈̌b,,̃b...Ȉ( 8̈Ā ̢.,,΢,..̃̌b,f,,,,̈,:,쯏bB,,B,,h,̢̃ #3!33Ȭ ̎ȈȈ ̄ȏČ̈̀̌ Ḧ,̈HČHLȈȈH ̈H ̈HȈČH ̈ȈḦ̌,Ȁ Ȁ   ,΢,,̂Ȉ,舨̈ȞȈ@ ̀  ̀Ȉ̬̀B̪ȏ ȏČ ̀ ꂠ̈̌LH ̌ ̈H (LȞĄb̢.̄̌ꏎ̌΢,興̌̌Č`ȏBH ̈HȈḦȞČaHȈH ̈ȈḦȈH ̈ Č( (  * ̈,ȈḦHĄČČ̌̄ČČ̈̌Ȁ  ,Ȉ,Ꮟ̂ ̢̀.b̈ ̀̌  (̈, ,Ꮘ̌ ̬̀B⪏.,,Č̈ ̈̀Ȟ̬ Ȭ*,Ȟ ȈH B ̄̌ ̈̌ČČ̀̈,Ȉ̌ ČH ̈Ḧ ̈H ̈Ȉ̀Ȉ̌Lʈ(̈ . (̈Č̈̀̌ ,b̀Ȁ Ȍb,,,΢,H ̌̌b,,Ȟ ,H B* Ḧ̈̌ČHČḦH Ȉ̀ *( Ȉ̠.쌈 ̈̎ ̀̌H (̈̈̀ ( ̈̈̀ H (̈̀ ̀ ̌̈̌̈( ̈.ȈȌ̌ ƌ`*ਂ(̌ * . H  ਂ*HČ*̌b ,Ȁ ΢,,* *@̌ ƌ̀ *.⨂  ̀ȈĀȈ̀((̈Ȉ 03(̈Ḧ ̬*̈,̌̌* ̌ḦH ȈH ̈H ̌Č̌Č̀Č̈̌Ȁ ̈,̢.b,Ꮟ  ,,  *.* *̀ ̀* ό ȏ?RSRC LVINLBVW* tD@ <r@Pf - ُ B~]| X{ LVIN Simple Hit.viLVIN Strike Key.vi @InitHitCloseTaskL@@2@P@ cts/tick@ Vel/PWM dir Velocity SpecVelocity array@@P @!status @code@0sourceerror in (no error)D@@0P@@@ Position dataHit Data6@P @!status @code@0source error outPTH0 Strike Key.viMLVINSetup Board.virP 6@P @!status @code@0source error out"@@ Waveform Graph@@P @!status @code@0sourceerror in (no error)@ scan rate(@ Init BoardStartReadClearTaskPTH0DAQ.llbSetup Board.vi Pj c$ cb P@@@2@P@cts/tick@ Vel/PWM dir Velocity Spec P P" P@@ cP"@P@flg@oRt@eofudfLP@2@P@cts/tick@ Vel/PWM dir Velocity SpecVelocity arrayp@PdfdP@PtxdP@PoldP@Pext P cTP"@P@flg@oRt@eofudf P# HitsxdfdPtxdPoldPext P    P @vP0@PP@P!!!!l@bP0   !!!    $@P0!!!B@8PP cVP"@P@flg@oRt@eofudfP scan ratep dfdP txdP oldP extb P         @P b P         @P P"@P@flg@oRt@eofudf"P@ Waveform Graphx@ dfdP@ txdP@ oldP@ ext`InitHitCloseTask" P@@" P@@hInitHitCloseTask(` Init BoardStartReadClearTask`InitHitCloseTask" P@@" P@@`milliseconds to wait(` Init BoardStartReadClearTask" P@@(h Init BoardStartReadClearTask" P@@(` Init BoardStartReadClearTask" P@@ c c$ c, cPL@@2@P@cts/tick@ Vel/PWM dir Velocity SpecVelocity array@InitHitCloseTask cL@@2@P@ cts/tick@ Vel/PWM dir Velocity SpecVelocity arrayD@@0P@@@ Position dataHit Data(@ Init BoardStartReadClearTask c@ scan rate"@@ Waveform Graph@ scan rate c@milliseconds to wait cD@@0P@@@ Position dataHit Data6@P @!status @code@0source error out c"@@ Waveform Graph@ scan rate@InitHitCloseTask6@P @!status @code@0source error out cL@@2@P@ cts/tick@ Vel/PWM dir Velocity SpecVelocity array&"@@ Waveform Graph(@ Init BoardStartReadClearTask6@P @!status @code@0source error out c(@ Init BoardStartReadClearTask@InitHitCloseTask@ scan rate"@@ Waveform Graph6@P @!status @code@0source error out cL@@2@P@ cts/tick@ Vel/PWM dir Velocity SpecVelocity array@@P @!status @code@0sourceerror in (no error) c(@ Init BoardStartReadClearTaskD@@0P@@@ Position dataHit Data@ scan rate @# Hits c cL c cT c cL c cT c cL c cL c cT c< c  c c\Z6 r@Plot 0 BTime Amplitudef3u`af37zbG@@È@@@o@?dP333334?333334333334?ə??r\ $08  \@* @, @ X     \@@ 6  \@    8 6 @ VIDS Simple Hit.viVIDS Strike Key.viTL@PTH0VIDSSetup Board.viXPHDPTH0i386 [code ^2E{D[E`ETPUEd$=t1= ÐӀ}#t} uE(E!E"ɍdHHH Hƅ`t hhUEPɍ|ƅxƅxVW_^fx ƅ|ɍHƅƅVW`f_^SQRVWE=tEMEE =t9Et3EEQRPE$u hh d$ZY=t雋E =tEPEEXpPEEXPEEX}uP$XEEPERUQff YZXEE m}_^ZY[ÐuPd$\d$ =VWlf_^VWp_^fx&) ƅHts$hEX[E`ETH.UR@␐}zt}z&ƅfx*ƅLtsDTEX[E`ETL.UR@␐}zt}zƅfx.ElxɍHƅƅPXVWf_^fx2EtDž4Y[ QRhhhP$md$ZY:nƅx3Vu+[ QRPod$ZYÐQR&-ZYQRPQ,{Ed$ ZY=͸[ QRPQh菄d$ZY:uQRCG+d$ZYÐQR;+ZYPQRP$QJ=+d$ ZYÐQR@+d$ZYQR,<+d$ZYÐQRF+d$ZYÐ뀽:tƅfx69QRP$hhPET$ld$ZY=tÐ}zƅx7EXc[E`ETP.UR@␐}zt}ztGƅ}(u ƅ hhUEP8d$ =fx:[E`QRPET$hhPET$3kd$ZY=tÐ}zMx;ƅ|fx"Elx]SQRVWPEEXPE EXPERUQ YZXEEPERUQ YZXEEQRuhPED$Xd$ZY=t_^ZY[ÐuP$P$Ud$ =~9} ƅlfxƅpTts$tsDhEX[E`ETT.UR@␐}zt}zƅpfxƅtXts$4ts$<ts<TEX&[E`ETX.UR@␐}zt}ztƅtfxY}#t}"uH}!v}/uvQRPED$L`d$ZY==t p h搐ÐE{ [E`ETPUEd$=t=t=t=tE{ E{‰ppVLFX@'PUEd$=uÐT* [T* H1[TR0%@P rtB4-V A0 wh :Vdt8p 4h -;bv-;bv-;bv0 Wt +Y p 4h 0-;cu-;cu-;cu0 Ut Vdt<S`t"ZD 0 st ZǦ0 7P &^@Ǧ0 P "ZDdt 4 NP Z 34 F  +^;0%4 2 -<,3L :  -<0u0/.-@PP(^@`A|(ld0  )@dtPWP&>@(0 P D 4 N (1%p 4  0(4cu(4cu(4cup 4  4@bv4@bv4@bv< 2 +:P3`I2p 4 0&2cu&2Լcu&2Ԗcu0  '>dt0  t4 J +:)$3 | p 4 2>bv2>Լbv2>Ԗbv@ P A3gt \+@ |(  L , 4 F  A>P]l1%0   P>gtdt4  2  TBcpl30  H* $p 6  0O3[?cuO3[?cuO3[?cup 2  [3g?bv[3g?bv[3g?bvL :  TBcH0u0/.- | |$@ P+t ND , Lhp ^qĮ"i|SP2<@ : L!wvbvboi (SGL) scan rate: the number of scans per second to acquire. This is equivalent to the sampling rate per channel. The default input is 1000 scans/sec.0  2tᳳ4 F  1`(0%4  2 4rⳳx3L :  4:00/.-@ 6  A+2phphll@ 2  +2oioikm0 xO  04d4 F  *~`F%0 C i>@ : J!frfr]{0 k ! i>@ : K!njnjgq0 2(u!z" 0@O`4 0u`a u`a4 6y/lF%@O@4 7zb`$Hzb 0 2-ux 4 3^hF%0 2-_b 4 3^78FpF%4 6K]tF%0 2(]b 0  "i>4 $ o@%0 T 0   ctRⳳ, ,  < P|` BDHP Simple Hit.viLVIN Strike Key.vi xPTH0LVINSetup Board.vi, &D$PTH0Pt BDHPDT28PlPlPs~ ^2Cx]2[2T2EOl2,N|B C,0N@8( PK[Ot$  H t!@18բ@2,0LP,(4 @0P!  <4 KsՂ,1%,<\,43(Ւݎ43`Պ݆43՚ݖ\< d< \43ݢ, 43բݞ ,43 &L\ |434 JP Yh 0%PWPhy |APW~X A &0h4 1;<Q \,4h4 J o~1%<  2 0%M2@ 2O XXY4 j Ϗp1%0 3 ~0 3   @ <, 4 #4 12pP #4 2T7P4/ D8P@'8/L 0@` 0@8 4 B !00%@@1/""\HKhn2 @1hzT&h243 x 04 47P PT ?E[FV/   " H , P t0>@0$ P 4 0 ,  H x @ PL  x @ H  0& P EUM4' PXtth  H p$!,0L' @ P t!4 jP j"y+3 @ 2PO ixXXY @ P$! @00 3P  mt  @ P` <  2P ix1%HR20" 3P hy ,"(l, "4"3"(@"1/d8 L24" Kt>0% #l4#3#l # @4#3 #2H(4#34#3 # #4#3 # #CL@4#3 # #|4#/9|##,4#" P H)ENI@#P0y  2A## ج#&,#0P 4# K xkz<1%$ $ x4$3 x dz~ $ x 0 $ x p!4$3 x"$P $ x4$3 x!$ $ x@ 4$3 xt$z$ $ x"&'80'8-$40 B$6dF%41 J' _nE%2$P2Wn$DMA42+/LA^%2+2-$42 j' pE%@3 2'O o~XXY03 3'  sz43 J R a&T1%<4  2' o~E%g2@6 2O bq%XXY463 $G’Ҍ 6 1(+0463 Fœҗ6-46 j c(r1d1%07 3 ar&07 3  fm,7 (;47 %<07 3' n473 $0H¡47 K&n}$z38`I8 8&:,,8 xt ; 8 &X-- 8&>;-$80 483&$pW}Έނ483&$XΗ483 *lI— 8 .-483 .PJŒ8-8;>p81(H8LMkM8CL8) <483&UΝޗ08*/L3, 801(0h 8@/L p0h8;648/%.P08*/L3-<E@ 801\C 8@/L 1\C8 /8t008*/L3.Xa\ 802281H8 p824(48/2:(Q,8/LOGOd 8/3 8B3p0h083N 8B3pJ,1\C8131803P08244/ 8B3p248/34q38484844 84454 8445848CE480444h/q#3+480444|0q#8K~nKn 8@@/L> 9L68483&DVΒލ8 O@O8 O08 3<  ip8 08* /L"@P8p p82\483&&DY΍483&(|Z}΂8\IRR 8" H> ?`48 J< UdA%,901/6,901\29L49 j< fuA%P:W&du' ]A<:  2< et@%Q2@< 2l ,<>  pH<> 4<'XA < @ P??`,< h>,<#0LR?`4<"  P.dQ?4<>4<?? p<?qqJ<"<>lww<BC<Dd<!h<F ,<, P x&<vv <B0C(H@<E<(HL< ">?+@&L`  <<<%]0_ <@3pIH(H@ <D$J,EpC4</|MP<C3@<13DDP>n2 <D$O0DDd4< KD$uE%(=CDdF EFF`4=3D$AC˙۔\=4=3D$/8Dˤ۞ =D$IHE@4=3D$CA˞=F =D$F,F 4=3D$ABˏۉ =D$IFF`4=3D$F?ˉ=F` =D$IF64=3D$E@˔=GxF`,=3pGd=G8=Gx =@3pIG8GxP=WG8pH 2GO qـXXY4> jG rp34`2>\2>@~2?8^2 ?]2 ?[2 @,d2 @TN2 @e2A,hd2Axe2AP2B$N2Bxd\2BԘS2C n2Ctg2CZ2D((T2D|\ 2DT2EZ2 E`Hf2"EO2#Ehq2$FX0P2%FW2'G e2(GXTh2*GM2+GXW2,H<~2-HLh2.HL2/ILx20I21Ig22JDf23J[24J\26K8~27K28Kl29L02:L$2M|2?M|2ANx2Nh2NxU2!Nd2&Na2)Nd25Oi2;O02@O\`n2O@f2OX2O8f2Og2O f2O{2e2fDM24]2p2 Simple Hit.vi++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++99ݽwp1 1`p     PIC STEP-SetStatusByte.viPICSTEP-Define Trajectory.viPIC-Init STEP.vi Setup STEP.vi RS232VIEW.viPIC STEP tester.vi AllThings.viY.Z=?k/#?^k""'?*?ȯAϫ*ꪪꪪꫪꫪꪪꪪꪪꪪjꪪꫪ꿫着꿫ꪪ 0H*?0" ?:z F`#  ࡁxhïpp00<  (""#0#33#0@ 331#2@#332#0@03"3??<^?񘘙z?몪_ P>|?0~ À?? ZEπWA߇辪*€A"?ꫪ* ŽD 8H H ĠĠĠĠ   D HĠ ?H D H ?HĠ HĠ ?İ İ D H @  @ @  @ @ @ @ @ @    Hİ H ?H İ Ŀ H İĿH DH ?H    H nH@  HĿH H   ??*(>#?*(># ?>x ?>x?2<Ȭ ̌ r, ̈,,L̀ĀbH , ,fjfjf,NNN,NNN,fjfjf,fjfjfH b, $b浪NNb$NN ,fjfjf,̂o&fjfjȈ$fjfjf$NNN,NNN ,b<Ȍ̂̢ b, Œ.b.̂ Œ.,b.b, (̈,..,,̂΢,,΢, (̈, (̈,΢,,,̂ Œb,b..., (̈,΢,,,,̂ Œb,b..̂. (̈,΢,,,̂̃.  ,΢h<̈,<(,,, Ȍ̢.̂ ,,⏈΀ Œ΂/΀ Œ΂/ (̀̂ƀ O(̈,h 8̈,̂΀ Ì̢, 8̈,̂΀ Œ΂/,΂ (̈,菈΀ Œ΂/ (̈ (̈,⏈΀ Œ΂,菈΀ ŒN (̈,菈Ā ,fof (̈, ̂ Ā ,Ȭ<Ȍ̢̪̂ ΀ , ̂.΀ ,, ̂.c ,ŒΣ΢,,Ȉ,,,, Ȍ̢̂ ̢,,, bofồ ,,,,,,H bbB,쯃̌bbB,̢̂,,:̈̀̀Ľ̢ ̂b,̈ b,΢, (̈,Ȉ., .b,̂̂À̀̈,̢̂̈̌̀,b (̌, b..., b,b,̂̂,̂b,.. < (̈b,,̢h,,  ,, ,,̈,@ ,̌ ,̈̌̈,,,̌̈̌̈̌L̈,̌ , ,,̌̈,̀̈,̀ ,̀ ̌,  ,̀ ̀̈,̌̈,̌ ,̀ ,̀ ,̀ $̀ , ,,̈,L ,̌ , ,,̌ ,̀#<!2! Ϗ̌(B̀Č̈̌b,,΢ (̈,興 ̌ Έ,Έ (̈(̈ B̻ˈ̈,  ̚ʈ̀ Ȟ ,̎ ΢( ̈( ̈̈̌ H ̈ . .  .⨂  / ̌̌ ̌  .  *̀ 3 Ȁ  Έ,  ̎  ̌Č̌ ̌̌   .興̈̀*.興̀ ̈̌ Ȉ̈ ̈̈̀Ȍh€΢,.,Ȟ̌̈̀  < ̌ ̈̌̌Ą̌ČȈBȞ ̈̀,̌Ȟ ̈Č̌ČČ̌ , ,̌HȈ̈HȈ ̈HȈ ̈HȈ̈HȈ ̈HȈ ̈Ȉ̈HȈ ̈HȈ ̈Ȉ̈̀̌ ̈̀Ȉ̀,̌̌HČČ̌ČČ ̀ ȈB̌̀Ȉ̌HȈ ČȈHȈ ̀Č퀈Ȁ *hhhXXXȏȏRSRC LVINLBVW# V #D@ < 톂Hc|X ُ B~Nbs~ LVIN Strike Key.viLVCCStatus Items.ctl@7<Status Items.ctlh@P@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsPTH03 JRKerrDriversV1.llbStatus Items.ctlLVCC gains.ctlL gains.ctl@P @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsPTH0, JRKerrDriversV1.llb gains.ctlLVINPIC-Init Servo.vi^X @ @ @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)$@ PIC-ServoPIC-Step Interface@ port number@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsPTH04 JRKerrDriversV1.llbPIC-Init Servo.viLVINPIC-Set Baud Rate.vi P 6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ Baud RatePTH07 JRKerrDriversV1.llbPIC-Set Baud Rate.viCLVINPIC-Set Gains.viP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsPTH03 JRKerrDriversV1.llbPIC-Set Gains.viLVINPIC-Close Servo.viLP 6@P @!status @code@0source error out@@P @!status @code@0sourceerror in (no error)PTH05 JRKerrDriversV1.llbPIC-Close Servo.viLVIN The Hit.vi r @Hit type@@P @!status @code@0sourceerror in (no error)N@@:P&@@millisecond timer value@XY Graph6@P @!status @code@0source error outPTH0 Piano.llb The Hit.vid   @InitHitCloseTask@@P @!status @code@0sourceerror in (no error)@Hit typeN@@:P&@@millisecond timer value@Hit Data6@P @!status @code@0source error outP; c8 P+ cP"@P@flg@oRt@eofudfP7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items?@BCEFHIKLMOPRSUVXY[\]_`bcefgijlmoprstvwyz|}vsqŏƏȏzˏ̏ΏϋяҏԏՇ֏؏zی܏ޏ{vy    pr "#$|&')*,-.0 B Positionȓ 6XTJSRPQQ Q!Q#Q$Q&Q'Q)Q*Q,Q-Q/Q0Q2Q3Q5Q6Q8Q9Q;Q<Q>Q?Q@QBQCQEQFQHQIQKQLQMQOQPQRQSQUQVQXQYQ[Q\Q]Q_Q`QbQcQeQfQgQiQjQlQmQoQpQrQsQtQvQwQyQzQ|Q}QQQQQQQQQQQQQQQQQQQQQQO/‘ÑőƑȑɑˑ̑ΑϑёґԑՑّ֑ؑۑܑޑߑ     "#$&')*,-.0 B Test@^{|78` @o@@|@yTimecounts per tick (x2^16)e>Lj @y@i@I?bS-9FR_kw(4BN[ht !-9EQ^jw ,9EQ]iu+7CP\ht &3?KXdo{ %2?KWdp|'4@LXdp|&2>JWco{    % 2 > J V b o {  2[ɋ8>5"o \H~ R-9FR_kw(4BN[ht !-9EQ^jw ,9EQ]iu+7CP\ht &3?KXdo{ %2?KWdp|'4@LXdp|&2>JWco{    % 2 > J V b o { (v4 @@@@Y?0\ mj(\h (; P ~ \n  `   nVIDS Strike Key.vipi386`%~code0\QRhUud$ZY_^ZY[]ÐUl$SQRVWt$$|$(aSQRVWE=tEMEE =t9Et8EEEQRPE$u PZ $+od$ ZY=tڋE =tEPEEX騐PEEXPEEXQRhhuhPE苉D$Xhnd$ZY=tcEEQRhhuhPE苉D$Xh_nd$ZY=tEEm}Z_^ZY[ÐuP$P$d$ _^ZY[]ÐUl$SQRVWu%~F@3'~FDQRhUcjd$ZY_^ZY[]ÐF@FDQRhUL)5}`%~CODE0D@\%6.1Oldest compatible LabVIEW.0HBDDpPPvP@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsN@@:P&@@millisecond timer value@Hit Data@InitHitCloseTask6@P @!status @code@0source error out@@P @!status @code@0sourceerror in (no error)@Hit type99ݽwp1 10pPpDTHPDh88ho~x@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsjZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID @L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband Comp$@Position Gain (Kp)$@Velocity Gain (Kd)$@Position Gain (Ki)(@Integration Limit (IL)&@Output Limit (OL)$@Current Limit (CL).@Position Error Limit (EL)(@Servo rate divisor (SR)&@Amp Deadband CompF6@P @!status @code@0source error out^N@@:P&@@millisecond timer value@XY Graph@ Baud RateL@@P @!status @code@0sourceerror in (no error)@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info$P 6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ Baud Rate P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsP 6@P @!status @code@0source error out@@P @!status @code@0sourceerror in (no error)@Hit type @0source @code @!status(@InitHitCloseTask@ port number0$@ PIC-ServoPIC-Step Interface^N@@:P&@@millisecond timer value@Hit Data!0*P0!!!0$@P0!!!&P!!!! r @Hit type@@P @!status @code@0sourceerror in (no error)N@@:P&@@millisecond timer value@XY Graph6@P @!status @code@0source error outpd@ZP0   !!!jZP0   !!!(@millisecond timer value*@milliseconds to wait΃X @ @ @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)$@ PIC-ServoPIC-Step Interface@ port number@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items{p,Hd8\(  hh(DtLhpt\ XDY{fY|f Status ItemsN TDrrPositionUD A/D ValueTDVelocityTDAux byteTDӯƀӯHome posUDۀہ Device IDQDP]P]GainsLDP]P]^DivOivOPosition Gain (Kp)H`-j`wjawH,`a^DOOVelocity Gain (Kd)^DOOPosition Gain (Ki)H+`abDOOIntegration Limit (IL)H+`a]DOOOutput Limit (OL)H*`a^DOOCurrent Limit (CL)H]`aeDOOPosition Error Limit (EL)H`^`acD)O)OServo rate divisor (SR)Hp^`*a*]D6CO6COAmp Deadband CompH^7`D7aDTD9F9F Hit DataH^H^H^H^H^%Q&QH^H_H _9V:VHD^[\H__|`|H_H$_H,_H4_H<_::HD_C`D`HL_ijH^HD^PD$yyTimeHD$^jwjwc D$counts per tick (x2^16)HD^kxkxUGTGT Pos ErrorUD error outRD$  statusH$_  PD33codeH_%\&\RD'4'4sourceH_;c\;HK_D$z%zerror in (no error)RD$(G)GstatusH$_/606PDVnWncodeH_ ` aRD#)0J#*0JsourceH_7-_7.DPDdq1dq1TaskHd_vvvwH`_wpwpTD@@Hit typeH_H$_ttHDT.RS HD^UD Baud RateHD<`HDD`HDT_}~HDt_ HDl_TIa`TJa`HD_/0UETpaTqa Default HD_;b<bHD`_l`l`Dmmmilliseconds to wait`D?>PIC-Set Baud Rate.vi\DPIC-Set Gains.viVDce The Hit.vi^D%'PIC-Close Servo.vi]DxzPIC-Init Servo.vi ei e&g& qq InitHitCloseLightMediumHard96001920057600115200ZPNG  IHDRZmIDATx F̞2F(NuB[4y4 D^R1s3tx aD۵P!\ec?6X/2p4vn}Ka+jIENDB`TPNG  IHDRZsIDATx @MN:@T)-="T!}oED_Θy"P-5\Kj@, Oi߬XQ#^i+}`4`1۸! IENDB`ZPNG  IHDRZmIDATx F̞2F(NuB[4y4 D^R1s3tx aD۵P!\ec?6X/2p4vn}Ka+jIENDB`TPNG  IHDRZsIDATx @MN:@T)-="T!}oED_Θy"P-5\Kj@, Oi߬XQ#^i+}`4`1۸! IENDB`FPHP Strike Key.viLVCCStatus Items.ctlPTH0LVCC gains.ctl 4 FL P4 2L _p 4L 0P\cuP\cuP\cup 4 P\bvP\bvP\bvL : _e0u0/.-0 L [dt@PB ]@AA4 FP P4 2P _p 4P 0P\cuP\cuP\cup 4L P\bvP\bvP\bvL :L _e0u0/.-0 P [dt@P ]AD4 FT P4 2T _p 4T 0P \cuP \cuP \cup 4T  P\bv P\bv P\bvp 4P P\bvP\bvP\bvL :P _e0u0/.-0 T [dt@P /^AJ4 F *P4 2 _+p 4 0P#\cuP#\cuP#\cup 4 #P/\bv#P/\bv#P/\bv0  [/dtL :T _e0u0/.-@PB 1I^|AM4 F 5DP4 2 6_Ep 4 01P=\cu1P=\cu1P=\cup 4 =PI\bv=PI\bv=PI\bvL : 6_Ee0u0/.-0  2[Idt0` ` <\L : _+e0u0/.-p^q?8_k:?<4 F!L 8GD4 v" HR!LN cXj#0 w" dt@P~"$B4clA0 _"$ p 0" 4bvbvbv0 W"$ ><Sp$"$c,/123@4|,/4|3@214/O0b$^p/ 1泳??????4/O0bx]p/ 2泳??????4/O0 b\p/ 3@ 泳  ??????/ 00.μ.μ*μ.μ*4/O0 c [p/ 4| 泳  ??????H/R!LO q_Z7r@/P~5 B4`YA4/ v5h p0 05h 4bvbvbvp0 05h 8@cucucu,08=9;00|00 w5h dt00 _5  00 w5  e00 W5 q><0Sp$5 eZ\X68X00 77 c00 7 e,0;09=840Q7!]lW40 68 01 8 !dt@1 4=Vlldd9>KKll9>ddll1 97M*7M.7M*7M.7M*41O7McaDT1 ;0Mc.Mc.Mc*Mc.Mc*01 C!L DE>@1 4!LJ!(41O7!7`V01 2@(ej02 2@-e&h'43 3@^x44 6@ix@5O@4!LLj>XLj 5>x>>? 05 2>(qr06 2>-47 3>^48 6>jy09 !L Rd2ⳳ09 !L II>49 $!LFU0:`6S!L (@:O`4!L0e>@D ^ex> :=P===:|0:`@dJA0 <:S`HleklAF@C:CE|G0: 7@ hadzP:W@xcskH@" .( @:The error out cluster passes error or warning information out of a VI to be used by other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.0: @ ledt4: F@ T4; GC  \<GE|C4The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4> FE| 4d4? 2E|  $]`@ C  A B A B@BPC@ al4FTE@0 bpB 8E| 0cucucuB|xB|@BThe code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.LB 2E|  $0܈0/.-0B E|   adt4BQ@&halHDpB 8E|  bv bv bv4B FG &5l4C 2G :d]h0D G 6hadt0D`F,C@P ~DThe source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.D4nperror in cluster can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. H J-A-AI-AJ-AI-AJJThe code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.JThe status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.pJ 4K 0JVcuJVcuJVcupJ 4K JVbvJVbvJVbvLJ 2K  Y_0܈0/.-0J K Udt4JQI"(dn`R ?4J FK Uo4K 2K  _|4L FP "(1K4M 2P 6,`0N P 2(ddt0N`F@>I `NThe source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4N FA0 cr2P0O A0 tsᳳ4O JA0 uuⳳL

?@?p^8Vh5 B,V5h7,7\7_d8Vh5hB,V556L6_8Vh8B8Vh=BV99\`d8Vh9BV:(:`8Vh;0BV;da 8Vh0B8Vh7BV1@1pa`8Vh1BV2,a8Vh2BV2b@8Vh3@BV3tb8Vh4|BV4bV%$$c,V""##|e88Vh"B,V!# $"lc8Vh#B8Vh&hBV%Td 8Vh%BV%dt8Vh'BV&dV' ep8Vh"$B8Vh&B8Vh'PBV('e8Vh'BV(4(he8Vh(BV*T) fP8Vh)BDHP Strike Key.viLVINPIC-Init Servo.vi/XPTH0LVINPIC-Set Baud Rate.vi!PTH0LVINPIC-Set Gains.vi"PTH0LVINPIC-Close Servo.vi,PTH0LVIN The Hit.vi&,PTH04 BDHPl488444 ,V, H0VDX0V@ 0Qqa4V BQC0W@ ,44W BCX p,X*" X X@ x4X J C@Y 2O XXY4Y j _@ X_,DSY{h T, 4_/ 0P4_ B@.C,`22 D,`t0`Lt0`.Ifrl `B00`xH<`$1P 4Sob aB ph aB $0 a@@l04aDp P aB $ ph,a x D 80a-lK a@@ ph\a|a >>pa|&&4aL" lPHa 84aL% Q\a 4aL2 P4aL"<4aL3H3dPHa DaljXllX,a.. aLx aB< ph0aL,a $ ,a8 aB<0 aB<h,a   Ьa,,a|<<aP4axLP ,a(*p a\apa x0a@LVl:ZJ4a B:cC4b/< bLJj,bx@,b@xLb)x@6,b+* b $0b,b $bb8~~ b\ 0b*`u b@\ b4b+|P0b*Dv bh b $4b+0P,bLh8,b<,\b|| b@ bPHb\bjjHbh~b,b@0 b bB\ 0b$ bB b$,Pb<4b/vbbb b|L b|\b|4b0|w4b0|xv~@bP]n&zA4b  2 ^m 4c J nCLd : Y_00/.-0d 3 ]n,dxyHJ d@\d$d|4d d\dd\e~d~D0؅`./# lynd d!"8dhB,dX<(d D !#"<4d3!! 4d3! 0  d D d!$@4d3! d d! d$4d3!! d! d! 8 ,4d3!!h d#d"n ?nd @nD"CoX Do\\Eo Fp d Hpd| Kp(Lq)MqP)Nq(Oq(PrH )Rr`SrTs8|VslWslXtYth(Ztĸ\u]u\$^u_u`v@kavbvcw4dw ewfxHgx hy, iyh 2y4&3y"6y "7y =z 8 Gz)Qz$x)Uz<[zXAzx B{X I|

gy=~'|gg{<'<=Ogeg{<'<=Og?yϞ?yOy<{g?yϞ?yOy<{g?,?{8>><<~><<~>><<~>><<~><<<>3O<>ϳ<<~><<<>?<σ>>?<σ><<<>?<σ>><<~><<<>?<σ>>?<σ>><<~>3O<<?𨪪?@`?@@@@@ ?? ZA ÀWǀUÀWWÀ zUÀWU/W zU? zU? ZU Z ̌̌̌̌̌̌̌̌ Ȭ    Ƞ ࠎ   ?  ࠊࠊ ࠎ  #2<#<?22#<!#!<#<# < ̎H ̪̈H ̈̌B̌ȈH ̈ ̌ ȈH ȈH ̈ȈH ̈H ̈H ȈH ̈ČȈH ̈Č,,̌ȈB̈H ̈̌H ̈HČHȈ ̈Č̌HȈ̈LH ̈,̪̌H ̈̈H ̈B̌H ̈H ̌̌ȈČȈH ČH BĽȈB̈̌H ̈̌ČȈČBHB̈H ̈̌̈ȈȈH ̈Ȭ B̈H ̈̌H ̈ ̌H ȈH ̈ȈH ̈ ̈H ȈH H ̈Ȭ B̈̌H ̈ ̌Č@ȈČ̌H ȈḦȬ쀈̌NB,̌̌ȈH ̈̌DB̈H ̈ȈH ̈ČH ̈ČȈȈČL̈̌ČH ̈HȈH ̈ČH ̈HȈČH ̈ȈȈ ̈HȈH ̈HĄ̌ČȈČČH ̈ȈHȈ ̈ȈH ̈H LHHHČȈH ̈ȈH ̈H ̈HȈȞȈH ̈HȈČČH ̈ČČȈČDDDLDD@D333333333̪H,̈ ̈̌ L ̈ Č̌ ̈H Ȉ ̈ČČȈȈ,̈ ̈̌ ̈ ̈Č̌ ̈HȈ ̈ČČB̈̌ȈȈ ̈ ̈HȈ@Č ̈L̀ČRSRC LVINLBVW<y D@ <L3M9,~K ُ B~UCӦtD2LVIN AllThings.viLVINPIC-Init Servo.vi^X @ @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)$@ PIC-ServoPIC-Step Interface@ port number@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsPTH04 JRKerrDriversV1.llbPIC-Init Servo.viLVINPIC-Close Servo.viRP 6@P @!status @code@0source error out@@P @!status @code@0sourceerror in (no error)@ port numberPTH05 JRKerrDriversV1.llbPIC-Close Servo.viLVINPIC-Init STEP.viX   @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@P @1x2x4x8x Speed Mode@ Min Speed@ Run Current@ Hold Current@ Thermal Limit@!Output 1@!Output 2@!Output 3@!Output 4@!Output 5@! Ignore Limits@! Ignore E-Stop@! Off on E-Stop Parametersp@P@!Position@! A/D Value@!Timer init cnt@! inputs byte@!Home pos@! Device ID Status ItemsPTH03 JRKerrDriversV1.llbPIC-Init STEP.viLVINPIC STEP-SetStatusByte.viM  @P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info6@P @!status @code@0source error out@ port number @Taskp@P@!Position@! A/D Value@!Timer init cnt@! inputs byte@!Home pos@! Device ID Status Items@@P @!status @code@0sourceerror in (no error)PTH0< JRKerrDriversV1.llbPIC STEP-SetStatusByte.viLVINPICSTEP-Define Trajectory.vi]P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@P@Position@Velocity@ Acceleration@initial timer count@ Direction@Run mode@ Profiled Mode@! Start Motion?Trajectory ParametersPTH0? JRKerrDriversV1.llbPICSTEP-Define Trajectory.visLVIN Setup STEP.viP  @@P @!status @code@0sourceerror in (no error)@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte6@P @!status @code@0source error out@ port number@P @1x2x4x8x Speed Mode@ Min Speed@ Run Current@ Hold Current@ Thermal Limit@!Output 1@!Output 2@!Output 3@!Output 4@!Output 5@! Ignore Limits@! Ignore E-Stop@! Off on E-Stop ParametersPTH00 JRKerrDriversV1.llb Setup STEP.viLVINPIC-Reset Position.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH08 JRKerrDriversV1.llbPIC-Reset Position.viLVINPIC-Set Gains.viP   6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsPTH03 JRKerrDriversV1.llbPIC-Set Gains.viiLVINPIC-No Operation.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH06 JRKerrDriversV1.llbPIC-No Operation.viLVINPIC-SetStatusByte.viT  @)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info6@P @!status @code@0source error out@ port number @Task@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@@P @!status @code@0sourceerror in (no error)PTH07 JRKerrDriversV1.llbPIC-SetStatusByte.vitLVINPIC-Clear Sticky Bits.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH0; JRKerrDriversV1.llbPIC-Clear Sticky Bits.vieLVINPIC-Set Home.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH02 JRKerrDriversV1.llbPIC-Set Home.viLVINPIC-Go Home.viP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number @ModePTH01 JRKerrDriversV1.llbPIC-Go Home.viLVINPIC-Define Trajectory.vidP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory ParametersPTH0; JRKerrDriversV1.llbPIC-Define Trajectory.viLVINPIC-Start Motor.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH05 JRKerrDriversV1.llbPIC-Start Motor.visLVINPIC-Stop Motor.viX   6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@! Kill Amp?@ port number@ Stop StylePTH04 JRKerrDriversV1.llbPIC-Stop Motor.viLVINPIC-Set Baud Rate.viP 6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@ Baud RatePTH07 JRKerrDriversV1.llbPIC-Set Baud Rate.vimLVINPIC-Hard Reset.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH04 JRKerrDriversV1.llbPIC-Hard Reset.vi+Z+ZP c8 P+ c c$ c0 cH6@P @!status @code@0source error out c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@@P @!status @code@0sourceerror in (no error) c@ port number c@@P @!status @code@0sourceerror in (no error) c@ port number c@@P @!status @code@0sourceerror in (no error) c@ port number@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@@P @!status @code@0sourceerror in (no error) c@ port number c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @ port number@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error) c @)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items @Task@ port number@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @Mode c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte6@P @!status @code@0source error out c@ port number@ Stop Style c@@P @!status @code@0sourceerror in (no error) c@ port number c@@P @!status @code@0sourceerror in (no error) c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@ Baud Rate c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @! Kill Amp?@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory Parameters c @@P @!status @code@0sourceerror in (no error) c@ port number@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error) c @  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@@P @!status @code@0sourceerror in (no error) c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @ port number@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGains c@P @1x2x4x8x Speed Mode@ Min Speed@ Run Current@ Hold Current@ Thermal Limit@!Output 1@!Output 2@!Output 3@!Output 4@!Output 5@! Ignore Limits@! Ignore E-Stop@! Off on E-Stop Parameters cp@P@!Position@! A/D Value@!Timer init cnt@! inputs byte@!Home pos@! Device ID Status Items c@ port number c@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte c@@P @!status @code@0sourceerror in (no error) c@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Infop@P@!Position@! A/D Value@!Timer init cnt@! inputs byte@!Home pos@! Device ID Status Items c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c  @Task c@ port number c6@P @!status @code@0source error out c$@ PIC-ServoPIC-Step Interface c@ port number@@P @!status @code@0sourceerror in (no error) c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items c6@P @!status @code@0source error out c@ port number c@@P @!status @code@0sourceerror in (no error) c@@P @!status @code@0sourceerror in (no error) c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @@P @!status @code@0sourceerror in (no error) c6@P @!status @code@0source error out c@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@ port number c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c @  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c@ port number@@P @!status @code@0sourceerror in (no error)@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte c@ port number c@P @1x2x4x8x Speed Mode@ Min Speed@ Run Current@ Hold Current@ Thermal Limit@!Output 1@!Output 2@!Output 3@!Output 4@!Output 5@! Ignore Limits@! Ignore E-Stop@! Off on E-Stop Parameters c@ port number c@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte c@P@Position@Velocity@ Acceleration@initial timer count@ Direction@Run mode@ Profiled Mode@! Start Motion?Trajectory Parameters@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@@P @!status @code@0sourceerror in (no error) c@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c cL c cL c cT c cL c cL c cL c cL c cL c c\ c cL c cL c cL c cL c cL c c\ c cT c cL c cT cP cL+F ZYr<+P^VIDS AllThings.viVIDS Setup STEP.viPPTH0VIDSPICSTEP-Define Trajectory.viLPTH0VIDSPIC-Stop Motor.vixPTH0VIDSPIC-Start Motor.vitPTH0VIDSPIC-SetStatusByte.vi`PTH0VIDSPIC-Set Home.vihPTH0VIDSPIC-Set Gains.viXPTH0VIDSPIC-Set Baud Rate.vi|PTH0VIDSPIC-Reset Position.viTPTH0VIDSPIC-No Operation.vi\PTH0VIDSPIC-Init STEP.viDPTH0VIDSPIC-Init Servo.vid$ZY=tÐƅ|x/dts$Tts, ts4$ts<ftz~d.UR@␐ttƅ|fx2gQRP$hhPEP$.d$ZY=tÐƅx3Bhts$Tts, ts4$ts<`vuz~h.UR@␐ttƅfx6 QRP$hhPEP$d$ZY=tÐBƅx7 lts$T4ts, <ts4$Dts<LtsDT vz~(l.UR@␐BtBtƅfx: QRP$hhPEP$d$ZY=tÐrƅx; pts$Tts, ts4$ts<tsDPwz~XLp.UR@␐rtrtƅfx>q QRPL$hhPEP$܃d$ZY=tÐƅx?L tts$Tts, ts4$ts<pxz~|t.UR@␐ttƅfxB QRP|$hhPEP$̂d$ZY=txÐƅxC xts$T<ts, Dts4$Lts<TtsD\tsLdyz~x.UR@␐ttƅfxF QRP$hhPEP$蚁d$ZY=tFÐƅxG |ts$ ts$T ts, ts4$ ts<tsD  ,{z~|.UR@␐ttƅfxJY QRP$hhPEP$hd$ZY=tÐ2ƅxK4 ts$T ts, ts4$ ts< x <|z~ .UR@␐2t2tƅfxN QRP $hhPEP$Xd$ZY=tÐ}vt)xO 48tQRU虇d$ZY}t}uH}v}+uvQRPE@$ud$ZY==t p h搐ÐEw %}z~E\EPPUEd$=t=t=t=tEw Ew‰ppVLFX@'PUEd$=uÐp}z~p @'PUEd$=uÐPM}z~P~z~^P?~z~$ 6y~z~ ~z~<5P~z~v<'z~_Cs?'11=2cz~c"d*x>` & &L ; H!!en70"!zVL"j""!!P422%2-2% @ P q %W%#D####4$p$$$$%`%%%&P&&&'CODE D4%6.1Oldest compatible LabVIEW.T,d,`d pPPP99ݽwp1 1`p     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.tDTHPDq88.l.s~,LF6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status ByteL@@P @!status @code@0sourceerror in (no error)0$@ PIC-ServoPIC-Step Interface@ port number@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items΃X @ @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)$@ PIC-ServoPIC-Step Interface@ port number@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsP 6@P @!status @code@0source error out@@P @!status @code@0sourceerror in (no error)@ port number@! Kill Amp?F6X   6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@! Kill Amp?@ port number@ Stop Style@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte @Task|p@P@!Position@! A/D Value@!Timer init cnt@! inputs byte@!Home pos@! Device ID Status Items  @P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info6@P @!status @code@0source error out@ port number @Taskp@P@!Position@! A/D Value@!Timer init cnt@! inputs byte@!Home pos@! Device ID Status Items@@P @!status @code@0sourceerror in (no error)@P@Position@Velocity@ Acceleration@initial timer count@ Direction@Run mode@ Profiled Mode@! Start Motion?Trajectory ParametersȃP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@P@Position@Velocity@ Acceleration@initial timer count@ Direction@Run mode@ Profiled Mode@! Start Motion?Trajectory Parameters@ Stop Style@P @1x2x4x8x Speed Mode@ Min Speed@ Run Current@ Hold Current@ Thermal Limit@!Output 1@!Output 2@!Output 3@!Output 4@!Output 5@! Ignore Limits@! Ignore E-Stop@! Off on E-Stop Parameters*P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number @L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGains&P   6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGains*P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number  @)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info6@P @!status @code@0source error out@ port number @Task@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@@P @!status @code@0sourceerror in (no error) @Mode, P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number @Mode@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory ParametersڃP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory ParametersP  @@P @!status @code@0sourceerror in (no error)@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte6@P @!status @code@0source error out@ port number@P @1x2x4x8x Speed Mode@ Min Speed@ Run Current@ Hold Current@ Thermal Limit@!Output 1@!Output 2@!Output 3@!Output 4@!Output 5@! Ignore Limits@! Ignore E-Stop@! Off on E-Stop Parameters@ Baud Rate0$P 6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@ Baud RatezX   @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@P@! Motor Moving@! Comm error@! Amp enabled@! Power enabled@!At speed@!Vel Profile mode@!Trap profile mode @!HomingSTEP Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@P @1x2x4x8x Speed Mode@ Min Speed@ Run Current@ Hold Current@ Thermal Limit@!Output 1@!Output 2@!Output 3@!Output 4@!Output 5@! Ignore Limits@! Ignore E-Stop@! Off on E-Stop Parametersp@P@!Position@! A/D Value@!Timer init cnt@! inputs byte@!Home pos@! Device ID Status Items,$8T88t$ $8  $ 8 p8 T8 $8P$8x$8$8 T$8$8$8$8 $8T8 $#d$8&x&$8($ FPHP AllThings.viFPHPDD8~ x,U TU+mMXL8LL~`7,   ]DananPIC-Init Servo.vi`DacnaenPIC-SetStatusByte.vidDananPIC-Clear Sticky Bits.vi^DanzanyPIC-Close Servo.vi[DananPIC-Set Home.vieDan\an[PIC STEP-SetStatusByte.viZDananPIC-Go Home.vihDa@naBnPICSTEP-Define Trajectory.vidDa4na6nPIC-Define Trajectory.vi^DanlankPIC-Start Motor.viaDaMnaOnPIC-Reset Position.vi\DananPIC-Set Gains.vi]DanHanGPIC-Hard Reset.vi`DaWnaYnPIC-Set Baud Rate.vi_Dan_an^PIC-No Operation.vi\DaonaqnPIC-Init STEP.vi]Dazna|nPIC-Stop Motor.viYDanan Setup STEP.vi^BDHP AllThings.viLVINPIC-Init Servo.viPTH0LVINPIC-Close Servo.viPTH0LVINPIC-Init STEP.vi1PTH0LVINPIC STEP-SetStatusByte.vi PTH0LVINPICSTEP-Define Trajectory.viXPTH0LVIN Setup STEP.vi8PTH0LVINPIC-Reset Position.viPTH0LVINPIC-Set Gains.viPTH0LVINPIC-No Operation.vihPTH0LVINPIC-SetStatusByte.viPTH0LVINPIC-Clear Sticky Bits.viPTH0LVINPIC-Set Home.vi PTH0LVINPIC-Go Home.vi hPTH0LVINPIC-Define Trajectory.viPTH0LVINPIC-Start Motor.viPTH0LVINPIC-Stop Motor.vi5HPTH0LVINPIC-Set Baud Rate.viPTH0LVINPIC-Hard Reset.viPTH0< BDHPD(U8<<<~ 1p`U(UI Hjp,;<0  " 0pD1o<S D1"Xob `JS43`Cwz{~ (t4 K`o ,t\@t 43ďԉ |\43tozt43zĄ43,ċ D@@\  43w{ $43`ă #L  %D1to<@X!  430ows4 K`bo ,D1$o dQS4 K`o( |%`%&&x4 K`o{(8 <  \ 843L ,<4 X843 o,z  h 43h p=o zt h!L!,43h!?z !, h"! H0L"43h"8@oz t!434| 0 #L"$<#$$43xBozws~ #$43!Ez~$< #l#L43Dz~ ##43#Gobzrtj# %,$$ $\$<43#8Forzv $$43$Ibrj$43%Lz43$(Hzbrj %%`43%Mozt |%` &%% &0&43&dOz& &&x43%N43'Pozt&x  '4'43 (Tozt43 `Szۄ43 'Uˏۉ(,  ('''  '(,  (l(L43 (Wozt(L43 (Vz˄  h)(43 h)[ozt43 h)\)  h*h))(  h)P)  h* *43 h*T^ozt*43 h)]z43*c3C;+ ,** +8+43+lboCzStK+ *+ ++43+eo3zCt;+43+dz3C;43 g 0(43Thz 0(, ,,43,j -43hio z0t( -t-T43-loz t-T --43- kz  ... .d.D43/TxVf^43.0wofzvtn ..43/ yzVf^. //4.D43!}z 43/zoVzft^/4 0/4308/ 0l0L43!~oz t1 00431ozt0 1<1430z\%l l `+,&!l D12l28onDP 234 K1`noD,233 344x4 1223 4312~ 13@3 133 4312$z~4313+n~v3 13t34312,o~zt 1444314d)wn~{v4x 1404x44314*n~v4 1544314(onw~svD155oyxC96(64 K5H`yoP,6(667L788 5H6\7L6435H5 5H66 5H7l6435H5z435H78y7L 5H77L435H6Hozt 5H8<7435H7wy{8 5H788435H8py7 5H88435H8('oywsD19p9c?>8|?y?=??{<~>|{cxq?9{?=xq?<{Ogx y<q?y|<8xy|9?xy8cy<8yyc>?q<<y>?y38xx~?x||????><|8>?yy?q<q|?>>xy8>????9>c9>x<Ϗ=91>?ÿp?cc<|?c<|?|ϟq?9>>y g?q?{sxO<0?x  ?xg?yϞ??|y<'|gyx y>y 8>>xyy>c?<;c`10 10ǀ 10 10 10 10 10 10 10 10 10 1LDD3DD@1LDD3DD@1LD3DD@1LDD3DD@D1LDD3DD@D1LDD3DD@1LDD3DD@D11LDD3DD@11LDD2DD@D1LDD3DD@1LDD3DD@D11LDD3DD@11LDD3DD@D1LDD3DD@1LDD3DD@D1 @?3DD@3LDD?3DDD1LDD3DD@1LDD3DD@11LDD3DD@1LDD3DD@1LDD3DD@D1LDD3@D31LD?3@D31LD3DD@D11LDD3DD@11LD?ÿp??| y' y'Op??^ y'Op??^ y'Op??}'?}'Op??^? >3O<< ..0.0.0.0Ȉ.0BȎ H ȈH H Ȉ쀌,Ȉ쀌@.HHHH H ȈȈ쀌Ȉ΀쌌 Ȉ Ȉ쀌Ȉ쀌,Ȉ̌쀌쌌,Ȉ.HHHȈ΀Ȉ,.HHnHȈ쀌Ȉ̎ BȈ ΰȈΰȈΰȈlȈΰȈȈ쀌@L,ȈL.  H HHȈ Ȉ΀Ȉ΀Ȉ쀌,,Ȉ̎,Ȉ̎,Ȉ̎ΰȈ쀌.쎰Ȉ쎰Ȉ䎰Ȉ쎰Ȉ쎌䎰Ȉ䎰Ȉ쎌䎰Ȉ쎌䎰Ȉ쎌 ȈȈ쀌Ȉ쀌.HȈ Ȉ΀Ȉ쀌,Ȉ,Ȉ,Ȉ.ΰ  H Hn H ȈȈ쀌,ȈBȈ H H H H HHȈnȈ Ȉ̎ Ȉ̎Ȉ̎Ȉ̎,,Ȉ,Ȉ̎,Ȉ쀌.ΰȈΰȈΰȈ쎌ΰȈΰȈ쎌ΰȈ쎌ΰȈ쎌h ȈȈ쀌Ȉ쀌.  H Ȉ Ȉ΀Ȉ쀌,Ȉ,Ȉ쎌.ΰ n H H H ȈȈ쀌,ȈBȈ H H H H H H Ȉ Ȉ Ȉ̎ Ȉ̎Ȉ̎ΰȈ,,Ȉ,Ȉ̎,Ȉ̎ BȈ  H  H Hn H H Ȉ΀Ȉ쀌쎌BȈ ȈȈȈȈȈnlȈn ȈȈȈn.0Ȉnb.0&&.0>소.0Ȉn.0Ȉfb.Ꮜ...0.`좿`삿Ȉ..0h,.0..0.&0h,.0..ȈȈȈȈȈȈȈ쀌`쎌.Ȉ  H H H ȈhȈ쀌,Ȉ쀌.h  H H H Ȉ쀌ȈƀhȈ΀쌌ȈBȈ  H H Hn Ȉ ȈƀȈ΀ȈȈ쀌Ȉ쀌,,,,Ȉ̎,Ȉ̎ BȈ  H  H Hn H H Ȉ΀Ȉ쀌BȈ ȈȈȈȈȈ`Ȉ.ȈȈȈȈȈ`Ȉ.ȈȈȈȈȈȈ.掌ȈȈȈ䎰Ȉ䎰Ȉ䎰Ȉ.Ȉ쌌ȈȈȈ쌌ȈȈȈ ȈBȈȈ&lΰHHHHHȈ BȈ 쌌쎰Ȉ쎰Ȉ䎰Ȉ쌌䎰Ȉ䎰ȈȈBȈ쌌ȈȈȈ쌌ȈȈ쎌h,Ȉb.Ꮜ...Ꮜh,Ȉb.Ꮜ...f...,Ȉ怿b.Ꮜ..h,Ȉb.Ꮜ..,Ȉb...,Ȉb...,Ȉb  *(>o莌.bȈh(Ȉb.Ꮜ.......h(Ȉb.Ꮜ......l..b.Ꮟ&..b.Ꮟl.nb(Ȉb...&lȈb..,Ȉb....Ꮟ.O.O (/  +   +   / @* Ȉ.Ȉ Ȉ쌌H ȈȈ쎌Ȉ̀ H Ȉ쀌 𨂏Ȉ쎌BȈ쎰 쎰ȈȈ쎌䎰ȈH ΰȈH ȈȈ쀌 *Ȉ.Ȉ쎰 䊰Ȉ଎쎰ήHn Ȉ䎰ȈH ȈȈ *. ȈHȈH Ȉ΀ȈȈ쀌 ( ȈBȈ쎌 쎰H  쎌䎰ȈH Ȉ ΰȈȈ +   (,...>ȨlȈ̀Ȉ Ȉ (,Ȉb..Ꮜߏ.Ȉ HΌ Ȉ hhhXX̏``RSRC LVINLBVW% |D@ <@ N}*kք ُ B~ysV9UK=#.fLVINDemo.viLVINPIC-Init Servo.vi^X @ @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)$@ PIC-ServoPIC-Step Interface@ port number@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsPTH04 JRKerrDriversV1.llbPIC-Init Servo.viLVINPIC-SetStatusByte.viT  @)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info6@P @!status @code@0source error out@ port number @Task@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@@P @!status @code@0sourceerror in (no error)PTH07 JRKerrDriversV1.llbPIC-SetStatusByte.viLVINPIC-Clear Sticky Bits.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH0; JRKerrDriversV1.llbPIC-Clear Sticky Bits.viLVINPIC-Reset Position.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH08 JRKerrDriversV1.llbPIC-Reset Position.viLVCCStatusByte.ctlN)-StatusByte.ctl@P@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status BytePTH01 JRKerrDriversV1.llbStatusByte.ctlLVCC Stat Info.ctln  Stat Info.ctl@P@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status InfoPTH00 JRKerrDriversV1.llb Stat Info.ctlLVINPIC-Set Gains.viP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsPTH03 JRKerrDriversV1.llbPIC-Set Gains.viLVCC gains.ctlL gains.ctl@P @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGainsPTH0, JRKerrDriversV1.llb gains.ctlLVINPIC-Define Trajectory.vidP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory ParametersPTH0; JRKerrDriversV1.llbPIC-Define Trajectory.viLVINPIC-Close Servo.viRP 6@P @!status @code@0source error out@@P @!status @code@0sourceerror in (no error)@ port numberPTH05 JRKerrDriversV1.llbPIC-Close Servo.viLVINPIC-Go Home.viP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number @ModePTH01 JRKerrDriversV1.llbPIC-Go Home.viLVINPIC-No Operation.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH06 JRKerrDriversV1.llbPIC-No Operation.viLVINPIC-Hard Reset.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH04 JRKerrDriversV1.llbPIC-Hard Reset.viLVINPIC-Set Home.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH02 JRKerrDriversV1.llbPIC-Set Home.viLVINPIC-Stop Motor.viX  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@! Kill Amp?@ port number@ Stop StylePTH04 JRKerrDriversV1.llbPIC-Stop Motor.viLVINPIC-Sart Motor.viP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)PTH04 JRKerrDriversV1.llbPIC-Sart Motor.viLVCCTrajectory.ctlYTrajectory.ctl@P@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory ParametersPTH01 JRKerrDriversV1.llbTrajectory.ctlLVCCStatus Items.ctl@7<Status Items.ctlh@P@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsPTH03 JRKerrDriversV1.llbStatus Items.ctl LVINPIC-Set Baud Rate.viP 6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@ Baud RatePTH07 JRKerrDriversV1.llbPIC-Set Baud Rate.viGLVINSerial Control.vi} h  6@P @!status @code@0source error out@0Read@ Baud Rate@@P @!status @code@0sourceerror in (no error)@0To Send(@ InitializeClose Read/WriteTask@ port numberPTH04 JRKerrDriversV1.llbSerial Control.viLVINTranslateStatusBit.vi( @  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byteh@P@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@0ReadPTH08 JRKerrDriversV1.llbTranslateStatusBit.viPL c8 P+ cP"@P@flg@oRt@eofudfP7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items+r"24&~4dd'' Status Items TrajectoryGainsStrike= Status Items2 TrajectoryGainsStrike Plot 0 B@l @| 5Ey,Time AmplitudeFNH@@i@I?J@r@Ir@I@$?One Shot Slow Graph Fast Graph Vel GraphHit Status byte-One Shot6 Slow Graph5 Fast Graph. Vel Graph Hit8 Status byte Plot 0ddR{+Lo.}Rylyyxxqj>dW\{UOIA8./(H l 9Xr5Ih0Nm5Tn   ; Y x  ! ; U s   @ Z t  ' A Z ~  B*Test@s`l+ @i@ yTime AmplitudeALI@rX[4۹@u[4۹@r@$@?KAyy@I@$?  Plot 0ddHKMORUWZ\^adfhknpruwz|  !#&(+-0257:<? B*Test@{5 @ @ Timecounts per tick (x2^16);L= @@Y@4??A???? Velocity^ir|  (.5 B Position^ir|)Now{{{{{{{a> +  (.5 BPlot 2^5r|  (.5 B Test@ RIO O@uK@Timecounts per tick (x2^16)GLI @y@I@$?KA@r@Y@4?0?O^m}'0;EQ[gq}0?O^m}'0;EQ[gq}u6t04g)[0?O^m}'0;EQ[gq}\xdddd'\x'''<pHT|L 6} x 8T.}DPX L}  B 0}  " ~%  $   %N@B2(\/@n:h:h|@m$(:h@o@rr:h:h:hN)@m:h:h:h:h:h)@* *:h))2*:_V_V_V_V_ec@eV_:_ddV_cdN*j*:h+n*\*r+PxLH(w(w(w(wt4z Nvr=@<(wPx+L\1X"yX"y*[F=@,= <(<-r,8,:hB6-<,.,",TApAAAA:62@2ATA+2T5T5p55@334z.:h\.V-Lb-\/@n0f@.9::`7\X:hY< XdX8W^^^@Z::@]\/@@h?N/@ DX@XTX@$X`X:9`7\XTTT: T UFT&TV^::WdV`X:`7U:p&YZ:h:hx@l:h:h:h:hVIDSDemo.viVIDSTranslateStatusBit.viD0PTH0VIDSSerial Control.vi@,PTH0VIDSPIC-Stop Motor.vi8$ PTH0VIDSPIC-SetStatusByte.vixL<(PTH0VIDSPIC-Set Home.vi`PTH0VIDSPIC-Set Gains.vitPTH0VIDSPIC-Set Baud Rate.viH4 PTH0VIDSPIC-Sart Motor.viPTH0VIDSPIC-Reset Position.vipPTH0VIDSPIC-No Operation.vihPPTH0VIDSPIC-Init Servo.viPTH0VIDSPIC-Hard Reset.vidPTH0VIDSPIC-Go Home.vilPTH0VIDSPIC-Define Trajectory.vi\XTPTH0VIDSPIC-Close Servo.viPTH0VIDSPIC-Clear Sticky Bits.vi|PTH0i386M@~code@.Ewd~E\EPPUEd$=t1==Ð)Ӏ}t}uE$EE48tQRUԁd$ZYɍ,%HHƅ(%thhUEPƅ(%VW@fff_^fxDƅ,%ts$T$ts, $ts4$%ts< %tsD%$ET~E\EP.UR@␐}vt}v_<ƅ,%fx Dƅ0%=PD~$$Ð <82I ! ɍ<%ƅ8%<thhUEP~E\EP.UR@␐}vt}v;ƅ<%}$u ƅhhUEP8d$ }$u ƅ hhUEP8d$ =;fxBEhxZ@9ƅ@%ƅ@%fxB9ɍH%HHH ƅD%thhUEP;@ƅd%QR衙ZYƅd%fxBG@ƅh%ts$TL#ts, T#ts<d#(#ET ~E\EP.UR@␐}vt}v<5ƅh%fxF?ƅl%ts$T"ts, "tsD#tsL#"ET ~E\EP.UR@␐}vt}v4ƅl%fxJr?ƅp%ts "ts$T"ts<"p"ET\ ~E\EP.UR@␐}vt}v3ƅp%fxN?ƅt%Džy Dž>t?9t$QRRVhhFd$ZY=46t 6 ">t?9t$QRRVhhFd$ZY=F46t 6"ɍ%HHH ƅ|%ƅ|%fxZ9>ƅ%QR}ZYƅ%fx^E>ƅ%)ȉƅ%fxbL>ƅ%ts, L"ts<\" "ETY ~E\EP.UR@␐}vt}v1ƅ%fxf=ƅ%ƅ%fxj>Ehx7P "RZX "P"RZX"9} cƅt%fxR=ƅx%QRhhP$h6d$ZY=I2QRhhPG$h6d$ZY=/2ƅx%}$u ƅ hhUEP8d$ =2fxVZ=Ehx6SQRVWPEEXPE EXPERUQ YZXEEPERUQ YZXEEQRuhPED$X3d$ZY=t_^ZY[ÐuP$P$Ud$ =P1/ɍ%HHH HHHHƅ%ƅ%PqXPXPff2XVWfff_^fxn@<ƅ%QRZYPƅ%fxrL<ƅ%ƅ%fxvg<ƅ% ts$T!ts, !ts<!!ET~E\EP .UR@␐}vt}vj.ƅ%fxz<ƅ%$ts$T!ts, !tsD!tsL!h!ET~E\EP$.UR@␐}vt}v-ƅ%fx~;ƅ%(ts $!ts$T,!ts<D!!ET.~E\EP(.UR@␐}vt}v!-ƅ%f-;ƅ%Džy Džt>t?9t$QRRVhh@d$ZY=H.6t 6 >t?9t'QRRVhhXvu{9d$ZY= .6t 6 ɍ%HHƅ%ƅ%VWf_^QRP$L.d$ZY=-f:ƅ%QRkZYXƅ%f":ƅ%PX)ȉXƅ%f&:ƅ%,ts< ET`~E\EP,.UR@␐}vt}v*ƅ%f9Ehx0P RXZX QR -d$ZY=, uP($P$d$ =g,9} ƅ%fh9ƅ%Dž =t6>t?9t$QRRVhh=d$ZY=+6t 6D &t6PGXG7GG&+FG&Fɍ%Hƅ%ƅ%f{8ƅ%0ts$ t ts,|  P ET~E\EP0.UR@␐}vt}vy(ƅ%f8ƅ%ƅ%f38Ehxt.PD RZXD 9} ƅ%f8ƅ%QRhhP$th-d$ZY=)QRhhPG$h[-d$ZY=)ƅ%}$u ƅ hh UEP8d$ =)f7Ehxm-uP$P($yd$ =x)*&ɍ%HHH HHHHƅ%ƅ%P-XP8XPfBfXVWl<fff_^f7ƅ%QRZYƅ%f 7ƅ%ƅ%f"7ƅ%4ts$T ts, $ ts<4 ET~E\EP4.UR@␐}vt}v%ƅ%f6ƅ%8ts$Tts, tsDtsLETz~E\EP8.UR@␐}vt}v$ƅ%fG6ƅ%<ts \ts$Tdts<|@ET~E\EP<.UR@␐}vt}v6$ƅ%f5ƅ%Džhy Dž>t?9t$QRRVhh7d$ZY=a&6t 6>t?9t'QRRVhh6u0d$ZY=#&6t 6ɍ%HHƅ%ƅ%VWf_^QRP$&d$ZY=%f4ƅ%QR耆ZYƅ%f4ƅ%)ȉƅ%f4ƅ&@ts<ETK~E\EP@.UR@␐}vt}v"ƅ&f4EhxM(PRZXQR$d$ZY=$uP$P$d$ =$h9} hƅ%f4ƅ%Dž=t6>t?9t$QRRVhh)4d$ZY=#6t 6|&t6PGXG7GG&+FI&Fɍ&Hƅ&ƅ&f03ƅ&Dts$ ts,ET~E\EPD.UR@␐}vt}vƅ&f2ƅ &ƅ &f2Ehx%P|RffZX|9} ƅ%f2ƅ%QRhhP$h$d$ZY=!QRhhPG$hn$d$ZY=!ƅ%}$u ƅ hh UEP8d$ =!f=2Ehx$uP$P$d$ =!=ɍ&HHH HHHHH H$H(H,ƅ&ƅ&PzlXPf\fXVW@Vfff_^f1ƅ&QR$ZYƅ&f1EpDž"~QRhhhP$ںd$ZY}vMƅ&쀸1Hts$TTts, \ts<l0ET!~E\EPH.UR@␐}vt}vƅ&f51ƅ&Lts ts$Tts< ET"~E\EPL.UR@␐}vt}vtƅ&f0%~E\QRPEP$hhPEP$ٺd$ZY=tÐƅ &쀸0Dž 6=t6d`>t?d9t$QRRVhh:.d$ZY=6t 66&t6PGXG7GG&+F@de&F@ɍH&HHƅD&ƅD&VW@_^f"/ƅH&@@vXƅH&f&/ƅL&RZTƅL&f*/ƅP&PXRffQZXPTDXƅP&f./xVW@_^d 9} ƅ &fl/ƅ$&`=t6\ƅ$&fk/QRP$hhPEP$ֺd$ZY=tÐ}vfƅ(&쀸I/Dž`ly Džlh>t?l9t$QRRVhhP+d$ZY=6t 6<>t?l9t$QRRVhh*d$ZY=|6t 6 d>t?l9t$QRRVhh*d$ZY=A6t 68>t?l9t$QRRVhhQ*d$ZY=6t 6lɍX&HHH HHHƅT&ƅT&f2-ƅX&QR?zZYƅX&f6-ƅ\&\`9ȸƅ\&f:-ƅ`&)ȉƅ`&f>-ƅd&d$ =f (ƅ0&ƅ0&f(ƅ4&ƅ4&uP$P$d$ =<f(ƅ8&Dž&&&&EQRP&$WhP[$.d$ZY=?u?<SQRVWPEEXPE EXQRhhuhPED$Xh*d$ZY=tEEE=tEMEE=t9Et0EEQRPE$uhhI!d$ZY=tbE=tEPEEX7}uEEm}ݸ_^ZY[ÐuP$P$d$ ={SQRVWPEEXPE EXQRhhuhPED$Xhd$ZY=tMEEQRhhuhPED$Xhud$ZY=t_^ZY[ÐuP$P$Fd$ =uP$P$d$ =ƅ8&}$u ƅ hh UEP8d$ =f%ƅ<&Xts$Tts, ts<ET3~E\EPX.UR@␐}vt}vX ƅ<&f%ƅ@&\ts$Tts<hET4~E\EP\.UR@␐}vt}v ƅ@&}$u ƅ hh UEP8d$ f%Ehx}uP$P$d$ =ɍ&HHH ƅ&ƅ&ff$EpDž\7~HDž,8~xDžB9~QRhhhP$%ƺd$ZYQRhhhP<$źd$ZYQRhhhPl$źd$ZY}vƅ&쀸g'$`ts$T<ts, Dts4$Lts<TET6~E\EP`.UR@␐}vt}vtƅ&fj#f:~E\QRPEP$hhPEP$ĺd$ZY=tWÐbƅ&쀸k#dts$Tts, ts4$ts<@7~H<d.UR@␐btbtƅ&fn#QRP<$hhPEP$úd$ZY=tAÐƅ&쀸o"hts$Tts, ts4$ts<xp8~xlh.UR@␐ttƅ&frs"QRPl$hhPEP$ºd$ZY=t+Ðƅ&쀸sK"lts$TLts, Tts4$\ts<dtsDl(:~l.UR@␐ttƅ&fv!QRP$hhPEP$d$ZY=tÐ}v쀸w!ɍ&HHH ƅ&thhUEP~E\EP.UR@␐}vt}vt1ƅ4%fxx48tQRUӁd$ZY}t}uH}v}+uvQRPE@$'d$ZY==t p h搐ÐEw >~E\EPPUEd$=t=t=t=tEw Ew‰ppVLFX@'PUEd$=uÐP>t3/?~P>F?~P>X#]?~P>.t?~iP>$/?~OP>$/?~5P>p?~P>?~P>U?~P>@~P>n*@~P>D@~P>S^@~P>${x@~eP>[@~KP>[@~1P>@~P>@~P>@~P>4A~P>.A~P>4HA~P>bA~{P><|A~aP>A~GP>A~-P>0VA~P>A~w%TA~P>HɾB~P>2B~P>lLB~P>`fB~wP>tB~]P>tB~CP>DӾB~)P>DB~P>D3B~P>ӾC~P>C~P>36C~P>PC~P>/jC~sP>,쾄C~YP>,쾞C~?P>,쾸C~%P>,C~ P>|6C~P>D~'D~Ðx&)=D~Ðx&SD~Ðx&iD~Ðx&:D~Ðx&TD~Ðx&D~Ðx&{D~Ðx&D~Ðx&yD~Ðx&$cE~Ðx&-ME~Ðx&/E~Ðx&!EE~Ðx& [E~Ðx&qE~Ðx&rE~Ðx&pE~p @'PUEd$=uÐP>$E~P>E~^P>p$8F~$Py> rF~P> F~P> $F~vP> # G~ ZG~P> G~P> G~P> x#H~TP> BH~P1>|H~P_>(#H~P>"H~lP >p"*I~2PD > dI~PU >%I~P >'I~P >( "J~JPA >)LJ~P` >+J~P >!J~P >$J~bP>,4K~(P>3nK~P1>4!K~P>5h!K~zPz>6 !L~@P>7 !VL~Pg>=$$%L~P>B%%&L~P>C&&'' M~XPK>D''$>M~P>8!!"xM~P'>F(())P M~P>G))*M~pP>H**(&N~6PB>;""#`N~P><##N~P>I++,N~P>P,,-O~NP>Q--..HO~P>R..//O~Pe>S//00@O~P>T001O~fPR>Z4450P~,P>_556jP~P>`6677P~P6>a774P~~P>U112Q~DP>c8899RQ~ P>d99:Q~P>e::8Q~P/>X223R~\P>Y33+:R~"P >f ;;o<>>"S~:Px"x"q>@>\S~"w%>?S~$w%HHIS~X$w%IIJ T~R$w%JJKDT~$w%KKH~T~<%w%r??@T~w%w%s@@@T~jP%>@A,U~0P'>LLMfU~P'>MMNU~P(>NNOU~P<(>OOPV~HP(>TTUUxNV~P(>UUTV~P*>VVWV~PQ+>WWXX(V~`P+>XXV6W~&P3,>PPQpW~PU,>QQRW~Pw,>RRSW~xP,>SSLX~>P.>tAABXX~P/>yBBCX~P/>zCCDX~P0>{DDEY~VPC3>|EEFF@Y~P3>}FFGGhzY~P4>~GG;Y~P5>Y\YY~nP56YZY(Z~4P66Z]ZbZ~<67Z[ZZ~<77[][Z~l88[\[x[~Ll88\]\J[~)99\]\([~99]]][~PC:>]Y[~dP:>^^__2\~*P[;>__``l\~P;>``aa(\~P<>aabb\~|PZ=>bb^]~BP=>T]~P>>]~_^ZY[]ÐVWf_^SQRVWE=tEMEE =t9Et0EEQRPE$u hhd$ZY=tJE =tEPEEX}uEEm}ݸ_^ZY[ÐuPL$P$d$ =t?uP$P$d$ =tUl$SQRVW_^ZY[]Ð=t,PEP$PPU_~$$@ $Ðd$=t,PEP$PP_~$$@ $Ðd$=t,PEP$PP_~$$@ $Ðd$=t,PEP$PP`~$$@ $Ðd$Φ =t,PEP$PP>`~$ $@ $Ðd$=t,PEP$PPw`~$$@ $Ðd$=t,PEP$PP`~$$@ $Ðd$=t,PEP$PP`~$$@ $Ðd$=t,PEP$PP"a~$$@ $Ðd$ =t,PEP$PP[a~$ $@ $Ðd$$=t,PEP$PPa~$$$@ $Ðd$(=t,PEP$PPa~$($@ $Ðd$,=t,PEP$PPb~$,$@ $Ðd$0=t,PEP$PP?b~$0$@ $Ðd$4=t,PEP$PPxb~$4$@ $Ðd$8=t,PEP$PPb~$8$@ $Ðd$<=t,PEP$PPb~$<$@ $Ðd$@=t,PEP$PP#c~$@$@ $Ðd$D=t,PEP$PP\c~$D$@ $Ðd$H=t,PEP$PPc~$H$@ $Ðd$L=t,PEP$PPc~$L$@ $Ðd$P=t,PEP$PPd~$P$@ $Ðd$T=t,PEP$PP@d~$T$@ $Ðd$X=t,PEP$PPyd~$X$@ $Ðd$\=t,PEP$PPd~$\$@ $Ðd$`=t,PEP$PPd~$`$@ $Ðd$d=t/P<$PP'e~$d$@ $Ðd$h=t/Pl$PPce~$h$@ $Ðd$l=t/P$PPe~$l$@ $Ðd$p=t,PEP$PPe~$p$@ $Ðd$t=t,PEP$PPf~$t$@ $Ðd$x=t,PEP$PPJf~$x$@ $Ðd$|=t,PEP$PPf~$|$@ $Ðd$=t,PEP$PPf~$$@ $Ðd$.Ul$SQRVWT$ QRPE@$Rяd$ZY=0_^ZY[]ÐDž$t@ $$Dž$Dž$ Dž% Dž%Dž%Dž%@@%Dž %Dž$Dž$Dž$PTAB $$ Džt$t@ t$Dž$Dž$Dž$$Dž$$Dž$$Dž$Dž|$Dž$Dž$PTAB x$p$ Dž$$t@ $$DžH$ DžP$ T$DžX$Dž`$Džh$Dž,$Dž0$ Dž4$PTAB ($ $ Dž#t@ #Dž# Dž$ $Dž$Dž#Dž# Dž#PTAB ## Dž|# t @ |#Dž# Dž# #Dž#Dž#Dž#v#Dž#Dž#Dž# Dž#PTAB #x# Dž,#t@ ,#D#DžH#DžP# DžX# \#Dž`#Džh#l#Džp#Dž4#Dž8#Dž<#PTAB 0#(# Dž"t@ "Dž" Dž# #Dž#P #Dž#Dž#Dž #Dž"Dž"Dž"PTAB "" Džt"t@ t"Dž" Dž" Dž""Dž""Dž""Dž"Dž|"Dž"Dž"PTAB x"p" Dž$"t@ $"D"DžH"DžP" T"DžX"Dž`"Dž,"Dž0"Dž4"PTAB (" " Dž! t @ !(!Dž!Dž! Dž! !Dž!Dž""Dž"Dž!Dž!Dž!PTAB !! Džl!$t$@ l!Dž! Dž! (!Dž!q!Dž!Dž!Dž!Džt!Džx!Dž|!PTAB p!h! Dž !(t(@ !Dž(! Dž0! DžH!2L!DžP!T!DžX!(\!Dž`!Dž!Dž! Dž!PTAB !! Dž ,t,@  Dž  Dž Dž ( Dž  Dž  Dž  Dž!Dž Dž 'Dž PTAB  DžT 0t0@ T l Džp Džx Dž Dž Dž\ Dž` )Džd PTAB X P Dž4t4@  Dž Dž Dž( , Dž0 Dž8 .< Dž@ Dž Dž .Dž PTAB   Dž8t8@ Dž Dž DžDžDžDžDžDž/DžPTAB  DžD<t<@ DDž` Džh DžDžlDžDžDžLDžP0DžTPTAB H@ Dž@t@@ DžDžDžDž $Dž(,Dž04Dž8DžDž7DžPTAB  DžDtD@ DžDž Dž DžDžDž9DžPTAB  Dž4HtH@ 4LDžPDžX Dž` dDžhDžpLtDžxDž<Dž@=DžDPTAB 80 DžLtL@ Dž Dž DžDž@Dž $Dž(DžDž>DžPTAB  Dž|PtP@ |DžDžDžDžDžDžUDžPTAB x Dž,TtT@ ,pLDžPTDžX\Dž`DžhlDžpDž4Dž8XDž<PTAB 0( DžXtX@ Dž Dž DžDžfDžDžDžFDžPTAB  Džl\t\@ lDž DžDžDžDžDžtDžxGDž|PTAB ph Dž`t`@ Dž8 Dž@ DžH DžPDžXDž$Dž(ZDž,PTAB   Dždtd@ Dž Dž Dž DžDžDžDžžPTAB  Dž|hth@ |Dž Dž Dž DžDžDžDž\DžPTAB x Dž,ltl@ ,DžH DžP DžX Dž`DžhDžp@Dž4Dž8]Dž<PTAB 0( Džptp@ Dž Dž  DžDž DžDž_DžPTAB  Džttt@ Dž Dž DžDžDžDžDž`DžPTAB  Dž,xtx@ ,DžH DžP DžhDžpDžx|DžDž4Dž8aDž<PTAB 0( Dž|t|@ Dž Dž  DžDžDžDžbDžPTAB  Džt@ Dž DžDž@DžDžDžPTAB  QRusʁd$ZY(Ul$SQRVW}#uQRU詞d$ZYV_^ZY[]ÐUl$SQRVWQRUؤd$ZY_^ZY[]ÐUl$SQRVWt$$|$(uP$P$Sd$ Ul$SQRVWt$$|$(uP$P$d$ Ul$SQRVWt$$|$(uP$P$袰d$ Ul$SQRVWt$$|$(WSQRVWE=tEMEE =t9Et8EEEQRPE$u P#$7Ҟd$ ZY=tЋE =tEPEEX鞐PEEXPEEXQRhhuhPE苉D$Xhĝd$ZY=tcEEQRhhuhPE苉D$Xhĝd$ZY=tEEm}Z_^ZY[ÐuP$P$d$ _^ZY[]ÐUl$SQRVWuf~F }~Fz}~F _~F$~F@~FDQRhU胊d$ZY_^ZY[]ÐTd$ZY_^ZY[]ÐDžPTAB  DžtT ';H]x;   _  4  i>q Xm T)\ kCZ !"2#%&q&&'' )o---.K...D/^00S1?22w555678 :>E> ^f)}S}}~]@~EGE]F)FGJF#\G6Y[mHIJHJwJIK%K_KiMLLLNNQNMN9ON Q!P[PPQCQQ+ReRRy"IXUWUUVWXX1YTUaW?VVVoT5T TSSWSXX]cFKGGH=JUIMK/MGL}QsOPOYkYyV'WMSQ5[u[<5;[['5ZZSZZ ]\SR]\\3HI LEO%u]c 5ymd!4"(+344R6a7w89;;s<==x>??.?E?_?y??????@/@I@c@}@@@@@@A3AMAgAAAAAABB7BQBkBBBBBBC!C;CUCoCCCCCCC D#D9DODeD{DDDDDDDE+EAE^E^2_k___`T````8aqaaabUbbbc9crcccdVdddeCe|eee'f`fCODE@.D%6.1Oldest compatible LabVIEW.-2(pPPP@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device IDStatus Items 2@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGains@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory Parameters6@ Status Items TrajectoryGainsStrikeSettings:@P@@@ Position dataXY GraphL@One Shot Slow Graph Fast Graph Vel GraphHit Status byte Tab Control<@P@@@ Position data XY Graph 28@P@@@Velocity XY Graph 3F@@0P@@@ Position data XY Graph 4L@@2@P@cts/tick@ Vel/PWM dir Velocity SpecVelocity array@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte 299ݽwp1 10pPADTHPD 88AA˜~5䒃@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@! Device ID@!Home pos@!Aux byte@!Velocity@! A/D Value@!Position @TaskL@@P @!status @code@0sourceerror in (no error)@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status InfoF6@P @!status @code@0source error outP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number"@! Start Motion?@ Vel/PWM dir"@ profile mode@ Servo mode@ PWM Value"@ Acceleration@Velocity@Position @L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGains4(@ InitializeClose Read/WriteTask@0To Send<0P@@@ Position data@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device IDStatus Items 2zP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homingԃ@P@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info"@ Position data@ A/D Value@Velocityvf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done"@! Servo Overrun @Home$@@ Device ID@! Kill Amp?F6X  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@! Kill Amp?@ port number@ Stop StyleP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband Comp$@Position Gain (Kp)$@Velocity Gain (Kd)$@Position Gain (Ki)(@Integration Limit (IL)&@Output Limit (OL)$@Current Limit (CL).@Position Error Limit (EL)(@Servo rate divisor (SR)&@Amp Deadband Comp*@milliseconds to wait&P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@L gains.ctlP @Position Gain (Kp)@Velocity Gain (Kd)@Position Gain (Ki)@Integration Limit (IL)@Output Limit (OL)@Current Limit (CL)@Position Error Limit (EL)@Servo rate divisor (SR)@Amp Deadband CompGains*P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number  @)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info6@P @!status @code@0source error out@ port number @Task@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@@P @!status @code@0sourceerror in (no error)*P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?xlSimple Status Check Motor TestComplete SetupOtherPos Plot Fast Pos Plot Fast Vel Plot Test Strike@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory ParametersڃP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory Parameters@ Stop Style(@millisecond timer valueF6@ Status Items TrajectoryGainsStrikeSettings8, Status Items TrajectoryGainsStrikejZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device IDJ:@P@@@ Position dataXY GraphXL@One Shot Slow Graph Fast Graph Vel GraphHit Status byte Tab ControlL@One Shot Slow Graph Fast Graph Vel GraphHit Status byte0$@ PIC-ServoPIC-Step Interface@0Readth@P@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items( @  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byteh@P@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status Items@0Read@(@@ Position data@ Baud Rate0$@P0!!!*P0!!!0!0$P 6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number@ Baud Rate@ Baud Rate h  6@P @!status @code@0source error out@0Read@ Baud Rate@@P @!status @code@0sourceerror in (no error)@0To Send(@ InitializeClose Read/WriteTask@ port number$@@0Read@0string(@@ Output Array@΃X @ @6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)$@ PIC-ServoPIC-Step Interface@ port number@7<Status Items.ctlZP@!Position@! A/D Value@!Velocity@!Aux byte@!Home pos@! Device ID Status ItemsH<@P@@@ Position data XY Graph 2&P!!!!pd@ZP0   !!!jZP0   !!! $@@Velocity8,P@@@VelocityD8@P@@@Velocity XY Graph 3@cts/tick @Mode, P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number @ModeVF@@0P@@@ Position data XY Graph 4΃@@Trajectory.ctlP@Position@Velocity@ Acceleration@ PWM Value@ Servo mode@ profile mode@ Vel/PWM dir@! Start Motion?Trajectory ParametersXL@@2@P@cts/tick@ Vel/PWM dir Velocity SpecVelocity arrayB2@P@cts/tick@ Vel/PWM dir Velocity Spec8,@"P@@P 6@P @!status @code@0source error out@@P @!status @code@0sourceerror in (no error)@ port number@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte 22"P@@@ p0||08$h40|0Tp08$$ $ 4 L h 8 (  8 T  4 P p 8 08$ , Dh(P 08$ tt$|08$$|8$|8|08$|08$|08$ 08$ \\\$$08$4Tp!l!l$$!t!! $!","""#8 $" 4",p###8$D",p$|88 ! $&T&p! !!!!&T &p $ $ &&&&' ' ' ' |08$&08$'0 !0)`||#$)|&08$'0!l##8 $$$!!&T &p $! !!#*#* $ $*8 &T&p && $ $",p* ****$D0$|808$+*-& &' ' ' ' -.,' ' ' ' .P. ' /(/(/( /8/8 /8/8/8/8' ' ' !**0)`||#$)|&08$'08008$ $$$!!&T ***# $! !!0$|8 $*#/H 8 $!l!l!l 8 8/l&T/H** * && $ $",p/.P . ' /(/(/( /8/8 /8/8/8/8' ' ' .,' ' ' ' & &' ' ' ' /!/T|08$.,' $|8$008$0 $$$!!&T T' ' $/8/8! !!/8/8 /8/8 /(/(/(' . .P2H 8/H8 8/l&T/HT2&& $2",p' ' ' ' & &' ' ' ' 2H3h 3h33h3h/3T &T&p&p 4/l' $$8222 $ $ $' $ $ $08$ $ $30/|0||$48 $ $&08$'04Tp4Tp08$4 L h 4 &T555' /8/85$ 80 WD== Status ByteWDij Status InfoQD: :GainsLD& &^D=ǒ>ǒPosition Gain (Kp)HIϻ^D=>Velocity Gain (Kd)HIԣԤ^DABPosition Gain (Ki)HLN1828 UD DD Move DoneUDDD cksum errWDD D OvercurrentTDDDPower OnUD D D Pos ErrorWDDD limit 1 hitWD(5D(5D limit 2 hitRD? LD?!LDHomingSD#0#0VersionWDij Status InfoND$4$1IDYDmn Position dataHZUD~ A/D ValueH!TDVelocityH!TDAux ByteQD66indexTD 6 6Pos wrapTD6 6Servo OnVD66 Accel DoneUD&6&6 Slew DoneYD.;6.;6 Servo OverrunPDHomeHWHX5B5BN&3&3 U:nG:oG Device IDH]9F9FbD/0Integration Limit (IL)HM]D ?- @-Output Limit (OL)^D:=G:>GCurrent Limit (CL)HlK!.!.eDS#`S$`Position Error Limit (EL)H@ TaTaH ;H;HcDm$zm%zServo rate divisor (SR)H n{n{]D*+Amp Deadband CompHX!aD/0Trajectory ParametersHJ++HJ,:-:TDSettingsRDStrikeXDSϑTϑ Status ItemsN}#~# TDabPositionUDWX A/D ValueTDabVelocityTDZ'['Aux byteTD/W</X<Home posUDDXQDYQ Device IDTD 7 7XY GraphPD$TimeHD$> $ $HD@>;B<BU D$5' $8 AmplitudeNXeTXeT0.H`<KuLuHT<vwWD -2 -2 Tab ControlODex'er'HitZD,s-sStatus Items 2NV]W] TD:`;`PositionUD0`1` A/D ValueTD:`;`VelocityTD3`4`Aux byteTD0`1`Home posUD1`2` Device IDH$?HD`?ppVD A A XY Graph 2H@HD@qqPD$TimeHD$@/B0BU D$5( $9 AmplitudeNXeTXeT0.HD?2C3CH AH8A  (  (HA1 N2 NHAW tX tHAssHA}~HDBH B=J =J H0C) F* FH\B  HtB  HB  HB    H4D  HlCO lP lHCu v HC  VD A A XY Graph 3H\@HH  (  (H@1 N2 NHDAW tX tHHCssHDCH`C}~HPD  HD  HC=J =J Hl9    H<9) F* FH`9O lP lH9  H$9  H`A  H 9u v Hl?HDt@qqPD$TimeHD$G++c D$V($Zcounts per tick (x2^16)HDD0!71!7NXeTXeT0.VD A A XY Graph 4HAHB  (  (HB1 N2 NH0\W tX tH4HssH&}~HDFHG  H|F  HF=J =J H"    H$<) F* FH<O lP lHF  H;  H;  H<u v HhBHD8BqqPD$TimeHD$HG,,c D$V($Zcounts per tick (x2^16)HDD0C1CT,,VelocityZQQVelocity arrayH!WD6C6C Vel/PWM dirHEHUHUHEHUHUYD.;R.;R Velocity SpecTDHX;HU;cts/tickHXFJKWwJLWwYD^_ Status Byte 2N3@3@ UDgh Move DoneUDop cksum errWD b c OvercurrentTD!n.!o.Power OnUD7qD7rD Pos ErrorWDMsZMtZ limit 1 hitWDcspctp limit 2 hitRDzzz{HomingLD/606TDX~Y~PositionH47̒پ̓پTDX~Y~VelocityH7XDB~C~ AccelerationHWUDH~I~ PWM ValueH XVD%52o%62o Servo modeHK>KTaskHD|b_alh_blhHDtbNb[Nc[HDd!((HDaq~q~SE(I)I False TD"U/{"V/{VelocityaD=JR=JQTrajectory ParametersHDa2V?u2W?uaD u tTrajectory ParametersaDoqTrajectory ParametersHD! ^DwvPIC-Close Servo.vi`D!PIC-SetStatusByte.vi]DY[PIC-Sart Motor.vidD13PIC-Define Trajectory.vi`DsMsOPIC-Set Baud Rate.vi_D n mPIC-No Operation.vi`D! PIC-SetStatusByte.viaD" /q" /pTranslateStatusBit.vi`DsMsOPIC-Set Baud Rate.vi]DEGSerial Control.vi`D! PIC-SetStatusByte.viaD" /q" /pTranslateStatusBit.vi`DsMsOPIC-Set Baud Rate.vi]DEGSerial Control.vi`D! PIC-SetStatusByte.vidD[]PIC-Define Trajectory.viLDovpvTDrtPositionHD@as|u{LD=J=JTD@M@M PositionHD9P]P]TDP]P] VelocitydD.0PIC-Define Trajectory.vi_D')PIC-No Operation.vidD<>PIC-Define Trajectory.vi`DssPIC-SetStatusByte.viZD24PIC-Go Home.vi_DegPIC-No Operation.vi]DPIC-Hard Reset.vi[DHGPIC-Set Home.vidDPIC-Clear Sticky Bits.vi`D\^PIC-SetStatusByte.vi`DsMsOPIC-Set Baud Rate.viaDEDPIC-Reset Position.vi\D [ ZPIC-Set Gains.viTDrtVelocityHDPas$u$HD:`m`mXDr$t$ AccelerationHD`a's4'u4UD'r4't4 PWM ValueHDpa7sD|7uD{XD`m$`m# AccelerationHD$8p}p}UDp}p} PWM ValueHD7VD"! Servo modeHD$HDZXD$# profile modeHD`%HDpZWD"! Vel/PWM dirLD    VD7rD7tD Servo modeTD 1 0PositionHD` + +HDaXre{XtezTD +1 +0VelocityHD`. ;. ;HDaGsTGuTXD. ;G. ;F AccelerationHD`> K+> K*HD[UD> KA> K@ PWM ValueHD`N [N [VDN [EN [D Servo modeHD`o |o |HD`^ k<^ k;XDGrTGtT profile modeXD^ kG^ kF profile modeHD`  HD`n {<n {;HDahru{htuzWDn {En {D Vel/PWM dirHDa  HDa~  ~ HDaWsdWudYD~ L~ K Start Motion?WDWrdWtd Vel/PWM dirHDaxr{xtzHDagstgutHD[YDgrtgtt Start Motion?YD)( Start Motion?]D b aPIC-Stop Motor.vi]D|~PIC-Stop Motor.vi]D|~PIC-Stop Motor.vi]Dq~=q~<PIC-Init Servo.vi]D|~PIC-Stop Motor.viWD;: port numberHDXx1:39WD;: port numberHDX1:39* Status Items TrajectoryGainsStrike>One Shot Slow Graph Fast Graph Vel GraphHit Status byte FWDREVPWM Pos servo Trap profile Vel profile FWDREVSet Status ByteOneShotiSimple Status Check Motor TestComplete SetupOtherPos Plot Fast Pos Plot Fast Vel Plot Test Strike6 Cease PWM Stop Abruptly Stop Smoothly Stop at LocSet Status ByteOneShot9600192005760011520096001920057600115200Set Status ByteOneShot& InitializeClose Read/WriteTask& InitializeClose Read/WriteTask96001920057600115200Set Status ByteOneShot96001920057600115200Set Status ByteOneShotPWM Pos servo Trap profile Vel profilePWM Pos servoPWM Pos servo Trap profile Vel profile FWDREV Trap profile Vel profile FWDREV FWDREV {{  CG EG || DH FH 88 !! || 8< :< "" || DH FH0FPHPDemo.viLVCCStatusByte.ctld҄PTH0LVCC Stat Info.ctlPTH0LVCC gains.ctl`PTH0LVCCTrajectory.ctl?PTH0LVCCStatus Items.ctlDYPTH0>FPHPx"8>>>EEhXLDp~7,  0Cd(D||,|X@d!Sa!/)-'4 FdJ> @d!2hSW&: *4 FJh |@d >hRL,0 H dx0XP.Y<p|(4 F`J;<S``JpS$4 NH '0 7H "˦< ME  7W H"]ew H"]few H"]ew H"]ew H"]ew <JM[lpKK<JM[KKlp<JM[ddlp<JM[KKlp<JM[ddlp 7W:HO]ewf:HO]few:HO]ew:HO]ew:HO]ew0d<9dL 7W#H8]ew#H8]few#H8]ew#H8]ew#H8]ew4 "1 <S`JhSW&d;\4 N h 4 #5 ,,) 8P0  hSWdx0 7 lOS˦4 FP lD4 2P  @PCl&<@p 8P bzbzbzp 8P 0cycycy0 P dx@PC}',=A,4 F }PL :P 0u0/.-p 8 bzbzbzL : 0u0/.-4 2 Tp 8 0cycycy4 F H4 2 Lp 8 0cycycy0  dx@PC'>@>0  dx<S`BS'?!#X4 F 8 0 7 8 >O˦0  8 BSdx,!"$&L'L)|p 8 bzbzbzL : 0u0/.-4O 8O(X@4 G!7  !<MlpKK<MKKlp<Mddlp<MKKlp<Mddlp4O 8O(A4 G"7, )|'L&L$"! "<MlpKK<MKKlp<Mddlp<MKKlp<Mddlp 7"W:Oewf:Ofew:Oew:Oew:Oew4 O 8O) B4 G$7! 7!W:Oewf:Ofew:Oew:Oew:Oew! 7$W:Oewf:Ofew:Oew:Oew:Oew4!O 8O)C4! G&L7" &L<MlpKK<MKKlp<Mddlp<MKKlp<Mddlp4"O 8)O)D" $<MlpKK<MKKlp<Mddlp<MKKlp<Mddlp4" G'L'7# 'L<'MlpKK<'MKKlp<'Mddlp<'MKKlp<'Mddlp# 7'LW:)Oewf:)Ofew:)Oew:)Oew:)Oew4#O 8)>O*LE4# G)|-<7@$PC  *F@P$ 7&LW:Oewf:Ofew:Oew:Oew:Oew4$ F) 4% 2)  p& 8) 0cycycyp& 8)  bz bz bzL& :)  0u0/.-0& )   dxH&R0mO+G/b& )|+<<MlpKK+<<MKKlp+<<Mddlp+<<MKKlp+<<Mddlp& 7)|W):>Oewf):>Ofew):>Oew):>Oew):>Oew4& r0t 4Cp' 00t ;yIbz;yIbz;yIbzp' 00t 0-y;cy-y;cy-y;cy0' w0t 0Gdx0' _, -wK0' w, 4K˦0' U, 0Odx@'P,4K+IA4' J/ %4 4( F, 9mH@)Pz,B4-yI+xHAp) 8/ 03?cy3?Ƽcy3?Ɩcyp) 8/ ?Kbz?KƼbz?KƖbzL) :/ 8G0u0/.-0) / 4Kdx0)dLJ4) 2/ 8GҨ @*PH. WAu (4* F2t .4+ 22t L, :2t 0u0/.-L, : @ 0u0/.-p, 42t  bz bz bz0, 2t dx@,PH>3pXA{ :4, F4T >.p- 42t 0 cy cy cyp- 44T '3bz'3bz'3bzL- :4T  /0u0/.-0- 4T 3dx@-PBH5<M,YA~ L4- F6$ 9<H4. 24T  /p/ 44T 0'cy'cy'cyp/ 46$ AMbzAMbzAMbzL/ :6$ :I0u0/.-0/ 6$ 6Mdx@/PHN"fZA ^4/ F8( R"a40 28( Sb41 26$ :Ip2 46$ 05Acy5Acy5Acyp2 48( ZfbzZfbzZfbzL2 :8( Sb0u0/.-02 8( Ofdx@2PHh#[A p42 F:` l#{43 2:` m|L4 ::` m|0u0/.-p4 48( 0NZcyNZcyNZcyp4 4:` tbztbztbz04 :` idx@4PBH)X\A 44 Fh$S`DJRXLF0F0> Eh RXdx0> 7Eh VT˦,>LJJXG,FF,>FFG,JXJL4> GF`4?OEhV4?OEh`4? GFV4@OEh`@@ F؍lpdd؍KKlp؍ddlp؍KKlp؍ddlp@ 7FW֋ew֋렳few֋렳ew֋렳ew֋렳ew@ 7FWewffewewewew@ FlpKKKKlpddlpKKlpddlp@ G,lpddKKlpddlpKKlpddlp4@OEhY*4@ GG,`4A GJXY(4BOEh*V?$4B GJ.V=C 7G,WewfewewewewC 7JXW*ewf*few*ew*ew*ew4COEh?WTC JX(lpKK(KKlp(ddlp(KKlp(ddlp4C GLCWRD LARlpKKARKKlpARddlpARKKlpARddlpD J,=lpKK,=KKlp,=ddlp,=KKlp,=ddlpD 7JW*?ewf*?few*?ew*?ew*?ewD 7LW?Tewf?Tfew?Tew?Tew?TewDTD| PpD^qTY0T< DRR@RpST4D FP  80E gP! !>0E CP Y>@E 4PJ!fvfv]@EO`4P0FNP`FN@E 4PL!vfvfom@E 4PK!gunngu0E 2Q-{| %4F 3Q^0G 2Q( ' HRS$T\S0H 2S(CH &0I 2S-EH (4J 6Q %@KO@4PHRh—*H4K 6S:C 0L P IB泳0L P Y>4L 3S^6(0MXPP.M24M $PWfU@NX_.5L(PNW UA6y@Z<\Sp$ektk0\ 7g` 0\ g` 4\Qg`u4\ 6g q0] g udx4]Og`uD@] 4hVpRSR] hu*u.u*u.u*4]Og`p] 4iVlpddKKlpddlp] i*.*.*] k..*.*,]ghik,]kihg4]Og`$]U0wp]^qwd0@jww0<4] Fl$  B@^P~mB4lAH^Rl$O ko40^ wl dx0^ _m 4^ vl p_ 0l 4bz缼bz疖bz0_ wm 0_ Wm >p_ 0l 8@cy缼cy疖cy0_ 7o 0_ o ,_ppPq|r<_Sp$mmop4_ 6p r0` p vdx4`Oovo,`rq|pPp4`Qovn` pPv*v.v*v.v*4`Oo\p0` Cl$ Z>@` 4pPVqRSR` q|*.*.*4`Ooq@` 4l$J!fvfv]p` 4q|VlpddKKlpddlp@` 4l$L!omvfom@` 4l$K!nnnngu0` gl$! ">@`O`4l$0ALt~AL `vuduu `v4g $l$WfU0hlwrl$Lh|xhwd4h 6u1D0i l$ JC泳,iyLyz{8,i{8zyyL0i w|$ dx4iOxTXtpi yL곳??????4iOxT"upi y"곳""??????4iOxT vpi z 곳  ??????4iOxT Twpi {8 곳  ??????HiRl$N 4y~H@iP~{B4xA4i v|$ pj 0|$ 4bz鼼bz閖bzpj 0|$ 8@cy鼼cy閖cy0j _{ 0j w{ (0j W{ 4>4o 6 0p  dx@pP  ~8OP4p 24 <K 0q 4 8Odx4q 2 (!G@rP  ~!XBb4r 2 !@sP  ~!t@t4s 2 ! @tP  ~!@4t 2 ! @uP  ~!!TB4u 2h !! 4v 2 !@wP  ~(!GB@wP  ~N!m@4w 2P N!m@xP  ~t!P@4x 2 t!@yP  ~!@4y 28 !4zO~L0z 7~ &0z ~ (pz 4VlpddKKlpddlp0z 6VQz *.*.*4zO~z x..*.*4zO~&0z 2DV1P@z 4DV(RSRz D&*&.&*&.&*lz~D~,T쁐4 hPĆ8xDlzDx8ąPh􃀃 4T,~~D$zU0pz^q0h<4z F|  B @{P~`B4 4AH{R|N 4  0{ w dx0{ _` 4{ v T p| 0  4bz鼼bz閖bz0| w` (0| W` 4>p| 0  8@cy鼼cy閖cy0| 7 &0|  (4| 2  !)P <}Sp$`( Ll}$<ȖTllȒ|T @}P   !) B r l} T|ȓllTȗ<$4} 2 0!Oh @~P  V!u B ~4~ 2 V!uL @P  0!O @B .0 T)z 4Qx h4 2| tl 0 | xdx@P x  @DVz  A R0  xdx@P   d4 6 D 0  dx@P  8O d v4 2 |H 0 l 8Odx@P  ! B 4 2 !< @P  ! @ 4 2 !h @P  !`@ 4 2l <K @ @P  !!B 4 2l !!x @P  (!GB 4 2 (!Gt @P  N!m\@ 4 2T N!mp @P  t!@ 4 2 !| @P  !@ &4 2< !p @P  !X@ ,4 2 ! 4Op 4$VlpddKKlpddlp0 6$VQ4O4 2 t!l  ..*.*4O&d0 2V1P@ 4V(RSR &*&.&*&.&* $*.*.*,ܝ84O4p 곳??????4O4"p 8"곳""??????4O4  (p  곳  ??????4O4  |p  곳  ??????,8ܞ@P~XB4 A4 vP \ p 0P 4bz缼bz疖bzp 0P 8@cy缼cy疖cy0 wP dx0 _X 0 wX 0 WX >0 g|! ">4Qdv @ 4|K!nnnngu@O`4|0;L, Et;L L|0 2(!" -0 2-|} w4 3^4 6,` @O@4|=T ֗+= tԩ0 2(8= y0 2-:= x4 3^W)4 6/"80 | >C泳0 | Z>4 $|WfU0X| B|@ 4|J!fvfv]@ 4|L!omvfom|HŘvό H:$U0h4 Fd  Bp^qɄ0M X 9P<@P~B4KAHRdN 4L *4 v 4 0 w dx0 _ p 0 4bz鼼bz閖bz0 w (0 W 4>p 0 8@cy鼼cy閖cy0 7 &0  (4 2l  !)0 B !h4 2 !!@P  (!G=B !z4 2 (!G̰@P  N!mh<@ !4 2 N!m@P  t!;@ !4 2 !@P  !6@ !4 2 !@P  !d5@ !4 2d !4O3p 4VlpddKKlpddlp0 6VQ4O24 2| t! ..*.*4O&p0 2V1P@ 4V(SSR &.&.&*&.&* *.*.*,4H4ODjp H곳??????4O"kp "곳""??????4O lp  곳  ??????4O @mp 4 곳  ??????,H콐4@P~ B4oA4 v t p 0 4bz缼bz疖bzp 0 8@cy缼cy疖cy0 w dx0 _  0 w  0 W > 0`ǔ4Qvq@ 4dK!nnnngu0 gd! ">@O`4d0GL "GL 0 2("# z0 2-|} !4 3^ 4 6-x @O@4dI ""+I (XȈȼ0 2(DI #0 2-FI "4 3^W) 4 6/D 0 d JC泳0 d Z>4 $d- 0 ɴud "|,XXlX d@ 4dJ!fvfv]@ 4dL!omvfom4 F  R4  r @P rB4 wA0 w dxp 4 bz򼼼bz򖖖bz0 W p 4 0cy򼼼cy򖖖cy0 U dx0x $0 s ˦,CdDC$?ܡ<0 7ό B\˦0 ͜ CZdxPWόB}Z@ $ %4 N͜ 5Dl4 J͜ GVp< 2͜ GVt|'p 4͜ 0B}NcyB}NcyB}Ncyp 4͜ N}ZbzN}ZbzN}Zbz͜` pX4 Nό -`dx4 F GY<x0  EF\|dx4 2 IJXx|p 4 0D;PGcyD;PGcyD;PGcyp 4 P;\GbzP;\GbzP;\GbzL : IJXP0u0/.-|Ʉ@d!|]ٷ)-'4 F҄J] 4 N, 2A h?CTXwdɄ̌|XC~`@.иnF0TG8r|,@A|BlB t8h?B8h@B,@@lA A@8hB B<C0BBD D< B Z  ϳ   !"  3B c8hEhB8hDB,E4EE8hFB,F\G`Gx8hFB,FI(H,JIK\8hJXB,JLKl?H,\8hG,B,K(N$N8hLB,MXMOTP8hJB8h,B8h-|B8h?B8h>PB8h1B8h3B8h5B8h8,B8h=|>8 8hB,ʨL8hόB,P1358,:\<<<:\8,531>P-|@P,W-!@(',-..P./0/|$4 F-| Wt4 2-| ˑڿxp 4-| 0ƂҎcyƂҎcyƂҎcyp 4-| ҂ގbz҂ގbz҂ގbzL :-| ˑڗ0u0/.-0 -| Ǎdx,/0 0@01 1l4 F>P Wl4 2>P pp 4>P 0܂cy܂莼cy܂莖cyp 4>P bz􎼼bz􎖖bzL :>P 0u0/.-0 >P ݍdx@P,A 1A4'0,22<2p23P34 F1 Ad4 21 hp 41 0cycycyp 41  bz bz bzL :1 0u0/.-0 1  dx@P, G"4 A@'B,484l45554 F3 G\4 23 `p 43 0 cy cy cyp 43 "bz"bz"bzL :3 0u0/.-0 3  "dxPW, 486L@C'TI'f,6x66777<4 F5 $43pP4 J5 %4T< 25 %4Xl p 45 0 t,cy t,cy t,cyp 45 ,t8bz,t8bz,t8bz0 5 !8dxPW,72O8|@Q'W',8899L9:,t4 F8, ;2JpD4 J8, <KH< 28, <KLt$p 48, 07tCcy7tCcy7tCcyp 48, CtObzCtObzCtObz0 8, 8OdxPW,N4f:@_'e',:; ;@;|;<\4 F:\ R4ap84 J:\ Sb<< 2:\ Sb@t!p 4:\ 0NtZcyNtZcyNtZcyp 4:\ ZtfbzZtfbzZtfbz0 :\ Ofdx4O,e:z<,<= =4 G<h:w}4 <gxlpKKgxKKlpgxddlpgxKKlpgxddlp 7K Ay(4 J  }%>GX @ 2 O 2=\\]4 j  \  @th0 3 >,t\ ($0@=ME4 B.='G4/40@tICcS\4 B,C~G 4t0P0@t<2Gdgw4 BgG 0@8>h(#0@tX4 BXG4 B( G00 P404 P 4X"P `  P40G<P4R>P0 3  X,t:@$(.4Kx8P ,t ,J8J00.:B> B$T0<$1P 4] Bt$ @@ <$ 0@,? (0 B ld,ԝ h(, <<l80-ԟ:C> @ < 4 j h 1: PW /F@(<  2 h # X"@ 2 hO #.\\]0 3 h / Bt@ l0 3 h   @@I l4tE#tP BtPl4t ?L4OL8PL)г  0* p49XP4/T |h  `  p&p10',4 B wG4lP B l` 40 p(h`4J<P 40 p h  p,4Jd:tP 4K<;hP40 p h  p104K <M4 Bl0-Ę10`4J$4P @PM40ԟ8 \ @@ l,P@<4t@P$0P P@PL|fAD4  2 < ,`g) @`D @ @ 44xGP,| B,p l0D B,dl B,$|,, ^ Bl0 B$4̐HQ4HI@P4R@P4D`P4O=lP0* $ `t 440>Pd tL : 00/.-4 J fG8 4T4Et'4TE&,  04 @ t D448-DD,hY BL l0T BLlTL B$44T"P4" $oxs 0@C&4 B0G4'$&*PWw,LA),4 J| hw,G@ < 2| x H "@ 2|O x +\\]4 j| D ,,h|)N @,,0 3| w,4(  \,,@d pp "#44  @$"4 &".L4,$Z@Z7,PN BJ l0 B!HltO4PTq2 B$l0$$$,-8($!,+ 44aAtP 0@@T2% 4 B P4G,#,,+*0)(&T #$S<! %4#< P!@d$-<ŕZ\&4 N!|JuŵG 0@X!" 4 B!GD4-C"#&44#B1h14 "#&#X#%4"` $",PW$@w]A)^0T @#$ $ ,#) #2X$lT 0op.2X4TZl,XP)4 J# hwG < 2# x  4 j#   @$!HS< #-4S< @$ 4S<%%  @$"T#X&44O(ȘֲZ4/Bb4T&Dl( #4T/F +@ 2#O x\\] @'$@'0 3# w4aF64b0">a400-xUue0&$2ow @$52X2$l2 @/$223,305/$0,05/$- @/$"T3,&4 @/$/3.05/$/4/PT4(4TI4@O4@O 3rPOpO@P4YjW @4  24` Zi ,5|4`* L :4` [g00/.-0 34` Yj5 @5455245?pPW74dJuxVA*4 J6 UCdxGl<  26 eKtl$ S@ 26O eltw\\]4 j6 vJS ,7`6*270 36 dJux @Jp747<' &$.-Ȭ@&> p`H` <w4UoP=<RpRVTTr0:S:,T(UQ|<],&߬!&<w:w@pp8>5awwa8@ /H"sR"T-&\sep' aӬ'<c!cε>8l4t>N,J T>T4P4LxPLD4OMh˂R 4 JM$VG( ,KPM$*@@ 6M$h˂*)*4bP Xj @NLMN,4!LNLLDLJ Jp5@/"T" -'!H4y<dz0F 38Or QmQxQ8 BP$QX40QPBbR "XOQOQr04/PTPBbT PT:8op{; SVXR[ @Rl|RRp0&RR'owRRp XRR @Rq4Sgt8(RST(SSpR X[SgtS4'RS)SUVU  @RmT(Q84" RT\*oxsTTxT "XZT(Q8,#T+T(TxT  @RmUT4"` RU4,UpUPT "XZDUUP,#@U-U UPT,RoT4$y< X:Sgt @RnSgt @XVXV80$RV0fvnV84/UVxUuV V[@WV40VW81xUueV4/UW|hWXXl WLZDWV40WLW2hW WLZX$T40WLXX3hX WL[@XV40WLX4hXl0UpDcy\ZsTxX4U[t_BVXl4UoPDS84PT\]\\,\<\\], @[؃\\\<05[\>\<\ @[\\\ @[m\T05[]?\ @[mx]L|<05[]|@],\]L @Pj ]],P]A^*N]4O]h˂dB4 J^VG @ 6^h˂*)* @PlH^^,P^CfH*\^[@e4 JfH UCdxG@ 2fHO eltw\\]4 jfH vDM<  2fH eEtl %0 3fH dDux  @Pl|``, PaEa0*j `@ P`YjjF@4  2a0 ZiL :a0 [g00/.-0 3a0 Yj  @Potb@b , PblGb*n b @ d$b@ŕoH\&4 NbJuŵG< S`bJŕpIcc4 Jb ŞG0 3b Ș0 b ŕ,ddelfg g,gg feldd4ObȘֲoJ4 JdG@ 6dȘֲ*)*4Ob֘p K4 JdǘG@ 6d֘))*4ObpDL4 Jel՘G@ 6el))*4ObqMPW^dDuxj@DA*4 JfG@ 6f))*4ObrLN4 Jg G@ 6g ))*4ObrO4 JgG@ 6g))* @PpTh|h\,PhPh+h\PWh|wrQA+4 Jh hwG@ 2hO x\\]4 jh < 2h x&0 3h w4PT|!,4PT jP6jT4PT<P54PTikP.khT>T4PTi14PTll-`Rpl|awwa4PT;L~;4PTmt9T\4PTnxn03HmsRQ8T4PTvnP7n4PTw,oP0ot4PTvp/pT4PTqh P8RP8DbCCD  @RrPQO4PTrr044@r0,#Q;QrP>D>4dHP4"Ts^ @ӈt4s*Tv "ʐt` @P8yhtmHRyh5[e(Rx+>T PT{u8p3{Uz]Fdgugugu@ 6vP @7]>dhththt4 2x 9H L :x :zF00/.-ZD0 _vP 7dFy0 WuL 5[H{0 wuL 8~˳0 UuL 5{@PuL8~IeTA,udpdD8(,PtUuL+r0y>  à $ \22\ [\ :HMMH4 @H\ x  8x,   $T+0   x  Bľpl  BĸP l P  B$`4 0BbR4 /H4TI  P 4 /dBb   pP4 0?JD P4 0?JDĕT @op{ϐp\4, l،Ў  @@l0 &싼ow ؋l  ȋ  @p{p H h  ȕ{p4 '쌜   Ȗh{p  @Ќh{p   @8x4 " Loxs h  "șx, # h   @<4 "` $ώ` @  "ș<@, #@ @   @ȊP4 " :C>8   "Ș\ȊP, #d    @x4 8 (4  "ȗ|4, #@@4  , ȓ4, X$40    @ȑ0 $Hfvn   @Ȉ0|\, ȑ+ \P W|jA,4 J QjG@! 2O ^i\\]4! j lu<" 2 $^tT0$ 3  %$4$"` 쏠.72ϐ4$/ xUu $h84$0hxUue$4$/8|h$T$ $> 4$p<`$T@$h4$[\$s4$l_$8e$$$T$ u8p3آ$D $@H؛0$&H!$$ $|؜$ $ @Hxd4$"`H.72$D $"|Xd,$#@ǜd$D $ @H<4$"` Hp&/*$ $"|\<,$#@ɝ<|$$$$d<,$HyxyLP8,$(\X0$$,$؜$ $@|0$$H([kc$ج$<D$c$,,Ad$D $@(dw4$b蠘,$ $D $@\̠4$b+A#*$$4$$y4Pd4$$<e$\*#*$4$$yܢ0c\$X922$8$44,$`̣P $@ `0$5$` $@ $@< 0$5<$ $@p0$5$P$ p $@Ķ ,$ĥ,,"$H$R5[z0֧,,>4$ N, &{5G@%Pv,B47]FyzA4% v 7dFy@& 6 @7]>dhththt@& 6 >]Fdgugugu0& _ 7dFy0& w, 8~˳0& U, 5{@&P,8~IzA4& 2, 9HL' :, :zF00/.-0' , 8~I '@ķ<,'Ĩh|-,r'4'O<h˂y4' J|VG@( 6|h˂*)* (@ĸD$,(ĩp.,($P(WDdJuxA0,4( J UCdxG@) 2O eltw\\]4) j vJS<*  2 eKtl U0, 3 dJux ,@Ĺ@,,ī4H8,,@,PYjt@4,  2H ZiL- :H [g00/.-0- 3H Yj -@ļX8,-Ĭ<,-8@-d$Xŕl\&4- NJuŵG<.S`Jŕܮ4. J  ŞG 0/ 3  Ș0/  ŕ,/4ܯ8,/8ܮ44/O Șֲ4/ J4G@0 64Șֲ))*40O ֘40 JǘG@1 6֘))*41O 41 J՘G02 W, 5[H{42 JG@3 6))*43O H43 JG@4 6))*44O 44 J8G@5 68))* 5@Ľ,5IJ,@B-65P5WwAD-@45 J@ hwG|@6 2@O x\\]46 j@ <7 2@ xT09 3@ w49\X9**9P490WH9x229D49D0Q9>D>9莨49@O9 DbCCD9̊P49 ( !I49 pPS9<49  DPR49~PK49~-N@9 6*)*49O 9à49 tJ9@awwa9l49pV9<9У49lPH98sR9x49PT949pPM9494L949!pPU49"` T8O99PT>T9`09@ Уx49 Bix,G 4:PY\: x <P@<8мp: 4:d P : @Tt,4:Up`?,:#@N :t`:t`:0BHB:BHB :Šlà,:h8;<: PTT0:1 :B($l :B(( l<: \PX<: d P P(x <: T|lQX`L :B($L4:0Š,BbR4:/Bb4: 40:@ ̌:t`T: <oGpB78Pΐ :@Tƨ0:&T)ow:ƨ :ʐ :@TT8:(T4*Ǭ :ʐ(T:4:'T+T:0 :ʐ\ :@T( : @Tpà4:" TȤ,oxs:P :"ʐpà,:# -p:P : @T\H(4:"` T|.ɸ:ɘ( :"ʐHɘ,:#@/H:ɘ(4: x:nj4:d,:T;<=8L0:d60:@(Ʉx T :@ʐp0:$T@4!1):4: Bix5G4;/d˼xUu; ;ˈl4;0ˈ$7xUue;4;/dl|h;̈X ;8̨4;088h;̈ ;8P4;08D9h; ;8lx4;08ͬ:h;X4;d,4;\9P|4;dd'(P4;dP;T;̈ɘ4;dP\;s;4;dLϠ;le;X;(4;dΤ(D;cdmф ;@ \ф(4;b ѸPm}u;d ;@ 4;b Q};8;4lҸ,;Ҙ$ӈ ;@44ҸҘ0;54R;Ҙ ;@4Ҹ ;@4\D$0;54tS;$ ;@4t,Өӈ0;54T;ӈ;DӨ; p;;44 ;@(|pP,;(Ԝ[԰L-b;PP;WpdJuxt\AN-p4; J԰ UCdxG @< 2԰O eltw\\]4< j԰ vJS<=  2԰ eKtl0+0? 3԰ dJux ?@(\4,?(`_tV-?@?d$4v9`\&4? NtJVߖG4<@S`tJv9a׸4@ J vG0A 3 y60A  v9,Aޜٔ<,A<ٔޜ4AOyb4A JyG4B JޜyG @C 6ޜy))*4COy @d4C JyG$@D 6y *)*4DO ye4D Jٔy G(@E 6ٔ y))*4EOy(Hf4E J< yG,@F 6<y())*4FO(y6g4F Jy(G0@G 6(y6))* G@(۬ی,G(h\.GیPGW۬L`]iA^.4G J =LG@@H 2O M\\\]4H j ^`mi<<I 2 Ma\8tW0K 3 L`]K`,Kp4KPg@K 6y*)*4KOycK(T>T4K ߰jK|laTlT4K44<u4K oHKsRKàP4KhPq4KpPi4K4h,K(,f.@K K@(P4K &P~4Kd8<P4KPpKxKTTKd K|t44K"`  WhK44KsKx4K B)G L"ʐsxs L @T`s 4LPPr@LP4o@4L  2 p4M `8 M@LX<MM M@ 4Mb x}MdMM4MhPyMҘ8M\ƨM48M4tM<,M<M M@LM0M5L0M5LMD M@L\D M@L0M5L4M9PwML M"ʐlL4M"` T0, M @Tl4Md)MLML,M#@l4M P8M:1`2,MM M@, M@Xx0M;M< 0M;LM : q}00/.-0M 3 oM8 M@484M\:Pz4M >P,M<0M;$4M/P M4M0 4Md@!4M\PMML4MP4Md$MM Mh M`| MM,M(Hz.M Xx4M0 ы4M/d$VqM M M@x4M0| qXM,d7 i c8p ~.,Mt|T,Mt`460VM0M6\M0M.t  MB@0M6<M$1tP 4'JD NB@0 NBNh N@@t0N-tNH,N(d N@@t\00N-t`id NB@L0 NBL0 NB40N| N@@t(L0N,4N$LP0N-t `id NB@dGG> NB|N|L̬NC88HN.4N NL N@@tp4N<xN| ((4N0 q Np 4N0qN/dN5N N/d54N" T 04NdD N"ʐ,N#\Nx N @T̬NN 4N"` T6 8XNp) ()(N4N PHN>d,N 1/N4NfN DNc  U$` <NXxN T N@ <X N@ <x N@ ph@NPh0TAwUA4N J !T0|G4Ob~U#uO ,4O/ JT!{Ai O|p@Oww@Od$ K)D\XO O@  O" TTO <LM}<  xOl O @ `T 4O N|J<KSG4P  2 1U@v4Q"  SL\UWP 4Qb $ Q@ Q p,Q|/\,Q DH0Q  ,,Q XD Q"  QQ4Qb U uLQ : 2P>V00/.- Q @  Q X Q@P \Q \0Q$  hVxfp^Q4Qt d Q,Q# @ ,Q !,Q I < QBt,QXx p4 QBP44QPk0Q-S:\CW> QBt4Q QB4HQWPW>4Qt8P,Q d ,Q#@VTQ @ QB,44Q PQX QB4 QB4 QB(4 QB4<Q d@  ` QB4 Q@@4Q` QDQcdx.|.QQ.\Q.\ Q@TX.2QW>W!!Q\  ~~DQc ZX Q  Q@ Q8 Q@  0Q&  L\T Q@PXd4QbP}Zjb4QbP ||jڊ0Q-{:C>QDd\Q >4Q0Ql<Q X, d d ,QT P$ QB, QB,Q \|  QB<Q N,5l', P7@p QBPLQ ]`PQXh\b ^tx P QB QB(h QB<Q  $p8Xxl,Qx QBLQ (`8$̿ 8 Q@@ ,Q l,Q 44Q"` zLUP,Q( Q" l Q @ hl,Q#@yQDdQXd4Q xlQQHQh>PQD8Q4Q0|1<6i4Q0|0'<1i4Q0|'1,iQ Q| \,Q P|,Q|P4Q Qp8e66v8v4Q4Pn4Q N,J vG 4Rt'Pt,R($ %04R& Pm4R N%JnGSjj>@Sd$L<\XSd  S!H11̬Sq411ȬSp11ȬSLæ>S¬S !!S$SP: S@($@Sd$n\X4St%P}S. S"ʐ8`%S01@2HS%@EbSDTDTbpS$rS(dS55|SBL87B0uqlH8<(PCiLikKsn`0`aSSSt,SJplaTlTS-S$!̬SlaTlTS S@T0P{S2.8S40,33 S@/30 ,S20 330S@(0|0 SB@104S B0XG 4TX1P0T-t%`id TB511@,T8 .LT \xLیP`X$0XXT0r T @T`2 T@@tX12T3Tx/ T@//320T5//H0T5/2T3 T@/\3D3 T@/330T5/3tT3D3,T($3T\ TP['5'[(4T/dE T5T < > T~t@.("FRNQNl8Th|B8ThB8ThB8ThlB8ThLBTC8Th(B8ThԜB8Th,B8Th׼BTD@8ThBDT1tDtC09Z4T KBx 4U3B`)91 UBCdC4U3BA)91 UBCC4U3BB)91 UBD D@UD(UCCD@DEEl UB El4U3BD)!UE UBDE4U3BEX)!UEl UBE$ElUD4U3BD`)!8Uh hB,U 4 4EDU1FF>~$pL4U KF@d 0VIGdGH4HIIlK4V3F@I}6>:4V3F@GP|6>:VGd VF@<GGd4V3F@G{6>:VG VF@GG4V3F@H z6>:VH4 VF@PG 4V3F@Hy.62VH VF@HTH4V3F@Hx.&VI VF@HI4V3F@IX.&VIl VF@I$Il4V3F@I.&VKVJVI VF@FIVtF@,VF@X,VI, VL@MH VGdVJVH4  VLM|JVIVKXVXIl VLMKXV dK8Vh B,Vp8K VF@@I ,V<|O8VhB,VLLDDV1M LXx#РY4V KLXL (WJJKXN,NN4W3LIhxp4W3LJhxp4W3LK(hxp4W3LNXh`WN, WL pM 4W3LN Xh`WN WLNLN4W3LN Xh`WN WLNNWJdWOWON,DW1P8P0P$ 6 WOh pP` 8Wh|B4W KOh0P (XOPQDQRR|4X3OhO8@PH4X3OhPȥ@PHXP XOhPP4X3OhQ0@PHXQD XOhPQD4X3OhQ0@8XQ XOhpQd 4X3OhR0@8XR XOhQR4X3OhRh0@8XR| XOhR4 X QX R|XMXMR8XhM$BXS< XS\LSS4m36F>m m<t4m36F>m$ m$4m3x&6.m mD,4m3&6.m m4m3H&6.m\ m\m@mm|mm ml ,m$0mtmHDm1;[T(64m Kl;(ntD4n3lK[S4n3l<K[S nl@t4n3lK[Sn nl54n3l0;KCnD nl4,4n3l;KCn nld4n3l;KCn nl,nlnlnnִxntnD\n1@nxجLnDn Tn8nhtB8nhB,n$X׈8nhB8nhޜB8nhB8nhٔBn8nhJ 00/.-0 3 <M-@ 2׼O  \\]4 j׼ \@PL]A,P4 J =LBGL4 2 M \PL : NZ 00/.-0 3 L]PWUqfA1LPW\mI⠬A1n,@t`4 JP M\FG@@ 2PO ]=lH\\]4 jP n}D< 2P ] l=H50 3P \mI, 44 J FqUGPWl}I䐫A1,0d4 J@ ]lHG4@ 2@O m=|H\\]4 j@ ~8< 2@ m |=</0 3@ l}I@ 2O Ve\\]4 j gqv|PW|-攪A1,4h4 JD m|FG(@ 2DO }!,\\]4 jD ,< 2D } !0H40 3D |-< 2 Vre30 3 Uqf4O"t 4 J@}MG$@ 6@"*)*0 3׼  PWeqvA1,$X4 J4 VqeG@ 24O fu\\]4 j4 wq|< 24 fru$U0 34 eqv< 2׼ hWHB4OuqPl4 JfquG@ 6uq*)*4O4 J*Gd@ 6*)*X$$!I!($ $!I!1u,,ڄڊWPWHXdH\udu.6!6 uuD1( #xZl4 K$cx,l(|` $d8 43$|( $l $H43$( 43$( $ 43$$(  $|43$ $`43$L| $,`,,OhL $,$OhL \43$`(,D1d0{e"дZl LDS<4 K{t,hX43Tc43hd43,bh h L$S<43`{X 43@a{ X43{ xa NL43_{<&S\]$/$L ]S\N,75&/$$ P,'S<N,LddNLu||D1PT{$!hZ44 Kh{ ,4X hjThgt43h h hx43h43hD{X hk4gt43hT hj H43h{ h43h|{ h< PQ3fhs Ru[43h4{4vgtX\hs fȂxu3t]^`Q[Rb h\]k4ddj u||D1t h$а* (I l4 K(p>8,l`X43(f 43(g 43(e ` ( (43(8X (T`43(d (x43(" (l (X43(L),(B< (B! EED1 | H{8QZ  4 K{,   0     ܷ< {p 043 P  P    043 4O43 M{ ܸ {p43 N ܷ  43 tK{  @  43 L{  ` < Ċ{H43 !{ {p \{H̨$8 ddu||@P/<@|||,Dx<4 J <G,0 3 /<4  2 0;,L : +100/.-|8hB( @Xt,tk4|WLVV8,X1t4UXA< [:$OZDZ[@< V8RSpUTxUP|QXt5Hto4@P/<@||,l<4 Jt <G-0 3t /<4  2t 0;, L :t +100/.-88htB @8,8\h,t24\^< 0|\<8< ،Hh@\85H8 ( 8qX  й_  йf  йm йo йTahomaTahomaTahoma01RSRC LVINLBVW% |Ȑ 4%RSID0LVSRDBDPWXLIvilCPTMDSTMDFDSLIdsVICDversDLDRFPTD CPMp ICON4icl8HDTHP\TRecpCPST!PICC#LIfp% FPHP% LIbd%4BDHP%HHIST%\FTAB%p{}P}t|x ? ~@(h}AÄ~Bl}C4~DČd}E$~G@4~KŔlyL$}M,T}Nƈ}PܘzQ(0}RtD}SP}T$yUȄyV$/W0X}XɌ0~Yt}Z<|}[ʔ}\z]<{^ˈ|_@`0b|cБfPUhxi̜{j8kdd{lΰlUm nH$oϔ(p,q,0rx4s<t@u\DvѨwpx@yҌzL{$|Ӏ}D~dP԰(|L}HՔHD,xT |{\zר{<{@{،4{4$$(xL|L{,PWxx|H{(|t(" X{X|ܤT||<|݈\Wx{ {l{޸{{P%ߜVDV4XUt)' $Wl|[ L"x5$|J5D5d5|5ԕ55 5 6(6(<68DF6HwH6X4}I6h<}J6x,}a6|d60e6g6U6{6z6z6`|7V7T(7([7857Hl8|hw x{|؀Demo.vi99ݽwp1 10pPp~:U//##?ȯW꿫着꿢ꪪ着+ Ȍ Ȍ jAd`Fb&AFffFbfAb$ffFdf<?g<=;ϟxøxq<,>x ?>x?*(>#?*(>## Ϗ̈̌ ̀̈̈̂b,,̈H b,΢,  (,,̂Ā̀,,̢,h(̀̈̌̂b,,̈ b,΢,  (̈,,̂Ā,,̢, < ,b<Ȍ̂̢ b , ,fjfjf,NNN,NNN̂o&fjfĵo&fjfj ,b b,NNN,NNN ̂o&fjfjb,fjfjf ̂o&fjfjb$NNb,fjfjf b,NNN,fkfkf,NNN,,NNN , <Ȍb񈈌,̢̀b̀΀ Œ.΢,, (̈,.,,΢,,΢,̂ Œ.̂ ̈,b. ̀ ,̂o&fnfn̢̂b,fnfnf,NNN b$NN ,̂o&fnfnb$NN ,fnfnf,NNN b b,NNN,̂o&fnfnb$NN̂o&fnfn΀ Œb,b...,,.b.̂̢̢̂΀ Œb Ȉ̈,Σ b...,HL,,0  ,̈ ,L̈,L , , ,,  ,̀̈,̌̈, , ,̈,̀, ,̌̀Œ̈,,΢,..h, ̀ ϏȈ̎ ȌʈȨB(̀ b,Ꮟ̢.bȞȈ,舨̈0333 ̬B@̬B   * *  *(   Ȉ ̪̌,̈̌̌̌̌Č̈̌ȌČČ ̀Ȉ̈̀ ̀ ̬̀B̀ ̌̌ *( Hό ȏ@?RSRC LVINLBVW D@ <>~>NA ُ B~ '7{[:wm<LVINPIC-Hard Reset.viLVINPIC-Command.vi' h    6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@ port number@@P @!status @code@0sourceerror in (no error)"@@ @Numeric Data Bytes @TaskPTH01 JRKerrDriversV1.llbPIC-Command.viLVCCStatusByte.ctlN)-StatusByte.ctl@P@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status BytePTH01 JRKerrDriversV1.llbStatusByte.ctlLVCC Stat Info.ctln  Stat Info.ctl@P@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status InfoPTH00 JRKerrDriversV1.llb Stat Info.ctlP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number P& c8 P+ PP"@P@flg@oRt@eofudf@PP @!status @code@0sourceerror in (no error)xP!0dfdPP!0txdPP!0oldPP!0ext P cP"@P@flg@oRt@eofudf6PP @!status @code@0source error outxP!0dfdPP!0txdPP!0oldPP!0ext c P"@P@flg@oRt@eofudfP)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status ByteBx)-StatusByte.ctl&P!!!!!!!!dfdBP)-StatusByte.ctl&P!!!!!!!!txdBP)-StatusByte.ctl&P!!!!!!!!oldBP)-StatusByte.ctl&P!!!!!!!!ext P P P P P4 P@@@ cvP"@P@flg@oRt@eofudfP  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info\x  Stat Info.ctlBPP!!!!!!@dfd\P  Stat Info.ctlBPP!!!!!!@txd\P  Stat Info.ctlBPP!!!!!!@old\P  Stat Info.ctlBPP!!!!!!@ext P cXP"@P@flg@oRt@eofudfP port numberxdfdPtxdPoldPext" P@@ `Task c cL cD@@P @!status @code@0sourceerror in (no error)@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c cd@ port number @Task c c  cT PvPvPvPvPvP c0 c8| .  B^   8P \n    6t@.t@ @.@ @rXVIDSPIC-Hard Reset.viVIDSPIC-Command.viPTH0i386code YEwE\EPPUEd$=N=0Ð)Ӏ}+ELXC4{8SQRVWPEEXPE EXPERUQ YZXEEPERUQ YZXEEQRuhPED$X0d$ZY=t_^ZY[ÐuP$Yd$ =C,C$C1>䳳 port numberH|DQDQֳHD` HDXYPDmzmzTaskHD(}}HDHD`J HD߷ ZDPIC-Command.viHDtKXKX Reset Position Set Address Define Status Read StatusLoad Trajectory Start MotionSet Gain Stop Motor I/O ControlSet Homing Mode Set Baud RateClear Sticky BitsSave Current Position as Home No Operation Hard ResetZPNG  IHDRZmIDATx F̞2F(NuB[4y4 D^R1s3tx aD۵P!\ec?6X/2p4vn}Ka+jIENDB`TPNG  IHDRZsIDATx @MN:@T)-="T!}oED_Θy"P-5\Kj@, Oi߬XQ#^i+}`4`1۸! IENDB`ZPNG  IHDRZmIDATx F̞2F(NuB[4y4 D^R1s3tx aD۵P!\ec?6X/2p4vn}Ka+jIENDB`TPNG  IHDRZsIDATx @MN:@T)-="T!}oED_Θy"P-5\Kj@, Oi߬XQ#^i+}`4`1۸! IENDB`FPHPPIC-Hard Reset.viLVCCStatusByte.ctl(PTH0LVCC Stat Info.ctl"PTH0MFPHPp,D`P9The error in cluster can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. 0  0dx4 F  /s\30 7 4˳4 G`5D@d3`4O5Y@>< n`C&R/`3 The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4 F 4MCg\4 2 HWWt3 `E%Y9 E%Y9 E%Y9 E%Y9 E%Y9 @ PB4B[?@p 4 0CBONcyCBONcyCBONcy | The code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.L 2 HQWW0܈0/.-0  DM[dx4 Qa @8 (p 4 OB[NbzOB[NbzOB[Nbz4 F a pCp34 2 u$l30  q dx0 |p The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.< S`$]=D L 0   xt The error out cluster passes error or warning information out of a VI to be used by other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.0  4]dx4 F  $3 x30 7  8Y˳4 G 9H|3 tx 4 O 9]= < n GV3D~The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4 Fx 8G,34 2x L[U҈3  I] I] I] I] I] @PC 8_Y>D<@)p 8x 0GScyGScyGScy|LThe code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.L 2x L[0܈0/.-0 x H_Ydx4Q eY?p 8x S_bzS_bzS_bz4 Ft et34 2t yUҐ30 t uYdx0|( PThe source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.|  <(  "   L  @d!" OxD)-'4 F(JO^U34 N GP3<S`(J`x@dl0  `xdx0 7 dt˦<(L<L(4 GLh#w\34Oz+tAd4Od#yt@4 G~+\34OАtA LfawrlpKKfawrKKlpfawrddlpfawrKKlpfawrddlp 7LWd_ytewfd_ytfewd_ytewd_ytewd_ytew 7Wz_tewfz_tfewz_tewz_tewz_tew| |arlpKK|arKKlp|arddlp|arKKlp|arddlp arlpKKarKKlparddlparKKlparddlp4OЦ*tA4 G\34 G*\34Oм-tB4 G-\3 7W_tewf_tfew_tew_tew_tew 7W_tewf_tfew_tew_tew_tew4O/tB arlpKKarKKlparddlparKKlparddlp4 G(/\3 (arlpKKarKKlparddlparKKlparddlp4O/tC  arlpKKarKKlparddlparKKlparddlp 7W_tewf_tfew_tew_tew_tew4 G/\3 arlpKKarKKlparddlparKKlparddlp4O6tC 4 G6\3 7(W_tewf_tfew_tew_tew_tew arlpKKarKKlparddlparKKlparddlp 7W_tewf_tfew_tew_tew_tew0|!( 7W_tewf_tfew_tew_tew_tew@d!<(X~`" *4 F"JXg34 # 3 ,6|?,,6(?86htB,6L>86hB86hB86h`B,6@?d86hB,6 ` @,6< A,86hLB,6@86h(B86hB,6B 86hB,6(\A,6\\CL86hB86hB,6BX86h(B,6( XB,6$X"PC86hB86hB86hB,6 $ !C86h"B,6#\$#$$HE86h%4B,6$%&%t',&D86h&B,6&(4(h'x')D86h)B86h#B,6() + ))@*lEL86h*B,6*,-E86h+B,6,,<.FL86h/dB,6-4-h.F,625,30I86h2B,6334G@86h5B,66686l67L7G86h:B,6:X:9 9<9lH86h:B,6778l8Hl86h.B,6//0dH86h0B,62101I486h2`B,69port number The parameters for serial port numbers depend on the platform that you use: Windows, Macintosh, or UNIX.,6KKLDLKK`M06 J4 AT峳46 BJ4 0?峳447  2J4 CR泳4L8 :J4 FR00/.-@8 2J4 AAJplpllp@8 2J4 JTomomkq8|08|M4J48|\88hJ4BJtLJ,8L<(" ,8 " <(L XBDHPPIC-Hard Reset.viLVINPIC-Command.vi PTH0 BDHPXX88,8 dL08X48X P08@ Wwg48X P08@|48 BLG 449 BWG$4P:W{ L A4: J l{G(4<; 2 |,48@= 2O |\\]4= j 04,>D >0> 3 { >@4>X,>\l 8>g·0>@" 4> BG444?X P0?@<( |4? BL޸G844@X$P@p@ˬ@߬@@~X YܥpX+-= 2m  @ l8@hB,@4hX 4@   t D@1X x 𚳺$T4@ K <44A3 XòӮA 4A3 DúӶA A  < 4A3 âӞA A $ 4A3 êӦA A  ,\4A3 A A  A  4A3 pêA t A 0 t4A3 A A 4A3 4A3 `A ALA A  A A A A LA\ 0A@L\Yia4A B\JYG@4,BLL\4BX@x,B\ LL,BBaa (_H  йO  йV  й] йTahomaTahomaTahoma0RSRC LVINLBVW  4pRSIDHLVSR\BDPWpLIviCPTMDSTMDFDSLIdsVICDversDLDRFPTD$CPMp8STRGLICON`icl4ticl8DTHPTRec9CPST8DSIMtLIfpFPHPLIbdBDHPHISTFTAB(TDP,t$<4\LH `   ""#$#܀%Ԁ)Ā4ȼ5,55М6$ 6p| 6t 7l 7pd7T8L8hn8xx9 ~9Xx9w:hx:dw:y;z;tHy;y<,vD%>&>'?L(?)?*@<`+@H,@Ѐ-AD.A/A0BT1BPO2C$L3CT4C$5C,6DPt7D|8DX9ED:E8;EЊ=F0>F|0?F@GAG`BGpH H\#?*(># ?>x ?>x?2Ϗ̈̌ 퀀̀̈̈̂b,,̈H b,΢,  (,,̂Ā̀,,̢,h(̀̈̌̂b,,̈ b,΢, (̈,,̂Ā,,̢, < ,b<Ȍ̂̢ b , ,fjfjf,NNN,NNN̂o&fjfĵo&fjfj ,b b,NNN,NNN Ȉ,fjfjf,̂o&fjfj ,fjfjf,NNN,̂o&fjfj ,b$NN̂o&fkfkb$NN̂0,NNN , ̈謠, ̀΀ Œb,b..̢̂ Œb,b..., (̈,̂b,b..., Ȍb,,̀ ,̂o&fnfnb$NN ,̂o&fnfn ,̂o&fnfnb$NN ,̂o&fnfnb$NN ,NNN ̂o&fnfnb$NN ,̂o&fnfnb$NN΀ Œb,b,,̂ Ȍb<(,.b.̂̢̢̂΀ Œb,,,̂Ă΢,  ,̈ ,L̈,L , , ,,  ,̀̈,̌̈, , ,̈,̀, ,̌̀Œ̈,,΢,..h, ̀ ?! ϏȈ̎ ȌʈȨB(̬  (̈,΢,,̈̂̌ ,̬B333    ** <,̀̈Ȭ B ȈȌ ȈĈ Ȉ ̈ Ȉ̈H Ȉ̌̈ Ȉ ̈H Ȉ ̈H Ȁ ̌ Ȁ ̀ ̪ʈ, ȈȀ hhhXȰȏ @RSRC LVINLBVW D@ <&OXJI? ُ B~H/¦sLVINPIC-Set Home.viLVINPIC-Command.vi' h    6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@ port number@@P @!status @code@0sourceerror in (no error)"@@ @Numeric Data Bytes @TaskPTH01 JRKerrDriversV1.llbPIC-Command.vi!LVCCStatusByte.ctlN)-StatusByte.ctl@P@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status BytePTH01 JRKerrDriversV1.llbStatusByte.ctleLVCC Stat Info.ctln  Stat Info.ctl@P@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status InfoPTH00 JRKerrDriversV1.llb Stat Info.ctlP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port number P& c8 P+ PP"@P@flg@oRt@eofudf@PP @!status @code@0sourceerror in (no error)xP!0dfdPP!0txdPP!0oldPP!0ext P cP"@P@flg@oRt@eofudf6PP @!status @code@0source error outxP!0dfdPP!0txdPP!0oldPP!0ext c P"@P@flg@oRt@eofudfP)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status ByteBx)-StatusByte.ctl&P!!!!!!!!dfdBP)-StatusByte.ctl&P!!!!!!!!txdBP)-StatusByte.ctl&P!!!!!!!!oldBP)-StatusByte.ctl&P!!!!!!!!ext P P P P4 P@@@ P cvP"@P@flg@oRt@eofudfP  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info\x  Stat Info.ctlBPP!!!!!!@dfd\P  Stat Info.ctlBPP!!!!!!@txd\P  Stat Info.ctlBPP!!!!!!@old\P  Stat Info.ctlBPP!!!!!!@ext P cXP"@P@flg@oRt@eofudfP port numberxdfdPtxdPoldPext" P@@ `Task c cL cD@@P @!status @code@0sourceerror in (no error)@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c cd@ port number @Task c c  cT PvPvPvPvPvP c0 c8| .  B^   8 P \n    6t@.t@ @.@ @rVVIDSPIC-Set Home.viVIDSPIC-Command.viPTH0i386 ~codeYEwD~E\EPPUEd$=N=0Ð)Ӏ}+ELXC4{8SQRVWPEEXPE EXPERUQ YZXEEPERUQ YZXEEQRuhPED$XWXd$ZY=t_^ZY[ÐuP$Yd$ =C,C$CWtRDcp&cp&sourceH~w tw cWDJWUJWU Status ByteNIPJP UDc%p\c&p\ Move DoneUDy-\y.\ cksum errWD \!\ OvercurrentTD,\-\Power OnUD/\0\ Pos ErrorWD1\2\ limit 1 hitWD1\2\ limit 2 hitRD8 \9 \HomingWDS`S` Status InfoSD  VersionNDIDWDS`S` Status InfoYDmzmz Position dataHly ly UDւ A/D ValueH̀ޑ ߑ TD֙VelocityH܀ި ߨ TD  Aux ByteQDC^D^indexTD1^2^Pos wrapTD0^1^Servo OnVD(^)^ Accel DoneYD^^ Servo OverrunPD̸̹HomeH  UD+^,^ Slew DoneU Device IDH4N HDW2?2?볳 port numberHTERERݳHDy HDXYPDmzmzTaskHD}'}(HD&3'3HDncp(cp( HD## ZDPIC-Command.viHDLTaTa Reset Position Set Address Define Status Read StatusLoad Trajectory Start MotionSet Gain Stop Motor I/O ControlSet Homing Mode Set Baud RateClear Sticky BitsSave Current Position as Home No Operation Hard ResetZPNG  IHDRZmIDATx F̞2F(NuB[4y4 D^R1s3tx aD۵P!\ec?6X/2p4vn}Ka+jIENDB`TPNG  IHDRZsIDATx @MN:@T)-="T!}oED_Θy"P-5\Kj@, Oi߬XQ#^i+}`4`1۸! IENDB`ZPNG  IHDRZmIDATx F̞2F(NuB[4y4 D^R1s3tx aD۵P!\ec?6X/2p4vn}Ka+jIENDB`TPNG  IHDRZsIDATx @MN:@T)-="T!}oED_Θy"P-5\Kj@, Oi߬XQ#^i+}`4`1۸! IENDB`FPHPPIC-Set Home.viLVCCStatusByte.ctl(PTH0LVCC Stat Info.ctl#PTH0MFPHPp,D`P9The error in cluster can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. 0  0dx4 F  /st20 7 4˳4 G`5D@x2`4O5Y@>< n`C&R/|2The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4 F 4MCgH4 2 HWW2 `E%Y9 E%Y9 E%Y9 E%Y9 E%Y9 @ PB4B[?@p 4 0CBONcyCBONcyCBONcy | The code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.L 2 HQWW0܈0/.-0  DM[dx4 Qa @8 (p 4 OB[NbzOB[NbzOB[Nbz4 F a pC24 2 u$20  q dx0 |p The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.< S`!}=D L 0   xt The error out cluster passes error or warning information out of a VI to be used by other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.0  1}dx4 F  !0-20 7  5y˳4 G 6E$2 tx 4 O 6Z$= < n D S2yThe status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4 Fx 52DL24 2x I<XuҠ2  F Z F Z F Z F Z F Z @PC 52\y>D<@)p 8x 0D'P3cyD'P3cyD'P3cy|LThe code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.L 2x I6X<0܈0/.-0 x E2\ydx4Q by?p 8x P'\3bzP'\3bzP'\3bz4 Ft bq'24 2t vuҨ20 t rydx0|( PThe source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.|  ;  "4  L  @d!"4IyD)-'4 F(JIXV24 N HQ2<S`(JZy@dl0  Zydx0 7 ^u˦< (L<L( 4 GLb$q]24Ot,uAd4O^$su@4 Gx,]24OЊuA L`bqslpKK`bqsKKlp`bqsddlp`bqsKKlp`bqsddlp 7LW^`suewf^`sufew^`suew^`suew^`suew 7Wt`uewft`ufewt`uewt`uewt`uew| vbslpKKvbsKKlpvbsddlpvbsKKlpvbsddlp bslpKKbsKKlpbsddlpbsKKlpbsddlp4OР+uA4 G]24 G+]24Oж.uB4 G.]2 7W`uewf`ufew`uew`uew`uew 7W`uewf`ufew`uew`uew`uew4O0uB|t bslpKKbsKKlpbsddlpbsKKlpbsddlp4 G(0]2 (bslpKKbsKKlpbsddlpbsKKlpbsddlp4O0uC  bslpKKbsKKlpbsddlpbsKKlpbsddlp 7W`uewf`ufew`uew`uew`uew4 G0]2 bslpKKbsKKlpbsddlpbsKKlpbsddlp4O7uC 4 G 7 ]2 7(W`uewf`ufew`uew`uew`uew  b slpKKb sKKlpb sddlpb sKKlpb sddlp 7 W`uewf`ufew`uew`uew`uew0|!(J& 7W`uewf`ufew`uew`uew`uew@d!;R`" *4 F#JRa2< S`#JcDX#$d$4 # 24! #24" N# Ra2,#$&(+(57t,#7t5+((&$@#PC#g~D$@^4# F$ l{24$ 2$ kz 2p% 8$ 0frcyfrڼcyfrږcyp% 8$ r~bzr~ڼbzr~ږbz0% 7# g {˦0% # cdx@%PC#E %Ap4% F& 24& 2& ݒ 2p' 8& 0~Ίcy~Ίڼcy~Ίږcyp' 8& ΖbzΖڼbzΖږbzL' :& ݒ0u0/.-0' & ٖdx@'PC#E&@L' :$ kz0u0/.-0' $ g~dx4' F( 24( 2( ݩ 2p) 8( 0ΡcyΡڼcyΡږcyp) 8( έbzέڼbzέږbzL) :( ݩ0u0/.-0) ( ٭dx<)S`#y{F '.+4) F+(  20* 7+( }w˦0* +( y{dx,*410L2-,$4*O+(}BwF(4* G,$B_3+ ,$dulpKKduKKlpduddlpduKKlpduddlp+ 7,$W}bwewf}bwfew}bwew}bwew}bwew4+O+(0wF)4+ G-0_3, -dulpKKduKKlpduddlpduKKlpduddlp,,,$-20L144, G2/_3- 2dulpKKduKKlpduddlpduKKlpduddlp- 72Wbwewfbwfewbwewbwewbwew4-O+('wIl+4- G0L'_ 3. 0LdulpKKduKKlpduddlpduKKlpduddlp. 70LWbwewfbwfewbwewbwewbwew4.O+(*wG,. 7-Wbwewfbwfewbwewbwewbwew4.O+(/wI*. 1dulpKKduKKlpduddlpduKKlpduddlp. 71Wbwewfbwfewbwewbwewbwew4.O+(wGx-4. G4_3/ 4dulpKKduKKlpduddlpduKKlpduddlp/ 74Wbwewfbwfewbwewbwewbwew@/PC#ƷG.@4/ F5 ˷340 25  341 G1*_3p2 85 bzڼbzږbzL2 :5 0u0/.-02 5 dxH2R# H@/:42 F7t  3@3Pz7tB4H0A43 r7 $3p4 07 bzbzbzp4 07 0cycycy04 w7 dx04 _7t ͳ04 w7t  ˦04 U7t  dx@4P7t I1A44 J: (3p5 85 0cyڼcyږcyp5 8: bzbzbzL5 :: 0u0/.-05 :  dx05|\2#45 2: ,3p6 8: 0cycycy6~|Y"dY`+\,6 d 4=p86h B,6 L=86h B86hxB,6xD> ,6|?,,6(?86htB,6L>86hB86hB86h`B,6@?d86hB,6 ` @,6< A,86hLB,6@86h(B86hB,6B 86hB,6(\A,6\pCL86hB86hB,6BX86h(B,6< lB,68l"C86hB86hB86h B,6 8!!C86h#B,6##$0&D&tE86h$B,6$%0%d%()4D86h&B,6&''L'(,(xD86h(B86h#B,6)d))*<**EL86h+(B,6+d++E86h,$B,6,X,-$FL86h-B,6-.$2F,66T23|I86h4B,64H4|5G@86h5B,656 :x667DG86h7tB,6779t99H86h7B,6808d89DHl86h2B,6.//H86h0LB,6001LI486h1B,6:D<<8:;X;I86h:B@6PL1UK4J3@ul6|6|6port number The parameters for serial port numbers depend on the platform that you use: Windows, Macintosh, or UNIX.,6KKLDLKK`M06 J4 BU峳46 BJ4 1@峳0347  2J4 DS泳43L8 :J4 GS00/.-@8 2J4 ABKplpllp@8 2J4 KUomomkq8|08|M4J48| 88hJ4BJtLJ,8L;"4 ,8 "4;L VBDHPPIC-Set Home.viLVINPIC-Command.vi pPTH0 BDHPLH88,8 (08X48X DP08@ Wwg48X P08@ |48 BLG8349 BWG<30:@"4 qy@4:X PP:W|{%  A4: JH l{G@3<; 2H |&D3 @= 2HO |\\]4= jH %4H3,> H>0> 3H {% >@ |4>X 4> Bbq)GL30?@\; x 4? Bt$GP3,@ l 8@g·@ w4@X Pp@\@p@yy@~XYحHLH+-=x  @ p 08@hHB,@H4@  x H 8 tD@1X < $T4@ K pT34A3 p òӮA 4A3 pDúӶA x A p\ x4A3 p âӞA A p 4A3 p dêӦA H A p  4A3 p A A p h A p 4A3 p 4êA 8 A p 84A3 p A A p X 4A3 p ` 4A3 p $A pALA t A p tA A A tA xtA H0A@L brjP4A B SbGX3,BLt 4BX<,B ptL,B\ Bjj (_H  йO  йV  й] йTahomaTahomaTahoma0RSRC LVINLBVW  4pRSIDHLVSR\BDPWpLIviCPTMDSTMDFDSLIdsVICDversDLDRFPTD$CPMp8STRGLICON`icl4ticl8DTHPTRec9CPST8DSIMtLIfpFPHPLIbdBDHPHISTFTAB(D4Pt,$\<H  `  ""܌#(Ԍ#̌%Č)4̬5055Ԍ6( 6tl 6d 7\ 7tT7D8<8l489 9\9: :h:; ;x;<0<؋ <܋!=@Ћ"=ԋ#=ȋ$>H%>&>'?P(?)?*@@+@,@-AH|.A/A0B\1B\2Bĉ3CXH4C 5D@6DTP7D`8Dp9EH:E;E=F40>F?F@GЊAGd8BGİHHLx ?>x?*(>#?*(>## Ö̌ ̀̈̈̂b,,̈H b,΢,  (,,̂Ā̀,,̢,h(̀̈̌̂b,,̈ O b,΢,  (̈,,̂̀,,̢, < ,b<Ȍ̂̢ b , ,fnfnf,NNN,NNN̂o&fnfn̂o&fnfn ,b b,NNN,NNN H,fnfnf,̂o&fnfn ,fnfnf,NNN,̂o&fnfn ,b$NN̂o&fofob$NN̂b$NNr<Ȍ ,̢̂ ̀΀ Œb,b.b,̂ Œb,b..̂. Œb,b..., Ȍb,̂ ̀ ,̂o&fnfnb$NN , ,,NNN,̂o&fnfnb$NN ,̂o&fnfn ,fnfnf,̂o&fnfnb$NN ,̂o&fnfnb$NN΀ Œ̂b$NN΢,,, Ȍb<(,.b.̂̢̢b,΢,,,̂Ă, (̈   ,̈ ,L̈, , , ,,  ,̀̈,̌̈, , ,̈,̀, ,Ľ<Ȭ ̎ B( Έ, $ <̈B̈̈̌̈̌HȈH ̈Ȉ̌H ̈ȈH Ȁ L* ̀ LhhhXȰȏ RSRC LVINLBVWx XD@ <Ca]@MBq ُ B~ͺ"u:.:LVINPIC-Sart Motor.viLVCCStatusByte.ctlN)-StatusByte.ctl@P@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status BytePTH01 JRKerrDriversV1.llbStatusByte.ctlLVCC Stat Info.ctln  Stat Info.ctl@P@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status InfoPTH00 JRKerrDriversV1.llb Stat Info.ctlLVINPIC-Start Motor.vi P  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error)@ port numberPTH05 JRKerrDriversV1.llbPIC-Start Motor.vijP  6@P @!status @code@0source error out@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@@P @!status @code@0sourceerror in (no error) b bP c8 P+ PP"@P@flg@oRt@eofudf@PP @!status @code@0sourceerror in (no error)xP!0dfdPP!0txdPP!0oldPP!0ext P cP"@P@flg@oRt@eofudf6PP @!status @code@0source error outxP!0dfdPP!0txdPP!0oldPP!0ext c P"@P@flg@oRt@eofudfP)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status ByteBx)-StatusByte.ctl&P!!!!!!!!dfdBP)-StatusByte.ctl&P!!!!!!!!txdBP)-StatusByte.ctl&P!!!!!!!!oldBP)-StatusByte.ctl&P!!!!!!!!ext P P P P4 P@@@ c vP"@P@flg@oRt@eofudfP  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info\x  Stat Info.ctlBPP!!!!!!@dfd\P  Stat Info.ctlBPP!!!!!!@txd\P  Stat Info.ctlBPP!!!!!!@old\P  Stat Info.ctlBPP!!!!!!@ext P cL cD@@P @!status @code@0sourceerror in (no error)@)-StatusByte.ctlzP@! Move Done@! cksum err@! Overcurrent@!Power On@! Pos Error@! limit 1 hit@! limit 2 hit @!Homing Status Byte@  Stat Info.ctlP@ Position data@ A/D Value@Velocityf@P @!index@!Pos wrap@!Servo On@! Accel Done@! Slew Done@! Servo OverrunAux Byte @Home@@ Device ID Status Info c cL c  c PvPvPvPvP c$ c(=$ \D X0 pxl^k N $04v0 fP \n    6!@@@j@\VIDSPIC-Sart Motor.viVIDSPIC-Start Motor.viPTH04Ti386k~codeY Ewk~E\EPPUEd$=&=Ð)Ӏ}ELXC4{8SQRVWPEEXPE EXPERUQ YZXEEPERUQ YZXEEQRuhPED$XԊd$ZY=t_^ZY[ÐuP$Yd$ =C,C$}E$EEƅ48tQRU"d$ZYɍ,ƅ(t hhUEP,D`P9The error in cluster can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. 0  0dx4 F  /s0 7 4˳4 G`5D@`4O5Y@>< n`C&R/XXThe status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4 F 4MCg4 2 HWW `E%Y9 EE%Y9 EE%Y9 HE%Y9 EE%Y9 H@ PB4B[@,@p 4 0CBONcyCBONcyCBONcy | The code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.L 2 HQWW0܈0/.-0  DM[dx4 Qa @ (p 4 OB[NbzOB[NbzOB[Nbz4 F a pC4 2 u$0  q dx0 |p The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.< S`$]= L 0   xt The error out cluster passes error or warning information out of a VI to be used by other VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.0  4]dx4 F  $3 0 7  8Y˳4 G 9H tx 4 O 9]> < n GVWThe status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.4 Fx 8G,4 2x L[U  I] :I] :I] =I] :I] =@PC 8_Y><@)p 8x 0GScyGScyGScy|мThe code input identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.L 2x L[0܈0/.-0 x H_Ydx4Q eY?Xp 8x S_bzS_bzS_bz4 Ft et4 2t yUҼ0 t uYdx0|( PThe source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.|  ;  "4    @d!"4A -D )-'4 F(JAP 4 N <S`(JR -@l0  R -dx0 7 V)˦< (L<L( 4 GLZi4Ol)A4OVk)A 4 Gp4OЂӗ)B  LXi'lpKKXi'KKlpXi'ddlpXi'KKlpXi'ddlp 7LWVk)ewfVk)fewVk)ewVk)ewVk)ew 7Wl)ewfl)fewl)ewl)ewl)ew| n'lpKKn'KKlpn'ddlpn'KKlpn'ddlp 'lpKK'KKlp'ddlp'KKlp'ddlp4OИ߭)BL-4 Gӕ4 G߫4OЮ)B,4 G 7W)ewf)few)ew)ew)ew 7W)ewf)few)ew)ew)ew4O)CL+| 'lpKK'KKlp'ddlp'KKlp'ddlp4 G( ('lpKK'KKlp'ddlp'KKlp'ddlp4O)Cx* 'lpKK'KKlp'ddlp'KKlp'ddlp 7W)ewf)few)ew)ew)ew4 G 'lpKK'KKlp'ddlp'KKlp'ddlp4O)DL)4 G P 7(W)ewf)few)ew)ew)ew  'lpKK'KKlp'ddlp'KKlp'ddlp 7 W)ewf)few)ew)ew)ew0|(( 7W)ewf)few)ew)ew)ew@d!;JD3`' *4 F"JJDY}L< S`"J[D3D&$t$4 #pH4! #pD0" 7#p _H/˦0" #p [D3dx,"$&(*5,7,"75,*(&$@"PC#p_HvE%@^4" F$ dHs@4# 2$ cr<p$ 8$ 0^jcy^jcy^jcy4$ N#p JDY}8L% :$ cr0u0/.-0% $ _vdx@%PC#pwYEx$Ap4% F& yY44& 2& {0p' 8& 0vcyvcyvcyp' 8& bzbzbz0' & wdxp' 8$ jvbzjvbzjvbz@'PC#pcF#@4' F( c,4( 2( (p) 8( 0cycycyp) 8( bzbzbzL) :( 0u0/.-0) ( dx<)S`#pq/Fx"++4) F* $L* :& {0u0/.-0* * q/dx,*,-.0d1d3,*31d0d.-,4*O*u+F!4* G,y + ,w)lpKKw)KKlpw)ddlpw)KKlpw)ddlp+ 7,Wu+ewfu+fewu+ewu+ewu+ew4+O*+G@ 4+ G-4,O*+I`0, 7* u+˦, 7-W+ewf+few+ew+ew+ew4, G.- .)lpKK)KKlp)ddlp)KKlp)ddlp- 7.W+ewf+few+ew+ew+ew4-O*+I4- G0d. 0d)lpKK)KKlp)ddlp)KKlp)ddlp4.O*+Gl. -)lpKK)KKlp)ddlp)KKlp)ddlp4. G1d/ 1d)lpKK)KKlp)ddlp)KKlp)ddlp/ 71dW+ewf+few+ew+ew+ew4/O*+G4/ G3 0 3)lpKK)KKlp)ddlp)KKlp)ddlp0 73W+ewf+few+ew+ew+ew@0PC#pkH4@00 5, dx0 70dW+ewf+few+ew+ew+ew40 25, p1 85, 0cycycyp1 85, bzbzbzL1 :5, 0u0/.-H1R#pIH,86h B86hxB,6xD>d,6|?,6(?86htB,6L? 86hB86hB86h`B,6@?86hB,6 ` @X,6< A86hLB,6@86h(B86hB,6Bx86hB,6(\A,6\pC86hB86hB,6B86h(B,6< lC,68l"dC86hB86hB86h B,6 8!!D86h"B,6##%$$DE86h$B,6% %@%t(L&&dD86h&B,6&''<'+0(E@86h(B86h#pB,6()0)d)*D*E86h*B,6*.8+|F@86h,B,6,8,l-F86h-B,6-1.hG,6202d2I86h3B,6334G86h5,B,69646h67H5lG86h7B,67899<8H`86h8B,68P889dH86h.B,6//4/I(86h0dB,6005I86h1dB,6:(:\:;;p;JT86hH(/>0? 1?`2? 3@4@T45@D6@t7AH8A9A଄:B,;Bx