기능
외부 제어기에서 수신한 출력 데이터(로봇 제어기 → 외부 제어기)를 읽는 함수이다.
인수
없음
리턴
|
값 |
설명 |
|
LPRT_OUTPUT_DATA_LIST |
출력 데이터 리스트 참조. |
예제
C++
// main.cpp
CDRFLEx drfl;
drfl.connect_rt_control();
string version = “v1.0”;
float period = 0.001; // 1 msec
int losscount = 4;
Drfl.set_on_rt_monitoring_data(OnRTMonitoringData);
drfl.set_rt_control_output(version, period, losscount);
drfl.start_rt_control();
float q[NUMBER_OF_JOINT] = {0.0, };
float q_dot[NUMBER_OF_JOINT] = {0.0, };
float trq_g[NUMBER_OF_JOINT] = {0.0, };
while (1)
{
time=(++count)*st;
memcpy(q, drfl.read_data_rt()->actual_joint_position, sizeof(float)*6);
memcpy(q_dot, drfl.read_data_rt()->actual_joint_velocity, sizeof(float)*6;
memcpy(trq_g, drfl.read_data_rt()->gravity_torque, sizeof(float)*6);
memcpy(trq_d, trq_g, sizeof(float)*6);
drfl.torque_rt(trq_d, 0);
if(time > plan1.time)
{
time=0;
Drfl.stop(STOP_TYPE_SLOW);
break;
}
rt_task_wait_period(NULL);
}