Top Ad unit 728 × 90

Latest news

recent

Giới thiệu hệ thống nhúng

  1. Khái niệm về hệ thống nhúng
    • Hệ thống nhúng là một hệ thống máy tính.
    Đó là một hệ thống được tích hợp cả phần cứng và phần mềm phục vụ cho các bài toán chuyên dụng trong nhiều lĩnh vực công nghiệp, tự động hóa điều khiển, quan trắc và truyền thông.
    • Có tài nguyên giới hạn
    Các hệ thống nhúng bị giới hạn nhiều hơn về phần cứng và chức năng phần mềm so với máy tính cá nhân. Giới hạn phần cứng có thể bao gồm giới hạn về khả năng xử lý, tiêu thụ điện năng, bộ nhớ, chức năng phần cứng,… Còn giới hạn phần mềm thường liên quan đến việc hỗ trợ ít ứng dụng, ứng dụng bị thu gọn tính năng, không có hệ điều hành hoặc hệ điều hành có nhiều hạn chế. Tuy nhiên, ngày nay, những giới hạn này đã được khắc phục đáng kể bằng các hệ thống nhúng được thiết kế phức tạp và đầy đủ tính năng hơn.
    • Chuyên dụng
    Hệ thống nhúng được thiết kế để thực hiện một chức năng chuyên biệt nào đó. Đây là điểm khác biệt so với các hệ thống máy tính khác như máy tính cá nhân hoặc các siêu máy tính có thể thực hiện nhiều chức năng khác nhau với những phép tính phức tạp. Chuyên dụng giúp nâng cao tính dễ sử dụng và tiết kiệm tài nguyên.
    • Tương tác với thế giới thực
      • Cảm nhận môi trường: cảm biến nhiệt độ, độ ẩm, ánh sáng, trọng lượng…, cảm nhận bằng tín hiệu điện (máy dò nhiễu điện từ)
      • Tác động trở lại môi trường (hú còi báo động khi phát hiện khói trong tòa nhà…)
      • Tốc độ tương tác phải đáp ứng thời gian thực (hệ thống còi báo hỏa, hệ thống chống trộm trên ô tô,…)
    • Yêu cầu chất lượng và độ tin cậy cao
    Vài dòng thiết bị nhúng có những yêu cầu rất cao về chất lượng và độ tin cậy. Lỗi của hệ thống nhúng có thể gây ra tai nạn khủng khiếp: Hệ thống điều khiển máy bay, tên lửa, hệ thống điều khiển động cơ ô tô…Lỗi trên hệ thống nhúng có thể không sửa được (vd: vệ tinh nhân tạo), nếu sửa được thì chi phí cũng rất cao (thu hồi sản phẩm hoặc thiết kế lại toàn bộ…)
    •  Một số ví dụ điển hình về hệ thống nhúng
      • Các hệ thống dẫn đường trong không lưu, hệ thống định vị toàn cầu, vệ tinh.
      • Các thiết bị gia dụng: tủ lạnh, lò vi sóng, lò nướng,…
      • Các thiết bị kết nối mạng: router, hub, gateway,…
      • Các thiết bị văn phòng: máy photocopy, máy fax, máy in, máy scan,…
      • Các thiết bị y tế: máy thẩm thấu, máy điều hòa nhịp tim,…
      • Các máy trả lời tự động 
      • Dây chuyền sản xuất tự động trong công nghiệp, robots.
    Hình 1: Mẫu xe trong cuộc thi Micom Car Rally (chip Renesas H8)
    Hình 2: Một số hệ thống nhúng thông dụng
  2. Các đặc điểm của hệ thống nhúng
  3. Hệ thống nhúng “lai”: Các thiết bị PDA, Smartphone, Netbook, … cũng có một số đặc điểm tương tự với hệ thống nhúng như hệ điều hành hoặc vi xử lý điều khiển nhưng các thiết bị này không thật sự là hệ thống nhúng, bởi vì chúng là các thiết bị đa dụng, kết nối đến nhiều thiết bị ngoại vi và tương tác với thế giới thực không chặt chẽ.
  4. So sánh với PC (Personal Computer)
  5. Hệ thống nhúng
    PC
    Chuyên dụng
    Đa dụng
    Ít tài nguyên
    Nhiều tài nguyên
    Kích thước nhỏ gọn
    Kích thước lớn
    Không gian hoạt động ở khắp nơi
    Không gian hoạt động hạn chế
    Một người có nhiều hệ thống nhúng
    Một người có một PC
    Kiến trúc hệ thống nhúng
    Mỗi hệ thống nhúng đều có một kiến trúc thổng thể như sau:
  6. Hình 3: Kiến trúc hệ tổng thể của một hệ thống nhúng
      • Hardware:
        Vi xử lý, bộ nhớ, tụ điện, điện trở, mạch tích hợp, bảng mạch in, connector, …. Tất nhiên, đây là thành phần bắt buột phải có cho tất cả các hệ thống nhúng.
      • Phần mềm hệ thống:
        • Không bắt buộc phải có.
        • Device driver: UART, Ethernet, ADC…
        • Hệ điều hành nhúng: eCos, ucLinux, VxWorks, Monta Vista Linux, BIOS…
          •  Quản lý bộ nhớ, quản lý tiến trình, quản lý chia sẽ tài nguyên
          • Có thể tái sử dụng trên một hệ thống nhúng khác
      • Phần mềm ứng dụng
        • Không bắt buộc phải có.
        • Quyết định hành vi (chức năng) của một hệ thống nhúng.
        • Khó tái sử dụng trên một hệ thống nhúng khác.
  7. Thiết kế hệ thống nhúng: 
    Việc thiết kế hệ thống nhúng khá phức tạp và đòi hỏi người kỹ sư thiết kế phải có nhiều kinh nghiệm. Hầu hết các mô hình được sử dụng trong việc thiết kế hệ thống nhúng đều dựa trên một hoặc sự kết hợp nhiều mô hình trong các các mô hình phát triển sau:
    •   Mô hình big-bang: Không hề có một kế hoạch cụ thể trước và trong suốt quá trình phát triển hệ thống
    • Mô hình code-and-fix: Là một mô hình khá đơn giản, chỉ thích hợp cho các chương trình nhỏ  (không đòi hỏi việc bảo trì), không thích hợp với các hệ thống lớn, bao gồm 2 bước
      •  Viết code
      • Fix các vấn đề phát sinh
    •  Mô hình waterfall
      Trong mô hình này, quá trình phát triển hệ thống được xây dựng theo từng bước, các kết quả của một bước sẽ được sử dụng cho bước kế tiếp.
    •  Mô hình spiral
      Quá trình phát triển hệ thống được chia thành nhiều giai đoạn. Dựa trên sự phản hồi từ các giai đoạn, kết hợp trở lại vào quá trình để lên kế hoạch cho việc thực hiện giai đoạn tiếp theo.
Boban.
Giới thiệu hệ thống nhúng Reviewed by Boban on 12:37:00 AM Rating: 5

7 comments:

  1. Anh Bình em đang thưc hiện một đề tài về xử lý ảnh. Em đã thao tác cơ bản trên opencv. do là dân cơ khí nên em còn gặp nhiều vướng mắc. Hiện tại đề tài của em là phát hiện chuyển động, sau đó xác định được vị trí hay gốc và điều khiển robot hướng theo đối tượng, Sau đó có thể nhận dạng đối tượng. Do đó em đang cần một số tài liệu về nó, đặc biệt là các thuật toán + bộ lọc để giảm nhiểu( vì môi trường thường xuyên thay đổi). Anh co tài liệu hay địa chỉ tài liệu nào hay thì gửi cho em với. Ah em đang cần mua 1 board nhúng nữa, nhưng không biết nên mua cái nào, ở đâu, thông số ta sao? để có thể đáp ứng được yêu cầu như trên. Mong anh giúp đỡ. Thanks

    ReplyDelete
  2. - thứ nhất bài viết này ko phải của anh, sao em hỏi anh mà lại post vô đây ko sợ bà con buồn sao:)
    - về xử lý ảnh thì anh sẽ kiếm cho em một tài liệu về bộ xử lý ảnh của TI. và sẽ upload một số sách trong mục sách hay trong vài ngày tới. Hãy gởi email cho anh: binh.nguyen@sectic.com
    - về Board nhúng thì anh ko rành vì anh không chuyên phần cứng, anh cũng không phải dân điện tử :) anh chỉ lập trình, tối ưu và thiết kế hệ thống nhúng cho Smart IPNC thôi. Còn thì anh vẫn là dân computer science.

    ReplyDelete
  3. Chào Loc, với câu hỏi của em thì anh xin trả lời như sau:
    1. Tài liệu về xử lý ảnh: đống tài liệu của anh Bình có lẽ là đủ rồi :)
    2. Board nhúng: thực sự em hỏi câu này hơi khó vì anh không làm bên mảng robotics, phần nữa là thị trường board nhúng ở Việt Nam anh cũng không rành lắm vì hiện tại anh đang học tập ở Hàn Quốc. Em có thể tham khảo một số bộ kit tại website của BKIT HardwareClub bên đại học Bách Khoa TPHCM (http://bkit4u.com/forum/ - mục Robocon hoặc MCR). Ngoài ra còn có một số bộ kit khá nổi tiếng như LEGO Mindstorms($380 - http://mindstorms.lego.com/en-us/Default.aspx) hay ROBOTIS Bioloid($1199 - http://www.robotis.com/xe/bioloid_en)..., nhưng mấy bộ kit này không rẻ. Với đề tài của em thì anh nghĩ em nên chọn loại board nhúng có hỗ trợ module camera, Linux OS. Chúc em thành công.

    ReplyDelete
  4. Do em vừa đọc một số bài viết của anh Bình, nên khi qua đây em viết nhầm. Em xin lỗi anh "Boban" nha, ah mà em chưa biết tên của anh? hi. Em là dân cơ khí nhưng thích bên IT đặc biệt là xử lý ảnh,nên em đã chuyển hướng của đề tài nhưng không có người hướng dẫn về lĩnh vực này, em hy vọng sự giúp đỡ của các anh nhiều. Đây là mail của em "Vophuocloc89@gmail.com". Thanks! Về board nhúng nếu cần em có thể chuyển từ nước ngoài về. Em chỉ sợ nó chạy không nổi những ứng dụng này, và phải tự viết một số driver. Em đang xem về linux, em nghĩ với trình độ của em chỉ chỉnh sửa một số driver cho phù hợp thôi. ah, anh thấy board này thế nào http://beagleboard.org/hardware-xM ? tiếc cái là nó không có màn hình.

    ReplyDelete
  5. Anh tên Toàn, anh cũng vừa mới đọc qua bản đặc tả của BeagleBoard-xM, nói chung em này hơi bị ngon ^^, dư sức chạy cái đề tài của em.
    Cộng đồng nghiên cứu và hỗ trợ cũng khá lớn. Lúc mua thì nên lưu ý bộ công cụ phát triển kèm theo board nhé.
    Nhưng mà em làm đề tài mà không có người hướng dẫn là sao em?

    ReplyDelete
  6. Do em thuộc khoa cơ khí, về phần cơ khí robot em đã làm xong rồi. Còn phần điện tử em có thể điều khiển nó quay 360 độ và gốc nghiêng khoảng 45 độ.Đây là hình ảnh về Robot của em http://www.mediafire.com/?7auoyy7d2c4s80z .Mục tiêu tiếp theo của đề tài là phát hiện chuyển động và bám theo đối tượng, sau đó có thể làm thêm phần nhận dạng đối tượng. Do Thầy hướng dẫn em thuộc khoa cơ khí, không thuộc lĩnh vực này nên nhóm muốn phát triển theo hướng này phải tự bơi.Em muốn robot em vừa có thể giải trí vừa có chức năng an ninh, giám sát.hi. Em đã viết một vài chtrinh xử lý ảnh cơ bản nhưng chỉ trên máy tính và webcam(độ phân giải thấp, tốc độ hình/s nhỏ),giờ em đang cần tìm 1 camera siêu nhỏ để tích hợp vào robot và một board nhúng lập trình bằng linux có các giao tiếp qua rs232, usb, enthernet... Nhưng những cái này ở việt nam thì ít và kém chất lượng. Anh có biết ở đâu bán camera siêu nhỏ đầu ra usb để gắn vào board nhúng không? Còn phần xử lý ảnh em vừa đọc một số bài viết về câp nhật nền và trừ nền, bộ lọc kalman... nhưng cũng còn mơ hồ chưa suy nghĩ được thuật toán tối ưu để tracking và tránh nhiểu, và không biết opencv có những hàm cấu trúc gì để làm việc này. Vì không chuyên và tài liệu google thì nhiều(không biết nên đọc cái nào cho đỡ tốn thời gian) nên em còn nhiều thứ phải tự nghiên cứu, em mong các anh định hướng giúp em: trong các thuật toán detected object và tracking thì nên dùng phương pháp gì tối ưu, linux dùng phiên bản gì để ổn định và hổ trợ nhiều thư viện như window, tài liệu phần này trong opencv, tài liệu lập trình cho hệ thống nhúng... Có tài liệu gì hay thì gửi cho em nha (tiếng việt càng tốt)! Anh Bình chắc hơi bận nên em chưa nhận đươc tài liệu của anh ấy. Mong sự giúp đỡ của các anh. Thanks

    ReplyDelete
  7. 1. Camera siêu nhỏ: Em search trên google với từ khóa "usb camera module"
    2. Board nhúng: anh thấy con BeagleBoard-xM khá tốt (cần lưu ý là board này có cả ARM core và DSP core). Camera module cho board này em có thể tham khảo trong tài liệu đặc tả.
    3. Linux: Davinci Linux, Ubuntu(BeagleBoard-xM), ...tùy vào board có hỗ trợ hay không. Tất nhiên, số lượng thư viện hỗ trợ của các Embeded OS thấp hơn nhiều so với Windows.

    ReplyDelete

chia sẻ cho chúng tôi ý tưởng hay khó khăn của bạn ...

All Rights Reserved by IEEV © 2009 - 2016
Powered By Blogger, Designed by Sweetheme

Contact Form

Name

Email *

Message *

Powered by Blogger.