ĐIỀU KHIỂN NHIỀU SERVO BẰNG ARDUINO

Bài viết từ bây giờ xin giới thiệu với các bạn bài viết điều khiển servo RC bằng pwm. Ở các nội dung bài viết trước bọn họ Đọc thêm


Bài viết lúc này xin trình làng với các bạn nội dung bài viết điều khiển servo RC bởi pwm. Ở các bài viết trước chúng ta đã tìm hiểu về cách điều khiển động cơ DC với AC Servo. Lúc này chúng ta cùng nhau tìm hiểu cách tinh chỉnh một loại hộp động cơ thông dụng nửa là RC Servo bằng pwm.

Bạn đang xem: Điều khiển nhiều servo bằng arduino

*

Điều khiển động cơ RC servo bằng pwm


Mục lục

1 1. Mày mò về bộ động cơ servo2 2. Điều khiển động cơ servo bằng PWM Arduino2.3 2.3 Lập trình điều khiển và tinh chỉnh servo RC bởi PWM

1. Tìm hiểu về hộp động cơ servo

1.1 Động cơ RC servo là gì

Khác với các loại hộp động cơ DC, AC servo vào công nghiệp thực hiện encoder để đánh giá vị trí. Động cơ servo là loại động cơ một chiều đơn giản và dễ dàng có cảm biến phản hồi vị trí là một trong những biến trở. Vị trí thực tế được so sánh với địa chỉ mục tiêu, bộ tinh chỉnh và điều khiển sẽ dựa vào sai số này để thay đổi vị tri thực tiễn đúng với yêu thương cầu.

Động cơ RC servo được áp dụng trong định vị bánh lái của thuyền, camera, cảm biến và áp dụng thông dụng trong điều khiển góc quay các khớp của robot.

Điều khiển bộ động cơ DC servo

Điều khiển bộ động cơ AC servo thương hiệu LS

Điều khiển hộp động cơ AC servo Dorna thương hiệu Tecorp

1.2 kết cấu động cơ RC servo

Động cơ servo bao gồm 4 cỗ phận: động cơ một chiều, vỏ hộp số, trở nên trở với mạch điều khiển.

*

Cấu tạo hộp động cơ rc servo

+ Động cơ DC có tốc độ cao và moment phải chăng nên yêu cầu hộp số nhằm giảm tốc độ và tăng moment góp điều khiển giỏi vị trí. Tốc độ sau khoản thời gian qua hộp tụt giảm khoảng 60 vòng/phút.

+ đổi thay trở được nối với hộp số hoặc trục của cồn cơ, nên lúc động cơ xoay thì đổi thay trở cũng đôi khi quay theo. Vươn lên là trở quay đang ứng với bộ động cơ quay theo một góc hoàn hảo nhất so với địa điểm ban đầu. Mạch điều khiển và tinh chỉnh đọc năng lượng điện áp từ phát triển thành trở và đối chiếu với điện áp của bộc lộ điều khiển. Ở một số động cơ rc servo có tích vừa lòng thêm mạch cầu H để điều chỉnh động cơ tảo theo chiều ngược lại khi hộp động cơ quay qua vị trí mong muốn muốn. Cho đến khi không đúng số thân hai biểu đạt điện áp này bằng 0.

1.3 nguyên tắc điều khiển động cơ servo bằng pwm

+ Động cơ RC servo được điều khiển bằng cách cấp một chuỗi xung PWM. Tần số của xung điều khiển nên là 50 Hz, góc tảo của cồn cơ phụ thuộc vào vào độ rộng của xung điều khiển. Loại động cơ này có giới hạn về góc quay, góc quay tối đa là 180 độ.

+ đến ví dụ độ rộng xung 1 mS ứng cùng với góc quay hộp động cơ là 0 độ, độ rộng 1,5 mS ứng cùng với góc con quay là 90 độ với 2mS ứng với góc quay 180 độ. Góc quay rất có thể khác nhau đối với các các loại động cơ của các nhãn hiệu khác nhau.

*

Góc quay của đụng cơ nhờ vào xung điều khiển

1.4 kết nối động cơ Rc servo

Động cơ servo thông thường sẽ sở hữu được 3 chân VCC, biểu hiện và chân GND. Color dây những chân của động cơ servo sẽ chuyển đổi tùy theo công ty sản xuất. Tuy nhiên ta thấy hầu hết các chân của bộ động cơ sẽ hiện tượng theo color như sau.

+ GND – Màu đen hoặc nâu, chân MASS cho hộp động cơ và mạch điều khiển.

+ biểu hiện – màu trắng hoặc vàng, chân ngỏ vào của bộc lộ điều khiển

+ VCC – Chân cấp nguồn cho động cơ và mạch điều khiển, hay là 5V.

Xem thêm: Máy Ép Nhiệt Phẳng 40X60 Cũ Giá Rẻ Để Tránh Mất Tiền Oan, Máy Ép Nhiệt Phẳng 40X60

2. Điều khiển hộp động cơ servo bằng PWM Arduino

2.1 tại sao lựa lựa chọn Arduino tinh chỉnh và điều khiển servo RC

+ Như đã trình diễn ở trên, bộ động cơ servo cần xung tinh chỉnh PWM để vận động một cách thiết yếu xác. Bao gồm nhiều cách để tạo xung điều khiển và tinh chỉnh PWM, trong số đó dùng vi điều khiển sẽ có khá nhiều ưu điểm rộng để điều khiển servo hiệu quả. Với Arduino là một trong những sự gạn lọc hoàn hảo. Cùng với mã mối cung cấp mở, chi phí rẻ, các hàm chức năng dễ sử dụng.

+ ứng dụng lập trình Arduino IDE cung ứng thư viện tinh chỉnh Servo, hoàn toàn có thể sử dụng những hàm điều khiển servo dễ dàng.

+ Trên từng board mạch Arduino có một vài chân tinh chỉnh và điều khiển PWM. Trên board Arduino UNO gồm 4 chân PWM gồm tần số 490 Hz với 2 chân PWM có tần số 980 Hz.

+ chú ý khi áp dụng thư viện Servo nên sử dụng một số trong những bộ timer bên phía trong Arduino, cụ thể là timer 1. Điều này khiến trở ngại cho những thư viện không giống cần thực hiện bộ timer giống như

2.2 chọn nguồn cung cấp cho mạch

+ Động cơ SG90 sẽ chuyển động tốt cùng với nguồn cung ứng với mối cung cấp 5V cung cấp từ Arduino do moment yếu, mẫu điện nhỏ.

*

Điều khiển động cơ servo G90 bằng arduino

+ tuy nhiên đối với một số Servo gồm moment bự như MG9995 hoặc khi tất cả gắn thêm cài thì chiếc điện hoàn toàn có thể lớn hơn mẫu cấp buổi tối đa của Arduino. Giống hệt như một số loại hộp động cơ khác, khi hoạt động có thể xuất hiện nhiễu trê tuyến phố dây cung cấp nguồn. Lúc nhiễu trên đường dây cấp nguồn mang lại vi tinh chỉnh và điều khiển và một trong những thiết bị khác đã dẫn đến sai số.

Vì vậy nên cấp nguồn ngoài cho động cơ servo, liên kết GND cùng chân bộc lộ với Arduino. Hoàn toàn có thể sử dụng tụ 100uF hoặc lớn hơn nối song song cùng với nguồn cấp cho gần hộp động cơ để giảm nhiễu.

*

điều khiển động cơ servo MG9995 bởi pwm

2.3 Lập trình tinh chỉnh servo RC bằng PWM

a. Điều khiển servo cù từ 0 cho 180 độ và ngược lại

+ kết nối mạch ko thể đơn giản hơn, trong lấy một ví dụ này áp dụng chân 9 là chân tín hiệu tinh chỉnh và điều khiển servo. Chân 9 là 1 trong 6 chân có chức năng phát xung PWM, các chân phạt xung sẽ sở hữu ký hiệu là lốt “~”.

*

Điều khiển động cơ servo RC bằng pwm

+ Hãy coi code lấy ví dụ trong mục File/ Examples/ Servo/ Sweep

Trong ví dụ này tinh chỉnh và điều khiển động cơ servo con quay một 180 độ tiếp đến dừng 2s và quay lại vị trí lúc đầu 0 độ. Mỗi bước quay là một trong độ, thời gian chờ để hộp động cơ đạt mang đến vị trí tinh chỉnh và điều khiển là 15mS. Do thời gian chờ siêu bé, phải ta nhận thấy động cơ cù liên tục.

***************************************************

/* Sweep – Điều khiển động cơ servo bởi arduino

 by BARRAGAN

*/

#include // Khai báo tủ sách servo

Servo myservo;// Tạo đối tượng người sử dụng tên myservo

int pos = 0;//Tạo biến chuyển nhận giá trị góc quay

void setup()

myservo.attach(9,500,2500); // Chân 9, chu kỳ Min, Max

void loop()

//Điều khiển servo cù một góc 180 độ

for (pos = 0; pos

myservo.write(pos); //ra lệnh servo xoay một góc “pos”

delay(15); // đợi 15ms để động cơ đạt đến vị trí pos

delay(500); //Khi quay mang lại vị trí góc 180 độ dừng 2s

//Điều khiển servo quay về vị trí 0 độ

for (pos = 180; pos >= 0; pos -= 1) //Biến pos đang chạy từ bỏ 180 về 0

myservo.write(pos);

delay(15);

delay(500); //Khi quay cho vị trí góc 0 độ ngừng 2s

}

***************************************************

+ lưu ý: lịch trình định nghĩa một đối tượng người dùng tên myservo để thay mặt đại diện cho hộp động cơ servo đề nghị điều khiển, nếu điều khiển và tinh chỉnh nhiều servo thì mỗi hễ cơ đề nghị định nghĩa một đối tượng người tiêu dùng riêng.

Video tìm hiểu thêm mô phỏng tinh chỉnh và điều khiển servo bằng pwm trên phần mềm Proteus

Video thực tế điều khiển hộp động cơ servo bởi arduino

b. Điều khiển bộ động cơ servo luân phiên theo biến trở

+ Ở ví dụ như này ta sẽ dùng Arduino hiểu giá trị vươn lên là trở điều khiển góc quay của bộ động cơ servo bằng PWM. Động cơ đã quay theo biến đổi trở.

*

Điều khiển servo bởi arduino

***************************************************

/*

 Điều khiển vị trí bộ động cơ servo bằng biến trở arduino

 by Michal Rinott

http://www.arduino.cc/en/Tutorial/Knob

*/

#include // Khai báo thư viện servo

Servo myservo; // Tạo đối tượng người tiêu dùng tên myservo

int potpin = 2; // chân Analog 0 kết nối biến trở

int val; // thay đổi đọc quý hiếm chân Analog

void setup()

myservo.attach(9,500,2500); // Chân 9, Min, Max

void loop()

val = analogRead(potpin); // Đọc giá chỉ trị vươn lên là trở 0 – 1023

val = map(val, 0, 1023, 0, 180); // biến đổi giá trị val về 0-180

myservo.write(val); //ra lệnh servo xoay một góc “var”

delay(15); // đợi 15 mS để hộp động cơ đạt mang đến vị trí “var”

***************************************************

Video mô bỏng trên chương trình phần mềm Proteus

Video thực tiễn điều khiển bộ động cơ quay theo đổi mới trở

Động cơ servo là gì?

Điều khiển động cơ DC servo

Nơi mua Arduino, mạch ước H giá tốt mà chất lượng?

Với giá bán bán đối đầu và cạnh tranh trên những sàn dịch vụ thương mại điện tử được rất nhiều người sử dụng review cao. Ship hàng tận nơi, với chế độ hoàn trả chi phí nếu sản phẩm bị lỗi đề xuất khách hàng hoàn toàn có thể yên trung tâm đặt áp dụng các thành phầm của chúng tôi.

Leave a Reply

Your email address will not be published. Required fields are marked *

  • Tranh tô màu cho bé gái 4 tuổi

  • True beauty dàn diễn viên

  • Xi măng vissai ninh bình

  • Các mẫu thêu tay trên áo

  • x

    Welcome Back!

    Login to your account below

    Retrieve your password

    Please enter your username or email address to reset your password.