11 hay 12bit đó là độ phân giải của của Analog/ Digital. VD 2^12 =4096., 10v/4096= 0.00244140... Đây chính là độ phân giải của tín hiệu Analog. Trong PLC S7-200 Mặc định tín hiệu Analog INput là miền nhớ word ( 2 byte).
Thông báo
Collapse
No announcement yet.
Tìm hiểu Module Analog của PLC
Collapse
X
-
Chào các sư huynh.
Em dang sài con EM231 có 4 in (A+, A- , RA....),
Em có cặp nhiệt thermocoup (2 dây), em nối vào C+ và C- , các input còn lại em nối tắt.
Ở SW1, SM2 chọn ON.
Em nối như thế có đúng không.
Hiện em không nhận được giá trị từ modul EM231.
Nhờ các huynh chỉ giúp.
mail: mimochanh@yahoo.com
Comment
-
Nguyên văn bởi TheHouse Xem bài viếtKết quả lấy ra trong mô phỏng sao không đúng. Trong giáo trình, ngõ ra nó là 0-32,000. Nhưng khi mô phỏng, để giá trị maximum, nhưng khi đọc vùng nhớ AIW0 thì nó là 32,760,
Sao kỳ vậy.?
Có ba điều lưu ý khi dùng xử lý tín hiệu analog đó là tín hiệu đo, dải đo và độ phân dải.
Tín hiệu đo là: áp, dòng, điện trở nhiệt (mình viết vậy cho đơn giản).
Dải đo là: đơn cực, lưỡng cực, ví dụ: 0-10v, +-10V, ...
Độ phân dải là số bit lấy mẫu: 7, 8,...,12,...15 bit.
Vẫn đề bạn đang gặp thuộc về vấn đề độ phân giải. Bạn xem hình pic 1 dưới đây:
Siemens cung cấp khá nhiều module analog có nhiều độ phân dải, tối đa là 15bit như bạn thấy.
Và họ dùng một từ nhớ gồm 16bit để lưu giá trị chuyển đổi, trong đó bit cao nhất là bit dấu (chắc bạn đã biết), các bit còn lại là bit dữ liệu.
VD: phân tích với module EM 235, 12 bit, bạn sẽ thấy 3 bit cuối cùng sẽ ko được sử dụng, và như vậy độ phân dải tính theo dec là 8 đơn vị. Và giá trị lớn nhất mà có thể biểu diễn được sẽ là AQW0= 0111_1111_1111_1000 (binary) = 32760 (dec). Vậy tại sao siemens lại ghi là 32000 tương ứng với 10V (ví dụ), đây là qui định về dải đo (hi bạn lấy đồng hồ test nhé). Nếu bạn có một con EM 235 bạn thử xuất 32000 ra đầu ra nó sẽ cho ra đúng 10V, còn nếu bạn xuất 32760 thì nó sẽ là 10.23V (hi siemens nó thiết kế vậy) và từ 10V trở lên nó sẽ gọi là ngoài ngưỡng. Tương ứng với 32000 (dec)thì từ AQW0 chỉ là 0111_1101_0000_0000(binary) vậy đó.
Còn với S7-300 cũng tương tự vậy nhưng ngưỡng đo lại khác đó cũng là do nhà sản xuất thôi.
Bạn xem hình nhé.
Cho nên khi xử lý tín hiệu bạn cần phải biết giá trị ngưỡng đo và giá trị chuyển đổi tương ứng của từng module để scale cho chính xác.
Chúc bạn thành công.
Comment
-
Cảm ơn, mình hiểu nhiều hơn rồi. Mình không có module để test thử, nên chỉ test trên mô phỏng được thôi.
Ví dụ trên bạn đưa ra là test cho ngõ ra AQW, vậy chắc chắn ngõ vào cũng tương tự thế. Vậy có nghĩ là phần mô phỏng Analog cũng bị sai.
Comment
-
Một cảm biến nhiệt độ có tầm đo từ 0 đến 120oC. Điện áp ra của cảm biến theo tỉ lệ 15mV/oC. Viết chương trình theo yêu cầu: Khi nhiệt độ nhỏ hơn 40oC thì ngõ ra Q0.0 và Q0.1 ON, khi nhiệt độ lớn hơn 70oC thì tắt 2 ngõ ra.
Mấy sư huynh giúp dùm em với, cái này em pó tay, ko bit sử dụng lệnh gì nữa, mấy lệnh của s7-200 em còn biết đường mà viết, mà cái yêu cầu này sử dụng modual analog, xin mấy huynh chỉ giáo dùm em, àh quên yêu cầu sử dụng ngôn ngữ lập LAD. Cảm ơn trước nha.
E-mail: phamtamtslt@gmail.com
Comment
-
mà huynh nào có tài liệu trình bày đầy đủ về modual analog thì cho em xin với, em tìm chả thấy tài liệu nào viết về modual analog mà đầy đủ hết, đang làm đồ án môn học mà ko có tài liệu, thiệt là nản quá đi.
e-mail : phamtamtslt@gmail.com
Comment
-
Tài liệu analog đây.
Tai liệu tiếng anh của siemens. Mình đang làm đồ án tốt nghiệp với em235 đấy. Xem từ trang 483 nhé. Chúc vui. Nhớ kết nối đúng nhé. nguồn áp thì nối nguồn a+ a- thôi bỏ RA. Tương tự với B C D. Nhớ nối nối nguồn 24v cho em ấy nhé.Last edited by nguyentptn; 16-07-2010, 22:07.Xin đừng thanks nếu bài viết không hữu ích.
Comment
-
-
Nguyên văn bởi phamtamtslt Xem bài viếtmà huynh nào có tài liệu trình bày đầy đủ về modual analog thì cho em xin với, em tìm chả thấy tài liệu nào viết về modual analog mà đầy đủ hết, đang làm đồ án môn học mà ko có tài liệu, thiệt là nản quá đi.
e-mail : phamtamtslt@gmail.com
Thực ra việc xử lý tín hiệu analog ko phức tạp lắm đâu.
Bởi vì nhà thiết kế PLC đã làm hầu hết các công việc quan trọng cho chúng ta rồi.
Công việc của chúng ta là chỉ coding vài dòng lệnh đơn giản theo nhu cầu sử dụng mà thôi.
Bạn đã lập trình được PLC thì lập trình xử lý tín hiệu analog là vô tư chẳng qua là bạn chưa nắm rõ việc xử lý qui đổi tín hiệu, giá trị như thế nào thôi.
Vì vậy mình sẽ giải thích cách làm cho bạn còn viết thì bạn tự viết nhé, như thế mới đúng là SV.
Đầu tiên bạn cần trả lời cầu hỏi: Làm cách nào để PLC hiểu được lúc này nhiệt độ đang là x độ C?
Vì PLC chỉ hiểu được giá trị digital đã chuyển đổi thôi. Vậy thì công việc của chúng ta là kết nối phần cứng lập trình phần mềm để làm sao PLC hiểu được điều này. (nói hơi thừa nhỉ!)
VD: đối với cảm biến nhiệt độ của bạn, bạn đã xác định được giá trị điện tương ứng với giá trị nhiệt độ rồi. 0-120oC tương ứng x-y mV (có thể là 0 - 1800 mV). Vậy bạn phải chọn dip trên module ẸM 235 sao cho phù hợp với dải tín hiệu này chẳng hạn 0-5V. Sau đó bạn đấu dây như yêu cầu kỹ thuật của PLC và cảm biến nhiệt độ. Vậy là xong phần cứng.
Trước khi lập trình bạn phải check lại xem tín hiệu đã được PLC đọc vào và chính xác chưa. Bạn thử gia nhiệt cho thanh điện trở và đọc giá trị của word nhớ đầu vào analog tương ứng với đầu vào bạn đấu cảm biến (PIW0 chẳng hạn) xem giá trị có thay đổi ko và nếu tốt nữa bạn có một đồng hồ đo nhiệt thì check xem tỷ lệ nhiệt độ/điện áp ok chưa. Check sai số ...đây là lý do vì sao mình nói (có thể là 0 - 1800mV).
Ôi có việc bận rồi, hẹn T2 tiếp nhé.
Comment
-
Tiếp tục nhé bạn,
Để đơn giản mình bỏ qua các phần râu ria như nhiễu, sai số, hiệu chỉnh sai số, đầu tiên ta cứ mặc định là tín hiệu đưa về ok và đúng chuẩn.
Khi bạn chọn ngưỡng đo trên Em 235 là 0-5V thì giá trị chuyển đổi sẽ là 0-32000 (cái này đã giải thích trước rồi nhé). Vậy thì bây giờ bạn có thể vẽ ra được đường biểu diễn giữa nhiệt độ và giá trị chuyển đổi digital rồi (dựa vào giá trị trung gian là điện áp).
Cụ thể: 0-120oC tương ứng 0-1.8V và 0-5V tương ứng 0-32000 (dec). Vậy thì 0-120oC sẽ tương ứng với 0-y (dec). Ở đây bạn dùng pp tam suất bình thường thôi là tính ra được. Khi đã dựng được đường scale này bạn sẽ có thể tính toán được nhiệt độ cảm biến đo được là bao nhiêu khi giá trị đọc về là z(dec) qui tắc tam suất. Vậy thì lúc này ta có thể tạm gọi là PLC đã hiểu được hay đã biết được giá trị nhiệt độ trên cảm biến. Khi đã tính ra được giá trị nhiệt độ thực tế trên cảm biến việc còn lại quá đơn giản bạn chỉ việc so sánh với giá trị mong muốn và xuất đầu ra thôi hoặc hiển thị lên màn hình..v..v..
Chú ý là bạn sẽ thực hiện các lệnh công trừ nhân chia với số thực nên khi khai báo bạn phải sử dụng đúng kiểu dữ liệu và phải dùng các lệnh chuyển đổi kiểu dữ liệu cho phù hợp với các lệnh toán học.
Bạn cũng chỉ cần viết LAD thôi chả cần STL đâu cho phức tạp.
Còn vấn đề nhiễu tùy vào điều kiện thực tế cụ thể sẽ có cách khắc phục riêng, cũng có khi ăn may bạn chả phải gặp vấn đề này nhất là trong điều kiện mô hình học tập. Còn sai số offset rất dễ gặp nhưng cũng tùy có thể sẽ là không lớn, cách khắc phục đơn giản nhất đó là bạn scale đường giá trị theo ngưỡng hoạt động với giá trị thực tế của cảm biến nhiệt độ (VD thông thường cảm biến bạn hoạt động ở nhiệt độ 25oC - 100oC vậy bạn lấy hai điểm đó với giá trị 25oC tương ứng x(dec) 100oC tương ứng y(dec) mà PLC đọc về trên PIW, thực hiện scale dựa vào hai điểm đó, như vậy xem như là tương đối ổn.
Chúc bạn may mắn.
Comment
-
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
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
tip036b.mwp
Bao cao dieu khien lap trinh.exe
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!Last edited by qqasdfghjkl; 31-10-2010, 09:25.
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Tiếng Anh cho người Việtbởi nhathung1101Ngoại ngữ là không thể thiếu, nhất là làm việc với công nghệ.
Nhưng học để tán gái hay để đọc datasheet, manual là chuyện cần quan tâm.
Và đọc ở nguồn nào đáng tin cậy, chứ cứ lên tictok hay facebook học lỏm thì...-
Channel: Tâm tình dân kỹ thuật
hôm nay, 22:18 -
-
Trả lời cho Tiếng Anh cho người Việtbởi dinhthuong80Bác nói rất khách quan và chính xác. Ngoại ngữ là chìa khóa thăng tiến dù làm gì. Chả thế mà nay nước mình dạy tiếng Anh từ tiểu học.
Nhớ hồi năm 2006 em ra Hải Phòng, Hải Dương tìm việc, thời đó ở Bình Dương lương công...-
Channel: Tâm tình dân kỹ thuật
hôm nay, 14:51 -
-
Trả lời cho Tiếng Anh cho người Việtbởi dinhthuong80Cảm ơn bạn, ĐT cũng có ý nghĩ như vậy.
Thực ra, lỗi của hãng đó ( gọi là hãng vì không chỉ một model sản phẩm) là về phần cứng, ĐT tuy không biết về lập trình phần mềm nhưng cũng thấy rằng sẽ chẳng khó khăn gì đáng...-
Channel: Tâm tình dân kỹ thuật
hôm nay, 14:39 -
-
Trả lời cho Tiếng Anh cho người Việtbởi dinhthuong80Dạ, bác bảy mấy tuổi đời rồi cũng không kém bố cháu bao nhiêu. Tuổi nghề thì bác cũng đáng tuổi cha chú.
Nhưng 2 điều trên thì chưa hẳn đã đáng quí và đáng tôn trọng bằng việc bác rất nhiệt tình chia sẻ kinh nghiệm chuyên...-
Channel: Tâm tình dân kỹ thuật
hôm nay, 14:28 -
-
Trả lời cho Tiếng Anh cho người Việtbởi bqvietĐúng, nếu chú tâm thì chỉ cần mỗi tiếng Việt là đã khá đủ để làm đa số công việc thông thường, ở thời đại ngày nay khi tài liệu sách vở phương tiện thông tin liên lạc đã nhiều. Nhưng cũng chính ở thời nay giao lưu các nước nhiều...
-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 20:26 -
-
Trả lời cho Tiếng Anh cho người Việtbởi mèomướpDạ cháu nghĩ chú dinh... cứ mạnh dạn gửi thư đi ạ, chú có thể gửi bằng văn bản in chuyển phát nhanh sẽ có giá trị hơn. Vấn đề chưa hẳn là cần hãng làm gì đó, mà chỉ đơn giản là mình cảm thấy nhẹ lòng vì đã làm những việc bản...
-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 12:32 -
-
Trả lời cho Tiếng Anh cho người Việtbởi vi van phamNhững lần hắt hơi sổ mũi làm tôi mệt lã, phải dùng rượu uống để ngũ. Tôi cũng đang uống rượu 1 mình, viết vài dòng này cho em ( có lẽ dt chỉ bằng tuổi em tôi).
Dinh thuong dang đi vào vết xe đổ của tôi. Càng chứng minh, có...-
Channel: Tâm tình dân kỹ thuật
20-02-2025, 21:31 -
-
Trả lời cho Hỏi về cách hàn linh kiện ( giúp tớ với )bởi bqvietThiết nghĩ thi thoảng bác lên đây chia xẻ ít kinh nghiệm cũng vui rồi. Còn chuyện con người sinh lão bệnh tử là thường, sống cùng với quy luật đó thôi. Bqv nhớ trước đây bác từng kể về chuyện rang chì ô-xít bằng chảo để phục hồi bình điện, đấy cũng là thành quả đáng nể phục ở thời kỳ thiếu thốn đó.20-02-2025, 17:22
-
Trả lời cho Tiếng Anh cho người Việtbởi dinhthuong80Tiếng Anh, Đình Thường phải nói là rất tệ, khiến việc giao tiếp đời thường thôi cũng khó chứ nói gì về kĩ thuật.
Nhân tiện, nhờ các bạn, các bác xem giúp thư ĐT viết thế này liệu có thể gửi tới địa chỉ nhận hay chăng,...-
Channel: Tâm tình dân kỹ thuật
20-02-2025, 11:52 -
-
Trả lời cho Hỏi về cách hàn linh kiện ( giúp tớ với )bởi vi van phamUống rượu 1 mình, thấy trang này nhớ lại cách đây vài chục năm hàn thiếc với inox cực kỳ khó, phải dùng acid Hcl tác dụng lên kẻm Zn để có Zncl2 làm thuốc trợ hàn, lúc đó làm gì có acid Hcl và thuốc trợ hàn?
Cái khó bó cái...19-02-2025, 23:05
Comment