1

thống

Hệ thông tin công nghiệp

g n ơ ư h C

Chương

thời gian thực

Vấn ₫ề 3:

N Ơ S H N I M G N À O H

08.01.07

, 4 0 0 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Chương 3: Nội dung

thời gian thực”

lý thời gian thực

1. 2. 3. 4. 5.

Khái niệm “hệ Xử Hệ điều hành thời gian thực Giao tiếp thời gian thực Lập trình thời gian thực

I

N Ơ S H N M G N À O H

2

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

3.1 Hệ

thời gian thực là

gì?

real-time system is one in which the correctness of the system

“A depends not only on the logical results, but also on the time at which the results are produced,...”

sự

không chỉ thời gian thực là phụ một hệ thuộc vào sự hoạt ₫ộng tin cậy của còn phụ thống mà chính xác của kết quả, mà phản ứng với sự kiện bên

Một hệ nó thuộc vào thời ₫iểm ₫ưa ra kết quả ₫ể ngoài. Hệ thống có lỗi khi thời gian yêu cầu không ₫ược thoả mãn.

STANKOVIC

JOHN A. Systems. ACM Computing Surveys, Vol. 28, No. 4, December 1996

thời gian tuyệt đối

ET AL.: Strategic Directions in Real-Time and Embedded

I

N Ơ S H N M G N À O H

Thời gian thực không phải là Tính năng thời gian thực không đồng nghĩa với tốc độ tính toán rất nhanh Tính năng thời gian thực = tính chính xác + tính kịp thời

3

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Các dạng của “tính kịp thời”

Sự

kiện Phản ứng

Sự

kiện Phản ứng

T

T

Thời gian

Thời gian

tp1

tp2

tp

ts

ts

t ≤

a)

Chính xác tại ... (t

b) Trong khoảng ... (tp2

tp2 )

) = tp

Sự

kiện Phản ứng

Sự

kiện Phản ứng

T

T

Thời gian

Thời gian

I

ts

tp

ts

tp

c) Chậm nhất là

... (t

d) Sớm nhất là

... (t

) tp

) tp

N Ơ S H N M G N À O H

4

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

HT ₫iều khiển có

phải là

TGT? hệ thời gian thực

Mỗi hệ

một hệ

thuộc vào khả năng phản

phụ thuộc vào thuật

còn phụ

thống, thời điểm đọc tín hiệu đầu vào (tín thời

thống điều khiển là Chất lượng điều khiển không chỉ toán điều khiển, mà ứng của hệ hiệu đo), vào thời gian tính toán luật điều khiển và điểm đưa ra tín hiệu điều khiển Tính năng thời gian thực của một HTĐK phụ vào phần cứng và

(cid:131) Phần cứng: Tốc độ tính toán của vi xử lý, tốc độ chuyển đổi

DA/AD, cơ chế vào/ra, chậm trễ trong các thiết bị

(cid:131) Phần mềm: Thuật toán điều khiển, phương pháp lập trình,

tổ chức thực hiện chương trình

thuộc cả thống phần mềm và vào kiến trúc hệ

I

thời gian thực là

các hệ

thống điều

Tính năng TGT của một HTĐK liên quan tới tính mạng con người

N Ơ S H N M G N À O H

Phần lớn các hệ khiển

5

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Hai dạng

TGT tiêu biểu

thống (Embedded Systems)

1. Hệ —

cho chuyên dụng, đặc chủng

đơn lẻ

điều khiển móc — không tách rời của

— lý, nhân thời gian thực, hệ điều hành

— dụng: công nghiệp hàng không-vũ trụ, robot

2. Hệ

điều khiển

hệ nhúng thống thống hệ Các thiết bị, máy các điều khiển là một phần tính Máy thiết bị được điều khiển trên nền vi xử Dựa thời gian thực dụ ứng Ví công nghiệp, phương tiện giao thông, ... công nghiệp (Industrial Control thống Systems) —

I

điều khiển phân cấp, phân tán thống

— — biến, CN chế tạo trong CN chế

N Ơ S H N M G N À O H

6

Distributed Control Systems (DCS), Programmable Logic Controllers (PLC), Soft-PLCs Các Ứng hệ dụng

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Chiếc xe hơi có là một hệ

TGT?

bên

trong

(μP) nối mạng

tìm

hoạt

động

của

máy có ta

hiểu

nguyên

50 Hơn Chúng chúng?

vi tính nên

I

N Ơ S H N M G N À O H

7

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Bus trường có

phải là

một hệ

TGT?

Controller

Tc

Bus trường

Tbus

Tin

Tout

I/O

I/O

I/O

I/O

Tio

Tad

Tsd

I

Actuator

Actuator

Sensor

Sensor

Ta

Ts

N Ơ S H N M G N À O H

8

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

yêu cầu là thống thông

Tính năng thời gian thực chung của hầu hết các hệ tin công nghiệp!

I

N Ơ S H N M G N À O H

9

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Đặc ₫iểm của một hệ

thời gian thực

(cid:131) Tính phản ứng: Hệ thống phải phản ứng với các sự kiện xuất hiện vào các thời điểm không biết trước. (cid:131) 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 ra kết quả phản ứng một cách kịp thời.

(cid:131) 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ện diễn ra.

(cid:131) 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 ứng chậm nhất cũng như trình tự đưa ra các phản ứng.

I

N Ơ S H N M G N À O H

10

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

3.2 Xử

lý thời gian thực là

gì?

lý thời gian thực là

hình thức xử

lý thông tin trong

thống ₫ể ₫ảm bảo tính năng thời gian thực của

Xử một hệ nó.

kiện bên ngoài

(tính phản

(tính nhanh nhạy) (tính ₫ồng thời)

lý thuyết chặt chẽ

phân tích và

phục vụ

I

Luôn liên quan với các sự ứng) hiệu suất phần mềm Yêu cầu cao về Đòi hỏi xử lý ₫ồng thời nhiều tác vụ Đòi hỏi cơ sở đánh giá

(tính tiền ₫ịnh)

N Ơ S H N M G N À O H

11

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Tại sao phải nghiên cứu về

xử

TGT? lý

(cid:131) Xử lý thời gian thực là nguyên lý làm việc cơ bản của mỗi hệ thống điều khiển và của mỗi hệ thống thông tin công nghiệp, nhìn từ quan điểm tin học

(cid:131) Chất lượng điều khiển và độ tin cậy của hệ thống điều khiển không chỉ phụ thuộc vào thuật toán ₫iều khiển, công nghệ phần cứng, mà còn phụ thuộc một cách tất yếu vào phương pháp xử lý thời gian thực

(cid:131) Chúng ta còn biết quá ít về cơ chế thực hiện các chức năng phần mềm bên trong một bộ điều khiển (số)

I

N Ơ S H N M G N À O H

12

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Các hình thức cơ bản của xử

lý TGT

(cid:131) Khả năng phản ứng đồng thời với các sự kiện bên

ngoài: Xử lý đa nhiệm

(cid:131) Đáp ứng yêu cầu về thời gian của nhiều “tác vụ”:

— — — lý song song lý phân tán lý cạnh tranh

Xử Xử Xử

I

N Ơ S H N M G N À O H

13

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Tác

xử lý ₫a nhiệm

vụ

(cid:131) Một quá trình tính toán cho một nhiệm vụ cụ thể, có

xử vào/ra

logic

thể được thực hiện đồng thời, ví dụ: lý giá — — — — —

lý biến cố xử

(cid:131) Một tác vụ là sự thi hành một chương trình hoặc một

phần chương trình — —

trị Các tác vụ Các tác vụ điều chỉnh Các tác vụ điều khiển Các tác vụ ...

dụ (ví một hàm) được gọi tuần

nhiều tác vụ khác

I

(cid:131) Multitasking (đa nhiệm): khả năng thi hành đồng thời

khác nhau => Một chương trình chạy nhiều lần => nhiều tác vụ Một đoạn mã chương trình hoàn với các chu kỳ nhau

N Ơ S H N M G N À O H

nhiều tác vụ

14

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Các

của một tác

trạng

thái

vụ

(cid:131) Trạng thái nghỉ, chưa tồn tại (Dormant, Nonexistence): Task trong bộ nhớ nhưng hệ điều hành không quản lý.

DORMANT

READY

(cid:131) Trạng thái sẵn sàng (Ready state): Khi nó có thể được điều hoạt nhưng hiện đang có một Task khác có mức ưu tiên cao hơn đang được thực hiện.

(cid:131) Trạng thái chạy (Running state): Khi nó

đang được điều khiển bởi CPU

RUNNING

WAITING

I

(cid:131) Trạng thái đợi (Waiting state) : Khi nó đang chờ một sự kiện xảy ra để được sẵn sàng như một sự kiện vào/ra, khi tài nguyên chung có thể sử dụng hay là khi có các ngắt thời gian.

N Ơ S H N M G N À O H

15

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Phân loại tác vụ

61131-3)

(IEC

Chờ

sự

kiện

Chờ

tới chu kỳ

Thời gian

Sự

kiện

thực thi

thực thi

thực thi

Tác vụ

mặc định

Tác vụ

tuần hoàn

Tác vụ

sự

kiện

dụ:

dụ:

dụ:

logic

I

Ví - Điều khiển Kiểm tra lỗi -

Ví - Điều chỉnh vòng kín - Xử

lý truyền thông

Ví - Điều khiển trình tự - Xử

lý sự

cố

N Ơ S H N M G N À O H

16

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Các hình thức xử lý ₫ồng thời

(cid:131) Xử lý song song: Các tác vụ (task) được phân chia

thực hiện song song trên nhiều bộ xử lý

(cid:131) Xử lý cạnh tranh: Nhiều tác vụ chia sẻ thời gian của

một bộ xử lý.

(cid:131) Xử lý phân tán: Mỗi (nhóm) tác vụ được thực hiện

riêng trên một máy tính (trường hợp đặc biệt của xử lý song song).

lý cạnh tranh là

hình thức quan trọng nhất trong

I

thống điều khiển (có thể

kết hợp với xử

Xử các hệ phân tán)

N Ơ S H N M G N À O H

17

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Xử

cạnh

tranh

— chức, lập lịch

phân nguyên cho các

(cid:131) Các vấn đề: Tổ chia tài tác vụ Giao tiếp giữa các tác vụ tác hóa giữa Đồng vụ

— — bộ các

I

N Ơ S H N M G N À O H

18

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Phương pháp lập lịch

(cid:131) Vấn đề:

ảnh hưởng lớn tới tính năng

thống

thỏa hiệp giữa tính năng thời gian thực và

dụng tài nguyên máy tính

thứ

thực hiện các tác vụ được xác định tự —

thống đi vào hoạt động.

Bên cạnh hiệu năng của phần cứng máy tính, thì phương pháp lập lịch có thời gian thực của hệ Cần sự hiệu suất sử (cid:131) Cơ chế lập lịch Lập lệnh tĩnh: trước khi hệ Lập lệnh động: trong khi hệ

— thực hiện các tác vụ được xác định tự thứ

thống đang hoạt động.

I

N Ơ S H N M G N À O H

19

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Phương pháp lập lịch (cid:131) Sách lược lập lịch

— —

— thực hiện

— có mức ưu tiên như

“lát thời gian”

(cid:131) Thuật toán lập lịch

FIFO: đến trước sẽ được thực hiện trước. Non-preemptive: không chen hàng, các tác vụ được thực hiện bình thường dựa trên mức ưu tiên của chúng. Preemptive: chen hàng, chọn một tác vụ để trước các tác vụ khác. Round-robin/Time-slicing: Mỗi tác vụ nhau được thực hiện một số Mức ưu tiên cố định/động: các tác vụ được đặt các mức ưu tiên cố định hoặc có thể thay đổi nếu cần.

I

càng thường xuyên càng được ưu tiên. càng gấp càng được ưu tiên.

— — — tỷ lệ thời gian tính toán/thời hạn cuối cùng

N Ơ S H N M G N À O H

20

© 2005 - HMS

Rate monotonic: Deadline monotonic: Least laxity: (deadline) càng lớn càng được ưu tiên.

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

Khái niệm “tiến trình tính toán”

(cid:131) Tiến trình tính toán (process) là một khái niệm tương đương với “tác vụ”, nhưng nhìn từ phía hệ điều hành đa nhiệm (khái niệm tác vụ nhìn từ phía người sử dụng)

(cid:131) Hai loại tiến trình:

dụng an toàn hơn

— cân (lightweight process, thread): Thường

một không gian địa chỉ

I

Tiến trình nặng cân (heavyweight process, process): Chiếm một không gian địa chỉ riêng, thường tương ứng một chương trình => sử với thực thi cả nhưng giao tiếp giữa các process phức tạp Tiến trình nhẹ thuộc một process, các thread của một process cùng => giao tiếp đơn giản chia sẻ thông qua các biến toàn cục, nhưng cần thận trọng

N Ơ S H N M G N À O H

21

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

3.3

Hệ ₫iều hành thời gian thực

(cid:131) Hệ điều hành thời gian thực là một hệ điều hành hỗ trợ các chương trình ứng dụng xử lý thời gian thực (cid:131) Hầu hết các bộ điều khiển công nghiệp (PLC, DCS,...) đều hoạt động trên nền một hệ điều hành thời gian thực (RTOS, Real-time Operating System)

(cid:131) Bản thân hệ điều hành thời gian thực cũng là một hệ

thời gian thực

(cid:131) Một hệ điều hành thời gian thực bao giờ cũng là một hệ đa nhiệm (multitasking), hỗ trợ xử lý cạnh trạnh hoặc/và xử lý song song.

I

N Ơ S H N M G N À O H

22

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

của RTOS

trong bộ ₫iều khiển

Vai trò

(cid:131) Nạp chương trình, hỗ trợ thử nghiệm, gỡ rối chương

trình

(cid:131) Quản lý dữ liệu vào/ra và quản lý truyền thông

— liệu

không cần quan tâm tới cơ chế dàng truy cập dữ thể phần cứng cụ Giúp các chương trình ứng dụng dễ mà

Phân chia thời gian CPU cho thi hành các tác vụ —

lý cạnh tranh) (trong xử

trợ ₫ồng bộ — chia sẻ tài

— thực hiện hóa tiến dụng chung giao tiếp liên tiến Giúp các tác vụ nhớ, cổng vào/ra,..) Giúp các tác vụ

I

(cid:131) Quản lý tác vụ: Lập lịch: khác nhau Hỗ nguyên sử trợ Hỗ giao tiếp, trao đổi dữ

(cid:131) Các chức năng kiểm tra, chẩn đoán lỗi

liệu hoặc phối hợp hoạt động trình: (bộ trình:

N Ơ S H N M G N À O H

23

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

RTOS trong các

₫iều khiển

hệ

thống

lập trình

— — — với một sự kiện (ví dụ khi xuất hiện

vào/ra,...) đủ ngắn

— tuần hoàn, đảm bảo chính chu kỳ (jitter)

(cid:131) Yêu cầu đặc biệt Mã rất nhỏ, gọn sử Đơn giản, dễ gian phản Thời ngắt truyền Quản lý hiệu quả xác về Quản lý vào/ra hiệu quả, đơn giản (cid:131) Hai dạng thực hiện:

dụng, dễ ứng thông, ngắt các tác vụ rung nhỏ thời gian, độ —

— liên kết

I

Mã nguồn: Nhân thời gian thực, được dịch và cùng với CTĐK tạo thành một chương trình duy nhất -> giải pháp vi điều khiển. Mã chạy cài đặt sẵn trên thiết bị: Hệ điều hành thời gian thực đầy đủ, cung cấp các dịch vụ độc lập với chương trình điều khiển -> giải pháp PLC và DCS.

N Ơ S H N M G N À O H

24

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

₫iều hành

Cấu trúc tiêu biểu của một hệ thời gian thực

CHƯƠNG TRÌNH

CHƯƠNG TRÌNH

CHƯƠNG TRÌNH

ỨNG

DỤNG

ỨNG

DỤNG

ỨNG

DỤNG

GIAO DIỆN LẬP TRÌNH

ỨNG

DỤNG

XỬ

QUẢN LÝ NHỚ BỘ

QUẢN LÝ TASK

QUẢN LÝ VÀO/RA

QUẢN LÝ KIỆN SỰ

GIAO TIẾP

GIAO DIỆN PHẦN CỨNG

I

PHẦN CỨNG

MÁY

TÍNH

N Ơ S H N M G N À O H

25

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

triển: MicroC/OS-II

dụ

phát

CHƯƠNG TRÌNH ỨNG DỤNG

MÃ XMÃ XỬỬ LÝ Đ

LÝ ĐỘỘC LC LẬẬPP

CCẤẤU HÌNH

U HÌNH µµC/OSC/OS--IIII

OS_CORE.C

OS_FLAG.C

OS_CFG.H

OS_MBOX.C

INCLUDE.H

OS_MEM.C

OS_TASK.C

OS_TIME.C

uCOS_II.C

uCOS_II.H

CHUYỂỂN MÃ CHUY

N MÃ µµC/OSC/OS--IIII

OS_CPU.H

OS_CPU_A. ASM

PHẦN MỀM

OS_CPU_C.C

I

TIMER

CPU

PHẦN CỨNG

N Ơ S H N M G N À O H

26

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

3.4 Giao tiếp thời gian thực

(cid:131) Một hệ thống điều khiển nhà máy bao gồm nhiều

thành phần => nhu cầu giao tiếp

(cid:131) Tính năng thời gian thực của một hệ thống không chỉ phụ thuộc vào tính năng thời gian thực của từng thành phần, mà còn phụ thuộc vào cấu trúc liên kết và hình thức giao tiếp giữa các thành phần!

(cid:131) Tính năng thời gian thực của hệ thống truyền thông

truyền?

I

phụ thuộc vào những yếu tố gì? — — — —

Tốc độ Cấu trúc mạng? Phương pháp kiểm soát truy nhập bus? ...

N Ơ S H N M G N À O H

27

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

minh họa: Hệ ĐK qua mạng

(cid:137) Không đồng bộ trong các chu kỳ hoạt động của các

dụ thiết bị

Controller

(cid:137) Đặc tính khác nhau của các hệ bus

Tc

(cid:137) Thời gian trễ bất định (cid:137) Chù kỳ trích mẫu biến thiên

Bus trường

Tbus

Tout

Tin

I/O

I/O

I/O

I/O

Tio

Tad

I

Tsd

Actuator

Actuator

Sensor

Sensor

Ta

Ts

N Ơ S H N M G N À O H

28

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Các thông số ₫ặc trưng

(cid:131) Chu kỳ bus: Khoảng thời gian nhỏ nhất mà tất cả các trạm trong mạng được tham gia giao tiếp một lần (không phải hệ thống nào cũng hoạt động theo chu kỳ) (cid:131) Thời gian phản ứng (tiêu biểu và trường hợp xấu nhất): Khoảng thời gian từ lúc nhận được yêu cầu tới lúc hoàn thành nhiệm vụ trao đổi thông tin

(cid:131) Độ rung (jitter): Khoảng thời gian sai lệch so với thời

điểm lý tưởng

=> Quan trọng: Các thông số

trên là

tiền định hay bất

định (mức độ

bất định như thế

nào?)!

I

N Ơ S H N M G N À O H

29

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Các kiến trúc giao tiếp

(cid:131) Kiến trúc Master/Slave

giao tiếp trực tiếp, hoặc không

— — — — Một trạm chủ có Các trạm tớ có Các trạm tớ Vai trò chủ động thuộc về Master phối hợp hoạt động của nhiều trạm tớ nhiệm vụ tương tự như nhau vai trò, thể

dụ: Bộ điều khiển

Master

Slave

Slave

Slave

I

dụ:

Các vào/ra phân tán,

các thiết bị trường

N Ơ S H N M G N À O H

30

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

(cid:131) Kiến trúc Client/Server

chung, phục vụ các client.

không cần thiết có client

dụ: Các trạm vận hành

Client

Client

Client

Server

Server

— — — Server thực hiện các dịch vụ Giữa các Vai trò chủ động trong giao tiếp thuộc về giao tiếp trực tiếp client

I

dụ: Các bộ điều khiển hoặc các trạm quản lý dữ

liệu

N Ơ S H N M G N À O H

31

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

(cid:131) Kiến trúc bình đẳng Các trạm có vai trò bình đẳng, hình thức giao tiếp trực tiếp với nhau không gian

A

A

A

A

A

phải phối hợp hoạt động, trung qua

I

dụ:

Các trạm điều khiển phân tán hoặc các thiết bị trường thông minh

N Ơ S H N M G N À O H

32

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

(cid:131) Kiến trúc tự trị

— vai trò bình đẳng, có thể hoạt động hoàn

phối hợp hoạt động tạo hiệu quả

A

A

A

A

A

Các trạm có toàn độc lập nhưng sự cao nhất

I

dụ: Các hệ

thống xây dựng theo công nghệ

Agent, Multi-Agent

N Ơ S H N M G N À O H

33

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

cơ chế

giao tiếp

chung

— — liệu toàn cục,

liệu cần trao đổi của tất cả các

liệu của nó — tới tất cả các trạm,

cập nhật ảnh của bảng dữ liệu toàn cục

— — liệu nhỏ, tuần hoàn (ví dụ giữa

Các (cid:131) Dữ liệu toàn cục (Global Data) Giống như một vùng nhớ Mỗi trạm đều chứa một ảnh của bảng dữ trong đó có toàn bộ dữ trạm khác Mỗi trạm gửi phần dữ mỗi trạm tự Đơn giản, tiền định nhưng kém hiệu quả Áp dụng cho lượng dữ các trạm điều khiển).

I

N Ơ S H N M G N À O H

34

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

(cid:131) Hỏi tuần tự (Polling, Scanning)

Master

theo trình tự đặt trước

hỏi/đáp tuần tự tiền định

— — — — liệu tuần hoàn

Master

Slave1

Slave2

Slave3

Message1

Response1

Message2

Response2

Message3

Một trạm đóng vai trò Cơ chế Đơn giản, Áp dụng cho trao đổi dữ

I

Response3

N Ơ S H N M G N À O H

35

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

— liên kết hoặc không liên kết,

cấu hình trước xác nhận hoặc không xác có

yêu cầu hoặc không có thể tục có yêu cầu phức tạp

— — liệu tuần hoàn hoặc không tuần

(cid:131) Tay đôi (Peer-To-Peer) Hình thức có hoặc không cấu hình trước, nhận, Linh hoạt nhưng thủ Áp dụng cho trao đổi dữ hoàn,

các kiến trúc khác nhau.

thích hợp cho tất cả (cid:131) Chào/đặt hàng (Subscriber/Publisher) thông báo được một trạm chủ — chào và dung các trạm

tuần hoàn hoặc theo sự kiện

— gửi riêng

hiệu suất cao tiền định,

— — liệu tuần hoàn hoặc không tuần

I

thích hợp cho kiến trúc Client/Server hoặc kiến trúc

Nội client đặt theo cơ chế Thông báo chỉ được gửi tới các trạm đặt (có thể hoặc gửi đồng loạt) Linh hoạt, Áp dụng cho trao đổi dữ hoàn, bình đẳng.

N Ơ S H N M G N À O H

36

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

server files, khác để

— liệu và mã căn cước (nội dung thư dụng một môi trường trung gian như liệu hoặc một chương trình liệu

diễn ra tại bất cứ thời điểm nào nhận thư có thể

— —

(cid:131) Hộp thư (Mailbox) Các trạm sử dữ một cơ sở ghi và đọc dữ Mỗi bức thư mang dữ hoặc/và người nhận) Gửi và Linh hoạt nhưng kém hiệu quả, không đảm bảo tính năng thời gian thực Áp dụng cho trao đổi dữ thích hợp cho kiến trúc

Mailbox

3

1

tính chất ít quan trọng, hoặc kiến trúc tự liệu có Client/Server trị.

I

1-3

xxxxx yy

2-4

4

xxxxx zz

N Ơ S H N M G N À O H

2

37

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt

Tài liệu tham khảo

(cid:131) Hoàng Minh Sơn: “Hệ thời gian thực và điều khiển thời gian thực”, Tạp chí Tự động hóa ngày nay, số xx/2004. (file *.pdf có

sẵn)

I

N Ơ S H N M G N À O H

38

© 2005 - HMS

, 4 0 0 Chương 3: Vấn đề thời gian thực 2 ©

CuuDuongThanCong.com CuuDuongThanCong.com

https://fb.com/tailieudientucntt https://fb.com/tailieudientucntt