Drive behavior

he Drive Behavior provides a detailed behavior to a Drive. This gives the flexibility to model all variety of ways to move objects. In realvirtual.io a few standard Drive Behaviors are included and you can extend them based on the components you are using in real life. Here is a list of the included Drive Behaviors. All Drive Behaviors are named with a prefix Drive_ from better clarification.

This tutorial explains the relation between Signals and Behavior Models:

Drive_Cylinder

This is the model of a simple cylinder movement. The cylinder is defined by a maximum (MaxPos) and minimum (MinPos) position in millimeters in relation to a zero position. The speed of the cylinder to move in and out is defined by the time in seconds TimeOut and TimeIn.

It is also possible to define two sensors, to stop the cylinder at its Max or Min positions. The cylinder can be controlled manually by setting the booleans under Behavior Signals. Under PLC IOs PLC signals can be connected to the cylinder.

Drive_Simple

The Simple Drive is only controlled by boolean values. It can be controlled to drive forward and backward. This is the property window of the simple drive:

Drive_DestinationMotor

The Destination Motor is a drive, that is controlled by target positions and target speeds. After setting the target speed and target position, the movement can be started by a boolean Signal StartDrive. After the drive reaches its target position the Signal IsAtDestination is set high.

Drive_FollowPosition

This is the behavior model of a drive, where the drive exactly follows the current provided position of the PLC. This is especially useful for connecting motion controllers and robot controllers to realvirtual.io.

Drive_Gear

This behavior model is useful for connecting two drives together. The master drive will control the position of the drive that the gear is attached to. This is useful for two gripper fingers where only one is controlled by a pneumatic model and the second one follows correspondingly. The formula for the position of a gear controlled drive is: CurrentPosition = MasterDrive.CurrentPosition x GearFactor + Offset.

Drive_ContinousDestination

This drive is continuously trying to follow the given destination with the given speed. Unlike Drive_FollowPosition, this Drive is not following exactly the given position because it might need some time to reach the destination. You don’t need to set a start signal to start to drive like with Drive_DestinationMotor. This drive is always starting to drive to a different destination as soon as the SignalDestination is changed. Please note, that you need to turn on UseAccelearation in the connected drive to use acceleration values. This Drive is specially useful for users who are reusing Simit models which are connected to NX Mechatronics Concept Designer. In NX Mechatronics Concept Designer this type of Drive is called PositionControl.

Drive_Speed

Drive_Speed is controlling a drive by a speed. You can’t controll directly the position. The drive is always driving in the given speed. Positive speed values means forward direction. Negative speed values means backward direction. Please note, that the smooth acceleration is not working with this drive. If you want to stop the drive the speed needs to be set to zero. This Drive is specially useful for users who are reusing Simit models which are connected to NX Mechatronics Concept Designer. In NX Mechatronics Concept Designer this type of Drive is called SpeedControl.

Drive_ErraticPosition

This drive is only for test purposes. It is moves constantly to random positions between MinPos and MaxPos.

Drive_Sequence

We recommend to not use DriveSequence any more and to use the new LogicStep visual programming which is simpler and gives you more flexibility. Please check LogicSteps.

Starting a sequence step

The Drive_Sequence behavior allows to define simple sequences of motions. Each step in the sequence can set the Drive speed and the Drive Destination. The step is starting automatically after the step before. If a PLCSignal is defined in Wait For Signal the Step is not started before the Signal is set to true.

Ending a sequence step

In Wait After Step a time in seconds can be defined which should be waited after the drive is at its destination and before the next step is started. The Finished Signal is optionally and can be used to start external processes or Drive_Sequences. This signal is set to true as soon as the step is finished

© 2022 in2Sight GmbH https://realvirtual.io - All rights reserved. No part of this publication may be reproduced, distributed, or transmitted in any form or by any means, including printing, saving, photocopying, recording, or other electronic or mechanical methods, without the prior written permission of the publisher.

Last updated