Force Dimension Read End of trail navigation bar

Table of Contents

Force Dimension Write

Beta

This block is currently a beta version. If you are using this block, we would appreciate any feedback at tech@quanser.com.

Writes force and torque commands to the Force Dimension haptic device.

Library

QUARC Targets Beta/Devices/Third-Party/Force Dimension

Description

Force Dimension Write

The Force Dimension Write block can be used to command forces, torques, and gripper force on the Force Dimension end effector in the world frame. This block has been tested with the Force Dimension sigma.7 device and should also support the omega.x and delta.x devices.

Limitations

CAUTION: Open Architecture Robot!

Warning When using this block, the Force Dimension haptic device becomes an open architecture system. This block is intended for mature and experienced engineers only! The user must understand the difference between an industrial controller and an open architecture controller. If it is unclear contact Quanser immediately at tech@quanser.com.

The user is solely responsible for the implementation of the open architecture controller! Quanser and Force Dimension are not responsible for any material or bodily damage that ensues from the use of this equipment.

All software using this block supplied by Quanser is only to be considered a sample and should not be used on a regular basis. The user should write their own open architecture control software.

Fully read this document as well as the Force Dimension Read block documentation before connecting the QUARC external PC to the Force Dimension device.

Safety Limit

Warning Every Force Dimension haptic device implements a safety feature that prevents the device from accelerating without control. If the device detects that the velocity of the end effector is higher than the programmed threshold limit, the forces are automatically disabled and the device brakes are engaged to prevent possible damage. See the specific Force Dimension device documentation for details. If the device engages the safety feature, the operating mode of the device will be changed from FORCE mode to BRAKE mode, which will be shown in the status output of the Force Dimension Read block.

Force and Torque Limitations

Warning The Force Dimension haptic devices have limits on the magnitude of force and torque that can be commanded. See the documentation for your specific Force Dimension device for details.

Sample time limitations

Warning The communication cycle of the Force Dimension device takes approximately 0.5ms. It is recommended that the sample time of the Force Dimension Write block be set to 1ms or slower to avoid sample delays.

Installation Requirements

Install In order to use the Force Dimension Write block, the Force Dimension drivers and SDK files must be installed. The SDK used for the Force Dimension Write block is the Force Dimension SDK version 3.7.3 or later, which can be downloaded from the Force Dimension website. First, install the SDK and drivers that are included with the Force Dimension device. Next, add the directory containing the dhd.dll (or dhd64.dll) file to the system PATH environment variable, e.g. C:\Program Files\Force Dimension\sdk-3.7.3\bin.

Install Note that the Force Dimension device must be calibrated each time it is powered on before it can be used. Refer to the documentation for your device for the proper calibration procedure. For exmaple, the sigma.7 device is calibrated by running the executable autoinit.exe in the bin directory of the Force Dimension SDK. This file must be run and allowed to finish calibrating before this block can be used.

Input Ports

fd

A reference to the Force Dimension device that must be passed from the fd output port of the Force Dimension Read block. Failure to connect this signal to the Force Dimension Write block will result in an error being generated.

force

A 3-vector containing the force vector command to the device end effector in Newtons. Refer to your device manual for more details on the device coordinate system.

torque

A 3-vector containing the torque vector command to the device end effector in Newton meters. Refer to your device manual for more details on the device coordinate system.

gripper

A scalar containing the force command to the device gripper in Newtons. Refer to your device manual for more details on the device coordinate system.

enable

When this input is non-zero, the force, torque, and gripper commands are transmitted. When this input is zero, no new command is sent.

Output Ports

This block has no output ports.

Parameters and Dialog Box

Force Dimension Write

Sample time

The sample time of the block. A sample time of 0 indicates that the block will be treated as a continuous time block. A positive sample time indicates that the block is a discrete time block with the given sample time.

A sample time of -1 indicates that the block inherits its sample time. Since this is a source block, only inherent the sample time when it is placed in a conditionally executed subsystem, like a Triggered or Enabled Subsystem, or in a referenced model.

To use the fundamental sampling time of the model, set the sample time to qc_get_step_size, which is a QUARC function that returns the fundamental sampling time of the model.

Targets

Target Name

Compatible*

Model Referencing

Comments

QUARC Win32 Target

Yes

Not supported in a referenced model. Use in top-level model only.

QUARC Win64 Target

Yes

Not supported in a referenced model. Use in top-level model only.

QUARC Linux Nvidia Target

No

No

QUARC Linux QBot Platform Target

No

No

QUARC Linux QCar 2 Target

No

No

QUARC Linux QDrone 2 Target

No

No

QUARC Linux Raspberry Pi 3 Target

No

No

QUARC Linux Raspberry Pi 4 Target

No

No

QUARC Linux RT ARMv7 Target

No

No

QUARC Linux x64 Target

No

No

QUARC Linux DuoVero Target

No

No

QUARC Linux DuoVero 2016 Target

No

No

QUARC Linux Verdex Target

No

No

QUARC QNX x86 Target

No

No

Last fully supported in QUARC 2018.

Rapid Simulation (RSIM) Target

No

No

S-Function Target

No

N/A

Old technology. Use model referencing instead.

Normal simulation

No

No

* Compatible means that the block can be compiled for the target.

 

navigation bar