NI does not actively maintain this document.
This content provides support for older products and technology, so you may notice outdated links or obsolete information about operating systems or other relevant products.
Each Issue appears as a row in the table and includes these fields:
Issue ID—Contains the number in at the top of each of the cells in the first column. When you report an issue to NI, you may be given this ID, you can also find IDs posted by NI on the discussion forums or in Knowledge Base articles.
Legacy ID (optional)—Contains the legacy CAR ID, if an issue has a legacy ID from NI's legacy/deprecated bug reporting database. This ID appears on a separate line directly below the Issue ID in the table, or to the right of the Issue ID in the table of contents (separated by a space).
Issue Title (in italics)—Describes the issue in one sentence or less.
Problem Description—Describes the problem in further detail. The brief description given does not necessarily describe the problem in full detail, and it is expected that you might want more information on an issue. If you would like more information on an issue feel free to contact NI (contact information below) and reference the ID number given in the document.
Workaround—Provides possible ways to work around the problem. The workarounds that appear in the document are not always tested by NI and are not guaranteed to resolve the issue. If a workaround refers you to the NI KnowledgeBase, please visit www.ni.com/kb/ and enter that KB number in the search field to locate the specific document.
Reported Version—Contains the earliest version of the NI SoftMotion Module the issue was reported in. If you discover the issue appears in an earlier version of the NI SoftMotion Module than is reported in this field, you can report that to NI (contact information below) to have the field updated.
Resolved Version—Contains the version the issue was resolved or was no longer applicable. If an issue has not been resolved "N/A" will be reported.
Date Added—Contains the date the issue was added to the document (not the reported date).
Feel free to contact NI regarding this document or issues in the document. If you are contacting NI in regards to a specific issue, be sure to reference the ID number given in the document to the NI representative. The ID number contains the current issue ID number as well as the legacy ID number (use the current ID number when contacting National Instruments). You can contact us through any of the normal support channels including phone, email, or the discussion forums. Visit the NI Website to contact us. Also consider contacting us if you find a workaround for an issue that is not listed in the document so that we can add the workaround to the document.
The following items are known issues in NI SoftMotion 2011 SP1 f1 sorted by Category.
ID | Known Issue | |||||
---|---|---|---|---|---|---|
AKD Servo Drive | ||||||
300628 Return | Disconnecting the EtherCAT cable on an AKD EtherCAT servo drive requires a reinitialize or reboot to recover. Workaround: Reinitialize the NI SoftMotion Module or reboot the controller. Refer to the Reinitialize example in the <labview>\examples\Motion\ConfigurationAPI\Reinitialize directory for an example showing how to programmatically reinitialize the NI SoftMotion Module.
| |||||
328711 Return | Turning a motor by hand while the AKD EtherCAT drive is disabled can cause an axis jump upon re-enable. The axis jump occurs when the AKD EtherCAT drive is hardware disabled (controlled by pin X8/4) and software enabled. If the motor is moved by hand and then the drive is hardware enabled, the axis will jump back to its original position. This only happens when the AKD is being used in EtherCAT mode. Workaround: Reboot the EtherCAT master. Prior to NI SoftMotion 2011, you can switch the NI Scan Engine from Active to Configuration mode, then back to Active mode to prevent this issue. For NI SoftMotion 2011 and later, you can reinitialize the NI SoftMotion Module to prevent this issue. Refer to the Reinitialize example in the <labview>\examples\Motion\ConfigurationAPI\Reinitialize directory for an example showing how to programmatically reinitialize the NI SoftMotion Module. If you are using the enable pin on the AKD (X8/4) as an emergency stop button, you can also wire the emergency stop to pin X8/6. Then in the Axis Configuration menu under the Digital I/O tab, map DI4 to E-Stop. This will force you to reset the EtherCAT master in an emergency stop situation.
| |||||
332581 Return | AKD drive faults get returned with the wrong prefix. AKD drive faults are returned to SoftMotion in the form 0106xxxx. However, in the SoftMotion help, the faults are in the form 0101xxxx. Workaround: If you receive a 0106xxxx fault, you can find the description in the LabVIEW help at NI SoftMotion Module » NI SoftMotion Module How-To » NI SoftMotion Faults by looking up the corresponding 0101xxxx fault.
| |||||
350236 Return | Using the slider tuning panel with high gains can cause LabVIEW to crash The gains needed to crash LabVIEW are usually so high that it causes the system to become unstable. The slider tuning panel is only available for AKD EtherCAT drives. Workaround: None
| |||||
Configuration | ||||||
201612 Return | A torque offset of 10 V results in -10 V when you deploy. In the Drive Command tab of the axis properties page, setting a torque offset of 10 V results in -10 V when you deploy. Workaround: Do not use a 10 V torque offset. Realistic values for torque offset are between +5 V and -5 V.
| |||||
205936 Return | NI SoftMotion Stepper Generator VI does not work in a LabVIEW FPGA Module single-cycle Timed Loop at loop rates slower than 40 MHz. When the NI SoftMotion Stepper Generator VI is compiled in a single-cycle Timed Loop at rates slower than 40 MHz there is drift between the setpoint and the output steps from the VI. Workaround: Only use a 40 MHz single-cycle Timed Loop clock with the Stepper Generator VI.
| |||||
298886 Return | Encoder velocity filter distances greater than 1 do not work. Setting the Encoder Velocity Filter Distance to a value greater than 1 causes the velocity returned to never update. This is only apparent if you are using the Encoder Velocity Filter Distance only (setting the Velocity Filter Time to 0 to disable it). Workaround: None.
| |||||
304133 Return | Drive Command configuration properties do not work correctly. The value returned for the Drive Command Positive Torque Limit, Drive Command Negative Torque Limit, and Drive Command Torque Offset properties is always 0. In addition, the value you configure for these properties is not used but no error is returned. Workaround: Use the Axis Configuration dialog box to read and set these properties.
| |||||
305115 Return | Setting the closed-loop stepper correction profile velocity to 0 returns error -77037 (NIMCDM_invalidDataError). When configuring a closed-loop stepper axis using the instructions found in the "Configuring a Closed-Loop Stepper Axis (NI SoftMotion Module)" topic in the NI SoftMotion Help, error -77037 is returned when the correction profile velocity is set to 0 when you attempt to enable the drive. Workaround: Set the correction profile velocity to 0.01 instead of 0.
| |||||
349494 Return | After a system reboot or system re-initialization, the position error limit is not properly scaled using user units. After rebooting, the position error limit uses the default scaling, and does not take into account any user-specified unit scaling. Workaround: Redeploy the axis after reboot. The deploy must be a meaningful deploy, meaning that at least one axis parameter must have been changed.
| |||||
352516 Return | Rebinding an axis to a different hardware resource can cause parameters to be outside of the valid range. When you bind an axis to a different hardware type than what it was originally configured with, it can cause parameters to fall outside the valid range for the new hardware type. Workaround: When you are rebinding axes, make sure to check that the axis configuration parameters are still valid.
| |||||
360277 Return | When the NI Scan Engine is set to boot into Configuration Mode and you try to deploy changes to an axis, you will get error -70235 (NIMC_resourceNotSet) This error only occurs when you set the RT target to boot into Configuration Mode and you try to deploy new settings to an axis while still in Configuration Mode. Workaround: If you have already received error -70235, you must reboot the target to clear it. To avoid getting this error, either have the NI Scan Engine boot into Active Mode or switch the NI Scan Engine from Active Mode and then back to Configuration Mode before deploying changes to an axis.
| |||||
370476 Return | Velocity Feedforward (Vff) and Acceleration Feedforward (Aff) do not get scaled by the Encoder Counts Per Unit setting. When tuning a servo system, the values of Vff and Aff are higher or lower than you expect if the Encoder Counts Per Unit setting is anything other than 1. Also, if you have a tuned system and change the Encoder Counts Per Unit Setting, the tuning changes if you do not also scale Vff and Aff by the same scale factor. Workaround: If you change Encoder Counts Per Unit, make sure to also change Vff and Aff by the same scale factor. For example, if you tuned your motor with Encoder Counts Per Unit set to 2 and then change it to 100, you would have to scale your Vff and Aff values by 50.
| |||||
EtherCAT | ||||||
296911 Return | Axis properties cannot be set while in configuration mode for NI 951x modules in a 9144 chassis. Any axis properties configured using property nodes when the NI Scan Engine is in Configuration mode are reset to the values configured in the Axis Configuration dialog box when the NI Scan Engine switches to Active mode. Workaround: Any axis properties that cannot be set in Active mode must be configured using the Axis Configuration dialog box rather than the NI SoftMotion axis property node.
| |||||
300628 Return | Disconnecting the EtherCAT cable on an AKD EtherCAT servo drive requires a reinitialize or reboot to recover. Workaround: Reinitialize the NI SoftMotion Module or reboot the controller. Refer to the Reinitialize example in the <labview>\examples\Motion\ConfigurationAPI\Reinitialize directory for an example showing how to programmatically reinitialize the NI SoftMotion Module.
| |||||
332899 Return | Powering an AKD EtherCAT slave when the master is already powered can put NI SoftMotion into a bad state. If you power up an AKD EtherCAT slave when the master is already powered, you may get error -77055 (NIMCDM_axisCommunicationWatchdogError) when trying to enable the drive. Workaround: Reboot the EtherCAT master. Prior to NI SoftMotion 2011, you can switch the NI Scan Engine from Active to Configuration mode, then back to Active mode to clear the error. For NI SoftMotion 2011 and later, you can reinitialize the NI SoftMotion Module to clear the error. Refer to the Reinitialize example in the <labview>\examples\Motion\ConfigurationAPI\Reinitialize directory for an example showing how to programmatically reinitialize the NI SoftMotion Module.
| |||||
Express VIs | ||||||
304109 Return | Trying to use NI SoftMotion Express VIs that are not supported in NI SoftMotion Module Lite returns an ambiguous error. The error returned is "This node is not executable because an unexpected error occurred during code generation." This is because the selected Express VI is only supported in NI SoftMotion Module Standard or NI SoftMotion Module Premium. Go to ni.com/info and enter nismpkg for more information about the NI SoftMotion Module options. Workaround: None.
| |||||
321164 Return | Stopping a blended move causes the axis to jump to the next position. Stopping a blended move in progress causes the axis to jump to the blended position. This only occurs when using Express VIs. Workaround: Use function blocks or properties and methods to perform blended moves.
| |||||
343813 Return | Using the Points[ ][ ] input when doing a contour move returns an error on any subsequent move. When doing a contour move while using the Points[ ][ ] input instead of using a contour Table, any subsequent move returns error -77028: The buffer handle specified for the contouring move is invalid. Verify that the table contains the correct data for the operation and is of the correct type. Workaround: Use a contour Table instead of the Points[ ][ ] input.
| |||||
349912 Return | A function block and express VI with the same caption can cause the function block to break. If you have a function block and express VI on your block diagram with the same caption and you change the timing model of the express VI, the function block will break. When you double-click the function block, you receive error 56004: Cannot configure function block properties. Workaround: Make sure that function blocks and express VIs do not have the same caption. If you encounter this error, replace the function block with a new function block of the same type and then change the caption.
| |||||
Function Blocks | ||||||
349912 Return | A function block and express VI with the same caption can cause the function block to break. If you have a function block and express VI on your block diagram with the same caption and you change the timing model of the express VI, the function block will break. When you double-click the function block, you receive error 56004: Cannot configure function block properties. Workaround: Make sure that function blocks and express VIs do not have the same caption. If you encounter this error, replace the function block with a new function block of the same type and then change the caption.
| |||||
Interactive and Tuning | ||||||
333374 Return | On an unbound axis, gains are not properly set from the Gain Tuning Panel. When changing the Control Loop Gains of an unbound axis in the Gain Tuning Panel, you have the option of tuning Gain Set 1 or Gain Set 2. If you change the Gain Set 1 gains and then try to read them from property nodes in a VI, the Gain Set 2 gains are returned instead. Workaround: When using the Gain Tuning Panel, make sure both Gain Set 1 and Gain Set 2 have the same gains.
| |||||
349432 Return | Resetting an axis position on an RT target to +/- 1x10^68 or greater causes the target to lock up. When you reset the axis position past +/- 1x10^68 the target locks up until it is rebooted. This occurs for all axis types. Workaround: None.
| |||||
Motor Control VIs | ||||||
356516 Return | Resetting the PI or PID FPGA VIs does not reset the accumulated position error The PI and PID FPGA VIs keep a memory of the last error so that they can apply an integral gain. When resetting these VIs, the last error does not get reset. Workaround: None
| |||||
356740 Return | The enable input of the periodic position compare VI is not level sensitive On a rising edge of the enable input, the position compare will enable. On a falling edge, the position compare will not disable. It will only disable by asserting the reset input. Workaround: Toggle the reset input. On the falling edge of the reset, the position compare will disable.
| |||||
371917 Return | The Current Limit Algorithm FPGA VI only clamps positive currents and can clamp the current at the wrong value Workaround: If possible, upgrade to SoftMotion 2012SP1. If you can't upgrade, please contact National Instruments for a workaround.
| |||||
376990 Return | The Spline Engine and Step Generator FPGA VIs in the Motion » NI SoftMotion » Advanced palette don't work when dropped from the palette. You can drop these VIs on your block diagram and compile a bitfile, but they do not give you the correct outputs. Workaround: Open a shipping example that uses one of these VIs and drag the VI from the shipping example block diagram to your block diagram.
| |||||
381344 Return | The Pulse Width Modulation FPGA VI does not behave as expected while in a reset state. The PWM output of both the center aligned and left aligned versions is TRUE only if the duty cycle input is nonzero when the reset input goes TRUE. If the duty cycle is zero when reset input goes TRUE, the PWM output is FALSE. Workaround: The best workaround is to not use the reset input if it isn't necessary. If you need to use the reset input, then you must ignore the PWM output during a reset state. When the reset input goes FALSE, the Pulse Width Modulation VI operates properly again.
| |||||
NI SoftMotion Engine | ||||||
221697 Return | Contour Move Update Points returns error -77104 (NIMCDM_bufferCanNotWriteError) when used with a Finite contour move. Calling the Update Points method when running a Finite contour move returns error -77104. This error is misleading as the buffer cannot be updated when executing a Finite contour move. Workaround: To update points when executing a contour move use the Continuous Contour method instead.
| |||||
227752 Return | Using a contour table configured for one axis with a multi-axis contour move does not immediately return an error. The move will start on the single axis, but as the buffer points are consumed NI SoftMotion eventually returns error -77032 (NIMCDM_bufferNotUpdatedError). Workaround: None.
| |||||
231035 Return | You can preempt a coordinate move with an axis move. NI SoftMotion currently allows you to preempt a coordinate move with an axis move. This is unsupported and can lead to undesired effects on the motion system. Workaround: Stop the coordinate move before executing a move on an axis resource.
| |||||
231425 Return | Profile Complete and Move Complete are True when the drive is disabled during a move. The Profile Complete status is incorrectly set to TRUE when the drive is disabled during a move. Because the Profile Complete status is always included in the Move Complete Criteria, Move Complete is also true when the drive is disabled even when it is not included in the Move Complete Criteria. Workaround: None.
| |||||
235309 Return | Relative to Capture moves on a coordinate resource function as regular relative moves. Coordinate resources do not support the Relative to Capture straight-line move mode. Using this move mode on a coordinate move is the same as executing a straight-line move using the Relative mode. Workaround: None.
| |||||
236390 Return | NI 951x Module Cannot Clear Position Error When Performing Coordinate and Single Axis Moves on the Same Axis. When performing both coordinate and single axis moves in the same VI it is possible to have a position error occur that cannot be cleared even by switching the NI Scan Engine to Configuration mode and back to Active mode. The error typically occurs after writing a setpoint greater than the maximum step length specified on the module. Workaround: Perform individual axis moves by using a coordinate move that only moves a single axis.
| |||||
251637 Return | Distributing an NI SoftMotion application to a Windows machine results in a missing DLL. Creating a LabVIEW executable and installer for an application using the LabVIEW NI SoftMotion Module and running it on a computer without NI LabVIEW installed results in nimclv.dll being reported missing. Workaround: Copy dm*, nism*, nimc* from [labview]\resource to the same directory as the executable.
| |||||
252820 Return | Starting an Index reference move with an active limit causes the axis to move until the opposite limit is reached. Starting a Find Index reference move on an active forward or reverse limit correctly returns error –77025 (NIMCDM_limitSwitchActiveError ), but the axis continues moving until the opposite limit switch is encountered. Workaround: Move off of the active limit before executing a Find Index reference move.
| |||||
298886 Return | Encoder velocity filter distances greater than 1 do not work. Setting the Encoder Velocity Filter Distance to a value greater than 1 causes the velocity returned to never update. This is only apparent if you are using the Encoder Velocity Filter Distance only (setting the Velocity Filter Time to 0 to disable it). Workaround: None.
| |||||
325655 Return | Starting a move that has a final position larger than 1E16 will produce error -77109 (NIMCDM_parametersDefineOutOfRange). Workaround: None.
| |||||
327032 Return | Disabling a drive or performing an immediate stop could cause the reported commanded velocity to be incorrect. If you disable the drive or perform an immediate stop during a move, the reported commanded velocity does not change from the last reported value. The actual commanded velocity to the drive is still correct. Workaround: None
| |||||
329767 Return | The Reported Velocity is incorrect for certain axis types. If you are using an NI 951x axis, an AKD EtherCAT axis, or an unbound axis, the reported velocity does not correctly use the Steps Per Unit setting in the Axis Configuration menu. Workaround: In your code, multiply the returned velocity by the value of Steps Per Unit to get the actual velocity.
| |||||
356333 Return | Starting a new move while another move is in progress can cause a hang The hang occurs when a move is in progress and you start another move in the same direction. If the move parameters would not allow the motion to stop at the specified position without moving in the opposite direction, the move does not start and the VI hangs. Workaround: Abort the VI.
| |||||
356790 Return | Clearing a fault on an axis in a coordinate space causes the axis to re-enable If you perform a coordinate space enable and an axis in the coordinate space gets a fault, upon clearing the fault, the axis automatically re-enables. Workaround: Disable the coordinate space before clearing the fault.
| |||||
Other | ||||||
299335 Return | Unable to connect to a Phar Lap target for a short time after reboot. After rebooting a real-time target that uses Phar Lap, you cannot connect to the target for several seconds. In addition, the CPU usage spikes during the time that the target is unavailable. Workaround: Wait for a minute, or until the CPU load decreases, before attempting to connect to the target from LabVIEW.
| |||||
342652 Return | Disabling or Enabling one axis in a coordinate space will disable or enable all axes. If you perform a move on a coordinate space and then enable or disable an individual axis, all other axes in the coordinate space will enable or disable. Workaround: None.
| |||||
342896 Return | Disabling an axis in a coordinate space can cause a timeout error. If you have two or more axes in a coordinate space and you use the Power function block, express VI, or method to enable the coordinate space, you will get error -70027 when trying to disable any individual axis. You will still be able to disable all of the axes together. Workaround: Enable/Disable the individual axes instead of enabling/disabling the coordinate space.
| |||||
Properties and Methods | ||||||
304133 Return | Drive Command configuration properties do not work correctly. The value returned for the Drive Command Positive Torque Limit, Drive Command Negative Torque Limit, and Drive Command Torque Offset properties is always 0. In addition, the value you configure for these properties is not used but no error is returned. Workaround: Use the Axis Configuration dialog box to read and set these properties.
| |||||
319192 Return | Certain axis properties cannot be read or written programmatically. The following axis properties can be set in the Axis Configuration page, but not programmatically from LabVIEW: Brake, Use Multiple Gain Sets, AR Filter Type, Digital Output Mapping, DAC Scaling Coeff, Analog Input Scaling units, Encoder Units, and Stepper Units. If you try to read or write these properties from LabVIEW, you will either get error -77037 (NIMCDM_invalidDataError) or -77004 (NIMCDM_invalidAttributeError). Workaround: Set these properties using the Axis Configuration dialog box.
| |||||
335246 Return | A Velocity-Time contour move must have a velocity change between move segments. When doing a Velocity-Time contour move with the Solve Profile method, you will get error -77108 (NIMCDM_parametersDefineImpossibleMove) if you have two consecutive move segments with the same velocity. Workaround: Making the velocities differ by even a small amount allows you to meet the timing constraints.
| |||||
338057 Return | The Solve Profile method does not generate a complete profile for velocity-time contour moves. When using a velocity-time contour move with the Solve Profile method, the array of profile points does not reach the final position. Workaround: None.
| |||||
341045 Return | Some Method and Property Inputs do not Have Range Checking The following SoftMotion methods and properties only support certain values, but NI SoftMotion does not return an error if you use an unsupported value: 1) The Line input of Read Analog Line, Write Analog Line, Read Digital Line, and Write Digital line should not have inputs less than 0 or greater than the number of valid lines. 2) Any method or property with an enum or ring input may not work correctly when using an unsupported value. Refer to the NI SoftMotion Module Help for supported values. 3) The Position Compare Period property should not be set to a value less than 0 (the minimum value depends on your hardware). Function Block and Express VIs also fail to return an error when using these unsupported values. This Known Issue replaces previous Known Issues 117781 and 207784. Workaround: Only use valid values for all properties and methods.
| |||||
343813 Return | Using the Points[ ][ ] input when doing a contour move returns an error on any subsequent move. When doing a contour move while using the Points[ ][ ] input instead of using a contour Table, any subsequent move returns error -77028: The buffer handle specified for the contouring move is invalid. Verify that the table contains the correct data for the operation and is of the correct type. Workaround: Use a contour Table instead of the Points[ ][ ] input.
| |||||
SolidWorks Interface | ||||||
297066 Return | Moving an NI SoftMotion Module project using SolidWorks axes from Windows XP to Windows 7 does not update the log file path. By default, a LabVIEW project containing a SolidWorks axis on Windows XP saves log files to "C:\Documents and Settings\<username>\...". If you move this project to a computer running Windows 7, the log file path does not change and the selected path does not exist. Workaround: Manually change the log file path in the Assembly Properties dialog box. Right-click the SolidWorks assembly in the Project Explorer window and select Properties from the shortcut menu to display the Assembly Properties dialog box.
| |||||
382922 Return | NI SoftMotion for SolidWorks only works with the most recent installed version of the NI SoftMotion Module. If you have multiple versions of the NI SoftMotion Module installed on the same computer and try to use NI SoftMotion for SolidWorks in one of the earlier versions, the simulation will not start. Everything will work normally in the most recent installed version. Workaround: Use the most recent installed version of NI SoftMotion for all SolidWorks simulations. For example, if you have SoftMotion 2011 and SoftMotion 2012 installed on your computer, you will have to do all SolidWorks simulations using NI SoftMotion 2012.
| |||||
Trajectory Generator | ||||||
221638 Return | Preempting a move in the opposite direction can return error -77070 (NIMCDM_startPendingError). NI SoftMotion automatically performs a decelerate stop move when commanding a move in the opposite direction. If you command a second move before the stop has completed, error -77070 is returned. Workaround: Wait for the direction to change before starting a new move.
| |||||
296142 Return | Blending a Spherical or a Helical arc to a Circular arc causes velocity spikes when used with the "At Decelerate" blend mode. This is an error in reporting only and does not have an adverse affect on the motion system. Workaround: None.
| |||||
330144 Return | The Solve Profile method can fail on moves that have an acceleration greater than the deceleration. The Solve Profile method may fail on a move with a much faster acceleration than deceleration. On a real-time target, NI SoftMotion returns error -77108 (NIMCDM_parametersDefineImpossibleMove). On Windows, LabVIEW may crash. Workaround: None
| |||||
349617 Return | When blending a single axis straight line move after a coordinate arc move, the arc move does not execute Workaround: Do not use both axis and coordinate moves in the same application. If you have to do a single axis move, do a coordinate move that only moves one axis.
| |||||
349659 Return | Blending coordinate moves using the At Deceleration blend mode can cause velocity spikes The velocity spikes are not very noticeable on servo motors but can cause stepper motors to stall. At high velocities, motion may be halted without any errors or warnings. Workaround: None
| |||||
374856 Return | Large position error values can cause position oscillations when in closed-loop stepper mode. These oscillations only occur when travelling in one direction and only if the position error is greater than ~0.25 revolutions. Workaround: Use a motor that is properly sized for your application to eliminate the need for large position error corrections.
|
Document last updated on 3/5/2013