get_analog_input (자동 모드)
이 절에서는 자동(실행) 운전 중에 get_analog_input으로 센서나 외부 장치에 연결된 아날로그 입력(AI) 채널의 값을 읽는 방법을 설명합니다.
아날로그 입력은 주로 압력 센서, 거리 센서, 전위차계, 로드셀처럼 출력 전압/전류 수준이 변하는 장치를 모니터링하는 데 사용합니다.
일반적인 사용법
파지하기 전에 압력이나 진공 수준을 모니터링합니다.
정렬 작업 중에 아날로그 거리/높이 센서를 읽습니다.
비례 액추에이터나 외부 컨트롤러에서 피드백을 받습니다.
자동 모드에서 임계값 기반 판단 로직을 구현합니다.
참고
nIndex는 아날로그 입력 채널을 지정합니다.set_mode_analog_input으로 아날로그 모드가 올바르게 설정되어 있는지 확인하세요.공학 단위로 스케일링하거나 변환해야 할 수 있습니다.
예제: 픽업 전 진공 수준 확인하기
// 압력이 목표 임계값에 도달할 때까지 대기
while (drfl.get_analog_input(GPIO_CTRLBOX_ANALOG_INDEX_1) < 4.0f) { // 예: 임계 전압
printf("Building vacuum...\n");
std::this_thread::sleep_for(std::chrono::milliseconds(100));
}
printf("Vacuum level sufficient. Executing pick motion.\n");
float pick[6] = {250.f, 200.f, 180.f, 180.f, 0.f, 0.f};
float vel[2] = {80.f, 40.f}, acc[2] = {300.f, 120.f};
drfl.movel(pick, vel, acc);
이 예제에서는 로봇이 임계값을 만족할 때까지 아날로그 센서를 계속 모니터링해, 자동 모드의 픽업 동작이 안전하고 올바르게 이루어지도록 합니다.
팁
센서와 공정 매개변수를 계속 모니터링하려면 AI 채널을 사용하세요.
신호에 노이즈가 많으면 소프트웨어에서 필터링이나 평균 처리를 적용하세요.
AO와 함께 사용해 폐루프 공정 제어를 구현하세요.
압력, 힘, 거리 센서에는 공학 단위 변환을 사용하세요.