-원문:https://docs.edgeimpulse.com/docs/tutorials/lifecycle-management/ota-model-updates/ota-arduino-iot-cloudArduino IoT클라우드를 통해서 소개하는 이 페이지는 Edge Impulse를 사용한 라이프 사이클 관리 튜터리얼 시리즈의 일부입니다.아직 소개를 읽고 있지 않으면 이쪽에서 읽는 것을 추천합니다.이 튜터리얼에서는 Arduino IoT Cloud및 Edge Impulse를 사용하여 Arduino에 업데이트된 OTA(무선)충격을 배포하는 방법을 안내합니다.시작하죠!전제 조건:Edge Impulse계정:이쪽에서 등록하세요.훈련된 임펄스:처음이라면 데이터 수집과 충격 설계 가이드에 따르세요.Arduino OTA업데이트의 주요 기능:원격 업데이트:Arduino보드 펌 웨어를 원격으로 업데이트합니다.Edge Impulse와 통합:기계 학습 모델을 부드럽게 통합합니다.오타 코드의 다음은 Edge Impulse로 OTA업데이트를 구현하기 위한 Arduino스케치의 예입니다:Edge Impulse API와 작동하도록 Arduino스케치를 확장하려면 Edge Impulse에서 최신 모델 업데이트를 가져올, 디바이스에 적용하는 기능을 추가할 필요가 있습니다.다음은 Edge Impulse API상호 작용을 통합한 loop(), connectToWiFi()및 onOTAEvent()함수의 확장판입니다.loop()함수 loop()함수는 정기적으로 Edge Impulse API의 업데이트를 확인합니다.- 원문 : https://docs.edgeimpulse.com/docs/tutorials/lifecycle-management/ota-model-updates/ota-arduino-iot-cloudArduino IoT 클라우드를 통해 소개되는 이 페이지는 Edge Impulse를 사용한 라이프사이클 관리 튜토리얼 시리즈의 일부입니다. 아직 소개를 읽지 않으셨다면 여기서 읽어보시는 것을 추천합니다.이 튜토리얼에서는 Arduino IoT Cloud 및 Edge Impulse를 사용하여 Arduino로 업데이트된 OTA(무선) 임펄스를 배포하는 방법을 안내합니다.시작합시다!전제 조건: Edge Impulse 계정: 여기에서 등록하십시오.훈련된 임펄스: 처음이라면, 데이터 수집과 임펄스 설계 가이드를 따라주세요.Arduino OTA 업데이트 주요 기능: 원격 업데이트: Arduino 보드 펌웨어를 원격으로 업데이트합니다.Edge Impulse와의 통합: 기계 학습 모델을 원활하게 통합합니다.오타 코드 다음은 Edge Impulse에서 OTA 업데이트를 구현하기 위한 Arduino 스케치의 예입니다: Edge Impulse API와 동작하도록 Arduino 스케치를 확장하려면 Edge Impulse에서 최신 모델 업데이트를 가져와 장치에 적용할 기능을 추가해야 합니다. 다음은 Edge Impulse API 상호작용을 통합하는 loop(), connect To WiFi() 및 on OTA Event() 함수의 확장 버전입니다.loop() 함수 loop() 함수는 정기적으로 Edge Impulse API 업데이트를 확인합니다.connect To WiFi() 함수 connect To WiFi() 함수에는 WiFi 연결을 시도하는 최대 횟수가 포함됩니다.void connect To WiFi() {Serial.print(“WPASSID에 연결을 시도 중:”); Serial.println(ssid); WiFi.begin(ssid, password); int は = 0; while (WiFi.status() !=! WL_CONNECTED) {delay(5000); Serial.print(“.”); 가 ++;if (attempts > = MAX_ATTEMPTS) {Serial.println(“WiFi에 연결하지 못했습니다. 자격증 정보를 확인해주세요.”;return;}} Serial.println(“WiFi에 연결되었습니다”);}on OTAEvent() 함수 on OTAEvent() 함수는 새로운 업데이트를 사용할 수 있을 때 트리거되며 업데이트를 다운로드하여 적용합니다.void on OTAevent(){//이 함수는 새로운 OTA펌 웨어가 사용 가능한 경우에 호출됩니다.Serial.println(“새 OTA펌 웨어가 사용 가능합니다.업데이트를 시작 중…”);//펌웨어 HTTPClient http;String펌 웨어를 다운로드하고 업데이트하는 이론을 구현합니다 URL=”https://studio.edgeimpulse.com/v1/api/your-project-id/deployment/download”;http.begin(firmwareURL);http.addHeader(“x-api-key”,”your-edge-impulse-api-key”);int httpCode=http입니다.GET();if(httpCode==HTTP_CODE_OK){//여기에서는 OTA업데이트를 적용하는 이론을 구현합니다.//이는 플래시 메모리 내의 특정 장소에 새로운 펌웨어를 올리고 업데이트를 적용하기 때문에 디바이스를 재부팅하는 것이 포함됩니다. applyOTAUpdate(http.getStream();}else{Serial.println(“업데이트를 다운로드할 수 없었습니다.”;}http.end();}void이 적용됩니다 OTA Update(WiFi Client&updateStream){//OTA업데이트를 적용하는 논리//보드와 셋업에 따라서는 플래시 메모리의 글과 디바이스의 재부팅이 필요한 경우가 있습니다.}이 스케치는 Arduino를 Arduino IoT Cloud에 연결하여 OTA업데이트의 통지를 수신하도록 설정합니다.OTA업데이트가 가능하면, onOTA Event함수가 호출되며 여기에서 펌웨어를 다운로드하고 업데이트하는 이론을 구현할 수 있습니다.OTA업데이트 준비 중인 Arduino IoT클라우드 설정:Arduino IoT클라우드에서 디바이스와 변수를 구성합니다.디바이스 연결:Arduino보드가 인터넷에 접속되고 있는 것을 확인하세요.Edge Impulse와 통합:Edge Impulse에서 훈련된 충격을 Arduino라이브러리에 내보냅니다.Arduino에 Impulse를 배포하는 밑거름 스케치 업데이트:Edge Impulse라이브러리를 Arduino스케치에 통합하세요.OTA업데이트를 받는다:Arduino IoT Cloud를 사용하여 OTA업데이트를 장치에 푸시 합니다.테스트와 감시:업데이트를 배포한 후 기기의 퍼포먼스를 감시하고 새로운 충격이 올바르게 기능하는 것을 확인하세요.컴포넌트 Arduino IoTCloud:클라우드 접속과 OTA업데이트를 관리합니다.WiFi NINA:호환 보드에 대한 WiFi연결을 처리합니다.결론 이 튜터리얼에서는 Arduino IoT Cloud를 사용하여 Edge Impulse와 통합하고 Arduino보드에 OTA업데이트를 구현하기 위한 기본 가이드를 제공합니다.프로젝트 요건에 맞추어 이 예제를 확장 및 개발하세요.실제 환경에 갱신을 배포하기 전에 테스트하는 것이 중요함을 명심하세요.즐거운 코딩을 하세요!