Thông báo

Collapse
No announcement yet.

Hour counter trong LOGO??

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

  • Hour counter trong LOGO??

    Chào các bác.
    Em đang mắc ở cái này mà hỏi mãi không được, đành phải mở topic để nhờ các bác chỉ giúp, em đang lập trình cho 1 con logo nhưng mắc ở cái hàm hour counter vẫn không biết sử dụng ntn để có thể đếm được thời gian
    Bác nào rành về cái này thì chỉ giúp vì đầu vào và ra hoạt động gián đoạn nên em muốn đếm tổng thời gian đạt được một giá trị nhất định thì có tín hiệu báo, hoặc đầu ra set 0 lên 1.
    Đại khái là như thế, mong các cao thủ giúp đỡ.
    Trân thành cảm ơn các bác.

  • #2
    Nguyên văn bởi Phmtuan2005 Xem bài viết
    Chào các bác.
    Em đang mắc ở cái này mà hỏi mãi không được, đành phải mở topic để nhờ các bác chỉ giúp, em đang lập trình cho 1 con logo nhưng mắc ở cái hàm hour counter vẫn không biết sử dụng ntn để có thể đếm được thời gian
    Bác nào rành về cái này thì chỉ giúp vì đầu vào và ra hoạt động gián đoạn nên em muốn đếm tổng thời gian đạt được một giá trị nhất định thì có tín hiệu báo, hoặc đầu ra set 0 lên 1.
    Đại khái là như thế, mong các cao thủ giúp đỡ.
    Trân thành cảm ơn các bác.
    Với hàm HourCounter của LOGO! có thể đáp ứng được mục đích của cậu rồi: Cậu sử dụng thế này nhé:
    Đầu vào EN của hàm cậu nối với đầu vào IN của cậu, đầu ra cậu nối đến đầu ra Q nào đó hoặc một cờ nhớ (tùy cậu sử dụng)
    Đầu vào R (reset) cầu đặt tín hiệu reset cho hàm nếu muốn reset hoặc tạo một chu kỳ làm việc mới.
    Đầu vào Ral cậu có thể bỏ không kết nối.
    Cậu đặt giá trị MI chính bằng thời gian cậu muốn đếm, còn giá trị OT đặt bằng 0; Như vậy cứ khi nào có tín hiệu mức ở đầu vào EN thì bộ thời gian này sẽ đếm, nếu đầu vào EN mất hàm này sẽ dừng đếm và sẽ tiếp tục đếm khi EN lên 1, cứ như vậy cho đến khi hết thời gian đặt MI (nhưng thực tế MN = 0) thì đầu ra được set lên mưc 1. Mình giải tích có vẻ không được rõ, nhưng với hàm HourCounter hoàn toàn có thể thực hiện bài toán của cậu. Cậu chịu khó xem thêm trong Help nhé. Chúc thành công.

    Comment


    • #3
      Cám ơn bác, em sẽ thử theo như bác chỉ dẫn, kết quả ntn em báo cáo sau
      Chúc bác mạnh khỏe.

      Comment


      • #4
        Chào các bác
        Em đã thử như bác Kelangthang chỉ dẫn nhưng kết quả vẫn không được như ý muốn, tức là nếu đầu vào EN bị gián đoạn thì thời gian vẫn bị đếm cả khi khônng có tín hiệu vào EN, em chỉ muốn đếm thời gian EN=1 thôi. còn thời gian EN=0 thì không bị đếm.
        Có bác nào rành thì chỉ giúp em nhé.
        Thanks các bác

        Comment


        • #5
          Nguyên văn bởi Phmtuan2005 Xem bài viết
          Chào các bác
          Em đã thử như bác Kelangthang chỉ dẫn nhưng kết quả vẫn không được như ý muốn, tức là nếu đầu vào EN bị gián đoạn thì thời gian vẫn bị đếm cả khi khônng có tín hiệu vào EN, em chỉ muốn đếm thời gian EN=1 thôi. còn thời gian EN=0 thì không bị đếm.
          Có bác nào rành thì chỉ giúp em nhé.
          Thanks các bác
          Bạn thử bộ HourCounter băng cách nào? đơn vị thời gian của bộ này tính bằng giờ cho lên nếu bạn chỉ tắt đầu vào EN trong một thời gian ngắn thì khó có thể thấy được, mình ví dụ thế này, bạn muốn một động cơ hoạt động trong vòng 1 giờ với điều khiện có đầu vào En thì dừng, bạn mô phỏng trên phần mềm LOGO! để thấy được hoạt động của bộ đếm thời gian này mà bạn chỉ tắt đầu vào EN trong một thời gian ngắn (1 phút) rồi bật lại thì khoảng thời gian 1 phút ấy rất nhỏ so với 1 giờ lên có khi chúng ta không thấy được kết quả hay cứ tưởng là bộ thời gian vẫn đếm khi không có đầu vào EN. Theo mình thì bộ HourCount hoàn toàn thự hiện được yêu cầu của cậu. Mình đưa giản đồ thời gian của bộ này lên mong các bạn khác xem và cho ý khiến nhé. Còn Phmtuan2005 bạn thử như thế nào?
          Attached Files

          Comment


          • #6
            Chào các bác,
            Em đã sử dụng bộ phát xung không đồng bộ Asynchronous pulse generator, để đưa tín hiệu gián đoạn vào hour counter và so sánh thời gian với một hour counter khác không dùng bộ phát xung không đồng bộ để đưa tín hiệu vào, phải chờ 1h sau mới thấy được kết quả vì đơn vị của nó là h, thì vẫn thấy 2 thằng này đưa tín hiệu ra cùng 1 thời điểm là 1h (để MI=1 mà)...
            Đầu vào Hour counter em để đều là EN không có gì khác cả.
            Bác nào có cách nào không xin giúp cái,

            Comment


            • #7
              Nguyên văn bởi Phmtuan2005 Xem bài viết
              Chào các bác,
              Em đã sử dụng bộ phát xung không đồng bộ Asynchronous pulse generator, để đưa tín hiệu gián đoạn vào hour counter và so sánh thời gian với một hour counter khác không dùng bộ phát xung không đồng bộ để đưa tín hiệu vào, phải chờ 1h sau mới thấy được kết quả vì đơn vị của nó là h, thì vẫn thấy 2 thằng này đưa tín hiệu ra cùng 1 thời điểm là 1h (để MI=1 mà)...
              Đầu vào Hour counter em để đều là EN không có gì khác cả.
              Bác nào có cách nào không xin giúp cái,
              To Phmtuan2005 chào cậu, cách thử của cậu rất thông minh, minh thừ lại và thấy bộ HourCounter này đáp ứng được yêu cầu đề bài của cậu, đây là hình mình chạy mô phỏng. Mình biết cậu mắc ở đầu rồi: trong box thuộc tính của bộ HourCounter bạn bỏ dấu tích ở " Output is not 0, if En is 0". mình có gửi hình kem theo đấy. Chúc cậu thành công nhé.
              Attached Files

              Comment


              • #8
                Không được rồi bác ạ,
                Em thử các kiểu rồi đều không được, bác nào có cách khác không giúp em cái
                Có tín hiệu vào hay không, thì nó vẫn chỉ đếm từ lúc bật simulation, rồi tính OT từ thời điểm đó.
                Mong nhận được sự giúp đỡ của các cao thủ.

                Comment


                • #9
                  Nguyên văn bởi Phmtuan2005 Xem bài viết
                  Không được rồi bác ạ,
                  Em thử các kiểu rồi đều không được, bác nào có cách khác không giúp em cái
                  Có tín hiệu vào hay không, thì nó vẫn chỉ đếm từ lúc bật simulation, rồi tính OT từ thời điểm đó.
                  Mong nhận được sự giúp đỡ của các cao thủ.
                  Mình thử rồi, hoàn toàn được mà, nhu hình mình pot lên đấy, Cậu xem lại ở bộ phát xung không đồng bộ coi, nếu cậu đặt thời gian On lớn nhưng thòi gian Off bằng 0 thì không có tác dụng đâu, trong ví dụ mình mình đặt cả thời gian ON và OFF của bộ phát xung không đồng bộ là 99s đấy, và kết quả là 2 bộ hourcounter có thời gian set đầu ra khác nhau mà. Còn OT là thời gian tính cho mỗi lần RAL thôi. Kể cả có En hay không thì OT vẫn tính, cậu xem lại gian đồ thời gian xem.

                  Comment


                  • #10
                    Cảm ơn bác đã nhiệt tình giúp đỡ
                    Quả thực là em đã làm nhiều cách, tất nhiên là không để off=0 được, mà em thấy hình như bộ đếm này không chính xác về thời gian thực tế, có khi đếm 1h mà thành 1h10phút
                    đại khái là sai số hơi nhiều.
                    EM sẽ cố gắng thử lại theo nhiều cách, nếu bác thử thấy đầu ra mà on ở thời điểm khác nhau thì bác post lên cho em cách làm nhé, không biết có phải phần mềm kông,
                    Cám ơn các bác.

                    Comment


                    • #11
                      Chương trình mình thử như hình mình pot lên thôi, các thông số đặt như trong hình đấy, còn OT = 3 là mình đã để chương trình chạy ở chế độ mô phỏng hơn 3 giờ liền. Mình cũng không biết tại sao, hay cậu nói rõ dàng bài toán của cậu để mọi người cùng tìm cách.

                      Comment


                      • #12
                        Em cũng chỉ làm như bác thôi, một con đếm lên xuống để so sánh với 1 con luôn luôn on, nhưng thời gian On của đầu ra đều như nhau, bác cứ thử lại thì sẽ thấy, chỉ cần bác bật lên EN rồi tắt đi, đến 1-3h sau bác bật lên thì sẽ thấy đầu ra On (MN=0) tức là hour counter không đếm thời gian EN on (để cộng lại) mà chỉ đếm khoảng thời gian EN on thôi (kể cả tắt).
                        Bài toán của em thì phải đếm thời gian EN bật(EN=1), còn trong khoảng thời gian nhất định thì sẽ có lúc EN tắt (EN=0) thì sẽ không tính, tức là tín hiệu gián đoạn và chỉ tính phần EN=1 thôi.
                        Các bác thử giúp xem có hàm nào khác giải quyết được vấn đề này thì giúp em với, tất nhiên là trong phạm vi Logo hoặc Zen thôi, không S7-xxx, vì nó liên quan đến chi phí sản xuất.
                        Cám ơn các bác.

                        Comment


                        • #13
                          Lâu quá rồi, có bác nào rành về hàm hour counterr trong lập trình Logo thì chỉ cho em cái, cái vụ này vẫn chưa có phương án nào giải quyết, nếu bác nào có giải pháp sử dụng con lập trình khác thì chỉ cho em để giải quyết được bài toán đếm tổng thời gian on rồi đưa ra tín hiệu khi tổng thời gian đã hết.
                          thanks các bác.

                          Comment


                          • #14
                            Em chào các anh. Em có bài toán về thoát nước cho mỏ mà vẫn chưa giải quyết được vì không biết so sánh giá trị counter như thế nào.
                            Đề bài yêu cầu là khi nước lên mức cao lần 1 thì bơm 1 bơm, lần 2 thì bơm 2 bơm, lần 3 thì bơm 3 bơm. Các anh chỉ giáo cho em với.

                            Comment

                            Về tác giả

                            Collapse

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

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

                            Collapse

                            Đang tải...
                            X