set_safety_mode
This function sets the safety state in the robot controller. It is used to change the robot’s operating mode (e.g., Manual / Auto) or to trigger specific safety-related events defined by the controller.
The function allows fine-grained control over the robot’s motion authorization, useful when switching between teaching, manual, or automatic operation modes.
Definition
DRFLEx.h within class CDRFLEx, public section (line 913)
bool set_safety_mode(SAFETY_MODE eSafetyMode, SAFETY_MODE_EVENT eSafetyEvent) {
return _set_safety_mode(_rbtCtrl, eSafetyMode, eSafetyEvent);
};
Parameter
Parameter Name |
Data Type |
Default Value |
Description |
|---|---|---|---|
eSafetyMode |
Safety operation mode to set. |
||
eSafetyEvent |
Safety event type associated with the mode change. |
Return
Value |
Description |
|---|---|
0 |
Error — failed to change the safety mode |
1 |
Success — safety mode successfully updated |
Example
#include "DRFLEx.h"
#include <iostream>
using namespace DRAFramework;
int main() {
CDRFLEx Drfl;
// Switch the robot into Manual Mode
// with a motion event trigger to allow controlled movement.
if (Drfl.set_safety_mode(SAFETY_MODE_MANUAL, SAFETY_MODE_EVENT_MOVE))
std::cout << "Safety mode successfully set to MANUAL.\n";
else
std::cerr << "Failed to set safety mode.\n";
return 0;
}
This example demonstrates how to switch the robot’s safety state to Manual Mode with a Move Event, allowing motion under manual supervision. Such configurations are commonly used during teaching or calibration phases, where operators interact with the robot under controlled safety limits.