산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

부품 및 소모품

Arduino MKR1000 1개 모든 OTA 프로젝트에 필수. 아래 부품은 사용 사례/샘플(실내 온도조절기)용.
DHT11 온습도 센서 (4핀) 1개
릴레이 (범용) 1개
브레드보드 (범용) 1개

앱 및 온라인 서비스

프로젝트 개요

이 기여는 두 부분으로 구성됩니다.

1부: 재사용 가능한 컴포넌트 모음. 유용한 기능을 활용하는 다양한 IoT 프로젝트 구축을 위한 프레임워크 역할을 합니다:

2부: 위 컴포넌트로 만든 사용 사례/샘플 – 폰(UWP 앱)으로 제어하는 실내 온도조절기. 컴포넌트 활용 예시로 제작했으며, 실제 우리 사무실에 설치해 현재 이 프로젝트로 사무실 난방 시스템을 제어 중입니다.

1부: OTA용 재사용 컴포넌트

OTA 작동 원리

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

다음 컴포넌트들을 개발했습니다:

아두이노 IDE용:

서드파티 서버(예: Microsoft Azure Web Site)에 설치:

UWP 앱 작동 원리

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

개발한 내용:

OTA 데모

2부: 사용 사례/샘플 – 실내 온도조절기

앞서 언급했듯 컴포넌트 조합으로 실제 프로젝트 구축 시연용으로 개발. 우리 경우 실제 운영 환경에 투입 – 사무실 난방을 이 프로젝트로 제어 중.

로직은 단순:

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능
아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능
아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능
아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

1. 프로젝트 제작 (하드웨어)

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

Fritzing 다이어그램 미제공 – 베타 MKR1000 사용으로 핀 레이아웃이 향후 변경될 수 있음.

2. OTA 및 Azure IoT Hub용 개발 환경 설정

우리의 컴포넌트:

보안 OTA(인터넷/HTTPS)용:

3. OTA 테스트 드라이브

OTA 업로드 3가지 방법.

1) LAN 경유 OTA 시도: File > Examples > Arduino-FlowerOTA > WiFiOTA. "// CHANGE ME" 주석 달린 줄들 수정해 IP 주소, WiFi 파라미터, plain/ssl, 서버 서명 구성. 그런 다음 Flower Platform > Upload OTA ...

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능
아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

다음을 사용해야 함:

WiFiClient client;

그리고 (팝업 창의 "서버 서명" 참조):

ota.begin(&udp, &client, "1hvtdliHzKLjMykvfW1MfPwsFthUU/YfjN8fOZJ3Qhc=");

참고: 3가지 방법 모두 최초 1회는 USB로 업로드 필요. 그 후 원하는 방법으로 OTA 계속 사용 가능.

2) 보안 디스패처 경유 OTA 시도, 같은 파일 사용:

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

다음을 사용:

WiFiSSLClient client;
ota.begin(&udp, &client, "my-iot-dispatcher-upload-key"); // IoT 디스패처(PHP) 내 설정 참조

3) 보안 디스패처 + Azure IoT Hub 경유 OTA 시도. File > Examples > Arduino-FlowerOTA > WiFiOTA-AzureIoTHub. 역시 "// CHANGE ME" 주석 줄들 수정 필수.

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

4) 사용 사례/샘플: 실내 온도조절기 시도. 여기에서 이용 가능.

4. 사용자 인터페이스 테스트 드라이브 (UWP 앱 + Azure IoT Hub + 음성 인식)

UWP 프로젝트는 여기에서 이용 가능. Visual Studio 2015와 Windows 10 필요.

Azure 계정에 맞게 연결 파라미터 변경 필수:

SendCloudToDevice.cs

class SendCloudToDevice {
  // CHANGE ME: 아래 상수들을 Azure Portal 실제 값으로 교체
  private const string HOST = "???.azure-devices.net";
  private const string DEVICE_ID = "???";
  private const string DEVICE_KEY = "???";
  static string sharedAccessKeyName = "???";
  static string sharedAccessKey = "???";
}

ReadDeviceToCloud.cs

class ReadDeviceToCloud {
  private static string ConnectionString = "???";
  private static string eventHubEntity = "???";
}

이 코드는 다양한 프로젝트용 클라이언트 앱 시작점으로 활용 가능. 사용자 인터페이스만 본인 프로젝트에 맞게 조정하면 됨.

향후 계획

아두이노 MKR1000처럼 적절한 처리 능력과 SSL 통신 기능을 갖춘 보드는 메이커 커뮤니티에 큰 진전입니다.

이 프로젝트에서 시작한 작업을 계속해 Flower Platform IoT라는 온라인 서비스 개발 중 – IoT 프로젝트를 획기적으로 가속화할 것:

Flower Platform을 활용해 어린 아이들이 IoT 프로젝트를 만들고 프로그래밍하는 데 초점을 맞춘 재단 설립 계획.

코드

펌웨어 업로드 및 복사 메커니즘 처리 런타임 라이브러리 (C++)

https://github.com/flower-platform/Arduino-FlowerOTA

라이브러리에 필요한 링커 관련 설정 가진 커스텀 "보드" 패키지 (링커 스크립트)

https://github.com/flower-platform/ArduinoCore-samd-OTA

아두이노 IDE 플러그인. 보드, 디스패처, IoT Hub와 통신 (Java)

https://github.com/flower-platform/flower-platform-arduino-ide-plugin

IoT 디스패처. OTA 중 필요한 펌웨어 저장 및 제공 (PHP + MySQL)

https://github.com/flower-platform/flower-platform-iot-dispatcher

실내 온도조절기 사용 사례/샘플 (C++)

https://github.com/flower-platform/ThermostatIoT

실내 온도조절기용 UWP 클라이언트 (C#, HTML, JavaScript)

https://github.com/flower-platform/thermostat-uwp-ui

회로도

Fritzing 다이어그램 미제공 – 베타 MKR1000 사용으로 핀 레이아웃이 향후 변경될 수 있음.

아두이노 MKR OTA 프로그래밍 – 음성 제어 및 부가 기능

제조공정

  1. Microsoft 공인 Azure 관리자 되기: 단계별 가이드
  2. Microsoft Azure, 현명한 커리어 경로인가? 시장 점유율, 연봉, 자격증 인사이트
  3. 마이크로소프트 Azure, 블록체인 토큰화 & 데이터 관리 서비스 발표
  4. Microsoft Azure 치트 시트 2020 – Azure 서비스 & 아키텍처 결정판 가이드
  5. Azure와 Power BI 통합: 현대 기업을 위한 단계별 가이드
  6. 경구 피임약: 역사, 이점, 위험, 그리고 생산
  7. 에지 AI와 저전력 하드웨어, 음성 제어 부상 견인
  8. 자동 수영장 급수 및 모니터링 시스템
  9. 마이크로소프트, 5G 기반 IoT·AI 워크로드 지원 '애저 엣지 존' 공개
  10. 에머슨(Emerson), 애저(Azure) 호스팅 제디(Zedi) 클라우드 SCADA 플랫폼으로 지속가능성 강화