
HƯỚNG DẪN THỰC HÀNH PLC
Bộ môn Cơ Điện Tử 1
I.GIỚI THIỆU
Trong những năm gần đây các bộ điều khiển logic lập trình được (PLC Programmable
Logic Controller) được dùng rộng rãi trong công nghiệp để thiết kế các hệ thống điều khiển tự
động. PLC là một thiết bị điều khiển dùng vi xử lý được thiết kế chuẩn hóa có nhiều đầu vào/ra
(input/output) tương tự và số, các bộ đếm (counter)
, bộ
định thì (timer) … và hoạt động theo
chương trình lập trước. Chương trình này có thể thay đổi rất dễ dàng nhờ bộ lập trình đi kèm
(program console) hay máy tính cá nhân PC. Các bộ PLC có kích thước gọn nhẹ, dễ dàng
thay thế các mạch điều khiển dùng contactor, rờle vốn phức tạp và không tin cậy
. Có nhiều
loại PLC do nhiều hãng sản xuất
như Siemens, Omron, Mitsubishi, Allen[Bresley,
Telemecanique… Tuy nhiên về nguyên tắc các loại PLC đều tương tự nhau.
Mục tiêu của các bài thực hành là cung cấp cho sinh viên khái niệm cơ bàn về PLC
SIEMENS, khả năng ứng dụng của chúng cũng như phương pháp lập trình ngôn ngữ
STEP7. Từ đó sinh viên có thể thiết kế các mạch điều khiển hay bộ điều khiển khác nhau dùng PLC
nhằm làm giảm giá thành, tăng độ tin cậy, đơn giản hóa thiết kế.
II.GIỚI THIỆU PLC S7[300
1.Các vùng nhớ và chức năng của chúng:
Tên
Ch
ức năng
Đơn v
ị truy xuất
T
ầm địa chỉ
Process[
image
Input
Đầu mỗi chu kỳ quét, bộ vận hành
đọc các đầu vào từ hệ thống và lưu
các giá trị vào vùng nhớ này để xử
lý
trong chu kỳ đó. Trong suốt chu
kỳ quét, chương trình tính toán giá
trị ngõ ra và để vào vùng nhớ này.
Input Bit
Byte (8 bit)
Word (16 bit)
Double word
I
IB
IW
ID
0.0 – 65535.7
0 – 65535
0 – 65534
0 – 65532
Process[
image
Output
Trong suốt chu kỳ quét, chương
trình tính toán giá trị ngõ ra và để
vào vùng nhớ này. Cuối mỗi chu
kỳ, bộ vận hành đọc các giá trị đó
và gứi chúng đến ngõ ra của hệ
thống.
Output Bit
Byte (8 bit)
Word (16 bit)
Double word
Q
QB
QW
QD
0.0 – 65535.7
0 – 65535
0 – 65534
0 – 65532
Bit
memory
Cung cấp vùng lưu trữ các kết quả
tạm thời được tính trong chương
trình .
Memory Bit
Byte (8 bit)
Word (16 bit)
Double word
M
MB
MW
MD
0.0 – 255.7
0 – 255
0 – 254
0 – 252

HƯỚNG DẪN THỰC HÀNH PLC
Bộ môn Cơ Điện Tử 2
Tên
Ch
ức năng
Đơn v
ị truy xuất
T
ầm địa chỉ
I/O:
external
input
Cho phép chương trình truy xuất
trực tiếp các module input và
output
(nghĩa là các đầu vào/ra ngoại vi)
Peripheral IB
Peripheral IW
Peripheral ID
PIB
PIW
PID
0 – 65535
0 – 65534
0 – 65532
I/O
external
output
Peripheral QB
Peripheral QW
Peripheral QD
PQB
PQW
PQD
0 – 65535
0 – 65534
0 – 65532
Timer
Cung cấp vùng nhớ cho các đơn vị
time (time cell). Bộ đếm thời gian
truy xuất các time cell để cập nhật
chúng bằng cách giảm giá trị thời
gian. Các lệnh timer truy xuất
time cell ở vùng nhớ này.
Counter
Cung cấp vùng nhớ cho các bộ
đếm counter. Các lệnh counter
truy xuất giá trị đếm trong vùng
nhớ này.
Counter (C)
C
2.Sử dụng Timer
Các lệnh định thì (timer):
Lưu ý cách đặt giá trị thời gian cho S7[300:
S5T#aH_bM_cS_dMS
S5T#2s = 2 giây
S5T#12m_18s_20ms = 12 phút, 18 giây và 20 mili giây.
S5T#1h_20m_3s = 1 giờ, 20 phút và 3 giây.
Tầm giá trị : từ S5T#10ms đến S5T#2h_46m_30s_0ms
a.Kiểu Pulse timer : (SP)
Nếu trạng thái ngõ vào I0.0 đổi từ 0 lên 1 thì timer T5 bắt đầu. Timer tiếp tục
chạy cho đến hết thời gian 2s với điều kiện I0.0 vẫn ở mức 1. Nếu I0.0 thay đổi từ 1

HƯỚNG DẪN THỰC HÀNH PLC
Bộ môn Cơ Điện Tử 3
xuống 0 trước khi hết thời gian 2s thì timer dừng.
Ngõ ra Q4.0 là 1 trong thời gian timer chạy
b. On[Delay timer: (SD)
Khi ngõ vào I0.0 thay đổi từ 0 lên 1, timer T5 bắt đầu. Nếu thời gian trôi hết và I0.0 vẫn
ở mức 1, ngõ ra Q4.0 lên 1.
Nếu trạng thái I0.0 đổi từ 1 xuống 0, timer sẽ dừng và ngõ ra Q4.0 bằng 0.
c. Off[Delay timer : (SF)
Khi ngõ vào I0.0 thay đổi từ 1 xuống 0, Timer T5 bắt đầu. Nếu I0.0 đổi từ 0 lên 1, Timer
bị Reset.
Trạng thái ngõ ra Q4.0 là 1 khi I0.0 là 1, hoặc khi Timer đang chạy
3.Sử dụng Counter
3.1Nguyên lý hoạt động
[ Bộ đếm làm nhiệm vụ đếm sườn xung của tín hiệu đầu vào. Số bộ đếm phụ thuộc vào
loại CPU. S7[300 có tối đa là 256 bộ đếm, ký hiệu là Cx, trong đó x là số nguyên từ 0
đến 255.
[ Số sườn xung đếm được ghi vào thanh ghi 2 byte của bộ đếm gọi là C[Word. Nội
dung của C[Word là giá trị tức thời của bộ đếm được ký hiệu là CV.Ngoài ra bộ đếm
còn báo trạng thái thông qua C[bit. Khi CV = 0 thì C[bit = 0, khi CV ≠ 0 thì C[bit =1.
3.2Sử dụng
PLC S7[300 có 3 loại bộ đếm.Bộ đếm lên, bộ đếm xuống và bộ đếm lên/xuống. Ở đây
ta chỉ xét 2 bộ đếm là bộ đếm lên, bộ đếm lên/xuống.

HƯỚNG DẪN THỰC HÀNH PLC
Bộ môn Cơ Điện Tử 4
a.Bộ đếm lên S[CU
STL LADDER FBD
CU: bộ đếm lên
[CU: ngõ vào tín hiệu đếm lên lên. (Chỉ đếm sườn )
kiểu BOOL
[S: Set giá trị đặt trước vào bộ đếm (CV=PV)
[PV: giá trị đặt (phải ghi theo dạng C# ??? (từ 000[
>999)
[R: Reset giá trị CV và C_bit về 0
[Q: ngõ ra trạng thái của Couter.
[CV: ngõ ra giá trị tức thời của Counter (dạng Hex )
CV_BCD: ngõ ra giá trị tức thời của Counter (dạng
BCD)
[Lưu ý: Couter đếm lên đến 999 không đếm nữa
b.Bộ đếm xuống S[CD
STL LADDER FBD
CD: bộ đếm xuống
[CD: ngõ vào tín hiệu đếm xuống. (Chỉ đếm sườn )
kiểu BOOL
[S: Set giá trị đặt trước vào bộ đếm (CV=PV)
[PV: giá trị đặt (phải ghi theo dạng C# ??? (từ 000[
>999)
[R: Reset giá trị CV và C_bit về 0
[Q: ngõ ra trạng thái của Couter.
[CV: ngõ ra giá trị tức thời của Counter (dạng Hex )
CV_BCD: ngõ ra giá trị tức thời của Counter (dạng
BCD)
[Lưu ý: Couter đếm lên đến 0 không đếm nữa

HƯỚNG DẪN THỰC HÀNH PLC
Bộ môn Cơ Điện Tử 5
c.Bộ đếm lên và đếm xuống S[CUD
STL LADDER FBD
CU: bộ đếm lên
CD: bộ đếm xuống
[CU: ngõ vào tín hiệu đếm lên. ( Chỉ đếm sườn ) kiểu
BOOL
[CD: ngõ vào tín hiệu đếm xuống
[S: Set giá trị đặt vào bộ đếm CV.
[PV: giá trị đặt
[R: Reset giá trị CV và C_bit về 0
[Q: ngõ ra trạng thái của Couter.
[CV: ngõ ra giá trị tức thời của Counter ( dạng Hex )
[CV_BCD: ngõ ra giá trị tức thời của Counter ( dạng
BCD )
[Lưu ý: Couter đếm xuống đến xuống đến 0 và đếm
lên đến 999 thì counter sẽ không đếm nữa. Vì thế với
S_CD thì phải Set giá trị ban đầu
4.Các lệnh so sánh
4.1So sánh số nguyên: CMP xx I
Trong đó xx là kiểu so sánh, thuộc một trong các kiểu sau:
Kiểu só sánh Ký hiệu
IN1 bằng IN2 = =
IN1 khác IN2 < >
IN1 lớn hơn IN2 >
IN1 nhỏ hơn IN2 <
IN1 lớn hơn hoặc bằng IN2 >=
IN1nhỏ hơn hoặc bằng IN2 <=

