1 Attachment(s)
Xây dựng thư viện hàm cho PLC
Good moring all,
Mục đích của mình khi viết chủ đề này nhằm huy động trí lực và kinh nghiệm của tất cả anh em nhằm xây dựng một thư viên hàm cho các hãng PLC ( bắt đầu với S7300/400).
Có thể một số anh em sẽ rất ngạc nhiên khi đọc bài này vì có thể thắc mắc tại sao chúng ta lại xây dựng lại các hàm làm gì trong khi chúng ta đã có các FB,FC,SFB,SFC có trong thư viện của Step 7. Mình xin mạn phép lý giải thế này:
- Thứ nhất, các bạn có thể thấy, thư viện của S7 chưa đủ để các bạn có thể thực thi các ứng dụng
- Thứ hai, với những ai đang nghiên cứu, học tập chuyên sâu về PLC thì hệ thống hàm thư viện là thực sự quan trọng để hiểu cặn kẽ mọi vấn đề.
- Thứ ba, nếu chúng ta có 1 hệ thống hàm thư viện thì chúng ta sẽ ko bị ràng buộc bất cứ điều gì vì đó là do chúng ta tạo ra, chúng ta hiểu rõ hơn ai hết, do vậy, chúng ta mới thực sự là những người am hiểu PLC một cách cặn kẽ nhất.
Hiện tại thì mình đã xây dựng khá đầy đủ thư viện hàm cho S7 và đang cố gắng xây dựng cho họ PLC Allen-Bradley
Nhưng, biển học là vô bờ, có thể anh em còn có nhiều phương án giải quyết hay hơn và mình rất mong chờ điều đó từ các anh em trong diễn dàn.
Đầu tiên, hãy bắt đầu bằng 1 số hàm đơn giản :
1) Reset Range of Outputs (RSET): FC82
-------------------------------------------------
Description: The Reset Range of Outputs (RSET) function resets the signal state of each
bit in a specified range to 0 if the MCR bit is 1. If the MCR bit is 0, the
signal state of each bit in the range remains unchanged. The number of bits
in the range to be reset is specified by N, and the starting point of the range is
pointed to by S_BIT
Parameter | Declaration | Data Type | Memory Area | Description
---------------------------------------------------------------------------------------------------------
EN | Input | BOOL |I, Q, M, D, L | Enable input with signal state of 1
activates the box
---------------------------------------------------------------------------------------------------------
ENO Output BOOL I, Q, M, D, L Enable output has a signal state of 1 if
the function is executed without error
---------------------------------------------------------------------------------------------------------
S_BIT Input Pointer* I, Q, M, D Points to the first bit in the range
---------------------------------------------------------------------------------------------------------
N Input INT I, Q, M, D, L, P or constant Number of bits in the range
to be reset
---------------------------------------------------------------------------------------------------------
Các bạn có thể tham khảo thêm cún : "Standard Software for S7-300 and S7-400" để biêt rõ thêm chi tiết của hàm
Lưu ý các anh em: Mục đích trước mắt của chúng ta là viết lại các hàm có chức năng tương đương trong thư viện, nhờ đó mà chúng ta học hỏi được nhiều thứ, chúng ta đừng cho ý tưởng viết lại này là quá điên rồ, vì trước mắt chúng ta cần nắm vững ngôn ngữ lập trình.
Good luck to all,