Hướng dẫn cài đặt và điều khiển read time trong s7 200

5 13.1K 176
Hướng dẫn cài đặt và điều khiển read time trong s7 200

Đang tải... (xem toàn văn)

Thông tin tài liệu

Tớ đang lập trình đèn giao thông dùng s7200 bài đèn giao thông, mình dùng vùng nhớ VB3,4,5. để nhập thời gian thực vào! nhưng mình không biết khi bắt đầu chạy chương trình thì thời gian thực sẽ bắt đầu từ thời gian mình nhập bên trên hay thế nào mình lấy thời gian đó như thế nào?ví dụ mình muốn đọc thời gian thực từ 23h tới 5h thì mình lấy như thế nào? mong các bạn giúp đỡ! Việc thiết lập thời gian thực (TGT) trong s7-200 có 2 cách! Cách 1: Thực hiện lệnh SET_RTC (tuy nhiên phương pháp này có vẻ ít dùng vì nó đòi hỏi phải thự hiện lệnh này ngay lúc đúng thời gian ấy ngòai thực tế) Cách 2: Thực hiện bằng PC.PC lúc connect với S7-200 qua RS-485 sẽ có chức năng đồng bộ hóa thời gian với PC.Vì vậy chỉ thực hiện đồng bộ 1 phát là xong, thời gian sẽ dc duy trì tự động trong PLC. Còn về cách đọc thời gian thực,vì dụ với bài đèn giao thông này đi.Anh sẽ dùng lệnh READ_RTC move vào VB0 Như thế này này Sau lệnh này thì thời gian thực sẽ move vào lần lượt các ô nhớ như sau: VB0-YEAR (NĂM) TỪ 00-99 VB1-MONTH (THÁNG)từ 1-12 VB2-DAY (NGÀY)1-31 VB3-HOUR (GIỜ)00-23 VB4-MINUTE (PHÚT)00-59 VB5-SECOND (GIÂY)00-59 VB6- LÚC NÀO CŨNG LÀ 00 VB7-NGÀY TRONG TUẦN (1=CHỦ NHẬT)1-7 vì vậy anh ko nhất thiết (thậm chí có thể sai, vì có thể các giá trị sẽ chồng lấn nhau) nếu khai báo nhiều ô nhớ, chỉ cần khai báo VB0 là dc! TẤT CẢ CÁC Ô NHỚ NÀY ĐỀU CÓ GIÁ TRỊ LÀ SỐ BCD Vì vậy, sau khi đọc thời gian thực vào các ô này, khi cần so sánh (ví dụ anh cần bật đèn vàng từ 23h đêm) thì anh phải so sánh thế này Sở dĩ là 35 là vì sao.Vì 23 giờ, số 23 là số BCD ko nén,ta phải đồi đồi số này ra thành số Binary đề có thề so sánh bằng lệnh byte (vì byte là số binary) Cách đổi thế này.2=0010; 3=0011; như vậy 23=0010 0011=00100011=35! như vậy anh có thể đồi bất kì số nào, vì giới hạn là các số 2 chữ số thui ah Việc set_RTC (hay dùng chức năng synchronyze-đồng bộ hóa thời gian với PC) là làm duy nhất 1 lần chỉ 1 lần. Còn Read_RTC phải là luôn luôn luôn luôn đọc.Cụ thể đầu EN của lệnh Read_RTC ko cần nối tiếp điềm,có điện thường trực, để lúc nào các ô nhớ VB0 đến VB7 chứa dc thời gian hiện tại! Anh bảo là "thời gian khó đúng với TGT" là thế nào, sao mà ko đúng dc.Chính xác đến từng giây đó chứ! Thứ nhất em chưa rõ anh muốn "nhập:10h 30p 30s ngày 8 tháng 8 năm 1988" là thế nào? Nghĩa là anh muốn đến thời điểm đó xảy ra 1 sự kiện j đó hay là muốn đặt thời gian hiện tại là mốc thời gian đó? Nếu anh muốn đến thời gian đó xảy ra 1 sự kiện j đó thì anh chỉ việc dùng các lệnh so sánh byte là dc, cụ thể thế này: Còn về cách đồng bộ time giữa PLC Pc thì thì anh phải dùng Step 7 MicroWin 4.0 (hoặc các bản 3.2 đều dc), vào Menu chọn Time of Day clock như hình Lưu ý là anh phải connect PLC thực với PC thì các Port nó mới hiều, hoặc với chương trình giả lập PLC ảo S7-200 Simulator thì các anh làm như sau để có thể đồng bộ dc Vào configuration/current time Sau đó trong hộp thọai Current time anh chọn Same PC Thế là xong! Theo 1 tài liệu em đọc dc thì trong PLC s7-200 nó có 1 nguồn điện nuôi (1 cục pim thô) để cung cấp năng lượng cho đồng hồ thời gian thực.Vì thế sẽ ko có hiện tượng "sai" trong quá trình sử dụng realtime ở đây! (Giống như pin CMOS trong PC vậy, nuôi đồng hồ trong máy tính ấy) Còn về HMI thì lĩnh vực này em ko rành, cái này phải nhờ cao thủ khác chỉ bảo . t 23h t i 5h thì mình lấy như thế nào? mong các bạn giúp đỡ! Việc thi t lập thời gian thực (TGT) trong s7- 200 có 2 cách! Cách 1: Thực hiện lệnh SET_RTC. có thể đồng bộ dc Vào configuration/current time Sau đó trong hộp thọai Current time anh chọn Same PC Thế là xong! Theo 1 t i liệu em đọc dc thì trong

Ngày đăng: 03/01/2014, 20:29

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan