Sử dụng bộ đếm tốc độ cao:

Một phần của tài liệu 253128 (Trang 63 - 68)

THIẾT BỊ ĐIỀU KHIỂN KHẢ LẬP TRèNH 3.1 Giới thiệu thiết bị khả lập trỡnh PLC SIMATIC S7-200.

3.2.10.Sử dụng bộ đếm tốc độ cao:

Bộ đếm tốc độ cao được sử dụng để theo dừi và điều khiển cỏc quỏ trỡnh cú tốc độ cao mà PLC khụng thể khống chế được do bị hạn chế về thời gian của vũng quột.

Trong CPU 224 cú ba bộ phận đếm tốc độ cao được đỏnh số lần lượt là: HSC0, HSC1 và HSC2. Nguyờn tắc hoạt động của bộ đếm tốc độ cao cũng tương tự như cỏc bộ đếm thụng thường khỏc, tức là đếm theo sườn lờn của tớn hiệu đầu vào. Số đếm được sẽ được hệ thống ghi nhớ vào một ụ nhớ đặc biệt

trước là một số nguyờn 32 bit được lưu trong một ụ nhớ kiểu từ kộp, ký hiệu là PV.

Chọn chế độ làm việc cho bộ đếm tốc độ cao bằn lệnh HDFE và chỉ cú thể kớch bộ đếm sau khi đó khai bỏo chế độ làm việc bằng lệnh HSC.

Nguyờn lý làm việc của cỏc bộ đếm tốc độ cao:

HSC0: Tần số đếm cực đại cho phộp của HSC0 là 2 KHz. Bộ đếm HSC0 sử dụng một cổng vào là I0.0 và chỉ cú một chế độ làm việc duy nhất là đếm tiến hoặc lựi số cỏc sườn lờn của tớn hiệu đầu vào tại ngừ vào I0.0.

HSC0 sử dụng từ kộp SMD38 để lưu giỏ trị đếm tức thời CV, giỏ trị đặt trước PV được ghi vào từ kộp SMD42 ( cả hai giỏ trị PV và CV là những số nguyờn 32 bit cú dấu ).

Chiều đếm tiến/lựi của HSC0 được quy định bởi trạng thỏi của bit SM37.3 như sau: SM37.3=0 đếm lựi theo sườn lờn của I0.0=1 đếm tiến theo sườn lờn của I0.0.

Cỏc bước khai bỏo sử dụng HSC0 ( nờn thực hiện tại vũng quột đầu tiờn ): Nạp giỏ trị điều khiển phự hợp cho SMB37.

Xỏc định chế độ làm việc cho bộ đếm bằng lệnh HDEF ( do HSC0 cú một chế độ làm việc nờn lệnh xỏc định sẽ là: HDEF K0 K0).

Nạp giỏ trị tức thời ban đầu và giỏ trị đặt trước vào SMD38 và SMD42. Khai bỏo sử dụng chế độ ngắt vào ra và kớch tớn hiệu bỏo ngắt HSC0 bằng lệnh ATCH.

HSC1: Tần cực đại tại ngừ vào là 7KHz.

HSC1 là một bộ đếm linh hoạt, sử dụng bốn đầu vào I0.6, I0.7,I1.0 và I1.1 với 12 chế độ làm việc khỏc nhau. HSC1 sử dụng từ kộp SMD48 để lưu giỏ trị đếm tức thời CV, giỏ trị đặt trước PV được ghi vào từ kộp SMD52 ( cả hai giỏ trị PV và CV là những số nguyờn 32 bit cú dấu ).

Khỏc với HSC0, HSC1 cú ba khả năng đếm :

Đếm tiến hoặc lựi theo sườn lờn của I0.6 ( chế độ 0,1,2,3,4,5).

Đếm tiến theo sườn lờn của I0.6 và lựi theo sườn lờn của I0.7 ( chế độ 6,7,8).

Chiều đếm ( tiến hay lựi ) trong chế độ 0,1,2 được quy định bởi bit SM47.3 như sau: SM47.3=0 đếm lựi theo sườn lờn của I0.6=1đếm tiến theo sườn lờn của I0.6 và trong chế độ 3,4,5 bởi đầu vào I0.7 như sau: I0.7=0 đếm lựi theo sườn lờn của I0.6=1đếm tiến theo sườn lờn của I0.6.

HSC1 cú hai tần số đếm. Trong cỏc chế độ 0ữ8 tần số đếm bằng tần số thay đổi trạng thỏi tớn hiệu đầu vào là 7 KHz, riờng trong chế độ 9,10,11 tựy theo sự khai bỏo sử dụng mà tần số đếm cú thể bằng hoặc cú thể gấp 4 lần tần số biến thiờn trạng thỏi kết quả phộp tớnh XOR giữa I0.6 và I0.7. Do đú trong chế độ 9,10,11 tần số đếm cực đại cho phộp của HSC1 sẽ là 28 KHz.

Cấu trỳc byte SMB47 được gọi là byte điều khiển của HSC1 như sau: Cỏc bước khai bỏo sử dụng HSC1 ( nờn thực hiện tại vũng quột đầu tiờn ):

Nạp giỏ trị tức thời ban đầu vào SMD48 và giỏ trị đặt trước vào SMD52. Khi khai bỏo sử dụng chế độ ngắt vào/ra và kớch tớn hiệu bỏo ngắt HSC0 bằng lệnh ATCH.

Kớch bộ đếm bằng lệnh HSC.

Khi sử dụng HSC1 cựng với chế độ ngắt vào/ra cỏc tớn hiệu bỏo ngắt sau đõy sẽ được phỏt:

Bỏo ngắt khi CV=PV nếu tớn hiệu bỏo ngắt kiểu 13 được khai bỏo. Bỏo ngắt khi cú tớn hiệu thay đổi chiều đến từ I0.7, nếu tớn hiệu bao ngắt kiểu 14 được khai bỏo.

Bỏo ngắt khi HSC1 bị reset bởi I1.0 nếu tớn hiệu bao ngắt kiểu 15 được khai bỏo.

HSC2: HSC2 cú nguyờn lý làm việc như HSC1. HSC1 và HSC2 làm việc độc lập khụng ảnh hưởng nhau. Cỏc ngừ vào I0.6, I0.7, I1.0, I1.1 của HSC1 được thay thế bằng I1.2, I1.3, I1.4 và I1.5 trong HSC2.

Cấu trỳc byte SMB57 được gọi là byte điều khiển của HSC2 như sau: HSC2 cú ba khả năng đếm giống như HSC1 và tần số đếm trong cỏc chế độ cũng giống như HSC1.

Thủ tục khai bỏo sử dụng bộ đếm tốc độ cao:

Khi bỏo sử dụng cỏc bộ đếm HSC0, HSC1 và HSC2 nờn được thực hiện tại vũng quột đầu tiờn khi mà bit SM0.1 cú giỏ trị logic là 1. Thủ tục khai bỏo tốt nhất là một chương trỡnh con và chương trỡnh con đú được gọi bằng lệnh CALL trong vũng quột đầu.

Cỏc cụng việc của chương trỡnh con khai bỏo sử dụng bộ đếm tốc độ cao bao gồm:

Nạp giỏ trị về kiểu hoạt động phự hợp cho byte điều khiển. vớ dụ như khi khai bỏo kiểu hoạt động cho HSC1 với:

Tớn hiệu ngoài tớch cực khi cú logic là 1 thỡ phải ghi 0 vào SM47.0. Tớn hiệu kớch ( start ) ngoài tớch cực khi cú logic là 1 thỡ phải ghi 0 vào SM47.1. (adsbygoogle = window.adsbygoogle || []).push({});

Tần số đếm bằng tần số của tớn hiệu vào thỡ ghi 0 vào Sm47.2. Đếm tiến theo sườn lờn của tớn hiệu vào thỡ ghi 1 vào SM47.3. Cho phộp đổi chiều đếm thỡ ghi vào SM47.4.

Cho phộp thay đổi giỏ trị đặt trước thỡ ghi 1 vào SM47.5. Cho phộp thay đổi giỏ trị đếm tức thời thỡ ghi 1 vào SM47.6. Cho phộp kớch HSC1 thỡ ghi 1 vào SM47.7.

Xỏc định chế độ làm việc cho bộ đếm bằng lệnh HDEF.

Vớ dụ: nạp giỏ trị đếm tức thời là 0 vào giỏ trị đặt trước là 3 cho HSC1 thỡ thực hiện lệnh sau trong STL:

MOVD K0 SMD48 giỏ trị đếm tức thời ban đầu là 0. MOVD K3 SMD52 giỏ trị đặt trước là 3.

( khi đổi chiều đếm ) với cỏc chương trỡnh xử lý ngắt tương ứng cú nhón là 0 và 1 thỡ thực hiện cỏc lệnh sau trong STL:

ATCH K0 K13 ATCH K1 K14

Kớch bộ đếm với kiểu làm việc ghi trong byte điều khiển bằng lệnh HSC. Vớ dụ như kớch bộ đếm HSC1 theo SM47 bằng cỏch thực hiện lệnh sau trong STL: HSC K1

Một phần của tài liệu 253128 (Trang 63 - 68)