CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ PLC 1.1 Khái niệm về PLC PLC Programable Logic Controler là một thiết bị ñiều khiển sử dụng một bộ nhớ có thể lập trình, bộ nhớ này sẽ lưu giữ các cấu
Trang 1CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ PLC
1.1 Khái niệm về PLC
PLC (Programable Logic Controler) là một thiết bị ñiều khiển sử dụng một bộ nhớ có thể lập trình, bộ nhớ này sẽ lưu giữ các cấu trúc lệnh (Logic, thời gian, bộ ñếm, các hàm toán học ) ñể thực hiện các chức năng ñiều khiển
Tín hiệu ñưa vào PLC ñược lấy từ các thiết bị như các cảm biến (sensor), công tắc Tín hiệu ñầu ra PLC có thể ñược sử dụng ñể ñiều khiển một ñối tượng (một ñộng cơ, van ) hoặc có thể là cả một quá trình (process)
Ban ñầu PLC chỉ ñơn thuần ñược thiết kế ñể thay thế cho các hệ ñiều khiển dùng Rơle, công tắc tơ ñơn thuần, tuy nhiên trong quá trình phát triển, với một ưu ñiểm lớn là có thể chỉnh sửa lại chương trình ñiều khiển tuỳ ý mà không mất nhiều công sức cũng như các chi phí, bởi vậy có thể ñược ứng dụng rất linh hoạt, PLC ngày nay
ñã phát triển và có những khả năng ñể có thể ñiều khiển các hệ ñiều khiển rất phức tạp, có thể coi PLC như một máy tính có các ñặc ñiểm sau:
− ðược thiết kế với cấu trúc ñơn giản, có thể làm việc trong môi trường công nghiệp (chịu ñược rung, tiếng ồn, nhiệt ñộ, ñộ ẩm cao)
− Các tín hiệu vào và ra ñược cách ly về ñiện với bộ ñiều khiển
− Lập trình ñơn giản, chỉ thuần tuý thực hiện các chức năng mang tính Logic
Ra ñời năm 1968 với 20 ñầu nhận tín hiệu vào ra số, ngày nay PLC ñã ñược chế tạo theo Modul ñể có thể mở rộng theo yêu cầu, có thể làm việc với một số lượng rất lớn các ñầu vào ra (số, tương tự), và có thể thực hiện cả những chức năng ñiều khiển phức tạp như luật ñiều khiển PI, PID
Tín hiệu vào
Tín hiệu ñiều khiển
ðơn vị xử lý trung tâm
ðầu ra tín hiệu
ðầu vào tín hiệu
Bộ nhớ Thiết bị lập trình
Trang 21 ðơn vị xử lý trung tâm (CPU): Bao gồm một bộ vi xử lý, có nhiệm vụ phân tích các tín hiệu vào và thực hiện công việc ñiều khiển, tuỳ theo chương trình ñiều khiển lưu trữ trong bộ nhớ, có thể truyền thông cũng như gửi tín hiệu ñến ñầu ra tương ứng
2 Nguồn nuôi là ñơn vị dùng ñể chuyển ñổi nguồn AC thành nguồn DC (5V, 24V)
ñể cung cấp co CPU và các khối vào ra
3 Thiết bị lập trình dùng ñể viết chương trình ñiều khiển và chuyển xuống PLC
4 Bộ nhớ là nơi lưu giữ chương trình ñiều khiển, chương trình ñiều khiển này sẽ ñược thực hiện bởi CPU
5 Khối vào/ra tín hiệu làm nhiệm vụ truyền nhận thông tin từ CPU với các thiết bị bên ngoài Các tín hiệu vào ra có thể là tín hiệu rời rạc, tín hiệu số, tín hiệu Analog
1.2.2 Cấu tạo PLC
Một PLC ñiển hình có cấu tạo như hình vẽ
Ta thấy cấu trúc cơ bản của một PLC bao gồm một bộ vi xử lý trung tâm CPU (Central Processing Unit), bộ nhớ (RAM, ROM), khối vào ra, khối phát xung nhịp (Clock), Pin và các hệ thống BUS
Toàn bộ hoạt ñộng của PLC ñược ñiều khiển bởi CPU, nó ñược cung cấp bởi một khối phát xung nhịp, do ñó tốc ñộ của CPU sẽ phụ thuộc vào tốc ñộ của khối phát xung nhịp (thông thường khối phát xung nhịp có tần số vào khoảng 1-8MHz), xung nhịp này cũng sẽ cung cấp cho tất cả các khối trong PLC ñể ñồng bộ hoá quá trình
Panel Lập trình
Opto cuopler
Khối vào/ra
RAM (vùng nhớ dữ liệu)
ROM CPU Xung nhịp
RAM ( vùng nhớ
chương trình) Pin
BUS ñịa chỉ BUS ñiều khiển
BUS dữ liệu
Hệ thống BUS vào ra
Tiếp ñiểm ñầu
ra Tín hiệu
vào
Tín hiệu
ra ðK
Trang 3thay ñổi ñược bởi người lập trình, tuy nhiên ñể ngăn chặn việc mất thông tin khi mất ñiện nguồn, một Pin ñược sử dụng làm nguồn nuôi cho vùng nhớ này (thông thường Pin này sẽ duy trì ñược hoạt ñộng của RAM khoảng từ 1-2 năm nếu mất ñiện nguồn) Chương trình có thể ñược lập trình bởi Panel lập trình, PC hoặc PG và từ ñó ñược nạp vào RAM Khi PLC thực hiện chương trình, CPU sẽ không lấy thông tin vào ra trực tiếp từ các ñầu vào ra mà lấy từ vùng nhớ ñệm, thông tin của các ñầu vào
ra trong vùng nhớ ñệm sẽ ñược cập nhật sau mỗi chu trình quét nhờ khối vào ra (xem thêm phần Vòng quét)
ðể bảo vệ PLC tất cả các ñầu vào ra trong PLC ñều ñược ghép cách ly, các ñầu vào thường ghép cách cách ly bằng Octocoupler, tín hiệu vào có thể là 5V hoặc 24 V
và do ñó có thể ñưa trực tiếp từ các phần tử ñầu vào (công tắc, cảm biến )
ðầu ra thường sử dụng rơ le có mức ñiện áp 24V (DC) hoặc 220 (AC), thông thường các Role này chịu ñược dòng khoảng 2A, do ñó nếu dùng PLC ñể ñiều khiển những thiết bị có dòng ñiện lớn hơn cần sử dụng các Role trung gian hoặc công tắc
tơ
Tốc ñộ ñóng mở các tiếp ñiểm của Rơle chậm, do ñó khi cần sử dụng các ñầu ra
có tốc ñộ ñóng mở nhanh cho những yêu cầu ñặc biệt (bộ phát xung tốc ñộ cao ) người ta thường sử dụng ñầu ra là Tranzitor hoặc Triac
Mạch chia áp
PL
C Tín hiệu
vào
Diode bảo vệ
Tín hiệu ñến CPU Optocoupler
ðầu ra PLC
Rơle
PLC
ðầu ra Optocoupler
Cầu chì
Trang 4đôi khi người ta có thể tắch hợp cả hai loại ựầu ra này trên cùng một PLC (vắ dụ PLC có 2 ựầu ra Tranzitor và 6 ựầu ra Rơle)
Phạm vi ựiều khiển Nhỏ và trung bình Trung bình và lớn
Rơ le thời gian
Bộ ựếm
động cơ
Công tắc tơ Van thuỷ lực, khắ nén
Bộ hiển thị
Bộ hiển thị
Bộ ựiều khiển Phần tử chấp hành
Trang 5nhỏ, trung bình, lớn 1.4 ðặc ñiểm và ứng dụng của PLC trong công nghiệp
1.4.1 ðặc ñiểm
- Cấu trúc ñơn giản với thiết kế nhỏ gọn
- Chịu ñựng ñược trong môi trờng công nghiệp (ñộ rung, ñộ ẩm, tiếng ồn cao, nhiệt ñộ cao….)
- Lập trình ñơn giản và thực hiện ñợc nhiều chức năng ñiều khiển (logic, ñiều khiển tơng tự PID, truyền thông…)
- Ngôn ngữ lập trình ñộng
1.4.2 Ứng dụng của PLC trong công nghiệp
Từ các ñặc ñiểm nêu trên, hiện nay PLC ñã ñược ứng dụng trong rất nhiều lĩnh vực khác nhau trong công nghiệp như:
- ðiều khiển hệ truyền ñộng thuỷ lực
- ðiều khiển hệ truyền ñộng khí nén
- ðiều khiển hệ truyền ñộng ñiện
- ðiều khiển nhiệt ñộ, áp suất, luư lượng
- Hệ thống nâng vận chuyển
- Dây chuyền ñóng gói
- Các ROBOT lắp giáp sản phẩm
- ðiều khiển bơm
- Dây chuyền xử lý hoá học
- Công nghệ sản xuất giấy
- Dây chuyền sản xuất thuỷ tinh
- Sản xuất xi măng
- Công nghệ chế biến thực phẩm
- Dây chuyền chế tạo linh kiện bán dẫn
- Dây chuyền lắp giáp Tivi
- ðiều khiển hệ thống ñèn giao thông
- Quản lý tự ñộng bãi ñậu xe
- Hệ thống báo ñộng
- Dây truyền may công nghiệp
- ðiều khiển thang máy
- Dây chuyền sản xuất xe Ôtô
- Sản xuất vi mạch
- Kiểm tra quá trình sản xuất
Trang 6Bài tập cơ bản số 1: Cho hệ thống cấp phôi như hình vẽ
Mô tả :
- ðiều khiển xy lanh ñẩy phôi bằng 1 van ñiện từ 5/2
- ðiều khiển xy lanh ñẩy phôi ra khỏi ổ chứa bằng nút nhấn S1
- ðiều khiển xy lanh ñi về bằng nút nhấn S2
Yêu cầu: Xây dựng sơ ñồ khối hệ thống ñiều khiển ống cấp phôi sử dụng PLC
Trang 7CHƯƠNG 2: KIỂU DỮ LIỆU VÀ CẤU TRÚC VÙNG NHỚ PLC
2.1 Hệ thống mã hiệu
Chúng ta sử dụng rất nhiều hệ ñếm, quen dùng nhất vẫn là hệ thập phân ( Hệ ñếm
cơ số 10) Tuy nhiên ngoài hệ thập phân còn có rất nhiều các hệ ñếm khác Sau ñây sẽ ñi xem xét từng hệ ñếm
2.1.1.Hệ ñếm nhị phân
- Là hệ ñếm cơ số 2
- Các con số: 0, 1
rọng số: 1, 2, 4, 8, 16…
- Biểu diễn dãy nhị phân (10011000)2
0 0 0 1 1 0 0
1 0 0 1 1 0 0 0 1
- Biến ñổi từ hệ nhị phân sang thập phân
(10011000)2 = (152)10
2.1.2 Hệ ñếm thập phân
- Là hệ ñếm cơ số 10
- Các con số: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
- Trọng số: 1, 10, 100, 1000…
- Biểu diễn hệ ñếm thập phân (152)10 = 1.100 + 5.10 + 2 - Chuyển từ hệ thập phân sang hệ nhị phân (152)10=(10011000)2 2.1.3 Hệ ñếm BCD - Là một số thập phân ñợc biểu diễn bằng một nhóm bốn bit nhị phân - Số thập phân Số BCD Số t/phân Số BCD 0 0000 5 0101
1 0001 6 0110
2 0010 7 0111
3 0011 8 1000
4 0100 9 1001
- Chuyển từ hệ ñếm thập phân sang hệ ñếm BCD
(205)10=(0010 0000 0101)BCD
2.1.4 Hệ ñếm Hexa
- Là hệ ñếm cơ số 16
- Các con số: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A , B, C , D, E , F
(Trong ñó A=10, B=11, C=12, D=13, E=14, F=15)
Trang 8- đầu vào số là ựầu vào của PLC chỉ nhận tắn hiệu ở 2 trạng thái ỘCóỢ hoặc
ỘKhôngỢ Các ựầu vào này lấy từ nút ấn
- đầu ra số là ựầu ra của PLC chỉ có 2 trạng thái ỘđóngỢ hoặc ỘMởỢ Các ựầu ra
này ựược nối cuộn dây Rơle
2.2.2 đầu vào/ra tương tự
- đầu vào tương tự là các ựầu vào của PLC nhận giá trị biến thiên liên tục, ựiển hình là 0-20mA, 0-10V
- đầu ra tương tự là các ựầu ra của PLC có tắn hiệu biến thiên liên tục, ựiển hình là
0-10V, 0-20mA
PLC
đẦU VÀO
0V
24V
24V 0V
0V
24V
NGUỒN
24VDC
Trang 92.3 Kiểu dữ liệu
- Kích thước lưu trữ dữ liệu là bit, byte, word và double word
1, Mỗi số trong hệ nhị phân biểu diễn 1 bit
2, Nhóm 8 bit gọi là 1 Byte (B)
3, Nhóm 16 bit (2 byte) gọi là 1 Word (W)
4, Nhóm 32 bit (4 byte) gọi là 1 Double Word (D)
Bit
0 1 1 0 0 0 0 1 1 1 0 1 0 1 1 1
Byte
Word
Byte4 Byte3
Byte2 Byte1
Double Word
Bit
0 1 1 0 0 0 0 1 1 1 0 1 0 1 1 1
Byte
Word
Byte4 Byte3
Byte2 Byte1
Double Word
0 1 1 0 0 0 0 1 1 1 0 1 0 1 1 1
Byte
Word
Byte4 Byte3
Byte2 Byte1
Double Word
2.3.1 Bool
- Kích thước một bít
- Lưu trữ thông tin có hai giá trị “0” và “1”
- Sử dụng lưu thông tin tín hiệu số: “0” nghĩa là không có tín hiệu và “1” nghĩa là có tín hiệu
Mức
Tín hiệu Cảm
biến mức
ðầu vào
PLC
ðiện kế
Van ñiều chỉnh lưu lượng
Trang 102.3.2 Byte
- Kích thước là 8 bít
- Thờng dùng ñể biểu diễn số nguyên dơng có giá trị trong khoảng 0 -> 255
- Ký hiệu:
B#16#14 -> Là số nguyên 14 viết theo hệ ñếm Hexa có ñộ dài 1 byte
250 -> Là số nguyên 250 viết theo hệ ñếm thập phân có ñộ dài 1 byte
2.3.3 Word
- Kích thước là 16 bít
- Thờng dùng ñể biểu diễn số nguyên dơng có giá trị trong khoảng 0 -> 65535
- Kí hiệu:
W#16#3A2 -> Là số nguyên 3A2 viết theo hệ ñếm Hexa có ñộ dài 2 byte
930 -> Là số nguyên 930 viết theo hệ ñếm thập phân có ñọ dài 2 byte
2.3.4 Số nguyên có dấu
- Quy ñịnh bít ñầu tiên là bít dấu Nếu giá trị là “0” là số nguyên dơng Nếu giá trị
là “1” là số nguyên âm
- Ví dụ biểu số nguyên có dấu 8 bít
- Quy tắc biểu diễn một số nguyên âm (ví dụ -19):
Biểu diễn 19 hệ nhị phân => (19)10 = (0001 0011)2
Bù loại 1 => (1110 1100)
Trang 11DW#16#3A2 => là số nguyên 3A2 viết theo hệ ñếm Hexa có ñộ dài 4 byte
L#930 => là số nguyên 930 viết theo hệ ñếm thập phân có ñộ dài 4 byte
- Kiểu dữ liệu: C#15 (giá trị là số nguyên dương)
2.4 Cấu trúc vùng nhớ và các phương pháp truy nhập vùng nhớ
Trang 12ACCU2
AR2 AR1
DI DB
STATUS
Thanh chứa
Thanh ghi địa chỉ
Thanh ghi khối dữ liệu
Thanh ghi trạng thái
Bộ đệm ra số Q
Bộ đệm vào số I Timer T Vùng nhớ cờ M
Counter C Khối dữ liệu DB Khối Local DI
Chương trình OB Chương trình FB Chương trình FC
ACCU1
ACCU2
AR2 AR1
DI DB
STATUS
Thanh chứa
Thanh ghi địa chỉ
Thanh ghi khối dữ liệu
Thanh ghi trạng thái
Bộ đệm ra số Q
Bộ đệm vào số I Timer T Vùng nhớ cờ M
Counter C Khối dữ liệu DB Khối Local DI
Chương trình OB Chương trình FB Chương trình FC
2.4.1.1 Vựng nhớ thanh ghi
Thanh chứa ACCU1, ACCU2
-Mọi phộp tớnh toỏn và cỏc phộp tớnh logic với mảng nhiều bớt…ủợc thực hiện trờn 2 thanh ghi này
Thanh ghi con trỏ AR1, AR2
-Sử dụng ủể truy nhập ụ nhớ ðịa chỉ của ụ nhớ ủợc ghi vào 1 trong 2 thanh ghi này
Thanh ghi chỉ khối dữ liệu DB, DI
-Sử dụng ủể truy nhập cỏc khối dữ liệu Tờn của cỏc khối dữ liệu ủợc ghi vào 1 trong 2 thanh ghi này
Thanh ghi trạng thỏi Status
- CPU sẽ ghi nhận lại trạng thỏi của phộp tớnh trung gian cũng nh của kết quả vào thanh ghi này
2.4.1.2 Vựng nhớ chương trỡnh
- Là vựng nhớ chứa chương trỡnh ứng dụng (do người lập trỡnh viết)
- Vựng nhớ ủược thiết lập khi chương trỡnh ủợc ủổ từ thiết bị lập trỡnh (PC, PG) vào modul CPU
- Vựng nhớ ủược chia thành 3 miền:
• OB: Miền chứa chương trỡnh tổ chức
• FC: Miền chứa chương trỡnh con ủược tổ chức thành hàm
• FB: Miền chứa chương trỡnh con ủược tổ chức thành hàm và cú khối dữ liệu DB
Trang 131, Các bit (từ bít 0 ñến 7)
2, Các byte (từ byte 0 ñến byte cuối cùng)
- Ví dụ cấu trúc vùng nhớ I (Vùng nhớ ñầu vào số)
7 6 5 4 3 2 1 0 BitIB0
IB1IB2IB3IB4IB5IB6IB7
Byte 7 6 5 4 3 2 1 0 BitIB0
IB1IB2IB3IB4IB5IB6IB7Byte
1 ðịa chỉ vùng nhớ các ñầu vào ( I )
ðể lấy giá trị các ñầu vào ta có thể ta có thể truy nhập vào các ñịa chỉ thuộc vùng nhớ vào (Input) theo kiểu bit, byte, word, double word
Kiểu: Bit I[ñịa chỉ byte].[ñịa chỉ bit] I0.1
Byte, word, Double word I[kích thước][ñịa chỉ byte ñầu tiên] IB4,IW1,ID2
Trên thực tế thì khi bắt ñầu mỗi vòng quét PLC sẽ ñọc các giá trị ñầu vào (ñóng-mở) và
sẽ ghi vào các bit tương ứng các giá trị (0-1) Ví dụ: nếu ñầu vào I0.1 ñóng thì bit nhớ I0.1 có giá trị 1, tương ứng tiếp ñiểm I0.1 trong chương trình của ta sẽ ñóng
2 ðịa chỉ vùng nhớ các ñầu ra ( Q )
Tương tự như các ñầu vào ở các ta cũng có thể truy nhập các bit nhớ thuộc vùng nhớ ñầu ra (Output) ñể lấy các giá trị của các ñầu ra này theo các kiểu bit, byte, word, double word
Kiểu: Bit Q[ñịa chỉ byte].[ñịa chỉ bit] Q1.1
Byte, word, Double word Q[kích thước][ñịa chỉ byte ñầu tiên] QB3,QW2,QD4
Kết thúc mỗi vòng quét PLC sẽ chuyển các giá trị ở ô nhớ thuộc vùng nhớ (Q) ñến các
ñầu ra tương ứng, như vậy nếu một ñịa chỉ nào ñó ở vùng nhớ (Q) có giá trị là 1 thì ñầu
ra tương ứng sẽ ñóng Ví dụ: néu ñịa chỉ Q0.1có giá trị 1thì ñầu ra Q0.1 ñóng
3 ðịa chỉ vùng nhớ (M)
Các ô nhớ thuộc vùng nhớ (M) dùng ñể lưu trữ trạng thái của quá trình hoạt ñộng hoặc các thông tin ñiều khiển khác Ta không những có thể truy nhập vào vùng nhớ này theo kiểu bit mà còn theo kiểu byte, word, double word
Kiểu: Bit M[ñịa chỉ byte].[ñịa chỉ bit] M10.1
Byte,word,Double word M[kích thước][ñịa chỉ byte ñầu tiên] MB20,MW8,MD6
Trang 14Giá trị ñếm thời gian hiện tại bởi bộ Timer: ðây là giá trị lưu giữu trong 16 bit Giá trị bit Timer: ðây là giá trị ñược lưu trong một bit nhớ (như một tiếp ñiểm) nó
có thể bằng “1” hoặc „0“ ( tuỳ thuộc vào loại Timer ta chọn) khi giá trị ñếm hiện tại bởi
bộ ñếm Timer lớn hơn hoặc bằng giá trị ñặt (giá trị ñặt ñược vào bởi người lập chương trình khi sử dụng bộ Timer)
Tuỳ theo từng cấu trúc lệnh ta dùng kết hợp với ñịa chỉ các bộ Timer, ta có thể lấy các giá trị tương ứng Ví dụ
5 ðịa chỉ vùng nhớ Counter (C)
Trong CPU S7-300, bộ Counter là bộ ñếm các xung (các xung này ñặt ở ñầu vào
bộ Counter) Có ba loại bộ ñếm: bộ ñếm thuận (là bộ ñếm chỉ ñếm theo chiều tăng), bộ ñếm nghịch (chỉ ñếm theo chiều giảm) và bộ ñếm thuận nghịch (ñếm theo cả hai chiều tăng và giảm) Khi truy nhập vào ñịa chỉ vùng nhớ Counter ta cũng có thể lấy hai giá trị
Giá trị ñếm hiện tại: ðây là giá trị kiểu BCD chứa trong 12 bit
Giá trị bit Counter: ðây là bit có giá trị bằng “1” khi giá trị ñếm hiện tại lớn hơn 0
ðể lấy một trong hai giá trị trên ñều sử dụng phương thức gọi ñịa chỉ như sau:
C[số thứ tự bộ counter] C1
Ta có thể lấy giá trị ñếm hiện tại hay giá trị bit counter tuỳ theo cấu trúc lệnh dùng kết hợp Ví dụ:
Trang 156 ðịa chỉ vùng nhớ các ñầu vàoAnalog ( PI )
CPU S7-300 có thể chuyển ñổi một giá trị analog (ñiện áp, dòng ñiện, nhiệt ñộ) ở ñầu vào Analog thành giá trị digital 8÷16bit (phụ thuộc vào loại Modul sử dụng) lưu trong các ô nhớ của vùng nhớ ñịa chỉ các ñầu vào Analog Ta có thể truy nhập
lấy các giá trị này theo kiểu Byte,word,Double word:
PI[kích thước][ñịa chỉ byte ñầu tiên] PIB20,PIW8,PID6
Vì các giá trị ở ñầu vào Analog ñược chuyển ñổi và lưu trong 2 byte do ñó các ñịa chỉ byte ñầu tiên luôn là một số chẵn (0,2,4,6 )
MSB LSB
PIW4
Ví dụ: PIW 4 ðịa chỉ byte
Kiểu truy nhập (W) Tên vùng nhớ (vùng nhớ PI) byte4 byte5
Trang 167 ðịa chỉ vùng nhớ các ñầu ra Analog ( PQ )
PLC S7-300 chuyển một giá trị kiểu Digital 8÷16bit lưu trong vùng nhớ PQ thành dòng ñiện hoặc ñiện áp ñưa ra các ñầu ra Analog Ta có thể ghi các giá trị vào vùng nhớ này bằng cách sử dụng ñịa chỉ như sau
PQ[kích thước][ñịa chỉ byte ñầu tiên] PQB20,PQW8,PQD6
Các tín hiệu vào/ra từ các ñầu vào ra của PLC sẽ ñược lưu giữ trong các vùng nhớ ðể
xử lý các tín hiệu này ta truy nhập vào các ñịa chỉ ñể lấy các giá trị của chúng Sau ñây
sẽ trình bày cách truy nhập cho PLC Siemens
PLC lưu giữ thông tin trong bộ nhớ Bộ nhớ của PLC ñược chia thành nhiều vùng (
I, Q, M, V, T, C, ), mỗi vùng nhớ ñều có ñịa chỉ xác ñịnh Ta có thể truy nhập (ghi hoặc ñọc thông tin) vào các ô nhớ trong các vùng bằng ñịa chỉ của chúng Có 2 cách truy nhập : truy nhập theo từng bit và truy nhập theo byte
2.4.2 Các phương pháp truy nhập vùng nhớ
1 Phương pháp truy nhập theo bit
ðể truy nhập theo từng Bit, ta phải ghi ñịa chỉ bao gồm : ðịa chỉ vùng nhớ, ñịa
chỉ byte, ñịa chỉ bit (ngăn cách giữa ñịa chỉ byte và ñịa chỉ bit là dấu ''.'')
Như vậy thông tin của ñầu vào I3.4 sẽ ñược lưu giữ trong ô nhớ có ñịa chỉ I3.4 Truy nhập vào ô nhớ này ta sẽ biết ñược thông tin ñầu vào I3.4
MSB LSB
PQW2
Ví dụ: PQ W 2 ðịa chỉ byte
Kiểu truy nhập (Word) Tên vùng nhớ (vùng nhớ PQ) byte2 byte3
MSB LSB
7 6 5 4 3 2 1 0 Ví dụ: I 3 4
Số thứ tự Bit trong byte: Bit thứ 5 (0 ñến 7)
Ngăn cách giữa ñịa chỉ byte và ñịa chỉ bit
ðịa chỉ byte: byte 3 (byte thứ 4) Tên vùng nhớ: I = vùng nhớ vào
MSB: most significant bit
LSB: least significant bit
Trang 17- Toàn bộ chương trình ñiều khiển nằm trong khối OB1
- Khối OB1 luôn ñợc PLC quét và thực hiện các câu lệnh (từ câu lệnh ñầu tiên ñến câu lệnh cuối cùng)
- Phù hợp với bài toán ñiều khiển nhỏ, không phức tạp
MB100 MB100:
Ví dụ: M B 100 ðịa chỉ byte
Kiểu truy nhập (byte)
Tên vùng nhớ (vùng nhớ V)
MB100 MB101 MW100:
Ví dụ: M W 100 ðịa chỉ byte
Kiểu truy nhập (word)
Tên vùng nhớ (vùng nhớ V)
MB100 MB101 MD100:
Ví dụ: M D 100 ðịa chỉ byte
Kiểu truy nhập (doubleword)
Tên vùng nhớ (vùng nhớ V)
MB102 MB103
0
Trang 18LÖnh 1 LÖnh 2
……
LÖnh n
OB1
LÖnh 1 LÖnh 2
……
LÖnh n
LÖnh 1 LÖnh 2
……
LÖnh n
OB1
2.5.2 Lập trình có cấu trúc:
- Chương trình ñiều khiển trong khối chơng trình:
1, Khối OB: khối chơng trình chính
2, Khối FC: khối chơng trình con, không có khối dữ liệu DB dữ liệu riêng
3, Khối FB: khối chơng trình con, có khối dữ liệu DB riêng
2.6.Vòng quét của chương trình:
SPS (PLC) thực hiện các công việc (bao gồm cả chương trình ñiều khiển) theo chu trình lặp Mỗi vòng lặp ñược gọi là một vòng quét (scancycle) Mỗi vòng quét ñược bắt ñầu bằng việc chuyển dữ liệu từ các cổng vào số tới vùng bộ ñệm ảo I, 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 từ
Trang 19Chú ý : Bộ ñệm I và Q không liên quan tới các cổng vào/ra tương tự nên các lệnh
truy nhập cổng tương tự ñược thực hiện trực tiếp với cổng vật lý chứ không thông qua
bộ ñệm
Thời gian cần thiết ñể cho PLC thực hiện ñược một vòng quét ñược 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 trong một khoảng thời gian như nhau Có vòng quét ñược thực hiện lâu, có vòng quét ñược thực hiện nhanh tuỳ 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 truyền thông Trong vòng quét ñó
Như vậy giữa việc ñọc dữ liệu từ ñối tượng ñể xử 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 Nói cách khác, thời gian vòng quét quyết ñịnh tính thời gian thực của chương trình ñiều khiển trong PLC 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 ñặc biệt có chế ñộ ngắt, ví dụ khối 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ín hiệu báo ngắt cùng chủng loại Các khối chương trình này có thể thực hiện tại mọi vòng quét chứ không phải bị gò ép là phải ở trong giai ñoạn thực hiện chương trình Chẳng hạn một tín hiệu báo ngẵt xuất hiện khi PLC ñang ở giai ñoạn truyền thông và kiểm tra nội bộ, PLC sẽ tạm dừng công việc truyền thông, kiểm tra, ñể thực hiện ngắt như vậy, thời gian vòng quét sẽ càng lớn khi càng có nhiều tín hiệu ngắt xuất hiện trong vòng quét Do ñó ñể nâng cao tính thời gian thực cho chương trình ñiều khiển, tuyệt ñối không nên viết chương trình xử lý ngắt quá dài hoặc quá lạm dụng việc sử dụng chế ñộ ngắt trong chương trình ñiều khiển
Tại thời ñiểm thực hiện lệnh 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ộ nhớ ñệm 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 giai ñoạn 1 và 3 do hệ ñiều hành CPU
Trang 20quản lý ở một số modul CPU, khi gặp lệnh vào/ra ngay lập tức 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 với cổng vào/ra
Chương 3: NGÔN NGỮ LẬP TRÌNH
Chương này nhằm trang bị cho người học khả năng:
- Mô tả ñược các loại mô ñun trong hệ thống ñiều khiển PLC
- Thiết kế ñược phần cứng hệ thống ñiều khiển PLC
- Làm việc với cataloge ñể lựa chọn thiết bị và ñặt hàng
- Cài ñặt phần mềm, thiết lập cấu hình CPU và các mô ñun
3.1 CÁC LOẠI MÔ ðUN CỦA PLC
Thông thường, ñể tăng tính mềm dẻo trong ứng dụng thực tế mà ở ñó phần lớn các ñối tượng ñiều khiển có số tín hiệu ñầu vào, ñầu ra cũng như chủng loại tín hiệu vào/ra khác nhau mà các bộ ñiều khiển PLC ñược thiết kế không bị cứng hoá về cấu hình Chúng ñược chia nhỏ thành các modul Số các Modul ñược sử dụng nhiều hay ít tuỳ theo từng yêu cầu công nghệ, song tối thiểu bao giờ cũng phải có một Modul chính là các modul CPU, các modul còn lại là các modul truyền nhận tín hiệu ñối với ñối tượng ñiều khiển, các modul chức năng chuyên dụng như PID, ñiều khiển ñộng cơ, Chúng ñược gọi chung là Modul mở rộng Tất cả các modul ñược gá trên những thanh ray
(RACK)
- Modul CPU: Là modul có chứa bộ vi xử lý, hệ ñiều hành, bộ nhớ, các bộ thời gian, bộ
ñếm, cổng truyền thông (chuẩn tryền RS485) và có thể còn có một vài cổng vào ra số
(Digital) Các cổng vào ra có trên modul CPU ñược gọi là cổng vào ra onboard
Trong PLC S7-300 có nhiều loại modul CPU khác nhau Nói chung chúng ñược ñặt tên theo bộ vi xử lý có trong nó như: CPU312, modul CPU 314, Modul CPU 315, Những
modul cùng sử dụng một loại bộ vi xử lý, nhưng khác nhau về cổng vào/ra onboard
cũng như các khối làm việc ñặc biết ñược tích hợp sẵn trong thư viện của hệ ñiều hành
phục vụ việc sử dụng các cổng vào/ra onboard này sẽ ñược phân biệt với nhau trong tên
gọi bằng cách thêm cụm chữ cái IFM (Intergated Function Module) ví dụ CPU 312IM, modul CPU 314 IFM Ngoài ra có các loại modul CPU với hai cổng truyền thông, trong
ñó cổng truyền thông thứ hai có chức năng chính là việc phục vụ nối mạng phân tán Tất
Trang 21a) DI(Digital input): Modul mở rộng cổng vào số Số các cổng vào của modul này
có thể là 8, 16, 32 tuỳ thuộc vào từng loại modul
b) DO(Digital output) Modul mở rộng cổng ra số Số các cổng ra của modul này có
thể là 8, 16, 32 tuỳ thuộc vào từng loại modul
c) DI/DO: (Digital input/ Digital output): modul mở rổng các cổng vào/ra số số các
cổng vào/ra có thể là 8 vào/8 ra hoặc 16 vào/16 ra tuỳ thuộc vào từng loại modul d) AI(Analog Input): Modul mở rổng các cổng vào tương tự Về bản chất chúng
chính là những bộ chuyển ñổi tương tự-số (AD), tức là mỗi tín hiệu tương tự ñược chuyển thành một tín hiệu số (nguyên ) có ñộ dài 12 bít, số các cổng vào có thể là 2, 4 hoặc 8 tuỳ thuộc vào từng loại Modul
e) AO(Analog ouput): Modul mở rộng các cổng ra tín hiệu tương tự Chúng chính là
các bộ chuyển ñổi số - tương tự (DA) Số các cổng ra tương tự có thể là 2 hoặc 4 tuỳ thuộc từng loại modul
f) AI/AO (Analog input/Analog output): Modul mở rộng các cổng vào ra tương tự
Số các cổng có thể là 4 vào/2 ra hoặc 4 vào/4 ra tuỳ thuộc vào tùng loại modul
3/ IM (Interface module): Modul ghép nối ðây là loại modul chuyên dụng có nhiệm vụ
nối từng nhóm các modul mở rộng lại với nhau thành một khối và ñược quản lý chung bới một modul CPU Thông thường các modul mở rộng ñược gá liền với nhau trên một thanh ñỡ gọi là Rack Trên mỗi một Rack chỉ có thể gá ñược nhiều nhất 8 modul mở rộng (không kể modul CPU, Modul nguồn nuôi) Một modul PU S7-300 có thể làm việc trực tiếp ñược với nhiều nhất 4 RACKS và các Racks này phải ñược nối với nhau bằng modul IM
4/ FM (Function modul): modul có chức năng ñiều khiển riêng , ví dụ Modul chức năng
ñiều khiển ñộng cơ bước , modul ñiều khiển ñộng cơ Servo, modul PID, modul ñiều khiển vòng kín
5/ CP (communication modul): Modul phục vụ truyền thông trong mạng giữa các PLC
với nhau hoặc giữa PLC với máy tính
3.2 PHẦN MỀM LẬP TRÌNH SIMATIC MANAGER
Muốn xây dựng một chương trình ñiều khiển sử dụng phần mềm Step7 cần thực hiện các thủ tục như sau:
- Khai báo cấu hình cứng cho một trạm PLC thuộc họ Simatic S7-300/400
- Xây dựng cấu hình mạng gồm nhiều trạm PLC S7-300/400 cũng như thủ tục truyền thông giữa chúng
- Soạn thảo và cài ñặt chương trình ñiều khiển cho 1 hoặc nhiều trạm
Trang 22- Giám sát việc thực hiện chương trình ñiều khiển trong một trạm PLC và gỡ rối chương trình
Ngoài ra Step 7 còn có cả một thư viện ñầy ñủ với các hàm chuẩn hữu ích, phần trợ giúp Online rất mạnh có khả năng trả lời mọi câu hỏi của người sử dụng về cách sử dụng Step 7, về cú pháp lệnh trong lập trình, về xây dựng cấu hình cứng của một trạm cũng như của một mạng gồm nhiều trạm PLC
3.2.1 Cài ñặt Step7:
3.2.1.1Tổng quát về Step 7
Tại việt nam hiện có rất nhiều phiên bản của bộ phần mềm gốc của Step7 ðang ñược sử dụng nhiều nhất là phiên bản (version) 4.2, 5.0 và 5.1 Trong khi phiên bản 4.2 khá phù hợp cho những PC có cấu hình trung bình (CPU 80586, 90MB còn trống trong
ổ cứng, màn hình VGA) nhưng lại ñòi hỏi tuyệt ñối có bản quyền Trong khi phiên bản 5.0 và 5.1 mặc dù ñòi hỏi máy tính có cấu hình mạnh nhưng lại không ñòi hỏi bản quyền một cách tuyệt ñối, nghĩa là phiên bản này vẫn làm việc ở một mức hạn chế khi không
có bản quyền Phần lớn các ñĩa gốc của Step7 ñều có khả năng tự cài ñặt chương trình (autorun) Bởi vậy chỉ cần cho ñĩa vào ổ CD và thực hiện theo ñúng chỉ dẫn hiện trên màn hình Ta có thể chủ ñộng thực hiện việc cài ñặt bằng cách gọi chương trình
Setup.exe có trên ñĩa Công việc cài ñặt, về cơ bản không khác nhiều so với việc cài ñặt các phần mềm ứng dụng khác, tức là cũng bắt ñầu bằng việc chọn ngôn ngữ cài ñặt (mặc ñịnh là tiếng Anh), chọn thư mục ñặt trên ổ cứng (mặc ñịnh là C:\simens), kiểm tra dung tích còn lại trên ổ cứng, chọn ngôn ngữ sẽ ñược sử dụng trong quá trình làm việc với Step7 sau này
Một số vấn ñề cần giải thích rõ thêm khi cài ñặt phần mềm Step7:(cuốn tài liệu này hướng dẫn các bạn cài ñặt bằng ngôn ngữ tiếng Anh) nhưng về cơ bản cài ñặt bằng tiếng ðức cũng không có nhiều ñiều khác biệt
3.2.1.2 Khai báo mã hiệu sản phẩm:
Mã hiệu sản phẩm luôn ñi kèm với sản phẩm và ñược in ngay trên ñĩa chứa bộ cài
Step7 Khi trên màn hình xuất hiện cửa sổ yêu cầu cho biết mã hiệu sản phẩm, ta phải ñiền ñầy ñủ vào tất cả các thư mục của cửa sổ ñó, kể cả ñịa chỉ người sử dụng sau ñó ấn
continue ñể tiếp tục
Trang 233.2.1.3.Chuyển bản quyền:
Bản quyền Step7 nằm trên một ñĩa mềm riêng (thường có mầu vàng hoặc mầu ñỏ) Trong quá trình cài ñặt, trên màn hình sẽ xuất hiện yêu cầu chuyển bản quyền sang ổ ñích (mặc ñịnh là C:\ ) có dạng như sau:
Ta có thể chuyển bản quyền sang ổ ñĩa C:\ ngay trong khi cài ñặt Step7 bằng cách cho ñĩa bản quyền vào ổ ñĩa A: rồi ấn phím Authorize Ta cũng có thể bỏ qua và sẽ chuyển bản quyền sau vào lúc khác bằng cách ấn phím Skip Trong trường hợp bỏ qua thì sau này, lúc chuyển bản quyền, ta phải sử dụng chương trình truyền bản quyền có tên là AuthorsW.EXE cũng có trên ñĩa bản quyền (Ver.4.2) hoặc có cùng trong ñĩa CD với phần mềm gốc Step7 (ver5.1)
Chú ý ñĩa mềm chứa bản quyền (Author disk) ñã ñược bảo vệ cấm sao chép Cho dù bản quyền ñã ñược chuyển từ ñĩa mềm sang ổ cứng và trên ñĩa mềm không còn bản quyền, nhưng nó vẫn là một ñĩa ñặc biệt có chỗ chứa bản quyền Bản quyền khi sao chép sang ổ ñĩa cứng sẽ nằm trong thư mục Ax nf zz Nếu thư mục này bị hỏng, ta sẽ mất bản quyền Bởi vậy mỗi khi muốn cài ñặt lại hệ thống hay dọn dẹp lại ổ ñĩa cứng thì
Trang 24trước ñó ta phải thực hiện rút bản quyền khỏi ổ ñĩa C: và chuyển ngược về ổ ñĩa mềm Author cũng bằng chương trình AuthorsW.EXE
Trang 253.2.1.4 Khai báo thiết bị ñốt EPROM:
Chương trình step7 có khả năng ñốt chương trình ứng dụng lên thẻ EPROM cho PLC Nếu máy tính PC của ta có thiết bị ñốt EPROM thì cần phải thông báo cho Step7 biết khi trên màn hình xuất hiện cửa sổ:
3.2.1.5 Chọn giao diện cho PLC:
Chương trình Step7 ñược cài ñặt trên PC (máy tính cá nhân) hoặc PG (lập trình bằng tay) ñể hỗ trợ việc soạn thảo cấu hình cứng cũng như chương trình cho PLC, tức là sau
ñó toàn bộ những gì ñã soạn thảo sẽ ñược dịch sang PLC Không những thế, Step7 còn
có khả năng quan sát việc thực hiện chương trình của PLC Muốn như vậy ta cần phải
có bộ giao diện ghép nối giữa PC với PLC ñể truyền thông tin, dữ liệu
Step7 có thể ghép nối với PLC bằng nhiều bộ phương thức ghép nối khác nhau như qua Card MPI, qua bộ chyển ñổi PC/PPI, qua thẻ PROFIBUS (CP) nhưng chúng phải ñược khai báo sử dụng
Ngay sau khi Step7 ñược cài ñặt xong, trên màn hình xuật hiện cửa sổ thông báo cho
ta chọn các bộ giao diện sẽ ñược sử dụng Cửa sổ này có dạng sau (hìnhvẽ 3-4):
Muốn chọn bộ giao diện nào, ta ñánh dấu bộ giao diện ñó ở phía trái rồi ấn phím Install Những bộ giao diện ñã ñược chọn sẽ ñược ghi vào ô bên phải Sau khi chọn xong các bộ giao diện sử dụng, ta còn phải ñặt tham số làm việc cho những bộ giao diện
ñó bao gồm tốc ñộ truyền , cổng ghép nối với máy tính Chẳng hạn khi ñã chọn bộ giao diện MPI -ISA Card ta phải ñăt tham số làm việc cho nó thông qua cửa sổ màn hình
Trang 263.2.2 ðặt tham số làm việc:
Sau khi cài ñặt xong Step7, trên màn hình (Destop) sẽ xuất hiện biểu tượng icon của
nó ðồng thời trong Menu của Window cũng có thư mục Simatic với tất cả các tên của
những thành phần liên quan, từ các phần mềm trợ giúp ñến các phần mềm cài ñặt cấu hình, chế ñộ làm việc của Step7
Khi vừa ñược cài ñặt, step7 có cấu hình mặc ñịnh về chế ñộ làm việc của Simatic,
chẳng hạn cú pháp các lệnh lại ñược viết theo tiếng ðức ví dụ như AND thì viết thành UND, muốn chuyển thành dạng thông dụng quốc tế ta phải cài ñặt lại cấu hình cho Step7
Tất nhiên, bên cạnh việc chọn ngôn ngữ cho cú pháp lệnh ta còn có thể sửa ñổi nhiều chức năng khác của Step 7 như nơi sẽ chứa chương trình trên ñĩa cứng, những thanh ghi
sẽ ñược hiển thị nội dung khi gỡ rối chương trình, song các việc ñó không ảnh hưởng quyết ñịnh tới việc sử dụng Step7 theo thói quen của ta như ngôn ngữ cú pháp lệnh
Trang 27Chương 4: NGÔN NGỮ LẬP TRÌNH
Chương này nhằm trang bị cho người học khả năng:
- Trình bày ñược chức năng các câu lệnh trong ngôn ngữ lập trình PLC S7-300 như các câu lệnh tiếp ñiểm, so sánh, chuyển dữ liệu, bộ thời gian, bộ ñếm
- Viết ñược chương trình ñiều khiển sử dụng phần mềm SIMATIC Manager Lập tài liệu cho chương trình ñã viết
- Ứng dụng kiến thức ñã học ñể giải quyết các bài toán công nghệ ñơn giản
- Viết chương trình PLC: Từ yêu cầu hoạt ñộng khi ấn ñồng thời 2 nút ấn S1 và S2 thì ñèn ð sẽ sáng tương ứng với việc ta phải viết chương trình thực hiện hàm AND 2 tín hiệu logic ñầu vào là I0.0 và I0.1 và ñầu ra là tín hiệu logic Q0.0
3 Giới thiệu chương trình PLC
PLC cung cấp 3 loại ngôn ngữ FBD, LAD và STL ñể viết chương trình ñiều khiển trên
Ngôn ngữ LAD
Trang 28Ngôn ngữ FBD
Ngôn ngữ STL
4.1.2 Nhận xét
1 ðặc ñiểm ngôn ngữ LAD
- Gọi là ngôn ngữ giản ñồ hình thang Có các ký hiệu giống các ký hiệu trong kỹ thuật ñiện (tiếp ñiểm, cuộn dây, rơle…)
- Ngôn ngữ này phù hợp với ñối tượng quen sử dụng và thiết kế các mạch ñiều khiển logic
- Ngôn ngữ này phù hợp với ñối tượng có kỹ năng lập trình tốt
4 ðặc ñiểm chung ba ngôn ngữ
- Một chương trình có thể chia thành nhiều Netword khác nhau:
Trang 304.1.3 Một số khái niệm cơ bản
1 Tiếp ñiểm
- Chương trình trong PLC sử dụng ký hiệu tiếp ñiểm, mỗi tiếp ñiểm có một bit ñịa chỉ
ñi kèm Có loại tiếp ñiểm thường mở và tiếp ñiểm thường ñóng
- Tiếp ñiểm thường mở sẽ ñóng khi bit ñịa chỉ của tiếp ñiểm có giá trị logíc bằng “1”
và mở khi bít ñịa chỉ của tiếp ñiểm có giá trị logic bằng “0”
- Tiếp ñiểm thường ñóng sẽ mở khi bit ñịa chỉ của tiếp ñiểm có giá trị logic bằng “1”
và ñóng khi bit ñịa chỉ của tiếp ñiểm có giá trị logic bằng “0”
Tiếp ñiểm thường mở (ngôn ngữ LAD) Tiếp ñiểm thường ñóng (ngôn ngữ LAD)
2 Cuộn dây
- Chương trình trong PLC sử dụng ký hiệu cuộn dây, mỗi cuộn dây có một bit ñịa chỉ
ñi kèm
Cuộn dây (ngôn ngữ LAD)
- Cuộn dây sẽ ñược kích hoạt khi mạch phía trước cuộn dây kín, khi ñó bit ñịa chỉ của cuộn dây có giá trị logic bằng “1”
- Cuộn dây sẽ không ñược kích hoạt khi mạch phía trước cuộn dây hở, khi ñó bit ñịa chỉ của cuộn dây có giá trị logic bằng “0”
- Ta cũng có thể sử dụng các bit ñịa chỉ của cuộn dây tại các vị trí khác trong chương trình
Trang 31- Chương trình trong PLC các câu lệnh có dạng “tên lệnh” + “toán hạng” Trong ñó:
“tên lệnh” ñược viết ở một trong ba ngôn ngữ LAD, FBD, STL và “toán hạng” có thể là một dữ liệu hoặc một ñịa chỉ ô nhớ
Toán hạng
là dữ liệu
Toán hạng
là ñịa chỉ
- Toán hạng là dữ liệu có một số dạng sau:
Logic “True” hoặc “Flase”
Số nhị phân (2#giá trị nhị phân) 2#110011 //số nhị phân 110011
Số nguyên dương x (dạng hexadecimal) có
ñộ dài 1 byte (B#16#x), 2 byte (W#16#x), 4
byte (DW#16#x)
B#16#3A W#16#3A3B DW#16#3A3B3C3D
Số nguyên x có ñộ dài 2 byte cho biến kiểu
INT
930 -1025
Trang 32Số nguyên x có ñộ dài 4 byte cho biến kiểu
DINT (L#x)
L#930 L#-2047
Số thực x cho biến kiểu REAL 1.234567e+13
930.0 Thời gian cho biến kiểu S5T dạng
Trang 33lệnh” sử dụng
PIB Chỉ ô nhớ PI và kích thước là 1 byte
PIW Chỉ ô nhớ PI và kích thước là 2 byte
PID Chỉ ô nhớ PI và kích thước là 4 byte
DBx.DBB Chỉ trực tiếp ô nhớ DBx có kích thước 1 byte (x là chỉ số khối DB)
DBx.DBW Chỉ trực tiếp ô nhớ DBx có kích thước 2 byte (x là chỉ số khối DB)
DBx.DBD Chỉ trực tiếp ô nhớ DBx có kích thước 4 byte (x là chỉ số khối DB)
DIX Chỉ ô nhớ DB có kích thước 1 bit và ñược mở bằng câu lệnh OPN DI DIB Chỉ ô nhớ DB có kích thước 1 byte và ñược mở bằng câu lệnh OPN DI DIW Chỉ ô nhớ DB có kích thước 2 byte và ñược mở bằng câu lệnh OPN DI DID Chỉ ô nhớ DB có kích thước 4 byte và ñược mở bằng câu lệnh OPN DI
L Chỉ ô nhớ L (dữ liệu ñịa phương của OB, FC, FB) và kích thước là 1 bit
LB Chỉ ô nhớ L (dữ liệu ñịa phương của OB, FC, FB)và kích thước là 1 byte
LW Chỉ ô nhớ L (dữ liệu ñịa phương của OB, FC, FB)và kích thước là 2 byte
LD Chỉ ô nhớ L (dữ liệu ñịa phương của OB, FC, FB)và kích thước là 4 byte
Phần số: là chỉ ñịa chỉ của byte hoặc bit trong miền nhớ xác ñịnh
- Nếu ô nhớ ñã ñược xác ñịnh thông qua phần chữ là có kích thước là 1 bit thì phần số sẽ bao gồm ñịa chỉ byte và số thứ tự của bit trong byte ñó và ñược tách ra bằng dấu chấm
Ví dụ I1.3// chỉ bít thứ 3 trong byte 1 của vùng nhớ I
- Nếu ô nhớ ñã ñược xác ñịnh thông qua phần chữ là có kích thước là 1 byte, 2 byte hoặc
4 byte thì phần số sẽ bao gồm ñịa chỉ byte ñầu tiên trong mảng byte của ô nhớ ñó
Ví dụ IW3// chỉ byte thứ 3 và thứ 4 của vùng nhớ I
4.2 CÁC CÂU LỆNH TIẾP ðIỂM
4.2.1 Lệnh gán (Assigment)
- Toán hạng là dữ liệu kiểu BOOL hay ñịa chỉ bit (I, Q, M, T, C, D, L)
- Cấu trúc câu lệnh:
Trang 360 1 1
Bài tập 1
Lập trình ñiều khiển khởi ñộng ñộng cơ không ñồng bộ
ba pha yêu cầu:
- Khởi ñộng ñộng cơ bằng nút ấn ON
B1
B2
B3
S1 S2 S3 S4
S1 S2 S3 S4
U1 V1 W1 M F2
K1
PE
L1 L2 L3 N PE
2 4 6
8 10 12 ON(AP2)
Trang 37- Giản ñồ thời gian:
- Tín hiệu ra Q4.0 = “1” (Q4.0 sẽ ñược thiết lập ) khi I0.0 =1
4.2.7 Lệnh RESET
- Toán hạng là ñịa chỉ bit I, Q, M, T, C, D, L
- Cấu trúc câu lệnh:
- Giản ñồ thời gian:
- Tín hiệu ra Q4.0 = “0” (Q4.0 sẽ ñược xóa ) khi I0.0 =1
Trang 38- Nguyên lý hoạt ñộng:
Khi I0.0 = “1” và I0.1 =”0” thì Set cho M0.0 và ñầu ra Q4.0 là “1”
Khi I0.0 = “0” và I0.1 =”1” thì ReSet cho M0.0 và ñầu ra Q4.0 là “0”
Khi I0.0 = “1” và I0.1 =”1” thì M0.0 và ñầu ra Q4.0 có giá trị là “0” Gọi bộ SR
ưu tiên chân ReSet
Khi I0.0 = “1” và I0.1 =”0” thì ReSet cho M0.0 và ñầu ra Q4.0 là “0”
Khi I0.0 = “0” và I0.1 =”1” thì Set cho M0.0 và ñầu ra Q4.0 là “1”
Khi I0.0 = “1” và I0.1 =”1” thì M0.0 và ñầu ra Q4.0 có giá trị là “1” Gọi bộ RS
ưu tiên chân Set
Trang 39- Nếu có sườn dương (chuyển giá trị logic từ “0” lên “1”) của tín hiệu I0.0 = “1” thì tín hiệu ra Q4.0 có giá trị “1” chỉ trong một vòng quét
4.2.11 Lệnh Negative
- Toán hạng là ñịa chỉ bit I, Q, M, T, C, D, L
- Cấu trúc câu lệnh:
- Giản ñồ thời gian:
- Nếu có sườn âm (chuyển giá trị logic từ “1” về “0”) của tín hiệu I0.0 = “1” thì tín hiệu ra Q4.0 có giá trị “1” chỉ trong một vòng quét
Bài tập 1
Lập trình ñiều khiển ñộng cơ KðB ba pha Rôto
lồng sóc ñảo chiều gián tiếp yêu cầu sau:
- Khởi ñộng ñộng cơ quay thuận bằng nút ấn T,
khởi ñộng ñộng cơ quay ngược bằng nút ấn N
- Dừng ñộng cơ bằng nút ấn D
- Có bảo vệ quá tải bằng tiếp ñiểm thường ñóng
Relay nhiệt
1 scan I0.0
Q4.0
I0.0
1 scan Q4.0
U1 W1
F 2
K1
P E
AP2
L 1 L 2 L
3NPE
K2
2 4 6
8 1
0 12
V1
Trang 40Bài tập 2
Sử dụng PLC S7-300 ñiều khiển hệ thống gồm ba bơm P1, P2, P3 Các bơm ñược khởi ñộng bằng nút nhấn Start theo thứ tự: Nhấn nút Start lần thứ nhất khởi ñộng bơm P1, lần thứ hai khởi ñộng bơm P2, lần thứ 3 khởi ñộng bơm P3 Các bơm ñược dừng
ñồng thời khi nút nhấn Stop (hình vẽ) Hãy viết chương trình ñiều khiển cho PLC trên
xung1 xung2 xung3
#Start
#Bơm_1
#Bơm_2
#Bơm_3
4.3 CÁC CÂU LỆNH SO SÁNH VÀ CHUYỂN DỮ LIỆU
4.3.1 Câu lệnh chuyển dữ liệu
Khi tín hiệu I0.0 = “0” tín hiệu ñầu ra Q4.0 = “0”
#Stop