Denso Read End of trail navigation bar

Table of Contents

Denso Write

Sends joint commands and controller gains to the Denso robot.

Library

QUARC Targets/Devices/Third-Party/Denso/Robots/VP6242F

Description

Denso Write

The Denso Write block is used to send joint position and joint velocity commands as well as joint PID and feed-forward gains for the Denso 6 degree-of-freedom (DOF) robot. Depending on the user-selected control mode, the robot commands are either desired joint encoder positions or a desired change in joint encoder positions (delta positions). This block sends commands to the Denso robot every 1ms according to the Denso Read timebase block.

The Denso Write block uses the reference to the Denso robot created by the Denso Read block. The denso input port must be connected to the denso signal output by the Denso Read block.

Limitations

CAUTION: Open Architecture Robot!

Warning When using this block, the Denso robot 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 Denso Robotics are not responsible for any material or bodily damage that ensues from the use of this equipment.

Do not approach the robot when the arm or the controller are powered up! Install the robot in a safe location and ensure no personnel approaches the robot while it is in operation or while the arm is powered.

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 Denso Read block documentation before connecting the QUARC external PC to the Denso robot controller.

Operating Procedure

Warning The robot controller communicates with the QUARC external machine (i.e., the QUARC target machine which is running the QUARC model) via a real-time-capable point-to-point network link. The exchanged data are transmitted via the ethernet UDP protocol and the QUARC target machine must have an ethernet connection to the robot controller.

Because the QUARC target machine and robot controller are connected over an ethernet link, it is highly recommended that the QUARC target machine has a direct ethernet connection to the robot controller and no other ethernet connections (e.g., local network/internet connections) to minimize communication delays.

The connection to the robot controller is established through the Denso Read block, which also uses the 1ms update rate of the robot controller to regulate the sample time of the model in which the block is placed (i.e., the Denso Read block acts as a timebase block). Therefore, the model sample time must be set to 1ms when using this block. The Denso Read block is connected to the Denso Write block via the denso signal. Only one pair of Denso Read/Write blocks should be used in a model.

Maintenance Procedure

Warning The robot arm and robot controller maintenance procedures and schedules, as described in the appropriate manuals, must be respected and followed. Specifically, encoder backup batteries must be replaced every two years. If these batteries are not replaced on time, the calibration data stored in the internal memory of the robot controller will be lost, and the robot will then need to be re-mastered. When replacing the encoder backup batteries, keep the controller power ON. If the controller power is turned off when swapping the batteries, the encoder positional data may be lost. For more information refer to the Denso robot "Installation and Maintenance Guide" manual, or contact Quanser at tech@quanser.com.

Input Ports

denso

A reference to the Denso robot that is created by the Denso Read block and must be connected to that signal. Failure to connect this signal to the denso output port of the Denso Read block will result in an error being generated.

command

A 6-vector containing the joint encoder position commands or delta position commands when the Velocity mode parameter is checked. Each element in this vector corresponds to a desired joint position or desired change in position (delta position). This input's units is encoder counts (see the user manual for more details).

J1 gains

A 4-vector containing the controller gains [P I D F] for joint 1, where P is the proportional gain, I is the integral gain, D is the derivative gain, and F is a feed-forward gain.

J2 gains

A 4-vector containing the controller gains [P I D F] for joint 2, where P is the proportional gain, I is the integral gain, D is the derivative gain, and F is a feed-forward gain.

J3 gains

A 4-vector containing the controller gains [P I D F] for joint 3, where P is the proportional gain, I is the integral gain, D is the derivative gain, and F is a feed-forward gain.

J4 gains

A 4-vector containing the controller gains [P I D F] for joint 4, where P is the proportional gain, I is the integral gain, D is the derivative gain, and F is a feed-forward gain.

J5 gains

A 4-vector containing the controller gains [P I D F] for joint 5, where P is the proportional gain, I is the integral gain, D is the derivative gain, and F is a feed-forward gain.

J6 gains

A 4-vector containing the controller gains [P I D F] for joint 6, where P is the proportional gain, I is the integral gain, D is the derivative gain, and F is a feed-forward gain.

Output Ports

This block has no output ports.

Parameters and Dialog Box

Denso Write

Velocity mode

When this parameter is selected, the command input signal represents a desired change in position (delta position). Since this delta position command is applied every 1ms (see the Denso Write block) this is equivalent to a velocity command. When this parameter is not selected, the command input signal is a desired position command that the robot will attempt to track.

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

Yes

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

QUARC Linux QBot Platform Target

Yes

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

QUARC Linux QCar 2 Target

Yes

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

QUARC Linux QDrone 2 Target

Yes

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

QUARC Linux Raspberry Pi 3 Target

Yes

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

QUARC Linux Raspberry Pi 4 Target

Yes

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

QUARC Linux RT ARMv7 Target

Yes

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

QUARC Linux x64 Target

Yes

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

QUARC Linux DuoVero Target

Yes

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

QUARC Linux DuoVero 2016 Target

Yes

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

QUARC Linux Verdex Target

Yes

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

QUARC QNX x86 Target

Yes

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

Last fully supported in QUARC 2018.

Rapid Simulation (RSIM) Target

No

No

Due to safety and liability concerns, the hardware may not be accessed during rapid simulation.

S-Function Target

No

N/A

Old technology. Use model referencing instead.

Normal simulation

No

No

Due to safety and liability concerns, the hardware may not be accessed during normal simulation.

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

 

navigation bar