[O-H] Động cơ RC Servo được điều khiển như thế nào

phanminhnhat
Bình luận: 17Lượt xem: 15,406

phanminhnhat

Học việc
Khác với động cơ bước, động cơ servo là dạng động cơ điều khiển theo góc quay, được sử dụng khá phổ biến trong các bộ chấp hành của hệ thống cơ điện tử trên xe hơi, robot, mô hình...
Em xin phép giới thiệu sơ qua về cách điều khiển nó để khi cần anh em có thể áp dụng vào một trường hợp nào đó:

Cấu tạo:


1. Động cơ DC
2. Board điều khiển
6. Biến trở
7. Trục ra

Các kiểu servo:


Một servo motor thường có 3 dây:
- GND
- VCC
- SIGNAL

Tín hiệu điều khiển Servo: là tín hiệu dạng xung điều rộng PWM.
Góc quay của trục ra động cơ chính là độ rộng của tín hiệu xung cấp vào chân signal.

Xung điều rộng PWM sẽ có dạng như thế này:


Trong đó:
- Duty Cycle: độ rộng của xung
- Time Period: Chu kì xung

Tần số tối thiểu của xung PWM là 50Hz tức là Time Period = 20ms. Duty Cycle dùng để điều khiển servo thường là từ 0-3ms.
Để tạo xung PWM điều khiển servo có rất nhiều cách, có thể dùng IC555 đơn giản, vi điều khiển, máy tính...
Ví dụ minh họa: Sử dụng vi điều khiển STM32F103RCT6 phát xung PWM để điều khiển Servo motor SG90 có gắn một cảm biến siêu âm quay quét góc 180 độ:
Đây là động cơ Servo SG90:

Thông số điều khiển:
- Frequency: 50Hz
- Time Period: 20ms
- Duty Cycle: 600us - 2600us


Hy vọng là hữu ích cho mọi người.
 

SLPRV

Tài xế O-H
Túm lại cũng chỉ có nhiêu ấy ,t k muốn sống theo kiêu ăn phủi ,nhưng thực ra t đọc mà sao chẳng hiểu nguyên tắc gì cả ấy nhỉ:
thứ 1: độ rộng xung quyết định đến vấn đề gì ? cứ thấy là độ rộng xung điều khiển ,nhưng là điều khiển vị trí hay vận tốc ? hay là cả 2.
thứ 2: làm sao động cơ quay ngược được, nếu độ rộng quyết định vận tốc quay
Đây là 1 chút thắc mắc gà rù của em
 

phanminhnhat

Học việc
Túm lại cũng chỉ có nhiêu ấy ,t k muốn sống theo kiêu ăn phủi ,nhưng thực ra t đọc mà sao chẳng hiểu nguyên tắc gì cả ấy nhỉ:
thứ 1: độ rộng xung quyết định đến vấn đề gì ? cứ thấy là độ rộng xung điều khiển ,nhưng là điều khiển vị trí hay vận tốc ? hay là cả 2.
thứ 2: làm sao động cơ quay ngược được, nếu độ rộng quyết định vận tốc quay
Đây là 1 chút thắc mắc gà rù của em

Hình ảnh em đưa lên đã thể hiện rất rõ đây là loại RC servo điều khiển theo góc quay (Chứ không phải DC servo) và cách điều khiển cho loại này là cấp PWM và góc quay xác định theo Duty Cycle.
Bài viết của em đơn giản chỉ với mục đích giới thiệu cách sử dụng nó đến với anh em chuyên ngành ôtô (Không dám múa rìu qua mắt thợ!!!)
 

huynguyenmbv

Tài xế O-H
Khác với động cơ bước, động cơ servo là dạng động cơ điều khiển theo góc quay, được sử dụng khá phổ biến trong các bộ chấp hành của hệ thống cơ điện tử trên xe hơi, robot, mô hình...
Em xin phép giới thiệu sơ qua về cách điều khiển nó để khi cần anh em có thể áp dụng vào một trường hợp nào đó:

Cấu tạo:


1. Động cơ DC
2. Board điều khiển
6. Biến trở
7. Trục ra

Các kiểu servo:


Một servo motor thường có 3 dây:
- GND
- VCC
- SIGNAL

Tín hiệu điều khiển Servo: là tín hiệu dạng xung điều rộng PWM.
Góc quay của trục ra động cơ chính là độ rộng của tín hiệu xung cấp vào chân signal.

Xung điều rộng PWM sẽ có dạng như thế này:


Trong đó:
- Duty Cycle: độ rộng của xung
- Time Period: Chu kì xung

Tần số tối thiểu của xung PWM là 50Hz tức là Time Period = 20ms. Duty Cycle dùng để điều khiển servo thường là từ 0-3ms.
Để tạo xung PWM điều khiển servo có rất nhiều cách, có thể dùng IC555 đơn giản, vi điều khiển, máy tính...
Ví dụ minh họa: Sử dụng vi điều khiển STM32F103RCT6 phát xung PWM để điều khiển Servo motor SG90 có gắn một cảm biến siêu âm quay quét góc 180 độ:
Đây là động cơ Servo SG90:

Thông số điều khiển:
- Frequency: 50Hz
- Time Period: 20ms
- Duty Cycle: 600us - 2600us

http://www.youtube.com/watch?v=l2E8lSD5kxU
[video=youtube;l2E8lSD5kxU]http://www.youtube.com/watch?v=l2E8lSD5kxU[/video]


Hy vọng là hữu ích cho mọi người.
I'm respecting those your thread. Be greatful!
 

SLPRV

Tài xế O-H
,,,,,,,,,,, cách điều khiển cho loại này là cấp PWM và góc quay xác định theo Duty Cycle.
Bài viết của em đơn giản chỉ với mục đích giới thiệu cách sử dụng nó đến với anh em chuyên ngành ôtô,,,,,,,,,,,,,,,,,
Nói rõ thêm cho ai lần đầu tiên làm về loại động cơ này như sau: ai cũng nói động cơ này quay theo xung nhận được ,1 cách nói chung chung dễ lầm cho ai mới bắt đầu ,rút cục là:
nếu có 1 động cơ nhận xung trong khoảng 1ms-2ms, góc quay là 180 độ thì khi cấp xung có độ rộng 1ms thì ở vị trí -90 độ, cấp xung có độ rộng 2ms thì ở vị trí +90 độ .Còn với các giá trị trung gian sẽ tương ứng với các góc quay ở giữa [-90,+90]
Lưu ý là động cơ này chỉ quay theo độ rộng xung , k quan tâm số lượng xung. tức là dựa vào độ rộng để xác định vị trí .

Đó là ý kiến của em.
 

thinking

Tài xế O-H
Hình ảnh em đưa lên đã thể hiện rất rõ đây là loại RC servo điều khiển theo góc quay (Chứ không phải DC servo) và cách điều khiển cho loại này là cấp PWM và góc quay xác định theo Duty Cycle.
Bài viết của em đơn giản chỉ với mục đích giới thiệu cách sử dụng nó đến với anh em chuyên ngành ôtô (Không dám múa rìu qua mắt thợ!!!)
Bạn cho mình xin code để tham khảo được không? mail của mình là congbang2709@gmail.com,cảm ơn bạn
 

thinking

Tài xế O-H
Bạn sử dụng vi điều khiển gì?
Ở trên mình đang dùng ARM STM32F103.

Mình cũng sử dụng stm32f103,bạn có thể chia sẻ code được không vì mình đang tìm hiểu về arm st32,mình muốn điều khiển được nhiều RC servo độc lập chứ k phải tạo những xung điều khiển 1 cách thủ công bằng delay
 

phanminhnhat

Học việc
Mình cũng sử dụng stm32f103,bạn có thể chia sẻ code được không vì mình đang tìm hiểu về arm st32,mình muốn điều khiển được nhiều RC servo độc lập chứ k phải tạo những xung điều khiển 1 cách thủ công bằng delay

Tạo xung PWM mà dùng delay thì phí tài nguyên quá bạn ạ, bác nên chuyển sang tạo PWM bằng phần cứng.

STM32 hỗ trợ rất nhiều bộ TIMER 16 bit + có tích hợp ít nhất 6 kênh PWM bạn cứ thoải mái sử dụng :D

Đây là toàn bộ project tạo PWM bằng TIMER1 điều khiển servo quét góc 180 độ mình copy cả thư viện nên bạn cớ thể chỉnh sửa và buid trực tiếp nhé:
http://data.oto-hui.com/phanminhnhat/l5qqmpb3vhgf.html
 

tuananh0589

Tài xế O-H
giống hệt con mô tơ liếc của các đèn headlight cao cấp và đời mới.em tìm mãi mà không có tài liệu nào nói về nó.cảm ơn bác chủ thớt.
 

caoboi_dangyeu2000

Tài xế O-H
Tạo xung PWM mà dùng delay thì phí tài nguyên quá bạn ạ, bác nên chuyển sang tạo PWM bằng phần cứng.

STM32 hỗ trợ rất nhiều bộ TIMER 16 bit + có tích hợp ít nhất 6 kênh PWM bạn cứ thoải mái sử dụng :D

Đây là toàn bộ project tạo PWM bằng TIMER1 điều khiển servo quét góc 180 độ mình copy cả thư viện nên bạn cớ thể chỉnh sửa và buid trực tiếp nhé:
http://data.oto-hui.com/phanminhnhat/l5qqmpb3vhgf.html
bạn ơi sao mình download không được, bạn co the gửi mail dùm mình được không, mail mình là vinhsannguyen91@gmail.com, mình cảm on rat nhiều
 

truccdoto16d

Tài xế O-H
Khác với động cơ bước, động cơ servo là dạng động cơ điều khiển theo góc quay, được sử dụng khá phổ biến trong các bộ chấp hành của hệ thống cơ điện tử trên xe hơi, robot, mô hình...
Em xin phép giới thiệu sơ qua về cách điều khiển nó để khi cần anh em có thể áp dụng vào một trường hợp nào đó:

Cấu tạo:


1. Động cơ DC
2. Board điều khiển
6. Biến trở
7. Trục ra

Các kiểu servo:


Một servo motor thường có 3 dây:
- GND
- VCC
- SIGNAL

Tín hiệu điều khiển Servo: là tín hiệu dạng xung điều rộng PWM.
Góc quay của trục ra động cơ chính là độ rộng của tín hiệu xung cấp vào chân signal.

Xung điều rộng PWM sẽ có dạng như thế này:


Trong đó:
- Duty Cycle: độ rộng của xung
- Time Period: Chu kì xung

Tần số tối thiểu của xung PWM là 50Hz tức là Time Period = 20ms. Duty Cycle dùng để điều khiển servo thường là từ 0-3ms.
Để tạo xung PWM điều khiển servo có rất nhiều cách, có thể dùng IC555 đơn giản, vi điều khiển, máy tính...
Ví dụ minh họa: Sử dụng vi điều khiển STM32F103RCT6 phát xung PWM để điều khiển Servo motor SG90 có gắn một cảm biến siêu âm quay quét góc 180 độ:
Đây là động cơ Servo SG90:

Thông số điều khiển:
- Frequency: 50Hz
- Time Period: 20ms
- Duty Cycle: 600us - 2600us


Hy vọng là hữu ích cho mọi người.
hay
 

XM131

Tài xế O-H
PWM là điều biến bề rộng xung, bản chất nó chỉ vậy nên bản chất nó chỉ điều khiển nhanh/ chậm, mạnh-yếu. Còn muốn điều khiển góc hay hành trình thì hoặc là kết hợp với hàm thời gian, hoặc là có thiết bị (cảm biến) phản hồi góc/vị trí/ tọa độ. Servo là tên gọi chung của của cụm motor điện có kèm theo thiết bị (cảm biến) phản hồi bị trí/tốc độ/góc; động cơ servo có thể là 1 chiều (DC), AC (1 pha, 3 pha, n pha).
 

Bạn hãy đăng nhập hoặc đăng ký để phản hồi tại đây nhé.

Bên trên