A - GIỚI THIỆU VỀ THIẾT BỊ ĐIỀU KHIỂN KHẢ TRÌNH PLC: Trong công nghiệp sản xuất, để điều khiển một dây chuyền, một thiết bị máy móc công nghiệp … người ta thực hiện kết nối các linh kiện
Trang 1Giới thiệu về thiết bị điều khiển khả
trình PLC
Trang 2A - GIỚI THIỆU VỀ THIẾT BỊ ĐIỀU KHIỂN KHẢ TRÌNH PLC:
Trong công nghiệp sản xuất, để điều khiển một dây chuyền, một thiết bị máy
móc công nghiệp … người ta thực hiện kết nối các linh kiện điều khiển rời (rơle,
timer, contactor …) lại với nhau tuỳ theo mức độ yêu cầu thành một hệ thống điện
điều khiển Công việc này khá phức tạp trong thi công, sửa chữa bảo trì do đó giá
thành cao Khó khăn nhất là khi cần thay đổi một hoạt động nào đó
Một hệ thống điều khiển ưu việt mà chúng ta phải chọn được điều khiển cho
một máy sản xuất cần phải hội đủ các yêu cầu sau: giá thành hạ, dễ thi công, sửa
chữa, chất lượng làm việc ổn định linh hoạt … Từ đó hệ thống điều khiển có thể lập
trình được PLC (Programable Logic Control) ra đời đã giải quyết được vấn đề
trên
Thiết bị điều khiển lập trình đầu tiên đã được những nhà thiết kế cho ra đời
năm 1968 (Công ty General Moto - Mỹ) Tuy nhiên, hệ thống này còn khá đơn giản
và cồng kềnh, người sử dụng gặp nhiều khó khăn trong việc vận hành hệ thống Vì
vậy các nhà thiết kế từng bước cải tiến hệ thống đơn giản, gọn nhẹ, dễ vận hành,
nhưng việc lập trình cho hệ thống còn khó khăn, do lúc này không có các thiết bị lập
trình ngoại vi hỗ trợ cho công việc lập trình
Để đơn giản hóa việc lập trình, hệ thống điều khiển lập trình cầm tay
(programmable controller handle) đầu tiên được ra đời vào năm 1969 Trong giai
đoạn này các hệ thống điều khiển lập trình (PLC) chỉ đơn giản nhằm thay thế hệ
thống Relay và dây nối trong hệ thống điều khiển cổ điển Qua quá trình vận hành,
các nhà thiết kế đã từng bước tạo ra được một tiêu chuẩn mới cho hệ thống, tiêu
chuẩn đó là: dạng lập trình dùng giản đồ hình thang Trong những năm đầu thập
niên 1970, những hệ thống PLC còn có thêm khả năng vận hành với những thuật
toán hổ trợ (arithmetic), “vận hành với các dữ liệu cập nhật” (data manipulation)
Do sự phát triển của loại màn hình dùng cho máy tính (Cathode Ray Tube: CRT),
nên việc giao tiếp giữa người điều khiển để lập trình cho hệ thống càng trở nên
thuận tiện hơn Ngoài ra các nhà thiết kế còn tạo ra kỹ thuật kết nối với các hệ
thống PLC riêng lẻ thành một hệ thống PLC chung, tăng khả năng của từng hệ
thống riêng lẻ Tốc độ xử lý của hệ thống được cải thiện, chu kỳ quét (scan) nhanh
hơn làm cho hệ thống PLC xử lý tốt với những chức năng phức tạp, số lượng cổng
ra/vào lớn
Một PLC có đầy đủ các chức năng như: bộ đếm, bộ định thời, các thanh ghi
(register) và tập lệnh cho phép thực hiện các yêu cầu điều khiển phức tạp khác
nhau Hoạt động của PLC hoàn toàn phụ thuộc vào chương trình nằm trong bộ nhớ,
nó luôn cập nhật tín hiệu ngõ vào, xử lý tín hiệu để điều khiển ngõ ra
Trang 3Nhửừng ủaởc ủieồm cuỷa PLC:
• Thieỏt bũ choỏng nhieóu
• Coự theồ keỏt noỏi theõm caực modul ủeồ mụỷ roọng ngoừ vaứo/ra
• Ngoõn ngửừ laọp trỡnh deó hieồu
• Deó daứng thay ủoồi chửụng trỡnh ủieàu khieồn baống maựy laọp trỡnh hoaởc maựy
tớnh caự nhaõn
• ẹoọ tin caọy cao, kớch thửụực nhoỷ
• Baỷo trỡ deó daứng
Do caực ủaởc ủieồm treõn, PLC cho pheựp ngửụứi ủieàu haứnh khoõng maỏt nhieàu thụứi
gian noỏi daõy phửực taùp khi caàn thay ủoồi chửụng trỡnh ủieàu khieồn, chổ caàn laọp chửụng
trỡnh mụựi thay cho chửụng trỡnh cuừ
Vieọc sửỷ duùng PLC vaứo caực heọ thoỏng ủieàu khieồn ngaứy caứng thoõng duùng, ủeồ
ủaựp ửựng yeõu caàu ngaứy caứng ủa daùng naứy, caực nhaứ saỷn xuaỏt ủaừ ủửa ra haứng loaùt caực
daùng PLC vụựi nhieàu mửực ủoọ thửùc hieọn ủuỷ ủeồ ủaựp ửựng caực yeõu caàu khaực nhau cuỷa
ngửụứi sửỷ duùng
ẹeồ ủaựnh giaự moọt boọ PLC ngửụứi ta dửùa vaứo 2 tieõu chuaồn chớnh:
• Dung lửụùng boọ nhụự vaứ soỏ tieỏp ủieồm vaứo/ra cuỷa noự
• Caực chửực naờng nhử: boọ vi xửỷ lyự, chu kyứ xung clock, ngoõn ngửừ laọp
trỡnh, khaỷ naờng mụỷ roọng soỏ ngoừ vaứo/ra
Vụựi PLC vieọc giaỷi quyeỏt caực baứi toaựn tửù ủoọng hoaự khaực nhau haàu nhử khoõng
bieỏn ủoồi gỡ veà cụ caỏu ngoaứi vieọc phaỷi thay ủoồi chửụng thỡnh ủieàu khieồn sao cho phuứ
hụùp.PLC coự khaỷ naờng tuyeọt ủoỏi veà khaỷ naờng linh ủoọng,meàm deỷo vaứ hieọu quaỷ veà giaỷi
quyeỏt caực baứi toaựn cao hụn so vụựi caực kyừ thuaọt coồ ủieồn
Baỷng sau ủaõy chổ sửù so saựnh giửừa kyừ thuaọt ủieàu logớc coồ ủieồn vaứ kyừ thuaọt ủieàu
khieồn chửụng trỡnh hoaự:
Điều khiển logic cổ điển Điều khiển chương trình
logic Phần tử điều khiển phần
cứng
Mục đích đặc biệt Mục đích chung
Phạm vi điều khiển Nhỏ vμ trung bình Trung bình vμ lớn
Độ tin cậy Phụ thuộc thiết kế vμ chế
tạo
Cao
bình vμ lớn
Trang 4B – CẤU HÌNH PHẦN CỨNG S7-300:
Thiết bị điều khiển khả trình SIMATIC S7-300 được thiết kế theo kiểu
module.Các module này sử dụng cho nhiều ứng dụng khác nhau.Việc xây dựng PLC theo cấu trúc module rất thuận tiện cho việc thiết kế các hệ thống gọn nhẹ và dể dàng cho việc mở rộng hệ thống
5 Nguån cung cÊp
2 MPI (cỉng nèi nhiỊu ch©n)
3 Giao diƯn cđa thiÕt bÞ nèi kÕt
4 N¾p ®Ëy thiÕt bÞ nèi kÕt
H×nh 1: ThiÕt bÞ ®iỊu khiĨn logic kh¶ tr×nh SIMATIC S7_300
I Module nguån PS307 cđa S7_300 :
H×nh 2 : Module nguån cđa S7_300
Trang 5Module PS307 có nhiệm vụ chuyển nguồn xoay chiều 120/230V thμnh nguồn một chiều 24V để cung cấp cho các module khác của khối PLC Ngoμi ra module nguồn còn có nhiệm vụ cung cấp nguồn cho các sensor vμ các thiết bị truyền động kết nối với PLC
Module nguồn thường được đặt bên trái của khối CPU
Mặt trước của module nguồn bao gồm:
Một đèn led báo hiệu điện áp ra 24 V DC
Một nút dùng để chọn điện áp đầu vμo lμ 120 V AC hoặc 230 V AC
Một công tắc dùng để tắt/bật diện áp ra
Mặt sau của module nguồn bao gồm:
• Các lổ để nhận điện áp vμo vμ ra
• Khe dùng để gắn module lên panel
Module nguồn PS307 có 3 loại: PS307-1B, PS307-1E, PS307-1K Sự khác nhau giữa 3 loại nμy thể hiện ở cường độ dòng vμo vμ dòng ra của module
Các thông số kỹ thuật cụ thể của các loại module nguồn của S7-300
- Các mức giá trị Các thông số chung Hiệu suất
Hao phí điện năng
24 V DC 24V+5%, lúc không tải
2 A 5 A 10A 83% 87% 89% 10W 18W 30W
Bảng 1: các thông số kỹ thuật cụ thể của 3 loại module
Trang 6II Khối xử lý trung tâm -Module CPU:
Module CPU laứ loaùi module coự chửựa boọ vi xửỷ lyự,heọ ủieàu haứnh, boọ nhụự,caực boọ thụứi gian.boọ ủeỏm,coồng truyeàn thoõng (RS485)…vaứ coự theồ coự moọt vaứi coồng vaứo ra soỏ.Caực coồng vaứo ra soỏ coự treõn CPU ủửụùc goùi laứ coồng vaứo ra onboard
Trong hoù PLC S7-300 coự nhieàu loaùi module CPU khaực nhau,ủửụùc ủaởt teõn theo boọ vi xửỷ lyự coự trong noự nhử module CPU 312, module CPU 314, module CPU 315…
Nhửừng module naứy cuứng sửỷ duùng moọt boọ vi xửỷ lyự nhửng khaực nhau veà coồng vaứo/ra onboard cuừng nhử caực khoỏi haứm ủaởt bieọt ủửụùc tớch hụùp saỹn trong thử vieọn cuỷa heọ ủieàu haứnh phuùc vuù vieọc sửỷ duùng caực coồng vaứo/ra onboard naứy ủửụùc phaõn bieọt vụựi
nhau trong teõn goùi baống cuùm tửứ chửừ caựi IFM (Intergrated Funtion Module) như
CPU 312 IFM, CPU 313, CPU 314IFM, CPU 314, CPU 215
Hình 3 : CPU 314 vμ CPU 314IFM
Ngoaứi coứn coự caực loaùi module CPU vụựi hai coồng truyeàn thoõng,trong ủoự coồng truyeàn thoõng thửự hai coự chửực naờng chớnh laứ phuùc vuù vieọc noỏi maùng phaõn taựn.Caực loaùi module CPU naứy ủửụùc phaõn bieọt vụựi caực loaùi CPU khaực baống theõm cuùm tửứ DS
(Distributed Port)
Các CPU nμy được chế tạo theo mức độ tăng dần về tính năng sử dụng:
• CPU 312 IFM, lμ sự tích hợp giữa khối CPU với các đầu vμo/đầu ra số
(digital inputs/outputs) dùng để điều khiển những hệ thống nhỏ không xử
lý các tín hiệu tương tự
• CPU 313 dùng để điều khiển những hệ thống lớn hơn đòi hỏi phải lập trình
phức tạp hơn
Trang 7• CPU 314 IFM, lμ sự tích hợp giữa khối CPU với các đầu vμo/đầu ra tương
tự vμ số (digital and analog inputs/outputs) dùng để điều khiển những thiết
bị đòi hỏi thời gian đáp ứng nhanh vμ các chức năng riêng biệt
• CPU 314 được dùng để điều khiển những hệ thống lớn đòi hỏi phải lập
trình phức tạp vμ xử lý các lệnh với tốc độ lớn
• CPU 315/315_2 DP được dùng cho các công việc phức tạp đòi hỏi phải lập
trình nhiều vμ phân chia cấu trúc tự động
1 Module mụỷ roọng: coự 5 loaùi chớnh:
PS (Power Supply): Module nguoàn nuoõi Coự 3 loaùi: 2A, 5A, 10A
SM (Signal Module): Module mụỷ roọng coồng tớn hieọu vaứo/ra, bao goàm:
• DI (Digital Input): Module mụỷ roọng caực coồng vaứo soỏ
• DO (Digital Output): Module mụỷ roọng caực coồng ra soỏ
• DI/DO: Module mụỷ roọng caực coồng vaứo/ra soỏ
• AI (Analog Input): Module mụỷ roọng caực coồng vaứo tửụng tửù
• AO (Analog Output): Module mụỷ roọng caực coồng ra tửụng tửù
• AI/AO: Module mụỷ roọng caực coồng vaứo/ra tửụng tửù
IM (Interface module): Module gheựp noỏi ẹaõy laứ loaùi module chuyeõn
duùng coự nhieọm vuù noỏi tửứng nhoựm caực module mụỷ roọng laùi vụựi nhau thaứnh moọt khoỏi vaứ ủửụùc quaỷn lyự chung bụỷi moọt module CPU Caực
module mụỷ roọng ủửụùc gaự treõn moọt thanh rack Treõn moói rack coự theồ gaự ủửụùc toỏi ủa 8 module mụỷ roọng (khoõng keồ module CPU vaứ module
nguoàn nuoõi) Moọt module CPU S7-300 coự theồ laứm vieọc trửùc tieỏp ủửụùc vụựi nhieàu nhaỏt 4 racks vaứ caực racks naứy phaỷi ủửụùc noỏi vụựi nhau baống module IM
FM (Function Module): Module coự chửực naờng ủieàu khieồn rieõng, vớ duù
nhử module ủieàu khieồn ủoọng cụ bửụực, module ủieàu khieồn ủoọng cụ servo, module PID, module ủieàu khieồn voứng kớn,
CP (Communication Module): Module phuùc vuù truyeàn thoõng trong
maùng giửừa caực PLC vụựi nhau hoaởc giửừa PLC vụựi maựy tớnh
Trang 82 Cấu tạo bên ngoμi của CPU SIMATIC S7-300:
SIEMENS SF CPU 314
BATF DC5V FRCE RUN STOP RUN-P
STOP MRES RUN
M L+
MPI (Multipoint Interface)
Hình 4 : Cấu tạo bên ngoμi của CPU 314.
Nút chọn Mode hoạt động cho phép chúng ta lựa chọn bốn trạng thái hoạt
RUN CPU thực hiện quét chương trình
Chương trình có thể được đọc từ CPU ra thiết bị lập trình nhưng không thể thay đổi chương trình đã được nạp vμo bộ nhớ của CPU
STOP CPU không thực hiện quét chương trình
Chương trình có thể được đọc từ CPU ra thiết bị lập trình vμ cũng có thể nạp vμo CPU
MRES
(Memory
Reset)
Mode thực hiện reset bộ nhớ của CPU
Đối với CPU 312 IFM vμ CPU 314 IFM khi chúng ta thực hiện reset bộ nhớ của CPU thì các vùng nhớ tích hợp giữ nguyên không thay đổi
Trang 9Baỷng 2: Caực cheỏ ủoọ hoaùt ủoọng cuỷa CPU
Các đèn LED thể hiện trạng thái hoạt động vμ lỗi
SF (đèn đỏ) Hệ thống bị
loói
(System Fault)
Các loói về thời gian
Memory card có vấn đề
vμ cho bus của S7_300
Đèn sáng nếu nguồn cung cấp tốt
FRCE
(yellow)
Thực hiện chương trình
Đèn sáng nếu đang tiến hμnh thực hiện công việc
RUN (green) CPU đang ở
chế độ RUN
Đèn nháy trong quá trình CPU restart
Đèn sáng trong suốt quá trình CPU thực hiện vòng quét
STOP
(yellow)
CPU đang ở chế độ STOP
Đèn sáng nếu CPU không thực hiện vòng quét
Đèn nháy khoảng một hai giây nếu CPU yêu cầu reset bộ nhớ
Bảng 3:mô tả ý nghĩa của LED
Trang 103 Các đặc tính chủ yếu của các CPU trong họ S7_300:
312IFM 313 314 314IFM 315 315-2DP 316 RAM 6 KB 12 KB 24 KB 32 KB 48 KB 64 KB 128 KB Vùng nhớ chương
20 KB EEPROM
-
20 KB RAM;
512 KB
40 KB RAM;
512 KB
48 KB RAM;
48 KB EEPROM
-
80 KB RAM;
512 KB
96 KB RAM;
512 KB
80 KB RAM;
150 ms 1ữ6000
ms
150 ms 1ữ6000
ms
150 ms 1ữ6000 ms
150 ms 1ữ6000
ms
150 ms 1ữ6000
ms
150 ms 1ữ6000 ms
+10 on- board Output:
128 +6 on- board
128 512 Input:
496 +20 on- board Output:
496 +16 on- board
1024
Analog input/output 32 64 Input: 62
+4 on- board Output:
62 +1 on- board
128
Trang 11Vùng đệm xử lý
vμo/ra
32 bytes + 4 bytes on board
Baỷng 4:Các đặc tính chủ yếu của các CPU trong họ S7_300
4 Module xử lý vμo/ra tín hiệu số của S7_300
Hình 5 : Input/Output Digital Module
SIMENS cung cấp 3 loại module xử lý vμo/ra của tín hiệu số chính đó lμ:
• Inputs Digital module: Module có nhiệm vụ nhận các tín hiệu số từ thiết bị
ngoại vi vμo vùng đệm để xử lý
• Outputs Digital module: Module có nhiệm vụ xuất các tín hiệu số từ vùng
đệm xử lý ra thiết bị ngoại vi
Trang 12• Input/Outputs Digital module: Module tÝch hîp nhiÖm vô cña c¶ hai lo¹i
module nãi trªn
a Input Digital Modules
T−¬ng øng víi sè l−îng ®Çu vμo vμ hiÖu ®iÖn thÕ cña ®Çu vμo SIMENS cung cÊp mét sè lo¹i module sau:
Sè liÖu lùa chän c¶m biÕn
§iÖn ¸p ®Çu vμo
HiÓn thÞ tr¹ng c¸c th¸I §Ìn LED (xanh)
§iÖn ¸p, dßng, ®iÖn thÕ Møc ®iÖn ¸p vμo L+
Trang 13b Digital Output Modules:
C¨n cø vμo sè ®Çu ra vμ ®iÖn ¸p ®Çu ra SIMENS cung cÊp mét sè module ®Çu ra tÝn hiÖu sè nh− sau:
SM322; DO 32×24 VDC/0,5 A: module cã 32 ®Çu ra ®iÖn ¸p mét chiÒu 24
VDC
SM322; DO 16×24 VDC/0,5 A: module cã 16 ®Çu ra ®iÖn ¸p mét chiÒu 24
VDC
SM322; DO 8×24 VDC/0,5 A: module cã 8 ®Çu ra ®iÖn ¸p mét chiÒu 24
VDC, cã thiÕt lËp c¸c hμm chuÈn ®o¸n ng¾t
SM322; DO 8×24 VDC/2 A: module cã ®Çu ra ®iÖn ¸p mét chiÒu 24
Trang 14TảI của đèn Max, 5 W
Nối song song 2 đầu ra
Để có nhiều đầu kích hoạt
Trạng thái, các ngắt, chuẩn đoán
Max, 2 A Khả năng cách điện
Giữa kênh truyền vμ mặt dẫn thân máy
Bảng 6:Các đặc tr−ng kỹ thuật của module SM 322; DO 16ì24 VDC
c Digital input/output modules:
Ngoμi những module xử lý vμo tín hiệu số vμ những module xử lý ra tín hiệu số chuyên biệt SIMENS còn đ−a ra một số module tích hợp hai nhiệm vụ nói
Trang 15trên tạo thμnh module xử lý vμo/ra tín hiệu số (Digital input/output modules)
Dưới đây lμ một số module loại nμy:
SM323;DI 16/DO 16 ì 24 VDC/0,5 A: Lμ module có 16 đầu vμo 24 VDC/0,5
A vμ 16 đầu ra 24 VDC/0,5 A
SM323;DI 8/DO 8 ì 24 VDC/0,5 A: Lμ module có 8 đầu vμo 24 VDC/0,5 A
vμ 8 đầu ra 24 VDC/0,5 A
d Các module tích hợp các ngắt chuẩn đoán vμ xử lý lỗi:
Các module nμy có khả năng cμi đặt các thông số để chuẩn đoán các lỗi Để
thiết lập các thông số nμy được thực hiện bằng cách sử dụng STEP7 Việc cμi đặt
các thông số nμy được thực hiện khi CPU ở trạng thái STOP, các thông số nμy
được chuyển từ thiết bị lập trình vμo trong CPU vμ được lưu trữ ở đây CPU có
nhiệm vụ chuyển giao các thông số nμy đến các digital module
Người lập trình cũng có thể thay đổi các thông số nμy trong chương trình
bằng cách sử dụng các khối SFC (System Function) Nếu sử dụng các module loại
nμy mμ không thiết lập các thông số thì các thông số mặc định sẽ được thực thi
No
No
Dynamic Dynamic
Module Module Chuẩn đoán
kênh Lúc thực hiện xử lý
ngắt
Sườn lên
Sườn xuống
Yes/no Yes/no
No
No
Dynamic Dynamic
Nhóm kênh Nhóm kênh
Bảng 7: Các tham số của module SM231; DI 16 ì 24 VDC
Ngắt chuẩn đoán: Khi có một loói xảy ra trong module, module nμy thực
hiện một ngắt chuẩn đoán Điều nμy có nghĩa lμ CPU ngắt việc thực hiện
Trang 16chương trình hoặc các lớp có độ ưu tiên thấp hơn để cho phép thực hiện khối chương trình xử lý ngắt chuẩn đoán
Ngắt xử lý: Tuỳ thuộc vμo việc thiết lập cấu hình, các module nμy có thể
tiến hμnh mỗi nhóm kênh một ngắt xử lý tại thời điểm sườn lên, sườn xuống hoặc vừa sườn lên vừa sườn xuống của tín hiệu trạng thái
Trong lúc đang thực hiện chương trình ngắt xử lý thì CPU ngắt việc thực hiện chương trình hoặc các lớp có độ ưu tiên thấp hơn
Các tín hiệu ngắt khác, nếu xuất hiện được chứa trong vùng đệm của
module vμ được thực hiện tuần tự theo thứ bậc ưu tiên của chúng
d Caực module input/output Analog S7_300:
Hình 6 : Analog Input module
SIMENS cung cấp 3 loại module input/output Analog chính đó lμ:
• Input Analog modules: Module có nhiệm vụ chuyển các tín hiệu tương tự
từ các thiết bị ngoại vi thμnh các tín hiệu số để tiến hμnh xử lý bên trong S7_300
Trang 17• Output Analog modules: Module có nhiệm vụ chuyển đổi các tín hiệu
số của S7_300 thμnh các tín hiệu tương tự để phục vu các quá trình hoạt
động của thiết bị ngoại vi
• Input/Outputs Analog module: Module tích hợp nhiệm vụ của cả hai loại
module nói trên
Các CPU của S7_300 chỉ xử lý được các tín hiệu số, vì vậy các tín hiệu
analog đều phải được chuyển đổi thμnh tín hiệu số Một tín hiệu analog được số hoá thμnh hai phần: phần dấu vμ phần giá trị của tín hiệu
Bit dấu: dấu của giá trị tín hiệu analog được lưu ở bit thứ 15
0 ặ +
1 ặ
- Giá trị của tín hiệu: Phần nμy có độ lớn luôn nhỏ hơn 15 bit, các bit mã hoá
nμy lấp đầy các bit trích luỹ theo chiều từ trái sang
Bảng 8:Việc lưu trử các giá trị tín hiệu có độ rộng 15 bit, 12 bit vμ 8 bit
Cũng như các module số, người sử dụng cũng có thể thiết lập các thông số cho các module analog
Đối với các kênh đầu vμo, các thông số có thể lμ:
Thiết lập ngắt
Ngắt xử lý giới hạn các giá trị
Ngắt chuẩn đoán lỗi
Phép đo
Trang 18 Đối với các kênh đầu ra, các thông số có thể lμ:
Các giá trị của thông số Mặc định
Kiểu thông số Phạm vi Thiết lập
5 Module ghép nối (Interface modules - IM):
Hình 7:Interface modules
Trang 19Các module ghép nối (IM) cho phép thiết lập hệ thống S7_300 theo nhiều cấu hình (chỉ tương thích với các CPU trở lên) S7_300 cung cấp 3 loại module ghép nối sau:
IM 360: Lμ module ghép nối có thể mở rộng thêm một tầng chứa 8 module
trên đó với khoãng cách tối đa lμ 10 m lấy nguồn từ CPU
IM 361: Lμ module ghép nối có thể mở rộng thêm ba tầng, với một tầng
chứa 8 module với khoãng cách tối đa lμ 10 m đòi hỏi cung cấp một nguồn 24 VDC cho mỗi tầng
IM 365: Lμ module ghép nối có thể mở rộng thêm một tầng chứa 8 module
trên đó với khoãng cách tối đa lμ 1m lấy nguồn từ CPU
Các module ghép nối IM 365 IM 360 IM 361
Số module cho mỗi
Điện năng tiêu thụ
Bảng 10:các thông số kỹ thuật cụ thể của caực module
C – CAÁU TRUÙC CHệễNG TRèNH TRèNH PLC S7-300:
I Voứng queựt chửụng trỡnh cuỷa S7-300:
PLC thửùc hieọn chửụng trỡnh theo moọt chu trỡnh laởp ủửụùc goùi laứ voứng queựt (scan).Moọt voứng laởp ủửụùc goùi laứ moọt voứng queựt.Coự theồ chia moọt chu trỡnh thửùc hieọn cuỷa S7-300 ra laứm 4 giai ủoaùn.giai ủoaùn moọt laứ giai ủoaùn ủoùc dửừ lieọu tửứ caực coồng vaứo,caực dửừ lieọu naứy seừ ủửụùc lửu trửừ treõn vuứng ủeọm caực ủaàu vaứo.Tieỏp theo laứ giai ủoaùn thửùc hieọn chửụng trỡnh,trong tửứng voứng queựt chửụng trỡnh laàn lửụùt thửùc hieọn tuaàn tửù tửứ leọnh ủaàu tieõnvaứ keỏt thuực ụỷ leọnh cuoỏi cuứng tieỏp ủeỏn laứ giai ủoaùn truyeàn thoõng noọi boọ vaứ kieồm tra loói.Giai ủoaùn cuoỏi cuứng laứ giai ủoaùn chuyeồn noọi dung caực boọ ủeọm aỷo tụựi coồng ra.ẹeỏn ủaõy moọt voứng queựt ủửụùc hoaứn thaứnh vaứ moọt voứng queựt mụựi ủửụùc tieỏp tuùc taùo neõn moọt chu trỡnh laởp voõ haùn
1 Truyeàn thoõng vaứ
kieồm tra noọi boọ
2 Chuyeồn dửừ lieọu tửứ coồng vaứo tụựi I
Trang 20
H×nh 8:Chu tr×nh thùc hiƯn ch−¬ng tr×nh trong S7_300
Một điểm cần chú ý là tại thời điểm thực hiện lệnh vào/ra thông thường các lệnh không làm việc trực tiếp với các cổng vào/ra mà chỉ thông qua bộ đệm ảo của cổng trong vùng nhớ tham số.Chỉ khi gặp lệnh yêu cầu truy xuất các đầu váo/ra ngay lập tức thì hệ thống sẽ cho dừng các 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ác cổng vào/ra.Các chương trình con xử lý ngắt chỉ được thực hiện trong vòng quét khi xuất tín hiệu báo ngắt và có thể xảy ra bất cứ thời điểm nào trong vòng quét
Bộ đệm I và Q không liên quan đến các cổng vào/ra tương tự nên các lệnh truy nhập không tương tự được thực hiện trực tiếp với cổng vật lý chứ không qua bộ đệm
Thời gian cần thiết để PLS thực hiện được một vòng quét gọi là thời gian vòng quét (Scan Time).Thời gian vòng quét không cố định,tức là không phải vòng quét nào cũng được thực hiện theo một khoảng thời gian như nhau
Các vòng quét nhanh,chậm phụ thuộc vào số lệnh trong chương trình được thực hiện,vào khối lượng dữ liệu được truyền thông…trong vòng quét đó
Như vậy giữa việc đọc dữ liệu từ đối tượng để sử lý,tính toán và việc gữi tín hiệu điều khiển đến đối tượng đó có một khoảng thời gian trễ đúng bằng thời gian vòng quét.Thời gian vòng quét càng ngắn,tính thời gian thực của chương trình càng cao
Nếu sử dụng các khối chương trình đặt biệt có chế độ ngắt,ví dụ như là OB40 , OB80…chương trình của các khối đó sẽ được thực hiện trong vòng quét khi xuất hiện tính hiệu báo ngắt cùng chủng loại
Trang 21Neỏu moọt tớn hieọu baựo ngaột xuaỏt hieọn khi PLC ủang trong giai ủoaùn truyeàn thoõng vaứ kieồm tra noọi boọ,PLC seừ dửứng coõng vieọc truyeàn thoõng,kieồm tra ủeồ thửùc hieọn khoỏi chửụng trỡnh tửụng ửựng vụựi tớn hieọu baựo ngaột ủoự.Vụựi hỡnh thửực tớn hieọu sửỷ lyự ngaột nhử vaọy,thụứi gian cuỷa voứng queựt caứng lụựn khi caứng coự nhieàu tớn hieọu ngaột xuaỏt hieọn trong voứng queựt
Do ủoự,ủeồ naõng cao tớnh thụứi gian thửùc cuỷa chửụng trỡnh ủieàu khieồn,tuyeọt ủoỏi khoõng neõn vieỏt chửụng trỡnh sửỷ lyự ngaột quaự daứi hoaởc quaự laùm duùng vieọc sửỷ duùng cheỏ ủoọ ngaột trong chửụng trỡnh ủieàu khieồn
II Cấu trúc chương trình của S7_300:
Các chương trình điều khiển PLC S7_300 được viết theo một trong hai dạng sau:
Chương trình tuyến tính (chương trình đơn khối)
Chương trình có cấu trúc (chương trình nhảy khối)
Laọp trỡnh tuyeỏn tớnh (liner):
1
Toaứn boọ chửụng trỡnh ủieàu khieồn naốm trong moọt khoỏi trong boọ nhụự Loaùi hỡnh caỏu truực tuyeỏn tớnh naứy phuứ hụùp vụựi nhửừng baứi toaựn tửù ủoọng nhoỷ, khoõng phửực taùp Khoỏi ủửụùc choùn phaỷi laứ khoỏi OB 1, laứ khoỏi maứ CPU luoõn queựt vaứ thửùc hieọn caực leọnh trong noự thửụứng xuyeõn, tửứ leọnh ủaàu tieõn ủeỏn leọnh cuoỏi cuứng vaứ quay laùi tửứ leọnh ủaàu tieõn
voứng queựt
Leọnh 1 Leọnh 2
Leọnh cuoỏi cuứng
OB1
Hỡnh 9: laọp trỡnh tuyeỏn tớnh
Trang 222 Lập trình có cấu trúc (structured) :
Trong PLC Siemens S7 tổ chức theo các khối mà có thể lập trình được với từng nhiệm vụ riêng Loại hình cấu trúc này phù hợp với những bài toán điều khiển nhiều nhiệm vụ và phức tạp PLC S7-300 có 4 loại khối cơ bản:
Khối tổ chức OB (Oganization block) : Khối tổ chức và quản lý
chương trình điều khiển
Khối hàm chức năng FB (Function block) : Là loại khối FC đặc
biệt có khả năng trao đổi một lượng dữ liệu với các khối chương trình khác Các dữ liệu này phải được tổ chức thành khối dữ liệu riêng có tên gọi là Data block
Khối hàm (Function) : Khối chương trình với những chức năng
riêng giống như một chương trình con hoặc một hàm
Khối dữ liệu (Data block) : Khối chứa các dữ liệu cần thiết để thực
hiện chương trình Các tham số khối do ta tự đặt
Ngoài ra còn có các khối hệ thống như : SFB, SFC, SDB
Chương trình trong các khối được liên kết lại với nhau bằng các lệnh gọi khối,chuyển khối
Xem những phần chương trình trong các khối như là các chương trình con thì S7-300 cho phép gọi chương trình con lồng nhau,tức là chương trình con này gọi từ một chương trình con khác và từ chương trình con được gọi lại gọi đến chương trình con thứ 3…Số các lệnh gọi lồng nhau phụ thuộc vào từng chủng loại module CPU khác nhau mà ta đang sử dụng.Ví dụ như đối với module CPU 314 thì số lệnh gọi lồng nhau nhiều nhất có thể cho phép là 8.Nếu số lần gọi lồng nhau mà vượt quá con số giới hạn cho phép,PLC sẽ chuyễn sang chế độ Stop và đặt cờ báo lỗi
FB9
Trang 23
Hình 10:Chương trình điều khiển có cấu trúc
Khoỏi OB1 luoõn ủửụùc PLC queựt vaứ thửùc hieọn caực leọnh tửứ ủaàu tieõn ủeàn leọnh cuoỏi cuứng vaứ quay laùi leọnh ủaàu tieõn
Việc lập trình đơn giản, rõ rμng hơn khi giải quyết các chương trình điều
khiển lớn
Tạo khả năng tiêu chuẩn hoá từng phần của chương trình để có những khối
chương trình chuẩn
Dễ dμng thay đổi chương trình
Việc kiểm tra chương trình dễ dμng vμ thuận tiện hơn
Khởi đầu đơn giản
Cho phép sử dụng các kỹ thuật chương trình con (gọi khối từ nhiều vị trí
khác nhau)
III Các khối chức năng:
Một chương trình điều khiển của S7_300 gồm có các khối logic (logic blocks)
vμ các khối dữ liệu (data blocks) Các khối logic lμ những khối có chứa các đoạn mã, các khối loại nμy gồm có:
• Khối tổ chức (Organization Block - OB)
• Khối hμm (Function Block - FB)
• Khối hμm (Function - FC)
• Khối DB (Data block)
1 Khối tổ chức (Organization Block - OB):
Các OB thực hiện việc giao tiếp giữa hệ điều hμnh vμ chương trình điều khiển Mỗi OB có một nhiệm vụ cụ thể khác nhau Để tạo một chương trình cho S7_300,
Trang 24người lập trình thực hiện chọn các OB cần thiết mμ công việc đòi hỏi, những công việc cơ bản mμ một chương trình yêu cầu thường lμ:
Khởi động (Startup): các khối thực hiện các công việc nμy lμ OB100 vμ
OB101
Thực hiện vòng quét (Scan cycle): công việc nμy được thực hiện bởi OB1
Xử lý các loói: để CPU không chuyển về mode dừng (stop mode) khi có các loói xuất hiện, người lập trình sử dụng các khối sau: OB80, OB87, OB121,
OB122
Ngoμi ra các CPU còn tích hợp các OB xử lý ngắt
Caực khoỏi OB ủaởt bieọt:
ắ OB1: laởp voứng chửụng trỡnh chớnh (laởp voứng lieõn tuùc)
ắ OB10 (Time of Day Interrupt): ngaột thụứi gian trong ngaứy, baột ủaàu
chaùy ụỷ thụứi ủieồm (ủửụùc laọp trỡnh nhaỏt ủũnh) ủaởc bieọt
ắ OB20 (Time Delay Interrupt): ngaột trỡ hoaừn, chửụng trỡnh trong khoỏi
naứy ủửụùc thửùc hieọn sau moọt khoaỷng thụứi gian delay coỏ ủũnh
ắ OB35 (Cyclic Interrupt): ngaột tuaàn hoaứn, laởp laùi sau khoaỷng thụứi gian
caựch ủeàu nhau ủửụùc ủũnh trửụực (1ms ủeỏn 1 phuựt)
ắ OB40 (Hardware Interrupt): ngaột cửựng, chaùy khi phaựt hieọn coự loói trong
module ngoaùi vi
ắ OB80 (Cycle Time Fault): loói thụứi gian chu trỡnh, thửùc hieọn khi thụứi
gian voứng queựt vửụùt quaự thụứi gian cửùc ủaùi ủaừ ủũnh
ắ OB81 (Power Supply Fault): thửùc hieọn khi CPU phaựt hieọn thaỏy coự loói
nguoàn nuoõi
ắ OB82 (Diagnostic Interrupt): chửụng trỡnh trong khoỏi naứy ủửụùc goùi khi
CPU phaựt hieọn coự sửù coỏ tửứ module I/O mụỷ roọng
ắ OB85 (Not Load Fault): ủửụùc goùi khi CPU thaỏy chửụng trỡnh ửựng duùng
coự sửỷ duùng cheỏ ủoọ ngaột nhửng chửụng trỡnh xửỷ lyự tớn hieọu ngaột laùi khoõng coự trong khoỏi OB tửụng ửựng
ắ OB87 (Communication Fault): thửùc hieọn khi coự loói truyeàn thoõng
ắ OB100 (Start Up Information): thửùc hieọn moọt laàn khi CPU chuyeồn
traùng thaựi tửứ STOP sang RUN
ắ OB101 (Cold Start Up Information_chổ coự ụỷ CPU S7-400): thửùc hieọn
moọt laàn khi coõng taộc nguoàn cuỷa CPU chuyeồn traùng thaựi tửứ OFF sang
ON
ắ OB121 ( Synchronous Error): ủửụùc goùi khi coự loói logic trong chửụng
trỡnh
Trang 25ắ OB122 (Synchronous Error): ủửụùc goùi khi coự loói module trong chửụng
trỡnh
2 Khoỏi haứm chửực naờng FB (Function block) :
Laứ loaùi khoỏi FC ủaởc bieọt coự khaỷ naờng trao ủoồi moọt lửụùng dửừ lieọu vụựi caực khoỏi chửụng trỡnh khaực Caực dửừ lieọu naứy phaỷi ủửụùc toồ chửực thaứnh khoỏi dửừ lieọu rieõng coự teõn goùi laứ Data block
3 Khoỏi haứm FC(Function) :
Khoỏi chửụng trỡnh vụựi nhửừng chửực naờng rieõng gioỏng nhử moọt chửụng trỡnh con hoaởc moọt haứm
4 Khoỏi dửừ lieọu (Data block) : Khoỏi chửựa caực dửừ lieọu caàn thieỏt ủeồ thửùc
hieọn chửụng trỡnh Caực tham soỏ khoỏi do ta tửù ủaởt Khối dữ liệu dùng để chứa các
dữ liệu của chương trình Có hai loại DB: shared DB vμ instance DB
Shared DB lμ khối dữ liệu có thể được truy cập bởi tất cả các khối trong
chương trình đó
Instance DB lμ khối dữ liệu được gán cho một khối hμm duy nhất, dùng để
chứa dữ liệu của khối hμm nμy
Ngoaứi ra coứn coự caực khoỏi heọ thoỏng nhử : SFB, SFC, SDB
SFC (system function): lμ các hμm được tích hợp trong hệ điều hμnh của CPU, các hμm nμy có thể được gọi bởi chương trình khi cần Người lập trình không thể tạo ra các SFC Haứm ủửụùc laọp trỡnh trửụực vaứ tớch hụùp saỹn trong CPU S7
Ta coự theồ goùi SFC tửứ chửụng trỡnh; vỡ nhửừng SFC laứ moọt phaàn cuỷa heọ ủieàu haứnh, ta khoõng caàn phaỷi naùp chuựng vaứo nhử moọt phaàn cuỷa chửụng trỡnh
SFB (system function block): lμ các khối hμm được tích hợp trong hệ điều hμnh của CPU Các SFB có thể được gọi bởi chương trình, người lập trình không thể tạo ra các khối nμy.ẹaõy laứ khoỏi haứm ủửụùc tớch hụùp trong CPU S7 Ta coự theồ
goùi SFB tửứ chửụng trỡnh; vỡ nhửừng SFB laứ moọt phaàn cuỷa heọ ủieàu haứnh, ta khoõng caàn phaỷi naùp chuựng vaứo nhử moọt phaàn cuỷa chửụng trỡnh Tửụng tửù vụựi FB, SFB caàn DB tỡnh huoỏng Ta phaỷi taỷi DB naứy xuoỏng CPU nhử moọt phaàn cuỷa chửụng trỡnh
SDB (system data block): vuứng nhụự cuỷa chửụng trỡnh ủửụùc taùo bụỷi caực ửựng
duùng STEP7 khaực nhau ủeồ chửựa dửừ lieọu caàn ủeồ ủieàu haứnh PLC Thớ duù: ửựng duùng
“S7 Configuration” caỏt dửừ lieọu caỏu hỡnh vaứ caực tham soỏ laứm vieọc khaực trong caực
Trang 26SDB, và ứng dụng “Communication Configuration” tạo các SDB mà cất dữ liệu
thông tin toàn cục được chia xẻ giữa các CPU khác nhau
Số lượng Kích thước tối đa Ghi
313
314 315
315-2 DP
312IFM 313,314,314
IFM 315,315-2 DP
Hình 11: các khối của các CPU
D – CẤU TRÚC BỘ NHỚ:
C¸c kiĨu d÷ liƯu cđa S7_300:
Tõ c¸c thiÕt bÞ ngo¹i vi (I/O)
Trang 27Trong một chương trình có thể có các kiểu dữ liệu sau:
• BOOL: với dung lượng 1 bit và có giá trị là 0 hay 1
• BYTE: gồm 8 bit, có giá trị nguyên dương từ 0 đến 255
• WORD: gồm 2 byte, có giá trị nguyên dương từ 0 đến 65535
• INT: có dung lượng 2 byte, dùng để biểu diễn số nguyên từ -32768
đến 32767
• DINT: gồm 4 byte, biểu diễn số nguyên từ -2147463846 đến
2147483647
• REAL: gồm 4 byte, biểu diễn số thực dấu phẩy động
• S5T: khoảng thời gian, được tính theo giờ/phút/giây/miligiây
• TOD: biểu diễn giá trị thời gian tính theo giờ/phút/giây
• DATE : biểu diễn giá trị thời gian tính theo năm/tháng/ngày
• CHAR: biểu diễn một hoặc nhiều ký tự (nhiều nhất là 4 ký tự)
2 Phân chia bộ nhớ:
CPU S7-300 có 3 vùng nhớ cơ bản:
a Các 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
• FC (Function): miền chứa chương trình con Đây là khối logic mà
không có vùng nhớ kết hợp: FC không cần DB tình huống Các biến cục bộ của FC được cất trong “L stack”; những dữ liệu này không được giữ lại khi FC hoàn tất thực thi
• FB (Function Block) miền chứa chương trình con được tổ chức
thành hàm có khả năng trao đổi dữ liệu với bất cứ một khối chương trình nào khác , các dữ liệu này được xây dựng thành một khối dữ liệu riêng (DB_Data Block) Đây là khối logic mà có vùng nhớ kết hợp với nó FB cần có thêm bộ nhớ ở dạng khối dữ liệu tình huống “instance” Các tham số mà đưa vào FB và một số dữ liệu cục bộ (các biến
“tĩnh”) được cất trong DB tình huống; dữ liệu cục bộ khác (các biến tạm) được cất trong “L stack” Dữ liệu cất trong DB tình huống được giữ nguyên khi FB hoàn tất thực thi; dữ liệu trong “L stack” không được giữ lại khi FB hoàn tất
b Vùng Chứa Tham Số Của Hệ Điều Hành Và Các Chương Trình Ứng
Dụng :được chia thành 7 miền khác nhau
• I (Process Input Image): Miền bộ đệm các dữ liệu cổng vào số Trước
khi bắt đầu thực hiện chương trình, PLC sẽ đọc giá trị logic của tất cả các cổng đầu vào và cất giữ chúng trong vùng nhớ I Thông thường chương
Trang 28trình ứng dụng không đọc trực tiếp trạng thái logic của cổng vào số mà chỉ lấy dữ liệu của cổng vào từ bộ đệm I
• Q (Process Output Image): Miền bộ đệm các dữ liệu cổng ra số Kết
thúc giai đoạn thực hiện chương trình, PLC sẽ chuyển giá trị logic của bộ đệm Q tới các cổng ra số Thông thường chương trình không trực tiếp gán giá trị tới tận cổng ra mà chỉ chuyển chúng vào bộ đệm Q
• M: Miền các biến cờ Chương trình ứng dụng sử dụng vùng nhớ này để
lưu trữ các tham số cần thiết và có thể truy nhập nó theo bit (M), byte (MB), từ (MW), từ kép (MD)
• T (Timer): Miền nhớ phục vụ bộ định thời bao gồm việc lưu trữ các giá
trị thời gian đặt trước (PV-Preset Value), giá trị đếm thời gian tức thời (CV-Current Value) cũng như giá trị logic đầu ra của bộ thời gian
• C (Counter): Miền nhớ phục vụ bộ đếm bao gồm việc lưu trữ giá trị
đặt trước (PV-Preset Value), giá trị đếm tức thời (CV-Current Value) và
giá trị logic của bộ đếm
• PI (I/O External Input): Miền địa chỉ cổng vào của các module tương
tự 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ỉ
• PQ (I/O External Output): Miền địa chỉ cổng ra của các module tương
tự Các giá trị tương tự tại cổng ra của module tương tự sẽ được module đọc và chuyển tự động theo những địa chỉ
3 Vùng chứa các khối dử liệu:được chia làm hai 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 cũng như số lượng khối do người sử dụng quy định,phù hợp với từng bài toán điều khiển.Chương trình có thể truy cập miền này theo từng bit (DBX),byte (DBB),từ (DBW) hoặc 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ụng cho các biện phá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 chương trình đã gọi nó.Nội dung của một số dữ liệu rtong miền này sẽ bị xoá khi kết thúc chương trình tương ứng trong OB,FC,FB.Miền này có thể truy nhập từ chương trình theo bit (L),byte (LB),từ
(LW) hoặc từ kép (LD)
4 Tầm địa chỉ tối đa cho các vùng nhớ:
• Với I, Q, PI, DB, DI và L: