Thông báo

Collapse
No announcement yet.

Điều khiển động cơ bước dùng 89c51 !

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

  • Điều khiển động cơ bước dùng 89c51 !

    Em đang làm mạch về điều khiển động cơ bước nhưng chưa biết gì cả mong các anh chỉ giáo,cho em xin 1 mach mẫu để về nghiên cứu( mach hoàn chỉnh càng tốt ^^).Em định lắp 2 động cơ cho mô hình:1 động cơ để tiến lùi,1 động cơ quay trái,phải.
    Đề tài yêu cầu: điều chỉnh động cơ tiến,lùi( trái ,phải ),tăng tốc,hiện thị chức năng lên LCD.
    Mong các anh giúp e ^^

  • #2
    Mô tơ bước
    Mô tơ bước có nhiều loại : tôi biết và dùng loại 2 pha , 6 dây ( 4 cuộn dây , 2 common )
    Với mô tơ mới có đầy đủ các tham số nhưng với mô tơ chợ trời thì rất khó , vì vậy chúng ta cần xác định chính xác 2 dây common này . với tên tường cuộn dây là 1 , 2 , 3 và 4 trong đó cuộn 1 và 2 có 1 dây common , cuôn 3 và 4 với dây common còn lại thì tại thời điểm làm việc chỉ 1 trong cuộn dây làm việc ( cuộn 3 và 4 cũng vậy ) , nếu mức 1 là làm việc và 0 la ko làm việc thi chúng ta có bẳng trạng thái làm việc như sau :

    Cuộn 1 2 3 4
    Bit1 1 0 1 0
    Bit2 1 0 0 1
    Bit3 0 1 1 0
    Bit4 0 1 0 1
    Như đã nói đây là mô tơ cũ chúng ta ko thể biết cuộn nào là cuộn 1 , cuộn nào là cuộn 2 ( đâu cuộn 3 , đâu là cuộn 4 ) vì vậy chúng ta chỉ có thể thử và thay đổi cho đến khi nào bằng trực quan thấy mô tơ êm ái , ko nóng thì ok
    1 tham số ko thể bỏ qua la tần số F , nếu F cao hơn khả năng của mô tơ thì có hiện tượng trược , nếu F thấp thì mô tơ nóng. Mô tơ 2 pha tôi đang dùng thì F khoảng trên dưới 10hz la ok , nếu F = < 20hz thì mô tơ bị trược và F =<4hz thì mô tơ nóng
    Tôi đã làm hỏng kha khá ic driver vì vậy việc chọn công suất phù hợp rất quan trọng nếu sản phẩm để thương mại để có gia thành tốt nhất nhưng với sản phẩm đơn lẻ thì IRF 640 là 1 sự lựa chọn tốt, theo datasheet của nó thì nó có tích hợp diot còn công suất thì thoải mái vì vậy chúng ta ko cân thêm linh kiên .
    Kết nối vi điều khiển đến ic driver theo kinh nghiệm cá nhân tôi thì nên thêm vào tầng đệm , nó là tầng cách ly và an toàn cho vi điều khiển
    Cẩn thận giảm nhiều phiền toái
    Kiên trì dẫn đến thành công
    Để đảm bảo chắc ăn chúng ta chỉ cho mô tơ chạy 1 bước khi có lệnh chạy
    Vi dụ : kolamgi:
    setb p1.0
    jb p1.0,kolamgi
    acall runmoto
    với kiến thức và kinh nghiệm nhỏ bé và văn ko hay chư ko đẹp hi vọng sẽ giúp ích cho anh em . ngoc_minh1973@yahoo.com , dt 0903419062
    bất cứ thời gian nào nếu trong kha năng thì xin liên lạc

    Comment


    • #3
      đây là bài tập của mình làm năm trước .có mô phỏng trên proteus .tuy nhiên hơi dài và đọc cũng hơi khó hiểu .bạn tham khảo thử xem ( chỉ quan tâm đến lập trình) .còn phần cứng thì cũng đơn giản thôi bạn tìm trên mạng có rất nhiều
      Attached Files

      Comment


      • #4
        Nguyên văn bởi qkhanh Xem bài viết
        đây là bài tập của mình làm năm trước .có mô phỏng trên proteus .tuy nhiên hơi dài và đọc cũng hơi khó hiểu .bạn tham khảo thử xem ( chỉ quan tâm đến lập trình) .còn phần cứng thì cũng đơn giản thôi bạn tìm trên mạng có rất nhiều
        Cám ơn bạn,nếu bạn có mô hình điều khiển 2 động cơ thì sent cho mình nha(có chức năng tiến lùi,kết hợp quay thuận nghịch 2 động cơ để quay trái phải) ,cảm ơn bạn rất nhiều!

        Comment


        • #5
          Nguyên văn bởi anhsang111 Xem bài viết
          Em đang làm mạch về điều khiển động cơ bước nhưng chưa biết gì cả mong các anh chỉ giáo,cho em xin 1 mach mẫu để về nghiên cứu( mach hoàn chỉnh càng tốt ^^).Em định lắp 2 động cơ cho mô hình:1 động cơ để tiến lùi,1 động cơ quay trái,phải.
          Đề tài yêu cầu: điều chỉnh động cơ tiến,lùi( trái ,phải ),tăng tốc,hiện thị chức năng lên LCD.
          Mong các anh giúp e ^^
          Bác tính dùng động cơ bước loại nào ? Nói rõ hơn thì bà con mới có thể giúp đỡ được.

          Bác nói chưa biết gì hết mà xin mạch điện về làm gì? Vì đa số những mạch này bác phải rành về động cơ bước trước hết đã.

          Tại sao không dùng 2 động cơ để cùng chạy và quẹo, như thế khỏi phải làm phần quẹo trong robot. Muốn quẹo thì cho 2 bánh chạy ngược chiều nhau, hoặc 1 bánh đứng 1 bánh chạy.

          Comment


          • #6
            anh nào giúp e với(động cơ loại nào cũng được,loại phổ biến trên thị trường thì càng tốt để em làm "nhái" theo )

            Comment


            • #7
              nói xem cậu hiểu vấn đề đến đâu thì anh em mới giúp đc chứ

              Comment


              • #8
                stepmoto ở chợ trời hơn 20N
                de nghi cau noi ro xem dang lam den dau , vuong mac cho nao
                Attached Files

                Comment


                • #9
                  mình cũng đang cần cái này lắm, nhưng mìng không làm động cơ bước mà dùng động cơ có encoder thì khác nhau chỗ nào, các bạn có thể hướng dẫn giúp với

                  Comment


                  • #10
                    sao không ai help mình vậy, mình đang cần lắm
                    Last edited by hamster.khin; 10-05-2011, 17:39.

                    Comment


                    • #11
                      Nguyên văn bởi hamster.khin Xem bài viết
                      sao không ai help mình vậy, mình đang cần lắm
                      Nếu bạn đã có giải thuật điều khiển thì cứ điều khiển bình thường, encoder chỉ giúp bạn điều khiển chính xác vị trí thôi.
                      Công ty TNHH Tự Động Hóa Đạt Lân
                      32/36, Ông Ích Khiêm, F14, Q11
                      ĐT: 08.3974 7308 - 0937.197.001
                      email:
                      Webite:

                      Comment


                      • #12
                        CAC BAN XEM MINH VIET MA CON NAY SAI O DAU MA KEIC BAO LOI NHIEU VAY?Thiết kế hệ điều khiển động cơ bước dùng vi điều khiển 8051 gồm:
                        Động cơ 12V; 1,8 độ
                        02 nút điều khiển chạy/dừng động cơ, 01 nút để đảo chiều.

                        #include <regx52.h>
                        #include <stdio.h>
                        unsigned char Step[4] = {0x03, 0x0c, 0x06, 0x09};
                        void delay_ms(unsigned int time)
                        {
                        int i;
                        for( i = 0; i< time ; i++ )
                        {
                        //Thach anh chon la 12MHz
                        TH0 = 0xFC; //FFFF-FC17 = 3E8 (hex)= 1000
                        TL0 = 0x17; //Time = 1000*(12/(12*10^6)) = 1ms
                        TR0 = 1; //Run Timer0
                        while(!TF0 ) {}
                        TR0 = 0; //Stop Timer0
                        TF0 = 0; //Reset Flag Timer0
                        }
                        }

                        void main()
                        {
                        int i;
                        P2 = 0x00;
                        TMOD = 0x01; //Chon Timer0 Che do 16bit
                        while(1)
                        {
                        if(P3_0 == 0) //Dung dong co
                        P2 = 0x00;
                        if(P3_1 == 0 && P3_2 == 1 && P3_0 == 1 )//quay thuan
                        {
                        for( i=0; i<4; i++)
                        {
                        P2 = Step[i];
                        delay_ms( 500 ); //Toc do mot buoc quay
                        }
                        Attached Files

                        Comment


                        • #13
                          mình đang làm đồ án, dùng động cơ bước điều khiển vị trí băng tải, cho mình hỏi cách quy đổi độ dài của băng tải muốn điều khiển thành số bước để nhập cho động cơ như thế nao, vd: mình muốn điều khiển băng tải chạy 2cm thì nhập vào bao nhiêu bước cho đông cơ, bạn nào biết giúp đỡ dùm mình cái, thanhs

                          Comment


                          • #14
                            Nguyên văn bởi hung.ld Xem bài viết
                            mình đang làm đồ án, dùng động cơ bước điều khiển vị trí băng tải, cho mình hỏi cách quy đổi độ dài của băng tải muốn điều khiển thành số bước để nhập cho động cơ như thế nao, vd: mình muốn điều khiển băng tải chạy 2cm thì nhập vào bao nhiêu bước cho đông cơ, bạn nào biết giúp đỡ dùm mình cái, thanhs
                            chú phải đưa thêm thông số chu vi các bánh răng truyền động, hoặc đơn giản là cho động cơ quay 1 vài vòng nhất định rồi đo khoảng cách băng tải chạy để tính

                            Comment


                            • #15
                              Em đang làm đồ án điều khiển và hiển thị tốc độ động cơ bước : 12v, 1.8 đô, điều khiển 4 bước , 6 dây. yêu cầu sử dụng 5 nút bấm : chạy/dừng, thuận, nghịch, tăng tốc, giảm tốc. Em làm được sơ đồ nguyên lý rồi nhưng phần viết code do em kém vi xử lý lắm nên không biết bắt đầu từ đâu. Anh chị giúp đỡ em với ạ

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X