CHỨC NĂNG TỐN HỌC

Một phần của tài liệu Giáo trình PLC cơ bản (Nghề: Điện công nghiệp - CĐ/TC) - Trường Cao đẳng nghề Đồng Tháp (Trang 87 - 105)

Chuyển đổi số BCD_I và I BCD

5.5 CHỨC NĂNG TỐN HỌC

Cỏc lệnh số học dựng để thực hiện cỏc phộp tớnh số học trong chương trỡnh. Trong LAD, bốn hộp toỏn (math box) thực hiện cỏc phộp tớnh cộng, trừ 16-bit và 32-bit. Hộp nhõn (multiply box) nhõn hai số nguyờn 16-bit và kết quả là một số nguyờn 32-bit. Hộp chia (divide box) chia hai số 16-bit, thương là một số 16-bit và dư cũng 16-bit được nạp vào từ ngay trước. Nếu lập trỡnh bằng LAD, cú thể tiết kiệm ụ nhớ bằng cỏch sử dụng đầu vào IN1 đồng thời cũng là đầu ra OUT.

Trong STL, lệnh thực hiện bốn phộp tớnh số học được qui định cho toỏn hạng 16-bit và 32-bit. Hộp nhõn thực hiện phộp nhõn hai số nguyờn 16-bit và tớch số là một số nguyờn 32-bit. Lệnh chia thực hiện phộp chia một số nguyờn 16-bit với 16- bit cuối của một số nguyờn 32-bit. Kết quả là một giỏ trị từ kộp (32-bit) trong đú từ thấp (từ bit 0 đến bit 15) là thương số và từ cao (từ bit 16 đến 31 bit) là số dư của phộp tớnh.

Phộp cộng

ADD_I (LAD)

+I (STL)

Lệnh thực hiện phộp cộng cỏc số nguyờn 16-bit IN1 và IN2. Trong LAD kết quả là một số nguyờn 16-bit được ghi vào OUT, tức là IN1 + IN2 = OUT.

Trong STL, kết quả cũng là một giỏ trị 16-bit nhưng được ghi lại vào IN2, tức là IN1 + IN2 = IN2.

Phộp trừ

SUB_I (LAD) -I (STL)

Lệnh thực hiện phộp trừ cỏc số nguyờn 16-bit IN1 và IN2. Trong LAD kết quả là một số nguyờn 16-bit và được ghi vào OUT, tức là IN1 – IN2 = OUT.

Trong STL, kết quả cũng là một giỏ trị 16-bit nhưng được ghi lại vào IN2, tức là IN1 – IN2 = IN2.

Cỳ phỏp dựng lệnh cộng, trừ hai số nguyờn 16-bit trong LAD và STL như sau:

LAD STL Toỏn hạng

+I IN1 IN2

IN1, IN2 VW, T, C, QW, MW, SMW, (word) AC, AIW, hằng số, *VD, *AC OUT VW, T,C, QW, MW, SMW, (word) AC, *VD, *AC

- I IN1 IN2 ADD_DI (LAD) +D (STL)

Lệnh thực hiện phộp cộng cỏc số nguyờn 32-bit IN1 và IN2. Trong LAD kết quả là một số nguyờn 32-bit được ghi vào OUT, tức là IN1 + IN2 = OUT.

Trong STL, kết quả cũng là một giỏ trị 32-bit nhưng được ghi lại vào IN2, tức là IN1 + IN2 = IN2.

SUB_DI (LAD) -D (STL)

Lệnh thực hiện phộp trừ cỏc số nguyờn 32-bit IN1 và IN2. Trong LAD kết quả là một số nguyờn 32-bit và được ghi vào OUT, tức là IN1 – IN2 = OUT.

Trong STL, kết quả cũng là một giỏ trị 32-bit nhưng được ghi lại vào IN2, tức là IN1 – IN2 = IN2.

Cỳ phỏp dựng lệnh cộng, trừ hai số nguyờn 32-bit trong LAD và STL như sau:

LAD STL Toỏn hạng

+D IN1 IN2

IN1, IN2 VW, T, C, QW, MW, SMW, (từ kộp) AC, AIW, hằng số, *VD, *AC OUT VW, T, C, QW, MW, SMW, (từ kộp) AC, *VD, *AC

- D IN1 IN2

ADD_R (LAD) +R (STL)

Lệnh thực hiện phộp cộng cỏc số thực 32-bit IN1 và IN2. Trong LAD kết quả là một số thực 32-bit được ghi vào OUT, tức là IN1 + IN2 = OUT.

Trong STL, kết quả cũng là một giỏ trị thực 32-bit nhưng được ghi lại vào IN2, tức là IN1 + IN2 = IN2.

SUB_R (LAD) -R (STL)

Lệnh thực hiện phộp trừ cỏc số thực 32-bit IN1 và IN2. Trong LAD kết quả là một số thực 32-bit và được ghi vào OUT, tức là IN1 – IN2 = OUT.

Trong STL, kết quả cũng là một giỏ trị thực 32-bit nhưng được ghi lại vào IN2, tức là IN1 – IN2 = IN2

LAD STL Toỏn hạng +R IN1 IN2

IN1, IN2 VD, ID, QD, MD, SMD, (từ kộp) AC, HC, hằng số, *VD, *AC OUT VD, ID, QD, SMD, AC (từ kộp) *VD, *AC - R IN1 IN2 PHẫP NHÂN MUL

Trong LAD: Lệnh thực hiện phộp nhõn hai số nguyờn 16-bit IN1 và IN2 và cho ra kết quả 32-bit chứa trong từ kộp OUT (4 byte).

Trong STL: Lệnh thực hiện phộp nhõn giữa số nguyờn 16-bit n1 và số nguyờn chứa trong từ thấp (từ bit 0 đến bit 15) của toỏn hạng 32-bit n2 (4 byte). Kết quả 32-bit được ghi lại vào n2.

Cỳ phỏp dựng lệnh nhõn hai số nguyờn trong LAD và STL như sau:

LAD STL Toỏn hạng

MUL n1 n2

n1, IN1, IN2 VW, T, C, IW, QW, MW (word) AC,AIW, hằng số,*VD,*AC N2, OUT VD, ID, QD, SMD , AC (từ kộp) *VD, *AC

PHẫP CHIA DIV

Trong LAD: Lệnh thực hiện phộp chia số nguyờn 16-bit IN1 cho số nguyờn 16- bit IN2. Kết quả 32-bit chứa trong từ kộp OUT (4 byte) gồm thương số ghi trong mảng 16-bit từ bit 0 đến bt 15 (từ thấp) và phần dư cũng 16 bit ghi trong mảng từ bit 16 đến 31 (từ cao).

Trong STL: Lệnh thực hiện phộp chia số nguyờn 16-vit n1 cho số nguyờn 16- bit nằm trong từ thấp (từ bỡ 0 đến bit 15) của toỏn hạng 32-bit n2 (4 byte). Kết quả 32-bit đươc ghi lại vào n2 bao gồm thương số ghi trong mảng 16-bit từ bit 0 đến bit 15 (từ thấp) và phần dư ghi trong mảng 16 bit từ bit 16 đến bit 31 (từ cao).

Cỳ phỏp dựng lệnh chia hai số nguyờn trong LAD và STL như sau:

LAD STL Toỏn hạng

DIV n1 n2

n1, IN1, IN2 VW, T, C, IW, QW, MW (word) AC, AIW, hằng số,*VD,*AC N2, OUT VD, ID, QD, SMD, AC (từ kộp) *VD, *AC

MUL_R (LAD) *R (STL)

Trong LAD: Lệnh thực hiện phộp nhõn hai số thực 32-bit IN1 và IN2 và cho ra kết quả 32-bit chứa trong từ kộp OUT (4 byte).

Trong STL: Lệnh thực hiện phộp nhõn giữa số thực 32-bit IN1 và IN2. Kết quả 32-bit được ghi lại vào IN2.

Cỳ phỏp dựng lệnh nhõn hai số thực trong LAD và STL như sau:

LAD STL Toỏn hạng

*R IN1 IN2 IN1, IN2 VD, ID, QD, MD, SMD, (từ kộp) AC, HC, hằng số, *VD, *AC OUT VD, ID, QD, SMD, AC (từ kộp) *VD, *AC

DIV_R (LAD) /R (STL)

Trong LAD: Lệnh thực hiện phộp chia hai số thực 32-bit IN1 cho số thực 32-bit IN2 và cho ra kết quả 32-bit chứa trong từ kộp OUT (4 byte).

Trong STL: Lệnh thực hiện phộp chia số thực 32-bit IN1 cho số thực IN2. Kết quả 32-bit được ghi lại vào IN2.

Cỳ phỏp dựng lệnh chia hai số thực trong LAD và STL như sau:

LAD STL Toỏn hạng

/R IN1 IN2 IN1, IN2 VD, ID, QD, MD, SMD, (từ kộp) AC, HC, hằng số, *VD, *AC OUT VD, ID,QD, SMD ,AC (từ kộp) *VD, *AC

PHẫP LẤY CĂN BẬC HAI SQRT

Lệnh thực hiện phộp lấy căn bậc hai của số thực 32-bit IN. Kết quả cũng là một số 32-bit được ghi vào từ kộp OUT (4 byte).

Cỳ phỏp dựng lệnh chia hai số thực trong LAD và STL:

LAD STL Toỏn hạng

SQRT

IN OUT IN VD, ID, QD, MD, SMD, (từ kộp) AC, HC, hằng số, *VD, *AC

OUT VD, ID, QD, SMD, AC (từ kộp) *VD, *AC

Vớ dụ minh hoạ cỏch sử dụng cỏc lệnh số học với số nguyờn trong LAD và STL

Với cỏc giỏ trị đầu

AC0 = 6000 AC1 = 4000 VW102= 200 VW202 = 4000 VW10 = 41 Thỡ kết quả của vớ dụ trờn sẽ là: Phộp cộng Phộp nhõn Phộp chia AC0 = 10000 VD100 = 800000 VD = 23 97 Phần dư thương LAD STL LD I0.0 +I AC1 AC0 MUL AC1 VD100 DIV VW10 VD200

Vớ dụ minh hoạ cỏch sử dụng cỏc lệnh số học với số thực trong LAD và STL Nếu C-word của bộ đếm C10 cú giỏ trị là 101 và từ kộp VD4 cú giỏ trị thương là 2,54 thỡ nội dung của cỏc ụ nhớ VD0, VD8 và VD12 sẽ lần lượt cú giỏ trị như sau:

C10 = 101 VD0 = 101,0 VD4 = 2,54 VD8 = 256,54 VD12 = 256

Vớ dụ: Thực hiện cỏc phộp toỏn số học sau:

Viết 1 chương trỡnh sao cho khi ấn I0.0 thỡ giỏ trị tại IW2 + 5 và hiển thị ra QW6. Khi nhấn I0.1 thỡ giỏ trị IW2 – 2 và hiện thị ra QW6. Khi nhấn I0.2 thỡ giỏ trị IW2 nhõn 4, hiển thị ra QW6. Nhấn I0.3 thỡ giỏ trị tại IW2 chia 3 và hiện thị ra QW6.

Chương trỡnh được viết trong LAD như sau:

LAD STL LD I0.0 MOVD K0 AC1 MOVW C10 AC1 DTR AC1 VD0 MOVR VD0 VD8 *R VD4 VD8 TRUNC VD8 VD12

5.6 Đồng hồ thời gian thực

Đồng hồ thời gian thực chỉ cú với CPU 214. Những giỏ trị đọc được hoặc ghi được với đồng hồ thời gian thực là cỏc giỏ trị về ngày, thỏng, năm và cỏc giỏ trị về giờ, phỳt, giõy. Cỏc dữ liệu đọc, ghi với đồng hồ thời gian thực trong LAD và trong STL cú độ dài 1 byte và phải được mĩ húa theo theo kiểu số nhị thập phõn thõn BCD (thớ dụ 16#95 cho năm 95). Chỳng nằm trong bộ đệm gồm 8 byte liền nhau theo thứ tự:

Riờng giỏ trị về ngày trong tuần là một số tương ứng

Chủ nhật Thứ hai Thứ ba Thứ tư Thứ năm Thứ sỏu Thứ bẩy

1 2 3 4 5 6 7 Byte 0 Năm (0 ữ 99) Byte 1 Thỏng (0 ữ 12) Byte 2 Ngày (0 ữ 31) Byte 3 Giờ (0 ữ 23) Byte 4 Phỳt (0 ữ 59) Byte 5 Giõy (0 ữ 59) Byte 6 0

Cỏc lệnh đọc, ghi: READ_RTC (LAD)

TODR (STL) Lệnh đọc nội dung của đồng hồ thời gian thực vào bộ đệm 8 byte được chỉ thị trong lệnh bằng toỏn hạng T.

SET_RTC (LAD)

TODW (STL) Lệnh ghi nội dung của bộ đệm 8 byte được chỉ thị trong lệnh bằng túan hạng T vào đồng hồ thời gian thực.

Bài tập 1: Bỏo giờ làm việc và tan tầm. Mụ tả hoạt động;

Một xớ nghiệp được trang bị một hệ thống tự động bỏo giờ làm việc và tan tầm như sau: - Giờ làm việc: Đỳng 7:00 giờ sỏng, thỡ một hồi cũi vang lờn kộo dài trong 1 phỳt bỏo hiệu giờ làm việc bắt đầu.

- Giờ tan tầm: Đỳng 17:00 giờ, thỡ một hồi cũi vang lờn kộo dài trong 1 phỳt bỏo hiệu giờ làm việc kết thỳc. Nhiệm vụ:- Lập bảng xỏc lập vào/ra.

- Vẽ sơ đồ kết nối với PLC. - Viết chương trỡnh.

- Nạp chương trỡnh vào PLC và thử chương trỡnh.

Bài tập 2. Điều khiển hệ thống lũ sưởi. Để điều khiển nhiệt độ trong phũng người ta dựng

PLC điều khiển cỏc van cấp nhiờn liệu (hơi ấm) cho cỏc lũ sưởi. Hệ thống gồm 4 lũ sưởi, cú cụng suất như sau: lũ sưởi 1: 1 kw, lũ sưởi 2: 2 kw, lũ sưởi 3: 4 kw, lũ sưởi 4: 8 kw.

Hệ thống ở chế độ sẵn sàng hoạt động khi nhấn S1. Ở chế độ này cỏc lũ sưởi cú thể chạy hoặc dừng bằng cỏch đúng hoặc mở cỏc van Y1, Y2, Y3 và Y4 tựy thuộc vào việc cài đặt cụng suất của hệ thống bằng cỏch nhấn S2 và S3. Cụng suất của hệ thống lũ sưởi từ 0 đến 15 kw. Một lần nhấn S2 thỡ cụng suất của hệ thống tăng 1 kw, 1 lần nhấn S3 thỡ cụng suất của lũ giảm đi 1 kw. Hệ thống ở chế độ dừng khi nhấn nỳt S0.

Nhiệm vụ:

- Lập bảng xỏc lập vào/ra. - Vẽ sơ đồ kết nối với PLC. - Viết chương trỡnh.

Bài 6. Xử lý tớn hiệu Analog 6.1 Tớn hiệu Analog

Trong quỏ trỡnh điều khiển một hệ thống tự động hoỏ cú thể cú cỏc yờu cầu điều khiển liờn quan đến việc xử lý cỏc tớn hiệu Analog. Cỏc đại lượng vật lý như : nhiệt độ, ỏp suất, tốc độ, dũng chảy, độ PH... cần phải được cỏc bộ Transducer chuẩn hoỏ tớn hiệu trong phạm vi định mức cho phộp trước khi nối tớn hiệu vào ngừ vào Analog. Vớ dụ: Chuẩn của tớn hiệu điện ỏp là từ 0 đến 10 VDC hoặc chuẩn của tớn hiệu Analog là dũng điện từ 4 đến 20 mA. Cỏc Modul ngừ vào Analog (AI) bờn trong cú cỏc bộ chuyển đổi ADC (Analog Digital Converter) để chuyển đổi cỏc tớn hiệu Analog nhận được thành cỏc tớn hiệu số đưa về CPU qua Bus dữ liệu. Cỏc Mụ đun ngừ ra Analog (AO) bờn trong cú bộ chuyển đổi DAC (Digiatal-Analog Converter) chuyển cỏc tớn hiệu số nhận được từ CPU ra cỏc giỏ trị Analog cú thể là ỏp hoặc dũng.

6.2 Biểu diễn cỏc giỏ trị Analog

Mỗi một tớn hiệu ngừ vào Analog sau khi qua bộ chuyển đổi ADC trong module AI được chuyển thành cỏc số nguyờn Integer 16 bit cú giỏ trị từ 0 đến 27648. Do đú địa chỉ vựng nhớ chứa giỏ trị này là 1 Word. Độ chớnh xỏc của phộp chuyển đổi này phụ thuộc vào độ phõn giải của Modul Analog hiện cú, phạm vi độ phõn giải là từ 8 đến 15 Bits. Modul Analog cú độ phõn giải càng cao thỡ giỏ trị chuyển đổi càng chớnh xỏc. Việc chuyển đổi từ tớn hiệu Analog sang tớn hiệu số là tỷ lệ thuận và cú dạng đường thẳng. Cỏc giỏ trị Analog sau khi được chuyển đổi thành giỏ trị số sẽ được chứa vào một Word 16 Bit và lấp đầy cỏc bit trong word này theo thứ tự từ bờn trỏi sang, cỏc Bit trống sẽ bị lấp đầy bằng số 0. (chỳ ý Bit thứ 15 là Bit

AIW... . AIW.. AQW. .. AQW. LD AIW ... OUT AQW ...

dấu : = 0 khi giỏ trị chuyển đổi là số nguyờn dương và = 1 khi giỏ trị chuyển đổi là số nguyờn õm).

6.3 Kết nối ngừ vào-ra Analog:

Để đảm bảo tớn hiệu Analog cú được độ chớnh xỏc cao và ổn định cần tũn thủ cỏc điều kiện sau:

+ Đảm bảo rằng điện ỏp 24 VDC cấp nguồn cho Sensor khụng bị ảnh hưởng bởi nhiễu và ổn định .

+ Định tỷ lệ cho mụ đun (được mụ tả bờn dưới).

+ Dõy nối cho Sensor cần để ngắn nhất tới mức cú thể. + Sử dụng cỏp đụi dõy xoắn cho sensor.

+ Tất cả cỏc ngừ vào khụng sử dụng phải được nối tắt. + Trỏnh bẻ cong dõy dẫn thành những gúc nhọn.

+ Sử dụng mỏng đi dõy hay cỏc ống đi dõy cho tuyến dõy.

+ Trỏnh đặt cỏc đường dõy tớn hiệu Analog gần với cỏc đường dõy cú điện ỏp cao, nếu 2 đường dõy này cắt nhau phải đặt chỳng vuụng gúc với nhau.

Phương phỏp định tỷ lệ ngừ vào Analog (Input calibration)

Việc định tỷ lệ ngừ vào analog cú ảnh hưởng đến tất cả cỏc ngừ vào của modul EM cú AI. Để định tỷ lệ ngừ vào một cỏch chớnh xỏc, cần sử dụng một chương trỡnh được thiết kế để tớnh trung bỡnh cỏc giỏ trị đọc được từ Modul. Cú thể sử dụng Analog Input Filtering wizard trong STEP7-MicroWIN để tạo ra chương trỡnh này. Nờn sử dụng 64 giỏ trị lấy mẫu hoặc hơn để tớnh giỏ trị trung bỡnh của tớn hiệu Analog.

Để thực hiện việc định tỷ lệ cần theo cỏc bước sau:

+ Tắt nguồn cung cấp cho mụ đun, chọn phạm vi ngừ vào mong muốn + Cấp nguồn lại cho CPU và mụ đun cú AI.

+ Sử dụng một Transmiter, một nguồn ỏp, hay một nguồn dũng và đặt vào giỏ trị 0 cho một trong cỏc ngừ vào.

+ Đọc giỏ trị mà CPU nhận được tại ngừ vào tương ứng đú.

+ Điều chỉnh biến trở đặt giỏ trị OFFSET cho tới khi giỏ trị đọc được là 0.

+ Điều chỉnh để tăng giỏ trị đặt vào tới định mức và xem giỏ trị mà CPU nhận được.

+ Điều chỉnh biến trở GAIN cho tới khi giỏ trị nhận được là 32000 hoặc tới 1 giỏ trị số mong muốn.

+ Lặp lại cỏc bước trờn nếu cần.

Điều chỉnh cỏc Switch và biến trở chỉnh GAIN

Việc chỉnh định cỏc cụng tắc (Switch) trờn modul Analog EM sẽ thay đổi cỏc phạm vi đo lường định mức và độ phõn giải của Modul. Cỏc phạm vi và độ phõn giải được cho ở bảng dưới đõy :

Sơ đồ cụng tắc, chỉnh định phạm vi đo định mức và độ phõn giải phụ thuộc vào từng Modul Analog. Cỏc thụng tin này được lấy từ sổ tay phần cứng của Modul.

6.4 Hiệu chỉnh tớn hiệu Analog

Trờn CPU S7-200 cú 2 biến trở (2 biến trở này nằm dưới nắp của mụ đun), cú thể sử dụng 2 biến trở này để tăng hoặc giảm giỏ trị được lưu trữ trong cỏc Byte của vựng nhớ Special Memory (SMB 28 và SMB 29). Cỏc giỏ trị chỉ đọc trong 2 Byte này cú thể được sử dụng cho nhiều chức năng khỏc nhau. Chẳng hạn, dựng để cập nhật giỏ trị hiện hành cho 1 Timer, một Counter, thay đổi giỏ trị đặt trước, đặt cỏc giỏ trị giới hạn.

Byte nhớ SMB 28 lưu trữ giỏ trị số biểu diễn vị trớ chỉnh 0. SMB 29 lưu trữ giỏ trị số biểu diễn vị trớ chỉnh 1. Sự điều chỉnh Analog cú giới hạn từ 0 tới 255 và độ tin cậy tốt nhất trong phạm vi từ 10 đến 200.

Để thực hiện điều chỉnh này, phải sử dụng một Tuộc vớt nhỏ: nếu xoay biến trở sang phải là tăng giỏ trị, cũn xoay sang trỏi là giảm giỏ trị. Dưới đõy là một vớ dụ

Một phần của tài liệu Giáo trình PLC cơ bản (Nghề: Điện công nghiệp - CĐ/TC) - Trường Cao đẳng nghề Đồng Tháp (Trang 87 - 105)

Tải bản đầy đủ (PDF)

(163 trang)