Mọi người cho mình hỏi: Mình muốn lưu một giá trị đọc về từ cảm biến tại 10 thời điểm khác nhau vào một mảng Array[1..10] trong khối DB thì làm thế nào? Rất mong mọi người giúp đỡ!
Mọi người cho mình hỏi: Mình muốn lưu một giá trị đọc về từ cảm biến tại 10 thời điểm khác nhau vào một mảng Array[1..10] trong khối DB thì làm thế nào? Rất mong mọi người giúp đỡ!
Lần sửa cuối bởi BKVuDuyTu, ngày 04-13-2015 lúc 06:20 PM.
Bạn viết trong chương trình ngắt nhé. Có thể sử dụng OB30 - OB38 khi mỗi lần ngắt thì cho tăng giá trị DBW (nếu sử dụng kiểu INT) hay DBD.. (nếu sử dụng kiểu Real) tăng lên là được.
Ưu thế thì sử dụng code STL nhé. Coi hình minh họa cho vui nhé bạn
123.jpg
Network 1: Open DB with indirect addressing
L #dbnumber // Copy DB number in MW100
T MW 100 //
OPN DB[MW 100] // Open DB
Network 2: Loop for deleting
L P#18.0 // Store end address (DBW18) as Pointer
T MD 40 // in MD 40;
L 10 // Preset loop counter to 10
next: T MB 50 // and transfer into MB 50;
L 0 // Load initialization value
T DBW[MD 40] // and transfer into the DB;
L MD 40 // Load Pointer
L P#2.0 // and decrease by 2 bytes
-D // and then transfer back
T MD 40 // to MD 40;
L MB 50 // Load loop counter
LOOP next // decrease and if necessary jump;
Code đã có, minh họa đã có còn lại đọc hiểu và chỉnh nhé bạn.
Dạ , em cảm ơn anh Hiếu ạ ! Em chỉ biết dùng mỗi Ladder, làm luôn theo cách của anh ạ :D
1.PNG
Nhờ cao thủ giúp đỡ !
anh Hiếu ơi, anh giúp em thêm 1 phần nữa với ạ, em không load được FC 106 xuống PLC SIm, mà khi em thay đổi đầu vào PIW10 thì cái MD 12 và cái đầu ra PQW24 kia nó vẫn = 0 ạ , anh , em cảm ơn anh nhiều ạ !
Nhìn mà sao chẳng hiểu nhỉ, kiến thức mình đã học
Đọc lại phần và khai báo dữ liệu đi bạn. Cái gì cũng hỏi mà tham số thì chẳng hiểu cái gì sao mà hỏi? Các chân của từng khối hàm có tác dụng gì? Khi nó là 0 hay 1 thì có tác dụng gì? Tầm giá trị như thế nào? Báo lỗi ra sao?
Bạn chưa đọc mà thấy người ta làm rồi làm theo kiểu vẹt vậy cẩn thận chỉ là mô phỏng thì ko sao chạy thật có ngày đền bù đúng tội luôn.
Kiểm tra lại là ra chứ khỏi cần phải chỉ. Đồng thời bạn hỏi cũng không đúng chỗ nên không trả lời. Thế nhé.
Lần sửa cuối bởi gcdgcd, ngày 04-21-2015 lúc 03:33 PM.
gcdpham,
Siemens Solution
PLC, HMI, SCADA, Upgrade S5toS7, SimaticNet, OPC,...
Control Engineer.
Email: Hidden Content
cái này em fixx đc rồi ạ, là do trùng địa chỉ MD và MW, đầu tiên em tưởng là nó ở 2 vùng nhớ khác nhau, hóa ra nó là cùng 1 vùng nhớ MB ạ, đúng là kiến thức học được hạn hẹp quá, cám ơn anh Trần Hiếu đã nhắc nhở ạ !
CÒn phần lưu mảng, em đã dùng WIn CC ok rồi ạ, nó có vẻ ổn và dễ lập trình hơn
Đánh dấu