Để thực hiện một trương trình điều khiển thì PLC phải có tính năng như một máy tính, hay phải có bộ vi xử lý CPU , một hệ điều hành, bộ nhớ lưu chương trình điều khiển, dữ liệu và các cổ
Trang 1Chương 2 Tìm hiểu về PLC S7-200 của hãng Siemens.
2.1 Giới thiệu về PLC.
PLC viết tắt của (Progammble Logic Control), hình thành từ các nhóm kĩ sư hãng general Motors năm 1968 với ý tưởng ban đầu là thiết kế một bộ điều khiển thỏa mãn các yêu cầu sau:
Lập trình dễ dàng, ngôn ngữ lập trình dễ hiểu
Dễ dàng sửa chũa thay thế
Ổn định trong môi trường công nghiệp
Giá cả cạnh tranh
Dung lượng bộ nhớ lớn để có thể chứa được những chương trình phức tạp
Hoàn toàn tin cậy trog môi trường công nghiệp
Giao tiếp được với các thiết bị thông minh khác như : máy tính, nối mạng, các Modul mở rộng
Thiết bị điều khiển logic khả trình PLC hiện nay có ứng dụng rất rộng rãi
Thiết bị điều khiển logic khả trình PLC đáp ứng được hầu hết các yêu cầu và như là yếu tố chính trong việc nâng cao hơn nữa hiệu quả sản xuất trong công nghiệp Trước đây thì việc tự động hoá chỉ được áp dụng trong sản xuất hàng loạt năng suất cao Hiện nay cần thiết phải tự động hoá cả trong sản xuất nhiều loại khác nhau để nâng cao năng suất và chất lượng
Để thực hiện một trương trình điều khiển thì PLC phải có tính năng như một máy tính, hay phải có bộ vi xử lý( CPU ), một hệ điều hành, bộ nhớ lưu chương trình điều khiển, dữ liệu và các cổng vào/ra để giao tiếp với nhiều đối tượng điều khiển và trao đổi thong tin với môi trường xung quanh Bên cạnh đó, nhằm phục vụ bài tán điều khiển số, PLC còn cần có thêm các khối chức năng đặc biệt khác như bộ đếm( Counter ), bộ định thì( timer)… và những khối hàm chuyên dụng khác
2.2 PLC SIMATIC S7-200 CPU 226:
2.2.1 Cấu trúc phần cứng:
S7-200 là thiết bị điều khiển logic khả trình loại nhỏ của hãng SIEMENS
(CHLB Đức) có cấu trúc theo kiểu Modul và có các modul mở rộng Các modul này được sử dụng cho nhiều ứng dụng lập trình khác nhau Thành phần cơ bản của S7-200
là khối vi xử lý CPU-226
modul Memory
In put modul
Link
Hình 4.1 Cấu trúc cơ bản của PLC
Trang 2CPU 226 có các đặc điểm sau:
CPU-226 bao gồm 24 ngõ vào và 16 ngõ ra, có khả năng thêm 7 modul mở rộng
6ES7216-2AD23-0XB0
Nguồn cung cấp: 24 VDC
Ngõ ra số : 16 DO DC
Bộ nhớ chương trình: 24KB
Bộ nhớ dữ liệu: 10KB 2 PPI/FREEPORT PORTS
Điều khiển PID: Có
Phần mềm: Step 7 Micro/WIN
Thời gian xử lý 1024 lệnh nhị phân : 0.37ms
Bit memory/Counter/Timer : 256/256/256
Bộ đếm tốc độ cao: 6 x 60 Khz
Bộ đếm lên/xuống: Có
Ngắt phần cứng: 4
Sốđầuvào/racósẵn:24DI/16DO
Số đầu vào / ra số cực đại ( nhờ lắp ghép thêm Modul số mở rộng: DI/DO/MAX: 128 / 120 / 248
Số đầu vào / ra tương tự ( nhờ lắp ghép thêm Modul Analog mở rộng: AI/AO/MAX:28/7/35hoặc0/14/14.IP20
Kích thước: Rộng x Cao x Sâu : 196 x 80 x 62
Loại AC/DC/Rơle: CPU 226: Mã 6ES7 216-2BD23-0XB0
Nguồn: 100 tới 230 VAC; đầu vào: 24 VDC; đầu ra: Rơle
Số đầu ra được tích hợp sẵn: 16 (Rơle)
Thực hiện trọn gói những công việc kỹ thuật phức tạp
Thêm cổng PPI làm tăng tính linh hoạt và lựa chọn truyền thông
Ngoài ra, CPU 226 XM có bộ nhớ chương trình và bộ nhớ dữ liệu được nâng cao
Toàn bộ vùng nhớ không bị mất dữ liệu trong khoảng thời gian 190 giờ kể từ khi PLC bị mất nguồn cung cấp
Các cổng vào ra
Các đèn báo trên S7-200 CPU226:
SF (đèn đỏ): Đèn đỏ SF báo hiệu hệ thống bị hỏng.
Trang 3 RUN (đèn xanh): Đèn xanh RUN chỉ định PLC đang ở chế độ làm việc và thực
hiện chương trình được nạp vào trong máy
STOP (đèn vàng): Đèn vàng STOP chỉ định rằng PLC đang ở chế độ dừng
chương trình và đang thực hiện lại
Ix.x (đèn xanh): Đèn xanh ở cổng vào báo hiệu trạng thái tức thời của cổng Ix.x.
Đèn này báo hiệu trạng thái của tín hiệu theo giá trị Logic của công tắc
Qx.x (đèn xanh): Đèn xanh ở cổng ra báo hiệu trạng thái tức thời của cổng Qx.x.
Đèn này báo hiệu trạng thái của tín hiệu theo giá trị logic của cổng
Chế độ làm việc:
PLC có 3 chế độ làm việc:
RUN: cho phép PLC thực hiện chương trình từng bộ nhớ, PLC sẽ chuyển từ
RUN sang STOP nếu trong máy có sự cố hoặc trong chương trình gặp lệnh STOP
STOP: Cưỡng bức PLC dừng chương trình đang chạy và chuyển sang chế độ
STOP
TERM: Cho phép máy lập trình tự quyết định chế độ hoạt động cho PLC hoặc
RUN hoặc STOP
2.2.2 Cổng truyền thông:
S7-200 sử dụng cổng truyền thông nối tiếp RS485 với phích nối 9 chân để phục vụ cho việc ghép nối với thiết bị lập trình hoặc với các trạm PLC khác Tốc độ truyền cho máy lập trình kiểu PPI là 9600 baud Tốc độ truyền cung cấp của PLC theo kiểu tự do là 38.400 baud
Ghép nối S7-200 với máy tính PC qua cổng RS232 cần có cáp nối PC/PPI với bộ chuyển đổi RS232/RS485
Chân Giải thích
3 Truyền và nhận dữ liệu
4 Không sử dụng
8 Truyền và nhận dữ liệu
9 Không sử dụng
5 4 3 2 1
9 8 7 6
Hình 4.2 Truyền thông trong S7-200
Trang 42.2.3 Mở rộng cổng vào ra.
Thế hệ Simatic S7-200 rất linh hoạt và hiệu quả sử dụng cao do những đặc tính sau:
Có nhiều loại CPU khác nhau trong hệ S7-200 nhằm đáp ứng yêu cầu của khác nhau của từng úng dụng
Có nhiều Modul mở rộng khác nhau như các Modul ngõ vào/ra tương tự, Modul ngõ vào/ra số
Modul truyền thông để kết nối PLC trong hệ S7-200 vào mạng Profibus-DP như là một Slave
Modul truyền thông để kết nối PLC trong hệ S7-200 vào mạng AS-I như là một MASTER
Phần mền STEP7 Mico/win sofwarl
Hình 4.3 Module mở rộng CPU 226
Trang 5Kích thước (mm) 190×80×62
2.2.4 Thực hiện chương trình.
PLC thực hiện chương trình theo chu trình lặp Mỗi vòng lặp được gọi là vòng quét (scan) Mỗi vòng quét được bắt đầu bằng giai đoạn đọc dữ liệu từ các cổng vào vùng bộ đếm ảo, tiếp theo là giai đoạn thực hiên chương trình.Trong từng vòng quét, chương trình được thực hiện bằng lệnh đầu tiên và kết thúc bằng lệnh kết thúc (MEND).Sau giai đoạn thực hiện chương trình là giai đoạn truyền thông nội bộ và kiểm tra lỗi.Vòng quét được kết thúc bằng giai đoạn chuyển các nội dung của bộ đếm ảo tới các cổng ra
Như vậy tại thời điểm vào/ra thông thường lệnh không làm việc trực tiếp với cổng vào/
ra mà chỉ thông qua bộ đệm ảo của cổng trong vùng nhớ tham số.Việc truyền thông giữa
bộ đệm ảo với ngoại vi trong các giai đoạn 1và 4 do CPU quản lý Khi gặp lệnh vào/ra ngay lập tức thì hệ thống sẽ cho dừng mọi công việc khác, ngay cả chương trình xử lý ngắt để thực hiện lệnh này một cách trực tiếp với cổng vào/ra
2.2.5 Cấu trúc chương trình.
Có thể lập trình cho PLC S7-200 bằng cách sử dụng một trong những phần mềm sau : -STEP7-Micro/ DOS
-STEP7-Micro/ WIN
4 Chuyển dữ liệu
từ bộ đệm ảo ra ngoại vi
2 thực hiện chương trình
3 truyền thông
và tự kiểm tra lỗi
1Nhập dữ liệu từ ngoại vi vào bộ đếm ảo
Hình 4.3: Vòng quét (scan) trong S7-200
Trang 6Những phần mềm này đều có thể cài đặt được trên các máy lập trình họ PG7xx và các máy tính cá nhân (PC)
Các chương trình cho S7-200 phải có cấu trúc chương trình chính (main progam) và sau
đó đến các chương trình con và chương trình sử lý ngắt được chỉ ra sau đây:
- Chương trình chính được kết thúc bằng lệnh kết thúc chương trình (MEND)
- Chương trình con là một bộ phận của chương trình, các chương trình con phải được viết sau lệnh kết thúc chương trình chính đó là lệnh MEND
- Các chương trình xử lý ngắt là một bộ phận của chương trình Nếu cần sử dụng chương trình, cần xử lý ngắt phải viết sau lệnh kết thúc chương trình chính MEND
- Các chương trình con được nhóm lại thành một nhóm ngay sau chương trình chính Sau đó đến ngay các chương trình xử lý ngắt Bằng cách viết như vậy cấu trúc chương trình được rõ ràng và thuận tiện hơn trong việc đọc chương trình sau này Có thể tự do
trộn lẫn các chương trình con và chương trình sử lý ngắt đằng sau chương trình chính
2.2.6 Các vùng nhờ của S7-200.
Hình 4.4 Cấu trúc chương trình PLC S7-200
Trang 7Bộ nhớ của S7-200 có tính năng động cao, có thể đọc và ghi được toàn vùng, ngoại trừ phần các bít nhớ đặc biệt được kí hiệu SM( Special Memory) chỉ có thể truy cập đọc
Bộ nhớ có một tụ nhớ để nuôi, duy trì dữ liệu trong một khoảng thời gian khi mất điện
Bộ nhớ của s7-200 được chia thành 4 vùng:
Vùng nhớ chương trình: Là vùng lưu giữ các lệnh chương trình Vùng này thuộc kiêu không bị mất dữ liệu, đọc và ghi được
Vùng nhớ tham số: Là vùng lưu giữ các thông số như: từ khóa, địa chỉ trạm Có thể đọc và ghi được
Vùng nhớ dữ liệu: Được sử dụng để lưu trữ các dữ liệu của trương trình
Vùng dữ liệu được chia thành những vùng nhớ nhỏ vói các công dụng khác nhau Chúng được kí hiệu bằng các chữ cái đầu tiếng anh:
-V: Biến nhớ V0-v4095
-I: Vòng đệm đầu vào I0.x( x=0-7)-I7.x( x=0-7)
-Q: Vòng đệm đầu ra Q0.x( x=0-7)-Q7.x( x=0-7)
-M: Vùng nhớ nội ( bits).M0.x( x=0-7)-M31.x( x= 0-7)
-SM: vùng nhớ đặc biệt (bits)
Vùng nhớ chi đọc SM0.x( x=0-7)- SM29.x( x=0-7)
Vùng nhớ đọc/ghi SM30.x( x=0-7)- SM85.x( x=0-7)
2.2.7 Ngôn ngữ lập trình.
Có 3 dạng ngôn ngữ lập trình cơ bản đó là:
- Phương pháp hình thang ( Ladder Logic ) viết tắt là LAD
- Phương pháp liệt kê lệnh ( Statemnt List ) viết tắt là STL
- Phương pháp theo dạng dữ liệu hình khối( Dât Block) viết tắt là DB
Nếu chương trình dược viết theo kiểu LAD, thiết bị lập trình sẽ tự tạo ra một chương trình theo kiểu STL tương ứng Nhưng ngược lại không phải một chương trình nào được viết theo kiểu STL cũng có thể chuyển được sang LAD
Ở trong đồ án em sử dụng phương pháp hình thang(LAD)
LAD là một ngôn ngữ lập trình bằng đồ hoạ Những thành phần cơ bản dùng trong LAD tương ứng với các thành phần của bảng điều khiển bằng rơle.Trong chương trình LAD các phần tử cơ bản dùng để biểu diễn lệnh logic như sau
Tiếp điểm: Là biểu tượng (symbol) mô tả các tiếp điểm của rơ le, các tiếp điểm
đó có thể là thường mở hoặc thường đóng
Cuộn dây (coil): Là biểu tượng mô tả các rơ le được mắc theo chiều dòng điện cung cấp cho rơ le
Hộp (box): Là biểu tượng mô tả các hàm khác nhau, nó làm việc khi có dòng điện chạy đến hộp Những dạng hàm thường được biểu diễn bằng hộp là các bộ thời gian (Timer), bộ đếm (Counter) và các hàm toán học Cuộn dây và các hộp phải được mắc đúng chiều dòng điện
Trang 8Mạng LAD: Là đường nối các phần tử thành một mạch hoàn thiện, đi từ đường nguồn bên trái sang đường nguồn bên phải Đường nguồn bên trái là dây nóng, đường nguồn bên phải là dây trung hoà hay là đường trở về nguồn cung cấp (đường nguồn bên phải thường không được thể hiện khi dùng chương trình tiện dụng STEP7-Mcro/Dos hoặcMicro/Win) Dòng điện chạy từ bên trái qua các tiếp điểm đóng đến các cuộn dây hoặc các hộp trở về bên phải nguồn
2.2.8 Các tập lệnh cơ bản trong S7-200.
2.2.8.1 lệnh về bit.
Tiếp điểm thường mở
Tiếp điểm thường đóng
Cuộn coil, ngõ ra
Trạng thái đảo bit
Set bit
Lấy sườn lên
Lấy sườn xuống
2.2.8.2 Lệnh nạp tiếp điểm thường mở, thường đóng vào thanh nguồn (LD, LDI)
Cấu trúc:
LD n
LDI n (Load Inverse) n: X, Y, M, S, T, C 1
2.2.8.3 Lệnh đầu ra (OUT)
Trang 9OUT n n: Y, M, S, T, C 1
2.2.8.4 Nối tiếp tiếp điểm thường mở, tiếp điểm thường đóng (AND, ANI)
2.2.8.5 Lệnh nối song song tiếp điểm thường mở, tiếp điểm thường đóng (OR, ORI)
2.2.8.6 Lệnh lấy sườn lên, sườn xuống (LDP, LDF)
LDP (Load Pulse) n: X, Y, M, S, T, C 2 LDF
(Load Falling Pulse)
n: X, Y, M, S, T, C 2
2.2.8.7 Lệnh nối tiếp sườn lên, sườn xuống (ANP, ANF)
ANP (And Pulse) n: X, Y, M, S, T, C 2 ANF
(And Falling
n: X, Y, M, S, T, C 2
Trang 102.2.8.8 Lệnh nối song song sườn lên, sườn xuống (ORP, ORF)
ORP (Or Pulse) n: X, Y, M, S, T, C 2
ORF (Or Falling Pulse)
n: X, Y, M, S, T, C 2
2.2.8.9 Lệnh nối nối tiếp các khối lệnh (ANB)
ANB
2.2.8.10 Lệnh nối song song các khối lệnh (ORB)
ORB
2.2.8.11 Lệnh rẽ nhánh (MPS, MRD, MPP)
MPS MRD MPP
1 1 1
2.2.8.12 Lệnh ghi xóa giá trị tiếp điểm (SET, RST)
RST n n: Y, M, S, T, C, D, V, Z 1
Mô tả:
Trang 11Lệnh SET: Lệnh ghi giá trị logic 1 cho toán hạng n (tiếp điểm n) khi đầu vào của
nó được thỏa mãn
Lệnh RST: Lệnh ghi giá trị logic 0 cho toán hạng n (tiếp điểm n) khi đầu vào của
nó được thỏa mãn
2.2.8.13 Lệnh lấy sườn xung tín hiệu đầu vào (PLS, PLF)
2.2.8.14 Lệnh chuyển dữ liệu (MOV)
MOV S D
S: Dữ liệu nguồn 16 bit (K, H, D, T, C,
V, Z) D: Dữ liệu đích 16 bit (D, T, C, V, Z)
5
2.2.8.15 Lệnh tiếp điểm so sánh (=, >, <, <>, >=, <=)
LD = n1 n2 n1, n2: K, H, D, T, C 1
LD < n1 n2 n1, n2: K, H, D, T, C 1
LD > n1 n2 n1, n2: K, H, D, T, C 1
LD <> n1 n2 n1, n2: K, H, D, T, C 1
LD <= n1 n2 n1, n2: K, H, D, T, C 1
LD >= n1 n2 n1, n2: K, H, D, T, C 1
Mô tả: Lệnh tiếp điểm so sánh thực hiện việc so sánh dữ liệu trong 2 từ n1 và n2 hoặc 1 hằng số với dữ liệu của một từ Kết quả của phép so sánh sẽ có giá trị bằng 1 nếu đúng (đóng tiếp điểm so sánh) và bằng 0 nếu sai (mở tiếp điểm so sánh)
2.2.8.16 Lệnh nối tiếp tiếp điểm so sánh (AND=, AND>, AND<, AND<>, AND>=,
AND<=)
AND = n1 n2 n1, n2: K, H, D, T, C 1
Trang 12AND < n1 n2 n1, n2: K, H, D, T, C 1 AND > n1 n2 n1, n2: K, H, D, T, C 1 AND <> n1 n2 n1, n2: K, H, D, T, C 1 AND <= n1 n2 n1, n2: K, H, D, T, C 1 AND >= n1 n2 n1, n2: K, H, D, T, C 1
Mô tả: Lệnh thực hiện phép toán AND giữa một tiếp điểm với tiếp điểm so sánh Tùy thuộc vào trạng thái của tiếp điểm và kết quả của phép so sánh mà cho kết quả tổ hợp logic
2.2.8.17 Lệnh nối song song tiếp điểm so sánh (OR<, OR>, OR<>, OR>=, OR<=)
OR = n1 n2 n1, n2: K, H, D, T, C 1
OR < n1 n2 n1, n2: K, H, D, T, C 1
OR > n1 n2 n1, n2: K, H, D, T, C 1
OR <> n1 n2 n1, n2: K, H, D, T, C 1
OR <= n1 n2 n1, n2: K, H, D, T, C 1
OR >= n1 n2 n1, n2: K, H, D, T, C 1
Mô tả: Lệnh thực hiện phép toán OR giữa một tiếp điểm với tiếp điểm so sánh Tùy thuộc vào trạng thái của tiếp điểm và kết quả của phép so sánh mà cho kết quả tổ hợp logic
2.2.8.18 Lệnh trễ thời gian (T xxx)
Trang 13Mô tả:
- Txxx là tên của bộ trể thời gian; K là hằng số thời gian trễ
-PLC họ FX có hai loại bộ trễ thời gian: Bộ trễ thời gian có nhớ (Retentive Timer) và bộ trễ thời gian không có nhớ (Non – retentive Timer) Bộ trễ thời gian sử dụng một từ để lưu giá trị đếm tức thời và sử dụng một bít làm cờ báo, khi giá trị trễ tức thời lớn hơn hoặc bằng hằng số đặt trước K thì bít cờ sẽ bằng 1
Bộ trễ thời gian không có nhớ giá trị trễ tức thời sẽ bị xóa về 0 khi mất điện đầu vào Còn đối với bộ trễ thời gian có nhớ thì khi mất đầu vào, giá trị trễ tức thời được nhớ lại,
và khi đầu vào có trở lại thì giá trị trễ tức thời lại tiếp tục trễ từ giá trị đang nhớ, giá trị trễ tức thời chỉ mất khi có lệnh reset
Bộ trễ thời gian có ba độ phân giải 1ms, 10ms, 100ms Thời gian trễ phụ thuộc vào độ phân giải và hằng số đặt trước K Thời gian trể thực của bộ trể được tính theo công
thức: (thời gian trễ thực) = (độ phân giải) x (hằng số đặt trước K).
Bảng phân bố các bộ trễ của các PLC họ FX:
(T0 – 55)
63 (T0-62)
200 (T0-199)
(T32 – 55)
31 (T32-62)
46 (T200-245)
(T246-249)
(T250-255)
2.2.8.19 Lệnh đếm (C xxx)
Mô tả:
Cxxx là tên (thứ tự) của bộ đếm, K là giá trị đếm đặt trước
Bộ đếm của PLC họ FX có hai loại bộ đếm 16 bít và bộ đếm 32 bit Bộ đếm 16 bít là bộ đếm tiến, mỗi khi đầu vào bộ đếm có một xung thì giá trị đếm tức thời tăng lên một đơn vị, khi giá trị đếm tức thời lớn hơn hoặc bằng giá trị đặt trước thì bit cờ Cxxx bằng 1 Giá trị đếm tức thời bị xóa về 0 khi có lệnh reset