GPIO
GPIO(General Purpose Input Output)는 프로세서가 주변 장치와 신호를 주고받는 범용 입출력 포트입니다. 라즈베리파이와 같은 대부분의 SBC(Single Board Computer)는 아래 그림과 같은 GPIO 핀 헤더를 제공하며, Grablo 는 이 핀에 연결한 장치를 I/O장치로 제어합니다. 보드별 핀 번호는 부록의 핀맵을 참고합니다.
설정 → GPIO에서는 GPIO 샘플 시간과 외부 GPIO 를 설정합니다. 샘플 시간은 GPIO 입력 변화를 감시하는 시간 간격으로, 짧을수록 정밀하지만 CPU 점유율이 높아지며, 프로젝트 디바이스가 라즈베리파이(0~4)인 경우에만 표시됩니다. 1, 2, 4, 5, 8, 10μs 중에서 선택하며 일반적으로 5μs 가 적당합니다. 이 값은 PWM 모니터링, 고속 카운터처럼 GPIO 입력의 변화를 감지하는 장치의 정밀도를 결정하므로, 샘플 시간보다 짧은 변화는 감지되지 않습니다. 예를 들어 5μs(5마이크로초, 초당 20만 번)로 설정하면 5μs 보다 짧게 바뀐 입력은 감지할 수 없습니다.
외부 GPIO
일반 PC 와 같이 보드에 GPIO 핀이 없거나 보드의 핀이 부족한 경우에는 외부 GPIO에 FT232H, MCP2221, NUMATO 의 USB-GPIO 어댑터를 등록하여 사용할 수 있습니다. 어댑터는 타입에 관계없이 여러 개를 추가할 수 있으며, 어댑터별 핀 구성과 지원 기능은 부록의 외부 GPIO 어댑터 표를 참고합니다.
| 항목 | 설명 |
|---|---|
| 이름 | 어댑터를 구분할 이름입니다. 임의로 지정합니다. |
| 타입 | FT232H(기본값), MCP2221, NUMATO 중에서 선택합니다. |
| 인덱스 | FT232H 와 MCP2221 에 표시됩니다. 같은 타입의 어댑터가 여러 개일 때 각 어댑터를 구분하는 번호(0~255)이며, 스캔 버튼을 누르면 컨트롤러에 연결된 장치가 검색됩니다. 장치가 하나이면 기본값(Device 0)을 사용합니다. |
| 모델 | NUMATO 에 표시됩니다. USB-GPIO 8CH + ADC(기본값)부터 16CH, 32CH, 64CH, 128CH + ADC 까지 채널 수에 맞는 모델을 선택합니다. |
| 시리얼 포트 | NUMATO 에 표시됩니다. 어댑터가 연결된 시리얼 포트를 검색 버튼으로 찾거나 직접 입력합니다(예: Windows 는 COM3, Linux 는 /dev/ttyACM0). |
Linux 컨트롤러에서는 터미널 또는 SSH 에서 다음 명령으로 NUMATO 어댑터의 시리얼 포트를
확인할 수 있습니다. NUMATO 어댑터가 하나이고 다른 시리얼 장치를 연결하지 않았다면
/dev/ttyACM0 입니다.
dmesg | grep ttyACM