개발자/IOT-m2m

Nano 33 IoT WiFiNINA 라이브러리 탐구

지구빵집 2020. 9. 22. 15:32
반응형

 

 

 

어떤 컴퓨터 언어든지 소프트웨어를 이루는 4가지 요소는 변수, 연산, 제어, 함수라고 누차 말했죠? 그중에서 라이브러리는 함수에 속합니다. 패키지, 모듈, 라이브러리, api 등은 모두 함수의 일종이라고 말할 수 있습니다. 예를 들면 유니크하고 특별하고 전문적인 한 가지 기능을 구현한 단일 부품처럼 말이죠. 

 

Arduino Nano 33 IoT 보드는 WiFi를 기본적으로 구현한 보드입니다. WiFi는 아무 의미 없습니다. 블루투스처럼 그냥 지은 단어라서 의미 없습니다. 이때 지원하는 WiFi 관련 함수 그룹이 "WiFiNINA 라이브러리"라는 말이죠. 스마트 팩토리 구현에 앞서 IoT 보드에서 WiFi를 통해 센서 데이터를 전송하는 기능을 구현하는 중입니다. 그래서 오늘은 Nano 33 IoT 보드의 WiFi 라이브러리를 살펴보겠습니다.

 

WiFiNINA 라이브러리

 

이 라이브러리에서는 Arduino UNO WiFi Rev.2, Arduino NANO 33 IoT, Arduino MKR 1010 및 Arduino MKR VIDOR 4000 등에서 지원하는 WiFi 기능을 사용할 수 있습니다. 해당 보드로 들어오는 요청을 수락하고, 서버로 보내는 기능을 가진 클라이언트 역할을 할 수 있습니다. 라이브러리는 WEP, WPA2 Personal 및 WPA2 Enterprise 암호화를 지원합니다. 이 라이브러리는 원래 WiFi 라이브러리와 connectSSL ()과 동일한 모든 메서드를 지원합니다. WiFiNINA 라이브러리는 이더넷 및 라이브러리 WiFi와 매우 유사하며 많은 함수 호출이 동일합니다. 

 

라이브러리를 사용하기 위해 아래의 헤더파일을 포함해야 합니다.

 

#include <SPI.h>
#include <WiFiNINA.h>

 

펌웨어 업데이트

 

이 라이브러리를 사용하려면 보드에 일치하는 펌웨어가 설치되어 있어야 합니다. 라이브러리가 업데이트되면 펌웨어도 업데이트될 수 있지만 필수는 아닙니다. 문제를 방지하고 최신 설정이 있는지 확인하려면 Arduino 소프트웨어 통합개발환경(IDE) 라이브러리 관리자로 WiFiNINA 라이브러리를 확인하는 것이 좋습니다. 시작 시 설치된 라이브러리의 업데이트를 확인할 수 있는 옵션이 기본 설정에 있습니다. WiFiNINA 라이브러리를 아직 설치하지 않은 경우 업데이트에 대한 알림을 받지 못합니다. 어쨌든 라이브러리 관리자 상단의 검색 필드에 이름을 쓰는 것만으로도 라이브러리 최신 상태를 알 수 있습니다. 

 

check your WiFiNINA library with the Arduino Software (IDE) Library Manager.

 

컴퓨터에 설치된 라이브러리 버전이 최신 버전인 경우에 보드와 쉴드의 펌웨어 버전을 확인할 수 있습니다. 펌웨어 버전과 라이브러리와의 일치 여부를 확인하기 위해 유틸리티 스케치를 준비했습니다. 펌웨어에 업데이트가 필요한 경우 다른 유틸리티 스케치를 통해 프로세스를 수행할 수 있습니다. 관련 튜토리얼 링크를 참고하십시오. 

 

Utility

 

아두이노 스케치 프로그램의 예제-> WiFiNINA-> 도구에서 포함된 두 유틸리티를 찾을 수 있습니다.

 

  • CheckWiFiNINAFirmwareVersion : 라이브러리에서 필요한 필수 펌웨어 번호를 읽고 보드 또는 실드에 설치된 것과 일치합니다.
  • WiFiNINAFirmwareUpdater : Arduino Software (IDE) rel의 통합 플러그인을 통해 펌웨어 및 인증서 업데이트 프로세스를 허용하기 위해 로드해야 하는 스케치입니다. 아두이노 스케치 버전 1.8.5 이상. 

아래의 예제 코드를 참고하십시요.

 

Examples

준비된 다른 클래스의 함수들을 참고하십시오.

WiFi class

The WiFi class initializes the ethernet library and network settings.

Client class

The client class creates clients that can connect to servers and send and receive data.

Server class

The Server class creates servers which can send data to and receive data from connected clients (programs running on other computers or devices).

UDP class

The UDP class enables UDP message to be sent and received.

 

여기까지 정리하고 놀러 나가자. 우리에게 가장 아름다운 봄날, 인생에 최고로 빛나는 날은 바로 오늘이다. 항상 마음은 현재에 있어야 한다. 마음이 과거로 가면 후회하고, 미래에 가있으면 불안하다. 어디 놀러 갈 데가 없으면 열심히 공부한다. 

 

https://youtu.be/RbAoVm1dufM 참고

위 이미지를 찾다가 케이스가 정말 마음에 들어서 찾아봤더니 여기에 소스가 다 제공되는구나. 참고하시죠.

 

 

 

 

 

반응형