Professional Documents
Culture Documents
Bit Logic Operations
Bit Logic Operations
Bit Logic Operations
Counter operations
• CTU: Count up (S7-1200, S7-1500)
Comparator operations
• CMP ==: Equal (S7-1200, S7-1500)
Math functions
• CALCULATE: Calculate (S7-1200, S7-1500)
Move operations
• MOVE: Move value (S7-1200, S7-1500)
• SCATTER: Parse the bit sequence into individual bits (S7-1200, S7-1500)
• ARRAY DB (S7-1500)
Conversion operations
• CONVERT: Convert value (S7-1200, S7-1500)
• CEIL: Generate next higher integer from floating-point number (S7-1200, S7-
1500)
• FLOOR: Generate next lower integer from floating-point number (S7-1200, S7-
1500)
String + Char
• S_MOVE: Move character string (S7-1200, S7-1500)
Distributed I/O
• Overview of the types of data records (S7-1200, S7-1500)
PROFIenergy
• Description of PROFIenergy (S7-1200, S7-1500)
Interrupts
• ATTACH: Attach an OB to an interrupt event (S7-1200, S7-1500)
Alarms
• Gen_UsrMsg: Generate user diagnostic alarms (S7-1200, S7-1500)
Diagnostics
• RD_SINFO: Read current OB start information (S7-1200, S7-1500)
• GetSMCinfo: Reading out information about the SIMATIC memory card (S7-
1500)
• READ_DBL: Read from data block in the load memory (S7-1200, S7-1500)
Addressing
• Instructions for address conversion (S7-1200, S7-1500)
Motion Control
S7-1200 Motion Control (S7-1200)
High-speed counters
CTRL_HSC: Control high-speed counters (S7-1200)
PID Control
• PID_Compact (S7-1200, S7-1500)
Communication
• S7 communication (S7-1200, S7-1500)
• OPC UA (S7-1500)
• TeleService (S7-1200)
khóa học lập trình plc siemens s7-1200 online miễn phí
Ví dụ tiêu biểu nhất trong quá trình lập trình plc bắt buộc chúng ta phải sử
dụng timer đó chính là bài toán lập trình cột đèn giao thông xanh đỏ vàng.
Người viết chương trình plc bắt buộc phải dùng timer định thời để lập trình
đúng thời gian bật và tắt lần lượt đèn xanh đỏ vàng.
Chức năng khi ngõ vào timer có xung cạnh lên thì ngõ ra Q của timer
này sẽ out ra trong 1 khoảng thời gian cài đặt ở giá trị PT. Còn ET là
thời gian của bộ đếm.
Theo như ví dụ trên khi M0.0 chuyển từ 0=>1 thì Q0.0 sẽ ON trong
10,000ms sau đó tự tắt.
Chức năng khi ngõ vào IN lên 1 thì ngõ ra Q sẽ delay một khoảng thời
gian cài đặt ở PT sau đó lên 1, khi ngõ vào IN xuống 0 thì ngõ ra Q lập
tức xuống 0.
Ví dụ như hình trên thì khi M0.0 từ 0=>1 thì timer sẽ đếm cho đủ 10s
sau đó bật Q0.0 lên 1.
Timer off delay trên plc siemens s7-1200
Chức năng khi ngõ vào IN chuyển từ 1=>0 thì timer sẽ đếm sau
khoảng thời gian cài đặt ở PT thì sẽ chuyển Q từ 1=>0. Còn nếu ngõ
vào từ 0=>1 thì ngõ ra Q chuyển lập tức từ 0=>1
Như ví dụ trên khi M0.00 từ 1=>1 thì sau 10s Q0.0 sẽ từ 1=>0
Chức năng: tương tự như timer on delay tuy nhiên khi ngõ IN chuyển
xuống 0 thì giá trị timer vẫn giữ và khi IN lên 1 thì tiếp tục đếm từ giá
trị này. Lệnh này có thêm ngõ vào R để reset timer.
Mô tả ví dụ: khi M0.0 chuyển từ 0=>1 thì timer bắt đầu đếm cho đủ
10s sau đó ON Q0.0. Nếu trong quá trình chưa đủ 10s mà M0.0 bị
chuyển về 0 thì giá trị timer lưu lại và để lần sau đếm tiếp.
Lưu ý: khi sử dụng timer các bạn cần phải tham khảo giới hạn bộ nhớ trong
từng cpu để không sử dụng quá giới hạn bộ nhớ timer.
Khi viết chương trình cho plc siemens s7-1200 có nhiều trường hợp ta cần
đếm số lượng một thao tác nào đó từ cảm biến bên ngoài hoặc bit phụ trên plc
thì thường ta phải sử dụng đến khối hàm chức năng có tên gọi là counter hay
bộ đếm do hãng tích hợp sẵn trong tập lệnh của CPU.
Trên plc siemens s7-1200 có sẵn 3 lệnh counter bộ đếm với sự khác nhau như
tên gọi của chúng là counter đếm lên, counter đếm xuống, counter vừa đếm
lên, vừa đếm xuống.
Lưu ý: đây là counter bộ đếm thường nên tốc độ đếm xung đầu vào khá thấp
nên chỉ đếm những tín hiệu ngõ vào có tốc độ thấp, nếu cấp xung tốc độ cao
vào bộ đếm này sẽ không còn chính xác. Để đếm các tín hiệu xung tốc độ cao
thì các bạn tham khảo bài tiếp theo trong khóa học này về HSC.
CD là ngõ vào tín hiệu, counter sẽ đếm xuống khi tín hiệu này từ 0=>1
LD là bit reset bộ đếm, khi bit này từ 0=>1 thì giá trị của bộ đếm sẽ bị
chuyển về giá trị PV
PV là giá trị cài đặt của bộ đếm
Q là ngõ ra của bộ đếm khi đếm về giá trị 0 sẽ out ra 1.
CV là giá trị hiện tại của bộ đếm.
Lệnh counter đếm lên và xuống trên plc siemens s7-1200
Lệnh counter đếm lên xuống trên plc siemens s7-1200
Mô tả chi tiết lệnh đếm lên xuống trên plc siemens s7-1200
Ví
dụ lệnh so sánh trên plc siemens s7-1200
Một số lệnh so sánh khác trên plc siemens s7-12000
Lệnh so sánh trong khoảng giá trị trên plc siemens s7-1200
Lệnh so sánh ngoài khoảng giá trị trên plc siemens s7-1200
L
ệnh so sánh ngoài khoảng giá trị trên plc siemens s7-1200
Mô tả: nếu giá trị ở VAL nằm ngoài khoảng giá trị MIN-MAX thì giá trị ngõ ra sẽ
được lên 1.
khóa học lập trình plc siemens s7-1200 online miễn phí
Trong bài viết này mình sẽ chia sẻ cho các bạn một số lệnh lập trình plc
siemens 27-1200 có tác dụng để di chuyển hay sao chép dữ liệu bit thanh ghi,
mời các bạn tham khảo chi tiết như sau.
Lưu ý kiểu dữ liệu của IN và OUT1 nên sử dụng cùng 1 kiểu với nhau để tránh
lỗi, nếu khác kiểu dữ liệu bạn có thể gặp phải lỗi như sau:
L
ệnh sao chép dữ liệu trên plc siemens s7-1200
Như ví dụ trên hình nếu IN là 1 Dword trong khi OUT1 là Word thì lệnh MOVE
chỉ có tác dụng sao chép được word thấp của ô nhớ mà thôi. Như bạn thấy
trong ví dụ phias trên lệnh MOVE chỉ sao chép được Word thấp có giá trị 3456
mà thôi.
Vùng nhớ mà lệnh MOVE có thể tác động ba gồm: SInt, Int, DInt, USInt, UInt,
UDInt, Real, LReal, Byte, Word, DWord, Char, Array, Struct, DTL, Time.
Một số lệnh di chuyển sao chép dữ liệu khác
trên plc siemens s7-1200
Lệnh MOVE_BLK lệnh sao chép khối dữ liệu
Lệnh UMOVE_BLK: di chuyển khối dữ liệu vào địa chỉ mới.
Lưu ý hai lệnh này áp dụng cho kiểu dữ liệu Array
Đối với plc siemens hiện chưa hỗ trợ lệnh sao chép hay di chuyển dữ liệu dạng
bit nên bạn có thể sử dụng một số lệnh như R S SET_BF RESET_BF hoặc out
relay để xử lý trong quá trình lập trình với dữ liệu dạng bit
khóa học lập trình plc siemens s7-1200 online miễn phí
Trong quá trình lập trình code cho plc siemens s7-1200 ta bắt buộc phải sử
dụng một số lệnh lập trình tính toán liên quan tới số học, mời các bạn tham
khảo chi tiết tập lệnh qua bài viết sau đây.
Lệ
nh phép toán cộng trên plc siemens s7-1200
Mô tả chi tiết lệnh phép toán cộng trên plc siemens s7-1200
EN ngõ vào kích hoạt để thực hiện lệnh
IN1 toán tử cộng 1
IN2 là toán tử cộng 2
OUT là kết quả
Toán tử cộng có thể sử dụng trên vùng nhớ : SInt, Int, DInt, USInt, UInt,
UDInt, Real, LReal, hằng số.
Kết quả có thể sử dụng trên vùng nhớ: SInt, Int, DInt, USInt, UInt, UDInt,
Real, LReal
=> Mô tả ví dụ: lệnh ADD như trên hình sẽ thực hiện phép tính cộng 2 giá trị lưu
ở ô nhớ MD1 và MD5 sau đó lưu kết quả vào ô nhớ có địa chỉ là MD9.
Lệnh
phép toán trừ trên plc siemens s7-1200
Mô tả chi tiết lệnh phép toán trừ trên plc siemens s7-1200
Lệ
nh phép tính nhân trên plc siemens s7-1200
Mô tả chi tiết lệnh phép toán nhân trên plc siemens s7-1200