Xử
lý tín hiệu Analog trong PLC Siemen S7-200
Đặt
vấn đề: để hiểu rõ về analog ta cần giải quyết một ví dụ cụ thể như sau
Đo
mức nước có dãi đo từ 0m-40m. Tín hiệu cảm biến truyền về là 4-20mA.
Giải:
Như
vậy với:
O:
output
s:
sensor
v:
value
Ta
có:
Ov
---------đầu ra ===> 0m ===> 40m
Iv
---------đầu vào ==> 4mA ===> 20mA
Lưu
ý, S7200 có module đọc analog có độ phân giải từ 6400 đến 32000, nghĩa là 4mA
đọc vào thì trong PLC hiểu là 6400 đơn vị và 20mA đọc về là 32000 đơn vị.
Như
vậy ta có thể lặp được 1 đường thẳng qua 2 điểm. Và xây dung phương
trình đường thẳng qua 2 điểm đó có dạng Y = aX + b
Osvmax
----- đầu ra max ----- 40m
Osvmin
----- đầu ra in
----- 0m
Isvmax
----- đầu vào max
----- 32000
Isvmin
----- đầu vào in
----- 6400
Công
thức để tính cho tín hiệu Analog sẽ là:
Ov=[(Osvmax -Osvmin)(Iv-Isvmin)/(Isvmax-Isvmin)]+Osvmin
=>
Ov =[(40 -0)(Iv-6400)/(32000-6400)]+0
=> Ov = 0.0015625Iv - 10
Ta
có được phương trình. bây giờ xây dựng phương trình vào PLC
Hàm
I_DI chuyển vùng nhớ AIW0 16bit chuyen sang vung nho VD100 32bit
Ham DI_R chuyen vung nho VD100 32bit chuyen sang vung nhớ số thực VD104 32bit
(dấu phẩy động)
Sau
khi lấy được giá trị thưc có dấu phẩy động rồi ta đưa vào công thức tính.
Khối
MUL_R là khối NHÂN 2 số thực
Khối
SUB_R là khối TRỪ 2 số thực
Như
vậy sau một loạt hàm chuyển đổi và khối tính toán thì từ đầu vào giá trị cảm
biến AIW0 và kết quả PLC xử lý analog được là VD112
Bổ sung:
Có
thể xây dung hàm tổng quát để xử lý tín hiệu Analog như sau
0 nhận xét:
Đăng nhận xét