Tải bản đầy đủ (.pdf) (64 trang)

Hệ thống PLC và DCS: C5 Control software

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (816.07 KB, 64 trang )

 HMS
Chương 5
1
Thá
ng Sáu 2015
Chương 5: Phần mềm điều khiển
5.1 Vấn đề TGT trong các hệ thống điều khiển
5.2 Lập trình theo chuẩn IEC 61131-3
5.3 Phương pháp luận khối chức năng và chuẩn
IEC 61499
 HMS
Chương 5
2
Thá
ng Sáu 2015
Nội dung liên ngành
Kỹ thuật
điều khiển
Khoa học
máy tính
Công nghệ
truyền thông
Hệ thời gian thực
Mạng truyền thông
công nghiệp
Hệ phân tán
Hệ điều khiển
PLC & DCS
 HMS
Chương 5
3


Thá
ng Sáu 2015
5.1 Vấn đề thời gian thực trong các hệ
thống điều khiển
 Khái niệm thời gian thực, hệ thời gian thực và xử lý
thời gian thực
 Khái niệm tác vụ và vai trò của xử lý cạnh tranh
trong các hệ thống điều khiển
 Lập trình điều khiển thời gian thực
 Hệ điều hành thời gian thực
 HMS
Chương 5
4
Thá
ng Sáu 2015
5.1.1 Khái niệm về hệ thời gian thực
A real-time system is one in which the correctness of the
system depends not only on the logical results, but also on the
time at which the results are produced.
Một hệ thời gian thực là một hệ thống mà sự hoạt động tin cậy
của nó không chỉ phụ thuộc vào sự chính xác của kết quả, mà
còn phụ thuộc vào thời điểm đưa ra kết quả để phản ứng với sự
kiện bên ngoài. Hệ thống có lỗi khi thời gian yêu cầu không
được thoả mãn.
JOHN A. STANKOVIC ET AL.: Strategic Directions in Real-Time and
Embedded Systems. ACM Computing Surveys, Vol. 28, No. 4, December 1996
Thời gian thực không phải là thời gian tuyệt đối
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
 HMS
Chương 5
5
Thá
ng Sáu 2015
Các dạng của “tính kịp thời”
Thời gian
Sự kiện Phản ứng
t
s
t
p
T
a) Chính xác tại (t = t
p
)
Thời gian
Sự kiện Phản ứng
t
s
t
p2
T
b) Trong khoảng (t
p2
 t  t
p2
)
Thời gian

Sự kiện Phản ứng
t
s
t
p
T
c) Chậm nhất là (t  t
p
)
t
p1
Thời gian
Sự kiện Phản ứng
t
s
t
p
T
d) Sớm nhất là (t  t
p
)
 HMS
Chương 5
6
Thá
ng Sáu 2015
Đặc điểm của một hệ thời gian thực
 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.
 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.
 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.
 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.
 HMS
Chương 5
7
Thá
ng Sáu 2015
Liên quan tới HTđiều khiển?
Mỗi hệ thống điều khiển là một hệ thời gian thực
Chất lượng điều khiển không chỉ phụ thuộc vào thuật toán
điều khiển, mà còn phụ thuộc vào khả năng phản ứng của
hệ thống, thời điểm đọc tín hiệu đầu vào (tín hiệu đo), vào
thời gian tính toán luật điều khiển và thời đ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ụ thuộc cả vào
phần cứng và phần mềm và vào kiến trúc hệ thống
 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ị
 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
Tính năng TGT của một HTĐK liên quan tới tính mạng con
người
Phần lớn các hệ thời gian thực là các hệ thống điều
khiển
 HMS

Chương 5
8
Thá
ng Sáu 2015
Hai dạng hệ thống điều khiển thời gian
thực tiêu biểu
1. Hệ thống nhúng (Embedded Systems)
– Các hệ thống điều khiển chuyên dụng, đặc chủng cho các
thiết bị, máy móc đơn lẻ
– Máy tính điều khiển là một phần không tách rời của thiết bị
được điều khiển
– Dựa trên nền vi xử lý, nhân thời gian thực, hệ điều hành
thời gian thực
– Ví dụ ứng dụng: công nghiệp hàng không-vũ trụ, robot công
nghiệp, phương tiện giao thông,
2. Hệ thống điều khiển công nghiệp (Industrial Control
Systems)
– Distributed Control Systems (DCS), Programmable Logic
Controllers (PLC), Soft-PLCs
– Các hệ thống điều khiển phân cấp, phân tán
– Ứng dụng trong CN chế biến, CN chế tạo
 HMS
Chương 5
9
Thá
ng Sáu 2015
Xử lý thời gian thực là gì?
Xử lý thời gian thực 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ó.
Luôn liên quan với các sự kiện bên ngoài (tính phản

ứng)
Yêu cầu cao về hiệu suất phần mềm (tính nhanh
nhạy)
Đòi hỏi xử lý đồng thời nhiều tác vụ (tính đồng thời)
Đòi hỏi cơ sở lý thuyết chặt chẽ phục vụ phân tích
và đánh giá (tính tiền định)
 HMS
Chương 5
10
Thá
ng Sáu 2015
Tại sao phải nghiên cứu về xử lý thời gian
thực?
 Xử lý thời gian thực là nguyên lý làm việc cơ bản
của mỗi bộ điều khiển, nhìn từ quan điểm tin học
 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
 Chúng ta còn biết quá ít về cơ chế thực hiện các
chức năng bên trong một bộ điều khiển (số)
 HMS
Chương 5
11
Thá
ng Sáu 2015
5.1.2 Khái niệm “tác vụ” (task) và xử lý
cạnh tranh
 Một quá trình tính toán cho một nhiệm vụ cụ thể, có
thể được thực hiện đồng thời, ví dụ:

– Các tác vụ xử lý giá trị vào/ra
– Các tác vụ điều chỉnh
– Các tác vụ điều khiển logic
– Các tác vụ xử lý biến cố

 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
– 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 (ví dụ một hàm) được gọi tuần
hoàn với các chu kỳ khác nhau => nhiều tác vụ khác nhau
 Multitasking (đa nhiệm): khả năng thi hành đồng thời
nhiều tác vụ
 HMS
Chương 5
12
Thá
ng Sáu 2015
Các trạng thái của một tác vụ
 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ý.
 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.
 Trạng thái chạy (Running state): Khi nó
đang được điều khiển bởi CPU
 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.
DORMANT
READY
RUNNING
WAITING
 HMS
Chương 5
13
Thá
ng Sáu 2015
Phân loại tác vụ (IEC 61131-3)
Mã thực thi
Tác vụ mặc định
Ví dụ:
- Điều khiển logic
- Kiểm tra lỗi
Chờ tới chu kỳ
Mã thực thi
Thời gian
Tác vụ tuần hoàn
Ví dụ:
- Điều chỉnh vòng kín
- Xử lý truyền thông
Chờ sự kiện
Mã thực thi
Sự kiện
Tác vụ sự kiện
Ví dụ:
- Điều khiển trình tự

- Xử lý sự cố
 HMS
Chương 5
14
Thá
ng Sáu 2015
Quản lý tác vụ tuần hoàn
void OldTask(void *pdata)
{
while(1){
// user codes
//
OSTimeDly(nTick);
}
}
void NewTask(void *pdata)
{
while(1){
// user codes
//
OSWaitPeriod();
}
}
 HMS
Chương 5
15
Thá
ng Sáu 2015
Các hình thức xử lý đồng thời
 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ý
 Xử lý cạnh tranh: Nhiều tác vụ chia sẻ thời gian của
một bộ xử lý.
 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).
Xử lý cạnh tranh là hình thức quan trọng nhất trong
các hệ thống điều khiển (có thể kết hợp với xử lý
phân tán)
 HMS
Chương 5
16
Thá
ng Sáu 2015
Xử lý cạnh tranh
 Các vấn đề:
– Tổ chức, lập lịch phân
chia tài nguyên cho các
tác vụ
– Giao tiếp giữa các tác vụ
– Đồng bộ hóa giữa các tác
vụ
 HMS
Chương 5
17
Thá
ng Sáu 2015
Phương pháp lập lịch
 Cơ chế lập lịch
– Lập lệnh tĩnh: thứ tự thực hiện các tác vụ được xác định trước khi

hệ thống đi vào hoạt động.
– Lập lệnh động: thứ tự thực hiện các tác vụ được xác định trong khi
hệ thống đang hoạt động.
 Sách lược lập lịch
– FIFO: đến trước sẽ được thực hiện trước.
– 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.
– Preemptive: chen hàng, chọn một tác vụ để thực hiện trước các tác
vụ khá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.
 Thuật toán lập lịch
– Rate monotonic: càng thường xuyên càng được ưu tiên.
– Deadline monotonic: càng gấp càng được ưu tiên.
– Least laxity: tỷ lệ thời gian tính toán/thời hạn cuối cùng (deadline)
càng lớn càng được ưu tiên.
 HMS
Chương 5
18
Thá
ng Sáu 2015
Các vấn đề thời gian trong các hệ điều
khiển phân tán
Sensor
I/O
Controller
I/O
Actuator
Sensor
I/O

Actuator
I/O
Bus trường
T
sd
T
in
T
out
T
ad
T
c
T
s
T
io
T
a
T
bus
 Không đồng bộ trong các chu kỳ hoạt động của các
thiết bị
 Đặc tính khác nhau của các hệ bus
 Thời gian trễ bất định
 Chù kỳ trích mẫu biến thiên
 HMS
Chương 5
19
Thá

ng Sáu 2015
5.1.3 Hệ điều hành thời gian thực
 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
 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)
 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
 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.
 HMS
Chương 5
20
Thá
ng Sáu 2015
Các nhiệm vụ chính của hệ điều hành thời
gian thực trong một bộ điều khiển
 Nạp chương trình, hỗ trợ thử nghiệm, gỡ rối chương
trình
 Quản lý dữ liệu vào/ra và quản lý truyền thông
– Giúp các chương trình ứng dụng dễ dàng truy cập dữ liệu
mà không cần quan tâm tới cơ chế phần cứng cụ thể
 Quản lý tác vụ:
– Lập lịch: Phân chia thời gian CPU cho thi hành các tác vụ
khác nhau (trong xử lý cạnh tranh)
– Hỗ trợ đồng bộ hóa quá trình: Giúp các tác vụ chia sẻ tài
nguyên sử dụng chung (bộ nhớ, cổng vào/ra, )
– Hỗ trợ giao tiếp liên quá trình: Giúp các tác vụ thực hiện

giao tiếp, trao đổi dữ liệu hoặc phối hợp hoạt động
 Các chức năng kiểm tra, chẩn đoán lỗi
 HMS
Chương 5
21
Thá
ng Sáu 2015
Hệ điều hành thời gian thực trong các
hệ thống điều khiển
 Yêu cầu đặc biệt
– Mã rất nhỏ, gọn
– Đơn giản, dễ sử dụng, dễ lập trình
– Thời gian phản ứng với một sự kiện (ví dụ khi xuất hiện ngắt
truyền thông, ngắt vào/ra, ) đủ ngắn
– Quản lý hiệu quả các tác vụ tuần hoàn, đảm bảo chính xác
về chu kỳ thời gian, độ rung nhỏ (jitter)
– Quản lý vào/ra hiệu quả, đơn giản
 Hai dạng thực hiện:
– Mã nguồn: Nhân thời gian thực, được dịch và liên kết 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.
 HMS
Chương 5
22
Thá
ng Sáu 2015
GIAO DIỆN PHẦN CỨNG

PHẦN CỨNG MÁY TÍNH
QUẢN LÝ
TASK
QUẢN LÝ
BỘ NHỚ
QUẢN LÝ
VÀO/RA
XỬ LÝ
GIAO TIẾP
QUẢN LÝ
SỰ KIỆN
GIAO DIỆN LẬP TRÌNH ỨNG DỤNG
CHƯƠNG TRÌNH
ỨNG DỤNG
CHƯƠNG TRÌNH
ỨNG DỤNG
CHƯƠNG TRÌNH
ỨNG DỤNG
Cấu trúc tiêu biểu của một hệ điều hành thời
gian thực
 HMS
Chương 5
23
Thá
ng Sáu 2015
Ví dụ phát triển: MicroC/OS-II
CHƯƠNG TRÌNH ỨNG DỤNG
MÃ XỬ LÝ ĐỘC LẬP
OS_CORE.C
OS_FLAG.C

OS_MBOX.C
OS_MEM.C
OS_TASK.C
OS_TIME.C
uCOS_II.C
uCOS_II.H
CẤU HÌNH µC/OS-II
OS_CFG.H
INCLUDE.H
CHUYỂN MÃ µC/OS-II
OS_CPU.H
OS_CPU_A. ASM
OS_CPU_C.C
CPU
TIMER
PHẦN MỀM
PHẦN CỨNG
 HMS
Chương 5
24
Thá
ng Sáu 2015
HĐHTGT trong các giải pháp PLC và
DCS
 Quản lý vào/ra, quản lý các ngoại vi
 Quản lý, xử lý truyền thông
 Nạp chương trình xuống (download) và lên (upload)
 Chạy từng (phần) chương trình ứng dụng
 Hỗ trợ chạy chế độ thử nghiệm, gỡ rối
 Tạo và quản lý các tác vụ (sự kiện và tuần hoàn)

 Quản lý bộ nhớ
 Chẩn đoán lỗi
 Giao diện người-máy đơn giản
 Tự động hồi phục trạng thái làm việc sau khi khởi
động lại (warm-start)
 HMS
Chương 5
25
Thá
ng Sáu 2015
Ví dụ một số RTOS trong các hệ
DCS/SoftPLC
 AdvantOCS (ABB): Advant Controller, hệ điều hành
riêng
 Freelance 2000 (ABB): D-PS hoặc D-FC, hệ điều
hành pSOS
 Symphonie (ABB): Melody, hệ điều hành pSOS
 DeltaV (Fisher-Rosermount): Visual Controller, hệ
điều hành TSOS
 I/A Series (Foxboro): CP60, hệ điều hành VRTX
 PlantScape (Honeywell): PlantScape Controller, hệ
điều hành riêng
 Centum CS1000/CS3000 (Yokogawa): PFCx-E,
AFS10x/AFS20x, hệ điều hành ORKID
 4Control (Softing): SoftPLC, hệ điều hành VxWorks

×