TOnMonitoringDigitalWeldingDataCB

이 콜백 함수로 용접 작업 중 로봇 컨트롤러의 디지털 용접 신호(예: 용접 상태, 오류 플래그 등)를 모니터링합니다. 사용자는 이 콜백으로 용접 작업 상태나 안전 이벤트 같은 디지털 피드백을 추적할 수 있습니다.

디지털 용접 데이터가 갱신되면 자동으로 호출됩니다.

콜백 함수 규칙을 참고하세요.

정의 위치: DRFLEx.h

// typedef 정의(DRFLEx.h)
typedef void (*TOnMonitoringDigitalWeldingDataCB)(const LPMONITORING_DIGITAL_WELDING);

// 내부 함수 정의(실시간)
DRFL_API void _set_on_monitoring_digital_welding_data(LPROBOTCONTROL pCtrl,
                                                        TOnMonitoringDigitalWeldingDataCB pCallbackFunc);

// 사용자용 함수
void set_on_monitoring_digital_welding_data(TOnMonitoringDigitalWeldingDataCB pCallbackFunc)
{
    _set_on_monitoring_digital_welding_data(_rbtCtrl, pCallbackFunc);
};

매개변수

매개변수 이름

자료형

기본값

설명

pDigitalWeld

MONITORING_DIGITAL_WELDING

상태 플래그, 오류, 이진 신호 상태 같은 디지털 용접 피드백을 담은 구조체입니다.

반환값
없음

예제

#include "DRFLEx.h"
#include <iostream>
#include <thread>
#include <chrono>
using namespace DRAFramework;
using namespace std;

// 디지털 용접 데이터 콜백 함수
void OnMonitoringDigitalWeldingDataCB(const LPMONITORING_DIGITAL_WELDING pDigitalWeld)
{
    if (!pDigitalWeld) return;

    cout << "[DIGITAL WELDING DATA UPDATED]" << endl;

    // 디지털 상태 표시
    cout << "Welding Status: " << (pDigitalWeld->_iStatus ? "Active" : "Inactive") << endl;

    // 예: 보고된 오류가 있는지 확인
    cout << "Error flag: " << (pDigitalWeld->_iError ? "Error present" : "No error") << endl;
}

int main()
{
#if DRCF_VERSION == 2
    CDRFLEx drfl;

    if (!drfl.open_connection("192.168.137.100")) {
        cout << "Failed to connect to controller." << endl;
        return -1;
    }

    // 디지털 용접 모니터링 콜백 함수 등록
    drfl.set_on_monitoring_digital_welding_data(OnMonitoringDigitalWeldingDataCB);

    // 갱신을 모니터링하도록 실행 유지
    while (true) std::this_thread::sleep_for(std::chrono::milliseconds(100));

    drfl.close_connection();
#else
    cout << "TOnMonitoringDigitalWeldingDataCB requires DRCF_VERSION == 2." << endl;
#endif
    return 0;
}

참고

  • 이 콜백은 다음과 같은 디지털 용접 신호를 실시간으로 제공합니다.
    - 용접 상태(활성 또는 비활성)
    - 용접 중 오류 플래그나 경고
    - 용접 공정과 관련된 기타 디지털 신호의 상태

  • DRCF_VERSION == 2일 때만 사용할 수 있습니다.

  • 일반적인 사용 사례:
    - 용접 진행 상황과 오류 모니터링
    - 오류가 감지되면 알람이나 수정 조치 실행
    - 진단과 문제 해결을 위한 디지털 상태 기록

  • 콜백은 호출될 때마다 가장 최근 데이터를 받습니다. 콜백 실행 시간이 데이터 주기(DRCF 3.5 이전 100 ms, DRCF 3.5부터 20 ms)보다 길면 그 사이의 샘플은 전달되지 않습니다. 모든 샘플을 받는다고 가정하지 마세요(예: 적분이나 미분).