1. Chú ý: Các bạn nên tham khảo Nội quy trước khi viết bài (click vào liên kết bên dưới).
    * Nội quy và Thông báo diễn đàn CNCProVN.com
    * Nếu bạn thấy hứng thú với bài viết. Hãy dùng chức năng Share to facebook để chia sẻ bài viết lên facebook.

          
Trang 1 của 2 12 CuốiCuối
Kết quả 1 đến 20 của 35

Chủ đề: Cần trợ giúp về mạch điều khiển DC brushless servo

  1. #1
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết

    Cần trợ giúp về mạch điều khiển DC brushless servo

    Hế nhô các cụ,

    Em đang dụ dỗ được 3 bộ brushless servo gồm servo + controller. Con servo có encoder, còn controller thì có thể điều khiển torque, tốc độ & chiều quay nhưng ko điều khiển được vị trí. Thông tin em nó ở đây: http://www.a-m-c.com/download/datasheet/b15a8.pdf

    Cơ bản là để điều khiển em nó thì em cần điều khiển Ref+, Ref- của bên controller. Ref từ -10v đến 10v. Ref+ < Ref- thì quay chiếu này, Ref+<Ref- thì quay ngược lại. Duty cycle có thể dùng để điều chỉnh tốc độ. Vol thì em đoán là dùng để kiểm soát torque.
    Em đã độ lại, để em nó chạy như servo, bằng cách điều khiển 2 line, y như pp dùng cho DC servo
    http://forum.cncprovn.com/threads/21...ll=1#post23211

    Vấn đề kẹt là con Cortex M3 thì đầu ra chỉ có 3.3v trong khi đó driver thì chạy 10v mới full torque. Mà nói gì thì nói chứ truyền 3.3v 30kHz chính xác qua khoảng cách 2m-3m em cũng ko an tâm tí nào. Do đó em đang tính độ lại để PWM bằng +-10v. Như vậy em nghĩ có 2 pp:
    * Phương pháp 1:
    Nối Ref- vào 0v, điều khiển Ref+ từ -10v -> 10v. Đây có lẽ là pp mà máy cnc em gỡ ra.
    * Phương pháp 2:
    Bật tắt Ref- và Ref+ với 10v, 0v

    Em tính dùng pp1, nếu vậy thì từ 3.3v, Ref+ switch 3 nấc: -10v, 0v, 10v. Mình switch bằng cách nào?
    Lần sửa cuối bởi Gamo, ngày 01-08-2015 lúc 09:13:08 PM.

  2. #2
    Thợ bậc 6
    Ngày tham gia
    Nov 2013
    Bài viết
    532
    Cám ơn
    63
    Được cám ơn 222 lần
           ở 151 bài viết
    sao thấy cụ mô tả phức tạp quá, em thấy nó chỉ so sánh thôi mà, đâu nhất thiết phải +/- 10v nhỉ.

    =>Differential Reference Input (±10 V Operating Range, ±15 V Maximum Input)

  3. Thành viên đã cám ơn lekimhung cho bài viết hữu ích này:


  4. #3
    Nam Sờ Pín
    Ngày tham gia
    Nov 2013
    Bài viết
    6,623
    Cám ơn
    1,712
    Được cám ơn 3,655 lần
           ở 2,275 bài viết
    3 bộ ấy cho thuê nhé , ế đừng nói là nguyên cái controller mày đem về luôn rồi nhé ??? mà thôi nghiên cứu thành công trả lại cho tao thì ok.
    Nguyễn Hoàng Nam
    n_h_n2002@yahoo.com DT: 0908415648

  5. #4
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết
    Trích dẫn Gửi bởi lekimhung Xem bài viết
    sao thấy cụ mô tả phức tạp quá, em thấy nó chỉ so sánh thôi mà, đâu nhất thiết phải +/- 10v nhỉ.

    =>Differential Reference Input (±10 V Operating Range, ±15 V Maximum Input)
    Hehe, áp dùng để dk gain (ngay chổ đó là opamp mà)=> torque. Ngoài ra 3.3v mà truyền tốc độ cao, đi xa thì ko ổn lắm => phải chơi 10v
    Lần sửa cuối bởi Gamo, ngày 01-08-2015 lúc 09:46:04 PM.

  6. Thành viên đã cám ơn Gamo cho bài viết hữu ích này:


  7. #5
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết
    Trích dẫn Gửi bởi Nam CNC Xem bài viết
    3 bộ ấy cho thuê nhé , ế đừng nói là nguyên cái controller mày đem về luôn rồi nhé ??? mà thôi nghiên cứu thành công trả lại cho tao thì ok.
    Ai thèm cái controller của mày Cho tau thuê 10 năm nhe :x :x :x cả con sờ pín êm ru bà rù nữa )

  8. #6
    Thợ cả
    Ngày tham gia
    Nov 2013
    Bài viết
    5,915
    Cám ơn
    2,195
    Được cám ơn 3,263 lần
           ở 2,038 bài viết
    Trích dẫn Gửi bởi Gamo Xem bài viết
    Ai thèm cái controller của mày Cho tau thuê 10 năm nhe :x :x :x cả con sờ pín êm ru bà rù nữa )
    tốc độ cụ bao nhiêu mà cao?
    dùng DAC mà tạo ra analog chứ ai lại dùng PWM cho analog servo hehe

  9. Thành viên đã cám ơn nhatson cho bài viết hữu ích này:


  10. #7
    Thợ bậc 6 CKD's Avatar
    Ngày tham gia
    Nov 2013
    Bài viết
    6,680
    Cám ơn
    1,733
    Được cám ơn 5,321 lần
           ở 2,595 bài viết
    3.3V thì dùng opamp mà chuyển thành +-10V vô tư mà.
    DT: O7837277II - CKD's Youtube Channel - Facebook - Tổng hợp chủ đề
    17 ds 3, Thạnh Mỹ Lợi, Q2, tp.HCM

  11. Thành viên đã cám ơn CKD cho bài viết hữu ích này:


  12. #8
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết
    Up cái phim lên để dễ tám

  13. #9
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết
    Trích dẫn Gửi bởi nhatson Xem bài viết
    tốc độ cụ bao nhiêu mà cao?
    dùng DAC mà tạo ra analog chứ ai lại dùng PWM cho analog servo hehe
    Hoho, là sao hả sư phụ? Cái driver này ghi là dùng Duty Cycle thì sao dùng DAC được ta?

    Trích dẫn Gửi bởi CKD Xem bài viết
    3.3V thì dùng opamp mà chuyển thành +-10V vô tư mà.
    Hehe, có lý... nhưng mà đang cần PWM 3 giá trị: -10v, 0v, 10v, opamp có chậm quá hem? Mà chưa kể con 10v có sẵn chỉ có 10mA, mình có tận dụng được ko? Hay là phải cấp nguồn riêng?
    Lần sửa cuối bởi Gamo, ngày 01-08-2015 lúc 10:39:42 PM.

  14. #10
    Thợ bậc 3
    Ngày tham gia
    Nov 2013
    Bài viết
    49
    Cám ơn
    13
    Được cám ơn 23 lần
           ở 19 bài viết
    Đúng rồi , phải dùng DAC để có analog điều khiển , sử dụng các IC convert , hoặc biến trở số cũng được .
    Industry Research & Application Center.
    leduc_cktd@yahoo.com.vn
    CP:0909300332
    http://www.letech.vn

  15. Thành viên đã cám ơn LEDUC cho bài viết hữu ích này:


  16. #11
    Thợ bậc 6 CKD's Avatar
    Ngày tham gia
    Nov 2013
    Bài viết
    6,680
    Cám ơn
    1,733
    Được cám ơn 5,321 lần
           ở 2,595 bài viết
    Thì từ 0-3.3V -> offset -> amp -> +-10V là xong.
    Đương nhiên phải có nguồn +-10V (tốt nhất là +-12V)

    Mà mới alo bảo chạy rồi là chạy thế này đó à? Híc híc.. chém vãi.
    Chạy kiểu ấy thì CKD dùng arduino cũng xơi được. Mấy con ARM chết nhục mất thôi. Hí hí hí
    DT: O7837277II - CKD's Youtube Channel - Facebook - Tổng hợp chủ đề
    17 ds 3, Thạnh Mỹ Lợi, Q2, tp.HCM

  17. #12
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết
    Hehe, nhiều chuyện quá, thế là đủ để chạy rồi. Còn thứ gì nữa nói ra để tau làm luôn

    Ủa, mà ngoài pp dùng opamp + DAC thì có cách nào đơn giản switch 3 hiệu điện thế +10v, 0v, -10v hơn ko? (giả sử là đã có nguồn rồi)
    Lần sửa cuối bởi Gamo, ngày 01-08-2015 lúc 11:47:10 PM.

  18. #13
    Thợ bậc 6 CKD's Avatar
    Ngày tham gia
    Nov 2013
    Bài viết
    6,680
    Cám ơn
    1,733
    Được cám ơn 5,321 lần
           ở 2,595 bài viết
    Cơ bản thì nếu control không tuyến tính hoặc gần tuyến tính thì khó mà thành công.
    Vì chạy thì không sao.. khi dừng lại thì thế nào? Dừng không tải khác xa với dừng có tải à.

    Không dùng DAC thì dùng r2r, cùng lắm thì PWM dùng tạm. Opamp là phải có rồi.
    Mà arm có DAC thì mắc gì mà không dùng nhỉ.
    DT: O7837277II - CKD's Youtube Channel - Facebook - Tổng hợp chủ đề
    17 ds 3, Thạnh Mỹ Lợi, Q2, tp.HCM

  19. Thành viên đã cám ơn CKD cho bài viết hữu ích này:


  20. #14
    Thợ cả
    Ngày tham gia
    Nov 2013
    Bài viết
    5,915
    Cám ơn
    2,195
    Được cám ơn 3,263 lần
           ở 2,038 bài viết
    Trích dẫn Gửi bởi Gamo Xem bài viết
    Hoho, là sao hả sư phụ? Cái driver này ghi là dùng Duty Cycle thì sao dùng DAC được ta?


    Hehe, có lý... nhưng mà đang cần PWM 3 giá trị: -10v, 0v, 10v, opamp có chậm quá hem? Mà chưa kể con 10v có sẵn chỉ có 10mA, mình có tận dụng được ko? Hay là phải cấp nguồn riêng?
    dùng opamp offet lại 0 3.3V thành -10 0 +10V ko chậm, vì speed respons của servo ko quá 2000hz , thường thì 500hz thì phải
    em chỉ sợ là PWM ra analog nó noise thôi, kiểu dì nó cũng ripple
    STM32 ko có con nào có DAC build in ah

  21. Thành viên đã cám ơn nhatson cho bài viết hữu ích này:


  22. #15
    Thợ bậc 3
    Ngày tham gia
    Nov 2013
    Bài viết
    49
    Cám ơn
    13
    Được cám ơn 23 lần
           ở 19 bài viết
    STM32 có DAC 12bit ah . Nếu bí quá thì dùng 2 pwm qua opamp để +-10v giống như tacho số vậy + thêm cái mạch chỉnh offset để điều chỉnh vị trí 0V , nhớ phải lọc thông thấp thật tốt , ko thì nó ripple tưng đít .
    Lần sửa cuối bởi LEDUC, ngày 02-08-2015 lúc 08:58:57 AM.
    Industry Research & Application Center.
    leduc_cktd@yahoo.com.vn
    CP:0909300332
    http://www.letech.vn

  23. Thành viên đã cám ơn LEDUC cho bài viết hữu ích này:


  24. #16
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết
    Trích dẫn Gửi bởi CKD Xem bài viết
    Cơ bản thì nếu control không tuyến tính hoặc gần tuyến tính thì khó mà thành công.
    Vì chạy thì không sao.. khi dừng lại thì thế nào? Dừng không tải khác xa với dừng có tải à.

    Không dùng DAC thì dùng r2r, cùng lắm thì PWM dùng tạm. Opamp là phải có rồi.
    Mà arm có DAC thì mắc gì mà không dùng nhỉ.
    Hehe, chuyện tuyến tính ko phải lo. Đúng là chạy kiểu này nó giật bể máy luôn.
    Chưa xong board nên test tạm. Để chốt rồi sẽ biểu diễn S-Curve. Arduino sao bằng ARM được, hohoho....
    Rất tiếc là dòng M3 high density mới có DAC, dòng thường chỉ có ADC >.<

    Trích dẫn Gửi bởi nhatson Xem bài viết
    dùng opamp offet lại 0 3.3V thành -10 0 +10V ko chậm, vì speed respons của servo ko quá 2000hz , thường thì 500hz thì phải
    em chỉ sợ là PWM ra analog nó noise thôi, kiểu dì nó cũng ripple
    STM32 ko có con nào có DAC build in ah
    Đám em hay dùng là STM32F103C8T6 thì ko có DAC cụ ui >.< Có con F4 thì đang để trên bàn thờ
    Cái driver này nó ghi là control bằng duty cycle, vẫn chưa hiểu bên trong nó kiểm soát ra sao nữa >.<

    Trích dẫn Gửi bởi LEDUC Xem bài viết
    STM32 có DAC 12bit ah . Nếu bí quá thì dùng 2 pwm qua opamp để +-10v giống như tacho số vậy + thêm cái mạch chỉnh offset để điều chỉnh vị trí 0V , nhớ phải lọc thông thấp thật tốt , ko thì nó ripple tưng đít .
    Thanks bác! Đó là nguyên nhân vì sao em ko thích dùng DAC với Opamp vì phức tạp mà khả năng bị ripple cao >.<

    Có khả năng phải chơi cho nó 1 cái H-Bridge ko ta? Phí đạn quá >.<
    Lần sửa cuối bởi Gamo, ngày 02-08-2015 lúc 10:23:00 AM.

  25. #17
    Thợ cả
    Ngày tham gia
    Nov 2013
    Bài viết
    5,915
    Cám ơn
    2,195
    Được cám ơn 3,263 lần
           ở 2,038 bài viết
    Trích dẫn Gửi bởi Gamo Xem bài viết
    Hehe, chuyện tuyến tính ko phải lo. Đó là nguyên nhân vì sao ARM ngon hơi Arduino, tính toán số thực hơi bị nhiều, hohoho....
    Rất tiếc là dòng M3 high density mới có DAC, dòng thường chỉ có ADC >.<


    Thanks bác! Đó là nguyên nhân vì sao em ko thích dùng DAC với Opamp vì phức tạp mà khả năng bị ripple cao >.<
    lạy cụ , ripple là PWM <> analog cụ ợ

  26. #18
    Thợ cả
    Ngày tham gia
    Nov 2013
    Bài viết
    5,915
    Cám ơn
    2,195
    Được cám ơn 3,263 lần
           ở 2,038 bài viết
    drive analog, dùng opam tao xung tam giác, rồi một số mạch logic để xác định trạng thái uvw , PI bằng opam > tạo ra áp, đem áp đó đua vào so sánh với xung tam giác <> pwm

  27. #19
    Spam killer Gamo's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    7,149
    Cám ơn
    3,898
    Được cám ơn 1,518 lần
           ở 1,162 bài viết
    Trích dẫn Gửi bởi nhatson Xem bài viết
    lạy cụ , ripple là PWM <> analog cụ ợ
    Hehe, hiểu sai ý bác Le Duc. Ý em ripple là khi bác dùng DAC + OPpamp, 0v chưa chắc là 0v, qua opamp còn sai số nữa.

    Nhưng để kiểm tra lại nó lái bằng duty cycle hay analog.
    Lần sửa cuối bởi Gamo, ngày 02-08-2015 lúc 10:57:49 AM.

  28. #20
    Thợ bậc 3
    Ngày tham gia
    Nov 2013
    Bài viết
    49
    Cám ơn
    13
    Được cám ơn 23 lần
           ở 19 bài viết
    ec. Có 2 cách cho Gamo chọn :
    C1 : analog . tạo ra nguồn tham chiếu +-10v . cái này dùng những IC convert từ digital ra analog . Cái này ở ngoài bán nhiều 8bit digital -> +-10v , hoặc 10bit hoặc 12 bit .
    C2 : có thể dùng 2 pwm để tạo ra +-10v đối xứng thông qua mạch opamp vi sai đối xứng + lọc thông thấp . Nhưng nhược điểm pwm sau khi lọc thông thấp cũng còn bị nhấp nhô không tuyến tính lắm . Còn mạch chỉnh offset thì hiển nhiên phải có để điều chỉnh điểm Zero .
    Cụ thể 2x(0-3.3V) -> difference amplifier -> offset -> +-10V . Thường ngõ vào điều khiển analog chỉ lấy áp tham chiếu nên ko phải lo về chuyện công suất . chỉ cần tuyến tính là được .
    Sử dụng cầu H thì cũng như C2 thôi , ko có ưu điểm gì mà còn ngược lại là khác , mà cũng ko ai làm ngược vậy đâu .
    Kết luận tốt nhất là nên dùng IC convert digital to analog là . IC này thì bán đầy ngoài chợ , mua về là thịt thôi .
    Đám em hay dùng là STM32F103C8T6 thì ko có DAC cụ ui >.< Có con F4 thì đang để trên bàn thờ
    Cái driver này nó ghi là control bằng duty cycle, vẫn chưa hiểu bên trong nó kiểm soát ra sao nữa >.<
    Dòng ARM cortex M3 thì con F1 đã có 2 DAC 12bit rồi . Cụ thể là con STM32F100x . Gamo dowload datasheet về mà xem .
    Nếu dùng duty cycle để điều khiển nghĩa là bên trong driver sẽ có 2 capture để đọc xung pwm tính toán Ton để điều khiển .
    Lần sửa cuối bởi LEDUC, ngày 02-08-2015 lúc 11:58:04 AM.
    Industry Research & Application Center.
    leduc_cktd@yahoo.com.vn
    CP:0909300332
    http://www.letech.vn

  29. Thành viên đã cám ơn LEDUC cho bài viết hữu ích này:


Trang 1 của 2 12 CuốiCuối

Các Chủ đề tương tự

  1. Phần mềm trợ giúp phay bo mạch
    Bởi anhcos trong diễn đàn Phần mềm CAD, CAM và các tiện ích
    Trả lời: 55
    Bài viết cuối: 15-10-2015, 08:02:14 AM
  2. Xin trợ giúp về driver sinano
    Bởi hoang123 trong diễn đàn Driver DC/AC servo motor
    Trả lời: 7
    Bài viết cuối: 29-07-2015, 09:10:59 AM
  3. Biến tần điều khiển động cơ servo
    Bởi tcm trong diễn đàn VFD - biến tần
    Trả lời: 2
    Bài viết cuối: 27-01-2015, 11:21:01 PM
  4. Xin chỉ dẫn mạch điều khiển step đơn giản bằng con 555
    Bởi ABCNC trong diễn đàn Break Out Board, Controller
    Trả lời: 42
    Bài viết cuối: 31-10-2014, 11:21:46 PM
  5. Nhờ các cao thủ giúp bộ điều khiển trục quay
    Bởi newbieCNC trong diễn đàn VFD - biến tần
    Trả lời: 18
    Bài viết cuối: 25-09-2014, 12:35:20 PM

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •