Điều chỉnh độ rộng xung

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • JVeron
    Nhập môn đệ tử
    • Mar 2007
    • 2

    #1

    Điều chỉnh độ rộng xung

    Chào các bác!
    Hiện giờ e đang phai làm báo cáo môn học về đề tài ĐIỀU CHỈNH ĐỘ RỘNG XUNG BẰNG VI ĐIỀU KHIỂN. Bác nào đã từng nghiên cứu vần đề này có thể chỉ dẫn cho e một chút được không?
    Cảm ơn các bác rất nhiều!
  • namqn
    Trưởng lão PIC bang
    • Feb 2006
    • 3020

    #2
    Nguyên văn bởi JVeron View Post
    Chào các bác!
    Hiện giờ e đang phai làm báo cáo môn học về đề tài ĐIỀU CHỈNH ĐỘ RỘNG XUNG BẰNG VI ĐIỀU KHIỂN. Bác nào đã từng nghiên cứu vần đề này có thể chỉ dẫn cho e một chút được không?
    Cảm ơn các bác rất nhiều!
    Bạn phải cho biết yêu cầu của đề tài đã chứ. Có khi chỉ cần học cách sử dụng module CCP (hay ECCP) của PIC mà thôi.

    Thân,
    Biển học mênh mông, sức người có hạn.

    Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
    http://www.picvietnam.com/forum/showthread.php?t=1263

    Comment

    • JVeron
      Nhập môn đệ tử
      • Mar 2007
      • 2

      #3
      Yêu cầu của e là điều chỉnh độ rộng xung để thay đổi vận tốc của động cơ (trong để tài của e là động cơ của bơm cánh dẫn)
      Cảm ơn các trưởng lão namqn! Rất mong nhận được sự giúp đỡ của bạn!

      Comment

      • namqn
        Trưởng lão PIC bang
        • Feb 2006
        • 3020

        #4
        Nguyên văn bởi JVeron View Post
        Yêu cầu của e là điều chỉnh độ rộng xung để thay đổi vận tốc của động cơ (trong để tài của e là động cơ của bơm cánh dẫn)
        Cảm ơn các trưởng lão namqn! Rất mong nhận được sự giúp đỡ của bạn!
        Với động cơ thì tần số điều chế thường quanh quẩn 20 kHz. Bây giờ bạn cho biết bạn dùng loại bộ điều khiển nào để điều chỉnh vận tốc của động cơ, bạn có đo vận tốc chứ? Từ ngõ ra của bộ điều chế độ rộng xung bạn làm thế nào để điều chỉnh vận tốc của động cơ? Động cơ đó có công suất khoảng bao nhiêu?

        Thân,
        Biển học mênh mông, sức người có hạn.

        Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
        http://www.picvietnam.com/forum/showthread.php?t=1263

        Comment

        • linhnc308
          Đệ tử 5 túi
          • Oct 2005
          • 117

          #5
          bạn cần nêu rõ bộ DK của bận mức độ ra sao, DK có phản hồi hay DK mù. Bạn cứ nêu cụ thể và khó khăn gặp phải. Vấn đề của bạn chắc chắn sẽ dc giải quyết.
          CallerID, Ethernet-RS232, PICWEB, Cảnh báo BTS
          Giải pháp toàn diện giám sát - điều khiển từ xa qua GSM/Internet
          0988006696

          http://linhnc308.blogspot.com
          linhnc308@gmail.com

          Comment

          • binhdt04
            Đệ tử 2 túi
            • Mar 2007
            • 43

            #6
            mình củng có đề tài như thế nhưng khác ở chổ là mình dùng sóng vô tuyến dể diều chỉnh tốc độ củ hai dộng cơ cùng một lúc chỉ dùng bốn kênh diều khiển và có đảo chiều dộng cơ nửa mình dùng pic 16f877a không biết hướng giải quyết các anh chỉ giúp em

            Comment

            • binhdt04
              Đệ tử 2 túi
              • Mar 2007
              • 43

              #7
              tốc độ dộng co của mình quay tối đa là 20000vòng/phut

              Comment

              • uydanh
                Đệ tử 4 túi
                • Jan 2007
                • 79

                #8
                Em cũng có đề tài dùng pic để điều khiển tốc độ động cơ DC,nhưng chưa biết bắt đầu như thế nào. Rất mong được mọi người chỉ dẫn.
                Em muốn đề tài của mình như thế này :dùng một keypad ngay trên bo mạch,cài đặt tốc độ động cơ DC, nhấn phím khởi động thì động cơ hoạt động và quay đến tốc độ mong muốn.
                Đây là lần đầu tiên em làm một sản phẩm thực tế sau một thời gian dài học lý thuyết nên chưa biết bắt đầu như thế nào. Em định dùng pic16f877a.Rất mong được sự hướng dẫn tận tình của mọi người trên diễn đàn.

                Comment

                • uydanh
                  Đệ tử 4 túi
                  • Jan 2007
                  • 79

                  #9
                  Trời! Có anh nào làm rồi thì giúp đàn em chut xíu đi!
                  Chỉ cần các anh chỉ cái hướng đi,hướng thực hiện để em có hướng suy nghĩ đề tài!
                  Cảm ơn mọi người!

                  Comment

                  • uydanh
                    Đệ tử 4 túi
                    • Jan 2007
                    • 79

                    #10
                    Quá hay!
                    Các anh có tai liệu nào về điều khiển động cơ DC share cho em nhé!
                    Em muốn dùng một keypad để nhập tốc độ vào thể hiện qua 4 led 7 đoạn.Dùng một nút start,nhấn vào thì động cơ quay đến tốc độ đó ( tất nhiên là có vọt lố, sai số và việc nhập tốc độ có thể thực hiện bất cứ lúc nào).Với suy nghĩ như vậy, để thực hiện được em có phải dùng cái giải thuật gì đó gọi là điều khiển bám theo không? Bới vì nếu phải "bám theo" thì trình độ của em làm chưa nổi.Rất cảm ơn các anh.

                    Comment

                    • ntkha1985
                      Nhập môn đệ tử
                      • Mar 2007
                      • 2

                      #11
                      mình thấy trong ccsc có file example về pwm bạn coi thử coi dùng đc kô

                      Comment

                      • manttforever
                        Nhập môn đệ tử
                        • Mar 2008
                        • 1

                        #12
                        các bác ơi! Bác nào có tài liệu về phương pháp điều chế độ rộng xung PMW thì post lên cho tôi với. Cảm ơn các bác trước nhé!
                        email: doanvanmank40tdh4@gmail.com

                        Comment

                        • anh_gioi
                          Đệ tử 6 túi
                          • Oct 2006
                          • 147

                          #13
                          ví dụ 1 đoạn mã có pwm.các anh em thao khao ...(^+^)
                          #include "C:\Documents and Settings\anh gioi\Desktop\dieu xung\12f683\ex06.h"

                          void main()
                          {
                          int8 i;



                          setup_timer_2 ( T2_DIV_BY_4, 0xc0, 2);
                          setup_ccp1(ccp_pwm);

                          while(true){
                          if ( (input(PIN_A0) == 0) & (input(PIN_A1) == 0) )
                          {
                          setup_ccp1(CCP_OFF);
                          }

                          if ( (input(PIN_A0) == 0) & (input(PIN_A1) == 1) )
                          {
                          setup_ccp1(CCP_PWM);
                          set_pwm1_duty(500);
                          }

                          if ( (input(PIN_A0) == 1) & (input(PIN_A1) == 0) ){
                          setup_ccp1(CCP_PWM);
                          set_pwm1_duty(1020);
                          }
                          }
                          }
                          đây là dùng pic 12F683.rất đơn giản

                          Comment

                          • dangtq84
                            Nhập môn đệ tử
                            • Apr 2008
                            • 7

                            #14
                            Chào anh namqn. Em cũng đang làm đề tài về điều khiển tốc độ động cơ DC bằng cách điều xung dùng PIC6F876A ghép với con IC điều khiển động cơ L298N.
                            Với con PIC6F876A thì : tín hiệu enable cho con L298 là chân RC0, động cơ quay thuận dùng chân RC1, và quay ngược là RC2.
                            Còn con L298 thì : enable dùng chân 6, động cơ quay thuận dùng chân 5 vf động cơ quay ngược dùng chân 7. Em viết chương trinh như sau mà không thấy tốc độ động cơ thay đổi:
                            Code:
                            #include <16F876A.h>
                            #fuses HS,NOPROTECT,NOWDT,BROWNOUT,PUT,NOLVP
                            #use delay(clock=20000000)
                            
                            #define EN2 PIN_B0
                            #define D21 PIN_B1
                            #define D22 PIN_B2
                            
                            void main()
                            {
                              static int value=11;
                              SETUP_CCP1(CCP_PWM);
                              setup_timer_2(T2_DIV_BY_1, 127, 1);
                              
                              set_tris_c(0x00);
                              //output_c(0x00);
                            
                              while(1)
                              {
                                     set_pwm1_duty(value);
                                     
                                     output_bit(EN2,1);
                                     output_bit(D21,1);
                                     output_bit(D22,0);
                              }
                            
                            }
                            Anh giúp em với, sắp bảo vệ đồ án rôi mà không chay được, đang lụt rồi...
                            Last edited by namqn; 08-05-2008, 11:04 PM.

                            Comment

                            • namqn
                              Trưởng lão PIC bang
                              • Feb 2006
                              • 3020

                              #15
                              Code của bạn dùng các chân RB0, RB1, và RB2 chứ không phải các chân RC0, RC1, và RC2 như bạn đã mô tả.

                              Bạn chưa cho biết phần cứng của bạn kết nối ra sao, đọc vào tôi có cảm giác lộn xộn thế nào đó.

                              Trước khi viết code, bạn phải hiểu được nguyên tắc điều khiển và đổi chiều cho động cơ khi dùng L298. L298 gồm 2 mạch cầu H, giả sử bạn dùng một mạch cầu H thì bạn có 2 tín hiệu điều khiển cho 2 nửa cầu. Nguyên tắc điều khiển sẽ là: đặt logic cố định cho 1 nửa cầu và điều rộng xung cho nửa cầu kia. Khi đổi chiều thì đổi vai trò của hai nửa cầu.

                              Nếu bạn chỉ dùng ngõ ra của CCP1 để điều rộng xung thì bạn phải có mạch logic để phân phối tín hiệu PWM đến nửa cầu cần thiết. Bạn chưa cho biết những phần này thì code của bạn vô nghĩa.

                              Thân,
                              Last edited by namqn; 08-05-2008, 11:33 PM.
                              Biển học mênh mông, sức người có hạn.

                              Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
                              http://www.picvietnam.com/forum/showthread.php?t=1263

                              Comment

                              Working...