Table of Contents
Force Dimension Read
This block is currently a beta version. If you are using this block, we would appreciate any feedback at tech@quanser.com. |
Initializes a connection to the Force Dimension haptic device and reads the position and orientation.
Library
MATLAB Command Line
Click to copy the following command line to the clipboard. Then paste it in the MATLAB Command Window:
qc_open_library('quarc_library_beta/Devices/Third-Party/Force Dimension')Description
The Force Dimension Read block can be used to read the Force Dimension end effector position and orientation in the world frame. The Force Dimension Read block also reads the gripper position, applied force and torque, and status of the device. 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!
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 Write block documentation before connecting the QUARC external PC to the Force Dimension device.
Safety Limit
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
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
The communication cycle of the Force Dimension device takes approximately 0.5ms. It is recommended that the sample time of the Force Dimension Read block be set to 1ms or slower to avoid sample delays.
Installation Requirements
In order to use the Force Dimension Read block, the Force Dimension drivers and SDK files must be installed.
The SDK used for the Force Dimension Read 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.
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
This block has no input ports.
Output Ports
fd
A reference to the Force Dimension device that must be passed to the fd input port of the Force Dimension Write block. Failure to connect this signal to the Force Dimension Write block will result in an error being generated.
position
A 3-vector containing the (x, y, z) workspace position (in meters) of the device end effector. Refer to your device manual for more details on the device coordinate system.
orientation
A 3-vector containing the orientation angles (in radians) of the device end effector expressed as Euler angles of the wrist structure about the (x, y, z) axes. Refer to your device manual for more details on the device coordinate system.
gripper
A scalar containing the measured angle of the device gripper in radians. Refer to your device manual for more details on the device coordinate system.
force
A 3-vector containing the force vector applied 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 applied to the device end effector in Newton meters. Refer to your device manual for more details on the device coordinate system.
buttons
A 8-vector containing the button states. Refer to your device manual for more details on the device buttons.
status
A 20-vector of boolean values containing the device status codes. The following table lists all the status elements that are returned by the Force Dimension SDK version 3.7.3. Refer to your device manual for more detail on the device status codes.
Status Element |
Status |
---|---|
0 |
Power |
1 |
Connected |
2 |
Started |
3 |
Reset Mode |
4 |
Idle Mode |
5 |
Force Mode |
6 |
Brake Mode |
7 |
Torque Mode |
8 |
Wrist detected |
9 |
Error |
10 |
Gravity |
11 |
Timeguard |
12 |
Wrist initialized |
13 |
Redundancy |
14 |
Force off cause |
15 |
Locks |
16 |
For future use |
17 |
For future use |
18 |
For future use |
19 |
For future use |
Parameters and Dialog Box
ID
A number identifying the device to be used. Devices are numbered starting from 0.
Disable velocity threshold
To disable the safety feature where the brakes would be applied if the device's velocity is over the device dependent threshold.
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 |
---|---|---|---|
Yes |
Not supported in a referenced model. Use in top-level model only. |
||
Yes |
Not supported in a referenced model. Use in top-level model only. |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
No |
No |
||
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 |
Copyright ©2024 Quanser Inc. This page was generated 2024-10-17. Submit feedback to Quanser about this page.
Link to this page.