Thông tin tài liệu
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 1
Contents Page
Objectives 2
Overviewofthe OrganizationBlocks… 3
StartupOBs 4
Interrupting the CyclicProgram……… 5
Time-of-DayInterrupt(OB10) 6
Cyclic Interrupt(OB35) 7
HardwareInterrupt(OB40) 8
Time-Delay Interrupt(OB20) 9
The Diagnostic InterruptandAsynchronousErrorInterrupt(OB81 to OB87) 10
AsynchronousError OBs 11
SynchronousErrors 12
SystemFunctions forControllingInterruptOBs 13
OB Start Information … 14
Exercise: Displaying the StartupType (OB100) 15
Exercise: Response to aSynchronousError 16
Date:25.07.2008
File:PRO1_12E.1
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
OrganizationBlocks
Operating
system
OB1
FC
FB
SFC
SFB
Other
OBs
FC
FB
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 2
Date:25.07.2008
File:PRO1_12E.2
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
Objectives
Sau khi hoàn thành chương này người học sẽ:
biết được các khối tổ chức OB -organization block sẵn có
hiểu được sự khác nhau giữa "Complete restart", "(Warm) Restart"
và"Coldrestart"
cóthể giải nghĩa được nguyên lý của xử lý ngắt
kiểu được "Time-of-DayInterrupt", "Cyclic Interrupt", "Hardware
Interrupt", "Time-Delay Interrupt", "Diagnostic Interrupt"
hiểu được các errorOB để quản lý các lỗi đồng bộ và không đồng bộ
vàcóthể thực thi chúng để tác động tới các phản ứng của CPU khi
lỗi xuất hiện
cóthể phân tích được các thông tin khởi động của OB vàcóthể
đánh giáchúng trong chương trình
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 3
Date:25.07.2008
File:PRO1_12E.3
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
OB 10 to 17
(Time-of-day
interrupts)
OB 80 to 87
(Asynchronous errors)
OB 20 to 23
(Time-delay interrupts)
Overviewof theOrganizationBlocks
Periodic
program
execution
OB 30 to 38
(Cyclic interrupts)
Event-driven
program
execution
OB 40 to 47
(Hardwareinterrupts)
Startup
OB 102
OB 100
OB 101
Cyclic
program
execution
OB 1
OB 121, 122
(Synchronous errors)
Interrupt OBs Error OBs
Startup Chương trình khởi động -startup program được thực hiện sau khi nguồn điện
được phục hồi và trước việc thi hành chương trình theo chu kỳ, hoặc sau một
sự thay đổi chế độ hoạt động (bằng nút chọn lựa chế độ của CPU hoặc bằng
PG). Các OB từ OB 100 đến OB 102 sẵn sàng để dùng cho việc này.
Trong các block này bạn cóthể đặt trước các kết nối truyền thông chẳng hạn.
Cyclic Program Chương trình cần xử lý liên tục được lưu trữ trong Organization Block OB 1.
Execution Saukhi chương trình được thi hành xong trong OB 1, một chu kỳ mới bắt đầu
bằng việc cập nhật vùng ảnh vàxửlý lệnh đầu tiên trong OB 1. Thời gian của
chu kỳ quét vàthời gian đáp ứng của hệ thông làkết quả của các thao tác này.
Thời gian của chu kỳ quét làtổng số thời gian thi hành của hệ điều hành CPU
vàthời gian để thi hành tất cả chương trình.
Thời gian đáp ứng làthời gian màmột đầu ra chuyển đổi tùy thuộc vào một tín
hiệu đầu vào, bằng 2 lần thời gian chu kỳ quét.
Periodic Program Với việc thực hiện chương trình tuần tự theo chu kỳ, bạn cóthể ngắt việc thực
Execution hiện chương trình tại các khoảng thời gian cố định (at fixed interval).Với các
ngắt theo chu kỳ, một trong các khối OB30 đến OB37 được thực hiện sau khi
hết thời gian định trước, vídụmỗi chu kỳ 100ms. Vídụcác block điều khiển
vòng (Control-loop block) với các khoảng thời gian lấy mẫu được gọi trong các
block này.
Với các ngắt theo thời gian trong ngày (time-of-day interrupt), một OB được
thực hiện ở một thời điểm nhất định. Vídụ như lưu dữ liệu vào mỗi ngày lúc
17:00 h (5:00 p.m.).
Event-driven Ngắt phần cứng cóthể dùng để đáp ứng nhanh đối với một sự kiện của quá
Program trình. Sau khi sự kiện xuất hiện chu kỳ quét được ngắt ngay lập tức vàmột
Execution chương trình ngắt được thực hiện.
Ngắt trễ (time-delay interrupt) đáp ứng sau một khoảng thời gian trễ đối với
một sự kiện của quátrình.
Đối với các error OB bạn cóthể xác định cách xử lý (behave) của chương
trình, vídụ như đối với trường hợp pin backup bị hỏng.
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 4
CompleteRestart Complete restart (khởi động lại hoàn toàn)sẽxóa vùng ảnh quátrình (PII,
PIQ) vàtất các bit nhớ, timer vàcounter không cókhả năng lưu trữ (non-
retentive). Các bit nhớ, timervàcounter cókhả năng lưu trữ cũng như các giá
trị hiện hành của data block được giữ nguyên (chỉ cóthể thực hiện được với
pin backup hoặc trường hợpS7-300dùkhông cópin backup códùngEPROM
và đã được cài đặt các thông số vùng nhớ cho CPU).
Chương trình lưu trong OB100 được thi hành một lần vàrồi việc xử lý
chương trình theo chu kỳ sẽ bắt đầu.
(Warm) Restart Khởi động kiểu restart giữ lại trạng thái của tất cả các địa chỉ (bit nhớ, timer,
counter, vùng ảnh quátrình,giátrị hiện tại của các data block). Chương trình
được lưu trong OB101sẽ được thực hiện một lần.
Rồi sau đó chương trình sẽ tiếp tục thực hiện từ điểm màngắt đã xuất hiện
(tắt nguồn, CPU STOP). Sau khi thực hiện xong "chu kỳ còn dư" này, việc
thực hiện chương trình tuần tự bắt đầu.
Cold Restart CPU 318-2 và417-4 cũng cókiểu khởi động cold restart. Kiểu khởi động này
cóthể được thiết lập để phục hồi nguồn điện trong công cụ HW Config khi
CPU đã được cài đặt thông số.
Sự khác nhau duy nhất giữa cold restart vàcomplete restart là: bên cạnh vùng
ảnh quátrình, tất cả các bit nhớ, timer vàcounter (ngay cả những cái cótính
lưu trữ được -retentive!) đều bị xóa. Cũng như vậy thìcác giátrị hiện tại của
data block cũng bị ghi đèlên bằng các giátrị hiện tại được lưu trong vùng nhớ
tải (load memory) hoặc với những giátrị mà được download lúc nguyên thủy
ban đầu cùng với các data block vào CPU.
Date:25.07.2008
File:PRO1_12E.4
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
StartupOBs
Readin PII
ExecuteOB1
Output PIQ
Delete the process images,
non-retentiveM, T, C
ExecuteOB 100
Output PIQ
Enable outputs
C
Y
C
L
E
Output PIQ
Enable outputs
STOP
yes
no
Monitoringtime
for restart
exceeded?
DeletePIQ (parameter-assignable)
Processresidualscan cycle
ExecuteOB 101
Output PIQ
Restart (manual)
•only forS7-400™
(accordingtosettingin HW-Config):
STOP -> RUN + WRST
CPU intheSTOPstate
(Peripheral modules have switchedalloutputstothe safe state)
CompleterRestart
automatic manual
S7-300™/400
Power ON
S7-300™
STOP->RUN
S7-400™
STOP->RUN
+ CRST
ExecuteOB1
Readin PII
C
Y
C
L
E
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 5
OBCalls Khối tổ chức -organization block (OB) làgiao diện giữa hệ điều hành của
CPU và chương trình.
Hệ điều hành gọi các OB riêng nhau. Cónhiều loại sự kiện khởi động (time-of-
day interrupt, hardware interrupt -xem hình) màmỗi cái lại dẫn đến sự khởi
động của OB liên quan của nó.
Interrupting Khi hệ điều hành gọi một OB khác, nósẽngắt việc thực hiện chương trình
the Cyclic Program theo chu kỳ vìOB1 cómức độ ưu tiên thấp nhất. Bất kỳ OB nào khác cũng có
thể ngắt chương trình chính (OB1) vàthực hiện chương trình của nó. Sau đó
OB1 lại tiếp tục thi hành tại điểm bị ngắt.
Nếu một OB được gọi cómức độ ưu tiên cao hơn OB đang được thi hành thì
OB cómức độ ưu tiên thấp hơn bị ngắt sau khi câu lệnh hiện tại của nó được
thực hiện xong. Hệ điều hành sẽ lưu toàn bộ ngăn xếp thanh ghi -register
stack cho block bị ngắt. Thông tin thanh ghi này sẽ được phục hồi khi hệ điều
hành tiếp tục thực hiện block bị ngắt đó.
Priorities Mọi việc thi hành OB đều cóthể bị ngắt bởi một sự kiện (OB) cómức ưu tiên
cao hơn ở các ranh giới lệnh (command boundaries). Mức độ ưu tiên được
chia từ 0 đến 27, trong đó0 cómức ưu tiên thấp nhất và28 cómức ưu tiên
cao nhất.
Các OB cómức ưu tiên như nhau thìkhông thể ngắt lẫn nhau được, nhưng
chúng sẽ được khởi động OB này rồi đến OB kia theo thứ tự màchúng được
ghi nhận.
Date:25.07.2008
File:PRO1_12E.5
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
SuchasOB82
(Prio.26) = Error
handling.Executedin
eventofwirebreakat
a analoginputPIW 352
SuchasOB10
(Prio.2) = Time-of-
day interrupt.
Executed oncea
minutefrom9:30
OB1
is
executed
continu-
ously
OB 1
3
Time-of-dayinterrupt
Cyclic interrupt
1
16
Errorhandling
Cyclicprogram
Time-delay interrupt
Hardwareinterrupt
2
12
26 / 28
OB 20
OB 40
OB 10
OB 35
OB 82
OB No.OB TypePriority
SuchasOB20 (Prio.3)
= Time-delay interrupt.
Execution starts3.25s
afterapart is
detected.
InterruptingtheCyclicProgram
until it is interrupted
by anotherOB
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 6
Date:25.07.2008
File:PRO1_12E.6
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
Time-of-DayInterrupt(OB10)
Time-of-Day Time-of-dayinterrupt (ngắt theo thời gian trong ngày) được dùng để thực hiện
Interrupts một chương trình nào đó được gọi trong OB 10 (như vídụ)1 lần ở một thời
điểm nào đóhoặc theo định kỳ (một lần trong một phút, một giờ, một ngày,
một tuần, một tháng, một năm) tính từ thời điểm đó.
Time-of-dayinterrupt được cấu hình bằng công cụ "HWConfig". Để chọn thời
gian vàcách thức OB10 được kích hoạt, bạn chọn menu CPU->Object
Properties-> chọn“Time-of-DayInterrupts"tab.
"Active" Nếu bạn chọn "Active", OB time-of-day interrupt sẽ được thi hành mỗi khi thực
hiện complete restart cho CPU.
Note Các system function SFC, trong chế độ chạy thực -runtime,cũng cóthể điều
khiển các time-of-day interrupt. Các SFC sau cóthể được sử dụng:
•SFC 28 "SET_TINT"Thiết lập ngày, thời gian vàthời kỳ (period) khởi
động
•SFC 29 "CAN_TINT"Hủy time-of-day interrupt
•SFC 30 "ACT_TINT"Kích hoạt time-of-day interrupt
•SFC 31 "QRY_TINT"Truy vấn (query) time-of-day interrupt.
S7-400™ Có đến 8 OB ngắt theo thời gian trong ngày khác nhau (OB 10 đến 17)dùng
cho PLC S7-400.
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 7
Cyclic Interrupt Cyclic (watchdog) interrupt (ngắt chu kỳ để giám sát lỗi) được dùng để thi
hành các block theo các khoảng thời gian cố định (fixed interval). OB ngắt chu
kỳ cho S7-300 làOB 35.
Khoảng thời gian gọi mặc định đối với OB 35 là100ms. Bạn cóthể thay đổi
giátrị này trong khoảng thời gian cho phép từ 1ms đến 1 phút.
StartingTime Khi bạn kích hoạt một ngắt điều khiển theo thời gian (time-controlled interrupt),
bạn chỉ định khoảng thời gian lên quan đến "starting time". Starting time bắt
đầu mỗi khi CPU chuyển từ STOP sang RUN.
Interval Bạn phải chắc chắn rằng khoảng thời gian (interval) màbạn chỉ định phải dài
hơn thời gian cần để thi hành. Hệ điều hành gọi OB35 ở thời điểm định trước.
Nếu OB35 vẫn đang hoạt động (active) ở thời điểm đó, hệ điều hành gọi OB80
(cyclic interrupt error OB -OB quản lý lỗi ngắt theo chu kỳ).
Note SFC -System function khi đang chạy thực (runtime) không thể điều khiển
được ngắt chu kỳ -cyclic interrupt.
S7-400™ Có đến 9 OB ngắt chu kỳ khác nhau (OB30 đến38)dùng cho PLC S7-400.
Date:25.07.2008
File:PRO1_12E.7
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
RUN OB35OB35OB35
Interval
OOB1 B1OB1 OB1 OB1 OB1 OB1 O B1
Prio 1
Prio 12
Cyclic Interrupt(OB35)
Interval Interval
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 8
HardwareInterrupt Chương trình trong OB hardware interrupt (OB ngắt phần cứng) (OB40) được
thực hiện ngay khi cómột lỗi nào đóxuất hiện.
Nhiều loại tín hiệu riêng biệt của các module cóthể gây ra ngắt phần cứng:
• Đối với các module tín hiệu cóthể cài đặt thông số (DI, DO, AI, AO) thìbạn
dùng công cụ "HW Config" để chỉ định tín hiệu sẽ gây ra ngắt phần cứng.
•Trong trường hợp các module CP vàFM, bạn chỉ định các đặc điểm ngắt
bằng cách dùng phần mềm cấu hình cho các module liên quan.
Example Trong vídụtrên, các giátrị giới hạn thích hợp được cấu hình cho một module
analog đầu vào. Nếu giátrị đi được vượt quágiới hạn thì OB40 được gọi.
Việc này cótác dụng giống như dùng một phép so sánh trong OB1 để gọi một
FB hoặc FC khi vượt quágiới hạn trên. Tuy nhiên nếu bạn dùng OB40 thìbạn
không cần viết một chương trình trong một khối khác.
Bạn cóthể dùng chương trình trong OB40 để tạo ra ngắt hoặc để điều khiển
quátrình.
S7-400™ Có đến 8 OB ngắt phần cứng khác nhau (OB40 đến 47) dùng cho PLC S7-
400.
Date:25.07.2008
File:PRO1_12E.8
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
Analoginput module
Upperlimit
value
Lower limit
value
HWConfig:
Analoginput
module properties
+27648
0
HardwareInterrupt(OB40)
CPU
properties
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 9
Time-Delay Chương trình trong một time-delay OB (OB trễ). Chương trình trong một
Interrupt time-delay OB (OB20) được thi hành sau một khoảng thời gian trễ đã định tính
từ lúc cómột sự kiện nào đóxảy ra.
OB20 chỉ cóthể được kích hoạt bằng cách gọi system function SFC32
(SRT_DINT). SFC32 cũng được dùng để thiết lập thời gian trễ.
SFC 32 •OB_NR= OB number: số hiệu của OB cần được thi hành với một thời
gian trễ đã định
•DTIME= Delay time: thời gian trễ (1 đến 60000ms)
•SIGN= User-specified signal for starting the time-delay interrupt OB:
tín hiệu do người sử dụng chỉ định để khởi động OB ngắt trễ.
•RET_VAL= Error code: mã lỗi, nếu một lỗi xuất hiện trong quátrình xử lý
OB ngắt trễ (xem phần online help để biết ý nghĩa của số
hiệu các lỗi).
Note Bên cạnh SFC32, còn cócác SFC để xử lý các ngắt trễ:
•SFC33 (CAN_DINT)= Cancel time-delay interrupt (hủy ngắt trễ)
•SFC34 (QRY_DINT)= Query time-delay interrupt (truy vấn ngắt trễ).
S7-400™ Có đến 4 OB ngắt trễ khác nhau (OB20 đến 23) dùng cho PLC S7-400.
Date:25.07.2008
File:PRO1_12E.9
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
( P )
( )
I 0.0M0.1
SFC 32
(SRT_DINT)
EN
ENO
OB_NR
DTIME
SIGN
RET_VAL
20
T#500ms
W#16#01
MW10
M2.0
Time-Delay Interrupt(OB20)
SITRAIN Training for
Automation and Drives
ST-7PRO1
OrganizationBlocks
Page 10
Asynchronous Các lỗi không đồng bộ làcác hỏng hóc trong chức năng của CPU. Chúng xuất
Errors hiện không đồng bộ với việc thực hiện chương trình vàkhông thể dò theo dấu
của lỗi (truy nguyên) đến một điểm cụ thể trong chương trình (vídụ như một
ngắt chẩn đoán từ một).
Response Nếu một lỗi được phát hiện trong chế độ RUN vàOB quản lý lỗi tương ứng đã
được lập trình thì OB đó được gọi và chương trình trong OB đó được thực
hiện. Vídụ chương trình này cóthể chứa:
•các lệnh để bật còi báo động
•các lệnh để sao lưu dữ liệu, tiếp đólàmột lệnh STOP
•một chương trình để ghi lại tần số lỗi xuất hiện, không cần chuyển CPU
sang trạng thái STOP.
Note Nếu một lỗi cụ thể xuất hiện màOB quản lý lỗi không hiện diện thìCPU tự
động chuyển sang trạng thái STOP.
Example Vídụ OB82 để ngắt xử lý lỗi không đồng bộ được gọi trong các tình huống
sau:
• đứt dây một module cókhả năng chẩn đoán
•lỗi nguồn cung cấp cho một module đầu vào analog
•phạm vi đo được của một module đầu vào analog bị vượt quá.v.v
Date:25.07.2008
File:PRO1_12E.10
SIMATIC
®
S7
Siemens AG 2003. All rights reserved.
SITRAIN Training for
Automation and Drives
Analoginput module
Wirebreak
+27648
0
The Diagnostic Interruptand AsynchronousErrorInterrupt
(OB81 to 87)
HWConfig:
Analoginput module
properties
CPU
properties
[...]... với cấp độ ưu tiên ngang với block đang được thi hành khi phát hiện lỗi Page 12 ST-7PRO1 Organization Blocks System Functions for Controlling Interrupt OBs Organization block Function Number Priority in S7-300 SFCs for controlling OBs Remarks HW Config alternative Time-of-day interrupt OB 10 to 17 2 SFC 28 to 31 Cyclic interrupt OB 30 to 38 12 none Time-delay interrupt OB 20 to 23 3 SFC32 to 34 Hardware... reserved Notes: Task: What To Do: SITRAIN Training for Automation and Drives 0 8 1 5 AI1 AI2 AO1 AO2 IW 4 / IW 2 Date: File: 25.07.2008 PRO1_12E.15 SITRAIN Training for Automation and Drives Trong hệ thống S7-300, chỉ có khối khởi động - startup block OB 100 dành cho kiểu khởi động lại manual restart cũng như kiểu khởi động lại automatic warm restart Nếu cần các phản ứng chương trình khác nhau tùy thuộc . Drives
OrganizationBlocks
Operating
system
OB1
FC
FB
SFC
SFB
Other
OBs
FC
FB
SITRAIN Training for
Automation and Drives
ST- 7PRO1
OrganizationBlocks
Page 2
Date:25.07.2008
File :PRO1_ 12E. 2
SIMATIC
®
S7
Siemens. trình
SITRAIN Training for
Automation and Drives
ST- 7PRO1
OrganizationBlocks
Page 3
Date:25.07.2008
File :PRO1_ 12E. 3
SIMATIC
®
S7
Siemens AG 2003. All rights
Ngày đăng: 02/03/2014, 22:46
Xem thêm: plc s7-300 vietnam pro1_12e_obs, plc s7-300 vietnam pro1_12e_obs