Professional Documents
Culture Documents
Các phần mềm + Firmware + Các tập lệnh
Các phần mềm + Firmware + Các tập lệnh
+ Nếu cài đặt nhiều Version RsLogix5000/Studio5000, thì nên cài Version cao
rồi mới cài Version thấp
+ Nếu cài cùng các phần mềm khác như Ft View, Ft Transaction Manager thì
lựa chọn Version cùng với Version của FactoryTalk Service Platform.
3. Chương trình PLC
- Tổ chức thành các Task, mỗi Task có nhiều Program, mỗi Program có nhiều
Routine
- Có 3 loại Task:
+ Periodic Task: Tự động chạy theo chu kỳ => Thường đc dùng trong mô phỏng
+ Event Task: Chạy khi đc Call trong chương trình
+ Continous Task: Thông thường sẽ dùng loại này, chạy theo vòng quét PLC
- Routine: Các Program phải có Main Routine => Để Call các Routine khác trong
Program. Các Routine khác nếu không đc gọi từ Main Routine sẽ không được PLC
quét đến. Lập trình bằng ngôn ngữ Ladder, FBD, ST
4. Các tập lệnh
` `
Lưu ý: Đối với các Counter, khi đặt tên trùng nhau trong một chương trình
VD: Counter CTU có tên là C1, Counter CTD cũng có tên là C1 thì các giá trị Preset,
Accum trong 2 Counter này sẽ giống nhau. Chẳng hạn, khi giá trị Accum của CTU = 5 thì
giá trị Accum của CTD cũng = 5
F8:1: thanh ghi lưu trữ giá trị nhiệt độ ban đầu của quá trình
B3:0/0: bit cho lệnh ONS (Các bit của lệnh ONS phải là kiểu Bool)
Khi quá trình bắt đầu và bit I:0/0 set lên 1. Lệnh ONS cho phép lệnh MOVE thực
hiện một lần đưa giá trị của thanh ghi đọc nhiệt độ (F8:0) vào thanh ghi lưu trữ (F8:1).
Khi đó, giá trị tại thanh ghi lưu trữ (F8:1) là giá trị nhiệt độ ban đầu. Lệnh ONS sẽ không
cho phép ghi lại cho đến khi đầu vào I:0/0 đưa xuống mức 0 rồi đưa lên mức 1. Do đó,
khi sử dụng lệnh ONS, khi nhấn nút I:0/0, lệnh MOVE sẽ chỉ thực hiện 1 lần tham số ban
đầu. Nếu muốn lệnh MOVE thực hiện ghi dữ liệu thêm 1 lần nữa, cần nhấn nút I:0/0.
Lệnh ONS này tương tự như lệnh P (xung sườn cạnh lên) của Siemens.
Trong đoạn chương trình trên, nếu không có lệnh ONS, giá trị nhiệt độ sẽ truyền
liên tục vào thanh ghi lưu trữ F8:1 mỗi khi I:0/0 lên mức 1. Vì một chu kỳ quét của PLC
diễn ra rất nhanh (thường vào khoảng 1 đến 25 mili giây) nên nếu không dùng lệnh ONS,
trong quá trình người dùng trong nhấn nút Process Running (I:0/0) thì PLC đã quét được
nhiều chu kỳ quét nên lúc này lệnh MOVE đã thực hiện rất nhiều lần, dẫn đến giá trị tại
thanh ghi F8:1 không còn là giá trị ban đầu nữa.
Do đó, lệnh ONS thường được ứng dụng trong việc ghi lại các giá trị ban đầu của
quá trình.
- Cho ví dụ:
I:0/0: nút Heating Process Start
F8:1: thanh ghi lưu trữ dữ liệu nhiệt độ ban đầu của quá trình
B3:0/1: bit đầu ra của lệnh OSR. Bit này được sử dụng để kích hoạt lệnh MOVE ở
rung 0001 (Các bit của lệnh OSR phải là kiểu Bool)
Lệnh OSR nối với nút I:0/0. Khi nhấn nút, I:0/0 từ mức 0 lên mức 1, lệnh OSR
kích hoạt một lần, Output bit B3:0/1 lên mức cao 1 lần, bit này sẽ kích hoạt lệnh MOV 1
lần giúp giá trị của thanh ghi đọc dữ liệu (F8:0) được lưu vào thanh ghi lưu trữ (F8:1) .
Lệnh này có chức năng giống hệt lệnh ONS và giống với lệnh P (xung sườn cạnh lên) của
Siemens.
F8:2: thanh ghi lưu trữ dữ liệu nhiệt độ ban đầu của quá trình
B3:0/3: bit đầu ra của lệnh OSR. Bit này được sử dụng để kích hoạt lệnh MOVE ở
rung 0003 (Các bit của lệnh OSF phải là kiểu Bool)
Lệnh OSF nối với nút nhấn. Output Bit B3:0/3 của OSF được dùng làm lệnh XIC
(tiếp điểm thường mở) để kích hoạt lệnh MOV. Khi nhấn nút, I:0/0 sẽ từ mức 0 lên mức
1, lệnh OSF vẫn chưa được kích hoạt. Sau đó, khi nhả nút nhấn ra, I:0/0 xuống mức 0 thì
lệnh OSF mới được kích hoạt 1 lần, Output Bit B3:0 lên mức 1 nên kích hoạt lệnh MOV
1 lần và giá trị thanh ghi đọc nhiệt độ (F8:0) sẽ được lưu vào thanh ghi lưu trữ (F8:2) 1
lần. Lệnh này có chức năng giống như lệnh N (xung sườn cạnh xuống) của Siemens.
Trong đoạn chương trình trên, nếu không có lệnh OSF, giá trị nhiệt độ sẽ truyền
liên tục vào thanh ghi lưu trữ F8:2 mỗi khi I:0/0 lên mức 1. Vì một chu kỳ quét của PLC
diễn ra rất nhanh (thường vào khoảng 1 đến 25 mili giây) nên nếu không dùng lệnh OSF,
trong quá trình người dùng trong nhấn nút (I:0/0) thì PLC đã quét được nhiều chu kỳ quét
nên lúc này lệnh MOVE đã thực hiện rất nhiều lần, dẫn đến giá trị tại thanh ghi F8:2
không còn là giá trị ban đầu nữa.
LƯU Ý: Khi mô phỏng Emulate, phải khai báo module Input như hình dưới
Nếu các thông số trong Connection Parameters khác với hình trên thì khi chạy Online sẽ
bị I/O Not Responding