1. Trang chủ
  2. » Luận Văn - Báo Cáo

ứng dụng của hệ thống thời gian thực

24 169 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 24
Dung lượng 415,61 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ứng dụng của hệ thống thời gian thực

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ VIỄN THÔNG

BÁO CÁO MÔN CÁC HỆ THỐNG THỜI GIAN THỰC

ĐỀ TÀI: ỨNG DỤNG CỦA HỆ THỐNG THỜI GIAN

THỰC

Học viên:

Lớp: 17A KT Điện Tử

Giảng viên: PGS.TS Đỗ Trọng Tuấn

Hà Nội 05-2018

Trang 2

LỜI CẢM ƠN

Em xin gửi đến PGS.TS.Đỗ Trọng Tuấn, người đã tận tình hướng dẫn, giúp đỡ em hoànthành báo cáo môn các hệ thống thời gian thực lời cảm ơn sâu sắc nhất Em cảm ơn thầy đã tạođiều kiện thuận lợi cho em được tìm hiểu những kiến thức bổ ích về môn học thông qua các bàibáo và các tài liệu thầy cung cấp cho em để hoàn thành tốt báo cáo môn học này

Trong quá trình làm báo cáo môn học em nhận ra nhiều điều mới, có thêm nhiều kiếnthức bổ ích từ môn học để có thể áp dụng vào công việc thực tế của bản thân em nói riêng cũngnhư toàn thành viên tham gia môn học

Vì kiến thức bản thân còn hạn chế, trong quá trình hoàn thiện báo cáo này em khôngtránh khỏi những sai sót, kính mong nhận được những ý kiến đóng góp từ thầy Em xin chânthành cảm ơn

Trang 3

M C L C ỤC LỤC ỤC LỤC

I TỔNG QUAN VỀ HỆ THỜI GIAN THỰC 3

1 Khái niệm về hệ thời gian thực 3

2 Phân loại hệ thời gian thực 4

2.1 Hệ thời gian thực cứng 5

2.2 Hệ thời gian thực mềm 6

3 Đặc điểm của hệ thời gian thực 6

4 Cấu trúc thành phần của một hệ thời gian thực 6

5 Xử lý thời gian thực 8

5.1 Xử lý ngắt 10

5.2 Quản lý tiến trình 12

II MỘT SỐ ỨNG DỤNG TIÊU BIỂU CỦA HỆ THỐNG THỜI GIAN THỰC 14

1 Điều khiển tín hiệu số 14

2 Điều khiển mức cao 15

2.1 Các ví dụ về phân cấp điều khiển 15

2.2 Hướng dẫn và kiểm soát 17

3 Điều khiển lệnh 18

4 Xử lý tín hiệu 19

4.1 Hệ thống radar 19

Trang 4

I TỔNG QUAN VỀ HỆ THỜI GIAN THỰC

1 Khái niệm về hệ thời gian thực

Hầu hết các bộ xử lý được dùng để điều khiển các máy tính cá nhân đơn giản cho đếntoàn bộ các hệ thống máy móc trong các nhà máy Những hệ thống này tương tác trực tiếpvới các thiết bị phần cứng Phần mềm trong những hệ thống này được gọi là hệ thời gianthực nhúng (Embedded Real Time System) Nó thực hiện các xử lý để đáp ứng lại với các sựkiện phát sinh từ các phần cứng bằng cách tạo ra các tín hiệu điều khiển gửi đến các thiết bịphần cứng nhằm đáp ứng những sự kiện của môi trường Những phần mềm này được nhúngvào trong hệ thống phần cứng hay hệ thống lớn hơn và phải sản ra các tín hiệu điều khiểntrong khoảng thời gian thực xác định để đáp ứng được các sự kiện phát sinh từ môi trườngcủa hệ thống

Như vậy, một hệ thời gian thực là một hệ thống mà hoạt động hiệu quả của nó khôngchỉ phụ thuộc vào sự chính xác của kết quả tạo ra mà còn phụ thuộc vào thời điểm đưa ra kếtquả Hệ thống sẽ là thất bại mỗi khi các yêu cầu về thời gian và mức độ đáp ứng không đượcthoả mãn Hình 1.1 mô tả mức độ đáp ứng kịp thời của hệ thống theo bốn yêu cầu khác nhau

Hình 1.1: Các mức đáp ứng sự kiện về mặt thời gianCác hệ thời gian thực khác với các phần mềm khác là những chức năng đáp ứng của

hệ thống đối với các sự kiện của môi trường trong một khoảng thời gian nhất định (thường là

Trang 5

khoảng thời gian ngắn) Do vậy người ta định nghĩa hệ thời gian thực (Real Time System RTS) như sau:

-Một hệ thời gian thực là một hệ thống mà trong đó tính đúng đắn của nó không chỉphụ thuộc vào các kết quả logic được tạo ra mà còn phụ thuộc vào thời điểm mà tại đó cáckết quả được đưa ra

Nhiều thay đổi của các sự kiện trong thế giới thực thường xảy ra rất nhanh, mỗi hệthống thời gian thực giám sát các sự kiện này phải thực hiện việc xử lý và đưa ra kết quảtrong một khoảng thời gian bắt buộc gọi là một hạn định hay thời điểm kết thúc (deadline).Khoảng thời gian này được xác định từ thời gian bắt đầu và thời gian hoàn tất công việc.Trong thực tế, nhiều yếu tố kích thích xảy ra trong khoảng thời gian rất ngắn, ví dụ vàokhoảng vài mili giây, và khi đó thời gian mà hệ thống cần đáp ứng lại các yếu tố kích thíchthường vào khoảng dưới 1 giây mới đảm bảo được yêu cầu mong muốn Khoảng thời giannày bao gồm: thời gian tiếp nhận kích thích, thời gian xử lý thông tin và thời gian hồi đápkích thích

2 Phân loại hệ thời gian thực

Hệ thời gian thực được chia thành hai loại, hệ thời gian thực cứng (Hardware realtime system) và hệ thời gian thực mềm (Sofware real time system) Hình 1.2 dưới đây minhhọa cho sự khác biệt giữa hai loại hệ thống đó

Hình 1.2 Đồ thị mô tả đặc trưng hai loại hệ thời gian thực

Trong đó: hạn định (deadline) là khoảng thời gian hay thời điểm mà tại đó các tác vụ thựchiện yêu cầu cần được hoàn thành

2.1 Hệ thời gian thực cứng

Trong một số hệ thống được quan tâm đặc biệt đến các hậu quả do sự vi phạm giớihạn về thời gian cho phép Những hậu quả này có thể rất tồi tệ Nó mang lại những thiệt hại

Trang 6

nặng nề về vật chất, và có thể gây ra những ảnh hưởng to lớn đến sinh mạng con người Mộtví dụ cho loại hệ thống này như việc ra lệnh dừng tàu đã không được thực hiện đúng lúc đểtàu đi băng qua ga sẽ là nguyên nhân dẫn đến một tai nạn thảm khốc, hay việc điều khiểnném bom xảy quá chậm có thể nổ vào dân thường thay vì nổ đúng mục tiêu của một căn cứquân sự đối phương Chính vì vậy, người ta đưa ra định nghĩa về hệ thời gian thực cứng nhưsau:

Một hệ thời gian thực cứng là một hệ thống mà hoạt động không đúng đắn của nó sẽ

để lại hậu quả nghiêm trọng Do đó hệ thời gian thực cứng buộc phải đưa ra các kết quảchính xác trong khoảng thời gian nhất định đã cho

Ví dụ: Một đoàn tàu điều khiển tự động không thể dừng lại ngay lập tức Khi có tínhiệu dứng, hành động phanh lại của nó phải được kích hoạt từ một khoảng cách xác định trênđường ray từ cổng tín hiệu đến vị trí nó phải dừng Khoảng cách phanh này phụ thuộc khôngchỉ vào tốc độ của con tàu mà còn vào hệ số an toàn của bộ phanh giảm tốc độ Từ tốc độ và

sự giảm tốc độ an toàn của tàu, bộ điều khiển có thể tính toán ra thời gian bắt buộc tàu cầnhãm phanh và cường độ phanh yêu cầu trước điểm cần dừng bao xa Thời gian giới hạn bắtbuộc này chính là thời gian sự cưỡng bức để hoàn thành các công việc như là quan sát, xử lýtín hiệu dừng và kích hoạt phanh Vì vậy, sự cưỡng bức thời gian này phải là cứng mới đảmbảo sự dừng đúng vị trí của con tàu

Trong các tài liệu về hệ thời gian thực, sự phân biệt giữ khoảng thời gian bắt buộccứng hay mềm thường tùy theo trạng thái định lượng trong những giới hạn mang lại kết quảhữu dụng Tuy nhiên, trong thực tế, sự phân chia này nhiều khi không cần thiết Vì vậy, sựphân chia này chỉ có tính tương đối

3 Đặc điểm của hệ thời gian thực

Một hệ thống thời gian thực có các đặc trưng tiêu biểu sau:

Trang 7

 Tính bị động: Hệ thống thường phải phản ứng lại với các sự kiện xuất hiện vào các thờiđiểm thường không biết trước.

 Tính nhanh nhạy: Hệ thống phải xử lý thông tin một cách nhanh chóng để có thể đưa rakết quả phản ứng một cách kịp thời Đây là một đặc điểm tiêu biểu Tuy nhiên, đối vớimột hệ thống có tính năng thời gian thực không nhất thiết phải đáp ứng thật nhanh màquan trọng hơn là phải có phản ứng kịp thời đối với các yêu cầu, tác động từ bên ngoài  Tính đồng thời: Hệ thống phải có khả năng phản ứng và xử lý đồng thời nhiều sự kiệndiễn ra

 Tính tiền định: Dự đoán trước được thời gian phản ứng tiêu biểu, thời gian phản ứngchậm nhất cũng như trình tự đưa ra các phản ứng Phải lập lịch cho các sự kiện

4 Cấu trúc thành phần của một hệ thời gian thực

Baker và Scallon (1986) đã trình bày một thảo luận hay về các yêu cầu thiết bịcho hoạt động thời gian thực Cooling (1991) cũng đề cập tới vấn đề này, và thảo luậntóm tắt về sản phẩm hoạt động thời gian thực thương mại Các yêu cầu riêng cho hệ thờigian thực thường là yêu cầu phần thực thi cần được thiết kế như là một phần của hệthống

Các thành phần của một RTS (hình 1.3) phụ thuộc vào kích cỡ và sự phức tạpcủa hệ thời gian thực được xây dựng Thông thường, với mọi hệ thời gian thực (trừnhững hệ thống đơn giản) đều có các thành phần sau:

Trang 8

Hình 1.3: Các thành phần của hoạt động thời gian thực

1 Một đồng hồ thời gian thực (real - time clock): thiết bị này cung cấp thông tincho việc lập lịch trình xử lý một cách định kỳ

2 Một bộ điều khiển ngắt (unterrupt handler): thành phần này dùng để quản lýcác yêu cầu đáp ứng các sự kiện không theo chu kỳ

3 Một bộ lập lịch (scheduler): thành phần này có nhiệm vụ kiểm tra tiến trìnhnhững phần có thể được thực hiện và chọn ra một ra một thành phần trong số chúng đềthực hiện

4 Một bộ quản lý tài nguyên (resource manager): phân phối một số tài nguyên về

bộ nhớ và bộ xử lý cho một tiến trình đã được sắp lịch thực hiện

5 Bộ điều vận (despatcher): thành phần này được phân nhiệm vụ để khởi động sựthực thi của một tiến trình

Trang 9

Các hệ thống cung cấp dịch vụ liên tục, như hệ thống viễn thông và hệ thống giámsát thường có các yêu cầu về độ tin cậy cao Chúng có thể còn cần đến những khả năngthực thi khác nữa như là:

6 Quản lý cấu hình (configuration manager): Bộ phận này cho phép thiết lập lạicấu hình động của phần cứng hệ thống (Kramer và Magee,1985) Ví dụ như: một đơn vịphần cứng không còn phù hợp với hệ thống Do đó, hệ thống cần được nâng cấp bằngviệc thêm hay thay bằng một phần cứng mới mà không cần phải ngừng hoạt động củatoàn hệ thống

7 Quản lý lỗi (fault manager): Bộ phận này có nhiệm vụ tự tìm lỗi gây ra từ phầncứng và phần mềm và tiến hành những hoạt động thích hợp để khôi phục lại trạng thái ổnđịnh từ những trạng thái lỗi đó

Hệ thống thời gian thực thường xử lý các tác nhân kích thích với các mức ưu tiênkhác nhau Các tác nhân như là các sự kiện đặc biệt mà thời gian xử lý cần thiết phảiđược hoàn thành trong khoảng thời gian xác định Những bộ xử lý khác được đặt trongmột độ trễ an toàn Do đó, hoạt động của một hệ thống thời gian thực phải quản lý tốithiểu hai mức ưu tiên sau cho các tiến trình hệ thống:

1 Mức ngắt (interrupt level): đây là mức ưu tiên cao nhất Nó là một đặc trưngdùng để phân biệt các hệ thống thời gian thực với các kiểu hệ thống khác

2 Mức đồng hồ (clock level): mức này chỉ ra sự ưu tiên của một tiến trình đã xácđịnh trước và được thực hiện theo thời gian định kỳ tính được từ đồng hồ

Trong khoảng thời gian của mỗi mức ưu tiên này, các lớp khác nhau của tiếntrình có thể được chỉ định sự ưu tiên khác nhau Ví dụ, một ngắt từ một thiết bị cần thựchiện nhanh có thể dành được quyền ưu tiên xử lý từ một thiết bị chậm hơn để tránh mấtthông tin Sự chỉ định tiến trình ưu tiên, thường được yêu cầu phân tích và mô phỏngnhiều

5 Xử lý thời gian thực

Xử lý thời gian thực (realtime processing) là hình thức xử lý thông tin trong một

hệ thống để đảm bảo tính năng thời gian thực của nó Như vậy, xử lý thời gian thực cũngcó các đặc điểm tiêu biểu nêu trên như tính bị động, tính nhanh nhạy, tính đồng thời vàtính tiền định Để có thể phản ứng với nhiều sự kiện diễn ra cùng một lúc, một hệ thốngxử lý thời gian thực cần sử dụng các tiến trình tính toán đồng thời

Quá trình tính toán là một tiến trình thực hiện một hoặc một phần chương trìnhtuần tự do hệ điều hành quản lý trên một máy tính, có thể tồn tại đồng thời với các quátrình khác trong thời gian thực hiện lệnh và thời gian xếp hàng chờ thực hiện

Có ba hình thức tổ chức các quá trình tính toán đồng thời:

 Tính toán tương tranh: Nhiều quá trình tính toán chia sẻ thời gian xử lý thôngtin trên một bộ xử lý

Trang 10

 Tính toán song song: Các quá trình tính toán được phân chia thực hiện songsong trên nhiều bộ xử lý của một máy tính

 Tính toán phân tán: Mỗi quá trình tính toán được thực hiện riêng trên một máytính

Trong các hình thức trên đây thì hình thức xử lý tương tranh có vai trò chủ chốttương ứng với trường hợp phổ biến khi hệ thống chỉ có một bộ xử lý Mặc dù hệ thốngđiều khiển có thể có nhiều trạm, và mỗi trạm là một hệ đa bộ xử lý, số lượng các quátrình tính toán cần thực hiện luôn lớn hơn số lượng các bộ vi xử lý Trong khi một Bộ vixử lý không thể thực hiện song song nhiều lệnh, nó phải phân chia thời gian để thực hiệnxen kẽ nhiều nhiệm vụ khác nhau theo thứ tự tùy theo mức ưu tiên và phương pháp lậplịch

Hình 1.4: Các kiểu tác vụ theo chuẩn IEC 61131-3 Trong các hệ thống điều khiển, khái niệm tác vụ hay được sử dụng bên cạnh quátrình tính toán Có thể nói, tác vụ là một nhiệm vụ xử lý thông tin trong hệ thống, đượcthực hiện theo cơ chế tuần hoàn hoặc theo sự kiện Các dạng tác vụ qui định trong chuẩnIEC 61131-3 (Programmable Controllers – Part3: Programming Languages) được minhhọa trên hình 1.4 Ví dụ, một tác vụ thực hiện nhiệm vụ điều khiển cho một hoặc nhiềumạch vòng kín có chu kỳ trích mẫu giống nhau Hoặc, một tác vụ có thể thực hiện nhiệmvụ điều khiển logic, điều khiển trình tự theo các sự kiện xảy ra Tác vụ có thể thực hiệndưới dạng một quá trình tính toán duy nhất, hoặc một dãy các quá trình tính toán khácnhau

Hoạt động của hệ thống thời gian thực được xác định thông qua việc xác địnhdanh sách các kích thích hệ thống nhận được, danh sách các đáp ứng, và thời điểm cácđáp ứng cần được sinh ra Sự kích thích được chia thành hai loại:

Trang 11

1 Kích thích có chu kỳ: Những kích thích này xuất hiện trong khoảng thời giannhất định cho trước Ví dụ hệ thống có thể kiểm tra một bộ cảm biến, cứ mỗi 50 milligiây thực hiện một hoạt động (hồi đáp phụ thuộc vào giá trị của bộ cảm biến – “kíchthích”)

2 Kích thích không theo chu kỳ: Những kích thích này xuất hiện không đều,chúng thường là những tín hiệu được sử dụng cơ chế ngắt của máy tính Ví dụ, một kíchthích sẽ là một ngắt chỉ ra rằng sự truyền vào/ra đã hoàn tất, hoặc chỉ ra rằng dữ liệu đangcó trong bộ đệm

Hình 1.5: Mô hình chung của hệ thời gian thựcKích thích có chu kỳ trong hệ thời gian thực thường được tạo ra bằng một bộ cảmbiến gắn trong hệ thống Các kích thích này cung cấp thông tin trạng thái về môi trường

hệ thống Chúng điều khiển các hồi đáp tác động tới một tập Bộ thao tác có nhiệm vụđiều khiển một số đơn vị phần cứng, rồi sau đó Bộ thao tác làm ảnh hưởng trực tiếp tớimôi trường hệ thống

Kích thích không có chu kỳ có thể sinh ra bởi các Bộ thao tác hay bởi các bộ cảmbiến Chúng thường chỉ ra một số điều kiện ngoại lệ, như ổ cứng hỏng, nó cần phải đượcquản lý của hệ thống Mô hình cảm biến - hệ thống - bộ thao tác này trong hệ thời gianthực nhúng, được minh họa trong hình 1.5

5.1 Xử lý ngắt

Một đặc trưng hay dùng để phân biệt các hệ thống thời gian thực với các kiểu hệthống khác là việc xử lý ngắt Hệ thống thời gian thực phải đáp ứng với các kích thíchbên ngoài (hay thường gọi là các ngắt) trong một khuôn khổ thời gian do thế giới bênngoài ấn định Bởi vì nhiều kích thích (ngắt) thường xuất hiện nên phải thiết lập các mức

ưu tiên ngắt

Trang 12

Xử lý ngắt bắt buộc không chỉ lưu trữ thông tin để cho máy tính có thể chạy lạiđúng đắn nhiệm vụ đã bị ngắt trước đó mà còn phải tránh tắc nghẽn và các chu trình vôhạn.

Hình 1.6 Mô hình xử lý ngắtCách tiếp cận tổng thể với xử lý ngắt được minh họa trong hình 1.6 Luồng xử lýthông thường bị “ngắt” bởi một sự kiện được bộ xử lý phát hiện ra từ phần cứng nào đó.Một sự kiện là bất kỳ một sự xuất hiện nào đòi hỏi được đáp ứng ngay lập tức và sự đápứng đó có thể được sinh ra bởi phần cứng hoặc phần mềm Trạng thái của chương trình bịngắt được lưu trữ và điều khiển được chuyển cho dịch vụ ngắt, tức là chuyển tới mộtphần mềm thích hợp để xử lý ngắt Khi hoàn thành xong nhiệm vụ ngắt thì trạng thái củamáy lại được khôi phục và luồng xử lý dở dang (thông thường) lại được tiếp tục

Trong nhiều tình huống, bản thân dịch vụ ngắt cho một sự kiện có thể lại bị ngắtbởi một sự kiện khác, có mức ưu tiên cao hơn Mức ưu tiên ngắt (Hình 1.7) có thể đượcthiết lập Nếu một tiến trình có mức ưu tiên thấp ngẫu nhiên được phép ngắt bởi một tiếntrình có mức ưu tiên cao thì có thể khó chạy lại các tiến trình theo đúng trật tự và có thểlàm phát sinh chu trình vô hạn

Ngày đăng: 10/01/2019, 11:16

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w