Giáo trình PLC (Dùng cho hệ Cao Đẳng và Trung Học)

MỤC LỤC

Chương 1: Giới thiệu vềPLC Trang

1.1 Tổng quan vềPLC. 03

1.2 Cấu trúc và hoạt động của PLC. 04

1.3 Phân loại PLC 06

1.4 So sánh PLC với các hệ điều khiển khác. 08

1.5 Phạm vi ứng dụng của PLC. 09

1.6 Thiết kếhệthống dùng PLC. 09

1.7 Giới thiệu PLC Siemens. 12

Chương 2: Thµnh phÇn c¬ b¶n cña PLC

2.1 Cấu trúc phần cứng. 13

2.2 Hoạt động của PLC. 16

2.3 Cấu trúc bộnhớ. 19

2.4 Phương pháp lập trình. 22

Chương 3: Tập lệnh PLC S7-200

3.1 Các lệnh cơbản. 24

3.2 Counter và Timer. 29

3.3 Lệnh so sánh. 32

3.4 Lệnh vềcổng logic. 35

3.5 Lệnh di chuyển nội dung MOVE 37

3.6 Lệnh chuyển đổi dữliệu 40

3.7 Lệnh tăng giảm 1 đơn vị. 44

3.8 Lệnh sốhọc 48

3.9 Lệnh nhảy và gọi chương trình con. 54

3.10 Truy cập đồng hồthời gian thực. 55

Chương 4: Cấu trúc chương trình PLC

4.1 Cấu trúc tuần tự. 59

4.2 Cấu trúc Automat. 64

4.3 Cấu trúc có chương trình con. 65

Chương 5: Phần mềm lập trình và mô phỏng

5.1 Phần mềm STEP 7-Micro. 67

Chương 6: Giới thiệu vềPLC- S7-300

6.1 Cấu trúc, chức năng PLC S7_300 70

6.2 Module CPU 70

6.3 Module mởrộng 71

6.4 Ngôn ngữlập trình 71

6.5 Giới thiệu PLC S7_300 CPU314IFM 72

6.6 Giải pháp mạng 82

pdf82 trang | Chuyên mục: PLC | Chia sẻ: dkS00TYs | Lượt xem: 3910 | Lượt tải: 5download
Tóm tắt nội dung Giáo trình PLC (Dùng cho hệ Cao Đẳng và Trung Học), để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
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. 
- 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: 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 72 
- 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ình ứ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: 
- 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). 
6.5.2 Các ngõ vào ra 
+ 20 ngõ vào số được định địa chỉ từ I124.0 đến I126.3 trong đó: 
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) 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 73 
Hình 5.3: Cấu tạo của PLC S7_300 CPU314IFM 
6.5.3 Tập lệnh (sử dụng dạng LAD) 
a. Các lệnh cơ bản 
 Nhóm lệnh logic tiếp điểm 
 Lệnh GÁN 
 Ví dụ: 
 Khi ngõ vào I0.0 lên mức 1 thì ngõ ra Q0.0 ON 
 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 
 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 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 74 
 Lệnh AND NOT 
 Ví dụ: 
 Khi I0.0 lên mức 1 và I0.1 ở mức 0 thì Q0.0 ON 
 Lệnh OR NOT 
 Ví dụ: 
 Khi I0.0 mức 1 hay I0.1 mức 0 thì Q0.0 ON 
 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ụ: 
 b. Nhóm lệnh so sánh với số nguyên và số thực 
- Với số nguyên 
 So sánh bằng 
Ví dụ: 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 75 
 So sánh lớn hơn 
 Ví dụ: 
 So sánh lớn hơn hoặc bằng 
 Ví dụ: 
 So sánh bé hơn 
 Ví dụ: 
 Số nguyên 16 bits Số nguyên 32 bits 
 So sánh bé hơn hoặc bằng 
 Ví dụ: 
- Với số thực 
So sánh bằng So sánh khác 
 Ví dụ: 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 76 
 So sánh lớn hơn So sánh lớn hơn hoặc bằng 
 Ví dụ: 
 So sánh lớn hơn So sánh bé hơn hoặc bằng 
 Ví dụ: 
c. Các lệnh toán học 
-Với số nguyên 
 Lệnh cộng số nguyên 
Ví dụ: 
 Số nguyên 16 bits Số nguyên 32 bits 
Lệnh trừ số nguyên 
Ví dụ: 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 77 
 Số nguyên 16 bits Số nguyên 32 bits 
Lệnh nhân số nguyên 
Ví dụ: 
 Số nguyên 16 bits Số nguyên 32 bits 
Lệnh chia số nguyên 
Ví dụ: 
 Số nguyên 16 bits Số nguyên 32 bits 
- Với số thực 
Lệnh cộng số thực Lệnh trừ số thực 
Ví dụ: 
Lệnh nhân số thực Lệnh chia số thực 
Ví dụ: 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 78 
d. Nhóm lệnh đổi kiểu dữ liệu 
 Các lệnh chuyển: 
 Số BCD→số nguyên 16 bits BCD →số nguyên 32 bits 
 Ví dụ: 
Số nguyên 16 bits→BCD Số nguyên32 bits→BCD 
 Ví dụ: 
 Số nguyên16 bits→số nguyên32bits 
Ví dụ: 
Số nguyên 32bits→số thực 
 Ví dụ: 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 79 
Lệnh làm tròn số (số thực→số nguyên 32 bits) 
Ví dụ: 
e. 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 
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 
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 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 80 
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ụ: 
 Khi ngõ vào I0.0 lên mức 1 thì sau 2s T1 sẽ ON 
f. Bộ đế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 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 81 
 Giống loại Counter trên nhưng không có chân kích đếm xuống. 
6.5.4 Thư viện hàm S7 300 thông dụng . 
6.6 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 
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ạnh về 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à 
GIÁO TRÌNH PLC DÙNG CHO HỆ CAO ĐẲNG VÀ TRUNG HỌC 
 TRANG - 82 
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. 
Tài liệu tham khảo: 
1.Festo- sofwaere – tools. 
2.Ladder diagram Festo _ IPC 
3.Tự động hoá với SIMATIC – S7-300. 

File đính kèm:

  • pdfGiáo trình PLC (Dùng cho hệ Cao Đẳng và Trung Học).pdf