Bộ điều khiển PID

Collapse
This is a sticky topic.
X
X
 
  • Giờ
  • Show
Clear All
new posts
  • falleaf
    PIC Bang chủ
    • May 2005
    • 2627

    #31
    Nguyên văn bởi hanhluckyly
    Sao các bạn không viết 1 chương trình cụ thể trên con PIC nhi đọc là hiểu liền chứ e rồi (e+1) rồi sume,dote, rồi xicma e(i) loạn cả lên trông choáng nhức đầu bây giờ 1 bài toán cụ thể vậy đi:
    - điều khiển tốc độ 1 động cơ 3600v/phút, encoder 540 xung/vòng
    Hãy điều khiển động cơ này chạy với tốc độ 1800v/phút bằng bộ PID hay PD hay PI gì cũng được

    mời các cao thủ nhào vô .
    Đó là chương trình viết cho vi điều khiển đó. Đặt biến tên là dote, sume Nó quá cụ thể rồi còn gì, copy vào là chạy .

    Nếu bạn muốn xem các chương trình mẫu, hãy xem lại các bài viết của Hải Bắc, anh Hải Âu và của F, ở cả picvietnam và dientuvietnam.

    Chúc vui
    Công ty TNHH Thương mại và Giao nhận R&P
    store.hn@rpc.vn - store.hcm@rpc.vn

    Học PIC như thế nào?

    Comment

    • HaiAu2005
      Đệ tử 9 túi
      • May 2006
      • 147

      #32
      Có hai quyển sau về PID controllers, ai có nhu cầu thì download:

      1. Autotuning of PID Controllers:


      2. PID Trajectory Tracking Control for Mechanical Systems


      H.A.
      URL1: http://www.seasfoundation.org/
      URL2: http://www.dieukhien.net

      Comment

      • falleaf
        PIC Bang chủ
        • May 2005
        • 2627

        #33
        Các tài liệu này đã đựơc chuyển về tailieuvietnam

        Chúc vui
        Công ty TNHH Thương mại và Giao nhận R&P
        store.hn@rpc.vn - store.hcm@rpc.vn

        Học PIC như thế nào?

        Comment

        • candykitty
          Đệ tử 1 túi
          • Nov 2006
          • 15

          #34
          Theo ý kiến của mình, điều khiển PID là dạng phổ biến nhất hiện nạy, trên thực tế, các hệ điều khiển chỉ dùng PI là nhiều, hiếm khi đưa thêm khâu D vào. Còn về việc xác định các thông số đối tượng điều khiển, viết hàm truyền và tính các hệ số P,I của bộ điều khiển là việc không tưởng, không ai làm như vậy được vì vừa mất thời gian, vùa kg khả thi đối với các hệ điều khiển phức tạp. Người ta dùng phép thử "trial and error".

          Comment

          • falleaf
            PIC Bang chủ
            • May 2005
            • 2627

            #35
            Không hẳn như vậy bạn ạ.

            Có rất nhiều phương pháp để xác định được hàm truyền, hoặc ước lượng được hàm truyền.

            Ngoài ra, trong cuốn sách mà anh Phong cung cấp, báo cáo về phương pháp chọn hệ số PID cho 20 mô hình toán đã có nói rõ. Bạn xem phần thực hành >> tìm ngừơi thực hiện bộ điều khiển PID >> download trên tailieuvietnam.net...

            Ngoài ra, trong phần này, mình sẽ gửi một bài báo mà em Hiếu, admin trang Khoa học và tuổi trẻ thực hiện (em Hiếu có lần gửi báo cáo cho mình, và gửi bài báo tham khảo khá hay cho một mô hình đơn giản). Báo cáo của em Hiếu thì mình đánh giá là chưa đạt, nên không cung cấp lên đây, vì em còn một số điểm chưa nắm rõ khi viết báo cáo (cách nay 1 năm rồi).

            Như vậy, như mình nói trong phần thực hành, đó là cảm nhận, chứ không phải thử và sai. Phương pháp thử và sai chính là cái mà mình nói là cảm nhận ở đây, nhưng chúng ta không thể dùng nó mà không có định hướng. Thầy Nguyễn Phùng Quang có lần email trả lời mình là nếu không xác định được mô hình, hoặc ước lượng mô hình tốt, thì sẽ dẫn tới việc mất phương hướng điều khiển. Hay diễn giải ra, thì khi các bạn thử và sai, sẽ có thể xảy ra trường hợp các bạn đi đến chỗ càng thử càng sai và không biết được nên thử như thế nào nữa.

            Cũng giống như chúng ta nói về GA. Có những khi chúng ta rơi vào một điểm cực tiểu địa phương, nếu dùng thử và sai, mà không có cái nhìn toàn cục, thì sẽ dẫn tới giai đoạn chúng ta không thể thoát ra khỏi điểm cực tiểu địa phương đó được.

            Vậy thì PID cũng vậy, có thể đến một giai đoạn các bạn thử và sai không tìm được kết quả điều khiển nào tốt hơn, nhưng nhìn một cách tổng quát, nó không bao giờ như mong muốn.

            Cũng là thử và sai, nhưng F khuyên các bạn không áp dụng thử và sai, mà dùng thử và sai để có được cảm nhận, và cái nhìn. Sau đó, hãy tìm hiểu thêm về các mô hình toán. Khi nhìn vào một đối tượng điều khiển, dự đoán mô hình toán của nó, phác thảo, khảo sát một số tham số cần thiết, ước lượng, tìm bộ điều khiển... >> Đó là phương pháp thử và sai "một cách khoa học".

            Cũng đơn giản như bài toán cắm điện trở vào động cơ để cho hai động cơ chạy đồng tốc. Tại sao người ra nghĩ ra cách này? Cũng là từ mô hình động cơ, chứ không phải là từ cái chuyện "thử và sai".

            Chúc vui
            Công ty TNHH Thương mại và Giao nhận R&P
            store.hn@rpc.vn - store.hcm@rpc.vn

            Học PIC như thế nào?

            Comment

            • candykitty
              Đệ tử 1 túi
              • Nov 2006
              • 15

              #36
              Tất nhiên mình kg nói rằng xác định các thông số của bộ PI bằng cách "mò" bạn ạ, tất nhiên bạn phải có kinh nghiệm khi nhìn vào đáp ứng để điều chỉnh tới giá trị tối ưu. Tất nhiên trước khi thực hiện việc điều chỉnh, người ta phải bảo đảm rằng mô hình tổng quát là hội tụ.

              Comment

              • Mecha
                Trưởng lão PIC bang
                • Dec 2005
                • 315

                #37
                Nguyên văn bởi candykitty View Post
                Theo ý kiến của mình, điều khiển PID là dạng phổ biến nhất hiện nạy, trên thực tế, các hệ điều khiển chỉ dùng PI là nhiều, hiếm khi đưa thêm khâu D vào. Còn về việc xác định các thông số đối tượng điều khiển, viết hàm truyền và tính các hệ số P,I của bộ điều khiển là việc không tưởng, không ai làm như vậy được vì vừa mất thời gian, vùa kg khả thi đối với các hệ điều khiển phức tạp. Người ta dùng phép thử "trial and error".
                Chức năng các thành phần trong bộ điều khiển PID:
                - Thành phần P: cung cấp giải thông (bandwidth) mong muốn.
                - Thành phần I: cung cấp hệ số khuếch đại bổ xung trong vùng tần số thấp để khử các nhiễu tần số thấp.
                - Thành phần D: giữ vai trò chính trong ổn định hệ thống. Thành phần D phát huy vai trò trong vùng tần số cao.

                Tóm lại, trong vùng tần số thấp thi I thực hiện vai trò của nó, trong vùng bandwidth thi P thực hiện nhiệm vụ của nó, còn lại vùng tần số cao thì D lo nốt. Trong vùng tần số thấp (nhỏ hơn bandwidth), hệ số Ki tiến đến vô cùng hoặc có giá trị rất lớn. Trong vùng tần số cao (lớn hơn bandwidth), hệ số Kd tiến đến vô cùng hoặc có giá trị rất lớn. Vì vậy tại bất kỳ điểm tần số nào, tín hiệu ra của PID cũng đạt một giá trị lớn để đảm bảo có thể triệt tiêu được sai lệch, nhưng nếu lớn quá sẽ gây ra hệ thống mất ổn định.

                Trong các hệ thống Cơ điện tử, PD được sử dụng chủ yếu.
                Sống là động nhưng lòng luôn bất động,
                Sống là thương nhưng lòng chẳng vấn vương,
                Sống yên vui danh lợi vẫn coi thường,
                Tâm bất biến giữa dòng đời vạn biến.


                Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
                http://www.picvietnam.com/forum//showthread.php?t=1263

                Comment

                • candykitty
                  Đệ tử 1 túi
                  • Nov 2006
                  • 15

                  #38
                  Mình hiểu theo cách nghĩ của bạn:
                  P:Khâu tỷ lệ Proportion
                  D:Khâu vi phân Differential
                  I:Khâu tích phân Integration
                  Theo bạn, trong các hệ thống cơ điện tử, dùng PD là chủ yếu?
                  Theo mình, trong các hệ thống điều khiển (cụ thể là điều khiển động cơ điện), mình thấy chỉ dùng PI là chủ yếu.

                  Comment

                  • Mecha
                    Trưởng lão PIC bang
                    • Dec 2005
                    • 315

                    #39
                    Trong motion control:
                    - Vòng điều khiển dòng điện thường dùng PI
                    - Vòng điều khiển tốc độ thường dùng P hoặc PI
                    - Vòng điều khiển vị trí thường dùng PD cho trường hợp điều khiển bám và PID cho trường hợp điều khiển chuyển động lặp đi lặp lại (như chuyển động của cái slide trong máy in ý). Vì vậy, đã dính đến điều khiển vị trí thì chắc chắn phải có thành phần D.
                    Sống là động nhưng lòng luôn bất động,
                    Sống là thương nhưng lòng chẳng vấn vương,
                    Sống yên vui danh lợi vẫn coi thường,
                    Tâm bất biến giữa dòng đời vạn biến.


                    Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
                    http://www.picvietnam.com/forum//showthread.php?t=1263

                    Comment

                    • candykitty
                      Đệ tử 1 túi
                      • Nov 2006
                      • 15

                      #40
                      Nguyên văn bởi Mecha View Post
                      Trong motion control:
                      - Vòng điều khiển dòng điện thường dùng PI
                      - Vòng điều khiển tốc độ thường dùng P hoặc PI
                      - Vòng điều khiển vị trí thường dùng PD cho trường hợp điều khiển bám và PID cho trường hợp điều khiển chuyển động lặp đi lặp lại (như chuyển động của cái slide trong máy in ý). Vì vậy, đã dính đến điều khiển vị trí thì chắc chắn phải có thành phần D.
                      Đúng rồi bạn, nhưng xin bổ xung thêm (một cách cụ thể hơn), điều khiển dòng và tốc độ thường chỉ dùng PI điể điều khiển. Mình đã từng thêm khâu D vào, nhưng thực tế kg nầng chất lượng điều khiển lên bao nhiêu, nhưng lại làm hệ thống phức tạp hơn.

                      Về điều khiển vị trí, đúng là phải dùng tới khâu D!

                      Comment

                      • Mecha
                        Trưởng lão PIC bang
                        • Dec 2005
                        • 315

                        #41
                        Nguyên văn bởi candykitty View Post
                        Đúng rồi bạn, nhưng xin bổ xung thêm (một cách cụ thể hơn), điều khiển dòng và tốc độ thường chỉ dùng PI điể điều khiển. Mình đã từng thêm khâu D vào, nhưng thực tế kg nầng chất lượng điều khiển lên bao nhiêu, nhưng lại làm hệ thống phức tạp hơn.

                        Về điều khiển vị trí, đúng là phải dùng tới khâu D!
                        Trong phần điều khiển của máy CNC, mình thấy điều khiển dòng và tốc độ họ dùng PI, nhưng điều khiển vị trí họ chỉ dùng có khâu P thôi. Mình chỉ nhìn được sơ đồ khối bên ngoài nên không biết rõ khâu D họ làm thế nào. "Know-how" mà
                        Sống là động nhưng lòng luôn bất động,
                        Sống là thương nhưng lòng chẳng vấn vương,
                        Sống yên vui danh lợi vẫn coi thường,
                        Tâm bất biến giữa dòng đời vạn biến.


                        Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
                        http://www.picvietnam.com/forum//showthread.php?t=1263

                        Comment

                        • thieuhuy
                          Nhập môn đệ tử
                          • Sep 2006
                          • 5

                          #42
                          Chào các anh em!

                          Tớ đang làm điều khiển động cơ DC dùng PSoC và giao tiếp với PC104 qua đường RS232. Công việc truyền thông thì nhờ bác falleaf chỉ dẫn đã làm xong rồi. Hiện nay thì hệ thống hoạt động OK. Sai lệch tĩnh vào khoảng 10pulse (encoder 1000pulse/vòng). Vấn đề khó khăn hiện nay là tớ muốn (thực sự không phải tớ muốn mà là ông Thầy muốn) điều khiển để bám theo một hàm setpoint theo thời gian. Ở đây có nghĩa là các điểm setpoint tập hợp thành một dãy số mà động cơ phải bám theo để chạy. Nhưng tớ vẫn chưa làm đươc việc này. Tớ hoàn toàn không biết làm cách nào để hệ thống hiểu được để tự động chuyển sang setpoint kế khi đã đi đến điểm setpoint trước đó. Nhờ các anh em cao thủ chỉ giúp.

                          Cám ơn trước các anh em.

                          Comment

                          • thieuhuy
                            Nhập môn đệ tử
                            • Sep 2006
                            • 5

                            #43
                            Vấn đề thứ hai là không thể xác định được đồ thị đáp ứng theo thời gian của động cơ. Có anh em nào đã làm về vấn đề này chưa?

                            Comment

                            • Mecha
                              Trưởng lão PIC bang
                              • Dec 2005
                              • 315

                              #44
                              Hồi 2001 tôi có làm cái mô hình thí nghiệm điều khiển vị trí (PID) dùng PLC S7-200 cho động cơ AC. Lâu quá rồi nên hiện chỉ tìm thấy hai cái hình này.

                              Điều khiển với setpoint là hàm 1(t)
                              Dùng PID cho vòng điều khiển vị trí


                              Điều khiển bám
                              Dùng PD cho vòng điều khiển vị trí


                              Trong cả hai trường hợp, vòng điều khiển tốc độ cùng PI.
                              Last edited by Mecha; 21-03-2007, 01:01 AM.
                              Sống là động nhưng lòng luôn bất động,
                              Sống là thương nhưng lòng chẳng vấn vương,
                              Sống yên vui danh lợi vẫn coi thường,
                              Tâm bất biến giữa dòng đời vạn biến.


                              Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
                              http://www.picvietnam.com/forum//showthread.php?t=1263

                              Comment

                              • Mecha
                                Trưởng lão PIC bang
                                • Dec 2005
                                • 315

                                #45
                                Còn đây là cái mô hình:

                                Sống là động nhưng lòng luôn bất động,
                                Sống là thương nhưng lòng chẳng vấn vương,
                                Sống yên vui danh lợi vẫn coi thường,
                                Tâm bất biến giữa dòng đời vạn biến.


                                Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
                                http://www.picvietnam.com/forum//showthread.php?t=1263

                                Comment

                                Working...