Sự khác biệt giữa vi xử lý và vi điều khiển được trang bị cảm biến và kết nối là gì?


8

Đọc một số bài báo về IoT và Mạng cảm biến không dây (WSN) tôi tình cờ thấy các thiết bị vi trần và đã thấy có rất nhiều trong số chúng .

Tôi đã hiểu rằng chúng là những chiếc lá trong hệ thống IoT và chúng là những thiết bị nhúng được trang bị cảm biến và kiến ​​trúc kết nối được tối ưu hóa nhưng tôi không rõ chúng là gì.

Ví dụ, sự khác biệt giữa thiết bị vi xử lý và bộ điều khiển vi mô như Arduino Uno chỉ là thiết bị vi xử lý đã được trang bị cảm biến và để kết nối?

Thêm vào đó, tôi đã thấy nhiều người trong số họ hỗ trợ hệ điều hành của riêng họ như TinyOS nhưng nhìn vào trang wiki của nó thì nó không được cập nhật từ năm 2012: các thiết bị vi trần vẫn là một lựa chọn tốt hiện nay? Việc nhiều người trong số họ được lập trình bằng ngôn ngữ lập trình của riêng họ (chẳng hạn như NesC cho TinyOS) và không có trong C / C ++ không dẫn đến sự cố giao diện với các thiết bị khác?


Hãy cố gắng tránh hỏi nhiều câu hỏi trong một câu hỏi. Điều này thường dẫn đến câu trả lời chỉ tập trung vào một khía cạnh hoặc vào các khía cạnh khác nhau - vì vậy khó thấy câu trả lời 'tốt nhất'.
Sean Houlihane

Tôi nghĩ rằng họ có liên quan chặt chẽ và giúp hiểu bối cảnh của câu hỏi chung.
Francesco Boi

Hệ điều hành cho các thiết bị là, tôi nghĩ là một chủ đề riêng biệt - mặc dù nó không rõ ràng nếu không biết phần đầu tiên của câu hỏi.
Sean Houlihane

1
Điều tôi muốn nhấn mạnh là có vẻ như các thiết bị vi trần thường hỗ trợ HĐH như OS TinyOS trong khi các thiết bị thông thường có thể hỗ trợ HĐH (mâm xôi) hoặc phổ biến hơn là không (Arduino, uC, v.v.). Nhưng ok, tôi hiểu lý do tại sao bạn nói với tôi rằng bạn có thể đúng ở cuối. Cám ơn vì sự gợi ý.
Francesco Boi

Câu trả lời:


4

Tôi thích câu hỏi này khi tôi đọc nó. "Nó đưa tôi trở lại", như những người greybeards nói :) TinyOS "công khai" vào năm 2000 - khoảng một năm sau khi cụm từ "Internet of Things" được đặt ra, theo Wikipedia. Cách đây rất lâu, trong một thiên hà xa, rất xa ... OK, xuống kinh doanh:

Tôi tin rằng câu trả lời cho câu hỏi của bạn là liệu có hay không, TinyOS, NesC, v.v ... là "những lựa chọn tốt hiện nay", là một "Có" không đủ tiêu chuẩn . Tôi sẽ giải thích tại sao.

Tôi đã học về TinyOS năm 2003; lúc đó nó đã là một hệ thống khá trưởng thành và được sử dụng trong một số ứng dụng thú vị."Motes" là một thuật ngữ cho phần cứng, như trong "cảm biến từ xa". Mỗi vi xử lý có một bộ xử lý, pin, radio ( không phải WiFi) và một loại cảm biến nào đó. Ba thành phần đầu tiên là phổ biến trên nhiều loại khác nhau, trong khi cảm biến thường đặc biệt với ứng dụng; ánh sáng, nhiệt, từ trường, v.v ... Nếu bạn quan tâm đến chi tiết, nhiều bài báo (chủ yếu là học thuật và từ ngữ) đã được xuất bản tài liệu thiết kế của TinyOS ... đây là thứ tôi thích.

Là một hệ thống, TinyOS và vi trần được thiết kế để hoàn thành một mục tiêu với các tài nguyên cực kỳ ít ỏi. Ví dụ:

  • TinyOS chiếm khoảng 400 byte bộ nhớ; một ứng dụng điển hình 12-16 kB.
  • TinyOS chạy trên bộ vi điều khiển 8 bit cực nhỏ; ví dụ: Atmel's AT-90L, TI's MSP430 và ATtiny9 hiện đại hơn từ Microchip .
  • Mã NesC giống như một phần của 'kernel' hơn là một ứng dụng truyền thống; hiệu quả hệ thống đòi hỏi cách tiếp cận này.
  • Chu kỳ nhiệm vụ thấp và kiến ​​trúc hệ thống phục vụ bảo tồn năng lượng cho phép pin tồn tại trong một năm hoặc hơn (tất nhiên phụ thuộc vào ứng dụng).

Cung cấp dữ liệu cảm biến đến đích cuối cùng của nó từ các vảy phân tán rộng có thể được thả từ máy bay, kiểu rơi tự do, vào một môi trường hoạt động cực kỳ thù địch đòi hỏi các thuật toán định tuyến thông minh. "Tính linh hoạt" do đó là trình điều khiển chính trong thiết kế ngăn xếp truyền thông của TinyOS. Do đó, không có cơ sở hạ tầng truyền thông hiện tại là cần thiết. Điều này là tất nhiên cả trao quyền và thách thức. Một số giao thức định tuyến đã được phát triển và việc cấp phép nguồn mở khuyến khích việc áp dụng và sửa đổi các giao thức này.

Theo như TinyOS bị bỏ rơi, hoặc trì trệ, tôi không cảm thấy như vậy. Các TinyOS GitHub repo chương trình hoạt động gần đây, và cho thấy rằng nó được duy trì và chăm sóc sau . Điều đó nói rằng, TinyOS sẽ không bao giờ thu hút đám đông "điện tử và phần mềm như một sở thích"; một đám đông không thực sự tồn tại cho đến gần đây khi Arduino và Raspberry Pi trở nên phổ biến.

Và điều đó đưa tôi đến điểm trong "câu trả lời" công phu này cho câu hỏi kích thích tư duy của bạn. Tôi không nghĩ rằng có một câu trả lời thực tế và khô khan. Tôi nghĩ rằng các câu trả lời đi xuống đến này: Con người chúng ta là giống như cừu hoặc lemmings hơn chúng ta muốn tin. Raspberry Pi, Arduino, v.v. là những sản phẩm đã thu hút lượng lớn người theo dõi và tò mò về doanh thu cho những người sử dụng các tiện ích, nhưng điều đó ít hoặc không liên quan gì đến sự phù hợp của họ đối với một ứng dụng cụ thể. Tôi không đề xuất rằng một người phát minh lại bánh xe cho mỗi vấn đề mới, nhưng đồng thời, một (hoặc hai) kích thước không phù hợp với tất cả. Sử dụng các công cụ thích hợp cho công việc.

Tôi biết từ câu hỏi của bạn rằng bạn hiểu điều này, nhưng có lẽ chưa nghĩ đến nó theo cách này. Thành thật mà nói, tôi đã không cho đến khi câu hỏi của bạn làm hỏng một số tảng đá lỏng lẻo. Vì vậy, vâng, tôi nghĩ bạn vẫn có thể xây dựng một số thứ rất thanh lịch với TinyOS, nhưng bạn có thể phải làm điều đó với ít tài nguyên hỗ trợ hơn. Hoặc, có thể sẽ có một "Trao đổi ngăn xếp TinyOS" trong tương lai? Ha ha - đừng nín thở :)

Tôi sẽ kết thúc với điều này: Sự thật thường là những gì chúng ta tạo ra; bạn đã nghe những gì bạn muốn nghe, tin những gì bạn muốn tin.

Phụ lục:

Khi bạn nghĩ về cách xây dựng các thiết bị của mình và tổng hợp chúng thành các hệ thống, Phil Levis cung cấp một số thực phẩm để suy nghĩ trong video ngắn này.

Và theo như các tài nguyên để hỗ trợ phát triển TinyOS, đây là một số ít mà tôi tìm thấy khi nghiên cứu "câu trả lời" của mình ở đây:


Cảm ơn bạn vì câu trả lời. Cuối cùng tôi cũng có thể đọc được tất cả. Câu hỏi được thúc đẩy bởi thực tế là tôi không thể tìm thấy các ứng dụng hoặc công việc giấy tờ gần đây bằng TinyOS. Đối với các thiết bị vi trần, một số sản phẩm thương mại tồn tại gợi lại tên "mote" (như Waspmote từ Libellium) dựa trên hoặc ít nhất là rất giống với bảng Arduino. Cảm ơn một lần nữa!
Francesco Boi

Hân hạnh; Tôi rất vui vì bạn đã đặt câu hỏi :)
Seamus

5

Không có sự khác biệt thực sự. Theo đó , bạn đi đến định nghĩa của "vi trần" với tiêu đề của bạn: "một vi điều khiển được trang bị cảm biến và kết nối" - ngắn hơn: " Nút cảm biến "

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.