간편한 Arduino 시험용 키트를 통해 제작자들의 세계에 합류

작성자: Art Pini

Digi-Key 북미 편집자 제공

주위 환경을 감지하고 대응하는 장치를 구축하는 방법을 알아보려는 “제작자”를 위한 수백 가지 전문 관련 자료가 있습니다. 엔지니어와 비엔지니어 모두에게 이는 누구나 참여하여 전자 장치, 제어 시스템, 마이크로 컴퓨터, 센서 및 액추에이터 환경에 대해 배우고 조언할 수 있는 창의적인 하위 문화를 조성하는 것으로 입증되고 있습니다. 이러한 세계에 참여하는 가장 쉬운 방법은 제작자들의 우상인 Arduino의 시험용 키트를 사용하는 것입니다.

Arduino는 오픈 소스 하드웨어 및 소프트웨어 커뮤니티에 마이크로 컨트롤러 기판 및 관련 소프트웨어를 판매합니다. 이러한 전자 회로 기판은 마이크로 컨트롤러와 지원 RAM, 읽기 전용 메모리(ROM) 및 집적 회로(IC)를 결합하여 충분히 입증된 일련의 제작자 프로젝트를 완료하는 데 필요한 모든 부품을 갖춘 오픈 소스 전자 장치 시제품 제작 플랫폼을 구축합니다.

이 기사에서는 작성자(엔지니어)의 개인적인 경험에 기반하여 Arduino 시험용 키트를 소개합니다.

Arduino 시험용 키트

Arduino 시험용 키트에는 15가지 프로젝트를 불러와서 실행하는 데 필요한 모든 것이 포함되어 있습니다(그림 1).

Arduino의 시험용 키트 이미지그림 1: Arduino 시험용 키트는 Arduino UNO 마이크로 컨트롤러 기판을 선별된 전자 부품과 171페이지 “Arduino 프로젝트 참고 자료서”를 결합하여 모두를 위한 전자책 전자 기기 환경을 구축합니다. (이미지 출처: Arduino)

이 시험용 키트는 Microchip TechnologyATmega328P 마이크로 컨트롤러 IC를 기반으로 하는 주요 Arduino UNO 마이크로 컨트롤러를 사용합니다(그림 2).

Arduino의 UNO 기판 이미지그림 2: Arduino UNO 기판에는 ATmega328P 마이크로 컨트롤러를 지원하는 데 필요한 모든 요소가 포함되어 있습니다. (이미지 출처: Arduino, 주석: Digi-Key Electronics)

UNO 기판에는 디지털 입/출력 핀 14개가 있습니다. 그중 6개는 펄스 폭 변조(PWM)를 지원하여 LED 휘도와 소리 볼륨을 제어하는 데 사용됩니다. 또한, 전체 분해능에서 15kS/s 전환율로 10비트 분해능 연속 근사화 아날로그 디지털 컨버터(ADC)로 지원되는 6개 아날로그 입력이 있습니다. 이 기판에는 자체 16MHz 수정 진동자를 가진 클록이 내장되어 있으며 컴퓨터에 손쉽게 연결할 수 있도록 USB 포트가 제공됩니다. USB 포트를 사용하거나 온보드 전력 잭을 통해 전력을 공급할 수 있습니다. 전원은 자동으로 선택됩니다.

UNO에는 일반 프로그래밍을 위한 온보드 부트로더가 있지만 이를 우회하고 회로 내 직렬 프로그래밍(ICSP) 헤더를 통해 마이크로 컨트롤러를 프로그래밍할 수 있습니다. 마지막으로 UNO 기판에는 리셋 버튼이 있으므로 필요한 경우 기본 조건으로 쉽게 되돌릴 수 있습니다.

ATmega328P 프로세서는 고급 버전 축소형 명령어 집합 컴퓨터(RISC) 아키텍처를 사용하는 저전력 8비트 마이크로 컨트롤러입니다(그림 3). RISC 아키텍처는 단일 클록 주기에서 실행되는 명령어를 사용하여 실행 처리량이 매우 높습니다.

Microchip의 8비트 ATmega328P 마이크로 컨트롤러 기능별 제품 구성도그림 3: Arduino UNO에서 사용되는 8비트 ATmega328P 마이크로 컨트롤러의 기능별 제품 구성도. 이 장치는 빠른 단일 주기로 명령이 실행되는 RISC 기반 아키텍처를 사용합니다. (이미지 출처: Microchip Technology)

ATmega328P는 32Kbytes 플래시 프로그램 메모리, 1Kbyte EEPROM(전기적으로 지우기 및 프로그래밍이 가능한 읽기 전용 메모리), 2Kbytes SRAM(정적 랜덤 액세스 메모리)을 비롯한 비휘발성 메모리 부문의 형태로 온보드 메모리를 제공합니다. Arduino UNO의 ATmega328은 부트로더를 통해 사전 프로그래밍된 상태로 제공됩니다. 부트로더를 사용하면 외부 하드웨어 프로그래밍 장치에 의존하지 않고 새 코드를 업로드할 수 있습니다. 부트로더는 플래시 프로그램 메모리 내에서 500바이트의 공간을 차지합니다. 이 칩에는 범용 비동기 수신기/송신기(UART), 직렬 주변 장치 인터페이스(SPI), 2선식 인터페이스(내부 집적 회로(I2C) 버스라고도 함)를 비롯한 여러 가지 직렬 데이터 인터페이스가 포함되어 있습니다.

Arduino 시험용 키트는 5가지 언어로 제공되며, 15개 프로젝트를 구축하는 데 필요한 모든 부품과 Arduino UNO 마이크로 컨트롤러를 포함합니다. 프로젝트에 대한 자세한 내용은 Arduino 프로젝트 참고 자료서 171페이지에서 확인할 수 있습니다. 참고 자료서에는 모든 프로젝트에서 Arduino UNO를 두뇌로 활용하는 하드웨어 및 소프트웨어 요소가 나와 있습니다.

장치 및 용어에 대한 정확한 설명

초보자가 전자 및 프로그래밍 환경을 처음으로 탐색할 때 종종 관련 장치와 용어에 익숙하지 않아서 문제를 겪게 됩니다. Arduino 프로젝트 참고 자료서는 134개 전자 부품과 Arduino UNO 기판을 비롯한 키트의 다양한 부품을 안내하여 이러한 문제에서 벗어날 수 있도록 해줍니다. 이 섹션에서는 각 부품 유형을 그림으로 표시하고 기능을 설명합니다. 이 섹션은 각 부품의 회로도 기호를 보여주면서 마무리됩니다.

초보자의 경우 전자 시제품 제작 기판 또는 브레드 기판에 대해 잘 모를 수 있으므로 설명서의 한 섹션을 할애하여 브레드 기판이 어떻게 무납땜 부품을 제공하는지 방법을 보여줍니다. 브레드 기판의 전도성 막대 패턴을 구성도로 표시하고 전력 버스의 작동 방식을 설명합니다. 이를 통해 키트의 시제품 제작 기판을 처음 사용할 때 갖게 되는 혼동을 상당 부분 해소할 수 있습니다.

프로젝트 참고 자료서에서는 기판의 연결부, 표시기 및 대화식 스위치를 중심으로 UNO 기판 레이아웃을 간략하게 소개한 후 일반 부품에 대해 설명합니다. 이 섹션에서는 후속 섹션에서 사용되는 하드웨어 용어를 정의합니다.

다음 섹션에서는 Windows, Mac 또는 Linux 운영 체제에서 Arduino 소프트웨어를 설정하는 기본 지침을 제공합니다. 사용되는 기본 소프트웨어는 Arduino IDE(통합 개발 환경)이며, Arduino 웹 사이트에서 다운로드할 수 있습니다. IDE는 Arduino UNO 기판에 업로드할 수 있는 실행 가능한 코드를 만드는 데 사용되는 소프트웨어 환경입니다.

프로젝트 시작

IDE 소프트웨어가 로드되면 가이드에서 USB 연결을 통해 호스트 컴퓨터와 UNO 기판 간에 통신을 설정하는 단계를 안내합니다. 문제가 발생할 경우 Arduino 문제 해결 섹션과 IDE 참조 섹션에 대한 참조 링크가 제공됩니다. 이 지점에서 사용자가 프로젝트를 시작할 수 있습니다.

각 프로젝트에는 각 프로젝트에 대한 그림에 “구성요소”로 나열된 필요한 부품을 선택하는 방법과 시제품 제작 기판에서 부품을 상호 연결하는 방법에 대한 세부 지침이 있습니다. 예를 들어, 프로젝트 02는 “우주선 인터페이스”라고 하며, 스위치와 세 개의 LED를 연결하여 “제어 패널”을 만듭니다. 이 패널에서 스위치를 눌러 LED에 따라 수행되는 작업을 결정합니다. 설명서에서 각 프로젝트를 소개할 때 프로젝트를 완료하는 데 소요되는 예상 시간(이 경우 45분)을 제공합니다. 프로젝트 02에 대한 “구성요소 목록”에는 푸시 버튼 스위치 1개, LED 3개, 220Ω 저항기 3개, 10kΩ 저항기 1개가 포함되어 있습니다. 회로는 시제품 제작 브레드 기판에서 미리 잘라서 피복을 벗긴 점퍼 전선을 사용하여 연결됩니다. 이 섹션의 페이지에서는 신규 사용자가 향후에 프로젝트에서 독자적으로 사용할 수 있도록 저항기 색상 코드를 읽는 방법을 알려줍니다.

유선 회로는 그림 4의 프로젝트 참고 자료서 그림과 함께 표시됩니다. 프로젝트 참고 자료서에서는 배선을 그림 및 회로도 형식으로 보여줍니다. 두 이미지를 비교하여 회로도 기호와 부품 상호 연결을 해석하는 방법을 빠르게 배울 수 있습니다.

프로젝트 참고 자료서에 나오는 배선 지침 이미지(확대하려면 클릭)그림 4: 프로젝트 참고 자료서에 나오는 배선 지침과 시제품 및 UNO 기판의 실제 배선 명령은 그림 및 회로도 형식으로 표시됩니다. (이미지 출처: Digi-Key Electronics)

이 프로젝트의 소프트웨어 측은 공정의 최종 단계입니다. Arduino UNO의 ATmega328P와 같은 마이크로 컨트롤러에서는 기계 코드라고도 하는 매우 낮은 레벨의 프로그래밍 명령을 사용합니다. 이 코드는 기본적으로 내부 하드웨어를 제어하는 일련의 이진수입니다. 기계 언어로 된 코드를 수동으로 작성할 필요는 없습니다. 여러 단계를 거쳐 마이크로 컨트롤러에서 이해할 수 있는 이진 명령으로 변환되는 상위 레벨 언어로 프로그래밍이 수행되므로 프로그래밍 프로세스가 크게 간소화됩니다. 이 작업을 수행하는 데 사용되는 도구는 앞서 언급한 Arduino 통합 IDE입니다.

프로젝트 02에서는 소프트웨어 코드에 대한 명령을 계속해서 사용하며, Arduino에서는 이를 “스케치”라고 합니다. 스케치에 필요한 모든 단계를 살펴보고 코드 명령문이 수행할 작업을 설명합니다(그림 5).

Arduino IDE 프로그램 편집기에 표시된 프로젝트 02에 대한 프로그램 또는 “스케치” 이미지그림 5: Arduino IDE 프로그램 편집기에 표시된 프로젝트 02에 대한 프로그램 또는 “스케치” (이미지 출처: Digi-Key Electronics)

사용자가 코드를 수동으로 입력하거나 파일 풀다운 메뉴에서 다운로드할 수 있습니다(그림 6).

Arduino IDE에서 사용 가능한 모든 프로젝트에 대한 스케치 이미지그림 6: Arduino IDE에서 사용 가능한 모든 프로젝트에 대한 스케치 원하는 경우 사용자가 선택하거나 수동으로 코드를 입력할 수 있습니다. (이미지 출처: Digi-Key Electronics)

코드 입력이 완료되면 IDE 인터페이스의 스케치 풀다운 메뉴에서 입력 확인/컴파일을 사용하여 코드를 컴파일할 수 있습니다. 컴파일러가 코드의 구문과 기타 오류를 확인합니다. 컴파일이 완료되고 UNO 기판의 플래시 프로그램 메모리에 코드를 업로드할 준비가 되면 IDE 인터페이스가 나타납니다. 업로드 기능을 스케치 풀다운 메뉴에서 시작할 수도 있습니다. UNO 기판이 프로그래밍되면 녹색 LED가 켜집니다. 푸시 버튼 스위치를 누르면 녹색 LED가 꺼지고 빨간색 LED가 교대로 깜박입니다.

이 간단한 단계에는 조립, 연결, 로드 등 상위 레벨 명령을 이진 코드로 변환하여 마이크로 컨트롤러를 실행하기 위한 많은 프로그래밍 “단계”를 내포하고 있습니다. 초보자는 시간이 흐르면서 이러한 지식을 습득하고 경험을 축적하게 되겠지만 여기서는 이러한 항목을 다루지 않습니다.

프로젝트 참고 자료서에서는 스케치를 체험하도록 사용자를 초대하여 프로그램을 변경하는 방법에 대해 몇 가지 질문을 합니다. 프로젝트를 진행하면서 회로 및 프로그램의 복잡도가 증가하고 그에 따라 사용자의 경험과 지식이 축적될 것입니다.

결론

Arduino 시험용 키트에는 오픈 소스 시제품 제작 플랫폼, 다양한 전자 부품, 간편한 소프트웨어를 비롯하여 엔지니어와 비엔지니어 모두가 전자 제조 환경에 진출하는 데 필요한 모든 것이 포함되어 있습니다.

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

작성자 정보

Art Pini

Arthur(Art) Pini는 Digi-Key Electronics의 기고 작가입니다. Art는 뉴욕시립대에서 전기공학 학사 학위를 취득하고 뉴욕시립대학교에서 석사 학위를 취득했습니다. 그는 전자 분야에서 50년 이상의 경력을 쌓았으며 Teledyne LeCroy, Summation, Wavetek, Nicolet Scientific에서 주요 엔지니어링 및 마케팅 역할을 담당했습니다. Art는 오실로스코프, 스펙트럼 분석기, 임의 파형 생성기, 디지타이저, 전력계와 관련된 측정 기술과 폭넓은 경험에 관심을 갖고 있습니다.

게시자 정보

Digi-Key 북미 편집자