a Hệ điều hành Chứa chương trình hệ thống dùng để xác định các cách thức thực hiệnchương trình của người sử dụng, quản lý các đầu vào ra, phân chia bộ nhớRAM trong và quản lý dữ liệu b B
Trang 1I GIỚI THIỆU PLC
1 Cấu trúc phần cứng
PLC (Programmable Logic Control) là thiết bị điều khiển lập trình đượchay khả trình, cho phép thực hiện linh hoạt các thuật toán điều khiển logicthông qua một ngôn ngữ lập trình
Thực chất nó là một hệ vi xử lý có những ưu điểm mà các hệ vi xử lýkhác không có được và được cài đặt sẵn hệ điều hành với chức năng có thểlập trình điều khiển được
a) Hệ điều hành
Chứa chương trình hệ thống dùng để xác định các cách thức thực hiệnchương trình của người sử dụng, quản lý các đầu vào ra, phân chia bộ nhớRAM trong và quản lý dữ liệu
b) Bộ nhớ chương trình
Lưu giữ chương trình điều khiển, khi PLC hoạt động nó sẽ đọc và thựchiện chương trình được nghi trong bộ nhớ này
c) Bộ đệm đầu vào ra(buffer)
Là vùng nhớ đệm cho các đầu vào ra, các vùng này chiếm một phần củaRAM
d) Bộ định thời(timmer), bộ đếm(counter)
Trong CPU có các bộ định thời, các bộ đếm có nhiều chức năng khácnhau Từ chục đến vài trăm
Timer: TON, TOFF, TOR…
Counter: CT, CU, CD, CUD
e) Vùng nhớ dữ liệu
Không giống như vùng nhớ chương trình Vùng nhớ này được sửdụng lưu kết quả của chương trình người sử dụng
Trang 2Vùng nhớ bit hay còn goi là nhớ cờ (Internal Relays) thường được kýhiệu là M được sử dụng lưu dữ liệu logic.
Vùng nhớ byte, word các vùng nhớ này có thể đọc/được ngoài ra còn cócác vùng nhớ đặc biệt thường thêm ký kiệu S(special)
Ví dụ: Logo, Zen, MicroSmart Relay…
Trang 3Logo (Siemens) Zen(Omron)
b Mini PLC:
Có cấu trúc Onboard nghĩa là trên CPU có thể tích hợp toàn bộ các chứcnăng như: Module nguồn, module vào/ra, cổng đọc tốc độ cao HSC (HightSpeed Counter), bộ Timer/Counter và các bộ pin nhớ
Ví dụ: Như các loại S5 – 900/950, S7 – 200 hoặc MicroSmart IDEC, CPM1Omron, FX Mitsubishi…
Trang 4+ Module vào ra (A/D): AI, AO, DI, DO, DI/DO, AI/AO hoặc AI/DOhoặc DI/AO.
+ Module truyền thông: Mạng Modbus, AS-I, Profilebus, Devinet, Link…
CC-+ Các module đặc biệt: PID, điều khiển động cơ Secvor, bước, bộ đếmtốc độ cao…
3 Chế độ làm việc và vòng quét
a Chế độ làm việc
- Chế độ nghỉ (Stop mode): Ở chế độ này dừng không sử lý các chươngtrình điều khiển và người lập trình có thể cài đặt chương trình điều khiển từmáy PC sang PLC hoặc ngược lại
- Chế độ chạy (Run mode): Ở chế độ này PLC thực hiện chế độ điềukhiển và làm việc theo chu trình vòng quét:
- Chế độ làm việc trung gian giữa chế độ chạy và chế độ nghỉ, khi ở chế
độ này (Term) thì ta có thể chuyển sang chế độ RUN hoặc STOP bằng phầnmềm (bấm chuột trên thanh công cụ trên màn hình PC)
- Lỗi (Erro): là một chế độ làm việc đăc biệt để báo lỗi chương trình,truyền thông hoặc phần cứng vật lý của hệ thống
b.Vòng quét (Scan)
PLC thực hiện chương trình theo vòng quét như hình
Trang 54 Các thiết bị phụ trợ.
Là các thành phần: phần cứng, phần mềm giúp PLC giao tiếp với con người
và đối tượng điều khiển hay với một thiết bị điều khiển khác
a Phần cứng;
+ Máy tính (PC)
+ Cáp truyền thông giữa PC và PLC
+ Card truyền thông
+ Máy quét (scaner)
+ Cảm biến (Sensor)
………
b Phần mềm:
Để lập trình PLC thì chúng ta sử dụng các phần mềm chuyên dụng củacác hãng sản xuất và phù hợp với loại PLC chúng ta dùng
Ví dụ: Step 7, GX, WinLDR, SysWin, RSlogix 500…
5 Ngôn ngữ lập trình
Scan Time
Dữ liệu từ DI/AI vào vùng đệm đầu vào
Thực hiện chương trình
Truyền thông nội bộ và kiểm tra lỗi
Đưa dữ liệu từ bộ đệm tới đầu ra
Start mode
Trang 6Một số phần mềm lập trình hỗ trợ cả 3 ngôn ngữ lập trình STL, LAD,FBD nhưng phần còn lại chỉ thường hỗ trợ 1 hoặc 2 ngôn ngữ LAD và STL.
- STL (Statement List): Liệt kê lệnh
- LAD (Ladder Diagram): Ngôn ngữ hình thang
- FBD (Function Block Diagram): Khối chức năng
6 Cấu trúc chương trình điều khiển
a Chương trình tuyến tính
Toàn bộ chương trình điều khiển được viết trong một khối lớn → tínhthời gian thực không cao vì trên một vòng quét PLC phải thực hiện tất cả cáclệnh được viết trong chương trình Phương án viết chương trình tuyến tínhthường được lựa trọn khi mới làm quen lập trình Chỉ nên áp dụng cho cácbài toán nhỏ
End (Kết thúc của chương trình chính)
- Ưu điểm: Quan sát toàn bộ chương trình điều khiển một cách dễ dàng đốivới chương trình nhỏ, ngắn
- Nhược điểm: Các thuật toán lặp lại nhiều lần thì sơ đồ cấu trúc tuyến tínhkhông phù hợp với những bài toán phức tạp trở nên khó quan sát được toàn
bộ, thực hiện mất nhiều thời gian tín thời gian thực bị ảnh hưởng
b Chương trình có cấu trúc:
Trang 7Ngoài chương trình chính (Main Programme) thì có các chương trình con(Subroutine) Chương trình con được gọi bởi các trường trình chính hoặcmột chương trình con khác Mỗi chương trình con thường được viết để thựchiện một chức năng và có thể được chương trình mẹ gọi tới nhiều lần trongmột vòng quét =>Tổ chức chương trình mẹ đơn giản, có thể thời gian củavòng quét được rút gắn Chương trình rễ hiểu, dễ bảo chì…
Trang 81 Chi tiết kỹ thuật Microsmart.
Dßng s¶n phÈm Microsmart cã 2 kiÓu CPU: lo¹i All-in-One, Slim Type
a CPU All in One
Đặc tính kỹ thuật CPU All in One
FC4A- C10R2C FC4A- C16R2C FC4A- C24R2C
Bảng đặc tính kỹ thuật CPU All in One
Đặc tính kỹ thuật CPU Slim Type
Trang 9Bảng đặc tính kỹ thuật CPU Slim Type
- Vùng nhớ bit (Internal Relays) ký hiệu là M Được sử dụng làm cờ chốt ,
- Thanh ghi dữ liệu đặc biệt (Special Data Register) là vùng lưu trữ dữ liệu
16 hoặc 32 bit Lưu trữ các trạng thái đặc biệt của thiết bị Có thể được ghi/đọc bắt đầu từ địa chỉ D8000
- Thanh ghi dịch (Shift Register): Chủ yếu được dùng trong các lệnh dịchchuyển bit
- Bộ đếm (Counter): Bộ đếm sử dụng đếm các sự kiện bên trong hoặc bênngoài PLC hoạt động đếm không bị ảnh hưởng bởi thời gian vòng quét
- Bộ định thời (Timer): hoạt động đếm thời gian, không bị ảnh hưởng bởithời gian vòng quét PLC
Trang 10b Modules mở rộng.
- Modules vào số : 8DI, 16DI, 32DI
- Modules ra số : 8DO, 16DO, 32 DO
- Modules vào/ra số: 4DI/4DO, 16DI/8DO
- Modules tương tự: 2AI/1AO, 2AI, 2AO
Chỳ ý: Modules tương tự hỗ trợ nhiều chuẩn truyền tớn hiệu tương tự như:tớnh hiệu ỏp, dũng (010V, 420mA), tớn hiệu từ nhiệt điện trở K, J, Pt100.Tớn hiệu ra 010V hoặc 420mA
điểm - điểm, cấu trúc này chỉ phù hợp khi mạng có ít phần tử và tốc độ
truyền tin không cao
- Cấu trúc Point-to-MultiPoint :
Các thành viên gắn vào các nút phân chia chung một đờng truyền vật lý
(Data Bus) Dữ liệu đợc gửi đi từ một nút nào đó sẽ có thể đợc tiếp nhận bởi tất cả nút còn lại gọi là mạng có cấu trúc điểm - nhiều điểm, các nút tiếp
nhận dữ liệu sẽ phân tích địa chỉ gửi theo gói thông tin để xác định mình cóquyền nhận thông tin không Trên thực tế các mạng có quy mô tơng đối lớnthờng sử dụng hệ đờng dẫn chung này, bởi khả năng mở rộng và thu hẹpmạng trong tơng lai không ảnh hởng đến hoạt động của hệ thống mạng
b Khả năng kết nối
- Kết nối PLC và mỏy tớnh: Khi PLC kết nối với mỏy tớnh trạng thỏi hoạtđộng và trạng thỏi đầu vào ra cú thể được kiểm tra trờn mỏy tớnh, cú thể cậpnhật với chương trỡnh, tất cả cỏc CPU (Khụng kể CPU FC4A-C10R2/C)đều cú cú thể kết nối 1:N số PLC tối đa 31 trạm khỏc
Trang 11- Kết nối với thiết bị người dùng: tất cả CPU có thể kết nối với thiết bị mởrộng có RS232 ví dụ như máy tính, máy in, đầu đọc mã vạch…
- Kết nối với Modem: tất cả CPU (Không kể CPU FC4A-C10R2/C) có thểkết nối với Modem
- Data Link: Tất cả CPU MicroSmart có thể được kết nối với nhau quachuẩn RS485, theo kiểu chủ tớ, số trạm tớ tối đa 31
- Kết nối mạng AS-I (Actual Sensor Interface) các CPU Slim Type có khảnăng nối mạng AS-I với các thiết bị chấp hành, cảm biến… Qua modulemạng AS-I
Trang 12III HỆ LỆNH TRONG MicroSmart
Chỳ ý khi nhập cỏc thụng số vào lệnh khi xuất hiện cỏc ký hiệu sau:
Allocation Number: Thực hiện điền rừ địa chỉ của tiếp điểm hay của M Normally Open: lựa chọn tiếp điểm thưởng mở
Normally Closed: lựa chọn tiếp điểm thường đúng
1 Lệnh cơ bản (Basic Instructions).
a Lệnh tiếp điểm
Ứng dụng: Nạp, nạp đảo, bắt sờn xung lên hoặc sung xuống lệnh 2 tiếp
điểm, nối tiếp và song song 2 tiếp điểm, nhân, nhân đảo, cộng, cộng đảo,…LOD, LODN, OR,ORN,OR LOD, AND,AN LOD, ANDN
- Lệnh nạp (LOD) , nạp đảo (LODN)
- Lệnh đầu ra (OUT), đầu ra đảo(OUTN)
Trang 13- Lệnh Set, Reset
- Lệnh AND và ANDN
- Lệnh AND và AND LOD
Dùng để nối tiếp điểm song song với 2 hoặc nhiều hơn tiếp điểm nối tiếp bắtđầu bằng lệnh LOD
Trang 15Cài đặt thời gian cho timer
- Counter (CNT,CUD, CDP)
Có 3 loại đếm tiến hoặc đếm lùi giá trị được đặt bằng hằng số hay từ mộtthanh ghi Giá trị đếm được mô tả bằng một thanh nghi 16 bit
Bộ đếm tiến: bộ đếm tiến có hai tín hiệu vào (sơ đồ thang).
Tín hiệu đầu dùng để Reset Counter về không khi tín hiệu này được kích lên
ON Tín hiệu thứ 2 là tín hiệu xung vào đếm khi tín hiệu này ON nội dung
bộ đếm tăng lên 1
Cờ bộ đếm lên ON khi nội dung bộ đếm bằng nội dung đặt
Trang 16Bộ đếm tiến
Bộ đếm tiến lùi: Có ba tín hiệu vào
Tín hiệu thứ nhất dùng để cài đặt giá trị đặt cho bộ đếm khi tín hiệu này được kích lên ON Vd cài đặt giá trị ban đầu là 500 khi có tín hiệu ON nội dung bộ đếm là 500
Tín hiệu thứ hai là tín hiệu đếm tiến Khi có sườn lên tín hiệu này nội dung
Trang 17Bộ đếm tiến lùi
Bộ đếm lùi hoặc tiến: Có 3 tín hiệu vào
Tín hiệu thứ nhất dùng để cài đặt giá trị ban đầu cho bộ đếm Khi tín hiệunày ON nội dung bộ đếm được được cài đặt
Tín hiệu thứ hai là xung đếm Khi tín hiệu ON nội dung bộ đếm tăng hoặcgiảm nội dung đi 1 tùy thuộc vào sự lựa trọn của tín hiêu thứ 3
Tính hiệu thứ 3 Dùng để lựa trọn bộ đếm thực hiện đếm tiến hay đếm lùi.Khi tín hiệu này ON bộ đếm hoạt động đếm tiến, khi tín hiệu này OFF bộđếm thực hiện đếm lùi
Cờ của bộ đếm bật lên ON khi nội dung bộ đếm giảm xuống 0
Trang 18Bộ đếm tiến lùi có xung chọn
- Lệnh so sánh Counter (CC=, CC>=)
Thực hiệp phép so sánh giá trị của một hằng số hay một thanh ghi với giá trịđếm hiện thời của một bộ đếm Khi nào thoả mãn thì đầu ra được bật lênON
- Lệnh so sánh thanh ghi (DC=, DC>=)
Thực hiệp phép so sánh giá trị của một hằng số hay một thanh ghi với mộtthanh ghi Khi nào thoả mãn thì đầu ra được bật lên ON
Trang 19c Lệnh dịch bit thuận và ngược (SFR, SFRN)
- Dịch bít thuận (SFR): lệnh thực hiện lệnh dịch bit theo chiều thuận thanh
ghi dịch (R) lệnh không tác dụng với thanh nghi D hay bit M Bít dữ liệumới được đưa vào bít có thự thấp nhất của thanh ghi dịch và bít ở thứ tự caonhất được chọn bị đẩy nội dung ra ngoài
Cài đặt lệnh (5)
Chọn bít thấp nhất cho thanh nghi dịch
Số lượng bít tham gia dịch
Tín hiệu thứ nhất dùng để Reset Nội dung các bit dịch xuống OFF
Trang 20Tín hiệu thứ 2 dùng làm xung dịch bit Khi có sườn lên các bit được dịch lên
1 bit theo chiều tăng thứ tự bít Và một bít mới được được đưa vào nội dungthanh nghi dịch Giá trị nội dung bít mới này phục thuộc vào tín thứ 3
Tín hiệu thứ 3 là tín hiệu giá trị bít nhập vào thanh ghi dịch nếu tín hiệu này
ON thì khi có tín hiệu dịch bít thì nội dung bit mới nhập vào là ON (1).Chú ý thời gian của xung dữ liệu phải tồn tại chước khi có xung dịch
e Lệnh bắt sườn xung lên (STU), bắt sường xung xuống (STOD)
Dùng để phát hiện tính hiệu đầu vào ở sườn lên hoắc xuống Khi phát hiệnthì đầu ra bật lên OFF lên ON và từ ON xuống OFF
Trang 21f Nhóm lệnh điều khiển chương trình
- Lệnh điều khiển chính (MCS), xoá điều khiển chính (MCR) luôn đi với
- Lệnh nhảy (JMP) và kết thúc nhảy (JEND)
JMP Lệnh có điều kiện Khi điều kiện tích cực nó thực hiện nhảy tới lệnh
JEND và bỏ qua thực hiện đoạn chương trình sau lệnh JMP và trạng thái đầu
ra của các lệnh khách nằm giữa 2 câu lệnh JMP và JEND được giữ nguyên trạng thái không phụ thuộc đầu vào Có thể có nhiều nhảy JMP dùng chung
1 lệnh JEND
Trang 22- Di chuyển dữ liệu (MOV): Thực hiên di chuyển một toán hạng nguồn có
độ dài 16 bit tới một toán hạng đích phải có độ dài 16 bit
Trang 23- Di chuyển dữ liệu đảo (MOVN): Thực hiện di chuyển dữ liệu nguồn bị đảo
bit tới toán hạng đích
- Di chuyển gián tiếp (IMOV): Thực hiện di chuyển dữ liệu có địa chỉ của
toán hạng nguồn thứ nhất cộng với nội dụng chứa trong toán hạng nguồn thứ
2 và cất vào đích có địa chỉ của toán hạng đích thứ nhất cộng với nội dung trong toán hạng đích thứ 2
- Di chuyển đảo gián tiếp (IMOVN): Lệnh có chức năng giống lệnh di
chuyển gián tiếp nhưng dữ liệu đến đích được đảo bit
- Di chuyển khối (BMOV): Lệnh có tác dụng thực hiện di chuyển một khối
dữ liệu gồm N từ 16 bit
- Di chuyển gián tiếp bit (IBMV): giống lệnh di chuyển từ nhớ nhưng dữ
liệu di chuyển của lệnh IBMV chỉ là 1 bit
- Di chuyển gián tiếp bit đảo: giống lệnh IBMV nhưng giá trị bit di chuyển
bị đảo
b So sánh dữ liệu:
Trang 24Thực hiện các phép so sánh dữ liệu 16 bit với nhau Kết quả phép so sánh
được đưa ra thiết bị một bit như M, Q…
- Cộng (ADD-Addition): Thực hiện phép cộng 2 toán hạng số 16 bit với
nhau kết quả lưu lại vào bộ nhớ PLC và cờ M8003 được sử dụng làm cờ tràn
Trang 25- Trừ (SUB-Subtraction): thực hiện phép trừ 2 toán hạng 16 bit kết quả
được lưu lại, và M8003 được sử dụng làm cờ mượn
- Nhân (MUL-Multiplication): thực hiện phép nhân 2 toán hạng 16 bit, kết
quả là toán hạng 32 bit phải được cất trong tán hạng đích có độ dài 32 bit
- Chia (DIV-Division): thực hiện phép chia 2 toán hạng 16 bit, kết quả là
toán hạng 32 bit phải