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

Một phần của tài liệu LẬP TRÌNH PLC CHO NGƯỜI MỚI BẮT ĐẦU (Trang 65 - 73)

Bài 3 : Các tập lập điều khiển chương trình

2.3. Đồng hồ Thời gian thực

Một số tập lệnh xử lý thời gian liên quan đến ngày, giờ. Ta sử dụng các lệnh ngày và giờ để lập trình những tính toán về lịch và thời gian.

• T_CONV chuyển đổi kiểu dữ liệu của một giá trị thời gian: (Time sang Dlnt) hay (Dlnt sang Time)

• T_ADD cộng các giá trị Time và DTL: (Time + Time = Time) hay (DTL + DTL = DTL)

• T_SUB trừ các giá trị Time và DTL: (Time – Time = Time) hay (DTL – Time = DTL)

• T_DIFF đưa ra sự khác nhau giữa hai giá trị DTL như một giá trị Time: DTL – DTL = Time

Bảng dữ liệu thời gian và ngày: Kiểu dữ liệu Độ lớn Giới hạn Ví dụ Time 32 bits T#-24d_20h_31m_23s_648ms đến T#24d_20h_31m_23s_647ms Được lưu trữ : -2,147,483,648 ms đến +2,147,483,647 ms T#5m_30s T#1d_2h_15m_30s_45ms TIME#10d20h30m20s630ms 500h10000ms 10d20h30m20s630ms Date 16 bits D#1990-1-1 to D#2168-12-31 D#2009-12-31 DATE#2009-12-31 2009-12-31 Time_of _Day 32

bits TOD#0:0:0.0 to TOD#23:59:59.999

TOD#10:20:30.400 TIME_OF_DAY#10:20:30.400 23:10:1 DTL (Date and Time Long) 12 bytes Min.: DTL#1970-01-01-00:00:00.0 Max.: DTL#2262-04- 11:23:47:16.854 775 807 DTL#2008-12-16- 20:30:20.250

Lệnh chuyển đổi thời gian mở rộng T_CONV: Thực hiện chuyển đổi dữ liệu tham số đầu vào sang kiểu dữ liệu đầu ra OUT.

Hình 3.9.Cấu trúc lệnh T_CONV Tham số

Khai

IN Input DT, S5TIME, TIME I, Q, M, D, L hoặc hằng số

Giá trị muốn chuyển đổi.

OUT Return DATE, INT, TOD, TIME, S5TIME

I, Q, M, D, L Kết quả phép chuyển đổi.

Ví dụ: Chuyển đổi dữ liệu đầu vào 20ms sang kiểu dữ liệu đầu ra Time_Of_Day

Kết quả

Thay đổi tham số đầu vào

Lệnh cộng thời gian T_ADD: thực hiện phép cộng thời gian của tham số IN1 và IN2, kết quả đưa ra OUT. Các dạng dữ liệu có thể cộng được:

● Cộng hai khoảng thời gian với nhau: Time + Time = Time

● Cộng một khoảng thời gian đến một thời điểm: DTL + Time = DTL Tham số

Khai

báo Kiểu dữ liệu Vùng nhớ Mô tả

IN1 Input Time, DTL, TOD M, D, L Giá trị thời gian 1.

IN2 Input Time M, D, L Giá trị thời gian 2.

OUT Return DTL, Time M, D, L Kết quả thực hiện.

Ví dụ: Cộng giá trị thời gian 40ms vào thời gian hiện thời.

Bảng dữ liệu Data block và chọn tham số

Lệnh ghi thời gian thực cho hệ thống WR_SYS_T (Write System Time): Thiết lập đồng hồ thời gian trong ngày của PLC với một giá trị DTL tại thông số IN. Giá trị thời gian này không bao gồm múi giờ địa phương hay độ dịch chỉnh thời gian tiết kiệm ánh sáng ngày

Hình 3.10.Cấu trúc lệnh WR_SYS_T

Tham số Khai báo Kiểu dữ liệu Vùng nhớ Mô tả

Tham số Khai báo Kiểu dữ liệu Vùng nhớ Mô tả

RET_VAL Return Int D, L Lỗi trả về trong phần help của

Tia Portal

Ví dụ: Cài đặt thời gian cho đồng hồ CPU, dữ liệu sử dụng DATE AND TIME. Khai báo dữ liệu trong My DataBlock.

Kết quả mô phỏng:

Bảng mã lỗi trả về tra cứu trong phần help của Tia Portal. Thời gian cài đặt tối thiểu cho PLC là giây, đồng thời dữ liệu về ngày trong tuần sẽ được lệnh WR_SYS_T tính toán theo dữ liệu thời gian thực gốc của PLC được quy định bởi nhà sản xuất.

Lệnh đọc thời gian thực hệ thống RD_SYS_T (Read System Time): Đọc thời gian hiện thời của hệ thống từ PLC đang hoạt động. Giá trị này không bao gồm múi giờ địa phương hay độ dịch chỉnh thời gian tiết kiệm ánh sáng ngày. Giá trị đọc được này sẽ trả về vùng nhớ OUT với kiểu dữ liệu DTL.

Hình 3.11.Cấu trúc lệnh RD_SYS_T

Tham số Khai báo Kiểu dữ liệu Vùng nhớ Mô tả

RET_VAL Return Int D, L Lỗi trả về trong phần hepl

của Tia Portal

OUT Output DTL D, L Lỗi trả về trong phần Help

của Tia Portal

Lệnh đọc thời gian giờ địa phương RD_LOC_T (Read Local Time): đưa ra thời gian địa phương hiện thời của PLC trả về kiểu dữ liệu DTL. Giá trị thời gian này là Thời gian địa phương được tính toán bằng cách sử dụng múi giờ và độ dịch chỉnh thời gian tiết kiệm ánh sáng ngày (daylight saving time) được thiết lập trong phần cấu hình thiết bị CPU Clock.

Hình 3.12.Cấu trúc lệnh RD_LOC_T

Tham số Khai báo Kiểu dữ liệu Vùng nhớ Mô tả

RET_VAL Return Int D, L Thời gian ngày và giờ của CPU OUT Output DTL D, L Lỗi trả về trong phần Help của Tia

Portal Ví dụ: Đọc thời gian giờ hiện tại

Hàm RD_LOC_T Chạy mô phỏng Bảng tham số RET_VAL Mã lỗi * (W#16#....) Mô tả 0000 Không có lỗi

0001 Không có lỗi. Thời gian địa phương đầu ra là thời gian tiết kiệm ánh sáng ngày. No error. Local time is output as daylight saving time. 8080 Thời gian đại phương không được đọc.

8081

Thời gian địa phương hiện thời không được lưu lại vì dữ liệu nằm ngoài phạm vi cho phép đối với kiểu dữ liệu đã chọn của tham số OUT Với DT: min. DT#1990-01-01-0:0:0, max. DT#2089-12-31- 23:59:59.999

Với LDT: min. LDT#1970-01-01-0:0:0.000000000, max. LDT#2262- 04-11-23:47:16.854775807

Với DTL: min. DTL#1970-01-01-00:00:00.0, max. DTL#2262-04-11- 23:47:16.854775807

* Mã lỗi có thể được hiển thị dạng giá trị số nguyên hoặc số hexa trong lập trình. Để biết thông tin về cách chuyển đổi các định dạng hiển thị, hãy tham khảo "Xem thêm". Ví dụ: Hệ thống điều khiển tự động trong vườn kính trồng hoa thực hiện điều khiển kiểm soát theo yêu cầu sau:

 Từ 6h – 6h30 thực hiện tưới nước cho cây.  Từ 18h đến 19h bật đèn chiếu sáng cho cây. Thực hiện:

Tạo bảng dữ liệu Mydata_Time

Một phần của tài liệu LẬP TRÌNH PLC CHO NGƯỜI MỚI BẮT ĐẦU (Trang 65 - 73)

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

(102 trang)