Tổng hợp các tính năng cơ bản, nâng cao, bộ đếm xung, cách kết nối phần cứng, kết nối mạng SIEMENT S7 Bài viết đi từ những tính năng cơ bản, đến nâng cao, giúp các bạn hình dung một cách chi tiết hơn về PLC S7
Trang 1Power Supply: 24V, 48V, 120V, 240V
Central Processing Unit: Được xem như một máy tính,
ở đây chương trình ladder logic được lưu và xử lý.
Input and Output: Mỗi PLC phải có module giao tiếp
ngõ vào,ngõ ra để PLC có thể giám sát và điều khiển hệ thống
Indicator light: Báo trạng thái của PLC
Trang 2Digital Inputs: Kết nối với Contacts, encoder, sensors
có ngõ ra số encoder etc
Digital Outputs: Kết nối với Motors,lights, servo
motors, solenoid valves, step motor etc
Analog Inputs: Kết nối với những cảm biến nhiệt độ,
áp suất, siêu âm, loadcell…… etc
Continuous Outputs: Kết nối để điều khiển: Inverter, Flow valves, servo motor…etc
Trang 4Mạch điện ngõ vào số của PLC Siemens
Trang 5Mạch điện ngõ vào số của PLC Rockwell
Trang 6Mạch điện ngõ vào số của PLC Panasonic
Trang 7Tất cả các ngõ vào của PLC đều cách ly
Dòng ngõ vào khoảng 10 đến 20mA
Các loại PLC khác nhau có thể sử dụng dãy
điện áp ngõ vào khác nhau.
Các ngõ vào thực tế của PLC thường được nối chung một đường tín hiệu.
Có thể kết nối ngõ vào của PLC theo kiểu
Sinking hay Sourcing
Trang 8Những PLC cở lớn: Ngõ ra thường được thiết kế dưới dạng
module hoặc card
Có nhiều cấp điện áp khác nhau cho các ngõ ra cho các Module
Trang 9Large PLCs: Outputs are purchased as module or card
Typical range for voltage output of output modules are listed
below
Trang 10Ngõ ra số của PLC siemens.
Trang 11Ngõ ra số của PLC rockwell
Trang 12Ngõ ra số của PLC Panasonic
Trang 14Có 3 loại ngõ ra: DC, AC và RL
Tất cả các ngõ ra của PLC đều cách ly
Dòng ngõ ra khác nhau với các loại ngõ ra khác nhau.
Các ngõ ra thực tế của PLC thường được nối
chung một đường tín hiệu.
người sử dụng chọn loại ngõ ra nào cho phù hợp.
Trang 15 Động cơ DC(Vcc = 12V, I = 2A) hoạt động
Trang 16Power Supply: 24V, 48V, 120V, 240V
Central Processing Unit: Được xem như một máy tính,
ở đây chương trình ladder logic được lưu và xử lý.
Input and Output: Mỗi PLC phải có module giao tiếp
ngõ vào,ngõ ra để PLC có thể giám sát và điều khiển hệ thống
Indicator light: Báo trạng thái của PLC
Trang 17Digital Inputs: Kết nối với Contacts, encoder, sensors
có ngõ ra số encoder etc
Digital Outputs: Kết nối với Motors,lights, servo
motors, solenoid valves, step motor etc
Analog Inputs: Kết nối với những cảm biến nhiệt độ,
áp suất, siêu âm, loadcell…… etc
Continuous Outputs: Kết nối để điều khiển: Inverter, Flow valves, servo motor…etc
Trang 19Mạch điện ngõ vào số của PLC Siemens
Trang 20Mạch điện ngõ vào số của PLC Rockwell
Trang 21Mạch điện ngõ vào số của PLC Panasonic
Trang 22Tất cả các ngõ vào của PLC đều cách ly
Dòng ngõ vào khoảng 10 đến 20mA
Các loại PLC khác nhau có thể sử dụng dãy
điện áp ngõ vào khác nhau.
Các ngõ vào thực tế của PLC thường được nối chung một đường tín hiệu.
Có thể kết nối ngõ vào của PLC theo kiểu
Sinking hay Sourcing
Trang 23Những PLC cở lớn: Ngõ ra thường được thiết kế dưới dạng
module hoặc card
Có nhiều cấp điện áp khác nhau cho các ngõ ra cho các Module
Trang 24Large PLCs: Outputs are purchased as module or card
Typical range for voltage output of output modules are listed
below
Trang 25Ngõ ra số của PLC siemens.
Trang 27Ngõ ra số của PLC Panasonic
Trang 29Có 3 loại ngõ ra: DC, AC và RL
Tất cả các ngõ ra của PLC đều cách ly
Dòng ngõ ra khác nhau với các loại ngõ ra khác nhau.
Các ngõ ra thực tế của PLC thường được nối
chung một đường tín hiệu.
người sử dụng chọn loại ngõ ra nào cho phù hợp.
Trang 30 Động cơ DC(Vcc = 12V, I = 2A) hoạt động
Trang 31Bộ điều khiển lập trình S7-200
Trang 32Thông số kỹ thuật của PLC S7200
Trang 33Kết nối PLC với PC
Trang 34Cách xác định địa chỉ các modue mở rộng
Trang 35Vùng nhớ và toán hạng trong PLC
Trang 36Truy cập theo bit: Tên miền(+) địa chỉ byte (+) (+) chỉ số bit
Truy cập theo từ kép: Tên miền (+) D (+) địa chỉ byte cao của
từ trong miền
VD:VD0, QD2, MD4, ID0
Trang 40Một chu kỳ quét của PLC
Trang 41các ngõ vào và chứa vào bộ đệm ngõ vào.
Execute Program (Thực thi chương trình): PLC dựa vào các
trạng thái ngõ vào để thực thi theo chương trình đã được lưu
trong bộ nhớ đệm ngõ ra
Diagnostics Communications (Chẩn đoán và truyền thông): PLC tiến hành chẩn đoán lỗi và kiểm tra quá trình truyền
thông
Update Outputs (Xuất kết quả): PLC xuất kết quả trong vùng
nhớ đệm ngõ ra để điều khiển thiết bị ngoại vi
Trang 42Phycical input
Phycical Output
Trang 43ladder khác nhau thì việc thực thi logic không
đúng.
Khi hai network sử dụng chung một ngõ ra thì network đứng trước xem như không được thực
hiện.
Trang 44Nhóm lệnh tăng, giảm dữ liệu
Trang 45Lệnh vào ra.
Trang 46Lệnh SET, RESET: Đặt giá trị ngõ ra lên 1 hoặc xóa ngõ ra về 0 khi lệnh thực hiện Số bit được SET hoặc RESET từ 0 đến 255.
Vùng nhớ sử dụng được với lệnh SET và
RESET: Q,V,M,L
Trang 47Lệnh SET, RESET.
Trang 48Một số tiếp điểm đặc biệt.
Trang 49Lệnh so sánh lấy giá trị IN1, so sánh với giá trị IN2 Nếu thỏa mãn phép toán so sánh thì tiếp điểm so sánh đóng lại.
Lưu ý: IN1 và IN2 phải cùng kiểu dữ liệu
Trang 50Timer Độ phân giải Giá trị cực đại Số hiệu Timer TON, TOF
1 ms 32,767 s T32 và T96
10 ms 327,67 s T33 ÷ T36, T97 ÷ T100
100 ms 3276,7 s T37 ÷ T63, T101 ÷ T127 TONR
Trang 51Thông số của Timer:
T_Word : Lưu giá trị đếm của Timer
T_bit : Tác động khi T_Word >= PT
Trang 55Nhấn Start:Q0.0 chạy như H1, Q0.1
chạy nhu H2
Nhấn Stop: Q0.0 = Q0.1 = 0
2,5s 2,5s 2,5s 2s
1 chu kỳ
Trang 56Nhấn nút khởi động cho động cơ Đ1 chạy, sau 5s cho phép vận hành Đ2.
Nhấn nút khởi động cho động cơ Đ2 chạy đồng thời lúc này động cơ Đ1 ngừng, sau
10s thì cho phép vận hành động cơ Đ3.
Nhấn nút khởi động cho động cơ Đ3
chạy đồng thời động cơ Đ2 ngừng.
Nhấn nút dừng thì bất kỳ động cơ nào
Trang 58Có 3 loại bộ đếm CTU: Đếm lên
CTD: Đếm xuống CTUD: Đếm lên/ xuống
Trang 59Thông số Counter
C_Word : Lưu giá trị đếm của Counter
C_bit : Tác động khi C_Word >= PV
Trang 60CTU: Đếm lên khi có xung cạnh lên
Để xóa Couter: Tác động chân R hoặc
Trang 61CTD: Đếm xuống khi có xung cạnh lên
Để nạp giá trị cho Couter: Tác động chân
Trang 62Nhấn Start: Q0.0 chạy như H3, thực
hiện 5 chu kỳ rồi dừng Q0.1 chạy như
H4, thực hiện 10 chu kỳ rồi dừng
2,5s 2,5s 2,5s 2s
1 chu kỳ
Trang 63Nhóm lệnh tăng, giảm dữ liệu
Trang 64Lệnh vào ra.
Trang 65Lệnh SET, RESET: Đặt giá trị ngõ ra lên 1 hoặc xóa ngõ ra về 0 khi lệnh thực hiện Số bit được SET hoặc RESET từ 0 đến 255.
Vùng nhớ sử dụng được với lệnh SET và
RESET: Q,V,M,L
Trang 66Lệnh SET, RESET.
Trang 67Một số tiếp điểm đặc biệt.
Trang 68Lện so sánh lấy giá trị IN1, so sánh với giá trị IN2 Nếu thỏa mãn phép toán so sánh thì tiếp điểm so sánh đóng lại.
Trang 69Timer Độ phân giải Giá trị cực đại Số hiệu Timer TON, TOF
1 ms 32,767 s T32 và T96
10 ms 327,67 s T33 ÷ T36, T97 ÷ T100
100 ms 3276,7 s T37 ÷ T63, T101 ÷ T127 TONR
Trang 70Thông số của Timer:
T_Word : Lưu giá trị đếm của Timer
T_bit : Tác động khi T_Word >= PT
Trang 74Nhấn Start:Q0.0 chạy như H1, Q0.1
chạy nhu H2
Nhấn Stop: Q0.0 = Q0.1 = 0
2,5s 2,5s 2,5s 2s
1 chu kỳ
Trang 75Nhấn nút khởi động cho động cơ Đ1 chạy, sau 5s cho phép vận hành Đ2.
Nhấn nút khởi động cho động cơ Đ2 chạy đồng thời lúc này động cơ Đ1 ngừng, sau
10s thì cho phép vận hành động cơ Đ3.
Nhấn nút khởi động cho động cơ Đ3
chạy đồng thời động cơ Đ2 ngừng.
Nhấn nút dừng thì bất kỳ động cơ nào
chạy cũng phải ngừng.
Trang 77Có 3 loại bộ đếm CTU: Đếm lên
CTD: Đếm xuống CTUD: Đếm lên/ xuống
Trang 78Thông số Counter
C_Word : Lưu giá trị đếm của Counter
C_bit : Tác động khi C_Word >= PV
Trang 79CTU: Đếm lên khi có xung cạnh lên
Để xóa Couter: Tác động chân R hoặc
Trang 80CTD: Đếm xuống khi có xung cạnh lên
Để nạp giá trị cho Couter: Tác động chân
Trang 81Nhấn Start: Q0.0 chạy như H3, thực
hiện 5 chu kỳ rồi dừng Q0.1 chạy như
H4, thực hiện 10 chu kỳ rồi dừng
2,5s 2,5s 2,5s 2s
1 chu kỳ
Trang 82SBR0
SBR1 Instruction1
Trang 83Thực hiện những công việc có tính chất lặp
Trang 84SBR chỉ thực hiện chương trình viết trong nó khi được gọi.
Có thể gọi SBR từ Main hay từ một SBR khác.
Khi không được gọi thì các giá trị trong SBR
được giữ nguyên.
Trang 85Chương trình con sử dụng biến toàn cục: I,Q,V,M,SM,T,C,ACC
Chương trình con sử dụng biến cục bộ: L
Trang 86Cách thực hiện:
Tạo chương trình con, đặt tên theo chức năng
Khai báo biến
Viết chương trình con theo yêu cầu
Kiểm tra điều kiện để gọi chương trình khi cần thiết.
Trang 87Đặt tên
Trang 90Cách thực hiện:
Tạo chương trình con, đặt tên theo chức năng
Khai báo biến cục bộ.
Viết chương con trình theo yêu cầu
Khai báo biến và viết chương trình trong
MAIN
Trang 91Đặt tên
Trang 92trong SBR
Trang 94Ngắt là việc dừng chương trình đang thực thi để thực hiện một chương trình khác gọi là trình
phục vụ ngắt hay chương trình ngắt.
Trang 95Khi nhiều ngắt xãy ra cùng lúc thì chương trình sẽ thực hiện theo thứ tự ưu tiên.
Khi một ngắt đang hoạt động thì không bị ngắt bởi ngắt khác dù ngắt đó có mức ưu tiên cao hơn.
Chương trình ngắt nên lập trình càng đơn giản, càng ngắn gọn càng tốt.
Đáp ứng yêu cầu một cách kịp thời, nhanh chóng và bộ xử lý làm việc hiệu quả hơn.
Trang 96Khi nhiều ngắt xãy ra cùng lúc thì chương trình sẽ thực hiện theo thứ tự ưu tiên.
Khi một ngắt đang hoạt động thì không bị ngắt bởi ngắt khác dù ngắt đó có mức ưu tiên cao hơn.
Chương trình ngắt nên lập trình càng đơn giản, càng ngắn gọn càng tốt.
Đáp ứng yêu cầu một cách kịp thời, nhanh
Trang 97Ngắt vào ra: Ngắt vào ra gồm có các trường
Trang 98Ngắt Thời gian: Ngắt xãy ra sau những khoảng
thời gian định trước bao gồm:
Ngắt định thời: Ngắt xãy ra theo thời gian định
trước.
Ngắt của Timer: Ngắt xãy ra khi giá trị đếm
của Timer bằng giá trị đặt.
Trang 99Ngắt truyền thông: Ngắt xãy ra khi có sự
truyền thông giữa PLC và đối tượng điều khiển khác.
Ví dụ: Ngắt xãy ra khi kết thúc quá trình truyền
hoặc nhận dữ liệu qua cổng truyền thông của PLC.
Trang 100Số lượng ngắt: Số lượng ngắt phụ thuộc vào
loại CPU, tùy thuộc vào dòng sản phẩm cũng như loại CPU mà số lượng ngắt được hỗ trợ nhiều hay ít.
Trang 10333
Trang 10433
Trang 10533
Trang 106Event occurs
End INT
End INT
Trang 108ứng dụng ngắt định thời
Trang 109ứng dụng ngắt timer
Trang 110từ ngõ vào AIW0, lưu vào MW0
Trang 120Đồng xuân hiếu
Trang 123Khi tín hiệu vào đầy thang thì giá trị chuyển đổi có giá trị
Tín hiệu đơn cực : Giá trị số từ 0 đến +32000 Tín hiệu lưỡng cực: Giá trị số từ -32000 đến +32000
Trang 124Tùy thuộc vào tín hiệu ngõ vào được nối vào kênh nào mà giá trị chuyển đổi sẽ được lưu vào địa chỉ tương ứng
Trang 125Tùy thuộc vào tín hiệu ngõ ra được nối đến kênh nào mà giá trị chuyển số sẽ được nạp vào địa chỉ tương ứng
Ví dụ: Kênh A: AQW0; Kênh B: AQW2
Kênh C: AQW4; Kênh D: AQW6….
………
Trang 126Xác định các đường tín hiệu vào/ra của các kênh tương ứng
Xác định các Switch được sử dụng để chọn loại tín hiệu vào và
tầm đo module analog ( Chọn tín hiệu vào là áp)
Kết nối biến trở để lấy tín hiệu áp ngõ vào tại kênh A, viết dònglệnh đọc tín hiệu analog ngõ vào, download xuống PLC S7200
Thay đổi tầm đo để thấy sự khác biệt của giá trị số chuyển đổi
Viết chương trình để tín ra giá trị điện áp ngõ vào theo volt và lưukết quả vào vùng nhớ MW0
Trang 127Xác định các đường tín hiệu vào/ra của các kênh tương ứng
Xác định các Switch được sử dụng để chọn loại tín hiệu vào và
tầm đo module analog ( Chọn tín hiệu vào là dòng)
Kết nối cảm biến siêu âm (xem datasheet) để lấy tín hiệu ngõ
vào tại kênh A, viết dòng lệnh đọc tín hiệu analog ngõ vào,
Trang 128Xác định các đường tín hiệu vào/ra của các kênh tương ứng
Xác định các Switch được sử dụng để chọn loại tín hiệu vào và
tầm đo module analog ( Chọn tín hiệu vào là dòng)
Kết nối cảm biến siêu âm (xem datasheet) để lấy tín hiệu ngõ
vào tại kênh A, viết dòng lệnh đọc tín hiệu analog ngõ vào,
download xuống S7200
Viết chương trình tính khoảng cách đo được theo cm, lưu kết quảvào vùng nhớ VW100
Trang 131Vd: Động cơ quay 1200R/M, encoder có số xung 1000P/R
Tần số = 1200*1000/60 = 200Khz, chu kỳ = 50 micro giây
Timer độ phân giải nhỏ nhất 1mskhông dùng để đếm được
Trang 134STT Vùng nhớ khai báo Chú thích
1 SMB36,46,56,136,146,156 Byte trạng thái
2 SMB37,47,57,137,147,157 Byte điều khiển
3 SMD38,48,58,138,148,158 Lưu giá trị ban đầu
4 SMD42,52,62,142,152,162 Lưu giá trị đặt
HC2
Trang 136SM56.5 Chiều đang đếm, 1:Đếm lên, 0:Đếm xuống.
SM56.6 Kết quả so sánh tức thời, 0:Nếu CV PV, 1:Nếu
CV = PV SM56.7 Kết quả so sánh tức thời, 0:Nếu CV PV, 1:Nếu
Trang 137SM57.0 Kiểu reset cho tín hiệu xóa tại cổng I1.0
SM57.1 Kiểu start cho tín hiệu kích tại cổng I1.1
SM57.2 Tần số đếm của HSC2
SM57.3 Chiều đếm: 0 đếm lùi, 1 : đếm lên
SM57.4 Cho phép đổi chiều đếm, 0: không cho phép, 1: cho phép
SM57.5 Cho phép sửa đổi giá trị đặt trước, 0: không cho phép,
1: cho phép SM57.6 Cho phép sửa đổi giá trị đếm tức thời, 0: không cho phép,
1: cho phép
Trang 138HSC1 HSC2 Ghi chú
SM47.0 SM57.0 0: Reset mức cao 1: Reset mức thấp
SM47.1 SM57.1 0: Start mức cao 1: Start mức thấp
SM47.2 SM57.2 0: 4X giá trị đếm 1: 1X giá trị đếm
Lưu ý: Chế độ 4X chỉ có tác dụng khi sử dụng mode 9,10,11
Trang 139Bộ đếm Giá trị ban đầu Giá trị đặt Ghi chú
Trang 140Sử dụng kiểu dữ liệu HC + chỉ số của bộ đếm.
Giá trị tức thời này là giá trị chỉ đọc và ở dạng Double
Word.
Trang 141Dùng chu kỳ quét đầu tiên(SM0.1) để gọi chương trình con khởi tạo Trong chương trình con khởi tạo thực hiện các
công việc sau đây.
Nạp giá trị cho byte điều khiển.
Gán bộ đếm với Mode đếm tương ứng dùng lệnh HDEF
Trang 142Dùng chu kỳ quét đầu tiên(SM0.1) để gọi chương trình con khởi tạo Trong chương trình con khởi tạo thực hiện các
công việc sau đây.
Nạp giá trị cho byte điều khiển.
Gán bộ đếm với Mode đếm tương ứng dùng lệnh HDEF
Trang 143Gọi chương trình con khởi tạo HSC
Trang 144Nạp giá trị cho byte điều khiển Chọn mode đếm cho bộ đếm Nạp giá trị đếm ban đầu
Nạp giá đặt Gán ngắt INT_0 với sự kiện ngắt
Trang 145SM37.0 Kiểu reset
SM37.1 Kiểu start
SM37.2 Tần số đếm của HSC0
SM37.3 Chiều đếm: 0 đếm lùi, 1 : đếm lên
SM37.4 Cho phép đổi chiều đếm, 0: không cho phép, 1: cho phép
SM37.5 Cho phép sửa đổi giá trị đặt trước, 0: không cho phép,
1: cho phép SM37.6 Cho phép sửa đổi giá trị đếm tức thời, 0: không cho phép,
1: cho phép
Trang 146Đọc giá trị của bộ đếm
Nạp lại giá trị cho byte điều khiển
Cho phép HSC bắt đầu đếm
Trang 147HC0 tăng thêm 1 mỗi lần có xung tại
ngõ vào I0.0
của byte điều khiển, giá trị ban đầu, giá trị đặt, mode đếm được cập nhật lại.
Trang 149 Hoạt động ở mode 0,1 và 2.
Trang 151 Hoạt động ở mode 3,4, và 5.
Trang 153 Hoạt động ở mode 6,7, và 8.
Trang 155 Hoạt động ở mode 9,10, và 11 và chế độ x1.
Trang 157Dùng chu kỳ quét đầu tiên(SM0.1) để gọi chương trình con khởi tạo Trong chương trình con khởi tạo thực hiện các
công việc sau đây.
Cho phép bộ đếm.
1 Viết giá trị đặt trước mới
2 Viết giá trị đếm tức thời mới.
3 Thiết đặt ban đầu là đếm lên.
4 Ngõ vào start và reset kích hoạt mức cao.
Trang 159SM47.0 Kiểu reset
SM47.1 Kiểu start
SM47.2 Tần số đếm của HSC1
SM47.3 Chiều đếm: 0 đếm lùi, 1 : đếm lên
SM47.4 Cho phép đổi chiều đếm, 0: không cho phép, 1: cho phép
SM47.5 Cho phép sửa đổi giá trị đặt trước, 0: không cho phép,
1: cho phép SM47.6 Cho phép sửa đổi giá trị đếm tức thời, 0: không cho phép,
1: cho phép
Trang 160Gọi chương trình con khởi tạo HSC
Trang 163PWM(Pulse Wide Modulation): Phát xung PWM tần số , được sử
dụng để điều khiển tốc độ động cơ DC hay biến tần
PTO
Trang 164Chu kỳ thay đổi từ 50uS đến 65535uS hay 2mS đến 65535mS.
Độ rộng xung 0 đến 65535uS hay từ 0 đến 65535mS
Trang 168Sử dụng chu kỳ quét đầu tiên để gọi chương trình con
khởi tạo PLS Trong chương trình con khởi tạo thực
hiện các công việc sau.
Nạp giá trị cho byte điều khiển để chọn chế độ phát
theo yêu cầu.
Nạp giá trị thời gian để chọn chu kỳ.
Nạp giá trị để chọn số lượng xung phát.
Gán chương trình ngắt với sự kiện ngắt tương ứng.
Cho phép ngắt.
Thực hiện lệnh PLS để phát xung.
Trang 169Sử dụng chu kỳ quét đầu tiên để gọi chương trình con
khởi tạo PLS Trong chương trình con khởi tạo thực
hiện các công việc sau.
Nạp giá trị cho byte điều khiển để chọn chế độ phát
theo yêu cầu.
Nạp giá trị thời gian để chọn chu kỳ.
Nạp giá trị để chọn số lượng xung phát.
Gán chương trình ngắt với sự kiện ngắt tương ứng.
Cho phép ngắt.
Thực hiện lệnh PLS để phát xung.