설치 및 교정_액추에이터 - Helsparrow/OpenpnpDocs_KR GitHub Wiki

액추에이터

액추에이터는 노즐 및 카메라에서 다루지 않는 추가 작업을 수행하기 위해 기계에 연결할 수 있는 일반적 장치입니다. 예를 들어 헤드에 핀이 부착된 솔레노이드를 사용하여 테이프를 앞으로 끌어서 공급할 수 있습니다. 액추에이터를 사용하여 기계에 부착된 센서에서 값을 읽을 수도 있습니다.

OpenPnP가 액추에이터를 사용하는 것 중 일부는 다음과 같습니다:

스크립팅 시스템을 사용하면 액추에이터를 사용하여 OpenPnP를 확장하여 다양한 장치 및 센서를 제어할 수 있습니다.

액추에이터 추가

  1. Machine Setup 탭을 여세요.

    • 헤드 장착 액추에이터를 추가하는 경우 왼쪽 트리에서 헤드를 찾으십시오. 헤드 하위항목에서 액추에이터를 찾아 선택합니다. 헤드 장착 액추에이터는 하향식 카메라 조명, 진공 밸브, 드래그 피드 솔레노이드 및 노즐 교환 도구와 같은 장치에 부착되는 경우가 많습니다.
    • 기계에 장착된 액추에이터를 추가하는 경우 트리 루트 아래에서 액추에이터를 찾아 선택합니다. 기계 장착형 액추에이터는 상향식 카메라 조명 및 컨베이어와 같은 용도로 사용할 수 있습니다.
  2. 녹색 더하기 버튼을 눌러 액추에이터를 추가합니다.:

    Add Actuator

  3. 제공된 목록에서 액추에이터 유형을 선택하고 "Accept" 버튼을 누릅니다.

    Select Actuator Type

  4. 새로 추가된 액추에이터가 액추에이터 목록에 표시됩니다. 새 액추에이터를 클릭하여 해당 속성을 엽니다.

    newly Created Actuator

  5. 액추에이터 Name을 즉시 설정하는 것이 가장 좋습니다.

액추에이터 설정

드라이버 할당

이는 ReferenceActuator에만 적용됩니다.

Driver 은 액추에이터를 작동하거나 읽는 데 필요한 명령을 실행하는 연결된 컨트롤러와 같은 드라이버를 선택합니다.

액추에이터 값 유형

각 액추에이터에는 Value Type 필드가 있습니다.

Actuator value type

Actuator value type help

Value Type은 대부분 GUI에서 값을 편집하는 방법을 제어합니다. 액추에이터 기능이 실제로 해당 값 유형을 사용하도록 강제하지는 않습니다. 기계 설정, 스크립트 또는 G 코드에 존재하는 기능별 액추에이터 명령어 할당이 다르거나 혼합된 액추에이터 값 유형을 사용하는 경우 여전히 이전과 같이 작동해야 합니다. Value Type은 액추에이터가 기능 할당에 처음 사용될 때 자동으로 제안됩니다.

Double 또는 String 값 유형의 경우 ON 및 OFF 기본값 쌍이 나타납니다.

Default ON OFF values

예를 들면 특정한 스칼라 값으로 세팅될 수 있는 액추에이터(예시: LED 밝기값)를 제어하기 위해 Boolean 시맨틱을 사용하는 경우 이것들은 활성화 될겁니다, 그러나 사전 설정된 ON/OFF값으로 켜고 끌 수도 있습니다.

액추에이터 기계 연동

이 설정은 액추에이터 작동/판독을 기계 동작과 연동하는 방법을 결정합니다. Motion Planner 페이지의 애플리케이션 내용에서 가장 잘 설명되어 있습니다.

액추에이터 기계 상태

Actuator Machine States

Enabled, Homed, Disabled 기계 상태 작동 설정은 이러한 기계 상태가 입력될때 ON/OFF 값을 가정 하거나 작동하는데 사용 할 수 있습니다.

  • LeaveAsIs 는 액추에이터 상태를 이전 상태(아마도 알 수 없는 상태)로 둡니다.
  • AssumeUnknown 은 액추에이터 상태를 알 수 없음으로 설정합니다. OpenPnP는 먼저 액추에이터를 작동할 때까지 상태를 알 수 없습니다.
  • AssumeActuatedOn 또는 AssumeActuatedOff 는 기계 상태가 액추에이터 상태를 각각 ON/OFF로 변경했다고 가정합니다(기계 상태 변경의 결정적인 부작용 또는 사용자 지정 G 코드를 통해).
  • ActuateON 또는 ActuateOFF 는 기계 상태에 들어갈 때 액추에이터를 원하는 정의된 ON/OFF 상태로 가져옵니다.

참고: EnabledHomed 작동은 새 기계 상태에 도달한 후에, 즉 모든 활성화 또는 호밍 명령이 실행된 다음에 발생합니다. 그러나 Disabled 작동은 새 기계 상태에 도달하기 전에, 즉 비활성화 명령이 실행되기 이전전에 발생합니다.

프로필 액추에이터

프로필 액추에이터 값 유형은 일반적으로 여러 다른 액추에이터를 함께 제어하려는 경우에 사용됩니다. 예를 들어 Red, Green, Blue 채널 강도를 개별적으로 제어할 수 있는 카메라 조명을 생각해 보십시오. 사전 정의된 프로필 세트를 사용하여 애플리케이션 전체에서 일관된 방식으로 이러한 다중 채널 액추에이터를 제어할 수 있습니다. 많은 파이프라인에서(컴퓨터 비전, 즉 ImageCapture 파이프라인 스테이지의 사용법 참조).

프로필 액추에이터 값 유형을 선택했으면 Apply을 누릅니다. 새 "프로필" 마법사 탭이 나타납니다:

Profiles Wizard tabl

프로필에서 제어할 대상 액추에이터를 최대 6개까지 할당할 수 있습니다. 새 대상 액추에이터가 표에 열로 나타나도록 하려면 Apply를 다시 누르십시오.

더하기 버튼을 사용하여 새 프로필을 만들거나 삭제 버튼을 사용하여 삭제할 수 있습니다.

Name을 할당하면 프로필이 활성화됩니다.

Default ONDefault OFF 체크박스는 액추에이터가 Boolean 시맨틱을 사용하여 구동될 때 선택되는 프로필을 제어합니다. 체크박스는 확실하게 (상호) 배타적입니다.

참고:

타겟 액추에이터 자체가 Profile 유형의 Actuator인 경우 String 값으로 구동됩니다(무한 재귀 방지). 따라서 액추에이터 자체를 대상 액추에이터로 사용하는 것이 명시적으로 지원됩니다. 이 기술을 활용하여 독립적인 다중 선택 액추에이터를 만들 수 있습니다. 하나의 적용 예는 스칼라 액추에이터입니다. 강도 제어 기능이 있는 조명 액추에이터(아마도 PWM 사용). 제한된 프로필 항목 세트를 사용하여 사진의 f-스톱과 같은 특정 스텝 값으로 구동할 수 있습니다. 사용이 더욱 재현 가능해지고 값을 중앙에서 유지할 수 있습니다.

Stepped Profile Actuator

프로필 대상 액추에이터가 String 값으로 구동되더라도 여전히 Double 값도 효과적으로 구동할 수 있습니다. 그냥 문자열로 입력하십시오. 효과적인 GcodeDriver 또는 HttpActuator 인코딩에는 차이가 없으며 ScriptActuators에서는 스크립트 내부의 값을 변환할 수 있습니다.

액추에이터 제어 패널

Machine Controls/Actuators 탭에서 액추에이터 제어 패널을 여십시오:

Actuators Tab

이제 액추에이터 컨트롤 패널은 특정 GUI가 제어하는 Value Type 을 표시합니다:

Double Actuator Dialog

Boolean Actuator Dialog

Profile Actuator Dialog

참고: 위에서 설명한 대로 기본 켜짐기본 꺼짐 값이 정의된 경우 입력한 값 필드에 추가로 OnOff 버튼이 나타납니다.

ReferenceActuator

이것은 ReferenceActuator에 적용되며, 다른 유형에 대해서는 아래 해당 섹션을 참조하십시오.

명령어 할당

액추에이터를 만들고 할당한 후에는 일반적으로 여기에 명령어를 지정해야 합니다. 일부 액추에이터는 자동으로 생성되었을 수도 있습니다(예: 노즐 솔루션에 의해). 가장 일반적인 경우는 GcodeDriver/GcodeAsyncDriver 및 boolean 액추에이터를 사용하여 스위치, 솔레노이드, 펌프, 밸브 등과 같은 것을 제어하는 것입니다.

최신 버전의 OpenPnP에서는 Gcode 명령을 대화식으로 설정하기 위해 문제 및 솔루션 마법사의 지원을 받습니다. 이 글을 쓰는 시점에서 진공 밸브, 블로우 오프, 진공 감지, 펌프, Z-프로브, 카메라 라이트 액추에이터에 대해 G 코드 명령 및 정규식 지원이 활성화되었습니다. 액추에이터가 이미 해당 역할에 할당되어 있는지 확인세요. 문제 및 솔루션 마법사에서 어떤 기능이 필요한지 알 수 있습니다. 방금 새 액추에이터를 할당한 경우 Find Issues & Solutions를 눌러 제안 사항을 새로 고칩니다.

Actuator G-code Issues

드롭다운을 사용하여 템플릿을 선택합니다. 자리 표시자 ❓는 일반적으로 기계/컨트롤러/구성에 따라 다르기 때문에 완전히 제안할 수 없는 G 코드 명령 번호 및 정규식을 나타냅니다.

Placeholder

일단 설정하면 솔루션이 목록에서 사라집니다. 다시 돌아가려면 다음 섹션에서 설명하는 대로 명령을 수동으로 삭제(비우기)한 다음 Find Issues & Solutions를 다시 눌러야 합니다.

커맨드 수동 할당

수동 설정 또는 기타 액추에이터의 경우 다음 절차를 따르십시오.

Boolean 액추에이터에 대한 G 코드를 설정하려면:

  1. Machine Setup -> Driver -> GcodeDriver/GcodeAsyncDriver -> Gcode로 이동합니다.
  2. 드롭다운 메뉴에서 액추에이터를 선택합니다.
  3. ACTUATE_BOOLEAN 명령을 선택합니다.
  4. Gcode 조각을 입력합니다. 예를 들면 {True:M801}{False:M800}입니다. 액추에이터를 켤때 M801이 전송되고 꺼질때 M800이 전송됩니다. 'True:' 또는 'False:' 뒤의 텍스트가 실제로 전송됩니다.

다음은 진공 밸브의 예입니다.

커맨드 할당 예시

Double 액추에이터에 대한 Gcode를 설정하려면:

  1. Machine Setup -> Driver -> GcodeDriver/GcodeAsyncDriver -> Gcode로 이동합니다
  2. 드롭다운 메뉴에서 액추에이터를 선택합니다.
  3. ACTUATE_DOUBLE 명령을 선택합니다.
  4. Gcode 조각을 입력합니다. 예를 들면 'M104 {DoubleValue}'입니다.

센서 읽기

이것은 ReferenceActuator에 적용되며, 다른 유형에 대해서는 아래 해당 섹션을 참조하십시오.

액추에이터의 또 다른 일반적인 용도는 센서를 읽는 것입니다(진공 레벨 센서가 가장 일반적). GcodeDriver/GcodeAsyncDriver를 사용하여 센서를 읽는것은 위와 순서가 약간 다릅니다.

센서를 읽는 액추에이터에 대한 Gcode를 설정하려면:

  1. Machine Setup -> Driver -> GcodeDriver -> Gcode로 이동하세요.
  2. 드롭다운 메뉴에서 액추에이터를 선택합니다.
  3. ACTUATOR_READ_COMMAND 명령을 선택합니다.
  4. Gcode 조각을 입력합니다. 이것은 컨트롤러가 센서 값을 응답하도록 하기 위해 컨트롤러에 보내야 하는 명령이어야 합니다.
  5. ACTUATOR_READ_REGEX를 선택합니다.
  6. 컨트롤러에서 오는 응답과 일치하는 정규식을 입력하십시오.

GcodeDriver

(GcodeAsyncDriver)

아래 항목을 참고하세요

actuate-boolean-command

actuate-double-command

actuator-read-command

actuator-read-regex

HttpActuator

HttpActuator는 HTTP 요청을 송/수신하여 액추에이터를 제어할 수 있습니다.

Actuator에 Boolean 값 유형이 있는 경우 On URLOff URL을 별도로 정의할 수 있습니다:

grafik

액추에이터에 Double 또는 String 값 유형이 있는 경우, 값을 URL로 인코딩할 수 있는 자리 표시자 '{val}'이 있는 파라메트릭 URL 필드가 있습니다. 예를 들어 '{val:%.4f}' (GcodeDriver와 유사)와 같은 형식을 사용할 수 있습니다.:

HttpActuator

참고: 문자열 값에 대해 URI 이스케이프 처리가 수행되지 않으므로 여러 매개 변수와 같은 복잡한 URI 조각을 한 번에 묶을 수 있습니다.

Script Actuator

ScriptActuator는 주어진 값을 매개변수로 스크립트를 실행할 수 있습니다. 매개변수는 값 유형에 따라 전역 actuateBoolean, actuateDouble 또는 actuateString으로 사용할 수 있습니다.

ScriptActuator

ScriptActuators 및 예제에 대한 자세한 내용을 보려면 여기를 클릭하십시오.

Head Offsets

일반적인 프로세스는 헤드 오프셋 설정을 참조하십시오. 액추에이터도 기본적으로 동일합니다.


Previous Step Jump To Next Step
Nozzle Setup Table of Contents Vacuum Setup