Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

Document Type: Tutorial
NI Supported: Yes
Publish Date: Sep 26, 2006

Distributed Machine Control with NI SoftMotion Controller for CANopen - FAQ

30 ratings | 3.60 out of 5
Print

Overview

The NI SoftMotion Controller is a soft motion interface between NI-Motion driver software and CANopen distributed intelligent drives. You can program CANopen-based Accelnet and Xenus drives from Copley Controls with the easy-to-use NI-Motion API in National Instruments LabVIEW, Microsoft Visual Basic or C. You also can rapidly prototype your distributed motion application using NI Motion Assistant.

With the NI SoftMotion Controller for CANopen you can now use PCI- or PXI-based programmable automation controllers (PACs) in distributed machine control applications.

View datasheet and buy the NI SoftMotion Controller for CANopen
Learn more about NI Programmable Automation Controllers

The following are the most frequently asked questions about National Instruments SoftMotion Controller for CANopen.

Technology

What is CANopen?

CANopen is an application layer built on the lower-level CAN data-link layer. CANopen defines the messages for network management, device configuration, synchronization, real-time data transfer, and event handling. CAN, the data-link layer, defines the low-level structure of data packets, device addressing, error checking, and network arbitration. CAN is deterministic and collisions are nondestructive. If two devices on the network initiate communication at the same time, the higher-priority message is uncorrupted and goes through. The device with the lower- priority message stops transmitting and tries again later.

The majority of network communication is handled by Service Data Objects (SDOs) and Process Data Objects (PDOs). SDOs are master/slave communications used primarily for drive configuration. PDOs are used for real-time control and data transfer. You can send a PDO peer-to-peer or broadcast it to all devices. Transmission can be synchronous at programmed intervals or triggered by an asynchronous event. When you use the NI SoftMotion Controller with a CANopen device, you can daisy-chain up to 15 drives together and connect them to the real-time host. The real-time PDOs defined by the CANopen protocol transfer data between the drives and host. Using Device Profile 402 for Motion Control, CANopen drives implement all I/O required by the motion controller.

What is the difference between centralized and distributed motion control?

Machine control system architectures generally fall into two categories – centralized and distributed. In a centralized system, all control loops, including logic, trajectory generation, and PID control, are executed on a single processor on your programmable automation controller (PAC). In a distributed system, the trajectory generation and logic control executes on the central processor, but the PID control loop is executed in the intelligent drive. A distributed approach reduces overall wiring cost and system complexity.

[+] Enlarge Image

Figure 1. Centralized and Distributed Machine Control Architectures

What is the NI SoftMotion Controller architecture?

A motion controller is at the center of a typical motion system that consists of supervisory control, trajectory generation, and a control loop. The controller converts high-level user commands into command signals that the intelligent drives use to move motors and actuators. The motion controller also monitors the system for error conditions, faults, and asynchronous events that can cause the system to change speed or direction or to start/stop the actuators. Figure 2 shows the parts and processes of a typical motion controller.

[+] Enlarge Image


Figure 2. Typical Motion Controller


The NI SoftMotion Controller uses standard PC-based platforms and open standards to connect intelligent drives to a real-time host. In this architecture, the motion controller software components run on a real-time host, and all I/O is implemented in the drives. This separation of I/O from the motion controller software components helps lower system cost and improve reliability. You can use the CANopen standard to connect these components.

[+] Enlarge Image

Figure 3. NI SoftMotion Controller Architecture


Where do my trajectory generation and PID control loops execute when using a CANopen-based distributed motion system?

When used with CANopen devices, the supervisory control and trajectory generation components of the NI SoftMotion Controller execute in a real-time environment running the NI LabVIEW Real-Time Module (ETS). If your motion control system is using eight axes or fewer, the supervisory control and trajectory generation loops execute every 10 ms. If your motion control system is using more than eight axes, the supervisory control and trajectory generation loops execute every 20 ms. When you are using the NI SoftMotion Controller with a CANopen
drive, the drive implements the control loop and interpolation. In this configuration, the I/O and the NI SoftMotion Controller use an National Instruments CAN interface device to communicate to the CAN bus.


[+] Enlarge Image


Figure 5. NI SoftMotion Controller for CANopen

What is the difference between the NI SoftMotion Controller and the NI SoftMotion Development Module for LabVIEW?

The NI SoftMotion Controller for intelligent drives and the NI SoftMotion Development Module for LabVIEW are two different products based on the same soft motion technology.

The NI SoftMotion Development Module includes functions for trajectory generation, spline interpolation, position and velocity PID control, and encoder implementation on LabVIEW Real-Time and/or LabVIEW FPGA. With the NI SoftMotion Development Module, you can create your custom motion controller using CompactRIO, plug-in M Series DAQ devices, plug-in R Series devices, or Compact FieldPoint, depending on your price-performance requirements.

The NI SoftMotion Controller is a soft motion interface between NI-Motion driver software and distributed intelligent drives. You now can program your intelligent drives with the easy-to-use NI-Motion API in NI LabVIEW or C. You also can rapidly prototype your distributed motion application using NI Motion Assistant.


[+] Enlarge Image


Figure 6. NI SoftMotion Technology

Can I use the NI SoftMotion Development Module for LabVIEW to customize the control algorithm on the NI SoftMotion Controller or the intelligent drives?

No. With the NI SoftMotion Development Module for LabVIEW, you can customize your control algorithms -- including trajectory generation, spline interpolation, and control algorithms in LabVIEW -- only when you are programming the complete motion controller. You cannot use the NI SoftMotion Development Module in conjunction with the NI SoftMotion Controller to customize your algorithms on CANopen-based intelligent drives.

Product Features

What is included with the purchase of the NI SoftMotion Controller for CANopen?

The NI SoftMotion Controller for CANopen includes the NI SoftMotion Controller activated for two axes of Copley Controls Accelnet or Xenus intelligent drives, the National Instruments CAN interface device (PCI or PXI), and the NI-Motion driver. You can activate your system for more axes by purchasing the NI SoftMotion Controller upgrade for 2, 4, or 8 axes.

[+] Enlarge Image

Figure 7. NI SoftMotion Controller for CANopen

Do I need a separate HMI for my CANopen-based motion control system?

Yes. The NI SoftMotion Controller for CANopen requires LabVIEW Real-Time ETS, which must run on a separate computer than the human machine interface (HMI).

What are the types of moves I can execute with the NI SoftMotion Controller?

You can execute a variety of moves and profiles with the NI SoftMotion Controller including straight line; arc; contouring; blending; electronic gearing; electronic camming; and circular, helical, and spherical interpolation with trapezoidal and S-curve velocity profiles.

Is there a limit on the number of intelligent drives I can daisy-chain with the NI SoftMotion Controller?

When you use the NI SoftMotion Controller, you can daisy-chain up to 15 drives and connect them to the real-time host.

How do I create onboard programs?

To use onboard programs with the NI SoftMotion Controller, use the LabVIEW Real-Time Module to target your application to run in the same environment as the NI SoftMotion Controller. Note that the NI SoftMotion Controller onboard program shares processor and system resources with the NI SoftMotion Controller. System jitter increases with the number of devices you use in your real-time system. Enable only the devices you need to use for the current application, especially when using onboard programs.

What is the NI SoftMotion Controller communication watchdog?

The supervisory control in the NI SoftMotion Controller continuously monitors all communication with the drives connected to the host. If any drive fails to update its data in the host-loop update period, the axis corresponding to that drive is disabled, and the communication watchdog status bit, which is returned by the Read-per-Axis Status function, is set to TRUE. Similarly, all drives connected to the NI SoftMotion Controller are configured to go into a fault state if the data from the NI SoftMotion Controller is not updated every host-loop update period on the drives. The communication watchdog functionality ensures that the NI SoftMotion Controller operates in real time.

Does the NI SoftMotion Controller include autotuning?

On Copley CANopen drives -- because the PID executes on a DSP on the drives -- you need to use the Copley Controls Motion Explorer (CME 2) configuration software to set PID tuning parameters.

How do I configure my CANopen intelligent drives?

You can configure your Copley CANopen-based Accelnet and Xenus drives using the Copley Controls Motion Explorer (CME 2) configuration software. Using CME 2, you can set the drive operation mode, motor/feedback parameters, and the CAN address for the drive. You also can tune your PID parameters using the CME 2 software. You can complete all configurations for your NI SoftMotion Controller, including configuring drive I/O, using MAX.

Product Compatibility

Which CANopen drives are compatible with the NI SoftMotion Controller?

The NI SoftMotion Development Module is compatible with any of the Accelnet or Xenus CANopen drives from Copley Controls. For more information visit http://www.copleycontrols.com/motion


Figure 11. Copley CANopen-based Intelligent Drives

Can I use NI Motion Assistant with the NI SoftMotion Controller?

Yes, you can rapidly prototype your distributed motion application using NI Motion Assistant configurable software for motion control and the NI SoftMotion Controller. With NI Motion Assistant, you can design your motion control application in an interactive 3D environment and convert it into C code for any C compiler or into NI LabVIEW VIs (programs). You can take advantage of the NI Motion Assistant patent-pending smart-contouring functionality with an API that you can call from C, Visual Basic, or NI LabVIEW.

Download a FREE, fully functional evaluation version of NI Motion Assistant
Buy NI Motion Assistant

What languages can I use to program my intelligent drives?

You can program the NI-Motion driver included with NI SoftMotion Controller software using NI LabVIEW, C with NI LabWindows/CVI, Microsoft Visual Basic or Microsoft Visual C++.

Do I need to have LabVIEW Real-Time to program my intelligent drives?

You do not need the LabVIEW Real-Time Module to program your intelligent drives. You can program your distributed motion application in Windows with the included LabVIEW Real-Time run-time engine. However, the LabVIEW Real-Time Module is recommended if, in addition to motion, you want to interface to analog or digital I/O and program logic, monitoring, and control applications in real time. Use the LabVIEW Real-Time Module for ETS with the NI SoftMotion Controller for CANopen.

Applications

What are the typical applications for which I would use distributed motion control?

Distributed motion control is useful in a variety of scenarios such as winding, material handling, machine control, lab automation, textiles, medical, and metrology. Specific applications include coil winding, plastic film spooling, motor armature winding, fiberglass layups, rope spooling, fuse winding, screen printing, high-throughput screening, textile cutting, diagnostic imaging, conformal coating, surface metrology, and more.

Is the NI SoftMotion Controller appropriate for OEM customers?

Yes. With the NI SoftMotion Controller, you can achieve a shorter time to market using NI Motion Assistant and NI LabVIEW, and you can create distributed motion systems with the reliability of an RTOS. For questions about the National Instruments OEM program and quantity pricing, visit ni.com/oem.

View datasheet and buy the NI SoftMotion Controller for CANopen
Learn more about NI Programmable Automation Controllers

30 ratings | 3.60 out of 5
Print

Reader Comments | Submit a comment »

 

Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).