CÁC HÀM THƯ VIỆN

Chia sẻ: Nguyen Vu | Ngày: | Loại File: DOC | Số trang:7

0
99
lượt xem
33
download

CÁC HÀM THƯ VIỆN

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Thư viện chuẩn của phần mềm Step 7 gồm các hàm hệ thống SFC, khối hàm hệ thống SFB, các hàm FC và khối hàm FB, giúp cho việc lập trình thuận tiện bởi các hàm viết sẵn. Ngoài ra còn có các hàm tổ chức OB hoạt động khi khởi động PLC, làm việc theo chu kỳ. Chúng ta có thể bổ sung các hàm khác vào thư viện của Step 7 một cách dễ dàng. Các hàm thư viện được thêm vào một điểm trong khối chương trình bằng cách vào menu Insert- Program Elements – Libraries,...

Chủ đề:
Lưu

Nội dung Text: CÁC HÀM THƯ VIỆN

  1. CÁC HÀM THƯ VIỆN Thư viện chuẩn của phần mềm Step 7 gồm các hàm hệ th ống SFC, kh ối hàm h ệ thống SFB, các hàm FC và khối hàm FB, giúp cho vi ệc lập trình thu ận ti ện b ởi các hàm viết sẵn. Ngoài ra còn có các hàm tổ chức OB hoạt đ ộng khi kh ởi đ ộng PLC, làm vi ệc theo chu kỳ. Chúng ta có thể bổ sung các hàm khác vào thư viện c ủa Step 7 m ột cách d ễ dàng. Các hàm thư viện được thêm vào một điểm trong khối chương trình bằng cách vào menu Insert- Program Elements – Libraries, sau đó lần lượt vào các m ục con trong đó, ch ọn hàm phù hợp rồi bấm chuột phải chọn paste Phần sau giới thiệu chi tiết một số hàm. 1/ Các hàm trong thư viện TI-S7 Converting blocks 1.1/ Các hàm xử lý bit a/ Đặt một loạt bit: FC83 Khi I0.0 = 1, 10 bit từ M0.0 đến M1.1 lên 1. Nếu hàm thực hiện đúng ENO và Q4.0 bằng 1. Địa chỉ bit đầu tiên S_bit dùng con trỏ P#, trỏ đến vùng nhớ bit (I, Q, M, D), số bit N là hằng số hay I, Q, M, D, L, P A I0.0 JNB _001 CALL "SET" S_BIT:= P#M 0.0 N := 10 _001: A BR = Q4.0 b/ Đặt một loạt byte lập tức : FC101
  2. Khi I0.0 = 1, hai byte từ PB2 sẽ lên 1 (P#P2.0 trỏ đến bit P2.0), số N là số byte c ần đặt lên 1 nhân 8. c/ Xoá một loạt bit: FC82 d) Xoá một loạt bit lập tức : FC100 1.2/ Hàm di chuyển khối gián tiếp : FC81 Di chuyển một khối dữ liệu byte, word hay word kép từ khối nguồn có địa chỉ đầu gián tiếp S_DATA chiều dài LENGTH đến khối đích có địa chỉ đầu gián tiếp D_DATA, ba thông số này dùng biến con trỏ P#. Thông số E_TYPE cho biết loại dữ liệu theo qui định sau: B#16#02 = BYTE, B#16#04 = WORD, B#16#05 = INT, B#16#06 = DWORD, B#16#07 = DINT, B#16#08 = REAL Trước lệnh: DBX0.0 = P#DB1.DBX50.0 // Địa chỉ đầu khối nguồn là DBW50 S_DATA DBW50 = W#16#2424 DBW52 = W#16#2525 DBW10 = W#16#0002 // Khối dữ liệu hai word LENGTH DBX20.0= P#DB2.DBX10.0 // D9ịa chỉ đầu khối đích là DBW10 D_DATA DBW10 = W#16#0000 DBW12 = W#16#0000 Sau lệnh : D_DATA DBW10 = W#16#2424 DBW12 = W#16#2525
  3. 1.3/ Hàm chuyển đổi a/ Giải mã 7 đoạn: FC93 Đổi một word hexa 4 digit ở IN (I,M,D,P, hằng số) ra 4 byte mã 7 đo ạn c ủa t ừng digit, xuất ra địa chỉ OUT từ kép (Q, M, D, L, P) A I 0.0 JNB _001 CALL "SEG" IN :=W#16#1234 OUT:=MD0 _001: NOP 0 b/ Đổi ASCII sang HEX Đổi chuỗi ASCII dài N ký tự (I, Q, M, L, P) gồm các ký tự A..F, số 0..9 , mỗi ký tự chiếm 2 byte ở địa chỉ con trỏ IN ( I, Q, M,D,L) ra số Hex tương ứng, một byte ứng với hai ký tự ở địa chỉ con trỏ OUT (Q, M, D, L) . RET_VAL là word trả về kết quả thực hiện (I, Q, M, D, L, P) W#16#0000 nếu đúng. c/ Đổi HEX sang ASCII: FC95
  4. d/ Hàm đổi tầm SCALE : FC105 Chuyển đổi số nguyên IN (I, Q, M, D, L, P, Hằng số) ra số thực ở OUT (I, Q, M, D, L, P) trong khoảng LO_LIM và HI_LIM theo công thức OUT = [ ((FLOAT (IN) –K1)/(K2–K1)) * (HI_LIM – LO_LIM) ] + LO_LIM HI_LIM, LO_LIM là các giá trị thực (I, Q, M, D, L, P, Hằng số) K1, K2 tuỳ thuộc trạng thái ngõ điều khiển BIPOLAR BIPOLAR=1: số IN là lưỡng cực, K1 = –27648.0, K2 = +27648.0 BIPOLAR=0: số IN là đơn cực, K1 = 0.0, K2 = +27648.0 e/ Hàm đổi tầm ngược UNSCALE : FC106
  5. Chuyển đổi số thực IN giữa hai giá trị LO_LIM và HI_LIM thành số nguyên đ ơn cực hay lưỡng cực OUT theo công thức OUT = [ ((IN–LO_LIM)/(HI_LIM–LO_LIM)) * (K2–K1) ] + K1 f/ Bổ chính sớm- trễ pha: FB90 Thực hiện phép hiệu chỉnh sớm trễ pha trên tín hiệu vào IN, độ lợi GAIN, thời gian sớm pha LG_TIME, thời gian trễ pha LG_TIME, chu kỳ lấy m ẫu SAMPLE_T và cho ra tín hiệu OUT Instance DB80 LD_TIME DBD12 = 2.0 LG_TIME DBD16 = 2.0 GAIN DBD20 = 1.0 PREV_IN DBD24 = 6.0 PREV_OUT DBD28 = 6.0 Before execution: IN MD10 = 2.0 OUT MD20 = 0.0 After execution:
  6. Instance DB80 PREV_IN DBD24 = 2.0 PREV_OUT DBD28 = 2.0 OUT MD20 = 2.0 2/ CÁC HÀM IEC (International Electrotechnical Commission) 2.1/ Hàm thời gian FC1 AD_DT_TM Cộng biến DT và TIME FC3 D_TOD_DT Kết hợp DATE và TIME_OF_DAY thành DT Rút ra DATE từ DT FC6 DT_DATE Rút ra ngày trong tuần từ DT FC7 DT_DAY Rút ra TIME_OF_DAY từ DT FC8 DT_TOD FC9 EQ_DT DT So sánh bằng hai DT FC12 GE_DT DT So sánh lớn hơn hay bằng hai DT FC14 GT_DT DT So sánh lớn hơn hai DT FC18 LE_DT DT So sánh nhỏ hơn hay bằng hai DT FC23 LT_DT DT So sánh nhỏ hơn hai DT FC28 NE_DT DT So sánh không bằng hai DT Đổi S5TIME ra TIME FC33 S5TI_TIM FC34 SB_DT_DT Trừ hai biến DT FC35 SB_DT_TM Trừ DT và TIME Đổi TIME ra S5TIME FC40 TIM_S5TI a/ Hàm FC3: Kết hợp ngày tháng năm (DATE) biến IN1 (I, Q, M, D, Hằng) với gi ờ trong ngày (TIME OF DAY) biến IN2 (I, Q, M, D, L, Hằng) thành bi ến RET_VAL lo ại DT (bi ến ký hiệu). Biến IN1 trong khoảng DATE# 1990-01-01 và DATE#2089-12-31. Ví dụ: Bảng khai báo biến trong local block của chương trình gọi Name Type Declaration Comment IN_TIME TIME_OF_DAY TEMP Start time IN_DATE DATE TEMP Start date OUT_TIME_DATE DATE_AND_TIME TEMP Start date/time converted Network 2 L D#2006–1–27 T #IN_DATE L TOD#20:0:0.0 T #IN_TIME Network 3: CALL FC 3 IN1 := #IN_DATE IN2 := #IN_TIME RET_VAL := #OUT_TIME_DATE b/ Hàm FC1 Cộng giờ IN1 dạng DT (biến ký hiệu ) với khoảng thời gian IN2 dạng TIME, RET_VAL là biến ký hiệu dạng DT. 2.2/Đổi số ra chuỗi và ngược lại FC5 DI_STRNG Đổi DINT ra STRING Đổi INT ra STRING FC16 I_STRNG Đổi REAL ra STRING, FC30 R_STRNG FC37 STRNG_DI Đổi STRING ra DINT, chuỗi dài tối đa 11 số
  7. Đổi STRING ra INT, chuỗi dài tối đa 6 số FC38 STRNG_I Đổi STRING ra REAL, chuỗi có dạng ±v.nnnnnnnE±xx FC39 STRNG_R 2.3/ So sánh Chuỗi FC10 EQ_STRNG FC13 GE_STRNG FC15 GT_STRNG FC19 LE_STRNG FC24 LT_STRNG FC29 NE_STRNG 2.4/ Lệnh xử lý chuỗi Kết hợp hai chuỗi FC2 CONCAT Bỏ một chuỗi FC4 DELETE Tìm một chuỗi FC11 FIND Xen một chuỗi FC17 INSERT Tách chuỗi bên trái FC20 LEFT Tính chiều dài biến STRING FC21 LEN Tách đoạn giữa FC26 MID Thay một chuỗi FC31 REPLACE Tách chuỗi bên phải FC32 RIGHT 2.5/ Lệnh số thực Tạo hàm giới hạn biến vào giữa hai trị MN và MX FC22 LIMIT Chọn giá trị lớn nhất giữa ba biến vào FC25 MAX Chọn giá trị nhỏ nhất giữa ba biến vào FC27 MIN Chọn một trong hai ngõ vào tuỳ biến điều khiển FC36 SEL 3/ Hàm hệ thống SFC xử lý khối
Đồng bộ tài khoản