Class CmmtDriveModule
Represents a module for a CMMT-ST-...-MP/EP drive with telegram 111 configured.
Inheritance
Implements
Inherited Members
Namespace: Loehnert.Lisrt.Drive.Festo
Assembly: Loehnert.Lisrt.Drive.Festo.dll
Syntax
public class CmmtDriveModule : InitializableCompositeModule, ICompositeModule, ILisrtModule, IInitializable, INotifyPropertyChangedEx, INotifyPropertyChanged, IPositioningAxis, IHasServiceView
Remarks
Configuration
1. Fieldbus
Either configure the Fieldbus with the hardware switches S1 to S3 on the top of the device or configure it in the Festo Automation Suite on the Fieldbus -> Configuration page.
2. Communication telegram
To enable the full control via Modbus, the telegram 111 must be selected on page Profiles -> PROFIdrive -> Telegram.
3. Insert the factor to the LisRT module configuration
Insert the correct configuration values to the configuration file, which you can find in the Festo Automation Suite on your CMMT component under Profiles -> PROFIdrive -> Factor Group
Festo Automation Suite Parameter | Module Configuration | Example |
---|---|---|
Actual user unit | PositionUnit | 'm' |
Position | PositionFactor | -6 -> PositionFactor = 0.000001 |
Velocity | VelocityFactor | -3 -> VelocityFactor = 0.001 |
Constructors
CmmtDriveModule(String, IModbusMaster)
Initializes a new instance of the CmmtDriveModule class.
Declaration
public CmmtDriveModule(string name, IModbusMaster modbusModule)
Parameters
Type | Name | Description |
---|---|---|
String | name | Name of the module. |
IModbusMaster | modbusModule | Modbus master module for communication. |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | Thrown when |
Properties
CurrentPosition
Gets the current position in PositionUnit.
Declaration
public double CurrentPosition { get; }
Property Value
Type | Description |
---|---|
Double |
DisableHasFaultMessage
Gets or sets a value indicating whether the has fault message will be shown.
Declaration
public bool DisableHasFaultMessage { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
DisableNotReferencedMessage
Gets or sets a value indicating whether the not referenced message will be shown.
Declaration
public bool DisableNotReferencedMessage { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
EnableDisableTimeoutInMS
Gets or sets the timeout for enabling or disabling the drive in ms.
Declaration
public uint EnableDisableTimeoutInMS { get; set; }
Property Value
Type | Description |
---|---|
System.UInt32 | Default is 15000ms. |
HomingTimeoutInMS
Gets or sets the maximum time in ms for homing.
Declaration
public uint HomingTimeoutInMS { get; set; }
Property Value
Type | Description |
---|---|
System.UInt32 | Default is 30000ms. |
Icon
Gets a icon which is representative for the module.
Declaration
public override Uri Icon { get; }
Property Value
Type | Description |
---|---|
Uri |
Overrides
IsReferenced
Gets a value indicating whether the drive is referenced.
Declaration
public bool IsReferenced { get; }
Property Value
Type | Description |
---|---|
Boolean |
MaximumPosition
Gets or sets the position maximum.
Declaration
[Configuration(0, Unit = "See PositionUnit value")]
public double MaximumPosition { get; set; }
Property Value
Type | Description |
---|---|
Double |
MinimumPosition
Gets or sets the position minimum.
Declaration
[Configuration(0, Unit = "See PositionUnit value")]
public double MinimumPosition { get; set; }
Property Value
Type | Description |
---|---|
Double |
PositionFactor
Gets or sets the factor for position.
Declaration
[Configuration(1)]
public double PositionFactor { get; set; }
Property Value
Type | Description |
---|---|
Double |
PositioningVelocity
Gets or sets the positioning velocity.
Declaration
[Configuration(0, Unit = "PositionUnit per second")]
public double PositioningVelocity { get; set; }
Property Value
Type | Description |
---|---|
Double |
PositionUnit
Gets or sets the position unit.
Declaration
[Configuration("")]
public string PositionUnit { get; set; }
Property Value
Type | Description |
---|---|
String |
TreeItem
Gets the view model for the module.
Declaration
public override ITreeItem TreeItem { get; }
Property Value
Type | Description |
---|---|
ITreeItem |
Overrides
VelocityFactor
Gets or sets the factor for velocity.
Declaration
[Configuration(1)]
public double VelocityFactor { get; set; }
Property Value
Type | Description |
---|---|
Double |
Methods
Disable()
Disables the drive.
Declaration
public void Disable()
Remarks
Goes to 'S1: Switching On Inhibited' state.
Exceptions
Type | Condition |
---|---|
NotInitializedException | Thrown when InitializationState is not Initialized. |
DoHoming()
Does the homing.
Declaration
public void DoHoming()
Exceptions
Type | Condition |
---|---|
NotInitializedException | Thrown when InitializationState is not Initialized. |
System.InvalidOperationException | Thrown when drive is not enabled or drive is still busy. |
System.TimeoutException | Thrown when homing was not completed in the expected time span, HomingTimeoutInMS. |
System.OperationCanceledException | Thrown when the drive is disabled during movement. |
Enable()
Enables the drive.
Declaration
public void Enable()
Exceptions
Type | Condition |
---|---|
NotInitializedException | Thrown when InitializationState is not Initialized. |
System.InvalidOperationException | Thrown when remote control is denied or quick stop is active or drive and motion could not be enabled till EnableDisableTimeoutInMS. |
Exit()
Exits the module.
Declaration
public override void Exit()
Overrides
GoToPosition(Double, Int32)
Goes to the position
.
Declaration
public void GoToPosition(double position, int timeout = 1000)
Parameters
Type | Name | Description |
---|---|---|
Double | position | Set point position. |
System.Int32 | timeout | Timeout for reaching the position in milliseconds. |
Exceptions
Type | Condition |
---|---|
ArgumentOutOfRangeException | Thrown when |
NotInitializedException | Thrown when InitializationState is not Initialized. |
System.InvalidOperationException | Thrown when drive is not enabled -or- drive is not referenced -or- drive is still busy -or- PositionFactor is 0(zero) -or- VelocityFactor is 0(zero). |
System.TimeoutException | Thrown when positioning is not started
-or- position is not reached in the expected |
System.OperationCanceledException | Thrown when the drive is disabled during movement. |
Initialize()
Initializes the module.
Declaration
public override void Initialize()
Overrides
ResetFault()
Acknowledges a fault.
Declaration
public void ResetFault()
Exceptions
Type | Condition |
---|---|
NotInitializedException | Thrown when InitializationState is not Initialized. |
System.InvalidOperationException | Thrown when warning and fault is not reset. |
System.TimeoutException | Throw when fault could not be reset within 3000ms. |
ShowServiceView()
Shows the service window.
Declaration
public void ShowServiceView()
StartNegativeJog()
Starts negative jog.
Declaration
public void StartNegativeJog()
Exceptions
Type | Condition |
---|---|
NotInitializedException | Thrown when InitializationState is not Initialized. |
System.InvalidOperationException | Thrown when drive is not enabled. |
StartPositiveJog()
Starts positive jog.
Declaration
public void StartPositiveJog()
Exceptions
Type | Condition |
---|---|
NotInitializedException | Thrown when InitializationState is not Initialized. |
System.InvalidOperationException | Thrown when drive is not enabled. |
StopJog()
Stops negative and positive jog.
Declaration
public void StopJog()
Exceptions
Type | Condition |
---|---|
NotInitializedException | Thrown when InitializationState is not Initialized. |