Thông báo

Collapse
No announcement yet.

1 Project Wincc mẫu cho các bạn

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

  • 1 Project Wincc mẫu cho các bạn

    Mình thấy nhiều bạn hay có thắc mắc về sử dụng, tạo giao diện, thủ thuật trong WinCC nên mình tạo 1 project cho mấy bạn tham khảo, tải về nhé, trước khi dùng thì đổi tên máy tính đi nhé. Một số tính năng được sử dụng :
    + Vô hiệu hóa các phím tắt Ctrl Alt DEl,.....
    + Sử dụng Tag Logging để lưu trữ dữ liệu, hiển thị dưới dạng đồ thị và dạng bảng số
    + Thực hiện lệnh in ấn dữ liệu đã lưu dạng đồ thì, có thể in theo những lựa chọn : theo thời gian, theo chu kỳ.....
    + Ứng dụng thuộc tính layer trong việc ẩn hiện nhiều đối tượng
    + Tạo hộp thoại tương tác với người dùng khi thoát chương trình (cái này khá hay)
    + Ứng dụng User Administrator trong việc phân quyền quản trị, vận hành hệ thống (Cái này bạn sẽ phải làm như sau để dùng :
    - trong giao diện, góc bên trái có chữ Copyright@ by Giang, khi bạn chuột trái vào chữ đó thì sẽ có thông báo rằng bạn không đủ quyền truy nhập
    - muốn truy nhập được thì bạn làm như sau : ấn tổ hợp phím Ctrl + G -> nhập tên Giang, mật khẩu 123456, khi đó bạn có thể chuột trái vào chữ đó
    Tính năng phân quyền này mình chỉ tạo cho object chữ này thôi, nó là gợi ý cho các bạn tạo ra hệ thống có sự phân quyền quản trị nhé )
    CÁC BẠN CỨ CHÂM KÍU, CÓ GÌ THÌ CÙNG POST LÊN ĐÂY, CHÚNG TA CÙNG THẢO LUẬN ĐỂ CÓ NHIỀU ỨNG DỤNG HAY NHÉ.
    link down load project nè :
    http://www.mediafire.com/?mnfyozwnng2


  • #2
    Good job bro .
    e-mail:

    Comment


    • #3
      Mong mọi người cùng nhau đóng góp ! Thanks !
      |

      Comment


      • #4
        Nguyên văn bởi hac_am2003 Xem bài viết
        Mình thấy nhiều bạn hay có thắc mắc về sử dụng, tạo giao diện, thủ thuật trong WinCC nên mình tạo 1 project cho mấy bạn tham khảo, tải về nhé, trước khi dùng thì đổi tên máy tính đi nhé. Một số tính năng được sử dụng :
        + Vô hiệu hóa các phím tắt Ctrl Alt DEl,.....
        + Sử dụng Tag Logging để lưu trữ dữ liệu, hiển thị dưới dạng đồ thị và dạng bảng số
        + Thực hiện lệnh in ấn dữ liệu đã lưu dạng đồ thì, có thể in theo những lựa chọn : theo thời gian, theo chu kỳ.....
        + Ứng dụng thuộc tính layer trong việc ẩn hiện nhiều đối tượng
        + Tạo hộp thoại tương tác với người dùng khi thoát chương trình (cái này khá hay)
        + Ứng dụng User Administrator trong việc phân quyền quản trị, vận hành hệ thống (Cái này bạn sẽ phải làm như sau để dùng :
        - trong giao diện, góc bên trái có chữ Copyright@ by Giang, khi bạn chuột trái vào chữ đó thì sẽ có thông báo rằng bạn không đủ quyền truy nhập
        - muốn truy nhập được thì bạn làm như sau : ấn tổ hợp phím Ctrl + G -> nhập tên Giang, mật khẩu 123456, khi đó bạn có thể chuột trái vào chữ đó
        Tính năng phân quyền này mình chỉ tạo cho object chữ này thôi, nó là gợi ý cho các bạn tạo ra hệ thống có sự phân quyền quản trị nhé )
        CÁC BẠN CỨ CHÂM KÍU, CÓ GÌ THÌ CÙNG POST LÊN ĐÂY, CHÚNG TA CÙNG THẢO LUẬN ĐỂ CÓ NHIỀU ỨNG DỤNG HAY NHÉ.
        link down load project nè :
        http://www.mediafire.com/?mnfyozwnng2
        Cám ơn pác ! Em phải down về học hỏi cái !
        |

        Comment


        • #5
          Hi pa'c hac_am03 !
          Em đã down project của pác về châm cứu nhưng có chỗ em cần pác chỉ giáo cho em !
          Trong Button Exit có 2 đoạn Code viết bằng VB :

          Sub OnClick(ByVal Item)
          HMIRuntime.Tags("so").Write (MsgBox ("Are you sure ? ", 19, "Copyright@ by Giang"))
          End Sub



          Function Text_Trigger(ByVal Item)
          If ( HMIRuntime.Tags("so").Read = 6 )Then

          HMIRuntime.Stop
          End If
          End Function


          Trong đó đoạn Code : If ( HMIRuntime.Tags("so").Read = 6 ) , để xác nhận là việc có thoát chế độ Runtime không ? nếu đồng ý thì thực thi : HMIRuntime.Stop

          Nhưng ở đây em cần xác nhận để thực thi việc có đóng hay tắt động cơ không ?
          Vậy đoạn code của em sẽ như thế nào hả pác ? Vì quả thực em cũng chưa học qua VB nên mong pác chỉ giáo cho em ! Thanks !
          |

          Comment


          • #6
            Nguyên văn bởi Manhho86 Xem bài viết
            Hi pa'c hac_am03 !
            Em đã down project của pác về châm cứu nhưng có chỗ em cần pác chỉ giáo cho em !
            Trong Button Exit có 2 đoạn Code viết bằng VB :

            Sub OnClick(ByVal Item)
            HMIRuntime.Tags("so").Write (MsgBox ("Are you sure ? ", 19, "Copyright@ by Giang"))
            End Sub



            Function Text_Trigger(ByVal Item)
            If ( HMIRuntime.Tags("so").Read = 6 )Then

            HMIRuntime.Stop
            End If
            End Function


            Trong đó đoạn Code : If ( HMIRuntime.Tags("so").Read = 6 ) , để xác nhận là việc có thoát chế độ Runtime không ? nếu đồng ý thì thực thi : HMIRuntime.Stop

            Nhưng ở đây em cần xác nhận để thực thi việc có đóng hay tắt động cơ không ?
            Vậy đoạn code của em sẽ như thế nào hả pác ? Vì quả thực em cũng chưa học qua VB nên mong pác chỉ giáo cho em ! Thanks !
            + OK, giờ mình điều khiển đóng cắt động cơ qua công tắc tơ K chẳng hạn, và đầu ra Q0.0 làm nhiệm vụ điều khiển đóng cắt cuộn dây của CTT K nhé. Mình khai báo Tag dongco có địa chỉ là Q0.0 chẳng hạn. (dongco = True -> đóng, = False -> tắt)
            + giờ mình thay câu lệnh HMIRuntime.Stop bằng câu lệnh HMIRuntime.Tags("dongco").Write 1 . Như thế thì mình đã xác nhận việc cho tag dongco mang gia trị TRUE

            Comment


            • #7
              Hi pac ! Em đã thử theo cách của pác chỉ dẫn nhưng vẫn chưa Ok . Có thể em làm sai ở bước nào đó ! Hic !
              Cụ thể Project của em như sau :
              Trên giao diện win CC em có 2 nút ấn Close và Open nối Tag trong winCC qua 2 biến nhớ M5.0 và M5.1 ( Khi ấn Close thì đóng Động cơ , khi ấn Open thì cắt động cơ - Cái này đã lập trình và thử nghiệm OK ) .Giờ em cần thêm hộp thoại để check lại thao tác đóng , mở động cơ.
              Anh có thể hướng dẫn cho em viết đoạn Code được không ?


              Em đã viết 2 đoạn Code bằng VB để xuất hiện được hộp thoại thông báo check nhưng chưa rõ cách Set giá trị TRUE . FALSE vào 2 bít nhớ M5.0 và M5.1 như thế nào ?

              Đoạn code viết cho nút đóng động cơ :
              Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)
              Dim message
              Dim dialogType
              Dim title
              Dim kq
              message = " Ban co muon Dong Dong co khong ?"
              title = "Canh bao "
              dialogType = 3 + 48
              kq = MsgBox (message, dialogType, title)
              If kq = 6 Then
              End If
              End Sub


              Thực ra đoạn code trên chỉ đưa ra được hộp thoại tương tác với người dùng . còn sau khi xác nhận , thì làm thế nào để SET trị 1 or 0 về bít nhớ M tương ứng với nút nhấn mà ta đã gán và nối tag trong winCC
              Last edited by Manhho86; 29-12-2009, 14:57.
              |

              Comment


              • #8
                Nguyên văn bởi Manhho86 Xem bài viết
                Hi pac ! Em đã thử theo cách của pác chỉ dẫn nhưng vẫn chưa Ok . Có thể em làm sai ở bước nào đó ! Hic !
                Cụ thể Project của em như sau :
                Trên giao diện win CC em có 2 nút ấn Close và Open nối Tag trong winCC qua 2 biến nhớ M5.0 và M5.1 ( Khi ấn Close thì đóng Động cơ , khi ấn Open thì cắt động cơ - Cái này đã lập trình và thử nghiệm OK ) .Giờ em cần thêm hộp thoại để check lại thao tác đóng , mở động cơ.
                Anh có thể hướng dẫn cho em viết đoạn Code được không ?


                Em đã viết 2 đoạn Code bằng VB để xuất hiện được hộp thoại thông báo check nhưng chưa rõ cách Set giá trị TRUE . FALSE vào 2 bít nhớ M5.0 và M5.1 như thế nào ?

                Đoạn code viết cho nút đóng động cơ :
                Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)
                Dim message
                Dim dialogType
                Dim title
                Dim kq
                message = " Ban co muon Dong Dong co khong ?"
                title = "Canh bao "
                dialogType = 3 + 48
                kq = MsgBox (message, dialogType, title)
                If kq = 6 Then
                End If
                End Sub


                Thực ra đoạn code trên chỉ đưa ra được hộp thoại tương tác với người dùng . còn sau khi xác nhận , thì làm thế nào để SET trị 1 or 0 về bít nhớ M tương ứng với nút nhấn mà ta đã gán và nối tag trong winCC
                đoạn code mà bạn viết như trên chỉ đưa ra hộp thoại, và nếu ấn Yes thì cái biến kq =6 -> rồi không làm gì nữa hết. Giờ mình muốn ấn Yes thì ta set 1 cho M5.0 nhé. Bạn đã có tag liên kết vói M5.0 mình gọi là "dongdc" , tên tag của bạn chắc là khác. Giờ bạn sửa lại chương trình băng cắch thêm câu lẹnh cho if nhé
                If kq = 6 Then
                HMIRuntime.Tags("dongdc").Write 1
                End If

                chỉ như vậy thôi.
                nhưgn nếu chỉ như vậy thì có lẽ cũng không chạy đúng. Muốn chạy đúng thì đoạn code
                If kq = 6 Then
                HMIRuntime.Tags("dongdc").Write 1
                End If

                bạn phải đặt cho thuộc tính nào đó của cái nút ấy, giống như project mẫu của mình, và nhớ là trigger cho nó là giá trị tag.
                Như thế cũng chưa chạy vì biên kq của bạn là biến cục bộ, tốt nhất là thay biến kq = 1 tag "so" gióng như project của mình.
                Hơi phức tạp nhỉ.
                Last edited by hac_am2003; 29-12-2009, 16:18.

                Comment


                • #9
                  Đúng là đoạn Code mà pác gợi ý cũng không chạy được . Nhưng trong Project của pác thì tag " so" là internal tags. Còn ở đây em có dùng PLC nên phải dùng tag ngoại. Nếu em thay thế biến "kq" của em bằng một tag ngoại chả hạn là " dongdc" ( Gán với bít nhớ M5.0) thì cái tag ngoại này có tương đương với tag nội "so" như trong chương trình của pác không ?
                  |

                  Comment


                  • #10
                    Nguyên văn bởi Manhho86 Xem bài viết
                    Đúng là đoạn Code mà pác gợi ý cũng không chạy được . Nhưng trong Project của pác thì tag " so" là internal tags. Còn ở đây em có dùng PLC nên phải dùng tag ngoại. Nếu em thay thế biến "kq" của em bằng một tag ngoại chả hạn là " dongdc" ( Gán với bít nhớ M5.0) thì cái tag ngoại này có tương đương với tag nội "so" như trong chương trình của pác không ?
                    bạn hiểu thế này nhé, bạn không gán trị 6 cho kết quả mà gán cho 1 tag nội là tag "so". Câu lệnh mà mình nói trigger đó được thực hiện khi giá trị tag "so" thay đổi và nếu "so" = 6 thì set tag "dongdc" = 1
                    Nghiên cứu kỹ cái project một tí nhé. Chú ý trigger của các đoạn code nhé.

                    Comment


                    • #11
                      Thanks ! Pác nhiều ! Hiện em đã đóng , mở động cơ OK rồi !( Có hộp thoại tương tác với người dùng .)
                      |

                      Comment


                      • #12
                        Hi pác hac_am2003 Cho em hỏi về cách dùng User Addministrator trong winCC. Như trong Project của pác , khi click vào COPYRIGHT @ BY GIANG thì phải có ACCOUNT mới được truy nhập. Điều này gợi ý cho ta có thể phân quyền cho từng người vận hành theo từng account khác nhau. Nhưng có một vấn đề ở đây là : Khi có một ai đó ( Không có account) thì rõ ràng sẽ không truy nhập được vào COPYRIGHT @ BY GIANG nếu người vận hành đã Log off. Nhưng họ sẽ dùng cách : Thoát khỏi RUNTIME trước , sau đó ra màn hình WinCC Explorer => Graphics Designer=>NewPdl0.pdl. Sau đó vào Propertie của đối tượng COPYRIGHT @ BY GIANG =>miscellaneous =>Authorization => No access - protection. Sau đó SAVE lại rồi RUNTIME , và hiển nhiên khi này thì có thể miễn nhiên truy nhập vào COPYRIGHT @ BY GIANG mà chả cần Account.
                        Vậy ở đây em muốn hỏi là làm thế nào để có thể gán quyền EDIT các thuộc tính của đối tượng trong màn hình của ta thiết kế chỉ cho một người duy nhất ( Như là 1 Admin duy nhất ). Bởi em thấy trong Authorization không thấy có quyền Edit Project !
                        |

                        Comment


                        • #13
                          Nguyên văn bởi Manhho86 Xem bài viết
                          Hi pác hac_am2003 Cho em hỏi về cách dùng User Addministrator trong winCC. Như trong Project của pác , khi click vào COPYRIGHT @ BY GIANG thì phải có ACCOUNT mới được truy nhập. Điều này gợi ý cho ta có thể phân quyền cho từng người vận hành theo từng account khác nhau. Nhưng có một vấn đề ở đây là : Khi có một ai đó ( Không có account) thì rõ ràng sẽ không truy nhập được vào COPYRIGHT @ BY GIANG nếu người vận hành đã Log off. Nhưng họ sẽ dùng cách : Thoát khỏi RUNTIME trước , sau đó ra màn hình WinCC Explorer => Graphics Designer=>NewPdl0.pdl. Sau đó vào Propertie của đối tượng COPYRIGHT @ BY GIANG =>miscellaneous =>Authorization => No access - protection. Sau đó SAVE lại rồi RUNTIME , và hiển nhiên khi này thì có thể miễn nhiên truy nhập vào COPYRIGHT @ BY GIANG mà chả cần Account.
                          Vậy ở đây em muốn hỏi là làm thế nào để có thể gán quyền EDIT các thuộc tính của đối tượng trong màn hình của ta thiết kế chỉ cho một người duy nhất ( Như là 1 Admin duy nhất ). Bởi em thấy trong Authorization không thấy có quyền Edit Project !
                          Hì, đã gọi là gợi ý thì chỉ có tính chất gợi í thôi. Cái project này mình làm trên quan điểm chia sẻ các thủ thuật nên có tính mở rộng, ai cũng có thể xem cách mình edit nó ntn? Còn khi viết chương trình yêu cầu tính bảo mật, thì ngay cả bạn có quyền Admin đi nữa thì cũng không thể mở cái WinCC Explorer của mình ra được đâu. Điều này có nghĩa là tùy từng kỹ xảo của kỹ sư thiết kế í mà.
                          Gợi ý cho bạn trình tự vận hành khi chúng ta đưa project cho khách hàng nhé :
                          khởi động PC -> auto start runtime luôn -> thao tác, điều khiển (tất cả các phím tắt bị vô hiệu hóa,vô hiệu hóa task managerment, chạy full screen và dùng hàm SetWindowPos để làm cho cái runtime của mình luôn ở vị trị top - hàm này bạn tra trên google nhé) -> khi ấn nút exit , hiện hộp thoại tương tác , nếu yes thì tự động tắt PC đi thôi.
                          Cách này có thể áp dụng cho công nhân vận hành mà không lo mấy ông sửa chương trình lung tung, vì ko thể thoát runtime dc, thoát là tắt máy tính luôn. Còn khi kỹ sư thiết kế hệ thống tới, muốn thoát runtime và mở wincc explorer thì phải có mẹo riêng của từng kỹ sư chứ.

                          Comment


                          • #14
                            Ngoài cách trên ra có còn cách khác khả thi hơn không anh ? Vì thực tế , mình chỉ cần không cho người vận hành chỉnh sửa các thông số quá trình , code C , code VB trong winCC từ màn hình WinCC Explorer là OK. Chứ nếu cấm ngay cả việc dùng máy tính thì e rằng khi giao hàng cũng khó thuyết phục được khách hàng.( Máy tính của họ đặt theo công trình mà )
                            |

                            Comment


                            • #15
                              Nguyên văn bởi Manhho86 Xem bài viết
                              Ngoài cách trên ra có còn cách khác khả thi hơn không anh ? Vì thực tế , mình chỉ cần không cho người vận hành chỉnh sửa các thông số quá trình , code C , code VB trong winCC từ màn hình WinCC Explorer là OK. Chứ nếu cấm ngay cả việc dùng máy tính thì e rằng khi giao hàng cũng khó thuyết phục được khách hàng.( Máy tính của họ đặt theo công trình mà )
                              Tất nhiên là có. Cách trên để tránh tuyệt đối việc chỉnh sửa không chỉ WinCC mà có thể nhiều thành phần khác của Win có thể ảnh hưởng tới hệ thống.
                              Vẫn là User Administrator, bạn đọc trong phần help đi. Chú ý là cấu hình nếu user nào của windows mà ko thuộc nhóm HMI thì cũng sẽ ko dùng được.
                              Đó là 1 cách, nếu bạn vẫn ko dùng được thì dùng cách khác là chỉ cho phép đọc dữ liệu từ project. Vì khi chỉnh sửa muốn chạy runtime thì luôn luôn phải lưu lại, ta ko cho quyền lưu là ok mà. Bảo vệ dữ liệu kiểu này thì chắc bạn qua diễn đàn về tin học, thủ thuật windows sẽ có nhièu mẹo cho bạn.

                              Comment

                              Về tác giả

                              Collapse

                              hac_am2003 Crazy Chicken Tìm hiểu thêm về hac_am2003

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

                              Collapse

                              Đang tải...
                              X