Thông báo

Collapse
No announcement yet.

Thủ thuật trong WinCC

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • #76
    Nguyên văn bởi dkcn4 Xem bài viết
    Chào anh Q2T! cách em làm cũng giống như của anh đó là:
    Mở WinCC-->Computer-->Properities-->Properties-->Chọn Tab Parametter--> tích chọn các lựa chọn của : Disable Keys.
    Sau đó em vào: SIMATIC -> WinCC -> Autostart
    nhưng chỉ đc một lần khi em tắt máy đi rồi bật lại thì nó tự động cahyj khi chưa mở WinCC gì cả. Em tắt đi và bật lại thì vẫn như bình thường. vẫn vào các giao diện của nó đc và vẫn truy nhập được vào chương trình đã viết.
    Nếu anh làm được rồi thì có thể chỉ cho em đc không? Em muốn khi mở vào project thì nó chỉ cho phép chạy thôi mà không cho phép truy nhập vào chương trình mình viết.
    Em xin chân thành cảm ơn anh!
    Tôi làm thế vẫn được nhưng phải chú ý:
    - Để chế độ Run Time thì phải Full screen
    - Khi dừng WinCC thì không dừng chế độ Runtime mà chọn chế độ Exit WinCC or Exit WinCC and Window! (tạo một nút ấn trên giao diện của bạn ấy)
    - Sau đó làm như trên là được

    Comment


    • #77
      chào bác hero_ac! bác cho em hỏi làm thế nào có thể lập trình trong Global Script. Vào đâu để mở được cửa sổ lập trình này thế bác. Mong bác chỉ giáo! thank bác!

      Comment


      • #78
        Mấy anh ơi.cho e hỏi tí.Sao e tạo xong cái Project bằng WinCC rui.Nhưg khi bấm Play thì lúc đầu có Activating ,chạy dc vào cái Graphic Déigner thì tự động Chương trình nó bị deactive ngay.Bây giờ ko mở dc.Có ai giúp e ko

        Comment


        • #79
          huong dan lam mach den gom 1 nut start 1 nut stop de dieu khien bong den tren wincc

          anh em cho minh hoi ti nhe.minh dang lam 1 bai tap la lam 1 mach den gom 1 nut start 1 nut stop va 1 bong den tren wincc va ket noi voi plc s7300. anh em noi biet chi giup minh voi.thanks anh em nhiu

          Comment


          • #80
            Nguyên văn bởi quang_dola88
            co ai biet su dung cai timer trong wincc , vi minh dang lam de tai giam sat va dieu khien thang may 4 tang . Ma không biết cho cái hình buồng thang chạy như thế nào >........? minh không thể sử dụng timer trong plc s7200 vì mình làm quá nhiều input và output rồi, không thể làm thêm được .
            ví dụ như sau 1s thì buồng thang dich chuyển một khoảng thi minh phai lam như thế nào ?
            nhờ các cao thủ ra tay cứu giúp?
            - Số lượng biến ngoại của bạn là bao nhiêu rồi mà nhiều??!!
            - Nếu không thể add thêm bạn có thể sử dụng một action (chu kỳ 1s) để thực hiện công việc của bạn. Cách làm:
            + chọn Global Scritp --> action --> new action --> Add chu kỳ cho Action đó!

            Comment


            • #81
              Em muốn hỏi mấy anh một số vấn đề về lập trình C trong WinCC

              - Em có 2 PLC, nhưng 1 con không có đồng hồ thời gian thực, nên em muốn lấy chức năng đó ở PLC kia để đóng ngắt 1 số ứng dụng trong PLC thư nhất theo thời gian nhất định trong ngày (ví dụ đèn giao thông), bằng cách là viết CT PLC cho con PLC có đồng hồ, đóng cắt 1 bit trung gian trong đó rồi đọc về WInCC. Tiếp tục em làm một bít nữa trên con PLC k có đồng hồ, =1 thì đèn sáng,= 0 thì đèn tắt và cũng link về WinCC. Vấn đề là em phải viết một đoạn chương trình C đơn giản với yêu cầu 1 bit của PLC này tích cực thì WinCC sẽ làm tích cực một bít của PLC kia (tất nhiên thông qua các OPC). Em muốn dc chỉ giáo về doạn chương trình và đặt nó vào đâu để khi chạy hệ thống thì câu lệnh có tác dụng?
              - Em muốn làm đổi mầu một đối tượng trong Graphics theo nhiều tag, tức là cứ mỗi khi 1 tag có tín hiệu thì đối tượng có một màu tương ứng. Mong các anh giúp đỡ. Thanks a lot.
              Xin đừng thanks nếu bài viết không hữu ích.

              Comment


              • #82
                Bạn thử viết sang VB xem sao. Lệnh thì .read hoặc write =1 hay =0. Dùng lệnh
                If taggido.read=1 then
                tagtieptheo =1
                else
                gì gì gì đó là tùy bạn
                endif
                Còn câu hỏi thứ 2 thì dùng lệnh so sánh hay select case cũng được, dùng 1 tag nội kiểu 16 bit. Nếu tag1=1 thì tagnoi =1, nếu tag2=1 thì tagnoi=2 nếu tag3=1 thì tagnoi=3 ..... vân vân và vân.
                Rồi lấy cái tagnoi đó mà so sánh rồi out ra màu thôi.
                Chúc thành công nhé

                Comment


                • #83
                  Em lại chưa học VB mới đau, chỉ biết chút C thôi.

                  Thế những chương trình ấy soan thảo xong rồi đặt vào đâu để có tác dụng hả anh,giả sử ví dụ của em chỉ có 1 picture thôi, mở lên nhấn ON cái là HT hoạt động liên tục không nghỉ.? Em muốn nó chạy ngay khi ấn ON đó.
                  Xin đừng thanks nếu bài viết không hữu ích.

                  Comment


                  • #84
                    Dự án giao thông của em đây.

                    Chả là em muốn làm đổi màu LED hiển thị theo màu đèn mà. 1 đôi LED thôi, nhưng khi có đèn Xanh thì số hiển thị LED màu xanh, đèn vàng LED màu vàng, đèn đỏ LED đỏ... , nó chỉ mang tính hình thức cho đẹp và trực quan hơn thôi..và muốn cái sử dụng cái chức năng REALtime từ 1 con PLC khác link qua. >>>>
                    Attached Files
                    Last edited by nguyentptn; 28-07-2010, 14:19.
                    Xin đừng thanks nếu bài viết không hữu ích.

                    Comment


                    • #85
                      Cho ình hỏi cách dùng lệnh SetbackColor trong C-actions

                      Chỗ IbackColor chọn lựa thế nào hả các bạn. Đáng ra phải cho mình chọn màu chỗ đó chứ?
                      Attached Files
                      Xin đừng thanks nếu bài viết không hữu ích.

                      Comment


                      • #86
                        Chưa hiểu ý của bạn lắm, bạn chọn thay đổi màu của 1 hình phải ko???
                        Khi soạn thảo 1 cái code xong thì bạn chọn properties của picture đó, cho cái code đó vào bất kỳ thuộc tính của picture đó, khi chạy runtime thì nó sẽ tự động chạy mà thôi, trên bảng mã code có thời gian trigger để chọn thời gian quét chương trình, bạn chọn thời gian là nó chạy.
                        Còn mún LED thay đổi nhiều màu sắc thì mình thí dụ cho dễ; vẽ 1 cái vòng tròn ra, chon propertise của cái vòng tròn đó có thuộc tính background gì đó, bạn chọn phần năng động, rồi nó hiện ra cái bảng, chọn phần analog, gán tag nội vào, cho nó bằng 1 thì màu gì, bằng 2 thì màu gì, bằng 3 thì màu gì.
                        Rồi sau đó viết phần code để gán giá trị cho tag nội là xong.

                        Comment


                        • #87
                          cho mình hỏi ZEN, LOGO có giao tiếp với Wincc được không ?

                          Ai biết xxin giúp nhé, nếu có cho mình cái opc luôn nhé.
                          Xin đừng thanks nếu bài viết không hữu ích.

                          Comment


                          • #88
                            Nếu muốn đổi màu nền đối tượng thì dùng lệnh SetBackColor(lpszPictureName,lpszObjectName,lcolor )
                            Trong đó lpszPictureName là tên Picture của đối tượng, lpszObjectName là tên đối tượng, lcolor là màu vi dụ &H232425 hoặc dùng hàm RGB(a,b,c)
                            Nếu đối tượng lấy từ thư viện của WinCC thì dùng hàm SetForeColor.
                            Đừng ngồi đó mà mong mọi việc tốt hơn, hãy làm mình tốt hơn
                            Jim Rohn

                            Comment


                            • #89
                              Chào ACE trên diễn đàn,

                              Em đang thử xuất EXCEL từ wincc, em đã có được đoạn code xuất excel như dưới đây. Để thực hiện được code xuất excel này em phải tạo trước Wincc Online Trend Control, và chọn trong thuộc tính của nó (chọn Select time), sau đó add các Curve (chính là các cột sẽ hiển thị trên bản Excel). Tiếp đó em đã tạo ra 1 nút bấm và chọn thuộc tính MOUSE của nút bấm, add phần code VBS dứoi đây vào. Khi chạy RUNTIME, bấm vào nút ấn này thì đã xuất ra được bản excel và các tiêu đề biến cho các cột excel NHUNG LẠI KHÔNG CÓ GIÁ TRỊ DƯỚI MỖI CỘT ĐƯỢC XUẤT ra. Vậy rất mong các ACE trên diễn đàn, chỉ giúp em phần này. Em xin chân thành cảm ơn các ACE.

                              Sub TreX0432nsX005F2X005FExcel_OnClick(ByVal Item)

                              Dim sDsn, sCon, sSql
                              Dim conn, oRs, oCom
                              Dim m, DSNName,ServerName, sServerName

                              Dim objControl
                              Dim sBeginTime, sEndTime
                              Dim sGMTime,sLocalTime
                              Dim TimeCorrection
                              Dim sFileName
                              Dim sTagName

                              Dim i,j,R,C,Diff
                              Dim bVisible
                              Dim bTimeCollumn

                              Dim OldLocale
                              Dim Ans

                              OldLocale = GetLocale ()
                              If (OldLocale = 1049) Then 'Russian
                              Else
                              Ans = MsgBox("Ha Noi limited company." & vbCrLf & "Do you want to export excel?", vbYesNo)
                              If (Ans = vbYes) Then
                              SetLocale(1049)
                              Else
                              Exit Sub
                              End If
                              End If

                              Set DSNName = HMIRuntime.Tags("@DatasourceNameRT")
                              DSNName.Read
                              sDsn = DSNName.Value

                              Set ServerName = HMIRuntime.Tags("@ServerName")
                              ServerName.Read
                              sServerName = ServerName.Value
                              '------------------------------------------------------------------------------------------------
                              Dim objExcelApp, ExcelSheet
                              On Error Resume Next
                              Set objExcelApp = CreateObject("Excel.Application")
                              If (Err.Number > 0) Then
                              MsgBox ("Export to Excel" & vbCrLf & "Software is only support for Excel 2000\XP\2003" )
                              SetLocale(OldLocale)
                              Exit Sub
                              Else
                              End If
                              objExcelApp.Visible = True
                              Set ExcelSheet = CreateObject("Excel.Sheet")
                              ExcelSheet.Application.Visible = True
                              ExcelSheet.ActiveSheet.Name = "ArchValues"
                              '------------------------------------------------------------------------------------------------
                              ScreenItems("PW_Export_1").Visible = True
                              ScreenItems("PW_Export_2").Visible = True

                              HMIRuntime.Trace vbCrLf & "DSN: " & sDsn & vbCrLf

                              sDsn = "Catalog=" & sDsn & ";"
                              sCon = "Provider=WinCCOLEDBProvider.1;" & sDsn & "Data Source=" & sServerName &"\WinCC"

                              Set conn = CreateObject("ADODB.Connection")
                              conn.ConnectionString = sCon

                              HMIRuntime.Trace "ADO DB conection string: " & conn.ConnectionString & vbCrLf

                              conn.CursorLocation = 3
                              conn.Open

                              Set oRs = CreateObject("ADODB.Recordset")
                              Set oCom = CreateObject("ADODB.Command")

                              '------------------------------------------------------------------------------------------------
                              HMIRuntime.Trace "Control1: start" & vbCrLf
                              'TimeCorrection = 4 ' ìîæíî áðàòü èç ðåãèîíàëüíûõ íàñòðîåê
                              sGMTime = ScreenItems("Date1").Text
                              sLocalTime = ScreenItems("Date2").Text
                              sGMTime = CDate(sGMTime)
                              sLocalTime = CDate(sLocalTime)
                              HMIRuntime.Trace "TimeZ : " & sLocalTime & " - " & sGMTime & vbCrLf
                              TimeCorrection = DateDiff("h", sGMTime, sLocalTime)
                              HMIRuntime.Trace "TimeZone : " & TimeCorrection & vbCrLf

                              Set objControl = ScreenItems("excel")
                              C = 2
                              bTimeCollumn = False
                              For i = 0 To objControl.NumItems - 1
                              objControl.Index = i
                              bVisible = objControl.ItemVisible
                              HMIRuntime.Trace "¹: " & i & " ; " & bVisible & vbCrLf
                              If bVisible Then
                              C = C + 1
                              sTagName = objControl.TagName
                              ExcelSheet.ActiveSheet.Cells(2,C).Value = objControl.Name
                              ExcelSheet.ActiveSheet.Cells(2,C).Font.Color = 15 'objControl.Color
                              ExcelSheet.ActiveSheet.Cells(2,C).Font.Size = 10
                              ExcelSheet.ActiveSheet.Cells(2,C).Font.Bold = True
                              ExcelSheet.ActiveSheet.Cells(2,C).Interior.ColorIn dex = 15

                              If Not bTimeCollumn Then
                              ExcelSheet.ActiveSheet.Cells(2,1).Value = "¹"
                              ExcelSheet.ActiveSheet.Cells(2,1).Font.Size = 10
                              ExcelSheet.ActiveSheet.Cells(2,1).Font.Bold = True
                              ExcelSheet.ActiveSheet.Cells(2,1).Interior.ColorIn dex = 15
                              ExcelSheet.ActiveSheet.Cells(2,2).Value = "Date/time"
                              ExcelSheet.ActiveSheet.Cells(2,2).Font.Size = 10
                              ExcelSheet.ActiveSheet.Cells(2,2).Font.Bold = True
                              ExcelSheet.ActiveSheet.Cells(2,2).Interior.ColorIn dex = 15
                              sBeginTime = objControl.BeginTime
                              sEndTime = objControl.EndTime

                              ExcelSheet.ActiveSheet.Cells(1,3).Value = CStr(sBeginTime) ' & vbLf & CStr(sEndTime)
                              ExcelSheet.ActiveSheet.Cells(1,4).Value = CStr(sEndTime)

                              sBeginTime = DateAdd("h", -TimeCorrection, sBeginTime)
                              sEndTime = DateAdd("h", -TimeCorrection, sEndTime)

                              Diff = DateDiff("n", sBeginTime, sEndTime)
                              HMIRuntime.Trace "Time: " & Diff & vbCrLf
                              Else
                              End If
                              HMIRuntime.Trace "T2: " & sBeginTime & " --- " & sEndTime & vbCrLf
                              sSql = "Tag:R, '" & sTagName & "', '" & Year(sBeginTime) & "-" & Month(sBeginTime) & "-" & Day(sBeginTime) & " " & Hour(sBeginTime) & ":" & Minute(sBeginTime) & ":" & Second(sBeginTime) & ".000', '" & Year(sEndTime) & "-" & Month(sEndTime) & "-" & Day(sEndTime) & " " & Hour(sEndTime) & ":" & Minute(sEndTime) & ":" & Second(sEndTime) & ".000' "
                              HMIRuntime.Trace "SQL string: " & sSql & vbCrLf

                              oCom.CommandType = 1
                              Set oCom.ActiveConnection = conn
                              oCom.CommandText = sSql

                              Set oRs = oCom.Execute
                              m = oRs.Fields.Count
                              HMIRuntime.Trace "ÁÄ: " & oRs.Fields.Count & " - " & oRs.RecordCount & vbCrLf
                              If(m>0) Then
                              oRs.MoveFirst
                              R = 2
                              Do While Not oRs.EOF
                              R = R + 1
                              ExcelSheet.ActiveSheet.Cells(R,C).Value = oRs.Fields(2).Value
                              If Not bTimeCollumn Then
                              ExcelSheet.ActiveSheet.Cells(R,2).Value = CStr(DateAdd("h", TimeCorrection, oRs.Fields(1).Value)) 'äàòà âðåìÿ
                              ' ExcelSheet.ActiveSheet.Cells(R,2).Value = CStr(FormatDateTime(DateAdd("h", TimeCorrection, oRs.Fields(1).Value), 2)) 'äàòà
                              ' ExcelSheet.ActiveSheet.Cells(R,3).Value = CStr(FormatDateTime(DateAdd("h", TimeCorrection, oRs.Fields(1).Value), 3)) 'âðåìÿ
                              ExcelSheet.ActiveSheet.Cells(R,1).Value = R - 2
                              Else
                              End If
                              oRs.MoveNext
                              Loop
                              Else
                              ExcelSheet.ActiveSheet.Cells(R,C).Value = "Íå íàéäåíî äîñòîâåðíûõ äàííûõ." & vbLf & "Ïðîâåðüòå âðåìåííîé äèàïàçîí."
                              End If
                              bTimeCollumn = True
                              Else
                              End If
                              Next
                              HMIRuntime.Trace "Control1: stop" & vbCrLf

                              ExcelSheet.ActiveSheet.Cells(1,1).Value = R - 2
                              ExcelSheet.ActiveSheet.Cells(1,2).Value = C - 2


                              Set oRs = Nothing
                              Set conn = Nothing
                              ExcelSheet.ActiveSheet.Columns(1).Font.Bold = True
                              ExcelSheet.ActiveSheet.Rows(1).Font.Bold = True
                              ExcelSheet.ActiveSheet.Rows(1).Font.Italic = True
                              ExcelSheet.ActiveSheet.Rows(1).Font.Underline = True
                              ExcelSheet.ActiveSheet.Columns.AutoFit


                              sFileName = "D:\Boiler System__" & Day(Date)& "." & Month(Date) & "." & Year(Date) & "__" & Hour(Now) & "-" & Minute(Now) & "-" & Second(Now) & ".XLS"
                              ' sFileName = "C:\Àðõèâíûå_çíà÷åíèÿ.XLS"
                              ExcelSheet.SaveAs sFileName
                              MsgBox "Export finish:" & vbCrLf & sFileName
                              ScreenItems("Report").Text = sFileName
                              ExcelSheet.Application.Quit
                              Set ExcelSheet = Nothing
                              objExcelApp.Quit
                              Set objExcelApp = Nothing

                              ScreenItems("PW_Export_1").Visible = False
                              ScreenItems("PW_Export_2").Visible = False
                              SetLocale(OldLocale)
                              End Sub

                              Comment


                              • #90
                                Mình đang nghiên cứu vấn đề bảo mật trên wincc + step 7 mục đích là bảo vệ cả hai chương trình tới những truy nhập trái phép, các bạn trên đã có cách bảo mật rất hay, nhưng mà thử nghiệm thì phải cẩn thận, nếu mà cài đặt xong mà cần sửa thì phiền lắm, có cách nào có thể truy nhập qua password không vậy
                                nghe thấy siemens có hẳn 1 chương trình (option nào đó) có bạn nào có thể cho mình biết không

                                Comment

                                Về tác giả

                                Collapse

                                Q2T Tìm hiểu thêm về Q2T

                                Bài viết mới nhất

                                Collapse

                                Đang tải...
                                X