1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Tài liệu thiết bị lập trình , chương 14 ppt

19 352 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Các bộ định thời gian Timer và các bộ đếm Counter
Thể loại Tài liệu bài giảng
Định dạng
Số trang 19
Dung lượng 232,6 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lệnh chuyển kiểu dữ liệu :– Cú pháp: BTI – Tác dụng: Lệnh chuyển một số BCD nằm trong ACCU1 thμnh số nguyên 16 bit, kết quả lưu trở lại ACCU1 Các bộ định thời gian timer Các bộ timer có

Trang 1

Các bộ định thời gian Timer vμ

các bộ đếm counter Thanh ghi tổng ACCU1 và ACCU2 Một số lệnh phụ trợ

Các bộ định thời gian (Timer) Các bộ đếm (Counter)

Thanh ghi tổng ACCU1 vμ ACCU2

Đây là hai thanh ghi đặc biệt nằm trong CPU của S7-300, có kích thước 32 bít.

Chúng được dùng làm bộ nhớ trung gian cho các phép tính liên quan đến byte, word và double word.

Thanh ghi ACCU1 được dùng chính trong các lệnh, ACCU2 được dùng làm thanh ghi phụ hỗ trợ cho thanh ghi ACCU1.

Byte thấp Byte cao

Trang 2

Một số lệnh phụ trợ

Lệnh nạp dữ liệu:

Cú pháp:

Tác dụng: Lệnh chuyển hằng số hoặc nội dung của ô nhớ có địa chỉ ở <address> vμo thanh ghi ACCU1, nội dung cũ trong ACCU1 đ−ợc chuyển vμo ACCU2

I, Q

Hằng số dùng cho bộ đếm

L C#100 C#

Hằng số dạng kí tự

L ‘AB’

‘ ’

Hằng số cơ số Binary (2)

L 2#11000011 2#

Hằng số cơ số Hex (16)

L B#16#2E

L W#A2EB 16#

Ghi 5 (số nguyên 32 bit) vào ACCU1

L L#5 L#

Ghi 1 vào byte cao của từ thấp, 8 vào byte thấp của từ thấp ACCU1

L B#(1,8) B#( , )

Ghi 5 (số nguyên 16 bit) vào ACCU1

L +5

±

Giải thích

Ví dụ Dữ liệu

Trang 3

Hằng số về thời gian giờ/phút/giây (32 bít)

L T#0H_1M_10S T#

Hằng số về năm/tháng/ngày (16 bit)

L D#2000-6-20 D#

Hằng số là địa chỉ ô nhớ (con trỏ)

L P#M10.2 P#

Hằng số dùng cho bộ timer

L S5TIME#2S S5TIME#

Giải thích

Ví dụ Dữ liệu

Lệnh so sánh dữ liệu (số nguyên 16 bít):

Cú pháp:

Tác dụng: Lệnh so sánh hai số nguyên nằm ở hai thanh ghi ACCU1 vμ ACCU2

1 1

0

<=I

0 1

1

>=I

1 0

0

<I

0 0

1

>I

1 0

1

<>I

0 1

0

==I

Giá trị RLO ACCU2<ACCU1

Giá trị RLO ACCU2 = ACCU1

Giá trị RLO ACCU2>ACCU1 Lệnh

Trang 4

Lệnh chuyển kiểu dữ liệu :

Cú pháp: BTI

Tác dụng: Lệnh chuyển một số BCD nằm trong ACCU1 thμnh số nguyên 16 bit, kết quả lưu trở lại ACCU1

Các bộ định thời gian timer

Các bộ timer có tác dụng tạo ra khoảng thời gian trễ giữa tín hiệu lôgíc đầu vào và tín hiệu lôgíc đầu ra

Quy luật trễ tuỳ thuộc vào từng loại timer.

Các Timer được đánh địa chỉ từ T0 đến T255 Các

bộ timer có thể sử dụng địa chỉ tuỳ ý, tuy nhiên khi một địa chỉ đã sử dụng rồi thì không thể khai báo sử dụng cho timer khác.

Thời gian trễ t = độ phân giải x giá trị đặt

Trang 5

Giá trị đặt: Có thể được xác định dưới hai dạng, và

được lưu vào thanh ghi ACCU1.

Dạng 1: W#16#txyz Trong đó: t lμ độ phân giải (mã thập phân)

xyz lμ giá trị thời gian (mã BCD)

Dạng 2: S5T#aH_bM_cS_dMS Trong đó: H lμ giờ, M lμ phút, S lμ giây, MS

lμ miligiây.

a, b, c, d lμ các tham số thời gian

Chú ý ở dạng 2, độ phân giải được CPU chọn tự

động

Độ phân giải: Có nhiều độ phân giải khác nhau và

được lưu vào thanh ghi ACCU1 dưới dạng mã nhị phân, nằm ở vị trí bít 12 và 13.

3 11

10s

2 10

1s

1 01

100ms

0 00

10ms

Mã thập phân Mã nhị phân

Độ phân giải

10s đến 2h_46m_30s 10s

1s đến 16m_39s 1s

100ms đến 1m_39s_900ms 100ms

10ms đến 9s_990ms 10ms

Giới hạn trễ

Độ phân giải

Trang 6

Cấu hình thanh ghi ACCU1 khi làm việc với Timer:

Từ bit 0 đến bít 11 dùng để lưu giá trị thời gian dưới dạng mã BCD, bít 12 và 13 dùng để lưu độ phân giải.

Thời gian trễ (0 – 999)

Độ phân giải

Từ bít 14 không dùng đến

Các bước khai báo sử dụng Timer:

Khai báo tín hiệu enable

Khai báo tín hiệu đầu vμo

Khai báo giá trị đặt

Khai báo loại Timer được sử dụng

Khai báo tín hiệu xoá timer

Đọc dữ liệu thanh ghi T-word

Khai báo tín hiệu enable (lệnh FR)

Cú pháp:

A <bit> (<bit> dùng lμm tín hiệu enable)

FR Timer (Timer tên địa chỉ bộ trễ) Chú ý: Tín hiệu enable có tác dụng reset bộ timer khi

có tín hiệu đầu vμo duy trì ở mức lôgíc 1

Trang 7

Khai báo tín hiệu đầu vào

Cú pháp:

A <bit> (<bit> dùng lμm tín hiệu đầu

vμo)

Chú ý: Tín hiệu đầu vμo bắt buộc phải có dùng để kích hoạt timer

Khai báo giá trị đặt

Cú pháp:

L <hằng số> (<hằng số> dùng lμm giá

trị đặt)

Chú ý: Có thể được khai báo dưới 2 dạng

Khai báo loại timer được sử dụng

Khai báo tín hiệu xoá timer

A <bit> (<bit> dùng lμm tín hiệu reset)

R Timer (Timer tên địa chỉ bộ trễ cần xoá)

Tạo xung kéo dài (Extended Pulse Timer) SE

Tạo xung thời gian (Pulse timer) SP

Tắt trễ (Off-delay) SF

Bật trễ có nhớ (Retentive on-delay) SS

Bật trễ không nhớ (On-delay) SD

Loại timer Lệnh khai

báo

Trang 8

Đọc dữ liệu thanh ghi T-Word

Do thanh ghi T-Word được lưu dưới hai dạng, nên ta có hai lệnh để truy xuất dữ liệu tức thời của thanh ghi T-Word như sau:

Lệnh: L Timer

Lệnh: LC Timer

Trang 9

Ví dụ 1: Sử dụng timer SD (on-delay)

A I2.0 (Tín hiệu enable)

FR T1

A I2.1 (Tín hiệu đầu vμo)

L W#16#2007 (Nạp giá trị đặt)

SD T1 (Sử dụng timer 1)

A I2.2 (Tín hiệu reset)

R T1

A T1 (Lấy giá trị T-bit)

= Q4.0 (Tín hiệu đầu ra)

Trang 10

Ví dụ 2: Sử dụng timer SS (retentive-on-delay)

A I2.0 (Tín hiệu enable)

FR T1

A I2.1 (Tín hiệu đầu vμo)

L W#16#2007 (Nạp giá trị đặt)

SS T1 (Sử dụng timer 1)

A I2.2 (Tín hiệu reset)

R T1

A T1 (Lấy giá trị T-bit)

= Q4.0 (Tín hiệu đầu ra)

Trang 11

Ví dụ 3: Sử dụng timer SF (Off-delay)

A I2.0 (Tín hiệu enable)

FR T1

A I2.1 (Tín hiệu đầu vμo)

L W#16#2007 (Nạp giá trị đặt)

SF T1 (Sử dụng timer 1)

A I2.2 (Tín hiệu reset)

R T1

A T1 (Lấy giá trị T-bit)

= Q4.0 (Tín hiệu đầu ra)

Trang 12

Ví dụ 4: Sử dụng timer SP (Pulse-delay)

A I2.0 (Tín hiệu enable)

FR T1

A I2.1 (Tín hiệu đầu vμo)

L W#16#2007 (Nạp giá trị đặt)

SP T1 (Sử dụng timer 1)

A I2.2 (Tín hiệu reset)

R T1

A T1 (Lấy giá trị T-bit)

= Q4.0 (Tín hiệu đầu ra)

Trang 13

Ví dụ 5: Sử dụng timer SE (Extended-Pulse-delay)

A I2.0 (Tín hiệu enable)

FR T1

A I2.1 (Tín hiệu đầu vμo)

L W#16#2007 (Nạp giá trị đặt)

SE T1 (Sử dụng timer 1)

A I2.2 (Tín hiệu reset)

R T1

A T1 (Lấy giá trị T-bit)

= Q4.0 (Tín hiệu đầu ra)

Trang 14

Các bộ đếm counter

Các bộ đếm được dùng để đếm các sự kiện theo sườn lên hoặc sườn xuống.

Các bộ counter được đánh địa chỉ từ C0 đến C255

Các bộ counter có thể sử dụng địa chỉ tuỳ ý, tuy nhiên khi một địa chỉ đã sử dụng rồi thì không thể khai báo sử dụng cho các counter khác.

Các bước khai báo sử dụng Counter:

Khai báo tín hiệu enable

Khai báo tín hiệu đầu vμo đếm tiến (CU)

Khai báo tín hiệu đầu vμo đếm lùi (CD)

Khai báo giá trị đặt

Thiết lập giá trị ban đầu cho C-word

Khai báo tín hiệu xoá Counter

Đọc dữ liệu của thanh ghi C-Word

Khai báo tín hiệu enable (lệnh FR)

Cú pháp:

A <bit> (<bit> dùng lμm tín hiệu enable)

FR Counter (Counter tên địa chỉ bộ đếm)

Chú ý: Tín hiệu enable có tác dụng kích hoạt bộ counter khi có sự chuyển trạng thái từ 0 lên 1 của bít RLO

Trang 15

Khai báo tín hiệu đầu vào đếm tiến (CU)

Cú pháp:

A <bit> (Tín hiệu đầu vμo đếm tiến)

CU Counter (Counter tên địa chỉ bộ đếm)

Chú ý: Tín hiệu <bit> có tác dụng tăng C-Word lên 1, khi có sự chuyển trạng thái từ 0 lên 1 của bít RLO.

Khai báo tín hiệu đầu vào đếm lùi (CD)

Cú pháp:

A <bit> (Tín hiệu đầu vμo đếm tiến)

CD Counter (Counter tên địa chỉ bộ đếm)

Chú ý: Tín hiệu <bit> có tác dụng giảm C-Word 1 đơn vị, khi có sự chuyển trạng thái từ

0 lên 1 của bít RLO

Khai báo giá trị đặt

Cú pháp:

L C#<hằng số> (Giá trị đặt được lưu ở ACCU1)

Chú ý: Dữ liệu <hằng số> phải ở dạng mã BCD (từ 0 đến 999),

Khai báo tín hiệu xoá Counter

Cú pháp:

A <bit> (<bit> dùng lμm tín hiệu reset)

R Counter (Counter tên địa chỉ bộ đếm)

Thiết lập giá trị ban đầu cho C-Word

Cú pháp:

A <bit> (Tín hiệu đầu vμo cho phép thiết lập)

L C#<hằng số> (Giá trị ban đâu được lưu ở ACCU1)

S Counter (Counter tên địa chỉ bộ đếm)

Chú ý: Dữ liệu <hằng số> ở dạng mã integer (từ 0 đến 999), gặp lệnh S giá trị đặt sẽ được chuyển ngay vμo thanh ghi C-Word.

Trang 16

§äc d÷ liÖu cña thanh ghi C-Word.

D÷ liÖu cña thanh ghi C-Word cã thÓ ®ưîc lưu l¹i dưíi hai d¹ng m· binary hoÆc BCD

LÖnh: L Counter

LÖnh: LC Counter

C3

Trang 17

Ví dụ 1: Sử dụng counter CU (đếm lên), khi nào đủ số lượng sườn lên

ở đầu vào I0.1, thì đầu ra Q0.0 lên mức lôgíc 1

A I0.0 (Tín hiệu enable)

FR C1

A I0.1 (Tín hiệu đầu vμo đếm)

CU C1

L C#3 (Giá trị đặt) BTI (Chuyển số BCD thμnh số Integer 16 bit)

A I0.2 (Tín hiệu reset)

R C1

L C1 (nạp giá trị C-word vμo ACCU1, đẩy giá trị đặt

<=I vμo ACCU2)

= Q0.0 (Tín hiệu đầu ra)

I0.0 I0.2 I0.1 Giá trị đặt

C-word

Q0.0

Trang 18

Ví dụ 2: Sử dụng counter CD (đếm xuống), khi nào giảm bằng và nhỏ hơn l−ợng đặt, thì đầu ra Q0.0 lên mức lôgíc 1.

Network1 (Thiết lập giá trị C-Word)

A I0.3 (Tín hiệu cho phép nạp C-Word)

L C#6 (Giá trị cần nạp)

S C3

Network2 (Đếm lùi giá trị C-Word)

A I0.1 (Tín hiệu đầu vμo đếm)

CD C3 (Khai báo bộ đếm xuống)

L C#3 (Giá trị đặt) BTI (Chuyển giá trị đặt từ BCD thμnh integer)

A I0.2 (Tín hiệu reset)

R C3

L C3 (Đọc giá trị tức thời của C-word)

>=I (So sánh C-word với giá trị đặt)

= Q0.0

I0.3 I0.2 I0.1

Giá trị đặt C-word

Q0.0

Trang 19

Sơ đồ 5

R1

R2

Rtg

Rtg

R1

R2

Rtg

Rtg

Sơ đồ 6

Sơ đồ 7

2

Sơ đồ 4

2

Chuyển một số sơ đồ sau sang lập

trình bằng S7-300

Ngày đăng: 14/12/2013, 18:15

HÌNH ẢNH LIÊN QUAN

Sơ đồ 5 - Tài liệu thiết bị lập trình , chương 14 ppt
Sơ đồ 5 (Trang 19)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm