1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn tốt nghiệp thiết kế hệ scada dùng wincc

54 488 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 54
Dung lượng 1,37 MB

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

Nội dung

Bộ điều khiển lập trình được Programmable Logic Controller, gọi tắt là PLC, là bộ điều khiển cho phép thực hiện linh hoạt các thuật toán điều khiển sô' thông qua ngôn ngữ lập trình để tr

Trang 1

Luận Văn Tốt Nghiệp Phần 1

PHẦN1

PLC S7-300

Trang 2

Luận Văn Tốt Nghiệp Phần 1

ĐƯỢC.

1 Bộ điều khiển lập trình được.

Bộ điều khiển lập trình được (Programmable Logic Controller), gọi tắt là

PLC, là bộ điều khiển cho phép thực hiện linh hoạt các thuật toán điều khiển sô'

thông qua ngôn ngữ lập trình để trao đổi thông tin với các PLC khác hoặc vớimáy tính Toàn bộ chương trình điều khiển được lưu trong bộ nhớ của PLC dướidạng các khối chương trình (khôi OB, FB hoặc FC) và được thực hiện lặp theochu kỳ của vòng quét (scan)

PLC chủ yếu bao gồm module CPU, các bộ xử lý và bộ nhớ chươngtrình, các module xuâVnhập (I/O module), hệ thông bus và khôi nguồn cấpđiện

Hệ thông tuyến (System bus): là tuyến để truyền các tín hiệu, gồm nhiều

đường tín hiệu song song:

❖ Tuyến địa chỉ (address bus)\ chọn địa chỉ trên các khối khác nhau.

❖ Tuyến dữ liệu (data bus): mang dữ liệu (thí dụ từ ĨM tới OM).

❖ Tuyến điều khiển (control bus): chuyển, truyền các tín hiệu định

thì và điều khiều để đồng bộ các hoạt động trong PLC

2 Điều khiển nôì cứng và điều khiển lập trình được.

> Điều khiển nôi cứng (Hard_wỉred control)

Trong các hệ thông điều khiển nôi cứng, các tiếp điểm cảm biến, cácđèn, các công tắc, được nối vĩnh viễn với cái khác Do đó khi muônthay đổi lại hệ thông thì phải nốì dây lại bộ điều khiển, với hệ thôngphức tạp thì việc làm lại này không hiệu quả và tốn kém

> Điều khiển lập trình được (Programmable control)

Trang 3

Luận Văn Tốt Nghiệp Phần 1

Tuy nhiên trong các hệ thông điều khiển lập trình được thì cấu trúccủa bộ điều khiển và nốì dây thì độc lập với chương trình Điều này cónghĩa là các bộ điều khiển chuẩn có thể sử dụng Thí dụ: các tiếp điểmcảm biến và các cuộn dây điều hành trên máy công cụ được nôi trựctiếp vào các đầu nối của bộ điều khiển

Chương trình định nghĩa hoạt động điều khiển được ghi trực tiếp vào

bộ nhớ của bộ điều khiển (bộ nhớ chương trình) với sự trợ giúp của bộlập trình hoặc một máy vi tính

Ta có thể thay đổi chương trình điều khiển bằng cách thay đổi nộidung của bộ nhớ bộ điều khiển, nghĩa là bộ nhớ chương trình, còn phầnnôi dây bên ngoài thì không bị ảnh hưởng Đây chính là một trong cácđiểm thuận lợi quan trọng nhất của bộ điều khiển lập trình được

3 Quét chương trình tuần hoàn và ảnh các quá trình.

a Quét chương trình tuần hoàn:

Thời gian để cho một lần quét qua tất cả các phát biểu được liệt kê

trong chương trình được gọi là thời gian quét (scan tỉmer).

Một chu kỳ quét gồm có 4 giai đoạn sau:

• Chuyển dữ liệu từ cổng vào tới ĩ

• Thực hiện chương trình

• Chuyển dữ liệu từ Ọ tới cổng ra

• Truyền thông và kiểm tra nội bộ

Thời gian quét này tùy thuộc vào sô" lệnh trong chương trình và tùy theotừng loại PLC

Nếu sử dụng các khôi chương trình đặc biệt có chế độ ngắt, ví dụ nhưkhôi OB40, OB80, , chương trình của các khôi đó sẽ được thực hiện trongvòng quét khi xuất hiện tín hiệu báo ngắt cùng chủng loại Các khôi chươngtrình này có thể được thực hiện tại mọi thời điểm trong vòng quét chứ không bị

gò ép là phải ở trong giai đoạn thực hiện chương trình

b Ánh cấc quá trình:

Ầnh quá trình nhập PII (Process Input ỉmage)

Sau khi bắt đầu thời gian theo dõi quét, các trạng thái tín hiệucủa tất cả các ngõ vào sô" trong PLC được quét (dò) và được đưa vào

bộ đệm ảnh quá trình nhập PII cho đến khi bắt đầu chu kỳ quét kế

Trang 4

Luận Văn Tốt Nghiệp Phần 1

tiếp Trong lúc quét chương trình kế tiếp (được bắt đầu bằng cáchgọi OB1), các trạng thái tín hiệu của các ngõ vào được lấy từ ảnhquá trình PTĨ này

Ầnh quá trình xuất PTQ (

Nếu trong một chu kỳ quét, các trạng thái tín hiệu được thiết lậpcho một hay nhiều ngõ ra, thì trước hết chúng phải được đệm trongquá trình xuất PTỌ Khi chương trình được quét đến phát biểu cuối(BE) của khôi tổ chức OB1, nội dung của ảnh quá trình xuất PIQđược chuyển đến các module xuất

Ẩnh quá trình xuâVnhập là vùng RAM nội mà mỗi vị trí bộ nhớđược gán cho mỗi ngõ vào sô" và ngõ ra sô"

Các thuận lợi:

Việc đệm các trạng thái nhập và xuất trong các ảnh quá trình bảo đảm

là các tín hiệu vào mà thay đổi trong chu kỳ quét không thể có hiệu ứng trênchuỗi chức năng

Hơn nữa, việc đệm các trạng thái tín hiệu của các ngõ vào và các ngõ ragiảm thời gian quét khi truy cập vào bộ nhớ dữ liệu hệ thông cần ít thời gianhơn nhiều truy cập trực tiếp vào các modules xuất/ nhập

1 Các module của PLC S7-300.

Để tăng tính mềm dẻo trong ứng dụng thực tế mà ở đó phần lớn các đôitượng điều khiển có sô" tín hiệu đầu vào, đầu ra cũng như chủng loại tín hiệuvào/ra khác nhau mà các bộ điều khiển PLC được thiết kê" không bị cứng hóa

về câu hình Chúng được chia nhỏ thành các module Sô" các module được sửdụng nhiều hay ít tùy thuộc vào từng bài toán, song tôi thiểu bao giờ cũng phải

có một module chính là module CPU Các module còn lại là những modulenhận/truyền tín hiệu với đôi tượng điều khiển, các module chuyên dụng nhưPID, điều khiển động cơ Chúng được gọi chung là module mở rộng

a Module CPU:

Trang 5

Luận Văn Tốt Nghiệp Phần 1

Module CPU là loại module có chứa bộ vi xử lý, hệ điều hành, bộ nhớ,các bộ định thời, bộ đếm, cổng truyền thông và có thể có một vài cổng vào ra

sô" Các cổng vào ra sô" có trên module CPU được gọi là cổng vào ra onboard.

Trong họ PLC S7-300 có nhiều loại module CPU khác nhau Chúng đượcđặt tên theo bộ vi xử lý có trong nó như module CPU312, module CPU314,module CPU315

Những module cùng sử dụng một loại bộ vi xử lý, nhưng khác nhau vềcổng vào/ra onboard cũng như các khôi hàm đặc biệt được tích hợp sẩn trongthư viện của hệ điều hành phục vụ việc sử dụng các cổng vào ra onboard này

sẽ được phân biệt với nhau trong tên gọi bằng thêm cụm từ IFM ( Intergrated

Function Module) Chẳng hạn module CPU312 IFM, module CPU314 Ngoài ra

còn có loại module với hai cổng truyền thông như module CPU315-DP

b Module mở rộng:

Module mở rộng có 5 loại chính:

❖ PS (Power Supply): Module nguồn nuôi Có 3 loại: 2A, 5A, 10A.

❖ SM (Signal Module): Module mở rộng cổng tín hiệu vào/ra, bao

gồm:

• DI (Digital ỉnputy Module mở rộng các cổng vào sô".

• DO (Digital Output): Module mỏ rộng các cổng ra sô".

• DI/DO: Module mở rộng các cổng vào/ra sô"

• AI (.Analog Input): Module mở rộng các cổng vào tương tự.

• AO (.Analog Output): Module mở rộng các cổng ra tương tự.

• AI/AO: Module mở rộng các cổng vào/ra tương tự

❖ IM (.ỉnterỷace module): Module ghép nôi Đây là loại module

chuyên dụng có nhiệm vụ nối từng nhóm các module mở rộng lạivới nhau thành một khôi và được quản lý chung bởi một module

CPU Các module mở rộng được gá trên một thanh rack Trên

mỗi rack có thể gá được tôi đa 8 module mở rộng (không kểmodule CPU và module nguồn nuôi) Một module CPU S7-300 cóthể làm việc trực tiếp được với nhiều nhâ"t 4 racks và các racksnày phải được nôi với nhau bằng module IM

Trang 6

Luận Văn Tốt Nghiệp Phần 1

> FM (

♦> FM ( Function ModuỉeỴ Module có chức năng điều khiển riêng, ví

dụ như module điều khiển động cơ bước, module điều khiển động

cơ servo, module PID, module điều khiển vòng kín,

CP

(Communicatiơn Moduỉe ): Module phục vụ truyền thông trong

mạng giữa các PLC với nhau hoặc giữa PLC với máy tính

2 Kiểu dữ liệu và phân chia bộ nhớ.

a Kiểu dữ liệu:

Trong một chương trình có thể có các kiểu dữ liệu sau:

• BOOL: với dung lượng 1 bit và có giá trị là 0 hay 1

• BYTE: gồm 8 bit, có giá trị nguyên dương từ 0 đến 255

• WORD: gồm 2 byte, có giá trị nguyên dương từ 0 đến 65535

• INT: có dung lượng 2 byte, dùng để biểu diễn sô" nguyên từ

-32768 đến 32767

• DINT: gồm 4 byte, biểu diễn sô" nguyên từ -2147463846 đến2147483647

• REAL: gồm 4 byte, biểu diễn sô" thực dâu phẩy động

• S5T: khoảng thời gian, được tính theo giờ/phút/giây/miligiây

• TOD: biểu diễn giá trị thời gian tính theo giờ/phút/giây

• DATE : biểu diễn giá trị thời gian tính theo năm/tháng/ngày

• CHAR: biểu diễn một hoặc nhiều ký tự (nhiều nhất là 4 kýtự)

b Phân chia bộ nhớ:

CPU S7-300 có 3 vùng nhớ cơ bản:

> Vùng nhớ hệ thông (System memory ): (RAM trong CPU) lưu trữ

dữ liệu hoạt động cho chương trình của ta:

• I (Process Input Image): Miền bộ đệm các dữ liệu cổng vào

sô" Trước khi bắt đầu thực hiện chương trình, PLC sẽ đọc giátrị logic của tất cả các cổng đầu vào và câ"t giữ chúng trongvùng nhớ T Thông thường chương trình ứng dụng không đọc

Trang 7

Luận Văn Tốt Nghiệp Phần 1

trực tiếp trạng thái logic của cổng vào sổ" mà chỉ lấy dữ liệucủa cổng vào từ bộ đệm I

• Q (Process Output Image): Miền bộ đệm các dữ liệu cổng ra

sô" Kết thúc giai đoạn thực hiện chương trình, PLC sẽchuyển giá trị logic của bộ đệm Q tới các cổng ra sô" Thôngthường chương trình không trực tiếp gán giá trị tới tận cổng

ra mà chỉ chuyển chúng vào bộ đệm Q

• M: Miền các biến cờ Chương trình ứng dụng sử dụng vùng

nhớ này để lưu trữ các tham sô" cần thiết và có thể truy nhập

nó theo bit (M), byte (MB), từ (MW), từ kép (MD)

• T (Timer): Miền nhớ phục vụ bộ định thời bao gồm việc lưu trữ các giá trị thời gian đặt trước (P\-Preset Value), giá trị

đếm thời gian tức thời (C'V-Current Value) cũng như giá trị

logic đầu ra của bộ thời gian

• c (Counter): Miền nhớ phục vụ bộ đếm bao gồm việc lưu trữ giá trị đặt trước (P\-Preset Value), giá trị đếm tức thời

('cv-Current Value) và giá trị logic của bộ đếm.

• PI ự/o External Input): Miền địa chỉ cổng vào của các

module tương tự Các giá trị tương tự tại cổng vào củamodule tương tự sẽ được module đọc và chuyển tự động theonhững địa chỉ

• PQ (I/O External Output ): Miền địa chỉ cổng ra của cácmodule tương tự Các giá trị tương tự tại cổng ra của moduletương tự sẽ được module đọc và chuyển tự động theo nhữngđịa chỉ

> Vùng nhớ nạp (loacl memory ): (RAM trong CPU, cộng thêm

EEPROM có sẩn trong CPU hoặc thẻ EEPROM gắn thêm) làvùng nhớ chứa chương trình của ta bao gồm tất cả các khôichương trình ứng dụng OB, FB, FC, các khôi chương trình trongthư viện hệ thống được sử dụng (SFB, SFC) và các khôi dữ liệu

DB Toàn bộ các khôi chương trình và các khôi dữ liệu nằmtrong RAM sẽ bị xóa khi tác động xóa bộ nhớ “CPU memoryreset” (MRES)

> Vùng nhớ làm việc (word memory ): (RAM trong CPU) chứa các

bản sao của các phần tử chương trình đang được CPU thực thi.Như các khôi DB đang được mở, khôi chương trình (OB, FB, FC,SFB, SFB) đang được CPU thực hiện và phần bộ nhớ câ"p phát

Trang 8

Thiết Kế Hê SCADA Dùng Win zc Trang 8

Trang 9

Luận Văn Tốt Nghiệp Phần 1

a Lập trình có cấu trúc (structured) :

Trong PLC Siemens S7 tổ chức theo các khôi mà có thể lập trình đượcvới từng nhiệm vụ riêng Loại hình cấu trúc này phù hợp với những bài toánđiều khiển nhiều nhiệm vụ và phức tạp PLC S7-300 có 4 loại khôi cơ bản:

❖ Khôi tổ chức OB (Oganization block) : Khôi tổ chức và quản lý

chương trình điều khiển

❖ Khôi hàm chức năng FB (Function block) : Là loại khôi FC

đặc biệt có khả năng trao đổi một lượng dữ liệu với các khôichương trình khác Các dữ liệu này phải được tổ chức thành khôi

dữ liệu riêng có tên gọi là Data block

>

♦> FM ( Khôi hàm (Function) : Khôi chương trình với những chức năng

riêng giồng như một chương trình con hoặc một hàm

❖ Khôi dữ liệu (Data block) : Khôi chứa các dữ liệu cần thiết để

thực hiện chương trình Các tham sô" khôi do ta tự đặt

Ngoài ra còn có các khôi hệ thông như : SFB, SFC, SDB

Toàn bộ các khôi chương trình con được quản lý một cách thông nhâl bởikhôi OB1 Chương trình trong các khôi được liên kết với nhau bằng các lệnhgọi khôi, chuyển khôi Từng nhiệm vụ điều khiển con có thể được chia thànhnhững nhiệm vụ nhỏ và cụ thể hơn nữa, do đó một khôi chương trình con cũng

có thể được gọi từ một khôi chương trình con khác Nhưng tránh không bao giờmột khôi chương trình con lại gọi đến chính nó

Khi thực hiện lệnh gọi một khôi con, hệ điều hành sẽ:

• Chuyển khôi con được gọi từ vùng load memory vào vùng wordmemory

• Câ"p phát cho khôi con một phần bộ nhớ trong word memory đểlàm local block Câu trúc local block được quy định khi soạn thảocác khôi

• Truyền các tham trị từ khôi mẹ cho biến hình thức IN, IN-OUTcủa local block

• Sau khi khôi con thực hiện xong nhiệm vụ và ghi kết quả dướidạng tham trị đầu ra cho biến OUT, IN-OUT của local block, hệđiều hành sẽ chuyển các tham trị này cho khôi mẹ và giải phóngkhôi con cùng local block ra khỏi word memory

Trang 10

-Bảng 1.1: so sánh khả năng lập trình của các PLC SIMATIC S7-300.

Trang 11

Luận Văn Tốt Nghiệp Phần 1

I sử DỤNG CÁC Ô NHỚ VÀ CAU TRÚC THANH GHI TRẠNG THÁI.

1 Địa chỉ ô nhổ.

Địa chỉ ô nhớ gồm phần chữ và phần sô"

a Phần chữ: chỉ vị trí và kích thước ô nhớ.

• M: chỉ ô nhớ trong miền các biến cờ có kích thước là 1 bit

• MB: chỉ ô nhớ trong miền các biến cờ có kích thước là 1 byte

• MW: chỉ ô nhớ trong miền các biên cờ có kích thước là 2bytes

• MD: chỉ ô nhớ trong miền các biến cờ có kích thước là 4bytes

• I: chỉ ô nhớ có kích thước là 1 bit trong miền bộ đệm cổng vàosô"

• IB: chỉ ô nhớ có kích thước là 1 byte trong miền bộ đệm cổngvào sô"

• IW: chỉ ô nhớ có kích thước là 1 từ trong miền bộ đệm cổngvào sô"

Trang 12

Luận Văn Tốt Nghiệp Phần 1

• ID: chỉ ô nhớ có kích thước là 2 từ trong miền bộ đệm cổng

• T: chỉ ô nhớ trong miền nhớ của bộ thời gian Timer

• C: chỉ ô nhớ trong miền nhớ của bộ đếm Counter.

• PIB: chỉ ô nhớ có kích thước 1 byte thuộc vùng peripheral

input

• PIW: chỉ ô nhớ có kích thước 1 từ thuộc vùng peripheral input.

• PID: chỉ ô nhớ có kích thước 2 từ thuộc vùng peripheral input.

• PQB: chỉ ô nhớ có kích thước 1 byte thuộc vùng peripheral

• DBX: chỉ ô nhớ có kích thước 1 bit trong khôi dữ liệu DB.

• DBB: chỉ ô nhớ có kích thước 1 byte trong khôi dữ liệu DB.

• DBW: chỉ ô nhớ có kích thước 1 từ trong khôi dữ liệu DB.

• DBD: chỉ ô nhớ có kích thước 2 từ trong khối dữ liệu DB.

b Phần sô:

Chỉ địa chỉ của byte hoặc bit trong miền nhớ đã xác định

Nếu ô nhớ đã được xác định thông qua phần chữ là có kích thước 1 bit thìphần sô" sẽ gồm địa chỉ của byte và sô" thứ tự của bit trong byte đó được tách vớinhau bằng dâu châm

Trang 13

2 28 27 26 25 24 23 22 2' 2°

Trang 14

RLO Bít FCBit Explanation

0 TTT b*t next = 0 indicates that

instruction begins logic

truth table FƯ bít remaíns

= Q 4.0 1 -4 0 RLOcoil bit is reset to 0.IS asslgned to output

Trang 15

0 0 Tràn dãi trị âm trong +1 và +D

0 1 Tràn dãi trị âm trong *I và *D

Tràn dãi trị dương trong +1, -I, +D, -D, NEGI và NEGD

1 0 Tràn dãi trị dương trong *I, *D, /I và /D

Tràn dãi trị âm trong +1, -I, +D, -D

1 1 Chia cho 0 trong /I, /D, và MOD

Bảng 1.2: CC1 và cco sau lệnh toán học, không có tràn.

Bảng 1.3: CCỈ và cco sau lệnh toán học số nguyên, có tràn.

Bảng 1.4: CC1 và cco sau các lệnh toán học dấu chấm động, có trùn.

Trang 16

Bảng 1.7 : CC1 và cco sau các lệnh logic trên word.

• Bit BR (Binary Result)

Bit BR tạo liên kết giữa xử lý các bit và các word Đây là phương tiệnhữu hiệu để diễn dịch kết quả của phép toán trên word như kết quả nhị phân vàđưa kết quả này vào chuỗi logic nhị phân Với cách nhìn này, bit BR biễu diễnbit bộ nhớ bên trong máy mà RLO cất vào trước khi một phép toán word làmthay đổi RLO, để cho RLO khả dụng lần nữa sau khi phép toán tiếp tục chuỗilogic bit bị ngắt

Bit BR tương ứng với ngõ ra cho phép (ENO = enable output) của hộpLAD Ta nên sử dụng lệnh SAVE để cất RLO vào bit BR theo các tiêu chuẩnsau:

• Cất bit RLO =1 vào bit BR cho trường hợp mà FB hay FC đượcthực thi không có lỗi

• Cất bit RLO =0 vào bit BR cho trường hợp mà FB hay FC đượcthực thi có lỗi

Ta nên lập trình các lệnh này ở cuối FB hay FC để chúng là các lệnhcuối cùng được thực thi trong khôi

II CÁC LỆNH VÀ PHÉP TOÁN.

Trang 17

Luận Văn Tốt Nghiệp Phần 1

1 Lệnh nạp chuyển.

Các lệnh này dùng để trao đổi thông tin bằng byte, word hay doubleword giữa các module nhập và xuất, PTĨ và PTQ, bộ định thời, bộ đếm và cờ,các khôi dữ liệu (DB)

Dữ liệu thường không được trao đổi trực tiếp mà luôn luôn thông quathanh ghi tích lũy ACCU Nó là thanh ghi trong bộ xử lý và được dùng như bộđệm (buffer)

Dòng đi thông tin như sau:

• Nạp (LOAD) từ bộ nhớ nguồn vào ACCU.

• Chuyển (TRANSFER) từ ACCU đến bộ nhớ đích.

Trong PLC có 2 thanh ghi: ACCU1 và ACCU2, mỗi thanh ghi có chiềudài 2 word

Chú v:

> Load và Transíer trực tiếp không qua PII và PIQ:

♦> FM (

L PTB T

PQW

Với p là viết tắt của Peripheral (ngoại vi)

• Các lệnh Load và Transfer trực tiếp chỉ có thể lập trình bằng dạngSTL (ngoại trừ các toán hạng của Timer, Counter và các lệnh sosánh)

2 Các lệnh tác động vào RLO và ô nhớ.

• SET: lệnh ghi logic 1 vào RLO

• CLR: lệnh ghi logic 0 vào RLO.

• NOT: lệnh đảo giá trị của RLO

• S: lệnh gán có điều kiện giá trị logic 1 vào ô nhớ

• R: lệnh gán có điều kiện giá trị logic 0 vào ô nhớ.

• FP ctoán hạng> : lệnh phát hiện sườn lên.

Toán hạng là địa chỉ bit I, Q, M, L, D và được sử dụng như một biến cờ

để ghi nhận lại giá trị của RLO tại vị trí này trong chương trình, nhưng của vòngquét trước Tại mỗi vòng quét lệnh sẽ kiểm tra: nếu toán hạng có giá trị 0 vàRLO có giá trị 1 thì sẽ ghi 1 vào RLO, các trường hợp khác thì ghi 0, đồng thờichuyển nội dung của RLO vào lại biến cờ Như vậy RLO sẽ có giá trị 1 trongmột vòng quét khi có sườn lên trong RLO •

• FN ctoán hạng> : lệnh phát hiện sườn xuống.

Trang 18

Luận Văn Tốt Nghiệp Phần 1

Toán hạng là địa chỉ bit I, ọ, M, L, D và được sử dụng như một biến cờ

để ghi nhận lại giá trị của RLO tại vị trí này trong chương trình, nhưng của vòngquét trước Tại mỗi vòng quét lệnh sẽ kiểm tra: nếu toán hạng có giá trị 1 vàRLO có giá trị 0 thì sẽ ghi 1 vào RLO, các trường hợp khác thì ghi 0, đồng thờichuyển nội dung của RLO vào lại biến cờ Như vậy RLO sẽ có giá trị 1 trongmột vòng quét khi có sườn lên trong RLO

• SAVE : lệnh chuyển giá trị của RLO vào BR

• Và một sô" phép tính cơ bản

3 Các lệnh tác động vào 2 thanh ghi ACCU1 và ACCU2.

a Nhóm lệnh đảo vị trí bytes:

• POP : lệnh chuyển nội dung của ACCU2 vào ACCU1.

• PUSH : lệnh chuyển nội dung của ACCU1 vào ACCU2.

• TAK : lệnh đảo nội dung của 2 thanh ghi ACCU1 và ACCU2.

• CAW : lệnh đảo nội dung 2 bytes của từ thâ"p trong ACCU1.

• CAD : lệnh đảo nội dung các bytes trong ACCU1.

• INVI : lệnh đảo giá trị các bits trong từ thấp của ACCU1

• INVD : lệnh đảo giá trị các bits của ACCU1.

b Nhóm lệnh tăng giảm :

• INC ctoán hạng> : lệnh tăng nội dung thanh ghi ACCU1.

Toán hạng là sô" nguyên 8 bits Lệnh thực hiện phép cộng giữa byte thấpcủa từ thấp trong ACCU1 với toán hạng Kết quả được ghi lại vào byte thấp của

từ thấp của ACCU1 •

• DEC ctoán hạng> : lệnh giảm nội dung thanh ghi ACCU1.

Toán hạng là sô" nguyên 8 bits Lệnh thực hiện phép trừ byte thâ"p của từthâ"p trong ACCU1 cho toán hạng Kết quả được ghi lại vào byte thâ"p của từthấp của ACCU1

Trang 19

Instruction Rotate Via cc 1? Direction Indication of Number of Places toShiít Shitt Range

KỈJ)n No l.ctt In the instruction statement n=0 to 32

RLD No l.cít In the low hyte ol ưie low word oí

accumulaior 2

0 to 255

RRD No Right In the instruetion stutement 0 to 32

RKI) No Right In the low hyte ol’ the low word oí

accumulator 2

0 to 255

Hình 1.2: xoay ACCUI qua trái 3 bit.

Thí du: xoay phải word kép.

L +3

L MD10RRD

T MD20

Trang 20

The three bits that are

shitted oưt are inserted

Hình 1.3: xoay ACCU1 phải 3 bit.

The last bit shitted is also stored in cc

The signal State of the

cc 1 bit IS loaded into

Hình 1.4: xoay trái ỉ bit qua CC1

• SLW [ctoán hạng>]: dịch trái các bits trong từ thấp của

ACCU1 Bit 0 được ghi 0, bit 15 đẩy vào CC1

• SLD [ctoán hạng>]: dịch trái các bits của ACCU1 Bit 0

được ghi 0, bit 31 đẩy vào CC1

• SRW [<toán hạng>]: dịch phải các bits trong từ thấp của

ACCU1 Bit 0 được ghi 0, bit 15 đẩy vào CC1

• SRD [<toán hạng>]: dich phai cac bits cua ACCU1 Bit 0

được ghi 0, bit 31 đẩy vào CC1

• SSI [<toán hạng>]: dịch phải các bits trong từ thấp của

ACCU1 Bit 0 đẩy vào CC1, bit 15 ghi lại giá trị cũ

• SSD [<toán hạng>]: dịch phải các bits của ACCU1 Bit 0

đẩy vào CC1, bit 31 ghi lại giá trị cũ

Trang 21

nguyên kép

Đổi sô" BCD trong ACCU1 sang sô" nguyên kép

32 bitsTTB Sô" nguyên sang

sang sô" thực

Đổi sô" nguyên kép 32 bits trong ACCU1 sang sô"

dâu châm động IEEE 32 bits (sô" thực)

RND Làm tròn Làm tròn sô" được chuyển đổi đến sô" nguyên

gần nhất Nêu phần phân sô" ở giữa kết quảchẩn và lẻ thì sẽ chọn kết quả chẩn

TRUNC Bỏ phần lẻ Chỉ lây phần nguyên của sô" châm động

Bảng 1.9: chuyển đổi sô BCD và sô' nguyên.

c Nhóm lệnh chuyển đổi sô dấu châm động 32 bits sang sô' nguyên 32 bits:

Ta có thể sử dụng bâ"t kỳ một trong các lệnh sau để chuyển đổi sô" dâuchâm động IEEE 32 bits trong thanh ghi ACCU1 thành sô" nguyên kép (các lệnhkhác nhau về cách làm tròn) và kết quả được cất ở ACCU1

Trang 22

datatype có thể là I (sô" nguyên 16 bits), D (sô" nguyên kép 32 bits), R (sô" thực).

Ấnh hưởng của việc thực thi lệnh so sánh lên mã điều kiện CC1 và cco.

Trang 23

> Với sô" nguyên 16 bits: có các lệnh thực hiện cộng (+ĩ), trừ

(-I), nhân (*(-I), chia (/I) Lây word thấp của ACCU2 +,-,*,/ vớiword thấp của ACCU1, kết quả lại vào word thấp củaACCU1

> Với sô" nguyên kép 32 bits: có các lệnh thực hiện cộng (+D),

trừ (-D), nhân (*D), chia (/D) Lấy ACCU2 +,-,*,/ với ACCU1,kết quả lại vào ACCU1

> Với sô" thực: có các lệnh thực hiện cộng (+R), trừ (-R), nhân (*R), chia (/R) Lây ACCU2 với ACCU1, kết quả lạivào ACCU1

> Các lệnh toán học mở rộng trên sô" thực:

Tâ"t cả các lệnh sau đều thực hiện phép toán với đôi sô" vào ở ACCU1 vàkết quả cất ở ACCU1

• ABS: lây trị tuyệt đôi

• SQRT: tính căn bậc hai (square root) xl/2

4 Các lệnh điều khiển logic và điều khiển chương trình.

Trang 24

Luận Văn Tốt Nghiệp Phần 1

a Các lệnh điều khiển lơgic:

Ta có thể sử dụng các lệnh jump (bắt đầu bằng J) và loop để điều khiển

rẽ nhánh trong một khôi chương trình Địa chỉ cho lệnh jump và loop là nhãnnhảy đến trong chương trình (label)

Có các lệnh điều khiển logic sau:

• Lệnh nhảy không điều kiện: JU, JL

• Lệnh nhảy có điều kiện theo RLO: JC, JCN, JCB, JNB

• Lệnh nhảy có điều kiện theo BR hoặc OV/OS: JBI, JNBI, JO,JOS

• Lệnh nhảy theo mã điều kiện cco, CC1: JZ,JN, JP, JM, JMZ,JPZ, JUO

• Lệnh điều khiển lặp vòng: LOOP

Nhãn nhảy đến trong khôi chương trình để đánh dấu nên chuyển điềukhiển logic tới (nơi rẽ nhánh đến) Nó có chiều dài tối đa là 4 ký tự, và ký tựđầu phải là chữ, sau nó phải có dấu hai chấm

> Các lệnh nhảy không điều kiện:

• Lệnh nhảy không điều kiện JU: lệnh này ngắt luồng điều

khiển bình thường và nhảy đến nhãn được chỉ sau JU.Lệnh này được thực hiện bất chấp điều kiện nào

• Lệnh nhảy theo danh sách JL: (giống lệnh case hay

swỉtch trong các ngôn ngữ lập trình khác).

> Các lệnh nhảy có điều kiện dựa vào RLO:

• JC nhãn: nhảy đến nhãn nếu RLO=l còn ngược lại thìthực hiện lệnh kế

• JCN nhãn: nhảy đến nhãn nếu RLO=0 còn ngược lại thì

thực hiện lệnh kế

• JCB nhãn: nếu RLO=l thì gán trị RLO vào BR và nhảy

đến nhãn, còn ngược lại thì thực hiện lệnh kế

• JNB nhãn: nêu RLO=0 thì gán trị RLO vào BR và nhảy

đến nhãn, còn ngược lại thì thực hiện lệnh kế

> Các lệnh nhảy có điều kiện dựa theo BR hay ov/ OS:

Theo điều kiện của BR:

• JBI nhãn: nếu BR=1 thì nhảy đến nhãn, còn ngược lại thì

thực hiện lệnh kế

Trang 25

Luận Văn Tốt Nghiệp Phần 1

• JNBI nhãn; nếu BR=0 thì nhảy đến nhãn, còn ngược lại

thì thực hiện lệnh kế

Chú ý: các lệnh JBI và JNBI reset các bit OR và FC trong

STW về 0 và set bit STA lên 1

Theo điều kiện OV:

• JO nhãn: nếu OV=l thì nhảy đến nhãn, còn ngược lại thì

thực hiện lệnh kế

Theo điều kiện OS:

• JOS nhãn: nếu OV=l thì nhảy đến nhãn, còn ngược lại thì

thực hiện lệnh kế

Lệnh này reset bit os về 0

> Các lệnh nhảy có điều kiện dựa theo CC1 và CCO:

> Lệnh điều khiển vòng lặp:

Ta có thể sử dụng lệnh LOOP để thực hiện một đoạn chương trình nhiềulần Lệnh LOOP giảm word thấp của ACCU1 bớt đi 1 và kiểm tra trị mới cóđược ở ACCU1 Nếu ACCU1 lúc này khác không thì nhảy đến nhãn chỉ ra kếLOOP, còn ngược lại thì thực hiện lệnh kế

b Các lệnh điều khiến chương trình:

Trang 26

Luận Văn Tốt Nghiệp Phần 1

Ta có thể sử dụng các lệnh sau để điều khiển chương trình

■ Lệnh gọi CALL dùng để gọi FC, FB, SFC hay SFB mà bấtchấp RLO hay bất cứ điều kiện nào khác

■ Lệnh gọi có điều kiện (CC) và không điều kiện (UC) dùng đểgọi các FC không có tham sô"

■ Lệnh gọi không điều kiện (UC) dùng để gọi SFC không cótham số

■ Rờ-le điều khiển chính MCR (Master Control Relay)

■ Các lệnh kết thúc khôi không điều kiện (BEU) và kết thúckhôi có điều kiện (BEC)

Gán tham sô" khi gọi hàm và khôi hàm

Tham sô" hình thức (formaI parameter): là tham sô" mà tên và kiểu dữ

liệu của nó được gán và khai báo khi tạo khôi Sau đó khi viết chương trình thìSTEP7 tự động liệt kê tâ"t cả các tham sô" hình thức

Khi đó ta phải gán các tham sô" thật (actual parameter) cho các tham

sô" hình thức Tham sô" thật là tham sô" là hàm và khôi hàm sử dụng trong lúcchạy chương trình Tham sô" thật phải có cùng kiểu dữ liệu với tham sô" hìnhthức tương ứng gán cho nó

> Gọi hàm và khôi hàm bằng CALL:

Ta có thể sử dụng lệnh CALL để gọi các hàm (FC) và khôi hàm (FB),lệnh này gọi FC hay FB do ta chỉ ra và được thực thi bất châ"p RLO hay bâ"t kỳđiều kiện nào khác

Khi ta gọi khôi hàm FB thì ta phải cung câ"p khôi dữ liệu instance cục bộ.Khôi dữ liệu instance chứa tâ"t cả các biến tĩnh và các tham sô" thật của khôihàm

Khi ta gọi khôi hàm thì lệnh CALL chép lại một trong các mục sau vàokhôi dữ liệu instance của khôi hàm, phụ thuộc vào kiểu dữ liệu của tham sô"thật và vào khai báo của tham sô" hình thức (IN, OUT, IN-OUT):

• Giá trị của tham sô" thật

• Pointer chỉ đến địa chỉ của tham sô" thật

• Pointer chỉ đến “L stack” của khôi gọi mà ở đó giá trị củatham sô" thật đã được đệm

Gọi FB với DB instance và các tham sô" khối:

Việc gọi có thể xảy ra một khi các chi tiết sau đã được đưa vào lúc

CALL:

Trang 27

Ghi 0

thường

bình Thực thi bìnhthường

Thực thi bìnhthường

■ MCR( : cất RLO vào ngăn xếp MCR, bắt đầu vùng MCR

■ )MCR : lây lại RLO, kết thúc vùng MCR

Chú v: không bao giờ sử dụng lệnh MCR cho thiết bị an toàn hay cấp

cứu!

Ngày đăng: 30/12/2015, 17:40

HÌNH ẢNH LIÊN QUAN

Bảng 1.3: CCỈ và cco sau lệnh toán học số nguyên, có tràn. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Bảng 1.3 CCỈ và cco sau lệnh toán học số nguyên, có tràn (Trang 15)
Bảng 1.8: tóm tắt các lệnh xoay bit. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Bảng 1.8 tóm tắt các lệnh xoay bit (Trang 19)
Bảng 1.12: các lệnh phụ thuộc MCR. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Bảng 1.12 các lệnh phụ thuộc MCR (Trang 27)
Hình 1.7: các lệnh cho phép sử dụng tỉmer word như' địa chỉ. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Hình 1.7 các lệnh cho phép sử dụng tỉmer word như' địa chỉ (Trang 31)
Hình 1.10:  giản đồ xung cho tỉmer SP. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Hình 1.10 giản đồ xung cho tỉmer SP (Trang 32)
Hình 1.11: giản đồ xung cho timer SE. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Hình 1.11 giản đồ xung cho timer SE (Trang 33)
Hình 1.13: nạp giá trị counter vào ACCU1 dùng lệnh L. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Hình 1.13 nạp giá trị counter vào ACCU1 dùng lệnh L (Trang 34)
Hình   1.14:   nạp   giá   trị   counter   vào   ACCU1   dùng   lệnh   LC. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
nh 1.14: nạp giá trị counter vào ACCU1 dùng lệnh LC (Trang 35)
Hình 1.16: các  vùng nhớ trong  các CPU của PLC S7-300. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Hình 1.16 các vùng nhớ trong các CPU của PLC S7-300 (Trang 36)
Hình 1.19: chu kỳ quét CPU. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Hình 1.19 chu kỳ quét CPU (Trang 41)
Bảng 1.18: lơcal block của khối OB35. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Bảng 1.18 lơcal block của khối OB35 (Trang 45)
Bảng ỉ.20: local blơck của khối OB80. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
ng ỉ.20: local blơck của khối OB80 (Trang 46)
Bảng 1.22: local block của khối OB83. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Bảng 1.22 local block của khối OB83 (Trang 47)
Bảng 1.24: local block của khối OB87. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Bảng 1.24 local block của khối OB87 (Trang 48)
Bảng 1.27: các biến cục bộ của OBỈ. - Luận văn tốt nghiệp thiết kế hệ scada dùng wincc
Bảng 1.27 các biến cục bộ của OBỈ (Trang 51)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w