b) Trong STL
Đối với TON, TONR trong STL khai báo sử dụng Timer của S7-200. Lệnh khai báo sử dụng Timer có điều kiện. Tại thời điểm khai báo tín hiệu đầu vμo có giátrị logic của bit đầu tiên trong ngăn xếp.
Chú ý:
Khi dùng Timer kiểu TONR giá trị đếm tức thời lưu lại vμ không bị thay đổi trong khoảng thời gian khi tín hiệu đầu vμo có giá trị logic 0. Giá trị T_bit không được nhớ mμ hoμn toμn phụ thuộc vμo kết quả so sánh giữagiá trị đếm tức thời vμ giá trị đặttrước.
Các Timer được đánh số từ 0 ữ 63 với CPU212 hay từ 0 ữ127 (CPU 214). MộtTimer đặt Txxx trong đó Txxx lμ số hiệu của Timer. Txxx đồng thời lμ địa chỉ hìnhthức T_word, T_ bit của Timer đó. Tuy chúng có cùng địa chỉ hình thức, song T_word, T_bit phân biệt nhờ kiểu lệnh sử dụng với Txxx. Khi dùng lệnh lμm việc với từ, Txxx được hiểu lμ địa chỉ của T_word, ngược lại khi sử dụng lệnh lμm việc với tiếp điểm, Txxx được hiểu lμ địa chỉ T_bit.
Một Timer đang lμm việc có thể được đưavề trạng thái khởi động ban đầu. Công việc đưamột Timer về trạng thái ban đầu gọi lμ Reset Timer đó.
Khi Reset một bộ Timer, T_word vμ T_bit của nó đồng thời được xoá vμ có giá trị bằng 0, nên giá trị đếm tức thời đặt về 0 vμ tín hiệu đầu ta cũng có trạng thái logic bằng 0. Có thể Reset bất cứ bộ Timer nμo của S7-200 bằng lệnh Reset. Chứng tỏ R choT_bit của một Timer. Timer đó sẽ được đưa về trạng thái ban đầu vμ có hai phương pháp Reset một Timer kiểu TON lμ xoá tín hiệu đầu vμo hoặc dùng R.
- Cập nhập Timer có độ phân giải 1ms cho phép PLC cập nhập vμ thay đổi giá trị đếm tức thời T_word mỗi 1ms một lần. Timer có độ phân giải thấp nμy có khả năng điều khiển chính xác một thao tác việc cập nhập T_word hoμn toμn tự động. Bộ Timer1ms không phụ thuộc vμo vòng quét của bộ điều khiển vμ bộ chương trình đang. Giá trị đếm tức thời T_bit của bộ Timer nμy có thể được cập nhập bất cứ thời điểm nμo trongvòng quét vμ cập nhập nhiều lần trong một vòng quét nếu thời gian vòng quét lớn hơn 1ms.
- Thực hiện lệnh Reset với một Timer có độ phân giải 1ms đang ở trạng thái lμm việc tức thời lμ đưaTimer đó về trạng thái ban đầu, giá trị đếm tức thời của Timer được về 0 vμ T-bit nhận giá trị logic bằng 0.
- Cập nhập Timer có độ phân giải 10ms: khi đã được kích việc cập nhập T_word vμ T_bit để thay đổi giá trị đếm tức thời vμ trạng thái logic đầu ra của mộtTimer nμy không phụ thuộc vμo chương trình vμ cũng hoμn toμn tự động, mỗi vòngquét một lần vμ tại đầu vòng quét. Thực hiện lệnh Reset với một Timer đang ở trạng thái lμm việc lμ đưaTimer về ban đầu vμ xoá T_word, T_bit của Timer.
Do việc cập nhập T_word của Timer chỉ đượcthực hiện tự động mỗi vòng quétmột lần nên thời điểm thay đổi giá trị đếm tức thời vμ logic T_bit của Timer có thể bị trôi trong khoảng 10ms.
- Cập nhập Timer có độ phân giải 100ms: đa phần các bộ Timer của S7-200 lμ có độ phân giải 100ms vμ được tính tại đầu vòng quét vμ thời gian để tính sẽ lμ khoảng thời gian đầu vòng quét trước đó.
Việc cập nhập để thay đổi giá trị đếm tức thời của Timer chỉ được tiến hμnh ngay tại thời điểm có lệnh khai báo cho Timer trong chương trình. Nên quá trình cập nhật giá trị đếm tức thời không phải lμ quá trình tự động vμ không nhất thiết phải thực hiện một lần trong mỗi vòng quét ngay cả khi Timer đã được kích. Trong trường hợp lệnh Timer 100ms được khai báo nhiều lần trong một vòng quét thì xảy ra hiện tượng giá trị lưutrữ bị cộng nhiều lần với giá trị đếm tức thời, nên sử dụng lệnh khai báo Timer 100ms chính xác một lần trong một vòng quét.
Hiệu quả cập nhật giátrị tức thời Timer 1ms, 10ms, 100ms do độ phân giải khác nhau được thực hiện tại các thời điểm khác nhau phụ thuộc vμo việc sử dụng các Timer đó.