Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Lập trình hệ thống nhúng với raspberry
PREMIUM
Số trang
465
Kích thước
17.5 MB
Định dạng
PDF
Lượt xem
857

Lập trình hệ thống nhúng với raspberry

Nội dung xem thử

Mô tả chi tiết

\ ,

TS. NGUYỄN TẤT BẢO THIỆN

KS. PHẠM QUANG HUY

LẬP TRÌNH

HỆ THÔNG NHÚNG

V0IRASPBERRY

í TRUỜNG f)ẠỈ HỌC QUY NHéK

1__ THƯ ■ IỆN 2

VVf> -\4Ế G 4____

NHÀ XUẤT BẢN THANH NIÊN

GI0I THIỆU LẬP TRÌNH HỆ THỐNG NHÚNG V 0I RASPBERRY

TÁI LIẸU THAM KHÁO

1. LẬP TRÌNH I0T vtil ARDUINO, ESP8266 & XBEE

TS. Nguyễn Tất Bảo Thiện - KS. Phạm Quang Huy

Nhà xuất bản Thanh Niên-2018

2. LẬP TRÌNH HIỂU KHIỂN vứl RASPBERRY

TS. Võ Minh Huân - KS. Phạm Quang Huy

Nhà xuất bản Thanh Niên-2017

3. LẬP TRÌNH I0T V0IARDUINO

TS. Lê Mỹ Hà - KS. Phạm Quang Huy

Nhà xuất bản Thanh Niên-2017

4. HƯÚ NG DẪN SỬ DỤNG ARDUINO

PGS TS.Trương Đình Nhơn - KS. Phạm Quang Huy

Nhà xuất bản Thanh Niên-2017

5. RASPBERRY PI COOKBOOK

Dr. Simon Monk

Nhà xuất bản O’Reilly (Second Edition-2016)

6. TEACH YOORSELF VISUALLY RASPBERRY PI

Richard Wentk

Nhà xuất bản Visual (A Wiley Brand)

7. 6IẢ0 TRÌNH BO LƯ0NG CẢM BIẾN

PGS TS. Lê Chi Kiên

Nhà xuất bản Đại học Quốc gia TP.RCM-2013

8. CÁC TRAN6 WEB

https://learn.adafruit.com

https://circuitdigest.com

https://www.electronicshub.org

https://www.instructables.com

https://www.sparkfun.com

2

LẬP TRÌNH BỆ THếHS HHÚHC vứl RASPBERRY Glứl TRIỆU SÁCH

GIỚI THIỆU SÁCH

Hệ thống nhúng là môn học chuyên ngành tại nhiều trường

đại học kỹ thuật. Tại các trường, hai bo mạch được các sinh viên

sử dụng nhiều nhất trong thiết kế hệ thống nhúng là Ardulno và

Raspberry. Với hàng triệu người dùng và liên tục cho ra mô hlnh

mớl bo mạch Raspberry PI tiếp tục mở rộng và phát triển. Sau

lần biên soạn chuyên đệ “Lập trinh diều khiển vdl Raspberry

trong họ sách "Hướng dân sử dụng Raspberry" vào năm 2017

ỉ ỉ p 2 !ấ ch " ày “Lập tr,nh h * «hổng nhúng VỚI Raspberry'1

trinh bày vđinhlềưnộị dung mtìl giúp bạn đọc thực hành lập trinh

để kết nối các cảm biến và các phẩn cứng khác bằng Python cho

chiếc máy tính giá rẻ này trên Windows

‘ Lập trình hệ thống nhúng với Raspberry” là cuốn sách ứng

?í>nfl.tr! ĩ h b?y việc ứng dụng RasPberry trong lĩnh vực đo lường điều khiến các đại lượng vật lý (đại lượng không điện) thường gặp

trong công nghiệp qua các bài tập. Cac cảm biến là linh kiên

không thê thiêu trong một hệ thống nhúng. Trong công nghiệp

các bộ cảm biến đóng vai trò quan trọng trong lĩnh vực đo lường'

giám sát, điều khiển. Chúng là những thành phần phải ke đến

đầu tiên và không thể thiếu trong các quá trình đieu khien tư

động, cảm biến có nhiệm vụ thu thập dữ liệu, cảm nhận do đac

và phát hiện các kích thích rồi truyền tín hiệu về bộ điều khiển

Có thể nói, các bộ cảm biến trong hệ thống điểu khiển tự động

đóng vai trò quan trọng giống như các giác quan của con người.

Do có rất nhiều lĩnh vực khác nhau trong công nghiệp như

hóa học, nhiệt học, cơ học, điện học, quang học, vật lý ban dan

điện tử, hạt nhân... nên trong phẹ n vi một cuốn sách hướng dân’

sử dụng Raspberry cơ bản không thể trình bày các bài tập cho

mọi vấn đề về các lĩnh vực này. Vì thế ở đây, tác giả chỉ trình bay

những ứng dụng của Raspberry với các bài tập cơ bản, cảm biến

được sử dụng trong các bài tập là những loại thông dụng, rất dễ

mua và rẻ tại các cửa hàng điện tử.

3

Blứl TIIỆO SÁCH LẬP H i m HỆ THỜH6 HHÜH6 VƠI RASPBERRY

Sách được biên soạn cho người mới bắt đầu làm quen với

Raspberry qua các bài tập thực hành từ cơ bản đến nâng cao,

qua đó giúp bạn đọc sử dụng các công nghệ mới với Raspberry

Pi cả về phần cứng và phần mềm đã và dang tiếp tục phát

triển. Sách giúp cho các lập trình viên và những người yêu thích

điện tử trong một thời gian ngắn có thể làm quen với bo mạch

Raspberry Pi đầy quyển năng này. Các tác giả hy vọng qua

quyển sách này, bo mạch Raspberry sẽ được phổ biến rộng rãi

hơn nữa. Có nhiều người hơn nhất là các giáo viên bắt đầu đưa

vào giảng dạy và ứng dụng nó vào môn học của mình. Chắc chắn

sẽ có nhiều người sử dụng bo mạch Raspberry để lập trình tạo

các sản phẩm rất thực tế trong sản xuất cũng như đưa vào giảng

dạy góp phần đổi mới việc dạy và học.

Do tài liệu này hướng dẫn bạn đọc sử dụng Raspberry

(phần cơ bản) nên sách chỉ giới thiệu những nội dung sau:

• Cài đặt Raspberry trên nhiều hệ điều hành khác nhau.

• Làm việc với hệ điều hành phổ biến (Windows).

• Tìm hiểu và so sánh hai bo mạch Arduino và Raspberry￾Lĩnh vực sử dụng.

• Giới thiệu mạng truyền thông-Thlết lập Raspberry Pi của

bạn và kết nối với mạng.

• Lập trình Raspberry Pi với Python.

• Kiểm soát phần cứng thông qua đầu nối GPIO.

• Làm việc với các ngõ vào (Công tẳc, bàn phím và các

đầu vào số khác). Điều khiển ngõ ra theo yêu cầu với đầu

vào là các cảm biến nhiệt độ, áp suất, độ ẩm, quang trở,

siêu âm...

• Làm việc với các màn hình ngõ ra (Led đơn, Led 7 đoạn,

LCD, màn hình Oled, Led ma trận).

• Sử dụng cảm biến để đo và khống chế nhiệt độ, độ ẩm,

ánh sáng, khoảng cách, áp suất, gas và nhiều hơn nữa.

• Nhiều ứng dụng khác nữa ...

LẬP THÍNH MỆ THỐHB NHÚN6 vứl BASPBEBBY 6IỬI THIỆU SÁCH

Tương ứng với từng bài tập trong các nội dung trên nên có

mã (code) chương trình với những giải thích giúp người học dễ

theo dõi

NỘI DUNG SÁCH

Nội dung sách gồm 15 chương.

CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG NHÚNG

CHƯƠNG 2: GIỚI THIỆU CÁC LOẠI MÁY TÍNH ĐƠN GIẢN VÀ RASPBERRY Pl

CHƯƠNG 3: CÀI ĐẶT CHO RASPBERRY

CHƯƠNG 4: GIỚI THIỆU PYTHON

CHƯƠNG 5: CÁC DANH SÁCH VÀ TỪĐlỂN PYTHON

CHƯƠNG 6: TRUYỀN THÔNG

CHƯƠNG 7: CÁC LOẠI CẢM BIẾN TRÊN THỊ TRƯỜNG

CHƯƠNG 8: KHÁI QUÁT VỀ PHẦN CỨNG

8.0. Giới thiệu.

8.1. Xác định các chân GPIO trên cổng kết nối.

8.2. Đảm bảo an toàn khi sừ dụng các chân GPIO.

8.3. Thiết lập I2C.

8.4. Sử dụng các công cụ I2C.

8.5. Thiết lập SPI.

8.6. Cài đặt PySerial để truy xuất cổng nối tiếp từ Python.

8.7. Cài đặt Minicom để thử nghiệm cổng nối tiếp.

8.8. Sử dụng testboard với các dây nối.'

8.9. Sử dụng testboard với Pi Cobbler.

8.10. Sử dụng Raspberry Squid Button.

8.11. Sử dụng nút Raspberry Squid.

8.12. Chuyển đổi tín hiệu 5 V thành 3.3 V bằng hai điện trở.

8.13. Chuyển đổi tín hiệu 5 V mành 3.3 V bằng mô-đun chuyển

đổi mức tín hiệu.

8.14. Cấp nguồn cho Raspberry Pi bằng pin.

8.15. Cấp nguồn cho Raspberry Pi bằng pin LiPo.

8.16. Làm quen với Sense HAT.

8.17. Làm quen với HAT Pro.

8.18. Làm quen với bo RaspiRobot.

8.19. Sử dụng bo thử nghiệm Pi Plate.

8.20. Gắn phần cứng lên trên HAT (Hardware At Top).

8.21. Sử dụng mô đun Pi Compute.

8.22. Pi Zero. ,

CHƯƠNG 9: ĐIỀU KHIEN p h ầ n cứ ng

9.0. Giới thiệu.

9.1. Kết nối với 1 LED đơn.

9.2. Đảm bảo an toàn cho các chân GPIO.

9.3. Điều khiển độ sáng của LED.

9.4. Ráp mạch phát âm thanh.

9.5. Đóng ngắt thiết bị DC sử dụng Transistor.

9.6. Đóng ngắt thiết bị công suất lớn sử dụng Rơ le.

9.7. Điều khiển các thiết bị AC hoạt động với điện áp cao.

9.8. Ráp mạch sử dụng giao diện điều khiển để bật/tắt thiết bị.

9.9. Ráp mạch kết nối để điều khiển công suất của LED và động

cơ bằng tín hiệu PWM.

9.10. Điểu khiển màu sắc của LED RGB.

9.11. Mạch điều khiển nhiều LED (Charlieplexĩng).

9.12. Hiển thị tín hiệu bằng vôn kê Analog

9.13. Lập trình với các sự kiện ngắt.

CHƯƠNG 10: HIỂN THỊ

10.0. Giới thiệu.

10.1. Sử dụng LED hiển thị bốn chữ số.

10.2. Hiển thị thông điệp trên Led ma trận bằng giao tiếp I2C.

10.3. Sử dụng màn hình ma trận LED Sense HAT.

10.4. Hiển thị thông điệp trên một HAT LCD kiểu chữ số.

I

LẬP n in m IỆ THÙNG NHÜH6 vửl BASPBEBBY 6IỠI THIỆU SÀCH

10.5. Hiển thị thông điệp lên một mô-đun LCD kiểu chữ số.

10.6. Sử dụng màn hình đồ họa OLED.

10.7. Sử dụng dây LED RGB có thể gán địa chỉ. .

CHƯƠNG 11 CẢM BIẾN

11.0. Giới thiệu.

11.1. Sử dụng các cảm biến Resistive.

11.2. Đo ánh sáng.

11.3. Đo nhiệt độ bằng nhiệt trở.

11.4. Xác định khí métan.

11.5. Đo điện áp.

11.6. Mạch giảm áp dùng để đo điện áp.

11.7. Sử dụng các cảm biến có tính trỏ với ADC.

11.8. Đo nhiệt độ với bộ biến đổi ADC.

11.9. Đo nhiệt độ CPU của Raspberry Pi.

11.10.00 nhiệt độ, độ ẩm, áp suất với Sense HAT.

11.11 .Đo nhiệt độ sử dụng cảm biến Digital.

11.12.Đo gia tốc với mô-đun MCP3008.

11.13.Sử dụng đơn vị quản lý quán tính IMU của Sense HAT.

11.14. Xác định cực từ Bắc bằng Sense HAT.

11.15. Phát hiện nam châm bằng công tắc lưỡi gà.

11.16. Phát hiện nam châm bằng Sense HAT.

11.17. Đo khoảng cách.

11.18. Cảm biến chạm diện dung.

11.19. Hiển thị các giá trị từ cảm biến.

11.20. Ghi chép dữ liệu vào ổ đĩa Flash USB.

CHƯƠNG 12: RASPBERRY VÀ CẢM BIỂN HỒNG NGOẠI

CHƯƠNG 13: RASPBERRY VÀ CẢM BIÊN NHIỆT ĐỘ-ĐỘẨM

CHƯƠNG 14: RASPBERRY VÀ CẢM BIẾN SIÊU ÂM

CHƯƠNG 15: RASPBERRY VÀ CẢM BIỂN DỊCH CHUYÊN PIR

Một số điểm cẩn lưu ý khi sử dụng sách:

• Tài liệu biên soạn trên Raspberry chạy trên nền Windows,

nếu máy tính các bạn dùng hệ điều hành Linus hay Mac vẫn

có thể thực hành các bài tập trong sách mà không ảnh

hưởng nhiều đến việc thực hành (tham khảo thêm trong

trang web https://www.raspberrypi.org).

• Cấc file thực hành trong sách cũng như các file thực hành

khác bạn đọc'CÓ thể tải về theo một trong đường dẫn sau:

http://www.mediafire.com/folder/7h61oi8uzzcd3/FILE_

THUC_HANH_RASPBERRY

http://www.mediafire.com/file/iz4bpria4496mi7/LAP_

TRINH_HE_THONG_NHUNG VOLRASPBERRY-TH.

rar/file

• Bo mạch Raspberry sử dụng trong sách là Raspberry B++,

người học vẫn có thể dùng các bo mạch Raspberry khác để

thực hành (cần lưu ý khai báo bo mạch tương ứng trong

phần mềm và các chân kết nối trong phần cứng chính xác).

Trong quá trình biên soạn không thể tránh khỏi thiếu sót,

chúng tôi mong được các bạn đọc góp ý, trao đổi để nội dung

biên soạn ngày càng tốt hơn. Hy vọng các bạn sẽ nhanh chóng

khai thác có hiệu quả Raspberry trong công việc của mình.

Mọi thắc mắc, góp ý xin gửi về địa chỉ sau:

KS PHẠM QUANG HUY

s (08) 38334168 - 0903728344

Email: huypq (ghcmute.edu.vn

Rất mong nhận được nhiều ý kiến đóng góp, thông tin phản

hồi từ các bạn đọc rất quan trọng. Với các thông tin phản hồi, sách

sẽ được hoàn thiện hơn trong những lần tái bản sau. Để khai thác

và sử dụng sâu hơn các ứng dụng với Raspberry bạn có thể xem

và thực hành các tập tiếp theo cũng do tủ sách STK biên soạn.

TP HCM 25-4-2019

Các tác giả

IẬ P TRÌNH HỆ TBỜH8NHÚH6 vửl HASPBERBY CHƯƠBI61: TỔN6 qUAH tfẼ BỆ Tgfins NHÚNG

CltftiNG1

TONG QUAN VẼ HỆ THONG NHUNG

Trước khi thực hành lập trình hệ thống nhúng chúng ta sẽ

tìm hiểu những phần sau để hiểu rõ hơn những gì sẽ thực hiện

trong các chương kế tiếp.

1. TỔNG QUAN VỀ HỆ THỐNG NHÚNG.

2. TỔNG QUAN VỀ ARDUINO.

3. ARDUINO VÀ RASPBERRY.

1. TỔNG QUAN VẾ HỆ THỐNG NHÚNG

Hệ thống nhúng là môn học đã và đang được giảng dạy tại

nhiều bộ môn chuyên ngành Điện tử, Điện tử công nghiệp, Tự

động hóa, Viễn thông... Nhiều sinh viên và thậm chí giáo viên còn

mơ hổ chưa hiểu rõ hệ thống nhúng là gì. Nếu dùng các công cụ

dò tìm trên mạng như Yahoo, Google... cho các từ khóa như “Hệ

thống nhúng”, “Embedded System” bạn sẽ tìm được rất nhiều bài

báo, Ebook, giáo trình cả tiếng Anh lẫn tiếng Việt nói về chủ đề

này và có cả những định nghĩa sẽ làm bạn rối rắm hơn nữa. Phần

trình bày sau giải thích bạn đọc thuật ngữ này theo cách gián tiếp

nhưng các tác giả nghĩ rằng bạn sẽ hình dung được thuật ngữ này.

Một trong những mục tiêu mà người'học Điện-Điện tử, Cơ

Điện tử cần phải thực hiện là điều khiển, tự động hóa một quá trình

nào đó trong dân dụng cũng như công nghiệp, tùy vào thời điểm

mà các linh kiện sử dụng khác nhau. Vào những năm 1975-1985

linh' kiện sử dụng chủ yếu là Op-Amp, các mạch số và linh kiện

điện tử công suất. Từ những năm 1985-1995 tại Việt Nam đã bắt

dầu sử dụng vi xử lý, vi điều khlểr. trong thiết kế. Máy tính đã được

sử dụng trong điều khiển nhiều lĩnh vực khác nhau.

Một hệ thống máy tính tất nhiên sẽ có đầy đủ những thiết bị

theo sau tạo một hệ thống hoàn chỉnh như Vi xử lý, ROM, RAM,

chuột, bàn phím, màn hình...

CHƯdHB 1: TÓN6IỊIIAH VẼ HỆ THÙN8 NHÚH6 LẬP T llH I HỆ TMỐH6 NHÚN6 vửl BASPBERBY

Với máy tính ta có thể điều khiển rất nhiều đối tượng khác

nhau, đây cũng là một hệ thống kinh điển mà các kỹ sư khi ra

trường cần thực hiện. Tùy theo người thiết kế dùng vi xử lý hay vi

điều khiển nào (phần cứng) sẽ có các chương trình tương ứng

(phần mềm) để lập trình cho vi xử lý đó. Trong thực tế, rất nhiều hệ

thống điểu khiển không cần phải dùng tới máy tính điều khiển vì sẽ

phải dùng nhiều thiết bị cồng kềnh (bàn phím, chuột...), các tập

lệnh có dung lượng nhỏ không cần phải dùng nhiều bộ nhớ (ROM,

RAM...), bộ vi xử lý hay vi điểu khiển không cần quá nhanh cũng

như xử lý quá nhiều dữ liệu, dùng màn hình không cần lớn. Một số

thiết bị điều khiển trong dân dụng mà ta sử dụng hàng ngày như:

Điều khiển máy lạnh, máy giặt thậm chí là nồi cơm điện

cũng đã được các hãng sản xuất tích hợp vào trong một thiết bị

(remote) thông qua vài nút nhấn có thể điều khiển thiết bị theo yêu

cầu đề ra như đặt nhiệt độ, độ ẩm, hẹn giờ, chuyển kênh... không

cần phải dùng tới hệ thống máy tính để điều khiển. Sự phát triển

nhanh công nghệ ô tô dẫn đến việc phát triển mạnh hệ thống này.

Một hệ thống như vậy chính là hệ thống nhúng. Khái niệm thiết bị

thông minh, tủ lạnh thông minh, tivi thông minh... được sử dụng

rộng rãi trong thế giới công nghệ ngày nay. Các bạn có thể điều

khiển một chiếc tivi bằng điều hướng bàn tay, giọng nói,... bằng

công nghệ smart tivi, máy lạnh tự động điều chỉnh nhiệt độ theo

thời tiết,... hay như xe ô tô tích hợp chức năng chống sốc tự động,

tự động báo cho người sử dụng khi lốp xe bị xẹp hay báo trước

khi có vật cản phía trước trong khoảng bao nhtêu mét chẳng hạn.

Ví dụ đơn giản như sau: Chiếc máy lạnh hay tủ lạnh thông

thường của bạn không được kết nối với thiết bị nào khác. Nếu muốn

ghi lại nhiệt độ ở từng thời điểm, chúng ta chỉ có cách ghi lại thủ

công rồi nhập vào một máy tính hay thiết bị lưu trữ nào đó để xử lý

sau này. Hay như bóng đèn ò nhà, phân xưởng hay một đoạn đường

chẳng hạn, chúng ta muốn thu thập, điều chỉnh độ sáng của nó thì

phải đo thủ công rồi ghi lại. Trong khi dó máy tính có khả năng giúp

con người thu thập tất cả những dữ liệu về mọi thứ xung quanh.

I I

LẬP TRÌNH HỆ THỦNG HHÚN6 vứl BASPBERRV CHƯƠHB1: TÕN6 QUAH «Ẽ HỆ THỐH8 N8ÚN6

Chúng ta có thể theo dõi và đếm mọi thứ, giúp giảm hao phí

và chi phí sản xuất. Chúng ta sẽ biết chính xác khi nào các vật dụng

cần phải sửa chữa, thay thế, khi nào chúng còn mới-và khi nào thì

chúng hết hạn sử dụng. Hay như một hệ thống tưới nước tự động

cây cối trong gia đình, bạn cần được tích hợp công nghệ IOT. Hệ

thống này giúp bạn điều khiển qui trình chăm sóc, tưới nước cho

cây, thậm chí là bắt sâu bọ,... Khi bạn có chuyến đi công tác xa vài

ngày hay vài tháng mà không thể thực hiện được các chức năng đó.

Điều này sẽ trở nên rất đơn giản khi hệ thống tưới cây tự động và

điện thoại hoặc laptop, PC,.. của bạn được kết nối vào mạng lưới

Internet và qua đó có thể trao đổi thông tin cũng như thực thi các

câu lệnh mà bạn mong muốn. Nhưng để lập trình IOT trước tiên bạn

cần phải lập trình hệ thống nhúng cho yêu cầu trên.

Điều đó thật mới mẻ và tiện dụng phải không nào? Chúng

ta có thể tiết kiệm được rất nhiều thời gian cũng như tránh gặp

phải những trường hợp khó khăn khi không làm chủ và quản lý

được tất cả mọi vật xung quanh ta. Chưa kể đến việc chúng ta có

thể kiểm soát chúng mọi lúc mọi nơi. loT có tiềm năng thay dổi

thế giới, giống như cách mà Internet đã thay đổi cuộc sống của

chúng ta. Thậm chí là ngôi nhà - nơi chúng ta đang sống cũng

đang tiến tới thiết kế là ngôi nhà thông minh với rất nhiều ứng

dụng công nghệ hiện đại. Ngôi nhà thông minh với các bóng đèn

thông minh, máy giặt thông minh, tủ lạnh thông minh,... có thể

xem là bước đầu của loT bởi chúng đều được liên kết với nhau

và/hoặc liên kết vào Internet. Rất và rất nhiều những ứng dụng

trong Internet Of Things (IOT) đã được các công ty công nghệ

khai thác vấn đề này. Chúng ta sẽ tìm hiểu nhiều hơn nữa IOT

qua chuyên đề tiếp theo cũng do tủ sách STK biên soạn:

“LẬP TRÌNH IOT VỚI ARDUirO VÀ RASPBERRY”

ĐỊNH NGHĨA

Hệ thống nhúng (Embedded System) là một thuật ngữ để

chỉ một hệ thống có khả năng tự trị được nhúng vào trong một

môi trường hay một hệ thống mẹ.

11

ĐÓ là các hệ thống tích hợp cả phần cứng và phần mềm

phục vụ 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 tin. Đặc điểm

của các hệ thống nhúng là hoạt động ổn định và có tính năng tự

động hóa cao.Hệ thống nhúng thường được thiết kế để thực hiện

một chức năng chuyên biệt nào đó.

Khác với các máy tính đa chức năng, chẳng hạn như máy

tính cá nhân, một hệ thống nhúng chỉ thực hiện một hoặc một vài

chức năng nhất định, thường đi kèm với những yêu cầu cụ thể và

bao gồm một số thiết bị máy móc và phần cứng chuyên dụng mà

ta không tìm thấy trong một máy tính đa năng nói chung. Vì hệ

thống chỉ được xây dựng cho một số nhiệm vụ nhất định nên các

nhà thiết kế có thể tối Ưu hóa nó nhằm giảm thiểu kích thước và

chi phí sản xuất. Các hệ thống nhúng thường được sản xuất hàng

loạt với số lượng lớn. Hệ thống nhúng rất đa dạng, phong phú về

chủng loại. Đó có thể là những thiết bị cầm tay nhỏ gọn như đồng

hồ kĩ thuật số và máy chơi nhạc MP3, hoặc những sản phẩm lớn

như đèn giao thông, bộ kiểm soát trong nhà máy hoặc hệ thống

kiểm soát các máy năng lượng hạt nhân. Xét về độ phức tạp, hệ

thống nhúng có thể rất đơn giản với một vi điều khiển hoặc rất

phức tạp với nhiều đơn vị, các thiết bị ngoại vi và mạng lưới được

nằm gọn trong một lớp vỏ máy lớn.

Các thiết bị PDA hoặc máy tính cầm tay cũng có một số

đặc điểm tương tự với hệ thống nhúng như các hệ điều hành hoặc

vi xử lý điều khiển chúng nhưng các thiết bị này không phải là hệ

thống nhúng thật sự bởi chúng là các thiết bị đa năng, cho phép

sử dụng nhiều ứng dụng và kết nối đến nhiều thiết bị ngoại vi.

LỊCH SỬ

Hệ thống nhúng đầu tiên là Apollo Guidance Computer

(Máy tính Dần đường Apollo) được phát triển bởi Charles stark

Draper tại phòng thí nghiệm của trường đại học MIT. Hệ thống

nhúng được sản xuất hàng loạt đầu tiên là máy hướng dẫn cho

tên lửa quân sự vào năm 1961.

cirn m s 1: TÓH6 QUAN VẼ UỆ THỒW6 HHÚHẼ_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ LẬP TBÌm HỆ THÙHB HHÚN6 VỜI RA8PBERRY

1 Ỉ

LẬP THÌNH HỆ THỐHB HHÙHB VƠI RASPBERRY CHƯđme 1: TỔH6 QUAN VẼ HỆ THÛN6 HHÛW6

NÓ là máy hướng dẫn Autonetics D-17, được xây dựng sử

dụng những bóng bán dẫn và một đĩa cứng để duy trì bộ nhớ. Khi

Minuteman II được đưa vào sản xuất năm 1996, D-17 đã được

thay thế với một máy tính mới sử dụng mạch tích hợp. Tính năng

thiết kế chủ yếu của máy tính Minuteman là nó đưa ra thuật toán

có thể lập trình lại sau đó để làm cho tên lửa chính xác hơn, và

máy tính có thể kiểm tra tên lửa, giảm trọng lượng của cáp điện

và đầu nối điện.

Từ những ứng dụng đầu tiên vào những năm 1960, các hệ

thống nhúng đã giảm giá và phát triển mạnh mẽ về khả năng xử

lý. Bộ vi xử lý đầu tiên hướng đến người tiêu dùng là Intel 4004,

được phát minh phục vụ máy tính điện tử và những hệ thống nhỏ

khác. Tuy nhiên nó vẫn cần các chip nhớ ngoài và những hỗ trợ

khác. Vào những năm cuối 1970, những bộ vi xử lý 8 bit đã được

sản xuất, nhưng nhìn chung chúng vẫn cần đến những chip nhớ

bên ngoài.

Vào giữa thập niên 80, kỹ thuật mạch tích hợp đã đạt trình

độ cao dẫn đến nhiều thành phần có thể đưa vào một chip xử lý.

Các bộ vi xử lý được gọi là các vi điều khiển và được chấp nhận

rộng rãi. Với giá cả thấp, các vi điều khiển đã trở nên rất hấp dẫn

để xây dựng các hệ thống chuyên dụng. Đã có một sự bùng nổ

về số lượng các hệ thống nhúng trong tất cả các lĩnh vực thị

trường và số các nhà đầu tư sản xuất theo-hướng nảy. Ví dụ, rất

nhiều chip xử lý đặc biệt xuất hiện với nhiều giao diện lập trình

hơn là kiểu song song truyền thống để kết nối các vi xử lý. Vào

cuối những năm 80, các hệ thống nhúng đã trở nên phổ biến

trong hầu hết các thiết bị điện tử và khuynh hướng này vẫn còn

tiếp tục cho đến nay.

Cho đến nay, khái niệm hệ thống nhúng được nhiều người

chấp nhận nhất là:

Hệ thống thực hiện một số chức năng đặc biệt có sử

dụng vi xử lý, vi điều khiển. Không có hệ thống nhúng nào chỉ có

phần mềm.

C Ư Ơ H 61: TỔN6 QIIAH «Ẽ HỆ TIỔ N 6 HHUWG LẬP TBHB HỆ THỒN6 HHÚHB vứl RASPBERRY

Như tên của nó cho thấy, nhúng có nghĩa là cái gì đó gắn

lên với một thứ khác. Một hệ thống nhúng có thể được coi là một

hệ thống phần cứng máy tính có phần mềm nhúng vào nó. Một

hệ thống nhúng có thể là một hệ thống độc lập hoặc nó có thể là

một phần của một hệ thống lớn. Một hệ thống nhúng là một vi

điều khiển hoặc vi xử lý dựa trên hệ thống được thiết kế để thực

hiện một nhiệm vụ cụ thể. Ví dụ: Báo động cháy là một hệ thống

nhúng, nó sẽ chỉ cảm nhận khói.

ĐẶC ĐIỂM CỦA MỘT HỆ THỐNG NHÚNG

Hệ thống nhúng thường có một số đặc điểm chung

như sau:

• Các hệ thống nhúng được thiết kế để thực hiện một số

nhiệm vụ chuyên dụng chứ không phải đóng vai trò là các

hệ thống máy tính da chức năng. Một số hệ thống đòi hỏi

ràng buộc về tính hoạt động thời gian thực để đảm bảo độ

an toàn và tính ứng dụng. Một số hệ thống không đòi hỏi

hoặc ràng buộc chặt chẽ, cho phép đơn giản hóa hệ thống

phần cứng để giảm thiểu chi phí sản xuất.

• Một hệ thống nhúng thường không phải là một khối riêng

biệt mà là một hệ thống phức tạp nằm trong thiết bị mà nó

điều khiển.

• Phần mềm được viết cho các hệ thống nhúng được gọi là

firmware và được lưu trữ trong các chip bộ nhớ ROM hoặc

bộ nhớ Flash chứ không phải là trong một ổ đĩa. Phần

mềm thường chạy với sô' tài nguyên phần cứng hạn chế:

Không có bàn phím, màn hình hoặc có nhưng với kích

thước nhỏ, dung lượng bộ nhớ thấp.

Sau đây, ta sẽ đi sâu, xem xét cụ thể đặc điểm của các

thành phần của hệ thống nhúng.

• Giao diện - Các hệ thống nhúng có thể không có giao diện

(đối với những hệ thống đơn nhiệm) hoặc có đầy đủ giao

diện giao tiếp với người dùng tương tự như các hệ điều

hành trong các thiết bị để bàn.

Tải ngay đi em, còn do dự, trời tối mất!