지난 글에서 개발보드 중 페더가 있다고 말씀드렸는데, 이번 글에서는 페더 보드 중에서 하나를 골라 좀 더 자세히 보겠습니다.

 

이번 글에서 볼 보드는 Adafruit Feather nRF52840 Sense입니다.

https://www.adafruit.com/product/4516

이 보드는 Nordic사의 nRF52840 칩을 기반으로 그 외에 각종 센서들, 전원장치, usb 시리얼 통신모듈 등을 탑재하고 있는 보드입니다. 보드를 자세히 보면 아래와 같습니다.

 

오른쪽의 큰 칩이 nRF52840이며, 왼쪽 가장자리에 마이크로 usb 포트, 위 가장자리에 LiPo 배터리 커넥터가 있습니다. 전원공급은 usb 케이블로 하거나 혹은 LiPo 배터리로 하거나 둘 중의 하나의 방식으로 가능하며, 케이블과 배터리 동시에 연결되어 있어도 동작합니다. 그리고 보드의 중간에 각종 센서 모듈들이 배치된것을 볼수 있습니다.

 

그럼 이 보드의 스펙을 한번 보겠습니다.

  • nRF52840은 ARM의 cortex M4 chip을 nordic에서 라이선스 받아 자체적으로 생산해서 판매하는 MCU입니다. 64 MHz의 클럭속도, 1MB의 플래시 메모리와 256kB의 RAM을 가지고 있습니다.
  • usb 시리얼 통신이 가능하여, 데스크탑 컴퓨터에 usb 케이블로 연결하여 동작 코드를 업로드할 수 있습니다. 여기에 arduino IDE를 사용해서 코딩하고 업로드를 해줄수 있습니다. 또한 citcuitpython을 이용해서 python으로도 작성이 가능합니다.
  • nRF52840은 BLE (Bluetooth light energy)기능이 있어 블루투스 무선 통신이 가능합니다.
  • 21개의 디지털 입출력핀, 6개의 12bit ADC(analogue-to-digital converter), 12채널의 PWM(pulse width modulation) 출력이 가능합니다.
  • 다른 장치와의 통신규격으로 I2C, I2S, SPI, UART 등이 지원됩니다.
  • 보드에 LED가 1개가 있어 빛을 낼수 있습니다.
  • 크기는 가로 51mm, 세로 23mm, 높이 7.2mm입니다.
  • 탑재된 센서는 다음과 같습니다.
  • LSM6DS3TR + LIS3MDL: 3축 가속도, 자이로 + 자기장 감지
  • APDS9960: 근접센서, 조도센서, 색깔감지기, 동작감지기
  • PDM: 마이크(소리센서)
  • SHT: 습도센서
  • BMP280: 온도계, 대기압/고도 감지기

 

위의 스펙을 보시면, 주변 환경의 변화를 감지하여 usb케이블을 통해서 혹은 블루투스를 통해서 무선으로 감지된 정보를 전송할 수 있고, 배터리를 이용해서 원격으로 동작이 가능합니다.

 

Adafruit사의 한가지 특징은 자기네가 개발한 제품의 설계도도 공개한다는 점입니다. 아래는 해당제품의 회로도와 PCB artwork입니다. https://learn.adafruit.com/adafruit-feather-sense/downloads 각종 센서들의 사양서들도 있습니다.

 
 

 

 

이 제품의 사용방법은 아래의 사이트에 있습니다. 개별 핀설명, 전원공급 방법, 예제 코드, 설계도 등 모든 정보가 있습니다.

https://learn.adafruit.com/adafruit-feather-sense

 

 

 

지난 시간에 이어 오늘도 Adafruit에 파는 물건 중 대표 상품인 개발보드에 대해 말씀드리겠습니다.

 

개발보드란 MCU(micro controller unit)를 포함하는 크기가 작은 PCB라고 할수 있는데, 이 보드에는 MCU뿐만 아니라 전원장치, USB 시리얼 통신 장치 등이 포함되어 있습니다. USB케이블이나 LiPo 배터리로 전원을 공급하고, USB포트를 통해서 동작 코드를 업로드 해 줄 수 있습니다.

 

보통 개발보드를 사용하는 목적은, DIY(do-it-yourself) 전자제품을 만드는 분들이 센서, 엑츄에이터, 디스플레이 등을 연결하여 사용자가 원하는 특정한 목적의 기능을 수행하도록 만드는데 사용하는 일종의 범용 정보처리 회로라고 볼수 있습니다. 범용이므로 당연히 사용자가 코드를 짜서 usb케이블을 통해서 MCU에 업로드를 해줄수 있습니다. 사용하는 언어는 주로 C언어이고 아래 사진의 circuitpython처럼 python인 경우도 있습니다. 아두이노 혹은 아두이노 호환보드의 경우 arduino IDE라는 개발 프로그램을 컴퓨터에 설치한 후, C언어로 짠 코드를 usb 케이블을 통해서 개발보드에 업로드하면 됩니다.

 

예를들어 아래의 사진처럼 모터를 돌리게 할 수 있습니다.

 

아두이노 개발보드로 할 수있는 것들이 매우 많으니 한번 여기를 둘러보시길 권합니다. https://learn.adafruit.com/search?q=ard

 

아두이노에 대한 소개페이지(https://learn.adafruit.com/ladyadas-learn-arduino-lesson-number-0)

도 있는데 영어로 되어있어서 여기보다는 다른 분들이 쓰신 아두이노 소개 블로그나 동영상을 보시는것도 좋겠습니다.

 

상점 홈페이지에서 shop을 눌러보면 카테고리별로 제품이 소개되는데, 아두이노(Arduino)와 패더(Feather)가 개발 보드들이며, 라즈베리 파이(Raspberry Pi)는 개발보드라기 보다는 소형 컴퓨터에 가까운 물건입니다.

 

먼저 아두이노는 Adafruit에서 개발한 것이 아니라 아두이노 개발사(https://www.arduino.cc/)에서 만든것이고, 예전에는 Adafruit에서 아두이노 개발보드를 판매하기도 하였으나 현재는 아래와 같은 아두이노 호환보드 몇 종류만 팔고 있습니다.

 

그 다음은 페더(Feather)라는 다른 종류의 개발보드를 팔고 있습니다. 페더는 Adafruit에서 직접 개발해서 판매하는 개발보드의 브랜드명입니다. STM32나 ESP32, NRF 등의 MCU를 탑재하고 있고, Arduino IDE 혹은 circuitpython으로 코딩하여 사용할 수 있습니다.

 

한가지 예를 들면 아래의 사진과 같습니다.

 

제목에 적혀있다시피 ESP32 MCU를 탑재하고 있고, 8 메가의 비휘발성 메모리(Flash), 2 메가의 휘발성 메모리(PSRAM)를 탑재하고 있습니다. ESP32는 Espressif사에서 개발한 MCU로 블루투스와 와이파이등 무선 통신기능이 탑재되어 있습니다. 또한 사진에서 왼쪽에 마이크로 usb 핀 소켓이있어 usb 케이블을 꽂을수 있게 되어 있고(전원공급 및 코드 업로딩), 위쪽에는 LiPo 배터리를 연결할 수 있는 커넥터가 있습니다. 그 외에 위아래의 가장자리에는 MCU와 연결되는 핀들이 있어, 각종 센서 등을 연결해줄 수 있습니다. (헤더 소켓이나 혹은 전선과의 납땜이 필요합니다.)

 

마지막으로 라즈페리 파이가 있습니다. 이 종류는 개발보드라기 보다 소형컴퓨터입니다. 왜냐하면 탑재된 정보처리장치가 MCU가 아닌 CPU (central processing unit)이기 때문입니다. MCU와 CPU의 차이는 쉽게말하면 스펙의 차이입니다. 동작 클럭, 메모리 사이즈 등의 하드웨어의 성능이 MCU에 비해 훨씬 좋기 때문에 두 종류 사이의 구분이 생깁니다. 라즈베리는 신용카드보다 약간 더 큰 크기의 보드로 모니터, 키보드, 마우스 등을 뺀 모든 것이 하나의 보드에 있다고 보면 됩니다. 예를들면 최신 버전인 라즈베리 파이 5는 아래의 사진과 같습니다.

 

사진을 보면 아래쪽 가장자리에서 왼쪽에서부터 전원을 위한 마이크로 usb 케이블 포트가 있고, 그 오른쪽에 HDMI 디스플레이 포트 2개, 그 오른쪽에 카메라는 위한 슬롯이 2개 있습니다. 오른쪽 가장자리에는 usb 포트 4개를 위한 소켓2개와 네트워크 케이블 커낵터가 있습니다. 위쪽 헤드들은 디지털 입출력을 위한 핀들입니다.

 

이 제품을 컴퓨터로 사용하려면 마이크로 usb 포트에 usb 케이블을 연결하고, usb포트에 키보드와 마우스를, 그리고 디스플레이의 hdmi 케이블을 hdmi 커넥터에 연결하면 됩니다. 보드에 와이파이와 블루투스 통신을 담당하는 칩이 내장되어 있어 무선 통신도 가능합니다. 즉 아래의 사진과 같습니다

 

 

 

아래처럼 아예 키트로 팔기도 합니다. (디스플레이와 라즈베리 파이 보드 별도 구매)

https://www.adafruit.com/product/5824

 

 

그래서 라즈베리 파이는 크기가 작은 컴퓨터로 쓸수 있습니다. 참고로 라즈페리 파이에는 마인크래프트 파이버전(minecraft pi edition, minecraft 교육용 버전)와 매스매티카(mathematica)를 무료로 쓸수 있습니다.

 

 

 

혹시 전자회로 DIY (do-it-yourself)에 관심이 있으신가요? 그렇다면 충전식 배터리로 동작하는 것을 만들때가 많은데, 그런 프로젝트에는 LiPo (리튬폴리머 배터리) 배터리가 하나씩 들어갑니다. 그렇다면 배터리 충전기가 필요합니다. 그래서 아래 LiPo 배터리 충전기를 소개합니다.

 

PowerBoost 1000 Charger - Rechargeable 5V Lipo USB Boost @ 1A

https://www.adafruit.com/product/2465

 

위 사진 왼쪽에는 micro-usb 커넥터가 있어서 어뎁터에 micro-usb 5 핀 케이블을 연결하고 오른쪽의 검은색 커넥터에는 LiPo 배터리의 커넥터가 연결됩니다. 위의 제품에는 켜고끄는 스위치가 없어서 그런 스위치를 달고 LiPo 배터리에 연결하는 것은 아래의 튜토리얼에 나와 있습니다.

https://learn.adafruit.com/adafruit-powerboost-1000c-load-share-usb-charge-boost/assembly

 

배터리만 연결된 상태에서는 배터리 자체의 3.7V를 5.2V로 승압해서 회로에 제공하며, 배터리와 micro-usb가 동시에 연결되어 있으면, mico-usb(전압 5V)에서 제공되는 전력이 회로에 전력을 공급함과 동시에 배터리 충전도 동시에 합니다. 그래서 회로가 동작하면서 동시에 배터리 충전도 가능합니다.

 

주의할 점은 이 제품은 LiPo 배터리만 사용가능하고, 다른 종류의 배터리를 지원되지 않는다는 것과, 최대 공급 가능 전류가 1A까지라는 점입니다. 그래서 작은 프로젝트의 전원 공급용으로 적당합니다.

 

+ Recent posts