Open Core Interface - MLPI
MLPI-MotionLogicProgrammingInterface(mlpi4Java)  1.26.2
Movement.java
Go to the documentation of this file.
1 // -----------------------------------------------------------------------
2 // MLPI - <Movement.java>
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 package com.boschrexroth.mlpi;
58 
75 public class Movement extends MlpiComponent {
76  /*
77  * Fields
78  */
79  private final Motion.AxisRef _axisRef;
80  private long _motionHandle;
81 
82  /*
83  * Methods
84  */
85  Movement(MlpiHandle connection, Motion.AxisRef axisRef) {
86  super(connection);
87  _axisRef = axisRef;
88  }
102  public native void home();
103 
116  public native void setAbsoluteMeasurement();
117 
133  public native void power(boolean power);
134 
153  public native void moveVelocity(double velocity, double acceleration, double deceleration, double jerk);
154 
173  public native void moveAbsolute(double position, double velocity, double acceleration, double deceleration, double jerk);
174 
195  public native void moveRelative(double distance, double velocity, double acceleration, double deceleration, double jerk);
196 
216  public native void moveAdditive(double distance, double velocity, double acceleration, double deceleration, double jerk);
217 
240  public native void stop(boolean stop, double deceleration, double jerk);
241 
259  public native void gearIn(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust);
260 
280  public native void gearInPos(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, Motion.StartMode startMode, Motion.SyncDirection syncMode);
281 
309  public native void flexProfile(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, int setSelection, boolean useSwitchingPos, double switchingPosition, Motion.ProfileStartPoint profileEntry, double masterOffset, double slaveOffset, Motion.SyncType syncMode, double syncVelocity, double syncAcceleration, Motion.ProfileExecutionMode executionMode);
310 
324  public native void wait(int timeout);
325 
343  public native void phasingSlave(double phaseShift, double velocity, double acceleration, double deceleration);
344 
362  public native void phasing(double phaseShift, double velocity, double acceleration, double deceleration);
363 
378  public native void torqueControl(double torque, double torqueRamp);
379 
401  public native void camIn(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, double camShaftDistance, Motion.SyncDirection syncMode, Motion.StartMode startMode, Motion.CamTableId camId);
402 
416  public native void synchronOut();
417 
430  public native void openCyclicPositionChannel();
431 
444  public native void openCyclicVelocityChannel();
445 
458  public native void openCyclicAnalogChannel();
459 
472  public native void openCyclicTorqueChannel();
473 
487  public native void writeCyclicPosition(double cyclicValue);
488 
502  public native void writeCyclicVelocity(double cyclicValue);
503 
517  public native void writeCyclicAnalog(double cyclicValue);
518 
532  public native void writeCyclicTorque(double cyclicValue);
533 
553  public native void moveContinuousAbsolute(double position, double endVelocity, double velocity, double acceleration, double deceleration, double jerk);
554 
574  public native void moveContinuousRelative(double distance, double endVelocity, double velocity, double acceleration, double deceleration, double jerk);
575 
576  //public native void status();
577 }
This enumeration defines the method with which synchronization takes place.
Definition: Motion.java:168
This enumeration defines how the flex profile is executed.
Definition: Motion.java:195
This class defines the axis through the definition of control and axis number.
Definition: Motion.java:417
native void openCyclicAnalogChannel()
native void gearIn(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust)
native void wait(int timeout)
This enumeration defines the available cam numbers. The cams actually available depend on the hardwar...
Definition: Motion.java:290
native void moveAbsolute(double position, double velocity, double acceleration, double deceleration, double jerk)
native void openCyclicTorqueChannel()
This enumeration defines the direction and type in which synchronization takes place. Only for FlexProfile!
Definition: Motion.java:139
native void flexProfile(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, int setSelection, boolean useSwitchingPos, double switchingPosition, Motion.ProfileStartPoint profileEntry, double masterOffset, double slaveOffset, Motion.SyncType syncMode, double syncVelocity, double syncAcceleration, Motion.ProfileExecutionMode executionMode)
native void phasingSlave(double phaseShift, double velocity, double acceleration, double deceleration)
native void torqueControl(double torque, double torqueRamp)
native void camIn(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, double camShaftDistance, Motion.SyncDirection syncMode, Motion.StartMode startMode, Motion.CamTableId camId)
native void gearInPos(Motion.AxisRef masterAxis, int numerator, int denominator, double fineadjust, Motion.StartMode startMode, Motion.SyncDirection syncMode)
native void openCyclicVelocityChannel()
native void moveAdditive(double distance, double velocity, double acceleration, double deceleration, double jerk)
native void writeCyclicAnalog(double cyclicValue)
native void phasing(double phaseShift, double velocity, double acceleration, double deceleration)
native void moveContinuousRelative(double distance, double endVelocity, double velocity, double acceleration, double deceleration, double jerk)
This enumeration defines the direction in which synchronization takes place.
Definition: Motion.java:111
native void openCyclicPositionChannel()
native void moveContinuousAbsolute(double position, double endVelocity, double velocity, double acceleration, double deceleration, double jerk)
native void writeCyclicTorque(double cyclicValue)
This enumeration defines the method of how a flex profile interprets the start point.
Definition: Motion.java:223
native void setAbsoluteMeasurement()
Class definition of the MotionLib.
Definition: Motion.java:66
native void stop(boolean stop, double deceleration, double jerk)
native void writeCyclicPosition(double cyclicValue)
native void power(boolean power)
native void writeCyclicVelocity(double cyclicValue)
native void moveRelative(double distance, double velocity, double acceleration, double deceleration, double jerk)
native void moveVelocity(double velocity, double acceleration, double deceleration, double jerk)