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