에디터 외부 API - 시리얼 통신 - 연결 (External API, Serial Communication, Connection)
페이지 정보
본문
안녕하세요. 소심비형입니다. 오늘은 NGM 매크로를 하드웨어 방식으로 사용할 수 있도록 도와주는 시리얼 통신에 대해 알아보도록 하겠습니다. 이 기능이 필요한 이유는 일부 응용 프로그램이 소프트웨어 방식으로 동작하지 않기 때문입니다. 그래서, 아두이노나 라즈베리파이와 같은 장치가 필요하게 됩니다.
이 예제는 아두이노 레오나르도 버전으로 진행됩니다. 이미 NGM 3 버전에서 설명한 내용이 있기 때문에 [ NGM 3 하드웨어 방식으로 사용하기 ] 를 읽어보고, 아두이노를 구매해야 합니다. 그리고 스케치를 통해 아두이노로 코드를 업로드하세요. 여기까지 완료되었다면 아래 내용을 참고해서 간단한 테스트를 진행할 수 있게 됩니다.
우선 간단한 테스트를 위해 아래와 같이 새로운 스크립트를 추가합니다.
File > 새로 만들기 > 스크립트 (단축키: Ctrl+N)
아래 그림을 참고하여 스크립트에 시리얼 통신의 연결 액션을 추가합니다.
- 우측 하단에 외부 API 탭 클릭
- 시리얼 통신 카테고리에 연결 클릭
- 드래그 앤 드롭으로 스크립트에 추가
- 속성 탭 클릭
이 액션은 특별히 매크로를 만들 때 필요한건 아닙니다. 이미 만들어진 스크립트를 동작시킬 때 소프트웨어 방식으로 할지 하드웨어 방식으로 할지 결정하는 문제입니다. 또한, 아두이노를 비롯한 외부 장치를 이용할 때는 비활성 모드로 사용할 수 없습니다. 당연한 이야기겠지만요^^;
동작 테스트는 아래 동영상을 참고해주세요. 그리고, 동작에 문제가 있거나 아두이노 스케치 코드에 버그가 있으면 제보 바랍니다. 아두이노 코드는 사용자가 직접 작성해서 컴파이해도 됩니다.
속성 정보
기본 작업
- 사용 여부: 이 액션의 사용 여부를 설정합니다. False로 설정하면 이 액션은 실행되지 않습니다.
- 설명: 이 액션의 부가적인 설명을 입력합니다.
- 실행 전 지연: 이 액션이 실행되기 전 지연 시간을 입력합니다.
- 실행 후 지연: 이 액션이 실행된 후 지연 시간을 입력합니다.
- 아이디: 스크립트 내에서 유니크한 아이디를 입력합니다.
마우스 동작
- 이동 거리: 하드웨어 방식으로 마우스를 이동할 때 거리를 설정합니다. 최대 이동 거리는 127이므로 1~127 사이의 값을 사용해야 합니다.
- 이동 속도: 0, 0 좌표에서 1270, 0 좌표로 이동한다면 127만큼 10번 이동합니다. 이 때 각각의 구간마다 딜레이를 설정합니다.
변수
- 가져오기: 글로벌 또는 로컬 변수에 저장되어 있는 값을 이 액션의 속성 값으로 가져옵니다.
- 추가하기: 이 액션의 속성 값을 글로벌 또는 로컬 변수에 저장합니다.
작업
- DTR 사용: 직렬 통신 동안 DTR(Data Terminal Ready) 신호를 사용할 수 있는지 설정합니다.
- RTS 사용: 직렬 통신에 RTS(Request To Send) 신호를 사용할 수 있는지 설정합니다.
- 데이터 비트: 바이트 당 데이터 비트의 표준 길이를 가져오거나 설정합니다.
- 보 레이트: 직렬 전송 속도를 가져오거나 설정합니다.
- 스톱 비트: 바이트 당 정지 비트의 표준 개수를 가져오거나 설정합니다.
- 시리얼 포트: 시리얼 통신에 사용할 포트를 선택합니다.
- 쓰기 타임아웃: 쓰기 작업을 마쳐야 하는 제한 시간(밀리초)을 가져오거나 설정합니다.
- 읽기 타임아웃: 읽기 작업을 마쳐야 하는 제한 시간(밀리초)를 가져오거나 설정합니다.
- 패리티: 패리티 검사 프로토콜을 가져오거나 설정합니다.
개발자에게 후원하기
추천, 구독, 홍보 꼭~ 부탁드립니다.
여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~
감사합니다~
- 이전글외부 API - 시리얼 통신 - 끊기 (External API, Serial Communication, Disconnection) 20.01.29
- 다음글[모니터링] 외부 API - 푸시불릿 - 전송 (External API, Monitoring with pushbullet, Transfer) 20.01.29
댓글목록
등록된 댓글이 없습니다.