1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo trình PLC s7 300

30 39 0

Đ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

Định dạng
Số trang 30
Dung lượng 1,54 MB

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 tác động vào thanh ghi trạng thái như sau: RLO có giá trị 1 khi có ít nhất một trong hai tín hiệu tại hai địa chỉ ở mức 1.. Lệnh tác động vào thanh ghi trạng thái như sau: Neu giá

Trang 1

I CẤU TRÚC VÀ PHÂN VÙNG BỘ NHỚ S7-300

1 Tổng quan

PLC S7-300 cấu trúc dạng module gồm các thành phần sau:

- CPU các loại khác nhau: 312IFM, 312C, 313, 313C, 314, 314IFM, 314C,

315, 315-2 DP, 316-2 DP, 318-2,

- Module tín hiệu SM xuất nhập tín hiệu tương đồng /số: SM321, SM322, SM323, SM331, SM332,SM334, SM338, SM374

- Module chức năng FM

- Module truyền thông CP

- Module nguồn PS307 cấp nguồn 24VDC cho các module khác, dòng 2A, 5A, 10A

- Module ghép nối IM: IM360, IM361, IM365

Các module được gắn trên thanh rây như hình dưới, tối đa 8 module SM/FM/CP ở bên phải CPU, tạo thành một rack, kết nối với nhau qua bus connector gắn ở mặt sau của module Mỗi module được gán một số slot tính từ trái sang phải, module nguồn là slot 1, module CPU slot 2, module kế mang số 4…

Nếu có nhiều module thì bố trí thành nhiều rack (trừ CPU312IFM và CPU313 chỉ

có một rack), CPU ở rack 0, slot 2, kế đó là module phát IM360, slot 3, có nhiệm vụ kết nối rack 0 với các rack 1, 2, 3, trên mỗi rack này có module kết nối thu IM361, bên phải mỗi module IM là các module SM/FM/CP Cáp nối hai module IM dài tối đa 10m Các module được đánh số theo slot và dùng làm cơ sở để đặt địa chỉ đầu cho các module ngõ vào ra tín hiệu Đối với CPU 315-2DP, 316-2DP, 318-2 có thể gán địa chỉ tùy ý cho các module

Mỗi địa chỉ tương ứng với một byte Với các module số địa chỉ một ngõ vào hay

ra là x.y, x là địa chỉ byte, y có giá trị từ 0 đến 7 Ví dụ module SM321 DI 32 có 32 ngõ vào gắn kế CPU slot 4 có địa chỉ là I0.y, I1.y, I2.y, I3.y, I là ký hiệu chỉ ngõ vào

số Module analog có địa chỉ theo word, ví dụ module SM332 AO4 có 4 ngõ ra analog gắn ở slot 5 rack 1 có địa chỉ PQW400, PQW402, PQW404, PQW406, ngõ ra số có ký hiệu là Q còn ngõ vào analog ký hiệu là PIW

Các CPU 312IFM, 314 IFM, 31xC có tích hợp sẵn một số module mở rộng

Trang 2

- CPU 312IFM, 312C: 10 ngõ vào số địa chỉ I124.0 …I124.7, I125.1; 6 ngõ ra

số Q124.0…Q124.5

- CPU 313C: 24 DI I124.0 126.7, 16DO Q124.0 125.7, 5 ngõ vào tương đồng

AI địa chỉ 752 761, hai ngõ ra AO 752 755

- CPU 314IFM: 20 ngõ vào số I124.0 … I126.3; 16 ngõ ra số Q124.0

…Q125.7; 4 ngõ vào tương đồng PIW128, PIW130, PIW132, PIW134; một ngõ ra tương đồng PQW128

2 Module CPU

Các module CPU khác nhau theo hình dạng chức năng, vận tốc xử lý lệnh Loại 312IFM, 314IFM không có thẻ nhớ Loại 312IFM, 313 không có pin nuôi Loại 315-2DP, 316-2DP, 318-2 có cổng truyền thông DP Các đèn báo có ý nghĩa sau:

SF (đỏ) lỗi phần cứng hay mềm,

BATF (đỏ) lỗi pin nuôi,

DC5V (lá cây) nguồn 5V bình thường,

FRCE (vàng ) force request tích cực

RUN (lá cây) CPU mode RUN ; LED chớp lúc start-up w 1 Hz; mode

HALT w 0.5 Hz

STOP mode (vàng) CPU mode STOP hay HALT hay start-up; LED

chớp khi memory reset request

BUSF (đỏ) lỗi phần cứng hay phần mềm ở giao diện PROFIBUS

Khóa mode có 4 vị trí:

RUN-P chế độ lập trình và chạy

RUN chế độ chạy chương trình

STOP ngừng chạy chương trình

MRES reset bộ nhớ

Thẻ nhớ có thể có dung lượng từ 16KB đến 4MB, chứa chương trình từ PLC

chuyển qua và chuyển chương trình ngược trở lại cho CPU

Trang 3

Pin nuôi giúp nuôi chương trình và dữ liệu khi bị mất nguồn (tối đa 1 năm), ngoài

ra còn nuôi đồng hồ thời gian thực Với loại CPU không có pin nuôi thi cũng có một phần vùng nhớ được duy trì

Thông qua cổng truyền thông MPI (MultiPoint Interface) có thể nối : máy tính lập trình, màn hình OP (Operator panel) , các PLC có cổng MPI (S7-300, M7-300, S7-400, M7-400, C7-6xx), S7-200, vận tốc truyền đến 187.5kbps (12Mbps với CPU 318-2, 10.2 kbps với S7-200) Cổng Profibus –DP nối các thiết bị trên theo mạng Profibus với vận tốc truyền lên đến 12Mbps

3 Các vùng nhớ của PLC

Vùng nhớ chương trình (load memory) chứa chương trình người dùng (không

chứa địa chỉ ký hiệu và chú thích) có thể là RAM hay EEPROM trong CPU hay trên trên thẻ nhớ

Vùng nhớ làm việc (working memory) là RAM, chứa chương trình do vùng nhớ

chương trình chuyển qua; chỉ các phần chương trình cần thiết mới được chuyển qua, phần nào không cần ở lại vùng nhớ chương trình , ví dụ block header, data block

Vùng nhớ hệ thống (system memory) phục vụ cho chương trình người dùng, bao

gồm timer , counter, vùng nhớ dữ liệu M, bộ nhớ đệm xuất nhập…

Trang 4

Toán hạng là địa chỉ bit I, Q, M, L, D, T, C

Lệnh gán giá trị logic của RLO tới ô nhớ có địa chỉ được chỉ thị trong toán hạng

Lệnh tác động vào thanh ghi trạng thái như sau:

Ký hiệu: (-) Chỉ nội dung bit không bị thay đổi theo lệnh (x) Chỉ nội dung bit bị thay đổi theo lệnh

o LAD:

Với:

Thôii2 SC ■ Kiểu dữ liệu Toán hạng Mô tả

<ađdress> BOOL LỌ ML D Địa chi bit được set

Khi giá trị logic của bit tại <address> bằng 1 thì RLO có giá trị 1

Lệnh gán có điêu kiện giá trị l:

o STL:

Cú pháp S <toán hạng>

Toán hạng là địa chỉ bit I, Q, L, M, D

Nếu RLO=l lệnh sẽ ghi giá trị 1 váo ô nhớ có địa chỉ trong toán hạng Lệnh tác động vào thanh ghi trạng thái như sau:

o LAD:

Trang 5

Nếu RLO = 1 thì địa chỉ cụ thể được đặt ở mức 1 và duy trì ở trạng thái này cho đến khi

Toán hạng là địa chỉ bit I, Q, M, L, D

Nếu RLO=0, lệnh sẽ ghi giá trị 0 vào ô nhớ có địa chỉ trong toán hạng Lệnh tác động vào thanh ghi trạng thái như sau:

Trang 6

Cú pháp A <toán hạng>

Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, C

Nếu FC = 0 lệnh sẽ gán giá trị logic của toán hạng vào RLO

Ngược lại khi FC = 1 lệnh sẽ thực hiện phép tính AND RLO với toán hạng và ghi lại kết quả vào RLO

Lệnh tác động vào thanh ghi trạng thái như sau:

o LAD

Với

Khi giá trị logic hai địa chỉ <address> bằng 1 thì RLO có giá trị 1

Nếu có ít nhất 1 trong 2 ngõ vào xuống mức 0 thì RLO có giá trị bằng 0

- Lệnh AND NOT:

o STL:

Cú pháp AN <toán hạng>

Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, c

Neu FC = 0 lệnh sẽ gán giá trị logic nghịch đảo của toán hạng vào RLO Ngược lại khi

FC =1 nó sẽ thực hiện phép tính AND RLO với giá trị nghịch đảo của toán hạng và ghi lại kết quả vào RLO

Lệnh tác động vào thanh ghi trạng thái như sau:

Trang 7

Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, C

Nếu FC = 0 lệnh sẽ gán giá trị logic của toán hạng vào RLO Nếu FC = 1 nó thực hiện phép tính OR RLO với toán hạng và ghi lại kết quả vào RLO

Lệnh tác động vào thanh ghi trạng thái như sau:

RLO có giá trị 1 khi có ít nhất một trong hai tín hiệu tại hai địa chỉ <address> ở mức 1 RLO có giá trị 0 khi cả hai tín hiệu ngõ vào đều xuống mức 0

Trang 8

BR CC1 cc.o OV OS OR STA RLO flf.Q

Lệnh OR NOT:

o STL:

Cú pháp ON <toán hạng>

Toán hạng là dữ liệu kiểu BOOL hoặc địa chỉ bit I, Q, M, L, D, T, C

Nếu FC=0 lệnh sẽ gán giá trị logic nghịch đảo của toán hạng vào RLO Nếu FC=1 nó thực hiện phép tính OR RLO với giá trị nghịch đảo của toán hạng và ghi lại kết quả vào RLO

Lệnh tác động vào thanh ghi trạng thái như sau:

Lệnh tác động vào thanh ghi trạng thái như sau:

Trang 9

Lệnh tác động vào thanh ghi trạng thái nhu sau:

Trang 10

NHÓM LỆNH TIẾP ĐIỂM ĐẶC BIỆT:

- Lệnh ghi giá trị logic 1 vào RLO:

o STL:

Cú pháp SET

Lệnh không có toán hạng và có tác dụng ghi 1 vào RLO Lệnh tác động vào thanh ghi trạng thái như sau:

o LAD: lệnh không thực hiện

Lệnh ghi giá trị logic 0 vào RLO:

Trang 11

Lệnh đảo giá trị RLO:

Lệnh tác động váo thanh ghi trạng thái như sau:

o LAD:

Khi RLO thay đổi từ 0 lên 1 kết quả của lệnh kiểm tra FB ở trạng thái 1 trong một vòng quét Để hệ thống phát hiện được sự thay đổi cạnh lên thì RLO phải được lưu trữ trong 1 bit nhớ FB hoặc bit dữ liệu <address>

Nếu giá trị RLO trước đó lưu trữ trong <address > có giá trị 0 và RLO ở vòng quét hiện

Trang 12

tại có giá trị 1 thì kết quả RLO của lệnh có giá trị 1 trong vòng quét

3 Lệnh phát hiện xung cạnh xuống:

o STL:

Cú pháp FN <Toán hạng>

Toán hạng là địa chỉ I, Q, M, L, D và được sử dụng như 1 biến cờ để ghi lại giá trị của RLO tại vị trí này trong chương trình RLO sẽ có giá trị trong vòng quét khi có sườn xuống trong RLO

Lệnh tác động vào thanh ghi trạng thái như sau:

Neu giá trị RLO trước đó lưu trữ trong <address > có giá trị 0 và RLO ở vòng quét hiện tại có giá trị 1 thì kết quả RLO của lệnh có giá trị 1 trong vòng quét

Trang 13

III

IV LỆNH VỀ TIMER VÀ COUNTER

1 TIMER

Giới thiệu Timer:

Bộ thời gian Timer là bộ tạo thời gian trễ T mong muốn giữa tín hiệu logic ngõ vào và tín hiệu logic ngõ ra

S7 300 có 5 loại timer khác nhau Tất cả 5 loại Timer này cùng bắt đầu tạo thời gian trễ tín hiệu kể từ thời điểm kích của tín hiệu đầu vào, tức là khi tín hiệu đầu vào chuyển trạng thái, được gọi là thời điểm timer được kích Thời gian trễ T mong muốn được khai báo với timer bằng một word 16 bit bao gồm 2 thành phần:

- Độ phân giải: timer của S7 300 có 4 chế độ phân giải: 10ms, 100ms, 1s và 10s

- Một số nguyên BCD trong khoảng 0 ÷ 999 được gọi là PV (reset value _ giá trị đặt trước) Thời gian trễ T mong muốn tính như sau: T = Độ phân giải *PV

Nguyên lý hoạt động của bộ Timer

Bộ thời gian Timer là bộ tạo thời gian trễ T mong muốn giữa tín hiệu logic đầu vào X(t)

và đầu ra Y(t)

S7-300 có 5 kiểu thời gian Timer khác nhau Tất cả 5 loại Timer này cùng bắt đầu tạo thời gian trễ tín hiệu kể từ thời điểm có sườn lên của tín hiệu kích đầu vào, tức là khi có tín hiệu đầu vào U(t) chuyển trạng thái từ logic "0" lên logic"1", được gọi là thời điểm Timer được kích

Thời gian trễ T mong muốn được khai báo với Timer bằng giá trị 16 bits bao gồm hai thành phần:

- Độ phân giải với đơn vị là mS Timer của S7 có 4 loại phân giải khác nhau là 10ms, 100ms, 1s và 10s

- Một số nguyên BCD trong khoảng từ 0 đến 999 được gọi là PV (Preset Value - giá trị đặt trước)

Như vậy thời gian trễ T mong muốn sẽ được tính như sau:

T = Độ phân giải x PV

Trang 14

Tùy theo ngôn ngữ lập trình mà có thể khai báo thời gian trễ theo hai cách sau:

- Cách 1: S5t#5s: Cách khai báo này dùng được cho các loại ngôn ngữ lập trình Step 7

- Cách 2: L W#16#1350, cách khai báo này chỉ dùng được cho ngôn ngữ STL

Để xác định được độ phân giải trong cách khai báo thứ nhất ta có thể tính như sau:

Áp dụng công thức tính: T = Độ phân giải x PV; trong đó PV là số nguyên lớn nhất có

thể nằm trong khoảng 0-999 Như vậy, nếu khai báo s5t#5s thì có thể tính như sau:

5s=10mS x 500, vậy độ phân giải là 10mS Với cách khai báo này ta không thể thay đổi được độ phân giải vì phần mềm Step7 tự gán cho nó độ phân giải

Với cách khai báo thứ 2 ta co thể lựa chọn độ phân giải tùy ý Ví d ụ muốn khai báo khoảng thời gian trể là 5s ta có thể khai báo như sau:

W#16#1050 hoặc W#16#2005 Trong đó, chữ số 1 hoặc 2 là độ phân giải được quy định theo bảng sau:

Còn ba chữ số đứng sau là giá trị đặt Như vậy, trong ví dụ trên với cùng một giá trị thời gian trễ 5s ta có thể đặt được độ phân giải là 100ms hoặc 1s

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- Curren value- giá trị tức thời) Timer sẽ ghi nhớ khoảng thời gian trôi qua kể từ khi 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 CV trở về bằng 0 thì Timer đã đạt được thời gian mong muốn T và điều này được báo ra ngoài bằng cách thay đổi trạng thái tín hiệu đầu ra Y(t) Việc thông báo ra ngoài bằng cách đổi trạng thái tín hiệu dầu ra Y(t) như thế nào còn phụ thuộc vào loại Timer đượ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ể 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, tín hiệu đầu vào U(t) có gic là "1"

Từng loại Timer được đánh số từ 0 đến 255 (tuỳ thuộc vào từng loại CPU) Một Timer được đặt tên là Tx, trong đó x là số hiệu của Timer ( 0<=x<=255) Ký hiệu Tx cũng đồng thời là tín hiệu hình thức của thanh ghi CV (T-Word) và đầu ra T-bits của Timer đó Tuy chúng có cùng địa chỉ hình thức, nhưng T-Word và T-bits vẫn được phân biệt với nhau nhờ kiểu lệnh sử dụng toán hạng Tx Khi dùng làm việc với từ Tx được hiểu là T-Word còn khi làm việc với điểm thi Tx được hiểu là T-bit

Để xóa tức thời trạng thái của T-word và T-bit người ta sử dụng một tín hiệu reset Timer Tại thời điểm sườn lên của tín hiệu này giá trị T-Word và T-bit đồng thời có giá trị bằng

0 tức là thanh ghi tức thời CV được đặt về 0 và tín hiệu đầu ra cũng có trạng thái Logic là

Trang 15

"0" Trong thời gian tín hiệu Reset có giá trị logic là "1" Timer sẽ không làm việc

Khai báo sử dụng

Các tín hiệu điều khiển cho một bộ Timer phải được khai báo bao gồm các bước sau:

- 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 TV

- Khai báo loại Timer được sử dụng (SP, SE, SD, SS, SF)

- Khai báo tín hiệu xoá Timer nếu muốn sử dụng chế độ Reset chủ động

Trong các bước trên thì bước 1 và 5 có thể bỏ qua

Dạng dữ liệu vào / ra của bộ Timer:

Tại thời điểm sườn lên của tín hiệu vào SET thời gian sẽ đựơc tính đồng thời giá trị Logic

ở đầu ra là "1" Khi thời gian đặt kết thúc giá trị đầu ra cũng trở về 0

Trang 16

Khi có tín hiệu RESET (R) thời gian tính lập tức trở về 0 và tín hiệu đầu ra cũng giá trị là

"0"

Ví dụ: Viết chương trình điều khiển động cơ không đồng bộ 3 pha đổi nối Y/∆, hoạt động theo nguyên tắc sau: Ấn nút Start khóa K1 có điện cấp điện cho hệ thống, đồng thời

K2 cũng có điện để động cơ hoạt động chế đô Y, sau thời gian 5s khóa K3 có điện để

động cơ hoạt động chê độ ∆ Ấn nút Stop hệ thống dừng

Bộ thời gian SE: Khai báo

Trang 17

Ví dụ: Viết chương trình điều khiển bóng đèn hoạt động như sau: ấn nút S đèn sáng sau thời gian 10s bóng đèn tự tắt

Bộ thời gian SD: Khai báo

Nguyên lý làm việc

Tại thời điểm sườn lên của tín hiệu vào SET bộ thời gian đựơc thiết lập và thời gian sẽ

đựơc tính Kết thúc thời gian đặt tín hiệu đầu ra sẽ có giá trị là "1" Khi tín hiệu đầu vào kích S là "0" đầu ra cũng lập tức trở về "0" nghĩa là tín hiệu đầu ra sẽ không được duy trì khi tín hiệu kích có giá trị là "0"

Trang 18

Khi có tín hiệu RESET (R) thời gian tính lập tức trở về "0" và tín hiệu đầu ra cũng giá trị

Trang 19

Bộ thời gian SF: Khai báo

Nguyên lý làm việc

Trang 20

Tại thời điểm sườn lên của tín hiệu vào SET bộ thời gian đựơc thiết lập Tín hiệu đầu ra

có giá trị là 1 Nhưng thời gian sẽ đựơc tính ở thời điểm sườn xuống cuối cùng của tín hiệu đầu vao SET(S) Kết thúc thời gian đặt tín hiệu đầu ra sẽ trở về 0

Khi có tín hiệu RESET (R) thời gian tính lập tức trở về 0 và tín hiệu đầu ra cũng giá trị là

"0"

Ví dụ: Một động cơ được điều khiển hoạt động theo nguyên tắc sau: Bật công tắc S1 động

cơ hoạt động, động cơ dừng lại sau 5s khi tắt công tắc S1 hoặc dừng lại ngay khi ấn nút S2

2 COUNTER

Bộ đếm lên (S-CU_Up Counter)

Ký hiệu:

Trang 21

C: Biểu diễn toán hạng là tên của bộ đếm C Loại dữ liệu dạng Counter, diễn tả tên của

bộ đếm, số bộ đếm tuỳ thuộc vào loại CPU

S, PV, R, Q, CV, CV-BCD: Biểu diễn các toán hạng là địa chỉ ngõ vào/ra như sau: I, Q,

M, L, D

S, R, Q: Biểu diễn các toán hạng là dữ liệu dạng BOOL

PV: Biểu diễn toán hạng là dữ liệu dạng Word Khai báo giá trị đặt trước số đếm

CV, CV- BCD: Biểu diễn các toán hạng là dữ liệu dạng Word CV là ngõ ra biểu diễn giá trị đếm hiện hành, ở dạng số thập lục phân (Hexadeximal) BCD là ngõ ra chứa giá trị hiện hành, ở dạng số BCD

Q: Biểu diễn trạng thái giá trị đếm Giá trị đếm bằng 0 thì Q=0, giá trị đếm bằng 1 thì Q=1

CU: Biểu diễn toán hạng là dữ liệu dạng BOOL, địa chỉ dạng I, Q, M, L, D Dùng để cho phép bộ đếm đếm lên khi kết quả tại ngõ CU=1

Ngày đăng: 19/11/2021, 23:25

TỪ KHÓA LIÊN QUAN

w