휴대용 IoT 장치를 개발할 때 고려해야 할 세 가지 주요 매개 변수는 저전력 소비, 무선 연결 및 보안 입니다. 이 세 가지를 정확히 염두에두고 Microchip은 PIC IoT WG 라는 새로운 개발 기판을 출시했습니다. 이 보드는 ATWINC Wi-Fi 모듈과 더 많은 흥미로운 것들을 갖춘 16 비트 PIC 마이크로 컨트롤러로 구동됩니다. 이 기사에서는이 보드와 IoT 설계에 사용하는 방법에 대해 자세히 알아 봅니다. 다른 IoT 개발 보드에 관심이 있다면 최근 Arduino에서 소개 한 Arduino Nano 33 BLE 감지 보드를 확인할 수 있습니다.
PIC IoT WG 개발 보드:
이 보드의 이름부터 시작하겠습니다. PIC IoT WG라고하며 WG는 WiFi와 Google을 의미합니다. 예, Microchip과 Google은 Google Cloud IoT Core Services 와 쉽고 안전하게 통신 할 수있는 임베디드 IoT 애플리케이션을 설계하는 데 도움이되는이 멋진 개발 보드를 제공하기 위해 파트너 관계를 맺었습니다. 아래에 표시된 것처럼 개발 보드에는 많은 구성 요소가 있으며 자체 마이크로 컨트롤러, Wi-Fi 모듈, 암호화 코 프로세서, 몇 개의 센서 등이 있습니다.
PIC IoT WG 하드웨어 개요
보드는 충전기 섹션, 디버거 섹션 및 컨트롤러 섹션의 세 섹션으로 나뉩니다. 각 섹션과 그 안에있는 중요한 구성 요소를 살펴 보겠습니다.
WINC1510 Wi-Fi 모듈이있는 PIC24F 마이크로 컨트롤러
컨트롤러 부는 하나의 인이 PIC 마이크로 컨트롤러 가장 중요한 두 요소 갖는다 PIC24FJ128GA705 과 다른 것은이 무선 인터넷 모듈 WINC1510를. 마이크로 컨트롤러 부분에 대해 PIC24F는 12 비트 ADC가 통합 된 32MHz 클록 주파수에서 작동하는 초 저전력 16 비트 마이크로 컨트롤러입니다. Wi-Fi 모듈은 마이크로 칩의 ATWINC1510이며 저전력 인증 IoT 네트워크 컨트롤러입니다. 배터리로 작동하는 IoT Edge 장치를 설계하려는 경우이 두 장치 모두 좋습니다.
안전한 데이터 통신을위한 암호화 코 프로세서
컨트롤러의 왼쪽에는 ATECC608 이라는 암호화 코 프로세서 인 또 다른 흥미로운 IC가 있습니다. 오늘날 심박수 모니터, 지속적인 포도당 모니터링 장치, 자산 추적 장치 등과 같은 많은 민감한 장치가 클라우드에 연결되고 있습니다. 이로 인해 데이터 보안이 주요 관심사가되고 있습니다. 여기에서 암호화 코 프로세서 IC ATECC608이 등장합니다. 따라서 여기서 일어나는 일은 보드가 개인 키와 공개 키를 생성하는 것입니다.. 비공개 키는이 보드에서 전송되는 모든 메시지를 암호화하는 데 사용되며 공개 키는 Google IoT 클라우드와 같은 can 서비스 제공 업체와 공유됩니다. 그런 다음 보드에서 암호화 된 메시지가 클라우드에 도달하면 클라우드는 공개 키를 사용하여이 메시지를 확인하고 해독합니다.
여기에서 ATECC608 IC는 이러한 개인 및 공개 키를 만들고 관리하기위한 암호화 인증 장치 역할을 합니다. 또한 IC는 보드와 Google 클라우드 IoT 코어간에 발생하는 인증을 위해 사전 구성되고 프로비저닝됩니다. 즉, 보드를 받으면 보드의 개인 키가 이미 생성되고 잠겼을 것이며이 IC에 공개 키가 Google Cloud IoT에서 호스팅되는 마이크로 칩 샌드 박스 계정에 등록되어 있습니다. 네트워킹 또는 암호화 전문가가되어 IoT 장치를 안전하게 만드십시오. 나중에 프로토 타이핑을 마친 후 보드를 개인 레지스트리로 이동할 수도 있습니다.
온보드 온도 및 광 센서
암호화 코 프로세서 IC의 양쪽에는 테스트 할 준비가 된 두 개의 온보드 센서가 있습니다. 하나는 TEMT6000X01 인 이 광 센서 이고 다른 하나는이 MCP9808 온도 센서입니다. 광 센서는 PIC 컨트롤러의 10 비트 ADC에 연결된 간단한 전류 감지 센서이며 온도 센서는 0.25 * C의 일반적인 정확도로 -20 * C ~ 100 * C 사이의 온도를 측정 할 수 있으며 다음을 사용하여 통신합니다. I2C.
온보드 리튬 충전기
PIC IoT WG 개발 보드는 마이크로 USB 포트 또는 배터리 단자에 연결할 수있는 4.2V 리튬 배터리 (흰색)로 전원을 공급할 수 있습니다. 이제 배터리로 보드에 전원을 공급하는 경우 보드 에는 4.2V 의 충전 전압과 100mA의 충전 전류로 마이크로 USB 포트를 통해 리튬 배터리를 충전하는 충전 IC도 있습니다. 또한 보드 모서리에 두 개의 LED가 있습니다. 빨간색은 배터리가 충전 중임을 나타내고 녹색은 완전히 충전되었음을 나타냅니다.
PKOB – 프로그래머 및 디버거
개발 보드에는 PKOB라는 자체 온보드 프로그래머, 에뮬레이터 및 디버거도 있습니다. PKOB라는 용어는 보드상의 Pic-kit을 의미하므로 우리 중 많은 사람들이 이전에 컨트롤러를 프로그래밍하고 디버그하기 위해 별도의 pic-kit을 사용했지만이 보드에는 온보드 에뮬레이터가 있으며 디버깅에 매우 편리한 직렬 통신도 지원합니다. 외부 하드웨어에 대한 요구 사항이 없습니다.
핀아웃, LED 및 스위치
여기에는 각각 다른 색상의 4 개의 LED가 있습니다. 첫 번째는 보드가 Wi-Fi 네트워크에 연결되면 켜지는 파란색 LED이고, 두 번째는 Google 클라우드 서비스에 연결되면 켜지는 녹색 LED, 세 번째는 노란색 LED입니다. 클라우드로 데이터를 보낼 때마다 깜박이고 네 번째는 빨간색 빨간색으로 켜지 며 보드의 오류를 나타냅니다. 또한 softAP 모드로 들어가는 데 사용할 수있는 두 개의 스위치 SW1 및 SW2가 있습니다.
이제 핀아웃에 도달하면 보드에는 Mikro Elektronika의 다양한 센서와 모듈을 연결할 수있는 Mikrobus 확장으로 서있는 양쪽에 8 개의 암 헤더가 있습니다. PIC 컨트롤러의 다른 범용 핀도이 컨트롤러 하단에있는이 패드를 통해 액세스 할 수 있습니다.
PIC IoT WG – 소프트웨어 지원
소프트웨어 부분에 이르러 Microchip은이 보드를 프로그래밍하고 디버깅하는 작업을 쉽게 만들었습니다. 이 보드를 컴퓨터에 연결하면 Wi-Fi 자격 증명을 수정하거나 간단한 끌어서 놓기 옵션으로 다시 프로그래밍 할 수있는 플래시 저장 장치로 검색됩니다. 그리고 이것은 XC16 컴파일러 와 함께 MPLABX IDE를 사용하여 16 비트 PIC 컨트롤러를 프로그래밍 할 수 있으며 빠른 프로그래밍 및 디버깅을 위해 Microchips Code Configurator (MCC) 도 지원합니다.
또한이 보드를 받으면이 광 센서 및 온도 센서의 값을 읽고 Google 클라우드 플랫폼에 그래프로 표시 할 수있는 데모 용으로 사전 프로그래밍되고 구성됩니다.
PIC IoT WG 개발 보드 시작하기
먼저 미니 USB 케이블을 잡고 개발 보드에 연결하고 다른 쪽 끝을 컴퓨터에 연결하십시오. 보드가 켜지고 컴퓨터에서 호기심이라는 새로운 플래시 드라이브를 찾을 수 있습니다. 드라이브를 열면 아래와 같이 내용이 표시됩니다.
CLICK-ME.HTM 파일을 클릭하여 웹 페이지를 엽니 다. 웹 페이지에서 Wi-Fi 자격 증명을 입력하고 구성 다운로드를 클릭합니다.
그러면 WiFI.config 라는 파일이 다운로드 되고이 파일을 호기심 드라이브로 드래그하면 보드의 파란색 LED와 녹색이 켜지고 보드가 이제 Wi-Fi 및 Google 클라우드에 연결되었음을 나타냅니다. 웹 페이지를 다시 열어 보드의 상태를 확인한 다음 아래로 스크롤하여 페이지에 그래프로 표시되는 보드의 조명 및 온도 센서 값을 확인합니다. 질문이 있으시면 위의 영상을 확인하실 수 있습니다.
마찬가지로 Google 클라우드에서 기기로 데이터를 보낼 수도 있습니다. putty와 같은 직렬 모니터 소프트웨어를 열고 보드의 COM 포트에 연결 한 다음이 텍스트 상자에 샘플 메시지를 입력하고 장치로 보내기를 클릭하십시오.
보시다시피 퍼티 터미널에 방금 보낸 메시지가 표시되어야합니다. 이 데모 프로그램을 실험 한 후 아래로 스크롤하여 자신의 센서 노드 프로그램을 만들기위한 옵션을 찾을 수 있으며,이 데모 환경에서 개인 환경으로 보드를 이동할 수있는 대학원이라는 옵션이 있습니다. 자세한 정보와 여기에서 진행하려면 Microchip의이 PIC IoT WG 사용 설명서가 도움이 될 것입니다.
그런 다음 MPLABX IDE를 사용하여 자신의 코드를 작성하기 시작합니다. 앞서 말했듯이 보드는 빠르고 쉬운 프로그래밍을 위해 MCC를 지원합니다. 이것은 PIC IoT WG 개발 보드에 대한 저의 리뷰를 거의 요약합니다. 보드에 대해 아는 것이 즐거웠기를 바라며, 보드로 무언가를 구축 할 수 있는지 궁금합니다. 댓글 섹션에서 이에 대한 귀하의 생각을 알려 주시면 또 다른 흥미로운 개발 보드와 함께 또 다른 리뷰 기사에서 만나 드리겠습니다.