Tải bản đầy đủ (.doc) (131 trang)

điều khiển giám sát hệ thống mạng plc ,điều khiển lò nhiệt và máy xếp hàng tự động

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 (1.63 MB, 131 trang )

OUTPUT

OUTPUT OUTPUT
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Chương 1 GIỚI THIỆU PLC S7_300
1.1. Giới thiệu chung về PLC S7_300
1.1.1 Cấu trúc chung của một PLC
PLC là thiết bò điều khiển logic khả trình (Program Logic
Control), là loại thiết bò cho phép thực hiện linh hoạt các thuật toán điều
khiển số thông qua 1 ngôn ngữ lập trình, thay cho việc phải thể hiện
thuật toán đó bằng mạch số. Cũng như các thiết bò lập trình khác, hệ
thống lập trình cơ bản của PLC bao gồm 2 phần: khối xử lý trung tâm
(CPU:Central Processing Unit) và hệ thống giao tiếp vào/ra (I/O) như sơ
đồ khối:
INPUT PROCESSING UNIT
Hình1.1: Sơ đồ khối của hệ thống điều khiển lập trình
Khối điều khiển trung tâm (CPU) gồm 3 phần: bộ xử lý, hệ thống
bộ nhớ và hệ thống nguồn cung cấp.
Hình1.2: Sơ đồ khối tổng quát của CPU
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
Processor Memory
Power
Supply
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
1.1.2 Cấu trúc, chức năng PLC S7_300
Các khối chức năng :
° Khối tín hiệu (SM:singnal module)
- Khối ngõ vào digital: 24VDC, 120/230VAC
- Khối ngõ ra digital: 24VDC
- Khối ngõ vào analog: Áp, dòng, điện trở, thermocouple


° Khối giao tiếp (IM): Khối IM360/IM365 dùng để nối nhiều cấu
hình. Chúng điều khiển nhiều thanh ghi của hệ thống.
° Khối giả lập (DM): Khối giả lập DM370 dự phòng các khối tín
hiệu chưa được chỉ đònh.
° Khối chức năng (FM): thể hiện những chức năng đặc biệt sau:
- Đếm
- Đònh vò
- Điều khiển hồi tiếp
° Xử lý liên lạc ( CP):
- Nối điểm-điểm
- Mạng PROFIBUS
- Ethernet công nghiệp
1.1.3 Module CPU
Module CPU là loại module có chứa bộ vi xử lý, hệ điều hành, bộ
nhớ, các bộ thời gian, bộ đếm, cổng truyền thông (RS485)… và có thể có
1 vài cổng vào ra số. Các cổng vào ra số có trên module CPU được gọi
là cổng vào/ra onboard.
PLC S7_300 có nhiều loại module CPU khác nhau. Chúng được
đặt tên theo bộ vi xử lý có trong nó như module CPU312, module
CPU314, module CPU315…
Những module cùng sử dụng 1 loại bộ vi xử lý, nhưng khác nhau
về cổng vào/ra onboard cũng như các khối hàm đặc biệt được tích hợp
sẵn trong thư viện của hệ điều hành phục vụ việc sử dụng các cổng
vào/ra onboard này sẽ được phân biệt với nhau trong tên gọi bằng thêm
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
cụm chữ IFM(Intergrated Function Module). Ví dụ như Module CPU312
IFM, Module CPU314 IFM…
Ngoài ra còn có các loại module CPU với 2 cổng truyền thông,

trong đó cổng truyền thông thứ hai có chức năng chính là phục vụ việc
nối mạng phân tán. Các loại module này phân biệt với các loại module
khác bằng cụm từ DP (Distributed Port) như là module CPU315-DP.
Trong luận văn sử dụng loại module 314 IFM sẽ được giới thiệu
kó ở phần sau.
1.1.4 Module mở rộng
Các module mở rộng được chia thành 5 loại chính:
1.1.4.1- PS (Power supply): Module nguồn nuôi. Có 3 loại:2A,
5A, 10A.
1.1.4.2- SM (Signal module): Module mở rộng cổng tín hiệu
vào/ra, bao gồm:
a-DI (Digital input): Module mở rộng các cổng vào số. Số
các cổng vào số mở rộng có thể là 8, 16, 32 tuỳ từng loại module.
b-DO (Digital output): Module mở rộng các cổng ra số. . Số
các cổng ra số mở rộng có thể là 8, 16, 32 tuỳ từng loại module.
c-DI/DO (Digital input/ Digital output): Module mở rộng
các cổng vào/ra số Số các cổng vào/ra số mở rộng có thể là 8
vào/8ra hoặc 16 vào/ 16 ra tuỳ từng loại module.
d-AI (Analog input): Module mở rộng các cổng vào tương
tự. Số các cổng vào tương tự có thể là 2, 4, 8 tuỳ từng loại
module.
e-AO (Analog output): Module mở rộng các cổng ra tương
tự. Số các cổng ra tương tự có thể là 2, 4 tuỳ từng loại module.
f-AI/AO (Analog input/ Analog output): Module mở rộng
các cổng vào/ra tương tự. Số các cổng vào/ra tương tự có thể là 4
vào/2 ra hay 4 vào/4 ra tuỳ từng loại module.
1.1.4.3- IM (Interface module): Module ghép nối, nối các
module mở rộng alò với nhau thành 1 khối và được quản lý chung bởi 1
module CPU. Thông thường các module mở rộng được gá liền với nhau
trên 1 thanh đỡ gọi là rack. Trên mỗi rack có thể gán nhiều nhất là 8

SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
module mở rộng (không kể module CPU, module nguồn nuôi. Một
module CPU S7_300 có thể làm việc trực tiếp với nhiều nhất 4 racks và
các racks này phải được nối với nhau bằng module IM.
1.1.4.4- FM (Function module): Module có chúc năng điều khiển
riêng. Ví dụ như module PID, module điều khiển động cơ bước…
1.1.4.5- CP (Communication module): Module phục vụ truyền
thông trong mạng giừa các PLC với nhau hoặc giữa PLC với máy tính.
1.1.5 Ngôn ngữ lập trình
PLC S7_300 có 3 ngôn ngữ lập trình cơ bản sau:
° Ngôn ngữ “liệt kê lệnh”, ký hiệu là STL (Statement List).
Đây là dạng ngôn ngữ lập trình thông thường của máy tính. Một chương
trình được ghép bởi nhiều câu lệnh theo 1 thuật toán nhất đònh, mỗi lệnh
chiếm 1 hàng và đều có cấu trúc chung là “tên lệnh”+”toán hạng”.
Ví dụ:
° Ngôn ngữ “hình thang”, ký hiệu là LAD (Ladder Logic).
Đây là dạng ngôn ngữ đồ hoạ thích hợp với những người quen thiết kế
mạch điều khiển logic.
Ví dụ:
° Ngôn ngữ “hình khối”, ký hiệu là FBD (Function Block
Diagram). Đây là dạng ngôn ngữ đồ hoạ thích hợp với những người quen
thiết kế mạch điều khiển số.
Ví dụ:
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Để thuận tiện trong việc lập trình, trong luận văn này chúng em
chọn ngôn ngữ LAD để lập trình.

1.2. Giới thiệu PLC S7_300 CPU314IFM
1.2.1 Cấu trúc bộ nhớ
Bộ nhớ gồm 48KB RAM, 48KB ROM, không có khả năng mở
rộng và tốc độ xử lý gần 0.3ms trên 1000 lệnh nhò phân, bộ nhớ được
chia trên các vùng:
+ Vùng chứa chương trình ứng dụng:
- OB (Organisation block):Miền chứa chương trình tổ chức,
trong đó:
Khối OB1: Khối tổ chức chính, mặc đònh, thực thi lặp vòng. Nó
được bắt đầu khi quá trình khởi động hoàn thành và bắt đầu trở lại
khi nó kết thúc.
Khối OB10 (Time of day interrupt): được thực hiện khi có tín hiệu
ngắt thời gian.
Khối OB20 (Time delay interrupt): được thực hiện sau 1 khoảng
thời gian đặt trước.
Khối OB35 (Cyclic Interrupt): khối ngắt theo chu kì đònh trước
Khối OB40 (Hardware Interrupt): được thực hiện khi tín hiệu ngắt
cứng xuất hiện ở ngõ vào I124.0…I124.3
- FC (Function): Miền chứa chương trình con được tổ chức thành
hàm có biến hình thức để trao đổi dữ liệu với chương trình đã
gọi nó, được phân biệt bởi các số nguyên. Ví dụ: FC1, FC7,
FC30…ngoài ra còn có các hàm SFC là các hàm đã được tích
hợp sẵn trong hệ điều hành.
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
- FB (Function Block): tương tự như FC, FB còn phải xây dựng
1khối dữ liệu riêng gọi là DB (Data Block) và cũng có các
hàm SFB là các hàm tích hợp sẵn trong hệ điều hành.
+ Vùng chứa các tham số hệ điều hành và chương trình ứng dụng:

- I (Process image input): Miền bộ đệm dữ liệu các ngõ vào số.
Trước khi bắt đầu thực hiện chương trình, PLC sẽ đọc tất cả giá trò
logic của các cổng vào rồi cất giữ chúng trong vùng I. khi thực
hiện chương trình CPU sẽ sử dụng các giá trò trong vùng I mà
không đọc trực tiếp từ ngõ vào số.
- Q (Process image output): tương tự vùng I, miền Q là bộ đệm
dữ liệu cổng ra số. Khi kết thúc chương trình, PLC sẽ chuyển giá
trò logic của bộ đệm Q tới các cổng ra số.
- M (Memory): Miền các biến cờ. Do vùng nhớ này không mất
sau mỗi chu kì quét nên chương trìng ứng dụng sẽ sử dụng vùng
nhớ này để lưu giữ các tham số cần thiết. Có thể truy nhập nó
theo bit (M), byte (MB), theo từ (MW) hay từ kép (MD).
- T (Timer): Miền nhớ phục vụ bộ thời gian bao gồm việc lưu
trữ các giá trò đặt trước (PV-Preset Value), các giá trò tức thời
(CV-Current Value) cũng như các giá trò logic đầu ra của Timer.
- C (Counter): Miền nhớ phục vụ bộ đếm bao gồm việc lưu giữ
các giá trò đặt trước (PV-Preset Value), các giá trò tức thời (CV-
Current Value) cũng như các giá trò logic đầu ra của Counter.
- PI: Miền đòa chỉ cổng vào của các module tương tự (I/O
External input)ï. Các giá trò tương tự tại cổng vào của module
tương tự sẽ được module đọc và chuyển tự động theo những đòa
chỉ. Chương trình ứng dụng có thể truy cập miền nhớ PI theo từng
byte (PIB), từng từ (PIW) hoặc theo từng từ kép (PID).
- PQ: Miền đòa chỉ cổng ra của các module tương tự (I/O
External output)ï. Các giá trò tương tự tại cổng vào của module
tương tự sẽ được module đọc và chuyển tự động theo những đòa
chỉ. Chương trình ứng dụng có thể truy cập miền nhớ PI theo từng
byte (PQB), từng từ (PQW) hoặc theo từng từ kép (PQD).
+ Vùng chứa các khối dữ liệu, được chia thành 2 loại:
SVTH : NGUYỄN TRỌNG VÂN

LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
- DB (Data block): Miền chứa các dữ liệu được tổ chúc thành
khối. Kích thước hay số lượng khối do người sử dụng qui đònh. Có
thể truy nhập miền này theo từng bit (DBX), byte( DBB), từng từ
(DBW), từ kép (DBD).
- L (Local data block): Miền dữ liệu đòa phương, được các khối
chương trình OB, FC, FB tổ chức và sử dụngcho các biến nháp tức
thời và trao đổi dữ liệu của biến hình thức với những khối đã gọi
nó. Toàn bộ vùng nhớ sẽ bò xoá sau khi khối thực hiện xong. Có
thể truy nhập theo từng bit (L), byte (LB), từ (LW), hoặc từ kép
(LD).
1.2.2 Các ngõ vào ra
+ 20 ngõ vào số được đònh đòa chỉ từ I124.0 đến I126.3 trong đó:
o Các ngõ vào từ I124.0 đến I124.3 là các ngõ vào đặc
biệt có thể được dùng làm bộ đếm tốc độ cao (high
speed counter) đến 10Khz hoặc ngắt ngoài.
+ Các ngõ ra số từ Q124.0 đến Q125.7 có mức điện áp là 24VDC
và dòng tối đa là 0.5A (16 ngõ ra số)
+ Có 4 ngõ vào Analog có đòa chỉ từ PIW128 đến PIW134 và
1ngõ ra tương tự có đòa chỉ là PQW128 với tín hiệu dòng
±
20mA
hoặc áp
±
10V có độ phân giải 11 bit và 1 bit dấu. Các ngõ vào
tương tự có đặc điểm là chỉ được truy cập bằng từ (PIW)

Hình1.3 :Cấu tạo của PLC S7_300 CPU314IFM
SVTH : NGUYỄN TRỌNG VÂN

LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
1.2.3 Tập lệnh (sử dụng dạng LAD)
1.2.3.1Các lệnh cơ bản
1.2.3.1.1 Nhóm lệnh logic tiếp điểm
a. Lệnh GÁN
Ví dụ:
Khi ngõ vào I0.0 lên mức 1 thì ngõ ra Q0.0 ON
b. Lệnh AND
Ví dụ:
Khi I0.0 và I0.1 đồng thời lên mức 1 thì ngõ ra Q0.0 ON
c. Lệnh OR
Ví dụ:
Khi 1 trong 2 ngõ vào I0.0 hoặc I0.1 lên mức 1 thì ngõ ra Q0.0 ON
d. Lệnh AND NOT
Ví dụ:
Khi I0.0 lên mức 1 và I0.1 ở mức 0 thì Q0.0 ON
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
e. Lệnh OR NOT
Ví dụ:
Khi I0.0 mức 1 hay I0.1 mức 0 thì Q0.0 ON
f. Lệnh GÁN có điều kiện
° Lệnh gán giá trò 1
Ví dụ:
° Lệnh gán giá trò 0
Ví dụ:
1.2.3.2. Nhóm lệnh so sánh với số nguyên và số thực
* Với số nguyên

a. So sánh bằng
Ví dụ:
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
b. So sánh lớn hơn
Ví dụ:

c. So sánh lớn hơn hoặc bằng
Ví dụ:

d. So sánh bé hơn
Ví dụ:

Số nguyên 16 bits Số nguyên 32 bits
e. So sánh bé hơn hoặc bằng
Ví dụ:
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
* Với số thực
a- So sánh bằng b- So sánh khác
Ví dụ:

c- So sánh lớn hơn d- So sánh lớn hơn hoặc bằng
Ví dụ:

e- So sánh lớn hơn f- So sánh bé hơn hoặc bằng
Ví dụ:


SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
1.2.3.3. Các lệnh toán học
* Với số nguyên
a. Lệnh cộng số nguyên
Ví dụ:
Số nguyên 16 bits Số nguyên 32 bits
b- Lệnh trừ số nguyên
Ví dụ:
Số nguyên 16 bits Số nguyên 32 bits
c- Lệnh nhân số nguyên
Ví dụ:
Số nguyên 16 bits Số nguyên 32 bits
d- Lệnh chia số nguyên
Ví dụ:
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN

Số nguyên 16 bits Số nguyên 32 bits
* Với số thực
a- Lệnh cộng số thực b- Lệnh trừ số thực
Ví dụ:
c- Lệnh nhân số thực d- Lệnh chia số thực
Ví dụ:
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
1.2.3.4. Lệnh đổi kiểu dữ liệu

Các lệnh chuyển:
a-Số BCD

số nguyên 16 bits b- Số BCD

số nguyên 32 bits
Ví dụ:
c-Số nguyên 16 bits

BCD d- Số nguyên32 bits

BCD
Ví dụ:
e- Số nguyên16 bits

số nguyên32bits
Ví dụ:
f- Số nguyên 32bits

số thực
Ví dụ:
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
g- Lệnh làm tròn số (số thực

số nguyên 32 bits)
Ví dụ:
1.2.3.5. Bộ thời gian (Timer)
Bộ thời gian là bộ tạo thời gian trễ t mong muốn giữa tín

hiệu logic đầu vào u(t) và tín hiệu logic đầu ra y(t).
S7_300 có 5 loại Timer khác nhau. Thời gian trễ t mong
muốn được khai báo với Timer bằng 1 giá trò 16 bits trong đó 2
bits cao nhất không sử dụng, 2bits cao kế tiếp là độ phân giải của
Timer, 12 bits thấp là 1 số nguyên BCD trong khoảng 0
÷
999 được
gọi là PV(Preset Value).
Thời gian trễ t chính là tích:
t=Độ phân giải*PV
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN

Không sử dụng Giá trò PV dưới dạng mã BCD

9990
≤≤
PV
Độ phân giải
Thời gian có thể được khai báo dưới dạng bằng kiểu S5T
Ví dụ: S5T#3s
Trong luận văn sử dụng loại Timer SD là loại Timer trễ theo sườn
lên không có nhớ (On Delay Timer):Ngõ ra lên mức 1 khi ngõ vào EN=1
và giá trò CV (Current Value)=0.
Ví dụ:
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 10ms

0 1 100ms
1 0 1s
1 1 10s
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Khi ngõ vào I0.0 lên mức 1 thì sau 2s T1 sẽ ON
1.2.3.6Bộ đếm (Counter)
Counter là bộ đếm có chức năng đếm sườn xung của tín
hiệu đầu vào. Có tối đa 256 Counter được kí hiệu từ C0
÷
C255
Ví dụ: Loại Counter đếm lên và đếm xuống
- CU : tín hiệu đếm lên (BOOL)
- CD : tín hiệu đếm (BOOL)
- S : tín hiệu đặt (BOOL), khi có sườn lên thì giá trò đặt
được nạp cho CV
- PV : giá trò đặt (WORD)
- R : tín hiệu xoá (BOOL), khi có sườn lên thì giá trò CV
được xoá về 0.
- Q : ngõ ra
- CV : giá trò hiện tại của bộ đếm dạng Integer
- CV_BCD : giá trò hiện tại của bộ đếm dạng BCD
Loại Counter đếm lên
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Giống loại Counter trên nhưng không có chân kích đếm xuống.
1.3. Giải pháp mạng
Mạng công nghiệp là hệ thống đo lường và điều khiển hiện đại
bao gồm máy tính, PLC, vi xử lý ghép nối với cảm biến và chấp hành,
thông thường các thiết bò này không tập trung mà phân tán, việc trao đổi

thông tin được thực hiện dưới dạng số và truyền nối tiếp.
Mạng công nghiệp thường gồm 7 lớp: Lớp vật lý, lớp liên kết dữ
liệu, lớp mạng, lớp vận chuyển, lớp phiên, lớp trình và lớp ứng dụng.
Tuy nhiên có 1 số mạng người ta chỉ thiết kế trên hai hoặc ba lớp cơ bản,
tuỳ vào mỗi hãng mà có các mạng khác nhau. Sau đây là 1 số mạng
công nghiệp đã được sử dụng rộng rãi:
- Mạng Ethernet
- Foundation FieldBus, MPI, Profibus
- Can
- DiviceNet
- ModBus
- SDS (Smart distributed System)
- InterBus-S
- AS-Interface (Actuaator Sensor Interface)
- Combobus-S, Combobus-D
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Trong luận văn này chỉ giới thiệu một số mạng công nghiệp đang
được sử dụng và đi sâu vào tìm hiểu sự hỗ trợ của PLC S7_300 vào kết
nối mạng và giao tiếp với máy tính.
Hiện nay, để giao tiếp giữa PLC với máy tính, đơn giản nhất là sử
dụng phần mềm WinCC được cài đặt trên máy tính cùng với cáp chuyển
đổi PPI hoặc MPI (Nếu muốn kết nối nhiều PLC) chuyển đổi tín hiệu
RS485 sang RS232 truyền sang máy tính vào cổng Com RS232. WinCC
là phần mềm tương đối mạnh bao gồm các thư viện được viết sẵn tuy
nhiên WinCC chưa phải là 1 ngôn ngữ lập trình hướng đối tượng hoàn
chỉnh như C
++
, Delphi hay Visual Basic mà là phần mềm đóng gói các

thao tác, ứng dụng, hoạt động thông dụng trong công nghiệp dựa trên
ngôn ngữ lập trình C. Vì thế sẽ đỡ mất công sức rất nhiều để lập trình
trên PLC và trên máy tính khi sử dụng phần mềm WinCC và ngược lại,
nếu dùng các ngôn ngữ lập trình như C
++
, Delphi hay Visual Basic, khi
đó ta phải lập trình mạng cho hệ thống và phải dựa vào các hàm lập sẵn
cho Module truyền thông của PLC S7_300.
Không phải mọi CPU đều có Module truyền thông CP (Communication
Processor), CP có ưu điểm là có sự hỗ trợ mạnhvề hàm thư viện và tính
năng vượt trội như tốc độ, số Byte dữ liệu và sự tương thích cao. Tuy
nhiên hầu hết các CPU đều có ít nhất 1 cổng MPI là cổng COM RS485
dùng để đổ chương trình vào ROM của PLC, giao tiếp và nối mạng. Một
số hàm được lập trình sẵn để phục vụ cho cổng COM:
- SFC60”GD_SND” (global data send): gởi dữ liệu dưới dạng gói
GD, gói GD phải đươc tạo trước bằng phần mềm STEP7 (sẽ được trình
bày kó ở trong chương truyền thông bằng MPI).
- SFC61”GD_RCV” (global data receive): nhận dữ liệu dưới dạng
gói GD.
- SFC65”X_SEND”: gởi dữ liệu đến đối tác truyền thông khác.
- SFC66”X_RCV” : nhận dữ liệu từ đối tác truyền thông khác.
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Chương 2 : THƯ VIỆN HÀM S7 300 THÔNG DỤNG
2.1. Bộ đếm tốc độ cao
2.2. Hàm chuyển đổi SCALE FC105
Để việc chuyển đổi thuận tiện, ta có thể sử dụng các hàm thư
viện. Hàm thư viện FC105 (Thư viện Standard, mục TI-S7 converting
blocks) có công dụng chuyển đổi dữ liệu đầu vào PIW của module

Analog dạng INT sang dạng đại lượng cần đo. Nó là hàm tuyến tính:
OUT=
LIMLOKIN
KK
LIMLOLIMHI
_)(
__
1
12
+−


Trong đó:
OUT: giá trò đại lượng đo, dạng số thực.
IN : số đo từ PIW (ngõ vào Analog), dạng số nguyên
K
2
: giá trò số nguyên giới hạn trên ở đầu vào PIW (27648)
K
1
: giá trò số nguyên giới hạn dưới ở đầu vào PIW
- với đầu vào Bipolar : -27648
- Với đầu vào Unipolar: 0
HI_LIM : giới hạn trên đại lượng đo.
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
LO_LIM: giới hạn dưới đại lượng đo.
Biến đổi này có thể minh họa qua đồ thò
OUT

HI_LIM
K
1
K
2
IN

LO_LIM
Hình :Đồ thò biến đổi FC105
Ví dụ: Nếu đầu vào PIW128 của Module Analog có thang đo 0
÷
10V
Ta gọi hàm FC105, và gán các tham số tương ứng để được đầu ra là số
thực tính theo đơn vò Volt, đưa đến MD0
Hàm FC105 dạng LAD:
Nếu giá trò ở đầu vào PIW128 là 9123, ta có đầu ra là 3,3(v)
2.3. Hàm SFC40 (EN_INT)
Hàm có tác dụng gỡ bỏ mặt nạ che:
 Của 1 tín hiệu ngắt,
 Của 1 nhóm các tín hiệu ngắt hoặc
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
 Của tất cả các tín hiệu ngắt và tín hiệu báo
lỗi không đồng bộ.
Khi 1 tín hiệu ngắt hay báo lỗi không đồng bộ được gỡ bỏ mặt nạ che,
hệ thống sẽ gọi khối OB tương ứng chứa chương trình xử lý mỗi khi xuất
hiện tín hiệu ngắt, báo lỗi này.
Hàm SFC40 có các tham biến hình thức vào ra như sau:
Loại

biến
Tên biến Kiểu
dữ
liệu
Ý nghóa
IN MODE Byte Xác đònh loại tín hiệu ngắt, báo lỗi
được bỏ mặt nạ che:
B#16#0:Bỏ mặt nạ che cho tất cả
các tín hiệu ngắt và tín hiệu báo lỗi
không đồng bộ.
B#16#1:Bỏ mặt nạ che cho các tín
hiệu ngắt, báo lỗi thuộc 1 nhóm
nhất đònh. Nhóm các tín hiệu này
phải được chỉ thò bởi tên khối OB
đầu tiên của nhóm cho biến
OB_NR.
B#16#2: Bỏ mặt nạ che cho 1 tín
hiệu ngắt. Tín hiệu ngắt được bỏ
mặt nạ phải được chỉ thò bởi tên
khối OB tương ứng cho biến
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
OB_NR.
IN OB_NR Int Tên khối OB của tín hiệu ngắt, báo
lỗi được bỏ mặt nạ che.
OUT RET_VAL Int Giá trò trả về của hàm
W#16#0000:Hàm làm việc bình
thường
W#16#8090:Dữ kiệu cho OB_NR

bò sai.
Ví dụ: dạng LAD của hàm SFC40
2.4 Hàm SFC0 : thiết lập đồng hồ .
Với hàm này ta có thể thiết lập thời gian (ngày, giờ, phút và giây
cho đồng hồ của CPU). Khi ta gọi hàm SFC0 là lúc khởi động cho đồng
hồ . Đồng hồ sau đó sẽchạy theo ngày giờ đã thiết lập
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Ngõ vào PDT nhập ngày giờ muốn thiết lập (kiểu dữ liệu DT ,
chẳng hạn nếu bạn muốn thiết lập ngày giờ là Ngày 15 tháng 1 năm
1995 lúc 10 giờ 30 phút 30 giây thì ta nhập DT#1995-01-15-10:30:30 ).
Chân RET_VAL trả về mã của lỗi nếu có lỗi xảy ra trong suốt
quá trình thực hiện lệnh.
2.5. Hàm SFC1 Read_clock
Với hàm này ta có thể đọc ngày hiện tại trong đồng hồ của CPU
2.6. Hàm SFC20 BLKMOV
Với hàm này ta có thể copy nội dung từ vùng nhớ này đến vùng
nhớ khác .
Phạm vi sử dụng :có thể sao chép tất cả các kiểu dữ liệu ngoại trừ
• Các khối loại : FB , SFB , FC , SFC , OB .
• Counters
• Timerd
• Các vùng nhớ I/O ngoại vi .
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN
LUẬN VĂN TỐT NGHIỆP GVHD : BÙI THANH HUYỀN
Các tham số của hàm :
• SCR BLK : Vùng nhớ nguồn (không cho phép dữ liệu kiểu
chuổi ).

• RET_VAL : Mã của lỗi sẽ được trả về ở đầu ra này .
• DST BLK : Vùng nhớ đích ( không cho phép dữ liẹu kiểu
chuổi).
Chú ý :
• Vùng nhớ nguồn và đích không được trùng lắp .
• Nếu vùng dữ liệu nguồn lớn hơn vùng dữ liệu đích thì hàm
chỉ sao chép những dữ liệu từ vùng nguồn tương ứng với khả
nănglưu trữ của vùng đích .
• Ngược lại nếu vùng dữ liệu đích lớn hơn vùng dữ liệu nguồn
thì chỉ vùng dữ liệu đích tương ứng với vùng dữ liệu nguồn
được sao chép dữ liệu .
2.7. Hàm SFC 21 FILL
Với hàm này ta có thể khởi tạo một vùng nhớ (vùng nguồn ) với
nội dung của vùng nhớ khác . Hàm SFC21 sẽ chép nội dung vào vùng
đích cho đến khi hoàn toàn đầy đủ
SVTH : NGUYỄN TRỌNG VÂN
LÊ ANH VĂN

×