Revision History for
SC-610
Build 5370
Released: December 2007.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires 'B' revision drives - drives with Bootloader version 1.2 and above (refer to SupportMe script in Workbench).
- Requires Mint compiler target format 10 - installed with this Mint System File.
MVM version 10.
- Parameter Table version 35: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
- Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
- The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with
WorkBench v5 (Build 5240).
- Mint Virtual Machine 22.
New Features:
- COMMSINTEGER now takes an optional Node Id, allowing access to a serial nodes COMMS array as integer.
Syntax: COMMSINTEGER( Node, Element ) =
var = COMMSINTEGER( Node, Element )
- Support for MOVESTATUS indicating the current state of a trapezoidal move profile:
Bit 0 = Accelerating
Bit 1 = At (slew) speed
Bit 2 = Decelerating
- Modbus ASCII support for:
Function 0x11 - Get Comm Event Counter
Function 0x08 - Diagnostics
- Added Modbus ASCII message log.
- Added keyword CLEARERRORLOG.
- Added keyword AXISSTATUSWORD.
- Added keyword NUMBEROFEXTENDED.
- Added keyword PLCTASKSTATUS.
- Added keyword ENCODERLINESINSPEEDMAX.
- Added keyword BUSTIMEOUT - allows the inter-character timeout to be specified for Modbus ASCII.
- Added the following modes, supported by Capture (Scope), Comms Mapping, Sentinel:-
_cpCONTROL_MODE
_cpPLC_STATUS
_cpPLC_TASK_STATUS
_cpLIFE_TIME
_cpSYSTEM_TIME
_cpEVENT_TIMER
_cpMOVE_STATUS
- Added PLC actions for:
Jumping PLC Task statements
Suspend an axis
Drive Enable/disable
Run a Mint program
Stop a Mint program
Suspend a Mint task
Resume a Mint task
Start data capture
Start cyclic data capture
Stop data capture
Home an axis
- ADCERRORMODE now a member of the Parameter Table.
- Range of HOMEOFFSET increased from 65535 counts to 8388607 counts.
- Sentinel channels (when mapped to _cpAUX_ENCODER, _cpENCODER, or _cpMEASURED_POSITION) will cater for wrapped (position) values.
- Support for Hiperface encoder type SKM36 and SEK52.
- Support for change to Hiperface protocol, supporting new encoders with stored information on resolution.
- New keyword POSWRAP defines position bounds.
- New keyword PROFILEMODE - used to define profiler as linear or rotary wrapped.
- Slight performance increase to MintMT:
~ 9.5% faster than Build 5356
NCR Fixes:
- NCR02407: Axis was left at Home creep speed at end of Home creep phase.
- NCR02408: Display issue with pre-WorkBench 5238 on PLC page.
- NCR02426: ActiveX call to Get/SetPresetIndexInputsMax() will return error 3 "value out of range" when used with OCX Build earlier than 5238.
- NCR02448: Sentinel channels will only operate if at least one is loaded/stored in the Parameter Table before the drive is powered-up.
- NCR02481: Accel/Decel Time to Max Speed on the Presets page of WorkBench is miscalculated as zero.
- NCR02495: COMMSMAPMODE.channel = -1 is not reported as an error.
- NCR02500: StopInput with ErrorDecel will use Decel if already decelerating.
- NCR02507: Performing a Moving Current autotune test under Fine-tuning will reset the drive.
- NCR02513: Changing DECEL whilst already decelerating to the target position will momentarily take affect.
- NCR02517: In a trapezoidal profile, when entering the deceleration phase, the first point is not reduced to cater for overshoot into the deceleration distance, from the slew speed phase.
- NCR02518: On an Incremental move, changing target position to just short of the current target, when the profile is already decelerating, the profile will not reverse if there is a high acceleration defined.
- NCR02519: Issuing a CANCEL, will set the acceleration demand to zero - it should be an extrapolated value of speed and then go to zero.
- NCR02525: Modbus ASCII calls to read an indexed string do not work.
- NCR02526: It is not possible to map element #255 of the COMMS array.
- NCR02527: HOME = _hmPOSITION_SEARCH requires the HOMEINPUT to be assigned.
- NCR02528: During autotune the drive can trip out on Over Current.
- NCR02529: After HOME = _hmPOSITION_SEARCH, POSROLLOVER is not set to zero.
- NCR02590: Digital Inputs listed as supporting 10 - affected PLC Task.
- NCR02591: Mapping to cpREMAINING_POSITION will return a non-zero value when performing a Jog move-type.
- NCR02609: Harmonic hollow-shaft actuators (e.g. FHA-8C-xx) cannot autotune the Feedback alignment test correctly. It will either produce an incorrect hall-sextant table, or fail if the hysterisis between a fwd & rev motion produces a +ve & -ve angle.
- NCR02626: The PLC action to Disable the drive does not work.
- NCR02629: HCP1/HCP2 do not decode multiple comms writes correctly - a write to multiple comms, followed by a subsequent write will use contents of telegram previously received but not overwritten. E.g. EOT 2 2 STX 0 1 99.1234, 4, 5, 6, 7 ETX CRC followed by EOT 2 2 STX 2 1 1.25 ETX CRC will write to COMMS(21), and continue to write 4, 5, 6, 7 to subsequent elements. See also NCR02470.
- NCR02634: EnDat/Hiperface After completing Homing (on EnDat & Hiperface), ABSENCODEROFFSET is updated. This will be written to EEPROM depending upon PARAMSAVEMODE of the last API written before homing completed.
- NCR02636: Specifying a PresetHome with a value >255 (e.g. Position Search) is not stored correctly.
Build 5358
Released: October 2006.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires 'B' revision drives - drives with Bootloader version 1.2 and above (refer to SupportMe script in Workbench).
- Requires Mint compiler target format 10 - installed with this Mint System File.
MVM version 10.
- Parameter Table version 30: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
- Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
- The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with
WorkBench v5 (Build 5238+).
- Mint Virtual Machine 22.
New Features:
- Scale Factors (ScaleFactor, EncoderScale and AuxEncoderScale) now support floating-point values.
- Increased upper limit of SCALEFACTOR and ENCODERSCALE to 65536.
- Support for string access API's FirmwareVersion, UserPositionUnits, UserTimeUnits and DriveId as MintMT keywords.
- Hardware Limits indication on 7-segment display when not in error.
- Range supported by ADCGAIN increased to 400%.
- Implemented ADCERROR and associated functionality (see also ADCMONITOR, ADCMIN, ADCMAX and ADCERRORMODE).
- DRIVEENABLEMODE modified to allow CANCEL to be issued when enabling the drive via Hardware.
- Support for PhaseSearchCurrent.
- JOG can now be blended automatically from MOVEA, MOVER, INCA or INCR moves.
- Allow CONTROLMODE to be changed whilst profiling a move.
- Allow SpeedRef and TorqueRef to be set-up when the axis is Idle (mdIDLE) and independently of the source setting.
- Allow Blending of SpeedRef and TorqueRef.
- Time taken to read FASTPOS has been improved.
- Improvements to data capture:
- Support for CAPTUREDURATION.
- Capture modified to allow triggering on certain events - See CAPTURETRIGGERCHANNEL, CAPTURETRIGGERABSOLUTE, CAPTURETRIGGERVALUE, CAPTUREPRETRIGGERDURATION, CAPTUREPROGRESS, CAPTURETRIGGERMODE, CAPTURETRIGGERSOURCE.
- CAPTUREEVENT and CAPTUREEVENTDELAY are now obsolete.
- Implemented CaptureTrigger (the ability to trigger capture from Mint/Host application with a pre-trigger buffer).
- Capture buffer increased to 10000 data-points.
- High Speed capture can be set-up directly using CAPTUREMODE.
- Ability to capture:
- Motor Brake Status
- Drive Error
- Drive Enable state
- Drive Enable input state
- Current Digital Input event
- Digital Input level state
- Demand Magnetizing voltage
- Measured Magnetizing Current
- Demand Torque Current
- Axis Status
- Axis Status Word
- Halls
- Added keyword CAPTUREBUFFERSIZE.
- Added keyword CAPTURECOMMAND (supercedes CAPTURE).
- Allow remote controller to controller COMMS access (i.e. COMMS(node,element) = <expr>) over RS232.
- COMMSMODE now supports _cmBBP_DISABLE - ability to turn off BBP (ICM) processing on the Serial port. Allows Mint emulation of serial protocols (e.g. Modbus ASCII, DF1, etc).
- COMMSMODE now supports _cmNODE_IGNORE.
- Added constant _cmSERIAL to replace _cmRS485.
- COMMSMODE _cmHCP_DISABLE no longer supported.
- SERIALPROTOCOL.terminal implemented to enable/disable protocols on the Serial port: _spNONE; _spHCP; _spMODBUS.
- Modbus ASCII supported - see SERIALPROTOCOL and use of DIP switch SW1-9.
- Changed TriggerMode bit 2 to be the Digital Input State and moved old functionality (edge triggered inputs) to bit 7.
- Support for DPR event.
- Accuracy of FOLLOW and FOLLOWNUMERATOR improved from a 24.8 scaled integer (0.00390625) to an IEEE float. Removed support of FOLLOWDENOM.
- Increased range of AUXENCODERWRAP to 8388607.
- AUXENCODERMODE can now be changed if the axis/drive is enabled, but not if performing a master/slave type move (e.g. Follow).
- AUXENCODERMODE can now be set-up as Virtual, but allow Mint to read the actual position and velocity.
- Support for COMMSINTEGER and COMMSMAPDATATYPE.
- Now sample Digital I/O at the Servo loop rate (i.e. default of 1ms = LOOPTIME) rather than every 2ms. This improves:
- Reaction times to dedicated inputs (e.g. ErrorInput, StopInput, etc).
- Resolution of control of dedicated outputs.
- Support ABSENCODER on resolver.
- Added keyword POSTARGETLAST.
- Host array support for defining Cambox tables from a Host application.
- FOLERRORWARNING cannot be greater than FOLERRORFATAL.
- HOMEOFFSET can be used with additional homing modes (see HOME).
- The Output Relay has been moved to be part of Output Bank 0 by default:
- Use RELAYOUTPUT to assign as OUTX.3 or to assign as an independent output.
- Accessed as OUTX.3 and inverted with OUTPUTACTIVELEVEL.
- Default OUTPUTACTIVELEVEL is now 15.
- Programs using extended IO (Bank 1) with OUTX command must be shifted by one.
- Writing to OUT.0 will also control the relay output.
- Writing to OUTPUTACTIVELEVEL will also control inversion of relay output.
- COMMS can now access 255 user Comms elements - see COMMSMAPMODE and COMMS.
- Default PULSEDIRMODE is now 'Off'.
- PLC Task can now run (limited functionality) every 1msec (was a minimum of 5msecs) - see PLCTIME.
- PLC Task improved to take a programmable action list - order of actions implies priority scheme.
- PLC Task supports 16 statements/channels (was 14 fixed actions).
- PLC Task supports additional actions to:
- No action (for compound PLC statements)
- Call Mint Event
- Trigger Move
- PLC Task supports additional conditions to test for:
- PLC Task Result (i.e. can link PLC Task statements together)
- Sentinel
- Mint OnError event active
- Mint program running
- PLCDEFAULT added to allow the PLC Task to be reset.
- PLCTASK keyword added - allows PLC statement to be programmed in a single command.
- PLCACTION and PLCACTIONPARAMETER keywords added.
- PLCCONDITION, PLCOPERATOR, PLCPARAMETER are now read only (replaced by PLCTASK).
- Preset Table modified:
- Preset Moves can now merge between a Jog and a point-to-point move.
- Supports upto 15 preset Speed references.
- Supports upto 15 preset Torque references.
- Supports preset command to set position.
- Supports preset command to issue a CANCEL.
- Supports preset command to issue a STOP.
- Preset Home now supports HOMEOFFSET with additional Homing modes.
- PRESETCANCEL, PRESETSTOP, PRESETHOME, PRESETMOVEA, PRESETMOVER, PRESETPOS, PRESETSPEDREF, PRESETSTOP and PRESETTORQUEREF added.
- PRESETxxx commands now take an axis number as a dot parameter.
- Position Compare removed (can be replaced by more versatile Sentinel and PLC Task) - COMPAREMODE, COMPARELATCH, COMPAREOUTPUT and COMPAREPOS no longer supported.
- Trigger on Position removed (can be replaced by more versatile Sentinel) - TRIGGERSOURCE and TRIGGERVALUE removed. TRIGGERMODE no longer supports _trFWD_MOTION and _trREV_MOTION.
- TRIGGERMODE supports _trSENTINEL and _trPLC_TASK.
- 4 Sentinel channels added:
- Allows a parameter to be monitored for programmable condition
- Can be used from Mint program; Host application; PLC Task or TRIGGERMODE
- Keywords: SENTINEL, SENTINELSOURCE, SENTINELSOURCEPARAMETER, SENTINELLATCH, SENTINELTRIGGERABSOLUTE, SENTINELTRIGGERMODE, SENTINELTRIGGERVALUE.
- Performance increase to MintMT.
NCR Fixes:
- NCR01977: Certain Offset moves do not complete (i.e. the move is profiled, but the Offset move-type is left active).
- NCR02115: Data capture (scope) of Digital Inputs does not handle edge triggered inputs correctly - it captures the latched state only cleared when IN is read.
- NCR02127: No Input assigned' reported when setting Preset Home move-type, when a HomeInput has been assigned.
- NCR02129: Offset moves do not advance the move correctly (the demand velocity changes, but the demand position is not modified).
- NCR02135: It is possible for a Fast Input to be missed for the main axis (on either DIN4 or DIN5).
- NCR02136: If using Event FastIn (not Event FastIn4 or FastIn5), and FASTLATCHMODE or FASTAUXLATCHMODE is set to 'smart', then on exiting the event handler the latch is not cleared and will prevent subsequent Fast Inputs from occurring.
- NCR02137: Using a follow ratio such as 3/28 : 1 (i.e. 0.1071428571) will lose sync after a while.
- NCR02138: Writing to string parameters (e.g. DriveId) does not check against the maximum length allowed - writing a string that is too long can crash the controller.
- NCR02140: Setting POS whilst the drive is disabled may leave the demand position at the previous value for 1-2msecs, if the drive is enabled in this time then it will persist causing the motor to jump to this new demand position. RESET will also cause this.
- NCR02162: AXISERROR Bit 23 (Phase Search failed) does not get set.
- NCR02163: Using the PLC Gear Factor, can cause the drive to trip.
- NCR02169: With AUTOSTARTMODE set to 4 (Follow), enabling the drive will attempt to immediately move to the encoder position and will generate a Following Error if exceeded.
- NCR02208: After capturing COMMS(36), when uploading the captured data the drive (CPU) is reset. Occurs with other COMMS elements also.
- NCR02210: When using SpeedRefSource=0, if the drive trips on overspeed, the error can be cleared but enabling the drive will immediately demand the same value of SpeedRef and trip again.
- NCR02211: Printing a null character produces no output.
- NCR02212: Setting POS (or using RESET) whilst enabled, can cause a momentary blip as the position switches to the new position, back to the old position and then back to the new position (variation of NCR02140).
- NCR02216: Axis IDLE event is not always called if testing for IDLETIME.
- NCR02218: Moving positive over a CAMBox segment boundary close to the limit of 8388607 may cause drift in the CAMBox.
- NCR02219: If the drive is enabled and the RESET command is issued it will ignore the settings of AUTOSTARTMODE.
- NCR02277: When COMMSMAPPARAMETER.channel is used when COMMSMAPMODE.channel = _cpCOMMS, it will map the comms element to be the next one (e.g. COMMSMAPMODE.3=3 will map it to COMMS.4).
- NCR02114: The formatted output of floating-point values results in the string "<no floats>" being emitted.
- NCR02163: Using the PLC Gear Factor, can cause the drive to trip.
- NCR02126: Uploading MintMT floating-point array data into a WorkBench '.arr' file, and using the WorkBench watch window to view floating-point MintMT variables returns incorrect values.
Build 5332
Released: May 2005.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires 'B' revision drives - drives with Bootloader version 1.2 and above (refer to SupportMe script in Workbench).
- Requires Mint compiler target format 10 - installed with this Mint System File.
MVM version 10.
- Parameter Table version 22: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
- Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
- The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with
WorkBench v5 (Build 5232+).
- Mint Virtual Machine 18.
New Features:
- Support on EnDat for scaled Encoder Resolution (see EncoderLinesIn) of 512ppr on 2048sin/cos cycles per rev feedback devices.
- KINTMODE 'Steady State' now supported.
- Rollover count recorded for the Auxiliary encoder - see AUXENCODERROLLOVER.
NCR Fixes:
- NCR02099: If logic power is cut whilst storing a Parameter, and the write operation is incomplete, then the Parameter Table is defaulted.
- NCR02100: It is possible to get a corrupted read of AuxEncoder.
- NCR02102: After loading a move, if POSREMAINING is read immediately after GO is issued it may not contain the new value.
- NCR02103: Default EncoderLinesOut for Encoder systems is incorrect.
Build 5320
Released: April 2005.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires 'B' revision drives - drives with Bootloader version 1.2 and above (refer to SupportMe script in Workbench).
- Requires Mint compiler target format 10 - installed with this Mint System File.
MVM version 10.
- Parameter Table version 22: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
- Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
- The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with
WorkBench v5 (Build 5218+).
- Mint Virtual Machine 18.
New Features:
- FEEDBACKFAULTENABLE can now be set to allow detection of Feedback faults when the drive is disabled.
- The default value of FEEDBACKFAULTENABLE is now 3 (for all feedback variants).
- The default value of LIMITMODE is now 8 (Crash stop without error and leave the drive enabled).
- The default value of MOTORENCODERLINES (for Encoder Feedback systems) is now 2000.
- CAPTURENUMPOINTS / CAPTUREPOINT - allows MintMT applications to access the capture data array.
- Follow move-types will remain in Follow mode when reacting to hardware limit switches under
LIMITMODE=8.
- Support for Dual-Encoder Feedback on Encoder and Resolver drive variants (see AXISPOSENCODER keyword).
- Support for Motor Brake control (see MOTORBRAKExxx keywords).
- Support for MintMT string access functions - PRODUCTSERIALNUMBER, MOTORCATALOGNUMBER and
MOTORSPECNUMBER.
- Support for the MOVEDWELL move-type.
- Support for MOVEBUFFERID and MOVEBUFFERIDLAST - allows moves to be tagged with an identifier.
- Support for MOVEBUFFERSTATUS - returns status information about the move buffer.
- Support for POSROLLOVER - counts the number of times the position has wrapped.
- Support for Feedrate - controls the interaction of Slew speed and acceleration rates loaded into the move buffer (see FEEDRATExxx keywords).
- Support for FASTAUXLATCHDISTANCE - defines a window in which further Fast input latches will be ignored.
- Support for CAMBox.
- COMMSMODE modified to allow supression of trailing zeroes on HCP and the ability to disable
HCP.
- HCP master node restriction of being NODE=1 lifted (i.e. any Node can now be a master).
- Additional channels for captured data (scope).
- Configurable I/O can now also be allocated to extended I/O bank.
- Added mode 5 to PHASESEARCHTRAVEL to allow no travel.
- PLC Task can reference Digital Inputs on all I/O Banks.
- Integer data now formatted to 4 decimal places in HCP packets (unless Trailing Zeroes suppressed), to be consistent with floating-point data.
- Execution speed improvement to MintMT.
NCR Fixes:
- NCR01935: Using AUXENCODERSCALE and SCALEFACTOR, with a Follow, will lose counts (drift) when the master axis runs at slow speeds.
- NCR01969: If an incremental move is terminated pre-maturely (e.g. by a STOP command), then a subsequent INCR command will work from the original POSTARGET rather than the current POSDEMAND/POS. INCA moves are not affected.
- NCR01976: Using PLC Task to enable drive overrides the DriveEnableInput (i.e. drive can be enabled even without enable input).
- NCR01994: If Homing (for Z-pulse) is stopped, then the axis moved through the Z-pulse and Homing re-started (e.g. HOME=4 or HOME=6), then Homing will be profiled in the wrong direction.
- NCR02002: Offsets were no longer profiled.
- NCR02009: Feedback alignment autotuning test gives incorrect results for the encoder + Halls feedback option (MOTORFEEDBACKTYPE = 1 or 3). Other feedback options are unaffected.
- NCR02015: Using EncoderWrap, the value returned through FASTENCODER will not count consequetively when the actual encoder count wraps around the full number range.
- NCR02022: Data capture (scope) of AuxEncoder position captures signed values as unsigned.
- NCR02023: SERIALBAUD can be set to values outside the valid range.
- NCR02028: Starting an Offset when AuxEncoder velocity is at or close to zero, can start in the wrong direction.
- NCR02030: Using TorqueRefSource=1 (I.e. High Speed ADC) and LimitMode = 8 (Crash Stop, No Error) does not react to the Limit switches.
- NCR02034: Software Limits, using SoftlimitMode 7, 8 and 9 do not work.
- NCR02045: The STOP command will crash stop of Home profile.
- NCR02075: Values of AuxEncoderScale above 32767 are being set to zero.
- NCR02076: Upper range of MoveDwell should be 65535 not 65534.
Build 5218
Released: April 2004.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires 'B' revision drives - drives with Bootloader version 1.2 and above (refer to SupportMe script in Workbench).
- Requires Mint compiler target format 10 - installed with this Mint System File.
MVM version 10.
- Parameter Table version 18: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
- Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
- The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with
WorkBench v5 (Build 5218+).
- Hold Dip switch has been moved to SW1-5 (from SW1-6) - WorkBench earlier than Build 5107 will not reflect this change in the Spy window.
- New features and changes are not be reflected in the MintMT Help file (version 2002-04, supplied with WorkBench Build 5114) or earlier.
- check SupportMe for latest updates.
- Mint Virtual Machine 15.
New Features:
- Support for Host Comms Protocol #2 (HCP2) allowing indexing of Nodes above Node 15 and to index Comms elements 100-255.
- Support for Controller to Controller extended Comms access over RS485 (using
HCP).
- Support for RS485 Baud rates of 38400 and 57600.
- Support for Node Id indication on the Seven-segment display using the LED command.
- Support for capture channels _cpIDLE and _cpAXIS_ERROR.
- Support for Trigger on position: TriggerMode, TriggerSource, TriggerInput, TriggerChannel, TriggerValue.
- the OFFSET command must now be triggered by GO (or according to
TRIGGERMODE).
- Support for MoveOut and MoveOutX.
- Support for PulseOutX and MovePulseOutX.
- Support for IdleMode, IdleTime and
IdleSettlingTime.
- Support for ADCMODE (turning off an unused ADC channel will provide some execution speed improvement to MintMT).
- Support for unassignment of FASTSELECT and FASTAUXSELECT (unassigning will provide some execution speed improvement to MintMT).
- Support for DriveEnableOutput being assigned to the Relay output.
- Support for position compare: COMPAREPOS, COMPAREOUTPUT, COMPAREMODE (bit 0: Enable(=0)/disable(=1) compare), COMPARELATCH (bit 0: indicates that compare is active)
- DriveOkOutput is now also driven according to the state of the pre-charge circuits on 3-phase drives, the DC Bus voltage, initialisation errors and Drive Enable DIP switch.
- GlobalErrorOutput is now also driven according to any Initialisation errors.
- Reaction times to dedicated axis input functions (e.g. StopInput, ErrorInput, etc) improved.
- Execution speed improvements made to MintMT.
NCR Fixes:
- NCR01466: Setting INCA=-8388608, when POS=0, when GO is used to trigger the move we immediately trip out on Following Error.
- NCR01761: AxisWarningDisable cannot set bit 2
(_awMAX_SPEED).
- NCR01762: SoftLimitReverse has an incorrect default value.
- NCR01763: The WorkBench Monitor tab is unable to select Demand Acceleration as a monitor channel (and therefore to set-up the capture channel).
- NCR01765: In Config=_cfVIRTUAL, there are no measured quantities, meaning when a move is completed, the Demand Position is reset to the measured position, which is zero.
- NCR01823: During preset moves, if a stop input has occurred and a new relative move triggered the new target position will be added to the old target position instead of the current demand position where we stopped.
- NCR01824: Misc Error bitmap strings are reported (in WorkBench Error Log) out of sequence by 1 bit.
- NCR01826: A COMMS over RS485, e.g. myVar = COMMS(node,element), if the element requested is 0 or 256 it will not be detected as out of range, but should get a NAK back from the recipient. Out of range elements are also reported incorrectly as Node Id out of range.
- NCR01827: Access to a COMMS element, using HCP1, will return an ACK even if the element is reserved or the value written is invalid.
- NCR01843: A MoveA command will always take the shortest route to the new target position. E.g. If PosDemand=-8308607 and MoveA=8308607 requested, it will be accepted, but the profiler will count negatively through the wrap boundary.
- NCR01849: Using SRAMP, with high encoder velocities (counts/sec) and a large SRAMP value, the generated demand velocity profile can have severe spikes. E.g. with SPEED >= 330000counts/sec and
SRAMP=100%.
- NCR01856: On an RS485 network, changing the Node Id from 1 to >15, via the NODE keyword or WorkBench options dialogue, will leave that Nodes' Terminal I/O enabled.
- NCR01857: ACTIVERS485NODE does not range check the Node Id passed, and will respond to negative numbers.
- NCR01859: The master of a RS485 network using the Host Comms Protocol is not enforced to be Node 1.
- NCR01863: Reading IN or INX, can clear the latch for edge-triggered inputs, that occur whilst the keyword is executed.
- NCR01872: With large Decel rates (> 255996093 counts/sec/sec) it is possible that the point to start decelerating will be calculated incorrectly resulting in an incorrect deceleration rate being profiled.
- NCR01873: With high slew speeds and decel rates, when the profile enters the deceleration distance the DECEL is used above a certain speed, and a calculated decel rate used below that. Because of loss of precision, the DecelTime may be extended from
that expected.
- NCR01874: Setting Encoder may cause incorrect values around the new zero point.
- NCR01875: It is not possible to set AccelTime or DecelTime to the maximum permissible value of 3328000counts/sec/sec.
- NCR01887: The drive may auto-enable the drive before it has had chance to supress it for Init Errors/Warnings (e.g. issuing FactoryDefaults in Comm Wizard, will end up enabling the drive causing problems later on).
- NCR01891: Certain trapezoidal profiles (e.g. SP=800000; AC=15000000; DCL=15000000; MA=500000) will generate a deceleration profile where the velocity levels out as a deceleration of zero is calculated.
- NCR01896: FASTAUXLATCHEDGE can be set to values other than 0 and 1, and define a falling edge for any non-zero value.
- NCR01900: BRIDGECOMPENABLE, will accept values other than 0 and 1 to control whether bridge compensation is turned off or on, with non-zero values turning it on.
- NCR01904: Using EncoderWrap, the encoder value returned will not count consecutively when the actual encoder count wraps around the full number range.
- NCR01906: ENCODER can be set outside the ENCODERWRAP range. This would be corrected in the next tick, but if read back would be incorrect.
- NCR01936: AUXENCODER returns fractional encoder counts, when using a virtual Auxiliary Encoder.
- NCR01949: Autotuning feedback alignment test can fail where the initial feedback misalignment is very close to 180 degrees
- NCR01979: The value of KVEL used in the Control Law does not match the value set (a number wrap occurs in the scaling giving a non-uniform result).
MVM Bug Fixes (from version 10)
- NCR01858: Mint programs can fail with stack underflows, out of memory, or can just behave strangely.
- NCR01877: Events can corrupt string data resident on the stack as a result of a `ref.s instruction.
- NCR01914: A recursive subroutine or function can cause the controller to crash.
- NCR01915: A subroutine or function that calls itself from with a critical section can cause the controller to crash.
- NCR01916: The value for Time does not propagate into events when set from the parent task.
- NCR01950: Events that call a subroutine and then issue a Run command cause the stack to underflow.
- NCR01952: If a Mint program is compiled and downloaded (i.e. not run), the task status window displays random values.
- NCR01959: The Pause and Wait commands inside critical sections can cause execution to halt indefinitely.
Build 5127
Released: September 2003.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires 'B' revision drives - drives with Bootloader version 1.2 and above (refer to SupportMe script in Workbench).
- Requires Mint compiler target format 10 - installed with this Mint System File.
MVM version 10.
- Parameter Table version 16: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
- Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
- The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with WorkBench
v5 (Build 5107+).
- Hold Dip switch has been moved to SW1-5 (from SW1-6) - WorkBench earlier than Build 5107 will not reflect this change in the Spy window.
- New features and changes are not be reflected in the MintMT Help file (version 2002-04, supplied with WorkBench Build 5114) or earlier.
- check SupportMe for latest updates.
New Features:
- Critical..End Critical construct allows enclosed Mint statements to be processed atomically (i.e. prevents multi-tasking and Mint events from interrupting the processing of the enclosed statements).
- Support for WorkBench 'Tasks' tab - allowing monitoring and control of MintMT tasks from WorkBench (Requires WorkBench Build 5200+).
- Hardware enable detected on a 1msec sample instead of previous 100msec sampling.
- COMMS array elements can now be captured (see CAPTUREMODE).
- Performance increase to Mint.
NCR Fixes:
- NCR01403: On High Speed ADC command input, StopInputMode=1 does not work correctly.
- NCR01641: Changing LOOPTIME causes the drive to lock up, requiring a power-cycle to recover communications.
- NCR01668: Downloading a Parameter Table earlier than version 14 will set DriveBusUndervolts to be zero (should be set to the powerbase default).
- NCR01669: If logic power is lost midway through logging an error, on the restore at the next power-up, the repair of the invalid copy is rewritten incorrectly. This is reported as bit 7 in InitError (Error Log invalid), which is reported by WorkBench as "Powerbase Id doesn't match hardware".
- NCR01680: Setting FOLLOWDENOM to 128 will be stored/processed as -128.
- NCR01682: AutoStartMode is not actioned if there are any Initialisation errors or warnings.
- NCR01689: The STOP command used with s-ramped profiles does not work.
- NCR01690: With DriveEnableMode = 2 (hardware enable), it is possible (~ 3 in 1000) that when the enable switch goes high the drive isn't enabled (AxisError bit 13 is set if DriveEnableInputMode = 1).
- NCR01691: Autotune does not range check the test number/operation requested against the correct valid range.
- NCR01692: Autotuning will return a 'motion in progress' MIL error (#10) if the drive is enabled, instead of a 'drive enabled' error (#90).
- NCR01694: DriveError=0 does not cancel a drive error.
- NCR01698: The ReadKey() function returns the error "Terminal not defined" when it shouldn't.
- NCR01701: Stack underlow errors can result when suspending and resuming a task when events are being processed.
- NCR01704: MISCERRORDISABLE will prevent the OnError routine being called if the bits are cleared - it should be if the bits are set.
- NCR01709: With a large MoveBufferSize (e.g. 99), using GO with a number of loaded moves can cause a "C167 Watchdog Timeout" error (DriveError bit 1) to be generated.
- NCR01710: Terminal functions do not cause any errors to be generated, even if one has occurred.
- NCR01733: PosAchieved does not work correctly if a move is stopped.
- NCR01735: The EInt and DInt commands do not stop events from being handled.
- NCR01737: If too many parameters are written in quick sucession (e.g. by Workbench Comm Wizard or Preset page) then some parameters may fail to be written to the Parameter Table.
- NCR01742: Issuing a new IncA move, where the new target position is within the deceleration distance, the profile modifies the decel rate to achieve the target rather than decelerating at defined rate and then reversing to the target.
- NCR01743: Creating an incremental move that requires the profile to change direction, can cause the deceleration profile (when changing direction) to be modified according to the effective remaining distance.
- NCR01745: The Stop event is not called for SIM=1, when in speed control or torque control.
- NCR01754: Changing CONFIG does not validate the current setting of CONTROLMODE e.g. If CMD=2, and then set CF=_cfTORQUE_SERVO, CMD is left in the velocity setting (CMD=2), which is invalid in this CONFIG.
- NCR01760: For Absolute encoders, EncoderLinesOut is not defaulted to be the same as EncoderLinesIn, as read from the Feedback device.
- NCR01764: On point-to-point moves (e.g. MoveA/MoveR), a profile reaching a slew speed > 253906 counts/sec, may generate a velocity deceleration that is truncated at the end (I.e. target position is reached before it has ramped to zero speed).
- NCR01775: Multiple MML calls can display multiple error messages for a single call.
- NCR01777: Under Config = _cfTorque_Servo, AutoStartMode can only be set to mode 0 (normal). Should be able to set to all modes, except 2 (speed reference).
- NCR01778: Mint program data can be corrupted during a task switch.
- NCR01782: The MoveA/MoveR commands do not report error #40 (drive not enabled) if a move is loaded when the drive is disabled.
- NCR01786: With ENCODERWRAP, and having modified (written) the ENCODER value, it is possible at the extreme of the number ranges for the ENCODER value to go wrong.
- NCR01797: The Asc function can crash the controller if the parameter is an empty string.
- NCR01802: Spurious line numbers can be returned on an error.
Build 5112
Released: February 2003.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires enhanced memory and bootloader v1.2
or above.
- Requires Mint compiler target format 9.
- Mint Virtual Machine v6.
- Parameter Table version 15: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with WorkBench
v5 (Build 5107).
- Hold Dip switch has been moved to SW1-5 (from SW1-6) - WorkBench earlier than Build 5107 will not reflect this change in the Spy window.
New Features:
- New keyword SCALEFACTOR introduced to be equivalent to the SCALE keyword.
SCALE can continue to be used but will generate a Mint compiler warning suggesting the use of SCALEFACTOR instead.
- CAPTUREAXIS will generate a compiler warning suggesting the use of CAPTUREMODEPARAMETER instead.
- The Error Log will now store the additional errors/events (requires WorkBench Build 5107+):
Autotune tests run
Autotune test errors
Parameter Table download
- Added Mint constant _evSTOP_SW_EVENT (corrected from
_evSTOP_SW__EVENT).
- All Mint constants have been captitalised (excluding the prefix characters).
This does not affect existing Mint programs. WorkBench will automatically use the capitalisation.
- FASTAUXLATCHEDGE changed to force a minimum of 1 dot parameter.
- The gain term KVELFF now affects master-slave move types (e.g. FOLLOW, FLY, etc).
To maintain previous settings, or to overcome amplified jitter from noise on the master input, KVELLFF can be set to zero.
- DRIVEBUSUNDERVOLTS can now be set to zero (drive restrictions apply - see Help).
This will have the affect of not generating an undervolts trip.
- New keyword SRAMP. Velocity profile smoothing for MOVEA/MOVER move-types.
NCR Fixes:
-
NCR01502: On Fine-tuning Position Tab, if enter Position Trapezoidal move of -2000, then at end of move Position is set to +2000 and a FE generated.
-
NCR01560: Variable download does not work correctly for string data that requires transmitting using multiple packets.
-
NCR01571: If you have previously done a Follow, and then start a new Follow, occasionally
the profiler may generate a 'blip' at the last follow ratio before going to the command follow ratio.
-
NCR01572: FollowMode=1, does not generate a ramped profile.
-
NCR01575: On the Fine-tuning page the position trapezoid test move will fail if the drive is not enabled - it should enable automatically.
-
NCR01577: If after performing a Fine-tuning trapezoidal position move (without storing parameters on the controller), then if the drive is left enabled you cannot load another move.
-
NCR01580: Capture will show an incorrect setting of AxisMode when the drive is disabled.
-
NCR01590: If a parameter write fails because the I2C Queue is full, a MiscError is generated, which will attempt to add it to the error log - this causes a CPU watchdog.
-
NCR01594: HOME can be set to search for Home Input, even if no input is defined.
-
NCR01603: As a consequence of NCR01522, a change in Velocity (from zero) will have an incorrect value of half of what it should be. This affects all move types and Fieldbus Process data.
-
NCR01604: If the drive is disabled whilst Homing, or Cancel, issued HomePhase will remain at its last setting, until Homing is restarted. Subsequent Home to index, may terminate straight away.
-
NCR01607: Captured Demand Position returns data that is 0.5smecs old (I.e. not as generated by the profiler). No demand position would be captured on a virtual axis (Config=5). This is probably the small time shifts reported under NCR01504.
-
NCR01608: Using ResetInput to attempt to clear errors and re-enable the drive when the drive enable input is inactive, will cause the drive to 'blip' into the enabled state.
-
NCR01609: Parameter Table upload/download affects the ControlMode settings from
AutoStartMode.
-
NCR01616: Gearing Compensation is accummulating the demand position and extrapolating the demand velocity.
-
NCR01621: Print #_TERM1 "Hello" displays several 'square' characters when used on the command line.
-
NCR01625: Gearing compensation does not work for low master speeds (< 1004
cnts/sec).
-
NCR01630: There is a typo in a constant definition: "_hmNEGATIVE_SWITCH_INDEX" is defined as
"_hmNEGATIVE_SWICTH_INDEX"
-
NCR01632: There is a typo in a constant definition: "_noAUXENCODERS" is defined as
"_noAUCENCODERS"
-
NCR01633: Some of the Mint constants defined for High speed capture are incorrect.
-
NCR01634: In FollowMode=1, applying an offset when following a negative masters' velocity does not work.
-
NCR01635: It is possible to set FollowMode to unsupported modes 2 and 3. No profile is generated under these settings.
-
NCR01636: The polarity of FastAuxLatchEdge is inverted - setting to zero (rising edge) actually detects on the falling edge and visa versa.
-
NCR01645: Downloading a Parameter Table, version 13 or earlier, will set USERPARAMETER.0 to zero.
-
NCR01653: If a Mint program is first executed (run command) containing an event which is active (e.g. OnError event and there is a motion error (AxisError <> 0) present), then it is possible that the processor will reset (InitError = 0x4000, CPU Watchdog).
-
NCR01654: Stack underflows can occur when the 'Run' command is used inside the error event handler.
-
NCR01655: The Host Comms Protocol, does not evaluate fractional values correctly, resulting in an
incorrect value.
-
NCR01657: The stack underflow error can result in a follow on error when this should not be possible as it is a fatal error.
Build 5104
Released: December 2002.
Platform: SC-610.
Distribution: SupportMe.
Compatibility:
- Requires enhanced memory and bootloader v1.2
or above.
- Requires Mint compiler target format 9.
- Mint Virtual Machine v5.
- Parameter Table version 14: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
Parameter Tables (version 8-13) for Drive variants with I/O, are not compatible.
The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with WorkBench
v5 (Build 5107).
- Hold Dip switch has been moved to SW1-5 (from SW1-6) - WorkBench earlier than Build 5107 will not reflect this change in the Spy window.
New
Features:
- Capture buffer size increased to 6000 data points.
- Hold Dip switch has been moved to SW1-5 (from SW1-6).
- Host Comms protocol modified to work to 4 decimal places to be compatible with HMI Panel drivers.
- Implemented Aux Encoder Z Latch Mode for manually controlling the latch mechanism.
- Initialisation errors and warnings have been redefined.
- WorkBench can now interrogate the controller to determine the Mint memory usage.
- Increased Object Manager Flash allocation from 16K to 64K.
- Parameter Table used on an I/O option drive are now
compatible with other drives.
- It is no longer possible to download a Parameter Table from an incompatible drive (e.g. from a 2.5Amp drive to a 5Amp drive)
- AutoStartMode would set to an unsupported ControlMode for TorqueServo Config setting.
- Added support for reporting MML error strings.
- Added Symbol Table attribute to define a keyword as old/obsolete - Mint will generate this as a warning.
- Parameter Table download will now execute faster.
- Changes to ParamSaveMode - now takes a 'dot' parameter to determine which channel.
- Changed autotuning to allow zero damping value.
- Allow ControlMode to be changed whilst the drive is enabled.
- Added DriveBusUnderVolts keyword, programmable on external 24V 100-series drives.
- RS485 Baud Rate could be set out-of-range.
- Embed Feedback type supported in the banner.
- Changed travel limit parameter for autotuning to be in mm rather than pole pitches.
- Only store System Time / LifeTime every 30 mins (as opposed to every 3 mins) to preserve EEPROM write-cycle capacity.
- Added support for specifying a Baud rate at which to download firmware at. Changes to support Bootloader Baud Rates. Allow 115200 Baud at suitable clock frequencies.
- Implemented the returning of error strings for codes 500, 501 and 502.
- Allow Temperature limit to be programmable.
- Support for string data types under MintMT.
- New MintMT instructions LBOUND and UBOUND which return the lower and upper bounds of an array.
- New MintMT instructions to SHIFT and ROTATE bits within an integer data type.
- After enabling the drive, it will now check immediately for any AutoStart conditions.
- The ADCOffset Trim function has been modified to sample the ADC input on a 100msec tick.
- Several new Homing modes introduced, giving greater control over the Homing sequence.
- Automatic Parameter Table upgrades (performed when downloading firmware with a newer Parameter Table format) is now flagged as an initialisation warning.
- The firmware will not allow a Parameter Table from a non-compatible drive (e.g. Resolver drive downloaded onto an Encoder drive) - flagged as an
Initialisation error.
- CAPTUREMODEPARAMETER. Changed abbreviation from CMP to
CPMP.
- New keyword HOMECREEPSPEED/HCS. Allows the user to define the actual creep speed used in the Homing profiles.
- New keyword HOMEREFPOS/HRP. Defines a reference Home position - used during certain Homing profiles.
- New keyword PULSECOUNTER. Returns the count from the Pulse and Direction input.
- New keyword SPEEDMEASURED/SMS. Replaces the prototype keyword MOTORSPEEDMEASURED which returns the measured speed as a percentage of
DriveSpeedMax.
NCR
Fixes:
- NCR01371: Uploading the Parameter Table, forces a CPU Reset to ensure parameters are as per their EEPROM value. If a Mint program has an 'Auto' statement, then potentially it could modify values prior to the upload. [Requires WorkBench Build 5026 or later].
- NCR01410: Profiling of Torque Reference (TRS=2), for ErrorInputMode=3 doesn't use the decel ramp, it crash stops the axis.
- NCR01455: Literal values and constants can sometimes be inserted into the executable when they are not used in the program.
- NCR01464: Homing sequence may miss Z-pulse, if moving from the Home position without completing an entire rev. Affects Resolver, but may also affect Encoder.
- NCR01465: Explicitly declaring the type in a constant declaration can cause problems.
- NCR01467: The compiler reports an incorrect line number if an error exists in the first 'Case' clause of a 'Select Case' statement.
- NCR01473: Calling MML routines with square bracket notation can generate incorrect code.
- NCR01475: Capture of Digital inputs, on some builds, does not work.
- NCR01483: COMMSMODE and LIFETIME return value may be displayed as a floating-point value when it is an integer value.
- NCR01476: When the Exit statement is used outside of a loop, the error message issued contains an empty string.
- NCR01477: Copying a float to an integer does not work.
- NCR01484: The controller can crash when firmware is downloaded while the variable watch window is open.
- NCR01485: The use of defines can cause spurious compilation errors.
- NCR01486: The stop function can cause ICM timeouts in certain circumstances and not stop the program.
- NCR01487: Literal values can be included in the executable image that are not actually used.
- NCR01488: The keyword AUXENCODERZLATCHMODE does not accept new values.
- NCR01494: It is possible to assign one array to another even when they are of different types.
- NCR01496: If a task is stopped while in a Wait statement and then re-run, the run-time stack can grow causing memory overflows.
- NCR01497: The line continuation character does not work correctly.
- NCR01499: Initialising and array with named constants results in incorrect values being used.
- NCR01501: Using a define before it is declared causes the compiler to crash or stop with an internal error.
- NCR01504: Occasional data points lost during high speed data capture and small time shifts introduced between capture channels.
- NCR01505: High frequency signals on Z encoder channel or pulse and direction inputs can slow down the DSP, resulting in comms errors and performance degradation.
- NCR01514: The 'expected' error message sometimes displays an empty string for the expected item.
- NCR01515: Setting EncoderScale in the range 32768 - 65535 will generate a negative encoder count.
- NCR01519: If Object Manager has no objects (I.e. no Mint program), then the Memory Usage dialogue displays "Total: 0 bytes" for Flash - the Executable/Source fields are also displayed under the RAM usage section.
- NCR01520: Capture of cpMEASURED_POSITION channel can give incorrect results for high encoder counts.
- NCR01521: Velocity error is reported incorrectly when the drive is disabled.
- NCR01522: Capture of cpDEMAND_SPEED is time shifted with respect to cpMEASURED_SPEED by 1
millisecond.
- NCR01523: Errors that occur in the start-up block go undetected.
- NCR01524: ADC offset trim gives small (0.5%) error.
- NCR01525: If a Host Comms Protocol message is received with a 'DLE' character, then it will be filtered off by
BBP/ICM.
- NCR01529: Position target not set correctly after a home.
- NCR01530: Feedback alignment autotuning test can fail when a hall transition angle is close to zero degrees.
- NCR01536: Speed Test moves perfomed from WorkBench Fine-tuning do not report an error if motion is in progress.
- NCR01537: Displaying the last error string using the Mint ErrStr function can crash the controller.
- NCR01538: The Run and Run Startup commands do not work reliably from within events.
- NCR01541: Passing an array of a different type to the parameter causes the compiler to produce strange error messages.
- NCR01542: Subroutines declared before they are called can have the call parsed incorrrectly if the first token is an intrinsic function.
- NCR01544: If the field width specified is less than is required for a value in binary format, the output is truncated.
- NCR01546: The scope override operator (::) does not work, producing compilation errors.
- NCR01547: Undeclared variables can go undetected.
- NCR01548: Comments to end of line initiated with a single quote fail if the character after next is another single quote.
- NCR01550: It is possible to use an array when only a scalar is acceptable.
- NCR01551: The automatic usage of temporary variables for parameter passing can stop the Select Case statement from working.
- NCR01552: Strings with non-printing characters cause unterminated string errors, and an unterminated string ahead of EOF crashes the compiler.
- NCR01553: On printing, strings are terminated by any character greater than ASCII 127.
- NCR01554: The controller can crash from a host application that downloads a bad file using the doMintFileDownload command.
Build 5024
Released: January 2002.
Platform: FlexDriveII,
Flex+DriveII and
MintDriveII.
Distribution: Request only.
Compatibility:
- Requires bootloader v1.1
or below.
- Requires Mint compiler target format 8.
- Parameter Table version 12: Upgrading from Parameter table version 8+ (Build 5015+) will be done automatically.
The Parameter table will be lost if the drive is updated with firmware supporting an earlier Parameter Table.
- Recommended to be only used in conjunction with Mint WorkBench (Build
5023).
- No known issues being used with Mint WorkBench (Build 5018).
New
Features:
- Improved accuracy in initialising incremental position from absolute position at startup. Affects Hiperface only.
- Improved accuracy of simulated Z pulse generation. Affects Hiperface only.
- Improved accuracy of speed feedback calculation. Affects Hiperface
only.
NCR
Fixes:
- NCR01464: Homing sequence may miss Z-pulse, if moving from the Home position without completing an entire
revolution. Affects Resolver only.