Open Core Interface - MLPI
MLPI-MotionLogicProgrammingInterface(mlpi4COM)  1.26.2
IAxis.idl
Go to the documentation of this file.
1 // -----------------------------------------------------------------------
2 // MLPI - <IAxis.idl>
3 // -----------------------------------------------------------------------
4 // Copyright (c) 2012 Bosch Rexroth. All rights reserved.
5 // Redistribution and use in source and binary forms of this MLPI software
6 // (SW) provided to you, with or without modification, are permitted
7 // without prior approval provided that the following conditions are met:
8 //
9 // 1. Redistributions of source code of SW must retain the above copyright
10 // notice, this list of conditions and the following disclaimer.
11 //
12 // 2. Redistributions in binary form of SW must reproduce the above copyright
13 // notice, this list of conditions and the following disclaimer in the
14 // documentation and/or other materials provided with the distribution.
15 //
16 // 3. User recognizes and acknowledges that it acquires no right,
17 // title or interest in or to any of the names or trademarks used in
18 // connection with the SW ("names") by virtue of this License and waives
19 // any right to or interest in the names. User recognizes and acknowledges
20 // that names of companies or names or products of companies displayed
21 // in the documentation of SW to indicate the interoperability of products
22 // with the SW are the names of their respective owners. The use of such
23 // names in the documentation of SW does not imply any sponsorship,
24 // approval, or endorsement by such companies of this product.
25 //
26 // 4. Modified code versions, i.e. any addition to or deletion from
27 // the substance or structure of the original code of the SW running
28 // the MLPI must be plainly marked as such and must not be misrepresented
29 // as being original SW.
30 //
31 // 5. The SW may only be used in connection with a Bosch Rexroth product.
32 //
33 // THIS INFORMATION IS PROVIDED BY BOSCH REXROTH CORPORATION "AS IS"
34 // AND WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING
35 // (BUT NOTLIMITED TO) ANY IMPLIED WARRANTIES OF MERCHANTABILITY,
36 // FITNESS FOR ANY PARTICULAR PURPOSE, OR NON-INFRINGEMENT. WHILE THE
37 // INFORMATION PROVIDED IS BELIEVED TO BE ACCURATE, IT MAY INCLUDE
38 // ERRORS OR INACCURACIES.
39 // SUBJECT TO COMPULSORY STATUTORY PROVISIONS OF THE GERMAN LAW AS
40 // THE APPLICABLE LAW FOR THIS LICENSE BOSCH REXROTH CORPORATION WILL
41 // NOT BE LIABLE FOR ANY DAMAGES OF ANY KIND ARISING FROM THE USE OF
42 // THE SOFTWARE DISTRIBUTED HEREUNDER, INCLUDING BUT NOT LIMITED TO
43 // DIRECT, INDIRECT, INCIDENTAL, PUNITIVE, AND CONSEQUENTIAL DAMAGES.
44 // -----------------------------------------------------------------------
45 //
55 //
56 // -----------------------------------------------------------------------
57 
58 
59 
63 [
64  object,
65  uuid(51FDD884-13B4-4067-8FFB-70C3164544AF),
66  dual,
67  nonextensible,
68  helpstring("IAxis Interface"),
69  pointer_default(unique)
70 ]
71 interface IAxis : IDispatch{
72 
73 
74  [propget, id(1), helpstring("Property Movement")] HRESULT Movement([out, retval] IMovement** Movement);
75 #if defined(WIN32) || defined(WIN64)
76  [propget, id(2), helpstring("Property AxisRef")] HRESULT AxisRef([out, retval] struct AxisRef* axis);
77 #endif
78 
105  [id(3), helpstring("Method GetActualPosition")] HRESULT GetActualPosition([out,retval] DOUBLE* position);
106 
133  [id(4), helpstring("Method GetActualVelocity")] HRESULT GetActualVelocity([out, retval] DOUBLE* velocity);
134 
161  [id(5), helpstring("Method GetActualAcceleration")] HRESULT GetActualAcceleration([out, retval] DOUBLE* acceleration);
162 
189  [id(6), helpstring("Method GetActualTorque")] HRESULT GetActualTorque([out, retval] DOUBLE* torque);
190 
217  [id(7), helpstring("Method GetInterpolatedPosition")] HRESULT GetInterpolatedPosition([out, retval] DOUBLE* position);
218 
245  [id(8), helpstring("Method GetInterpolatedVelocity")] HRESULT GetInterpolatedVelocity([out, retval] DOUBLE* velocity);
246 
273  [id(9), helpstring("Method GetInterpolatedTorque")] HRESULT GetInterpolatedTorque([out, retval] DOUBLE* torque);
274 
302  [id(10), helpstring("Method GetDiagnosisNumber")] HRESULT GetDiagnosisNumber([out, retval] LONG* diagnosisNumber);
303 
314  [id(11), helpstring("Method GetDiagnosisText")] HRESULT GetDiagnosisText([out, retval] BSTR* diag);
315 
322  [id(12), helpstring("Method LoadDefaultParameters")] HRESULT LoadDefaultParameters(void);
323 
330  [id(13), helpstring("Method ClearError")] HRESULT ClearError(void);
331 
339  [id(14), helpstring("Method GetName")] HRESULT GetName([out, retval] BSTR* name);
340 
348  [id(15), helpstring("Method SetName")] HRESULT SetName([in] BSTR name);
349 
357  [id(18), helpstring("Method GetModulo")] HRESULT GetModulo([out, retval] DOUBLE* modulo);
358 
366  [id(19), helpstring("Method SetModulo")] HRESULT SetModulo([in] DOUBLE modulo);
367 
375  [id(20), helpstring("Method GetPositionLimitPos")] HRESULT GetPositionLimitPos([out,retval ] DOUBLE *positionLimit);
376 
384  [id(21), helpstring("Method SetPositionLimitPos")] HRESULT SetPositionLimitPos([in] DOUBLE positionLimit);
385 
393  [id(22), helpstring("Method GetPositionLimitNeg")] HRESULT GetPositionLimitNeg ([out,retval ] DOUBLE *positionLimit);
394 
402  [id(23), helpstring("Method SetPositionLimitNeg")] HRESULT SetPositionLimitNeg([in] DOUBLE positionLimit);
403 
411  [id(24), helpstring("Method GetVelocityLimitPos")] HRESULT GetVelocityLimitPos([out, retval] DOUBLE* velocityLimit);
412 
420  [id(25), helpstring("Method SetVelocityLimitPos")] HRESULT SetVelocityLimitPos([in] DOUBLE velocityLimit);
421 
429  [id(26), helpstring("Method GetVelocityLimitNeg")] HRESULT GetVelocityLimitNeg([out, retval] DOUBLE* velocityLimit);
430 
438  [id(27), helpstring("Method SetVelocityLimitNeg")] HRESULT SetVelocityLimitNeg([in] DOUBLE velocityLimit);
439 
447  [id(28), helpstring("Method GetAccelerationLimitBip")] HRESULT GetAccelerationLimitBip ([out,retval ] DOUBLE *accelerationLimit);
448 
456  [id(29), helpstring("Method SetAccelerationLimitBip")] HRESULT SetAccelerationLimitBip([in] DOUBLE accelerationLimit);
457 
465  [id(30), helpstring("Method GetJerkLimitBip")] HRESULT GetJerkLimitBip([out, retval] DOUBLE* jerkLimit);
466 
474  [id(31), helpstring("Method SetJerkLimitBip")] HRESULT SetJerkLimitBip([in] DOUBLE jerkLimit);
475 
483  [id(32), helpstring("Method GetTorqueLimitBip")] HRESULT GetTorqueLimitBip([out, retval] DOUBLE* torqueLimit);
484 
492  [id(33), helpstring("Method SetTorqueLimitBip")] HRESULT SetTorqueLimitBip([in] DOUBLE torqueLimit);
493 
501  [id(34), helpstring("Method GetSlaveDriveFeedTravel")] HRESULT GetSlaveDriveFeedTravel([out, retval] DOUBLE* feedtravel);
502 
510  [id(35), helpstring("Method SetSlaveDriveFeedTravel")] HRESULT SetSlaveDriveFeedTravel([in] DOUBLE feedtravel);
511 
519  [id(36), helpstring("Method GetState")] HRESULT GetState([out, retval] LONG* state);
520 
528  [id(37), helpstring("Method GetStateExtended")] HRESULT GetStateExtended([out, retval] LONG* stateExtended);
529 
537  [id(38), helpstring("Method GetAxisType")] HRESULT GetAxisType([out, retval] SHORT* type);
538 
546  [id(39), helpstring("Method GetCondition")] HRESULT GetCondition([out, retval] enum AxisCondition* condition);
547 
555  [id(40), helpstring("Method SetCondition")] HRESULT SetCondition([in] enum AxisCondition condition);
556 };
557 
558 
559 
560 // -----------------------------------------------------------------------
561 // HISTORY
562 // -----------------------------------------------------------------------
563 // 01-Jan-2012
564 // - first release
565 //
566 
567 
568 
HRESULT GetActualPosition([out, retval] DOUBLE *position)
This function reads the actual position of an axis.
HRESULT GetCondition([out, retval] enum AxisCondition *condition)
This function returns the axis condition.
HRESULT SetCondition([in] enum AxisCondition condition)
This function sets the axis condition.
HRESULT GetActualAcceleration([out, retval] DOUBLE *acceleration)
This function reads the actual acceleration of a axis.
HRESULT GetState([out, retval] LONG *state)
This function returns the axis state.
HRESULT GetStateExtended([out, retval] LONG *stateExtended)
This function returns the axis state.
HRESULT SetAccelerationLimitBip([in] DOUBLE accelerationLimit)
This function sets the bipolar acceleration limit.
HRESULT SetVelocityLimitPos([in] DOUBLE velocityLimit)
This function sets the positive velocity limit.
HRESULT GetAxisType([out, retval] SHORT *type)
This function returns the axis state.
HRESULT GetAccelerationLimitBip([out, retval] DOUBLE *accelerationLimit)
This function returns the bipolar acceleration limit of an axis.
HRESULT SetTorqueLimitBip([in] DOUBLE torqueLimit)
This function sets the bipolar torque limit.
HRESULT LoadDefaultParameters(void)
This function loads the default parameters of an axis.
HRESULT SetPositionLimitPos([in] DOUBLE positionLimit)
This function sets the positive position limit.
HRESULT SetName([in] BSTR name)
This function sets the name of an axis.
HRESULT GetInterpolatedPosition([out, retval] DOUBLE *position)
This function reads the interpolated (commanded) position of a axis.
HRESULT SetSlaveDriveFeedTravel([in] DOUBLE feedtravel)
This function sets the slave drive feed travel.
HRESULT GetTorqueLimitBip([out, retval] DOUBLE *torqueLimit)
This function returns the bipolar torque limit of an axis.
HRESULT GetActualTorque([out, retval] DOUBLE *torque)
This function reads the torque position of a axis.
HRESULT GetVelocityLimitNeg([out, retval] DOUBLE *velocityLimit)
This function returns the negative velocity limit of an axis.
HRESULT GetInterpolatedVelocity([out, retval] DOUBLE *velocity)
This function reads the interpolated (commanded) velocity of a axis.
HRESULT SetModulo([in] DOUBLE modulo)
This function sets the modulo value of the axis.
HRESULT GetVelocityLimitPos([out, retval] DOUBLE *velocityLimit)
This function returns the positive velocity limit of an axis.
HRESULT GetName([out, retval] BSTR *name)
This function returns the name of an axis.
HRESULT ClearError(void)
This function clears all active errors of an axis.
HRESULT GetInterpolatedTorque([out, retval] DOUBLE *torque)
This function reads the interpolated (commanded) torque of a axis.
HRESULT GetPositionLimitPos([out, retval] DOUBLE *positionLimit)
This function returns the positive position limit of an axis.
HRESULT GetDiagnosisText([out, retval] BSTR *diag)
This function reads the current diagnosis text of the axis.
HRESULT SetVelocityLimitNeg([in] DOUBLE velocityLimit)
This function sets the negative velocity limit.
Definition of the IAxis interface used to access the motion functionality of a single axis...
Definition: IAxis.idl:71
HRESULT GetModulo([out, retval] DOUBLE *modulo)
This function returns the name of an axis.
HRESULT SetJerkLimitBip([in] DOUBLE jerkLimit)
This function sets the bipolar jerk limit.
HRESULT GetJerkLimitBip([out, retval] DOUBLE *jerkLimit)
This function returns the bipolar jerk limit of an axis.
Definition of the IMovement interface used to access motion commands to move an axis or drive...
Definition: IMovement.idl:71
HRESULT GetPositionLimitNeg([out, retval] DOUBLE *positionLimit)
This function returns the negative position limit of an axis.
HRESULT GetActualVelocity([out, retval] DOUBLE *velocity)
This function reads the actual velocity of an axis.
HRESULT GetSlaveDriveFeedTravel([out, retval] DOUBLE *feedtravel)
This function returns the slave drive feed travel of an axis.
HRESULT SetPositionLimitNeg([in] DOUBLE positionLimit)
This function sets the negative position limit.
HRESULT GetDiagnosisNumber([out, retval] LONG *diagnosisNumber)
This function reads the current diagnosis number of the axis.