PDA

Xem bản đầy đủ : doc tin hieu analog của plc s7 200



jonhnguyen
07-07-2010, 12:26
có bạn nào có ví dụ làm sẵn về đọc tín hiệu analog từ cảm biến ko,có thể cho mình xin nghiên cứu với

johny
09-07-2010, 08:26
bạn sử dụng hàm này sẽ sử dụng được hết. BẠn chỉ cần nhập các thông số cần thiết vào thì nó sẽ tự tính ra thôi, quá dễ phải ko? Bây giờ bạn có thể tự tin nói rằng analog của s7-200 ko là cái đinh gì hết. hiiii

http://www.data.webdien.com/free/download.php?file=b414b881d3ebeb85ae8413baee865a66

theanh_dktd
13-07-2010, 10:15
bài viết không dấu (mem 12367)

qqasdfghjkl
31-10-2010, 08:56
Chào mọi người! Mình có một bài tập đơn giản. cũng hay nhưng chưa giải thích hết được. Đây là bài tập mẫu của Siemen Mọi người cùng giải thích nhé!

Yêu cầu phần cứng
1 S7-200 CPU
1 Pt100 temperature Sensor
TD200 Operator Interface
1 EM235 Analog Expansion module
Kết nối phần cứng
http://cmsapps.sea.siemens.com/automation/microplc/images/Tips/Graphics/03_1.gif
http://cmsapps.sea.siemens.com/automation/microplc/images/Tips/Graphics/036_2.gif
Các thông số
Nguồn dòng cho Pt100 là 12,5 mA.
Đầu vào tuyến tính 5mV/1oC.
Trong ví dụ này chương trình tính toán và chuyển đổi theo công thức:
T[oC]=(Digital value – 4000)/16
- Digital value: Giá trị đầu vào analog đã được chuyển đổi.
4000: (0oC offset) là giá trị số đo được ở 0oC.
16: (1oC value ) giá trị tương ứng với 1oC.
Hiển thị trên TD200
Chương trình tính toán giá trị thập phân được ghi kết quả vào biến của message 1 và hiển thị trên TD200:
“Temperature=xxx.xoC”

Nhiệt độ quá ngưỡng hiển thị message 2:
“Temperature>xxx.xoC”

Nhiệt độ dưới ngưỡng hiển thị message 3:
“Temperature<xxx.xoC”
Chương trình

Hình bị mờ các bạn download file và báo cáo của mình về xem cho dễ hen
chuong 6.pdf (http://www.4shared.com/document/7udVuGp_/chuong_6.html)
tip036b.mwp (http://www.4shared.com/file/CdKJEOSb/tip036b.html)
Bao cao dieu khien lap trinh.exe (https://sites.google.com/site/lexuanthuy2603/adasd/Baocaodieukhienlaptrinh.rar?attredirects=0&d=1)



http://dc239.4shared.com/img/N16jjowC/untitled.bmp (http://www.4shared.com/photo/N16jjowC/untitled.html)
http://dc179.4shared.com/img/Bb1iT8vf/2_online.png (http://www.4shared.com/photo/Bb1iT8vf/2_online.html)
http://dc275.4shared.com/img/5_uPRe-e/3_online.png (http://www.4shared.com/photo/5_uPRe-e/3_online.html)
http://dc262.4shared.com/img/xX08M8Id/4_online.png (http://www.4shared.com/photo/xX08M8Id/4_online.html)

Vì báo cáo tìm hiểu trước rồi thầy mới giải thích nên mình chưa hiểu lắm về chương trình.
Ai hiểu giải thích kỹ giùm hen! Ko phải chỉ giải thích lênh mà quan trọng là hoạt động và tính toán số liệu đó. Thanh mọi người nhìu!

trinhvanhoa
31-10-2010, 09:23
Chào mọi người! Mình có một bài tập đơn giản. cũng hay nhưng chưa giải thích hết được. Đây là bài tập mẫu của Siemen Mọi người cùng giải thích nhé!

Yêu cầu phần cứng
1 S7-200 CPU
1 Pt100 temperature Sensor
TD200 Operator Interface
1 EM235 Analog Expansion module
Kết nối phần cứng
http://cmsapps.sea.siemens.com/automation/microplc/images/Tips/Graphics/03_1.gif
http://cmsapps.sea.siemens.com/automation/microplc/images/Tips/Graphics/036_2.gif
Các thông số
Nguồn dòng cho Pt100 là 12,5 mA.
Đầu vào tuyến tính 5mV/1oC.
Trong ví dụ này chương trình tính toán và chuyển đổi theo công thức:
T[oC]=(Digital value – 4000)/16
- Digital value: Giá trị đầu vào analog đã được chuyển đổi.
4000: (0oC offset) là giá trị số đo được ở 0oC.
16: (1oC value ) giá trị tương ứng với 1oC.
Hiển thị trên TD200
Chương trình tính toán giá trị thập phân được ghi kết quả vào biến của message 1 và hiển thị trên TD200:
“Temperature=xxx.xoC”

Nhiệt độ quá ngưỡng hiển thị message 2:
“Temperature>xxx.xoC”

Nhiệt độ dưới ngưỡng hiển thị message 3:
“Temperature<xxx.xoC”
Chương trình

Hình bị mờ các bạn download file và báo cáo của mình về xem cho dễ hen
chuong 6.pdf (http://www.4shared.com/document/7udVuGp_/chuong_6.html)
tip036b.mwp (http://www.4shared.com/file/CdKJEOSb/tip036b.html)
Bao cao dieu khien lap trinh.exe (https://sites.google.com/site/lexuanthuy2603/adasd/Baocaodieukhienlaptrinh.rar?attredirects=0&d=1)



http://dc239.4shared.com/img/N16jjowC/untitled.bmp (http://www.4shared.com/photo/N16jjowC/untitled.html)
http://dc179.4shared.com/img/Bb1iT8vf/2_online.png (http://www.4shared.com/photo/Bb1iT8vf/2_online.html)
http://dc275.4shared.com/img/5_uPRe-e/3_online.png (http://www.4shared.com/photo/5_uPRe-e/3_online.html)
http://dc262.4shared.com/img/xX08M8Id/4_online.png (http://www.4shared.com/photo/xX08M8Id/4_online.html)

Vì báo cáo tìm hiểu trước rồi thầy mới giải thích nên mình chưa hiểu lắm về chương trình.
Ai hiểu giải thích kỹ giùm hen! Ko phải chỉ giải thích lênh mà quan trọng là hoạt động và tính toán số liệu đó. Thanh mọi người nhìu!bài này mình cũng đã gặp một bài tương tự, nhưng không giải quyết trong thời gian ngắn được đâu.bạn tổng hợp lại những gì bạn đã hiểu,chỗ nào chưa hiểu ,mọi người guíp đỡ,bạn đưa ra như thế này ko bt bạn đã hiểu đến đâu rồi,mình có ý khiến như thế.

qqasdfghjkl
31-10-2010, 22:12
bài này mình cũng đã gặp một bài tương tự, nhưng không giải quyết trong thời gian ngắn được đâu.bạn tổng hợp lại những gì bạn đã hiểu,chỗ nào chưa hiểu ,mọi người guíp đỡ,bạn đưa ra như thế này ko bt bạn đã hiểu đến đâu rồi,mình có ý khiến như thế.

Các bạn đọc và góp ý cho mình nhé! Mình nghĩ trong diễn đàn nên đưa ra các bài toán cụ thể cùng giải thích sẽ dễ hiểu hơn. Những người mới làm quen sẽ dễ nắm bắt hơn. Mình cũng mới bắt đầu học PLC nên rất mong các anh chị đi trước và các bạn giúp đỡ.

Network1 // Set the High and Low Temperature Limits
(Đặt các giới hạn nhiệt độ cao và thấp)
Nói về lênh thì hiểu lệnh rồi. Nhưng đoạn này mình chưa hiểu lắm:
MOVW +300, VW260 // Set the high temperature
// limit = 30° C.

MOVW +200, VW262 // Set the low temperature
// limit = 20° C.

Vì trong lý thuyết thì tính theo công thức:
T[oC]=(Digital value – 4000)/16
- Digital value: Giá trị đầu vào analog đã được chuyển đổi.
-4000: (0oC offset) là giá trị số đo được ở 0oC.
-16: (1oC value ) giá trị tương ứng với 1oC.

Như vậy: Digital value=T*16+4000. Suy ra nếu 30 độ thì Digital value=30*16+4000=4480. Nếu không cộng 4000 thì giá trị Digital value tương ứng là 480. Nhưng ở đây là 300. Trương hợp 20 độ thì phải là 20*16 = 320.
Network3 và Network4 thì so sánh và hiển thị trên TD200 đồng thời set(20 độ mở lò) và reset(30 độ tắt lò) lò đốt.
Lệnh so sánh này là so sánh với VW200 đã tính được ở Network2. Nên mình nghĩ mấu chốt là tính toán ở Network2. Rất mong được sự góp ý của mọi người. Thanhk! Chúc mọi người vui vẻ!:3:

johny
01-11-2010, 16:45
VW200 = T[oC]=(Digital value – 4000)/16

Giá trị lưu trong VW200 là giá trị nhiet đo (oC), ko phai la gia tri Digital value. range -60 - 400 oC. nên lấy giá trị này so sánh với 20 oC & 30 oC là đúng rồi.

qqasdfghjkl
01-11-2010, 21:54
VW200 = T[oC]=(Digital value – 4000)/16

Giá trị lưu trong VW200 là giá trị nhiet đo (oC), ko phai la gia tri Digital value. range -60 - 400 oC. nên lấy giá trị này so sánh với 20 oC & 30 oC là đúng rồi.

Bạn Johny ơi bạn giải thích kỹ hơn giùm mình đi. Mình vẫn không hiểu bạn tính như thế nào để ra được giới hạn nhiệt độ trong bài toán này là từ -60 đến 400 oC. Mình cũng không hiểu tại sao ở Network1 có lệnh: MOVD +0, VD196 // Clear VW196 and VW198. Tức là vw198 đã được xóa nhưng vẫn có thể thực hiện lệnh chia ở Network2: DIV VW250, VD198 // Divide the result by the 1°C value.

Thank!

johny
01-11-2010, 22:15
Temperature Sensor:
The Pt100 is a platinum resistance temperature detector which is
suitable for temperature measurements in an application range from
-60° C to +400° C.

theo công thức này thì giá trị nhiệt độ chỉ trong range -25 oC --> 175 oC thôi.

qqasdfghjkl
01-11-2010, 22:52
Temperature Sensor:
The Pt100 is a platinum resistance temperature detector which is
suitable for temperature measurements in an application range from
-60° C to +400°C.

theo công thức này thì giá trị nhiệt độ chỉ trong range -25 oC --> 175 oC thôi.
Theo mình thấy nếu giới hạn như vậy thì 30°C đâu tương ứng với 300
http://lh5.ggpht.com/_xdT3zpQJbTI/TM7ikRe9hzI/AAAAAAAAA-k/HreK3vVHAr8/aaaaaaaaaaaa.jpg

johny
02-11-2010, 15:56
Theo mình thấy nếu giới hạn như vậy thì 30°C đâu tương ứng với 300
http://lh5.ggpht.com/_xdT3zpQJbTI/TM7ikRe9hzI/AAAAAAAAA-k/HreK3vVHAr8/aaaaaaaaaaaa.jpg

VW200 = T[oC]=(Digital value – 4000)/16

Giá tri 300 đó là giá trị nhiệt độ sau khi scale rồi, tức là nó nằm trong dãi nhiệt dộ từ -25 oC --> 175 oC, chứ ko phải là range từ 0 - 32000 đâu. -25 oC <= VW200 <= 175 oC
Giá trị 200 (Lo Limit) & giá trị 300 (Hi Limit) so sánh với giá trị VW200 trong khoản range này nè.

luon07
09-11-2010, 23:05
x 10 chỉ để hiển thị dc số lẻ thôi, td200 sẽ chỉnh dấu "." thành xx.x(200 >> 20.0)

qqasdfghjkl
11-11-2010, 23:49
VW200 = T[oC]=(Digital value – 4000)/16

Giá tri 300 đó là giá trị nhiệt độ sau khi scale rồi, tức là nó nằm trong dãi nhiệt dộ từ -25 oC --> 175 oC, chứ ko phải là range từ 0 - 32000 đâu. -25 oC <= VW200 <= 175 oC
Giá trị 200 (Lo Limit) & giá trị 300 (Hi Limit) so sánh với giá trị VW200 trong khoản range này nè.
Cảm ơn bạn Johny đã giúp đỡ. Mình sẽ tìm hiểu thêm. Chúc bạn vui vẻ và thành công trong cuộc sống.
+++---o0o---+++
Mình chưa hiểu về đoạn này có ai giúp mình với
http://dc236.4shared.com/img/FIBunlaT/0.3344140555965365/hhhhhhhhh.bmp
http://www.4shared.com/photo/FIBunlaT/hhhhhhhhh.html

xuan kt3
17-12-2010, 15:07
trong s7200 dùng "bộ" nào để hiển thị cho tín hiệu analog trong lập trình vậy?mình dùng cân điện tử,muốn so sánh giá trị đầu vào với đầu ra thì phải làm gì?thinkffff.mình mới tìm hiểu nên còn chưa bít nhiều,mong các bác giúp heng .thank.

ducnhabk
31-05-2013, 15:29
Mình dùng chính tip scale của siemens để chạy mô phỏng. dùng phần mềm S7 200 simulator, sử dụng thanh trượt AI0 để thay đổi giá trị đầu vào AIW0. Tuy nhiên thì m không thấy giá trị của VD100 thay đổi theo. tại sao vậy nhỉ ?