-
-
The Following 4 Users Say Thank You to tran_hieu0983 For This Useful Post:
-
Gửi bởi
tran_hieu0983
Mục này mở ra để cùng chia sẻ với mọi người phương pháp. Cách thức đọc code của chương trình STL làm sao cho có hiệu quả. Vấn đề này mở ra khi mình đi support cho nhà máy và đào tạo khá nhiều nên có một số kinh nghiệm nhỏ nhỏ đề cùng chia sẻ.
1. Khi đọc code STL phải nhìn tổng quan giao diện hệ thống và cách ghét nối thôi qua sử dụng phần mềm Step 7 bạn sẽ call struture để hiểu cấu trúc lập trình hệ thống và lưu đồ sử dụng trong đó từ đó đưa ra một cái nhìn tổng quan về code.
2. Phân tich code chương trình theo từng phhìân đoạn/ phân tích chương trình theo Block để xử lý.
3. Nếu gặp những chương trình bị khóa Function thì phải có chìa khóa:
http://tranhieu0983.com/tai-lieu/phan-mem-mo-khoa-fbfc
4. Mở code và việc tiếp theo là chúng ta đọc theo hệ thống/ giải thuật lập trình và kết quả là xong.
Cái mà mình đọc thấy mệt nhất chỉ là truy xuất thanh ghi của PLC thôi.
Nếu Bro nào có những chia sẻ khác mong cùng chia sẻ với mọi người.
Xin chào anh! em đang vướng mắc khi đọc chương trình điều khiển lò nung thép liên tục. Em xin được chương trình điều khiển PLC, về định đọc để dịch ra thuật toán ở đó là gì, mà khó quá. Có quá nhiều biến, phần chú thích thỉ ít, số lượng network nhiều...nhìn rối tung cả lên. Em vẫn chưa hiều: "Khi đọc code STL phải nhìn tổng quan giao diện hệ thống và cách ghép nối thôi qua sử dụng phần mềm Step 7 bạn sẽ call struture" là thế nào để áp dụng. và "Phân tich code chương trình theo từng phân đoạn/ phân tích chương trình theo Block để xử lý". Mong anh nói cụ thể hơn đc ko ạ? thanks!
-
-
Thành viên cấp 4
Nhận hợp tác lập trình các loại PLC và xử lý sự cố về hệ thống tự động hóa
Gm:
Hidden Content
-
-
Thành viên cấp 4
Chào anh Hiếu
Em có cái thắc mắc này muốn hỏi. tại sao khi dùng con trỏ ARn trong STL hay có cái đoạn như sau:
L #diachitruyxuat
SLW 3
LAR1
L 100.0
T MW [AR1 , P#0.0]
vd địa chỉ truyền thông của m bắt đầu là 3000. thì biến truyền vào #diachitruyxuat sẽ là 3000 trong chương trình gọi nó. nhưng tại sao lại luôn có dòng lệnh SLW 3
Thanks.
-
-
Thành viên cấp 3
Gửi bởi
thanhke_auto
Chào anh Hiếu
Em có cái thắc mắc này muốn hỏi. tại sao khi dùng con trỏ ARn trong STL hay có cái đoạn như sau:
L #diachitruyxuat
SLW 3
LAR1
L 100.0
T MW [AR1 , P#0.0]
vd địa chỉ truyền thông của m bắt đầu là 3000. thì biến truyền vào #diachitruyxuat sẽ là 3000 trong chương trình gọi nó. nhưng tại sao lại luôn có dòng lệnh SLW 3
Thanks.
có thể dùng để bỏ đi 3 bit đầu tiên không tính đến
-
-
Thành viên cấp 4
Gửi bởi
thanhke_auto
Chào anh Hiếu
Em có cái thắc mắc này muốn hỏi. tại sao khi dùng con trỏ ARn trong STL hay có cái đoạn như sau:
L #diachitruyxuat
SLW 3
LAR1
L 100.0
T MW [AR1 , P#0.0]
vd địa chỉ truyền thông của m bắt đầu là 3000. thì biến truyền vào #diachitruyxuat sẽ là 3000 trong chương trình gọi nó. nhưng tại sao lại luôn có dòng lệnh SLW 3
Thanks.
Vì 3 bit cuối là địa chỉ bít nên anh phải dịch trái 3 bit, chứ k thì địa chỉ 3000 k còn đúng nữa
Nhận hợp tác lập trình các loại PLC và xử lý sự cố về hệ thống tự động hóa
Gm:
Hidden Content
-
Bài viết của "Mechatronic_Hieu" đã được cám ơn bởi các thành viên:
-
Thành viên cấp 1
hay qua
-
-
Gửi bởi
hoanglonghui
có thể dùng để bỏ đi 3 bit đầu tiên không tính đến
* Chuẩn đấy: ví dụ #diachitruyxuat = 1000 thì sau lệnh SLW 3 sẽ có giá trị là 1000x2^3 =?
-
-
Mình cũng đang tập viết chương trình theo kiểu con trỏ này, mong mọi người giúp đỡ nhé.
-
-
Thành viên cấp 3
Gửi bởi
thanhke_auto
Chào anh Hiếu
Em có cái thắc mắc này muốn hỏi. tại sao khi dùng con trỏ ARn trong STL hay có cái đoạn như sau:
L #diachitruyxuat
SLW 3
LAR1
L 100.0
T MW [AR1 , P#0.0]
vd địa chỉ truyền thông của m bắt đầu là 3000. thì biến truyền vào #diachitruyxuat sẽ là 3000 trong chương trình gọi nó. nhưng tại sao lại luôn có dòng lệnh SLW 3
Thanks.
em thì mới tìm hiểu con trỏ được vài tuần
Con trỏ có con trỏ địa phương và con trỏ toàn cục (em đọc trong sách của Nguyễn Doãn Phước)
Con trỏ mà anh đang dùng là con trỏ địa phương
cấu trúc con trỏ thì như hình
Screenshot_1.jpg
theo cái hình thì 3 bit cuối luôn là đỉa chỉ bít vì vậy cần dịch trái 3 bít thì mới thu được dữ liệu có cấu trúc của con trỏ như hình
vì con trỏ của anh là con trỏ địa phương nên mới phải làm thế, còn nếu là con trỏ toàn cục thì k có
con trỏ toàn cục theo em biết thì thường dụng lệnh L D [ARx,P#2.0] để lấy địa chỉ
-
Tag của Chủ đề này
Quyền viết bài
- Bạn Không thể gửi Chủ đề mới
- Bạn Không thể Gửi trả lời
- Bạn Không thể Gửi file đính kèm
- Bạn Không thể Sửa bài viết của mình
-
Nội quy - Quy định
Back to Top
Múi giờ GMT +7. Bây giờ là 02:32 AM.
Phiên bản 4.2.5
Phát triển bởi thành viên PLCVietNam®.
Đánh dấu