. |
Important Things to Know for MPI 04.0x
Introduction
The MPI 04.02 and 04.03 releases add support for the new QMP controllers in addition to ZMP controllers. More information about these controllers can be found at the following links: A new feature for this release of the MPI is Geometric Path Motion. This feature allows the user to define a desired path to the final position. This is useful for applications that need to move an end effector in 2D or 3D space. Examples include robots, laser cutting or water jet cutting machines, welding, painting, gluing, and CNC machining. More information about this feature can be found on the following pages: See also: mpiGeometricPathCreate | mpiGeometricPathParamsGet | mpiGeometricPathParamsSet | mpiGeometricPathAppend | MPIGeometricPathElementAttributes | MPIGeometricPathElementAttrMask | MPIGeometricPathMessage | MPIGeometricPathParams | MPIGeometricPathPlanType. The AKD SynqNet series of Servo Drives are now compatible with the MPI starting with release 04.02. These fast, feature-rich, and flexible drives easily integrate into any application. Some important things regarding AKD-SQ:
For more information on the AKD SynqNet drive, reference the communications manual found here. The compare module generates an output signal based on comparison to a position feedback value. When the position exceeds the compare value, the module can generate an output pulse or state (pulse width set by time or position). The compare module currently runs in streaming compare mode. Additional functionality is planned for future releases. More information about this feature can be found on the following pages: 04.03 - New Feature: Compare Delta (Divide-by-N) The compare delta (Divide-By-N) mode generates a sequence of output signal pulses based on position feedback (at hardware speeds). For example, the pulses might begin at position 1,000,000 and repeat every 262,144 (2^18) counts until they stop at 10,000,000. The divide-by-N feature is typically used to trigger external devices, such as a camera, at precise locations along an axis, with very high accuracy and low latency. Note at introduction, only the AKD-SynqNet drive supports this feature. AKD-SynqNet firmware must be V01-08-00-005 or later. Windows 7 32-bit and 64-bit Support The 04.02 release adds support for operation on 64-bit Windows 7 machines. There are separate installers, named appropriately, which includes either a 32-bit device driver or a 64-bit device driver. Be sure to download and install the appropriate .MSI installer file for your particular version of Windows 7. The 04.02 release of the MPI introduces support for Microsoft Visual Studio 2010. For the first time, the MPI library is built using Visual Studio 2010. For our customers using earlier versions of Visual Studio, the dll libraries and MDK solution files are provided for VS2005 with service pack 1 or later. Note that the utilities have also been built using VS2010, but these are still compatible with VS2005. Both of these versions of Visual Studio have their own respective directories as part of the MPI installation. Use the appropriate directory when building your applications with your preferred version of Visual Studio. The screenshot below shows the new directory structure. figure: MPI install directory structure New Data TypesSeveral data types have been changed in versions 04.02 and 04.03. The table below illustrates these changes. Use this as a reference when porting your existing code to version 04.02 or 04.03. The API reference page has also been updated to reflect the correct data types for each object.
Client/ServerCertain system architectural restrictions may limit how a motion control system can be accessed. In such cases, a possible solution is to use a remotely installed motion controller such as an eXMP-SynqNet and establish communication to the device via a Client-Server connection over TCP/IP. It is an ideal solution for "headless" type controllers providing remote diagnostic capability and control. You can also use one host computer to control multiple remote controllers. Client/Server has been updated in the 04.02 and 04.03 releases to support multiple client threads. The mpiThreadCreate method was modified to accept a control object as an argument. These changes allow each client thread to have a separate server thread. The following prototype should be used when implementing client/server:
To learn more about this feature, click here. New mpiAxisCommandOriginSet MethodA new method has been added that implements the common operation of adjusting the command position by changing the origin. mpiAxisCommandOriginSet sets the command position without changing the position error. As a result, no jumps in motion occur when this method is used. For more information: mpiAxisCommandOriginSet, mpiAxisCommandPositionSet. New features for User LimitsSeveral useful new features have been added to the User Limits:
Power-On Self-Test (POST)Power-on Self-Test (POST) is a test that the QMP firmware executes every time the board is powered up (but NOT on meireset) to verify that the hardware is functional. With this release, only the memory is checked, but more test cases will be added in the future. If POST succeeds, the POST LED will be solid. If it fails, the POST and Dubug LEDs will flash the number of times corresponding to the failing test (1-3). In addition, the controller will not boot up and the MPI utility ‘version’ will display an error code corresponding to ‘Control: Power-on Self-Test Failed’. POST was optimized in versions 04.02.02 and later to take just a few milliseconds to complete. HIDHID tests are executed by stopping the controller and putting it in a state to receive HID commands. A software utility is provided to initiate and execute HID tests. Once the tests are completed, the controller must be reset (with meiReset) before attempting to use it for normal operation. At this time, only memory tests are supported; more tests will be added in future releases. mpiControlConfigSet (04.03) MPI objects allocated prior to an mpiControlConfigSet call, in which dynamic reallocation is performed, will be considered "obsoleted". The user will have to delete these objects and reallocate them. If it is desired to capture the configuration of these objects, the user will have to retrieve the configuration using, say, mpiAxisConfigGet on an MPIAxis object, PRIOR to calling mpiControlConfigSet. The stored configuration can be applied on the newly obtained MPIAxis object AFTER calling mpiControlConfigSet. If an "obsoleted" object as described above is used in an MPI method, the error returned is: ERROR 0x631: Control: Object cannot be used after reallocation SimServerAt the time of the release, the development of SimServer had not been completed. This feature is released as a standalone package and is not included in the MPI distributables. SimServer is planned to be completed and supported in future releases. meiConfigmeiConfig.exe and meiConfigGUI.exe were temporarily removed from the MPI in the 04.02.00 and 04.02.01 releases. Development of these utilities has been completed and they are available in the 04.02.02 and later releases. Note: meiConfig is supported in 04.02.02 and later releases. |
| | Copyright © 2001-2021 Motion Engineering |