제작자 분야의 단순하지만 유용한 사용자 인터페이스 솔루션

작성자: 유럽 편집자

DigiKey 유럽 편집자 제공

Arduino 제품군과 같은 소형 컴퓨터 기판은 교육용 차량을 더욱 단순화합니다. 전문 엔지니어들은 다양한 감지 및 제어 과제를 해결하기 위해 에코시스템을 적극적으로 채용해 왔습니다. 그 범위는 간단한 연결형 센서부터 모터 제어나 기계의 액추에이터 또는 간단한 로봇까지 광범위합니다.  Arduino 마이크로 컨트롤러 기판과 I/O 또는 모터 구동 실드의 조합은 프로젝트의 동작 제어 필요를 충족할 수 있습니다. Arduino와 같은 에코시스템은 오픈소스의 특성을 가지기 때문에 많은 프로젝트가 온라인에 게시되며 이를 기반으로 맞춤형 응용 제품의 개발을 시작할 수 있습니다. 제조사 사이트 또는 독립 GitHub에 사전 작성된 소스 코드가 다수 존재합니다. 그림 1은 GitHub에 있는 Arduino 기반 로봇 제어용 코드의 일부입니다.

오픈소스 프로젝트용 코드 이미지

그림 1: 개발자 커뮤니티는 오픈소스 프로젝트용 코드를 찾고 공유하기 위한 플랫폼을 제공합니다.

사용자 인터페이스 선택

연결의 다른 쪽 끝에서는 사용자 인터페이스가 필요합니다. 로봇 팔이나 전동 프로브와 같은 장비는 앞/뒤, 좌/우 또는 시계 방향/시계 반대 방향 회전과 같은 기본적인 움직임에 대한 제어 집합보다 조금 더 많은 기능이 필요할 수 있습니다.

스마트폰 앱

이에 대한 하나의 해결책이 스마트폰을 기본 사용자 인터페이스 컨트롤러로 사용하는 것입니다. 이 방식은 가정 난방 또는 조명 시스템, 보안 장치 또는 드론과 같은 스마트 “사물”과 고객이 상호 작용해야 하는 분야에 널리 채용되었습니다. 스마트폰은 세련된 계기, 정교한 다중 터치 기능 및 셀룰러, Wi-Fi®, Bluetooth®를 비롯한 다양한 연결 기능을 포함한 많은 장점을 갖고 있습니다. 스마트폰은 유비쿼터스이며 새 제품에 맞게 설계된 앱을 로드하는 것만으로 손쉽게 컨트롤러로 전환할 수 있습니다.

하지만 일부 프로젝트의 경우 사용자 지정 앱의 개발에 시간과 비용이 많이 소요될 수 있으며 개발팀의 핵심 기술 분야에서 벗어나는 일일 수 있습니다.

Google Play 스토어에는 스마트폰을 사용하여 Bluetooth를 통해 Arduino 기반 로봇을 제어할 수 있는 몇 개의 Android 앱이 있습니다. 이는 개발자에게 무료 또는 낮은 비용으로 다운로드할 수 있고 곧바로 사용 가능한 사용자 인터페이스를 제공합니다. 하지만 이러한 앱은 무선 제어 장난감용으로 인식되는 경우가 많고 모양과 느낌이 최종 응용 제품에 적합하지 않을 수 있습니다. 반면에 일부 앱은(예: Arduino BT Joystick) 전문적인 모양을 제공할 수 있는 평범한 그래픽을 제공하거나 어떤 앱은(예: RemoteXY) 노브, 버튼 및 슬라이더를 개별적으로 구성할 수 있는 자유도를 제공하기도 합니다.

하드웨어 사용자 입력 모듈을 사용한 개발

맞춤형 제어 패널을 제공하고 하드웨어 및 기계적 설계의 과제를 단순화하는 데 유용한 다양한 모듈을 사용할 수 있습니다. 여기에는 조이스틱 및 여러 조합의 푸시 버튼이 포함됩니다. 이러한 모듈은 여러 방향으로 움직임을 제어하는 데 적합하며, 다양한 방법으로 마이크로 컨트롤러 기판에 손쉽게 연결할 수 있습니다. 또한 무선 모듈을 추가하여 무선 리모컨을 구현하는 옵션도 있으므로 스마트폰에 비해 편리하기도 합니다.

SparkFun COM-09032 Thumb Joystick은 앞/뒤 및 좌/우 이동을 아날로그 전압으로 변환하며 조이스틱 방향과 독립적으로 “선택” 입력으로 사용할 수 있는 푸시 버튼을 통합합니다. 이 제품은 공급, 접지, X/Y 출력 전압 및 선택 버튼 상태의 5개 와이어만 사용하여 호스트 연결을 단순화하는 자체 브레이크아웃 기판을 함께 제공합니다. 또한 SparkFun은 조이스틱으로부터 입력 전압을 읽고 이를 직렬 출력에 디지털 값으로 제공하는 샘플 코드도 제공합니다(그림 2).

SparkFun 조이스틱으로부터 값을 읽기 위한 샘플 Arduino 코드 이미지

그림 2: SparkFun 조이스틱으로부터 값을 읽기 위한 샘플 Arduino 코드입니다.

다른 하드웨어 에코시스템에 연결

조이스틱 모듈은 다른 여러 제조사에서도 공급하며 그림 2의 샘플과 같은 소프트웨어를 사용하여 Arduino 기판에 손쉽게 연결할 수 있습니다. 다른 하드웨어 에코시스템에 연결할 수 있으면 개발자의 선택 옵션이 더욱 넓어집니다. Arduino 사용자가 PMod™ 에코시스템의 주변 장치 모듈을 자신의 프로젝트에 연결할 수 있도록 해주는 Maxim MAXREFDES72 어댑터가 그 예입니다. 이 편리한 PMod 인터페이스는 개발자에게 다양한 모듈에 대한 액세스를 제공합니다. 여기에는 DigilentJSTK2 PMod™ 조이스틱 모듈뿐만 아니라 사용자 제어 기능을 위한 네 개의 스위치가 포함된 Digilent PmodBTN 푸시버튼 스위치 모듈16버튼 키패드를 비롯한 다양한 추가 모듈이 포함됩니다.

일체형 제어 기판

게임 애호가라면 잘 알고 있듯이 조이스틱과 푸시버튼은 광범위한 사용자 입력을 제어할 수 있는 입증된 조합입니다. 푸시버튼 옆에 조이스틱을 배치하는 일반적인 게이밍 컨트롤러의 레이아웃과 기능은 직관적이며 이동, 위치 잡기 및 갠트리, 로봇 팔, 그리퍼 등의 메커니즘을 작동하는 데 적합합니다.

DFRobot DFR0008은 XBee 무선 모듈에 대한 추가적인 헤더를 제공하는 완전 조립된 모듈로 컬러 코딩된 네 개의 푸시버튼과 조이스틱을 제공합니다. DFR008을 사용하면 개발자는 XBee 에코시스템의 장점을 활용할 수 있게 되므로 시판되는 광범위한 XBee 모듈 중에서 선택하여 간단하게 무선 연결 기능을 추가할 수 있습니다. 여기에는 Digi XB24-API-001 IEEE 802.15.4 2.4GHz 무선 기판 및 유럽에서 무료 라이센스로 사용 가능한 XB8-DMUS-002 sub-GHz 868MHz 모듈이 포함됩니다.

Arduino 프로젝트에서 XBee 무선 연결 기능을 사용한 실험을 수행하려는 개발자를 위해, Digi의 XBee/Arduino Educational Pack에는 Arduino 마이크로컨트롤러 기판, XBee 모듈 선택 및 다양한 유형의 사용자 인터페이스 구현에 적합한 푸시 버튼과 조이스틱 모듈이 포함됩니다. 또한 XBee 사용자는 개발에 도움이 되는 샘플 코드와 소프트웨어 도구를 포함한 개발 리소스도 활용할 수 있습니다.

개방된 GUI 옵션

또한 오픈소스 에코시스템은 개발자에게 원하는 경우 자신의 기술을 고수준에 적용할 수 있는 자유를 제공합니다. 즉, 저항 터치스크린이 통합된 4D Systems ULCD-32PTU-AR 3.2인치 컬러 TFT와 같은 모듈로 자신만의 내장형 그래픽 사용자 인터페이스를 개발할 수 있습니다. 이 팩에는 표준 헤더를 통해 Arduino 기판에 연결되는 어댑터와 어댑터를 디스플레이에 연결하는 케이블이 함께 제공됩니다. Arduino 헤더는 무선 모듈과 같은 다른 Arduino 실드를 자유롭게 스택할 수 있습니다. 그래픽 사용자 인터페이스의 개발을 단순화하기 위한 다른 도구 집합도 사용 가능합니다. 여기에는 코드 개발을 위한 엔트리 레벨 환경, 클릭-배치 개체 배치로 코드 생성을 돕는 ViSi라는 그래픽 설계 도구 및 고급 ViSi-Genie 환경이 포함됩니다. ViSi-Genie의 경우 사용자가 개체를 배치하고 이를 구동하는 이벤트를 설정하기만 하면 코드가 자동으로 생성됩니다.

결론

제작자 분야에서 프로젝트를 성공으로 이끌기 위한 경로는 다양하게 존재합니다. 개발자가 까다로운 과제를 극복하고 대상 하드웨어에서 실행되는 소프트웨어를 개발하는 데 도움이 되는 다양한 예제와 키트가 존재합니다.

이동 제어 및 작동을 처리하기 위한 사용자 입력 장치를 Bluetooth를 통해 스마트폰 앱을 연결하여 설정하거나, 하드웨어를 개별 모듈로 사용하여 구성하거나, 완전 통합된 조이스틱/스위치 실드를 사용하여 구성할 수 있습니다. 또한 개발자는 프로젝트 성공을 위한 추가적인 경로를 제공하는 PMod 및 XBee와 같은 다른 에코시스템의 입력 장치 또는 무선 모듈의 장점을 활용할 수도 있습니다. 모듈은 가격이 저렴하며 오픈소스 커뮤니티 내의 코드와 노하우를 활용하여 간편하게 통합할 수 있습니다.

 
DigiKey logo

면책 조항: 이 웹 사이트에서 여러 작성자 및/또는 포럼 참가자가 명시한 의견, 생각 및 견해는 DigiKey의 의견, 생각 및 견해 또는 DigiKey의 공식 정책과 관련이 없습니다.

작성자 정보

유럽 편집자

게시자 정보

DigiKey 유럽 편집자