Chuỗi hướng dẫn Cập nhật chương trình từ xa – Vi điều khiển STM32

Cùng với sự phát triển không ngừng của công nghệ và đặc biệt là xu thế vạn vận kết nối Internet, ngày càng nhiều thiết bị nhúng kết nối vào Internet được sử dụng khắp nơi trên thế giới trong rất nhiều lĩnh vực khác nhau. Dưới áp lực của sự phát triển, các thiết bị sau khi đưa vào sử dụng thì mới phát hiện các lỗi hay cần nâng cấp thêm để bổ sung, tối ưu các tính năng. Trong đó, nhiều thiết bị được lắp đặt sử dụng tại những nơi mà con người hay đội ngũ kỹ thuật khó có thể tiếp cận được, điều nay dẫn đến những khó khăn trong quá trình thay đổi chương trình chạy trên thiết bị.

Trong chuỗi bài viết này nhóm nghiên cứu sẽ chia sẻ các yếu tố kỹ thuật liên quan đến quá trình cập nhật từ xa cho thiết bị nhúng. Từ đó, thực nghiệm cập nhật chương trình từ xa, xây dựng thử nghiệm và đánh giá thư viện chương trình cập nhật từ xa trên mô hình cụ thể.

Thư viện và phương pháp đề xuất có độ tin cậy cao, ít chiếm dụng bộ nhớ và thời gian thực hiện cập nhật chương trình nhanh. Cấu trúc thư viện được thiết kế cho phép dễ dàng kế thừa, áp dụng cho nhiều hệ thống nhúng có kết nối Internet được thiết kế dựa trên nền tảng vi xử lý ARM Cortex –M để thực hiện việc cập nhật chương trình nhằm vá lỗi, nâng cấp, tối ưu các tính năng của một hệ thống từ xa, trong một thời gian ngắn mà không cần can thiệp trực tiếp vào thiết bị.

Chân thành gửi lời cảm ơn đến các thành viên Trần Thụy Ngọc Hằng, Nguyễn Hoàng Phương Trinh, Ngô Thanh Liêm, Nguyễn Thùy Nhiên, Đậu Đức Thắng, Ngô Hữu Hoàng Việt, Nguyễn Phi Hoàng Phúc, Trịnh Vĩnh Trường tại Cộng đồng Kỹ thuật TAPIT đã tham gia đóng góp vào nghiên cứu này!

Mục đích nghiên cứu

  • Cung cấp nền tảng cơ sở khoa học kỹ thuật về cập nhật chương trình từ xa cho các thiết bị nhúng có kết nối Internet với các yếu tố: Cấu trúc tập tin chương trình, tổ chức bộ nhớ, giao thức truyền nhận dữ liệu, tính toàn vẹn dữ liệu và quy trình khởi động thiết bị nhúng.
  • Đề xuất phương pháp cập chương trình từ xa, xây dựng thử nghiệm và đánh giá thư viện chương trình cập nhật từ xa trên mô hình cụ thể.

Đối tượng nghiên cứu

  • Vi xử lý ARM Cortex – M
  • Vi điều khiển STM32
  • Mạng thông tin máy tính với các giao thức Internet HTTP, FTP
  • Kỹ thuật phát hiện lỗi trong truyền nhận dữ liệu.

TỔNG QUAN VỀ CẬP NHẬT CHƯƠNG TRÌNH TỪ XA

Trong phần này sẽ trình bày về ứng dụng của cập nhật chương trình từ xa, mô hình cập nhật chương trình từ xa gồm thiết bị nhúng, chương trình chạy trên thiết bị nhúng, máy chủ quản lý tập tin chương trình và quá trình cập nhật chương trình từ xa.

NỀN TẢNG PHẦN CỨNG CẬP NHẬT CHƯƠNG TRÌNH TỪ XA

Phần này sẽ trình bày về tổng quan về phần cứng, tổ chức bộ nhớ của vi điều khiển và cấu trúc chương trình, bộ xử lý trung tâm ARM Cortex – M, quá trình khởi động của vi điều khiển và module truyền nhận dữ liệu 3G/4G.

ĐỀ XUẤT PHƯƠNG PHÁP VÀ XÂY DỰNG THƯ VIỆN CẬP NHẬT CHƯƠNG TRÌNH TỪ XA

Phần này đề xuất phương pháp cập nhật chương trình từ xa, xây dựng thư viện cập nhật chương trình từ xa với các thuật toán nhận, kiểm tra lỗi tập tin chương trình, thuật toán ghi tập tin vào bộ nhớ và thuật toán khởi động lại vi điều khiển

KẾT QUẢ THỰC HIỆN VÀ ĐÁNH GIÁ HIỆU QUẢ

Phần này nêu lên các kết quả thực hiện được của đề tài và đánh giá hiệu quả dựa trên các tiêu chí về chiếm tài nguyên bộ nhớ khi triển khai tính năng OTA, tỉ lệ thành công khi thực hiện OTA, độ tin cậy khi thự hiện OTA và thời gian thời gian thực hiện quá trình OTA.

KẾT LUẬN VÀ MỘT SỐ HƯỚNG PHÁT TRIỂN

Chúc các bạn thành công! 
Thay mặt nhóm Nghiên cứu
Thuong Nguyen

Tìm hiểu thêm:
Xem thêm Tổng hợp các bài hướng dẫn Lập trình vi điều khiển STM32 tại đây.
Xem thêm Tổng hợp hướng dẫn Internet of Things với NodeMCU ESP8266 và ESP32 tại đây.