Thông báo

Collapse
No announcement yet.

bàn về giải thuật quét vùng nhớ trong plc mitshu

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

  • bàn về giải thuật quét vùng nhớ trong plc mitshu

    em có bài toán thế này không biết cao thủ nào co thể hương dẩn cho em không a .
    vd: em có nhiều con số bất kỳ được lưu trong 1 ô nhớ bất kỳ trong vung nhớ nào đó của mitshu tử vùng nhớ D0 ----> D200.vấn đề đặt ra là sao mình bít ô nhớ nào hiện đang trống. các số dc lưu bất kỳ vào các o nhớ.

  • #2
    Chào diep,
    Mình không hiểu bạn làm việc này mục đích gì, tuy nhiên mình nghĩ, một biến để có thể sử dụng thì phải được quản lý.
    Nếu bạn muốn đưa một giá trị ngẫu nhiên vào một vị trí ngẫu nhiên trong một mảng thì mảng đó phải được xác định, chỉ có giá trị đưa vào là ngẫu nhiên và vị trí lựa chọn ngẫu nhiên. Tuy nhiên để tránh việc đưa một giá trí nào đó trùng lắp lên 1 vị trí thì bạn cần có có phương pháp quản lý. Việc này bạn phải được học vể cấu trúc dữ liệu.
    Nếu tôi nói đúng ý bạn thì hãy cho tôi biết để tôi trình bày phương pháp làm điều này!?
    Một bông hồng cho những ai đang còn mẹ,
    Đang còn mẹ để lòng vui sướng hơn ..

    Comment


    • #3
      ban o che do online ,vao device memory thi ban se biet duoc vung nho D ...va gia tri hien tai cua chung la bao nhieu va chung su dung bao nhieu vung nho D
      thong thuong nha lap trinh se su dung theo thu tu vung nho tang dan D0>>D...
      khi do ban se biet duoc nhung vung nho chua su dung!
      today learn more somethings .so you can teach something in tomorown

      Comment


      • #4
        Nguyên văn bởi HPECOM Xem bài viết
        Chào diep,
        Mình không hiểu bạn làm việc này mục đích gì, tuy nhiên mình nghĩ, một biến để có thể sử dụng thì phải được quản lý.
        Nếu bạn muốn đưa một giá trị ngẫu nhiên vào một vị trí ngẫu nhiên trong một mảng thì mảng đó phải được xác định, chỉ có giá trị đưa vào là ngẫu nhiên và vị trí lựa chọn ngẫu nhiên. Tuy nhiên để tránh việc đưa một giá trí nào đó trùng lắp lên 1 vị trí thì bạn cần có có phương pháp quản lý. Việc này bạn phải được học vể cấu trúc dữ liệu.
        Nếu tôi nói đúng ý bạn thì hãy cho tôi biết để tôi trình bày phương pháp làm điều này!?
        em đang làm đề tài nhà giữ xe tự động , em đưa ra câu hỏi này vì có liên quan đến đề tài mà hiện tại em đang bí: em xin nói 1 đoạn như thế này
        -để đưa xe vào bãi xe chủ xe phải nhập vào 1 pass do admin quy định sẵn được ss ( bảng số xe chẳng hạn). khi dc nhập vào công việc đầu tiên của plc kiểm tra tính hợp lệ của pass nhập vào sau đó phải quyét vị trị còn trống trong bãi xe , theo thứ tự ưu tiên trên xuống dưới. sau khi xác định dc vị trí trống sau đó mới đem xe vào.
        -các vị trí xe dc lưu vào trong bộ nhớ dc quy định sẵn (tùy từng loại plc)
        vị trí ô nhớ trống đống nghia với vị tri đó trong bãi xe còn trống(mối ô nhớ dc quy định với 1 vi trị trong bãi xe là cố định)
        - vậy để biết dc vị trí còn trống trong bãi xe chúng ta lần lượt quyét các ô nhớ trong plc để xác địn dc vị trí nào trong bãi còn trống
        -nếu các bác có cách nào hay hơn mà vẩn làm dc thĩ đem ra chúng ta cùng bàn luận
        thanks

        Comment


        • #5
          Nguyên văn bởi myhoney1911 Xem bài viết
          ban o che do online ,vao device memory thi ban se biet duoc vung nho D ...va gia tri hien tai cua chung la bao nhieu va chung su dung bao nhieu vung nho D
          thong thuong nha lap trinh se su dung theo thu tu vung nho tang dan D0>>D...
          khi do ban se biet duoc nhung vung nho chua su dung!
          today learn more somethings .so you can teach something in tomorown
          vấn đề ở đây mình đặt ra là không phải la mình bít mà tự động plc bít để plc không lưu trùng vào các vùng nhớ đã được lưu
          vd: mình đặt vấn đế thế này:
          trong 1 xưởng sản xuất mỗi công nhân dc cấp 1 mã xác nhận,khi công nhân vào xưởng phải nhập mã này vào(đương nhiên là có người váo trước có người vào sau , mối mã nhập vào sẽ dc lưu vào ô nhớ của plc và sẽ dc lưu ngấu nhiên) vấn đế là khi nhập vào mã người này không dc đè lên mã của người vào trước, muốn không đè nhau giải pháp là quyét các vùng nhớ đã dc lưu các này plc phải tự quyét và tự đông lưu
          nếu bạn đã làm mong đcj sự góp ý vá chia sẽ

          Comment


          • #6
            ah mình hiểu ý của bạn rồi
            vẫn đề này cũng không khó ..bạn sẽ dùng lệnh move mảng (array )
            mổi khi quẹt thẻ bạn tức là add 1 (registor ) lúc này lệnh move sẽ tự động move giá trị của bạn tới thanh ghi n+1 ............cái này mình có làm cho 24 cảm biến nhiệt độ nhưng của PLC GEfanuc chứ con mitsu thì mình chưa đụng mình sẽ nghiên cứu trên mitsu rồi trả lời bạn sau ..xuantruongbh04@.y.c

            Comment


            • #7
              Nguyên văn bởi myhoney1911 Xem bài viết
              ah mình hiểu ý của bạn rồi
              vẫn đề này cũng không khó ..bạn sẽ dùng lệnh move mảng (array )
              mổi khi quẹt thẻ bạn tức là add 1 (registor ) lúc này lệnh move sẽ tự động move giá trị của bạn tới thanh ghi n+1 ............cái này mình có làm cho 24 cảm biến nhiệt độ nhưng của PLC GEfanuc chứ con mitsu thì mình chưa đụng mình sẽ nghiên cứu trên mitsu rồi trả lời bạn sau ..xuantruongbh04@.y.c
              hy vọng nhận dc hồi âm của bạn

              Comment


              • #8
                Nguyên văn bởi HPECOM Xem bài viết
                Chào diep,

                Nếu tôi nói đúng ý bạn thì hãy cho tôi biết để tôi trình bày phương pháp làm điều này!?
                bạn có thể nói cách quản lý của bạn cho mình học hỏi không nhỉ
                thanks

                Comment


                • #9
                  Nguyên văn bởi HPECOM Xem bài viết

                  Nếu tôi nói đúng ý bạn thì hãy cho tôi biết để tôi trình bày phương pháp làm điều này!?
                  bạn có thể nói cách quản lý của bạn cho mình học hỏi không nhỉ
                  thanks

                  Comment


                  • #10
                    Chào diep,

                    Bài toán của bạn đơn giản hơn tôi nghĩ.
                    Như bạn nói các địa chỉ ô nhớ đã được gắn với một vị trí để xe. Như vậy toàn bộ các địa chỉ là xác định chứ đâu phải ngẫu nhiên.
                    Vấn đề nằm ở chỗ là làm sao để biết được người ta để xe vào vị trí nào?
                    _ Nếu bạn xử lý ảnh thì kết quả cuối cùng là một tọa độ điểm ảnh, từ đó tham chiếu ra vị trí để xe.
                    _ Nếu bạn dùng sensor thì nhận biết tín hiệu ngõ vào, chẳng cần tính toán.
                    _ Nếu bạn bắt người kiểm soát nhập vào thì lại càng đơn giản.
                    Khi vị trí có xe thì ô nhớ tương ứng sẽ được gán giá trị là 1, ngược lại gán giá trị 0.
                    Vậy bạn kiểm tra giá trị ô nhớ sẽ biết chỗ đó có xe hay không.
                    Nếu lập trình LADDER thì có lẽ không thích hợp cho bài toán này, bạn nên chọn một ngôn ngữ khác. Theo mình thì SCL, vì nó trên nên tảng ngôn ngữ cấp cao, bạn có thể dùng vòng lặp để truy xuất đến các ô nhớ.

                    Chúc bạn thành công!
                    Một bông hồng cho những ai đang còn mẹ,
                    Đang còn mẹ để lòng vui sướng hơn ..

                    Comment


                    • #11
                      Nguyên văn bởi HPECOM Xem bài viết
                      Chào diep,

                      Bài toán của bạn đơn giản hơn tôi nghĩ.
                      Như bạn nói các địa chỉ ô nhớ đã được gắn với một vị trí để xe. Như vậy toàn bộ các địa chỉ là xác định chứ đâu phải ngẫu nhiên.
                      Vấn đề nằm ở chỗ là làm sao để biết được người ta để xe vào vị trí nào?
                      _ Nếu bạn xử lý ảnh thì kết quả cuối cùng là một tọa độ điểm ảnh, từ đó tham chiếu ra vị trí để xe.
                      _ Nếu bạn dùng sensor thì nhận biết tín hiệu ngõ vào, chẳng cần tính toán.
                      _ Nếu bạn bắt người kiểm soát nhập vào thì lại càng đơn giản.
                      Khi vị trí có xe thì ô nhớ tương ứng sẽ được gán giá trị là 1, ngược lại gán giá trị 0.
                      Vậy bạn kiểm tra giá trị ô nhớ sẽ biết chỗ đó có xe hay không.
                      Nếu lập trình LADDER thì có lẽ không thích hợp cho bài toán này, bạn nên chọn một ngôn ngữ khác. Theo mình thì SCL, vì nó trên nên tảng ngôn ngữ cấp cao, bạn có thể dùng vòng lặp để truy xuất đến các ô nhớ.

                      Chúc bạn thành công!
                      đúng như ban nói, ô nhớ dc gắn với vị trí xe ,ô nhớ trống đồng nghĩa vị trí đó còn trống trong bãi xe . nhưng việc đưa xe vào là hoàn toàn tự động khách hàng chỉ bỏ xe bên ngoài bãi rồi nhập mã an toàn vào(như mình gởi xe lấy thẻ xe đó mà) công việc đưa xe vào bãi cất giữ lad công việc hoàn toàn tự động
                      khi lây xe ra chỉ cần nhập mã an toàn vào , mã dc xác nhận đúng thì plc sẽ tự dộng quyét vùng nhớ xem xe đó hiện đang nằm chổ nào và lấy ra

                      để đưa xe vào cất giữ chính xác ( ko trùng lên chổ đã có xe) là công việc của plc (đưa vào đương nhiên là phải nhớ vị trí dể lấy ra rồi),
                      Nguyên văn bởi HPECOM Xem bài viết
                      Khi vị trí có xe thì ô nhớ tương ứng sẽ được gán giá trị là 1, ngược lại gán giá trị 0.
                      Vậy bạn kiểm tra giá trị ô nhớ sẽ biết chỗ đó có xe hay không.
                      bạn nói cũng đúng nhưng nếu có wa nhiều xe thì bạn kiểm tra thế nào
                      bạn có thể nói rõ về cách kiêm tra ko , bạn có thể đưa ra 1 giai thuật được ko
                      cảm ơn bạn đã chỉ dẫn.
                      minh o tp hcm bạn ở đâu nhỉ?
                      ban xem file mình kèm
                      Attached Files

                      Comment


                      • #12
                        Chào diep,

                        Xin lỗi hôm trước mình đã gợi ý bạn dùng ngôn ngữ SCL mà quên mất bạn đang đặt vấn đề là dùng Mitsu!
                        Đã lâu quá mình không làm việc trên Mitsu, mình ko có đoạn code mẫu nào.

                        Nhưng đề làm được việc này bạn phải dùng trỏ (pointer) và đương nhiên đưa vào vòng lặp. Bạn dùng Mitsu dòng Fx, A, hay Q? Bạn dùng compiler nào Fx hay Gx để viết? Bạn nên tìm hiểu xem ngôn ngữ lập trình bạn đang dùng có hỗ trợ viết pointer và vòng lặp không hoặc có phương pháp đưa địa chỉ gián tiếp đc hay không?
                        Hiện tại mình không cài Gx, bạn kiểm tra giúp mình những thông tin trên. Hình như Gx có version 8.x rồi, bạn nên dùng bản mới nhất sẽ có những tính năng mới tốt hơn.

                        Mình sẽ tiếp tục cùng bạn vì mình rất có hứng thú với đề tài này. ah, bạn cho mình hỏi có phải bạn đang làm cho một hệ thống để xe trong lòng đất hay không?

                        Chúc bạn thành công!

                        PS:Mình ở Q.Tân Phú, Tp.HCM.
                        Một bông hồng cho những ai đang còn mẹ,
                        Đang còn mẹ để lòng vui sướng hơn ..

                        Comment


                        • #13
                          vấn đề của bạn không khó ...nhưng nếu dung plc thi phải tốn rất nhiều vùng nhớ đó ...nếu bạn kết hợp với scada thì mình tin bạn có thể giám sát các ô nhớ đó hoặc là vị trí các xe
                          commandag.com.vn
                          learn something today so you can teach tomorown

                          Comment


                          • #14
                            Nguyên văn bởi HPECOM Xem bài viết
                            Chào diep,

                            Xin lỗi hôm trước mình đã gợi ý bạn dùng ngôn ngữ SCL mà quên mất bạn đang đặt vấn đề là dùng Mitsu!
                            Đã lâu quá mình không làm việc trên Mitsu, mình ko có đoạn code mẫu nào.

                            Nhưng đề làm được việc này bạn phải dùng trỏ (pointer) và đương nhiên đưa vào vòng lặp. Bạn dùng Mitsu dòng Fx, A, hay Q? Bạn dùng compiler nào Fx hay Gx để viết? Bạn nên tìm hiểu xem ngôn ngữ lập trình bạn đang dùng có hỗ trợ viết pointer và vòng lặp không hoặc có phương pháp đưa địa chỉ gián tiếp đc hay không?
                            Hiện tại mình không cài Gx, bạn kiểm tra giúp mình những thông tin trên. Hình như Gx có version 8.x rồi, bạn nên dùng bản mới nhất sẽ có những tính năng mới tốt hơn.

                            Mình sẽ tiếp tục cùng bạn vì mình rất có hứng thú với đề tài này. ah, bạn cho mình hỏi có phải bạn đang làm cho một hệ thống để xe trong lòng đất hay không?

                            Chúc bạn thành công!

                            PS:Mình ở Q.Tân Phú, Tp.HCM.
                            mình dùng họ fx va gx để viêt chương trình,mình đang làm hệ thông để xe trong lòng đất
                            -ngôn ngữ mình tính viế la SFC cua mitsu
                            -mình cũng nghĩ tới dùng con trỏ nhưng chưa bít phai dùng như thế nào,mình dùng kết nối với máy tính qua vb6 và đang tính dùng csdl để quản lý nhưng do mới bước vào làm nên còn nhiều thứ wa ,mình rất vui khi bạn tham gia
                            p/s:mình đang ở gv ne ,email của mình là tiendungkct@yahoo.com rất vui khi dc làm wen

                            Comment


                            • #15
                              Chào Diep,

                              Nếu bạn chọn giải pháp dùng Database thì vấn đề trở nên đơn giản quá rồi.
                              Dùng VB6 với ADO DB để kết nối với Database, sử dủng SQL Server để quản lý Database. Vậy có lẽ phải truyền thông RS232? Vì Fx là họ thấp!
                              Nếu bạn dùng WinCC thì hoàn toàn tốt, bạn có thể dùng UserControl của VB6 để kết nối với SQL server và truy suất dữ liệu.

                              Nếu đúng là tòa nhà trong lòng đất thì có khả năng chúng ta sẽ gặp nhau nếu có may mắn!

                              Rất hân hạnh làm quen!
                              YN: pvn_nhph.
                              Một bông hồng cho những ai đang còn mẹ,
                              Đang còn mẹ để lòng vui sướng hơn ..

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X