Thông báo

Collapse
No announcement yet.

Truyền thông giữa PLC với thiết bị khác

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

  • Truyền thông giữa PLC với thiết bị khác

    Em đang cần giao tiếp giữa PLC với một Module VXL mà nghe khó quá. Đọc help xong em thì em làm cho chỉ nhânn hoặc chỉ truyền được rồi, nhưng giao tiếp hai chiều cứ khó làm sao ấy, k biết lúc nào truyền lúc nào nhận cho hợp lý. Ai biết chỉ em với!

  • #2
    Giao tiếp giữa PLC với VĐK thì mình chưa có kinh nghiệm, nhưng trên mạng có trang này cho source code, bạn xem thử xem có giúp gì được không:
    Code:
    http://www.protocessor.com/techsupport/Free_Modbus_RTU_Source_Code.asp
    Giao tiếp với máy tính thì thường dùng Modbus RTU/ASCII. Tùy từng hãng mà PLC sẽ hỗ trợ nhiều hay ít tập lệnh của giao thức này. Bạn xem manual của nó để biết nó hỗ trợ những mã lệnh nào.

    Comment


    • #3
      bac nao co kinh nghiem ve giao tiep PLC va VDK,PLC va PC, co the noi cu the duoc khong. vi du nhu Frame truyen cua PLC cua OMRON,SIEMENS,MITSU.. khi giao tiep, cach thuc ghep noi..cam on cac bac chi giao!

      Comment


      • #4
        rât hay mình dã có ý định đó từ lâu.
        89c51 chẳng hạn .
        trước hết giao tiếp với PLc thông qua cổng RS485 sử dụng Max 485 để đêm.Trong Plc giả sử Siemens có các lệnh truyền và nhận ,có cả ngắt để truyền và nhận .Các bạn có thể dùng bộ đệm và thu của 89 để truyền .Thạch anh 11.0592

        Comment


        • #5
          Mình sẽ post mach lên sau.

          Comment


          • #6
            hihihi!
            Làm được rồi!
            Bạn Cuongvimsat a! Khi làm truyên thông với VXL và PC mình không cần quan tâm đến Frame truyền mà hãng sx PLC cung cấp đâu.
            Mình hoàn toàn có thể tự tạo ra Frame truyền thông riêng, nhưng phải đảm bảo thiết bị và mình truyền thông cũng phải có Frame tương tự (cùng Start,Stop, Data, CRC...)là được.
            Sau đó thiết lập các chế độ truyền nhận và time out là ổn.
            Vừa làm được một cái sướng quá!!!!!!!!!!!

            Comment


            • #7
              Q2T có thể chia sẻ với mình ý t­uong của ban không?gui cho minh project duoc khong? email:mai_choemmuaxuan@yahoo.com

              Comment


              • #8
                hihihihi!
                Đây đâu phải là ý tưởng của mình, ma mình chỉ làm theo sanch hướng dẫn thôi.
                Bạn có thể định nghĩa Frame bất kỳ tuỳ thích, miễn là hai thiết bị cần truyền thông với nhau đều cùng đc định nghĩa Frame giống nhau là được.
                VD: Start (1 byte), Address (1 byte), Command(1byte), data (n byte), CRC (1 byte), End (1 byte).
                CRC là byte kiểm tra lỗi trên khung truyền, để đơn giản bạn có thể tạm thời bỏ đi.
                Strart và End là byte đầu và byte cuối dùng để nhận biết khung truyền


                Pr oject tr ên PLC S7 200

                Main
                Network 1 // NETWORK TITLE (single line)
                LD SM0.1 //On the first scan,
                //MOVB 133, SMB30 //Initialize Freeport:19200/no Parity,8bit
                MOVB 9, SMB30 //Initialize Freeport:9600/no Parity,8bit
                MOVB 156, SMB87 // config byte en =1,sc=0,ec=0,il=1,c/m=1,trm=1,kb=0
                MOVW +15, SMW92 // 15ms Receiving time out. The next Xmt can operate only when the time period is exceeded
                MOVW +0, SMW90 // no Idle after Xmt complete
                MOVB 8, SMB94 // 7 bytes per frame
                MOVB 255, SMB34 // Timer interrupt 10ms
                ATCH INT1, 10 // Sending cycle
                ATCH INT0, 9 // Xmt complete
                ENI
                Network 2
                LD SM0.1
                CALL Xmt_Table, 16#44, 16#56, &VB100


                Network 3
                LD SM0.0
                MOVB VB206, QB0
                MOVB VB206, LB0
                MOVB VB207, LB1

                CTC Xmt_Table // t ạo ra khung ban tin truy ền di

                LD SM0.0
                MOVD #mAdd, AC1
                MOVB 6, *AC1 // Number of frame
                INCB AC1
                MOVB 16#40, *AC1
                INCB AC1
                MOVB 16#06, *AC1
                INCB AC1
                MOVB 16#1, *AC1
                INCB AC1
                MOVB #mData1, *AC1
                INCB AC1
                MOVB #mData2, *AC1
                INCB AC1
                MOVB 16#23, *AC1

                Ng ắt b áo truy ền xong
                LD SM0.0
                RCV VB200, 0
                Ng ắt th ời gian đ ể truy ền khung b ản tin đi
                LD SM0.0
                XMT VB100, 0

                Comment


                • #9
                  vậy kết nối với PC ,vi xử lý qua RS485 để truyền thông.Trên PS mình có thể dùng VB để giải mã Frame. Nhưng mình vẫn chưa hiểu rõ là khi giao tiếp PLC với vi xử lý thì sao hả bạn?Bạn rành về WINCC không? mình đang muốn làm về WinCC quá vì hiện tại giao diện mình chỉ làm bằng VB thôi. được việc nhưng hơi mất thời gian.

                  Comment


                  • #10
                    Cuongimsat!
                    Bạn có thể dùng VB viết một đoạn mã vơi Frame truyền như trên để giao tiếp với PLC. Khi giao tiếp đc thì sẽ hiểu được cách viết truyền thông. Còn truyền thông với VXl thi cũng chỉ khác lệnh thôi.
                    WinCC mình cũng không biết nhiều lắm, nhưng trong diễn đàn mình thấy nhiều bạn giỏi lắm bạn thử hỏi xem. Trong luồng "lập trình với PLC s7 300/400" mình thấy Zen đã upload khá nhiều tài liệu về WinCC, bạn thử vào đó download thử xem.

                    Comment


                    • #11
                      Ý tưởng PLC+VXL rất hay.Mình cũng đang có ý tưởng về vấn đề này.Việc dùng wincc thì rất dễ vì giao thức truyền nhận đã được hỗ trợ hết rồi.Thực ra dùng VB như bạn mới khó hơn WIncc đấy.bạn Q2T có thể nói rõ hơn về giao thức giữa PLC+VXL ko?có fải bạn dùng giao thức freeport để giao tiếp ko?à sách hướgn dẫn bạn đọc là gì vậy?
                      Rất mong được chỉ giáo

                      Comment


                      • #12
                        Hình như vấn đề VXL và PLC các pác ko quan tâm lắm nhỉ.Khá khó.Hiện nay trong các hệ thống thang máy hiện đại đã sử dụng rồi mà.

                        Comment


                        • #13
                          Với Simatic thường sử dụng freeport với họ 200 và sử dụng giao thức ASCII với họ S7-313/314C-PtP. Cái này không khó, nhưng có đủ tiền mua cục CPU về chơi không thôi.
                          Opentdoors- Thành viên của Rock'n'Roll club

                          Comment


                          • #14
                            Mình muốn dùng PC ghi và đọc nội dung thanh ghi trên PLC, cụ thể là dùng VB giao tiếp qua cổng com với PLC Mitsu.
                            VD: ghi và đọc thanh ghi D0-D10 , ghi và đọc M0-M10.
                            Giúp cho đoạn code để làm mẫu.

                            Comment


                            • #15
                              @duc thang:Hơ đang nói về PLC+vxl mà.thế này:bạn fải cần VB+PLC thông qua một OPC sever ấy, con PLC của bạn thì bạn fải tự tra xem dùng thằng nào.sau đó đọc code mẫu và làm theo.ở mục VB+PLC có nói cụ thể hơn đấy
                              @opentdoors:cả một vấn đề đấy chứ bạn.làm được rõ ràng là sẽ rất mềm dẻo đấy.Mình muốn thử của thằng omron CPM2 ấy.Xin hỏi các cao thủ của omron: có kết nối được ko? và xin một ý tưởng để thực hiện.đây là vấn đề rất mới mẻ.Rất hy vọng các bạn cùng trao đổi và góp ý.

                              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