1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Hướng dẫn xuất báo cáo ra excel Tia portal Professional theo tag

18 310 1

Đ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 18
Dung lượng 1,17 MB

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

Nội dung

Hướng dẫn chi tiết xuất báo cáo ra excel theo form ra excel, đồng thời lưu trữ theo ngày, người dùng có thể thêm tag, và thay đổi theo form báo cáo chi tiết cho một file nào đó, hệ thống này thực hiện trên tia portal V15 và PLC S71200

Trang 1

XUẤT BÁO CÁO RA EXCEL TRONG TIA PORTAL PROFESSIONAL - SIEMENS

Tài liệu được thực hiện bởi: Ngọc Automation (youtube) Website: https://ngocautomation.com hoặc https://hoctudonghoa.com

Hotline zalo hỗ trợ: 0904 701 605

STEP 1: Tạo một giao diện điều khiển cho một hệ thống nào đó như hình sau:

Nguyên lý làm việc của hệ thống: Nhấn nút auto, sau khi chọn đủ các điều kiện vận hành như: Bồn đang

cạn, đã đặt trọng lượng và thời gian thì tiến hành cân liệu vào bồn, sau đó đạt được trọng lượng thì bắt đầu trộn theo thời gian đặt, khi trộn xong thì xả liệu ra, sau khi cảm biến bồn cạn tác động thì xuất báo cáo, nhấn nút xác nhận vận hành thì hệ thống lại trộn lại.

Trang 2

STEP 2: Tạo 1 khối database bao gồm các thành phần tags sau

(*) Bảng thống kê tag

Trang 3

TT Tên tag Định dạng Giải thích

liệu 2

STEP 3: Trong phần cứng PLC bật các chức năng hệ thống

Trang 4

STEP 4: Lập trình chương trình cho PLC

Trang 9

STEP 5: Tạo các tag nội và tag dữ liệu báo cáo cho Scada

STEP 6: Tạo VBScript cho Scada (Wincc Professional)

Trang 10

6.1 Script tạo file mới (Creat_File)

' -Dim dtmDate, objExcel, objWorkbook, path

Dim a

Dim objExcelApp,objExcelApp2

Dim DT,CDT,VBDT,CWT,VBWT,CpHORP,VBpHORP,CQT,VBQT,CFLDREX,VBFLDREX,CFLDRPDF,VBFLDRPDF,CWeb,VBWeb Dim DY,MNTH,YR,MNTHNM

Dim HR,MNT,SCND

Dim i,j

Dim fso, msg,fldr,ReportFolderStatus

Dim fso1, f,fName

DY=Day(Date())

MNTH=Month(Date())

YR=Year(Date())

HR=Hour(Time())

MNT=Minute(Time())

SCND=Second(Time())

MNTHNM=Month(Now)

MNTHNM=MonthName (MNTHNM,True)

' DEFINE MONTH TYPE

Dim MNTH1, DY1

If MNTH < 10 Then

MNTH1 = "0" & MNTH

Else

MNTH1 = MNTH

End If

' DEFINE DATE TYPE

If DY < 10 Then

DY1 = "0" & DY

Else

DY1 = DY

End If

' DEFINE HOUR & MINUTE

Dim HR1, MNT1

'HOUR

If HR < 10 Then

HR1 = "0" & HR

Else

HR1 = HR

End If

'MINUTE

If MNT < 10 Then

MNT1 = "0" & MNT

Else

MNT1 = MNT

End If

'Save link

VBDT= VBFLDREX & "\" & "Report_" & YR & "_" & MNTH1 & "_" & DY1 & "_" & HR1 & "_" & MNT1 & ".xls" ' SAVE THE TARGET FILE TAG

Dim TagLink

Set TagLink = HMIRuntime.Tags("tag_Report_Save_Link")

TagLink.Write (VBDT)

'================ CREAT NEW FILE FOR EACH SEQUENCE ===============================

Dim objFSO

Dim RefFile

Dim TarFile

Set objFSO = CreateObject("Scripting.FileSystemObject")

'

RefFile = "D:\Report\Reference\Report_Reference.xls" 'Reference file

TarFile = VBDT '"D:\scripts\temp\Testghdf.xls"

objFSO.CopyFile RefFile, TarFile

'================ CREAT NEW FILE FOR EACH SEQUENCE ===============================

Trang 11

6.2 Script tạo thư mục mới mới (Creat_Folder)

' -Dim dtmDate, objExcel, objWorkbook, path

Dim a

Dim objExcelApp,objExcelApp2

Dim DT,CDT,VBDT,CWT,VBWT,CpHORP,VBpHORP,CQT,VBQT,CFLDREX,VBFLDREX,CFLDRPDF,VBFLDRPDF,CWeb,VBWeb Dim DY,MNTH,YR,MNTHNM

Dim HR,MNT,SCND

Dim i,j

Dim fso, msg,fldr,ReportFolderStatus

Dim fso1, f,fName

DY=Day(Date())

MNTH=Month(Date())

YR=Year(Date())

HR=Hour(Time())

MNT=Minute(Time())

SCND=Second(Time())

MNTHNM=Month(Now)

MNTHNM=MonthName (MNTHNM,True)

' DEFINE MONTH TYPE

Dim MNTH1, DY1

If MNTH < 10 Then

MNTH1 = "0" & MNTH

Else

MNTH1 = MNTH

End If

' DEFINE DATE TYPE

If DY < 10 Then

DY1 = "0" & DY

Else

DY1 = DY

End If

' DEFINE HOUR & MINUTE

Dim HR1, MNT1

'HOUR

If HR < 10 Then

HR1 = "0" & HR

Else

HR1 = HR

End If

'MINUTE

If MNT < 10 Then

MNT1 = "0" & MNT

Else

MNT1 = MNT

End If

'Save link

VBFLDREX = "D:\Report\" & YR & MNTH1 & DY1

'======================= CREAT FOLDER ============================================

Set fso1 = CreateObject("Scripting.FileSystemObject")

fso1.CreateFolder(VBFLDREX)

Trang 12

6.3 Script lấy dữ liệu thời gian hiện tại (Current_Date_Time)

'++++++++++++++++LẤY THỜI GIAN THỰC TẾ++++++++++++++++++++++++++++

Dim DateValue1

Dim TimeValue1

' DOC NGAY THANG THUC TE

DateValue1 = CStr(Date) 'makes characters of date

Dim Date_Tag '(Text tag 8 bit character set)

Set Date_Tag = HMIRuntime.Tags("tag_Current_Date")

Date_Tag.Write (DateValue1) 'write the characters to Tag

' DOC THOI GIAN THUC

TimeValue1 = CStr(Time) 'makes characters of date

Dim Time_Tag '(Text tag 8 bit character set)

Set Time_Tag = HMIRuntime.Tags("tag_Current_Time")

Time_Tag.Write (TimeValue1) 'write the characters to Tag

Dim DateTime1

Dim DateAdnTime

DateTime1 = DateValue1 & " " & TimeValue1

Set DateAdnTime = HMIRuntime.Tags("tag_Current_Date_Time")

DateAdnTime.Write (DateTime1) 'write the characters to Tag

'++++++++++++++++LẤY THỜI GIAN THỰC TẾ++++++++++++++++++++++++++++

6.4 Script xuất báo cáo (Data_Export)

Dim wsh, XLSrunning, TargetBookrunning, objExcelApp, objWorkbook, TheTargetBook, TheTargetBookName

Dim TheCount

Dim objFSO

Const OverwriteExisting = 1

Set wsh = CreateObject("WScript.Shell")

'======================================TAG FOR SAVE LINK========================================

TheTargetBookName = HMIRuntime.Tags("tag_Report_Save_Link").Read '

'===============================================================================================

TheTargetBook = TheTargetBookName

TheCount = GetObject("winmgmts:root\CIMV2").ExecQuery("SELECT * FROM Win32_Process WHERE Name='EXCEL.EXE'").Count

If TheCount > 0 Then

Set objExcelApp = GetObject(,"Excel.Application")

TargetBookrunning = 0

For Each XLSrunning In objExcelApp.Workbooks

If XLSrunning.name = TheTargetBookName Then

TargetBookrunning = 1

End If

Next

If TargetBookrunning = 1 Then

Set objWorkbook = GetObject(TheTargetBook)

Else

Set objWorkbook = objExcelApp.Workbooks.Open(TheTargetBook)

End If

Else

Set objExcelApp = CreateObject("Excel.Application")

Set objWorkbook = objExcelApp.Workbooks.Open(TheTargetBook)

End If

objExcelApp.Visible = False

objExcelApp.ScreenUpdating = True

objExcelApp.DisplayAlerts = True

Dim P100ATheTargetRow,P100BTheTargetRow

With objWorkbook.activesheet

'=======================================EXPORT DATA START======================================================== cells(10, 6) = HMIRuntime.Tags("tag_Current_Date_Time").Read

.cells(14, 3) = HMIRuntime.Tags("report_Setting_Weight_1").Read

.cells(15, 3) = HMIRuntime.Tags("report_Setting_Weight_2").Read

.cells(16, 3) = HMIRuntime.Tags("report_Setting_Time").Read

.cells(14, 4) = HMIRuntime.Tags("report_act_Weight_1").Read

Trang 13

.cells(15, 4) = HMIRuntime.Tags("report_act_Weight_2").Read

.cells(16, 4) = HMIRuntime.Tags("report_act_Time").Read

'=======================================EXPORT DATA END======================================================== End With

objWorkbook.Save

objWorkbook.Close

Set objWorkbook = Nothing

objExcelApp.Quit

Set objExcelApp = Nothing

'msgbox "Done"

Set wsh = Nothing

STEP 7: Tạo trigger xuất báo cáo cho Scada

Ở mục schedule tag tạo 4 trigger như sau:

7.1 Trigger tạo folder (Creat_Folder)

Lựa chọn Daily, và vào lúc 12:00:00 AM tức là 0H sáng

(*) Ở mục event chọn script có tên là Creat_Folder

Trang 14

7.2 Trigger Tạo file mới (Creat_File)

(*) Chọn tag trigger và tag là tag đã tạo bên PLC với tên tag là “report_Trigger_Creat_File”, lựa chọn thuộc tính là Uponchange

(*) Ở mục event chọn script có tên là Creat_File

Trang 15

7.3 Trigger xuất báo cáo (Data_Export)

(*) Chọn tag trigger và tag là tag đã tạo bên PLC với tên tag là “report_Trigger_Data_Export”, lựa chọn thuộc tính là Uponchange

(*) Ở mục event chọn script có tên là Data_Export

Trang 16

7.4 Trigger lấy dữ liệu thời gian thực tế (Current_Date_Time)

(*) Lựa chọn Trigger là 1 minute tức là 1 phút sẽ cập nhật giá trị 1 lần, các bạn cũng có thể chọn 1 second

để 1s trigger thay đổi giá trị 1 lần.

(*) Ở mục event chọn script có tên là Current_Date_Time

Trang 17

STEP 8: Tạo folder và file excel chuẩn

8.1 Tạo 1 folder có tên là Report ở ổ D của máy tính

8.2 Trong thư mục report tạo 1 folder có tên là Reference

8.3 Tạo 1 file excel chuẩn dạng Excel 2003 (đuôi xls) với tên “Report_Reference.xls” và coppy vào thư mục Reference

Trang 18

(*) Nội dung file excel

STEP 9: Thực hiện chạy chương trình và ta có kết quả như sau

Ngày đăng: 06/04/2021, 15:48

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w