Tài liệu Bai 3

  • Số trang: 24 |
  • Loại file: DOC |
  • Lượt xem: 406 |
  • Lượt tải: 0
hieunguyen1126025

Tham gia: 04/04/2018

Mô tả:

Bai giang S7 300 rất cơ bản, dễ hiểu
BÀI 3 SỬ DỤNG BỘ TIMER VÀ COUNTER 1. Sử dụng bộ TIMER. 1.1. Nguyên tắc hoạt động. Bộ thời gian (Timer) là bộ tạo thời gian trễ  mong muốn giữa tín hiệu logic đầu vào u(t) và tín hiệu logic đầu ra y(t). u(t) PV Timer y(t) CV T-bit Thời gian trễ đặt trước S7-300 có 5 loại Timer khác nhau. Thời gian trễ  mong muốn được khai báo với Timer bằng một giá trị 16 bits bao gồm hai thành phần: - Độ phân dải với đơn vị ms. Timer của S7-300 có 4 loại độ phân dải khác nhau là 10ms, 100ms, 1s và 10s. - Một số nguyên (BCD) trong khoảng 0 999 được gọi là PV (Preset Value-giá trị đặt trước). Vậy thời gian trễ mong muốn sẽ là: = Độ phân dải x PV  1514131211109876543210 Không sử dụng Độ phân dải 0010ms01100ms10 1s1110s Giá trị PV dưới dạng mã BCD 0PV999 Ngay tại thời điểm kích Timer, giá trị PV được chuyển vào thanh ghi 16 bits của Timer T-Word (gọi là thanh ghi CV). Timer sẽ ghi nhớ khoảng thời gian trôi qua kể từ khi được kích bằng cách giảm dần một cách tương ứng nội dung thanh ghi CV. Nếu nội dung thanh ghi trở về 0 thì Timer đã đạt được giá trị mong muốn  và điều này sẽ được báo ra ngoài bằng cách đổi trạng thái tín hiệu y(t). Việc thông báo ra ngoài bằng cách thay đổi trạng thái tín hiệu đầu ra y(t) như thế nào còn phụ thuộc vào loại Timer nào được sử dụng. Bên cạnh sườn lên của tín hiệu đầu vào u(t), Timer còn có thể được kích bằng sườn lên của tín hiệu kích chủ động có tên là tín hiệu enable nếu như tại thời điểm có sườn lên của tín hiệu enable và tín hiệu đầu vào u(t) có giá trị logic 1. Nguyên lý làm việc của Timer Tín hiệu đầu vào u(t) Tín hiệu enable Giá trị PV Nội dung thanh ghi CV   Thời điểm Timer được kích Từng loại Timer được đánh số từ 0 255. Tùy thuộc từng loại CPU). Timer ký hiệu là Tx với x là số hiệu của Timer (0 x 255). Ký hiệu Tx đồng thời cũng là địa chỉ hình thức của thanh ghi CV (T-Word) và đầu ra (T_bit) của Timer đó. Tuy có cùng địa chỉ hình thức nhưng T-Word và T-bit vẫn được phân biệt với nhau nhờ toán hạng Tx. Khi dùng lệnh làm việc làm việc với từ, T-bit đượ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, Tx được hiểu là địa chỉ của T-bit. Một Timer có thể được đưa về trạng thái chờ khởi động ban đầu bằng lệnh Reset. Khi đó, T-Word và T-bit đồng thời được xóa về 0, tức là thanh ghi đếm tức thời CV được đặt về 0 và tín hiệu đầu ra cũng có trạng thái logic bằng 0. 1.2. Các loại Timer của S7-300. 1.2.1. Tổng quan chung S7-300 có 255 Timer, được chia thành các loại khác nhau : - S_PULSE: Tạo xung không có nhớ - S_PEXT: Tạo xung có nhớ - S_SDT: Trễ theo sườn lên không có nhớ - S_ODTS: Trễ theo sườn lên có nhớ - S_OFFDT: Trễ theo sườn xuống. 1.2.2. Khai báo sử dụng Timer Khai báo sử dụng một Timer bao gồm các bước : - Khai báo tín hiệu enable nếu muốn sử dụng tín hiệu chủ động kích - Khai báo tín hiệu đầu vào u(t) - Khai báo thời gian trễ mong muốn - Khai báo loại Timer được sử dụng (SD, SS, SP, SE, SF) - Khai báo tín hiệu xóa Timer nếu muốn sử dụng chế độ reset chủ động Trong tất cả các bước thì bước 2, 3, 4 là bắt buộc. 1.2.2.1. Timer S_PULSE .  Kí hiệu Txxx S_PULSE S Q TV BI R BCD Thông số Txxx S TV R BI Loại Data TIMER BOOL S5TIME BOOL WORD Vùng nhớ T I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Miêu tả Tín hiệu vào Thời gian đặt Reset Thời gian còn lại Dạng I BCD Q WORD BOOL I, Q, M, L, D I, Q, M, L, D Thời gian còn lại Dạng BCD Trạng thái Timer  Giản đồ thời gian: S R   CV Q Timer S_PULSE bắt đầu đếm giảm từ giá trị đặt TV về 0 khi đầu vào cho phép hoạt động của Timer có giá trị chuyển từ 01. Trạng thái đầu ra Q bật lên “1” trong quá trình Timer đếm. Tuy nhiên, nếu tín hiệu vào S chuyển từ 10 trước khi Timer đếm về 0 thì trạng thái của bit đầu ra Q chuyển ngay xuống 0. Bộ Timer được reset (R) khi tín hiệu đầu vào R chuyển từ 01. Khi đó, T-Word (thanh ghi CV) và T-bit cũng đồng thời được đưa về 0. Nếu tín hiệu xóa về 0, Timer sẽ chờ được kích lai.  Thanh ghi trạng thái: BR - CC1 - CC0 - OV - Ví dụ:  Mô phỏng bằng PLCSIM: OS - OR x STA x RLO x FC 1 Nếu tín hiệu đầu vào I124.0 chuyển từ 01, Timer sẽ bắt đầu đếm lùi. Bộ đếm sẽ tiếp tục đếm hết 20s trong khi tín hiệu I124.0 giữ là 1. Nếu trước khi thời gian đặt của Timer được đếm về 0 mà tín hiệu I124.0 chuyển từ 1 xuống 0 thì Timer sẽ dừng lại. Đầu ra Q124.0 là 1 khi Timer đang đếm và bằng 0 khi có tín hiệu reset hay hết thời gian đặt. 1.2.2.2. Timer S_PEXT. Txxx  Kí hiệu S_PEXT S Q TV BI R BCD Thông số Txxx S TV R BI Loại Data TIMER BOOL S5TIME BOOL WORD Vùng nhớ T I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Miêu tả Tín hiệu vào Thời gian đặt Reset Thời gian còn lại Dạng I BCD Q WORD BOOL I, Q, M, L, D I, Q, M, L, D Thời gian còn lại Dạng BCD Trạng thái Timer  Giản đồ thời gian: S R   CV Q Thời gian giữ trễ được bắt đầu tính từ khi xuất hiện sườn lên của tín hiệu vào(S), tức là ở ngay thời điểm đó giá trị PV được chuyển vào thanh ghi T-Word(CV). Trong khoảng thời gian trễ, tức là khi T-Word 0, T-bit có giá trị bằng 1. Ngoài khoảng thời gian trễ T-bit có giá trị bằng 0. Nếu chưa hết thời gian trễ mà tín hiệu đầu vào về 0 thì thời gian trễ vẫn được tính tiếp tục, tức là T-bit và T-Word không về 0 theo tín hiệu đầu vào.  Thanh ghi trạng thái: BR - Ví dụ: CC1 - CC0 - OV - OS - OR x STA x RLO x FC 1 Nếu tín hiệu vào I124.0 chuyển từ 0 lên 1, Timer T5 sẽ được khởi động. Timer sẽ tiếp tục chạy hết thời gian đặt (PV) mà không phụ thuộc vào tín hiệu đầu vào S. Tín hiệu đầu ra Q124.0 bằng 1 từ khi có đầu vào I 124.0 đến hết thời gian đặt PV. Timer sẽ được reset lại khi tín hiệu vào I 124.1 bằng 1.  Mô phỏng bằng PLCSIM: 1.2.2.3. Timer S_ODT.  Kí hiệu Txxx S_ODT S Q TV BI R BCD Thông số Txxx S TV R BI Loại Data TIMER BOOL S5TIME BOOL WORD Vùng nhớ T I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Tín hiệu vào Thời gian đặt Reset Thời gian còn lại Dạng I BCD Q WORD BOOL I, Q, M, L, D I, Q, M, L, D Thời gian còn lại Dạng BCD Trạng thái Timer  Giản đồ thời gian: Miêu tả S R    CV Q Thời gian giữ trễ được bắt đầu khi có sườn lên của tín hiệu đầu vào(S), tức là ở ngay thời điểm đó giá trị PV được chuyển vào thanh ghi T-Word(CV). Trong đó, khoảng thời gian trễ T-bit có giá trị bằng 0. Khi hết thời gian trễ T-bit có giá trị bằng 1. Như vậy, T-bit có giá trị bằng 1 khi T-Word bằng 0. Khoảng thời gian trễ chính là khoảng thời gian giữa thời điểm xuất hiện sườn lên của tín hiệu đầu vào và sườn lên của T-bit. Khi tín hiệu vào bằng 0, T-bit và T-Word cùng nhận giá trị 0. Khi có tín hiệu reset ở đầu vào R tín hiệu ra Q(T-Word) trở về 0.  Thanh ghi trạng thái: BR - CC1 - CC0 - OV - OS - OR x STA x RLO x Ví dụ: Nếu tín hiệu đầu vào I 124.0 chuyển trạng thái từ 0 lên 1, Timer T30 sẽ được khởi động. Nếu như thời gian trễ kết thúc và tín hiệu đầu vào I 124.0 vẫn là 1 thì tín hiệu đầu ra Q124.0 sẽ đươc bật lên 1. Nếu tín hiệu đầu vào I 124.0 chuyển trạng thái từ FC 1 1 xuống 0, bộ Timer dừng lại và đầu ra Q 124.0 sẽ bằng 0. Nếu tín hiệu đầu vào R chuyển trạng thái từ 1 lên 0, Timer sẽ được reset dù thời gian trễ còn hay không.  Mô phỏng bằng PLCSIM: 1.2.2.4. Timer S_ODTS. Txxx  Kí hiệu S_ODTS S Q TV BI R BCD Thông số Txxx S TV R BI Loại Data TIMER BOOL S5TIME BOOL WORD Vùng nhớ T I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Miêu tả Tín hiệu vào Thời gian đặt Reset Thời gian còn lại Dạng I BCD Q WORD BOOL I, Q, M, L, D I, Q, M, L, D Thời gian còn lại Dạng BCD Trạng thái Timer  Giản đồ thời gian: S R    CV Q Thời gian giữ trễ được bắt đầu khi có sườn lên của tín hiệu đầu vào(S), tức là ở ngay thời điểm đó giá trị PV được chuyển vào thanh ghi T-Word(CV). Khi hết thời gian trễ, tức là khi T-Word =0, T-bit có giá trị băng 1. Khoảng thời gian trễ chính là khoảng thời gian giữa thời điểm xuất hiện sườn lên của tín hiệu đầu vào và sườn lên của T-bit. Với bộ Timer có nhớ thời gian trễ vẫn được tính cho dù lúc đó tín hiệu đầu vào đã về 0. Khi tín hiệu vào bằng 0, T-bit và T-Word cùng nhận giá trị 0. Khi có tín hiệu reset ở đầu vào R tín hiệu ra Q(T-Word) trở về 0.  Thanh ghi trạng thái: BR - CC1 - CC0 - OV - OS - OR x STA x RLO x FC 1 Ví dụ: Nếu tín hiệu đầu vào I 124.0 chuyển trạng thái từ 0 lên 1, Timer T30 sẽ được khởi động. Timer sẽ chạy mà không quan tâm đến tín hiệu đầu vào I 124.0. Nếu tín hiệu đầu vào I 124.0 chuyển trạng thái từ 0 lên 1 trước khi hết thời gian trễ, bộ Timer sẽ khởi động lại. Đầu ra Q 124.0 sẽ bằng 1 khi thời gian trễ kết thúc.. Nếu tín hiệu đầu vào R chuyển trạng thái từ 1 lên 0, Timer sẽ được reset dù thời gian trễ còn hay không.  Mô phỏng bằng PLCSIM: Txxx 1.2.2.5. Timer S_OFFDT  Kí hiệu S_OFFDT S Q TV BI R BCD Thông số Txxx S TV R BI Loại Data TIMER BOOL S5TIME BOOL WORD Vùng nhớ T I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D I, Q, M, L, D Miêu tả Tín hiệu vào Thời gian đặt Reset Thời gian còn lại Dạng I BCD Q WORD BOOL I, Q, M, L, D I, Q, M, L, D Thời gian còn lại Dạng BCD Trạng thái Timer  Giản đồ thời gian: S R CV Q    Thời gian giữ trễ được bắt đầu khi có sườn xuống của tín hiệu đầu vào(S), tức là ở ngay thời điểm đó giá trị PV được chuyển vào thanh ghi T-Word(CV). Trong khoảng thời gian giữa sườn lên của tín hiệu vào hoặc T-Word khác 0, thì T-bit có giá bằng 1. Ngoài khoảng đó T-bit có giá trị bằng 0. Khi tín hiệu vào bằng 0, T-bit và T-Word cùng nhận giá trị 0. Khi có tín hiệu reset ở đầu vào R, tín hiệu ra Q(T-Word) trở về 0.  Thanh ghi trạng thái: BR - CC1 - CC0 - OV - OS - OR x STA x RLO x Ví dụ: Nếu tín hiệu đầu vào I 124.0 chuyển trạng thái từ 1 xuống 0, Timer sẽ được khởi động. Đầu ra Q có giá trị bằng 0 khi đầu vào I 124.0 bằng 1 hoặc khi bộ Timer đang đếm. Nếu tín hiệu đầu vào I 124.1 chuyển từ 0 lên 1 trong khi bộ Timer chưa hết thời gian trễ, Timer sẽ bị reset. FC 1  Mô phỏng bằng PLCSIM: 1.2.3. Bài tập ứng dụng bộ timer. Điều khiển động cơ chạy, dừng theo chế độ sao- tam giác : Yêu cầu bài toán : Bấm nút Start đóng động cơ chạy. Khi chạy có khởi động sao tam giác Bấm nút Stop dừng động cơ. Ký hiệu: Start : I0.0 Stop : I0.1 K1 : Q0.0 K2 : Q0.1 K3 : Q0.2 Phân tích bài toán Khi nhấn Start động cơ chạy theo theo chế độ sao Khi hoạt động cơ ở chế sao thì đóng Contactor K1, K2. Khởi tạo timer T0, tạo trễ trong khoảng thời gian 5s Khi hoạt động cơ ở chế tam giác thì đóng Contactor K1, K3. Chương trình main: Bài tập về nhà : 1. Tạo xung vuông như hình vẽ: 5ms 10ms 2. Bài toán đèn giao thông ngã tư : Giản đồ thời gian được cho như sau (bạn đọc hãy tự phân tích để có giản đồ này) Timer Blue(A) Yellow(A) Red(A) Red(B) Blue(B) Yellow(B) 2. Sử dụng bộ COUNTER. 2.1. Giới thiệu về Counter. 2.1.1. Nguyên tắc làm việc. Counter là bộ đếm thực hiện chức năng đếm sườn (cạnh) xung của tín hiệu đầu vào. S7-300 có tối đa 256 counter (Phụ thuộc vào từng loại CPU) Ký hiệu: Cx, Trong đó x là số nguyên từ 0->255. Tín hiệu đếm tiến CU C-Bit Báo trạng thái C-Word C-Word Số sườn xung đếm được ghi vào thanh ghi 2 byte ( Word ) của bộ đếm gọi là thanh ghi C_Word ( CV). Bộ đếm khai báo trạng thái của C_Work ra ngoài qua chân C_Bit của nó : Nếu CV # 0 thì C_bit =1. Ngược lại CV=0 thì C_bit = 0 Giá trị đặt trước PV ( Present Value ) của bộ đếm chỉ được truyền vào C_Word tại thời điểm xuất hiện sườn lên của tín hiệu đặt ( Set ) S. Bộ đếm có thể được xóa bằng tín hiệu Reset. Khi bộ đếm được xóa thì cả C_Word và C_bit đều có giá trị = 0 2.1.2. Phân loại.  Bộ đếm lên : Counter Up ( S_CU)  Bộ đếm lùi : Counter Down (S_CD)  Bộ đếm tiến lùi :Counter UpDown ( S_CUD )
- Xem thêm -