set_digital_output_ex (Manual Mode)

This section explains how to use set_digital_output_ex during Manual (Teach) operations to control both control box and flange digital outputs when using API version DRCF_VERSION == 3.

Compared to set_digital_output(Manual mode), this extended version supports flange-level output control, allowing direct operation of grippers, sensors, and other end-effector devices without external wiring.

Typical usage

  • Directly control tool I/O outputs from the robot flange during manual tests.

  • Operate grippers, vacuum valves, or solenoids for end-effector actuation.

  • Test both control box outputs and flange outputs in one API version.

Example: Control control box and flange outputs

// Preconditions:
// - Connection established (open_connection)
// - Manual (Teach) mode active
// - DRCF_VERSION == 3
// - Flange and control box outputs available

// 1) Turn ON control box output DOUT_1
drfl.set_digital_output_ex(DOUT_1, true);
printf("[CtrlBox DOUT_1] = ON\n");

// 2) Turn ON flange output FLANGE_DOUT_1
drfl.set_digital_output_ex(FLANGE_DOUT_1, true);
printf("[Flange DOUT_1] = ON\n");

std::this_thread::sleep_for(std::chrono::seconds(1));

// 3) Turn OFF both outputs
drfl.set_digital_output_ex(DOUT_1, false);
drfl.set_digital_output_ex(FLANGE_DOUT_1, false);
printf("[Outputs] = OFF\n");

Tips

  • Flange outputs are ideal for end-effector power or control lines.

  • Verify flange output wiring and tool connector pin assignments before testing.

  • If the output signal does not toggle, ensure tool power supply is active.