Cách chọn Vi Điều Khiển cho IoT

Categories IoT

Hầu hết các ứng dụng IoT yêu cầu nhiều hơn là chỉ thêm một cảm biến vào một đối tượng vật lý. Khi mọi người nói về ‘các đối tượng thông minh’, họ thường nói về việc bổ sung một vi điều khiển kết nối Internet (còn được gọi là MCU ).

Vi điều khiển có thể được coi là những máy tính nhỏ được thêm vào bất kỳ vật thể hoặc không gian vật lý nào để tạo cho nó một ‘bộ não’. Chúng chứa một hoặc nhiều bộ xử lý máy tính , cùng với bộ nhớ và các thiết bị ngoại vi đầu vào / đầu ra có thể lập trình – tất cả trong một mạch tích hợp duy nhất.

MCU khác với các bộ vi xử lý được tìm thấy trong máy tính cá nhân vì chúng được thiết kế riêng cho các ứng dụng nhúng trong đó điện toán không phải là mục đích duy nhất của ứng dụng.

Mặc dù MCU có ít khả năng hơn bộ xử lý máy tính tiêu chuẩn, chi phí thấp khiến chúng trở thành một lựa chọn thiết thực hơn để thêm khả năng tính toán vào một đối tượng, không gian hoặc quy trình không có chúng.

Hãy nghĩ về một cái gì đó như nhà kho, cây cầu hoặc máy công nghiệp thường không chứa máy tính. Trong những trường hợp như thế này, việc thêm một bộ vi điều khiển kết nối Internet cung cấp đủ sức mạnh tính toán để tăng cường những thứ này mà không cần thêm chi phí và độ phức tạp cao hơn của bộ xử lý máy tính tiêu chuẩn.

Các tính năng chính của Vi điều khiển

Để có thể xác định vi điều khiển nào sẽ hoạt động tốt nhất với ứng dụng của bạn, bạn sẽ cần biết một số tính năng chính của vi điều khiển và những gì chúng làm. Dưới đây là một số thông số kỹ thuật mà bạn sẽ gặp phải và cần có ý nghĩa khi xem bảng dữ liệu cho MCU:

  • Bits : Vi điều khiển thường được bán theo số lượng bit mà chúng cung cấp. Điều này tác động đến tốc độ mà họ có thể thực hiện các tính toán không tầm thường.
  • RAM : RAM là bộ nhớ truy cập nhanh, không lưu giữ dữ liệu khi không có nguồn. Tất cả các MCU đều đi kèm với một số lượng RAM nhất định, cho phép vi điều khiển của bạn nhanh chóng thực hiện các hành động khác nhau. Bạn càng có nhiều, càng tốt, nhưng RAM được thêm vào làm tăng chi phí của MCU.
  • Flash : Flash là bộ nhớ máy tính giữ lại dữ liệu khi không có nguồn. Ít nhất một số trong số này là cần thiết và nó rất hữu ích cho các tính năng như lưu trữ ngoại tuyến.
  • GPIO : GPIO là viết tắt của các chân đầu vào / đầu ra cho mục đích chung. Đây là các chân mà bạn sẽ sử dụng để kết nối các cảm biến và bộ truyền động của mình với MCU và internet. Số lượng chân có thể dao động từ một đến hàng trăm, tùy thuộc vào vi điều khiển.
  • Kết nối: Đây là cách bảng (và ứng dụng) kết nối với Internet thông qua Wi-Fi, Ethernet hoặc một số phương tiện khác. Đây là một khía cạnh quan trọng của các ứng dụng cảm biến được kết nối, vì vậy chúng tôi sẽ đề cập chi tiết hơn về chủ đề này sau.
  • Tiêu thụ năng lượng: Tiêu thụ năng lượng cực kỳ quan trọng đối với các ứng dụng cảm biến được kết nối, đặc biệt khi thiết bị của bạn phải phụ thuộc vào thứ gì đó như pin hoặc năng lượng mặt trời. Thông số kỹ thuật này sẽ cho bạn biết MCU đói như thế nào theo mặc định và liệu nó có hỗ trợ các kỹ thuật lập trình có ý thức về năng lượng hay không.
  • Các công cụ và cộng đồng phát triển: Điều quan trọng là có một bộ công cụ, tài liệu và hỗ trợ cộng đồng hoàn chỉnh để giúp xây dựng các chương trình sẽ chạy trên MCU mà bạn chọn cho ứng dụng của mình.

Hệ điều hành vi điều khiển

Bây giờ, hãy nói về hệ điều hành chạy trên phần cứng Vi điều khiển. Cũng giống như cách các máy tính cá nhân chạy một hệ điều hành như Windows, MCU cũng chạy một hệ điều hành.

Bạn có ba tùy chọn chính:

  • Bare Metal có nghĩa là trên thực tế, không có hệ điều hành. Đây là cách tiếp cận ban đầu để làm việc với vi điều khiển và nó vẫn còn khá phổ biến vì nó hiệu quả và tiết kiệm chi phí. Nhược điểm chính của tùy chọn này là nó cung cấp ít hỗ trợ hơn cho nhà phát triển phần mềm.
  • RTOS là viết tắt của “Hệ điều hành thời gian thực.” Một hệ thống RTOS cung cấp các đảm bảo chính xác liên quan đến thời gian mà các hoạt động sẽ hoàn thành. Điều này là rất quan trọng để phối hợp máy móc vật lý.
  • Linux dễ dàng hơn nhiều để lập trình và kết nối với Internet. Nó hoạt động giống như một máy tính thực sự của người Viking, như một người bình thường có thể biết nó, điều này rất tốt cho nhiều lý do đã nêu trước đây. Tuy nhiên, vì điều này, nó không cung cấp bất kỳ đảm bảo thời gian.
Kim loại trầnRTOSLinux
Cách tiếp cận ban đầu và đơn giản nhất
Không có hệ điều hành
Mã nói chuyện trực tiếp với các thành phần điện toán
Hỗ trợ lập trình hạn chế
Cung cấp đảm bảo cho thời gian xử lý với các sự kiện đầu vào / đầu ra
Chương trình chạy trong hệ điều hành
Có khả năng đình chỉ một nhiệm vụ và thực hiện một nhiệm vụ ưu tiên cao
Nhanh chóng để thiết lập nhưng tốn thời gian để gỡ lỗi
 

Hệ điều hành nguồn mở phổ biến dựa trên UNIX, ban đầu dành cho máy tính cá nhân
Dễ dàng truy cập hơn và dễ dàng hơn để lập trình
Cộng đồng mạnh mẽ của những người có thể giúp đỡ
Khó hơn để có được hiệu suất thời gian thực

Bo phát triển

MCU thường được mang theo cùng với cái được gọi là bảng phát triển của bộ . “Bo phát triển cung cấp mọi thứ cần thiết để lập trình MCU. Chúng là điểm khởi đầu hoàn hảo để xây dựng các hệ thống được kết nối.

Các bảng phát triển là các bảng mạch in có chứa MCU và các bộ phận hỗ trợ cần thiết để lập trình MCU.

Chúng bao gồm những thứ như nguồn năng lượng, hỗ trợ kết nối cảm biến và đôi khi cả cảm biến và bộ truyền động trên tàu.

Chúng hữu ích cho việc tạo mẫu trước khi sản xuất cuối cùng một giải pháp tùy chỉnh và phổ biến cho các kỹ sư khác nhau làm việc về phát triển hệ thống nhúng.

Các bảng phát triển cho phép người dùng kết nối nhanh chóng các cảm biến và bộ truyền động (nếu chúng chưa được đưa vào bảng) và phần mềm đi kèm của chúng tạo điều kiện cho việc tạo và triển khai mã.

Chọn một vi điều khiển cho hệ thống IoT của bạn

Có nhiều bảng phát triển và vi điều khiển khác nhau có sẵn từ nhiều công ty khác nhau: TI, Samsung, Arduino, Raspberry Pi và nhiều hơn nữa. Chọn cái nào phù hợp với bạn phụ thuộc vào một số yếu tố khác nhau tùy thuộc vào bản chất của ứng dụng của bạn.

  • Khả năng tương thích : MCU có hỗ trợ các cảm biến và cơ cấu chấp hành bạn muốn sử dụng không? Tùy thuộc vào cảm biến và bộ truyền động của bạn, bạn có thể cần nhiều hoặc chỉ một vài cổng. Bạn sẽ muốn đảm bảo rằng bạn có đủ cổng đầu vào / đầu ra.
  • Kiến trúc : Kiến trúc có đủ tinh vi để xử lý sự phức tạp của chương trình của bạn không? Hầu hết các ứng dụng sử dụng ARM, MIPS hoặc X86. Việc chọn một tùy thuộc vào các yêu cầu chức năng của ứng dụng của bạn và khả năng tính toán của hệ thống của bạn.
  • Bộ nhớ : MCU có đủ bộ nhớ – RAM và Flash – cho chương trình của bạn không? Chúng tôi khuyên bạn nên chọn MCU với dung lượng bộ nhớ bổ sung thoải mái cho các bản cập nhật trong tương lai. Điều này sẽ giúp bạn tiết kiệm thời gian, tiền bạc và một số vấn đề đau đầu về lâu dài!
  • Sẵn có : Bạn có thể dễ dàng có được MCU mà bạn muốn và với số lượng mà bạn cần không? Điều này rất quan trọng để xem xét khi bắt đầu quá trình, đặc biệt nếu bạn có kế hoạch mở rộng hệ thống của mình sau này.
  • Sức mạnh : MCU sẽ cần bao nhiêu năng lượng? Nó sẽ cần phải có dây hoặc bạn có thể sử dụng pin? Hiệu quả năng lượng là cực kỳ quan trọng để xem xét cho các ứng dụng IoT công nghiệp vì bạn sẽ muốn giảm thiểu nhu cầu gửi các đội bảo trì để kiểm tra cơ sở hạ tầng cạnh.
  • Chi phí : Mỗi đơn vị có giá bao nhiêu? Liệu giá cả có ý nghĩa dựa trên giá trị mà nó sẽ cung cấp? Một lần nữa, bạn sẽ muốn nghĩ về việc nhân rộng dự án sau này. Đảm bảo rằng hỗ trợ ngân sách IoT của bạn bao gồm nhiều MCU bạn chọn.
  • Bộ công cụ phát triển : Bộ công cụ phát triển có sẵn không? Bộ dụng cụ phát triển là một cách tuyệt vời để bắt đầu với MCU bạn chọn vì chúng được thiết kế để mang đến cho khách hàng trải nghiệm vượt trội. Điều này sẽ làm cho việc phát triển ứng dụng IoT của bạn dễ dàng hơn nhiều!
  • Hỗ trợ phát triển : Tài liệu tốt cho MCU của bạn có sẵn không? Cộng đồng xung quanh bảng này như thế nào? Những yếu tố này rất quan trọng để đưa ra quyết định sáng suốt về cách sử dụng MCU của bạn đúng cách. Một cộng đồng trực tuyến tốt có thể giúp hướng dẫn bạn khi bạn gặp khó khăn hoặc gặp phải vấn đề với việc triển khai.

Vào cuối ngày, bạn có thể và nên thực hiện nghiên cứu của mình để đưa ra quyết định sáng suốt. Nhưng, như với tất cả các công nghệ mới, bạn sẽ học hỏi khi thử nghiệm.

Nguồn: helpex

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *