TRƯỜNG ĐẠI HỌC VINHVIỆN KỸ THUẬT VÀ CÔNG NGHỆ BÁO CÁO KỸ THUẬT ĐIỆN TỬ SỐ VÀ VI XỬ LÝ TÊN ĐỀ TÀI: THIẾT KẾ, CHẾ TẠO BỘ ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC SỬ DỤNG VI ĐIỀU KHIỂN STM32... Mục tiêu
Trang 1TRƯỜNG ĐẠI HỌC VINH
VIỆN KỸ THUẬT VÀ CÔNG NGHỆ
BÁO CÁO
KỸ THUẬT ĐIỆN TỬ SỐ VÀ VI XỬ LÝ
TÊN ĐỀ TÀI: THIẾT KẾ, CHẾ TẠO BỘ ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC SỬ DỤNG VI ĐIỀU KHIỂN STM32.
Giảng viên hướng dẫn: ThS.LÊ VĂN CHƯƠNG Nhóm thực hiện: Nhóm 5
Lớp: Kỹ thuật điện tử số và vi xử lý-LT01 Ngành: CNKT Điện-Điện tử
NGHỆ AN - 2024
Trang 2
MỤC TIÊU VÀ NHIỆM VỤ MÔN HỌC Họ tên sinh viên: 1 2
3
4
5
NGÀNH: Công nghệ kỹ thuật điện, điện tử 1 Mục tiêu đồ án: Nghiên cứu về các cách điều khiến động cơ bước từ đó hiểu nguyên lý của mạch điều khiến rồi lựa chọn phương án tối ưu nhất để áp dụng vào đồ án và trong thực tế
2 Nhiệm vụ: Thiết kế, chế tạo bộ điều khiển động cơ bước sử dụng vi điều khiển
STM32
3 Ngày giao đồ án:
4 Ngày hoàn thành đồ án:
5 Người hướng dẫn: ThS.LÊ VĂN CHƯƠNG
Nghệ An, ngày tháng năm 2024
NGƯỜI HƯỚNG DẪN
TRƯỜNG ĐẠI HỌC VINH CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM VIỆN KỸ THUẬT VÀ CÔNG NGHỆ Độc lập - Tự do - Hạnh phúc
Trang 3PHÂN CÔNG NHIỆM VỤ ĐỒ ÁN MÔN HỌC
Tên đồ án: Thiết kế, chế tạo bộ điều khiển động cơ bước sử dụng vi điều khiển
STM32
Ngành: CNKT Điện - Điện tử
Người hướng dẫn: TS.LÊ VĂN CHƯƠNG
đánh giá (Mức
A, B, C, D)
Chữ kí
1 Nguyễn Văn Lợi 225751030110015 Tổng hợp báo
cáo, tính toán, bổ sung,vẽ hình
A
2 Nguyễn Hựu
Hiếu
225751030110023 Vẽ hình, tính toán B
3 Lê Hải Giáp 225751030110028 Vẽ hình, tính toán B
4 Bùi Văn Hiếu 225751030110014 Vẽ hình, tính toán B
(Danh sách gồm 4 sinh viên)
Nghệ An, ngày tháng năm 2024
NHÓM TRƯỞNG
TRƯỜNG ĐẠI HỌC VINH CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM VIỆN KỸ THUẬT VÀ CÔNG NGHỆ Độc lập - Tự do - Hạnh phúc
Trang 4MỤC LỤC
MỞ ĐẦU 3
PHẦN 1: YÊU CẦU VÀ MỤC TIÊU CỦA ĐỀ TÀI 4
1.1.Phân tích và yêu cầu đề tài 4
1.2 Mục tiêu của đề tài 4
1.3 Phương án thực hiện 4
1.4 Ý nghĩa của đề tài 4
PHẦN 2: CƠ SỞ LÝ THUYẾT 5
2.1 Tổng quan về động cơ bước 5
2.2 Vi xử lý STM32 Nucleo-64 development Board with STM32F411RE MCU 5
2.3 Module điều khiển động cơ bước ULN2003 5
PHẦN 3: XÂY DỰNG HỆ THỐNG 5
3.1 Chương trình nạp vào vi điều khiển STM32 Nucleo-64 5
3.2 Kết quả mô phỏng 5
3.3 Lưu đồ thuật toán 5
KẾT LUẬN 5
TÀI LIỆU THAM KHẢO 5
Trang 5MỞ ĐẦU Trong những năm gần đây, nền kinh tế của nước ta phát triển rất mạnh mẽ
và nhanh chóng, để đạt được kết quả như này thì có sự đóng góp rất lớn của ngành kĩ thuật điện tử, kỹ thuật vi xử lý
Với sự phát triển như vũ bão như hiện nay thì kỹ thuật điện tử, kĩ thuật vi
xử lý đang xâm nhập vào tất cả các ngành khoa học – kỹ thuật khác và đã đáp ứng được mọi nhu cầu của người dân Sự ra đời của các vi mạch điều khiển với giá thành giảm nhanh, khả năng lập trình ngày càng cao đã mang lại những thay đổi sâu sắc trong ngành kỹ thuật điện tử
Và việc ứng dụng các kỹ thuật này vào thực tế sẽ giúp ích rất nhiều cho mọi người Để góp một phần nhỏ vào việc này chúng em đã thực hiện đề tài
“Thiết kế, chế tạo bộ điều khiển động cơ bước sử dụng vi điều khiển STM32” thông qua đề tài này chúng em sẽ có những điều kiện tốt nhất để học hỏi, tích lũy kinh nghiệm quý báu, bổ xung thêm vào hành trang của mình trên con đường
đã chọn
Trong suốt quá trình thực hiện đề tài chúng em đã nhận được sự hướng dẫn tận tình của thầy “ LÊ VĂN CHƯƠNG” và các thầy cô trong khoa điện-điện tử Chúng em xin chân thành cảm ơn các thầy cô Tuy nhiên trong quá trình thực hiện đồ án do kiến thức hiểu biết còn hạn hẹp cũng như chúng em chưa có nhiều điều kiện khảo sát thực tế nhiều, thời gian làm đồ án không dài do vậy đồ
án của chúng em cũng không thể tránh được những thiếu sót Chúng em rất mong thầy và các các bạn đóng góp và bố sung ý kiến để đồ án của chúng em thêm hoàn thiện hơn
Xin chân thành cảm ơn!
Trang 6PHẦN 1: YÊU CẦU VÀ MỤC TIÊU CỦA ĐỀ TÀI
1.1 Phân tích và yêu cầu đề tài
Nghiên cứu nguyên lý hoạt động của động cơ bước và vi điều khiển STM32
Lựa chọn vi điều khiển STM32 phù hợp với yêu cầu của hệ thống
Thiết kế phần cứng của bộ điều khiển, bao gồm mạch giao tiếp với vi điều khiển, mạch điều khiển động cơ bước
Thiết kế giao diện người dùng để điều khiển và giám sát hoạt động của động
cơ bước
Chế tạo và thử nghiệm hệ thống
Thiết kế phần cứng: Bao gồm việc lựa chọn linh kiện, mạch in, nạp chương trình và kết nối với động cơ bước
Lập trình vi điều khiển STM32: Xây dựng các chương trình điều khiển cho động cơ bước, bao gồm xác định hướng quay, tốc độ quay và số bước
Kiểm tra và hiệu chỉnh: Thực hiện kiểm tra chức năng, hiệu chỉnh thông số
để đảm bảo hoạt động ổn định và chính xác
1.2 Mục tiêu của đề tài
Phát triển hệ thống điều khiển động cơ bước hiệu quả và linh hoạt
Tận dụng ưu điểm của vi điều khiển STM32
Thiết kế hệ thống hoàn chỉnh và dễ sử dụng
Nâng cao kỹ năng thiết kế và lập trình hệ thống nhúng
Nghiên cứu và phát triển các thuật toán điều khiển động cơ bước tiên tiến để nâng cao độ chính xác và hiệu quả của hệ thống
Tích hợp bộ điều khiển động cơ bước với các hệ thống khác để tạo ra các ứng dụng phức tạp hơn
1.3 Phương án thực hiện
Lập kế hoạch thực hiện.
Trang 7 Giới thiệu một số ứng dụng và đặc điểm của mạch điều khiển động cơ bước
Phân tích nguyên lý làm việc và các thông số trong mạch điều khiển động cơ bước
Thiết kế, chế tạo mạch
Thí nghiệm, kiểm tra sản phẩm, sản phẩm phải đảm bảo yêu cầu kỹ thuật, mỹ thuật
1.4 Ý nghĩa của đề tài
Để giúp sinh viên có thể có thể củng cố kiến thức, tổng hợp và nâng cao kiến thức chuyên nghành cũng như kiến thức ngoài thực tế Đề tài còn thiết kế chế tạo thiết bị, mô hình để các sinh viên trong trường đặc biệt là sinh viên ngành Điện – Điện tử tham khảo, học hỏi tạo tiền đề nguồn tài liệu cho các học sinh, sinh viên khoá sau có thêm nguồn tài liệu để nghiên cứu và học tập Những kết quả thu được sau khi hoàn thành đề tài này trước tiên là sẽ giúp chúng em có thể hiểu sâu hơn về các loại động cơ bước, các phương pháp điều khiển động cơ bước Từ đó sẽ tích luỹ được kiến thức cho các năm học sau và ra ngoài thực tế
PHẦN 2: CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về động cơ bước
Động cơ bước (motor bước) là một loại động cơ mà các bạn có thể quy định được tần số góc quay của nó Nếu góc bước của nó càng nhỏ thì số bước trên mỗi vòng quay của động cơ càng lớn và độ chính xác của vị trí chúng ta thu được càng lớn Chúng thực chất là động cơ đồng bộ dùng để biến đổi các tín hiệu điều khiển dưới dạng các xung điện rời rạc kế tiếp nhau thành các chuyển động góc quay hoặc chuyển động của roto có khả năng cố định roto và các vị trí cần thiết
Các góc bước của động cơ có thể đạt cực đại là 90 độ và cực tiểu đến 0,72 độ Tuy nhiên, các góc bước của động cơ thường được sử dụng phổ biến nhất là góc 1,8 độ, góc 2,5 độ, góc 7,5 độ và góc 15 độ
Trang 82.1.1 Vai trò của động cơ bước
Động cơ bước có vai trò rất quan trọng trong điều khiển chuyển động kỹ thuật
số, tự động hóa, vì nó là cơ cấu chấp hành trung thành với những lệnh đưa ra dưới dạng số, nó chấp hành chính xác Ta có thế điều khiển nó quay một góc bất
kỳ, chính xác, dừng lại ở một vị trí nào đó ta muốn Vì vậy nó được ứng dụng nhiều trong tự động hóa và điều khiển số
Một số ứng dụng như : máy CNC, máy in, ổ cứng, ổ đĩa quang, robot… Rất nhiều ứng dụng đòi hỏi cơ cấu chuyển động có độ chính xác cao, chuyển động êm cho thấy vai trò của động cơ bước rất quan trọng
2.1.2 Cấu tạo của động cơ bước
Động cơ bước là một loại động cơ điện có nguyên lý và ứng dụng khác biệt với
đa số các động cơ điện thông thường Chúng thực chất là một động cơ không đồng
bộ dùng để biến đổi các tín hiệu điều khiển dưới dạng các xung điện rời rạc kế tiếp nhau thành các chuyển động góc quay hoặc các chuyển động của rôto có khả năng
cố định rôto vào các vị trí cần thiết
Về cấu tạo, động cơ bước có thể được coi là tổng hợp của hai loại động cơ: Động
cơ một chiều không tiếp xúc và động cơ đồng bộ giảm tốc công suất nhỏ
Động cơ bước có thể được mô tả như là một động cơ điện không dung chuyển mạch
Cụ thể, các mẫu trong động cơ là rôto và stato là các nam châm vĩnh cửu hoặc trong trường hợp của động cơ biến từ trở nó là những khối răng làm bằng vật liệu nhẹ có từ tính, cho phép chúng quay khá nhanh và với một mộ điều khiển thích hợp cho phép chúng khởi động và dừng lại ở bất kỳ vị trí nào ta muốn một cách dễ dàng
2.1.3 Hoạt động
Động cơ bước không quay theo cơ chế thông thường, chúng quay theo từng bước nên có độ chính xác rất cao về mặt điều khiển học Chúng làm việc nhờ các bộ chuyển mạch điện tử đưa các tín hiệu điều khiển vào stato theo thứ tự và một tần
số nhất định
Trang 9Tổng số góc quay của rôto tương ứng với số lần chuyển mạch, cũng như chiều quay và tốc độ quay của rôto phụ thuộc vào thứ tự chuyển đối và tần số chuyển đổi
Một số ưu và nhược điểm của động cơ bước:
Ưu điểm:
Khi dùng động cơ bước không cần mạch phản hồi cho điều khiến vị trí và vận tốc
Thích hợp với các thiết bị điều khiển số với khả năng điều khiển số trực tiếp (động cơ bước trở thành thông dụng trong kĩ thuật robot)
Hầu hết các động cơ bước có thể chuyển động ở tần số âm thanh,
Nhược điểm:
Công xuất thấp (việc nâng cao công xuất của động cơ bước đang được rất quan tâm hiện nay)
2.1.4.Ứng dụng
Trong điều khiến chuyển động kỹ thuật số, động cơ bước là một cơ cấu chấp hành đặc biệt hữu hiệu bởi nó có thể thực hiện trung thành các lệnh đưa ra dưới dạng số
Động cơ bước được ứng dụng nhiều trong ngành Tự động hóa chúng được ứng dụng trong các thiết bị cần điều khiến chính xác Ví dụ: Điều khiển robot, điều khiển tiêu cự trong các hệ quang học, điều khiển định vị trong các hệ quan trắc, điều khiển bắt, bám mục tiêu trong các khí tài quan sát, điều khiển lập trình trong các thiết bị gia công cắt gọt, điều khiển các cơ cấu lái phương và chiều trong máy bay
Trong công nghệ máy tính, động cơ bước được sử dụng cho các loại ổ đĩa cứng,
ổ đĩa mềm, máy in
2.1.5 Các đặc tính cơ bản
Brushlesss (không chối than): STEP là loại động cơ không chối than
Trang 10Load Independent (độc lập với tải): động cơ bước quay với tốc độ ổn định trong tầm moment của động cơ
Open loop positioning (điều khiển vị trí vòng hở): thông thường chúng ta có thể đếm xung kích ở động cơ để xác định vị trí mà không cần phải có cảm biến hồi tiếp vị trí, nhưng đôi khi trong những ứng dụng đòi hỏi tính chính xác cao STEP thường được sử dụng kết hợp với các cảm biến vị trí như: encoder, biến trở Holding Torque (moment giữ): STEP có thể giữ được trục quay của nó, so với động cơ DC không có hộp số thì moment giữ của STEP lớn hơn rất nhiều Excellent Response (Đáp ứng tốt): STEP đáp ứng tốt khi khởi động, dừng lại và đảo chiều quay một cách dễ dàng
2.1.6 Một số loại động cơ bước
Động cơ biến từ trở
Động cơ đơn cực
Động cơ hai cực
Trang 11 Động cơ nhiều pha
2.2 Vi xử lý STM32 Nucleo-64 development Board with
STM32F411RE MCU
Vi xử lý STM32 Nucleo-64 Development Board with STM32F411RE MCU là một bo mạch phát triển nhúng, được thiết kế để phục vụ việc phát triển và kiểm tra ứng dụng nhúng dựa trên vi xử lý STM32F411RE Bo mạch này cung cấp một loạt các tính năng và cổng kết nối để tương tác với vi xử lý và các thiết bị ngoại vi khác
Vi điều khiển STM32 là một dòng sản phẩm vi điều khiển (MCU -Microcontroller Unit) được phát triển bởi STMicroelectronics, một trong những nhà sản xuất hàng đầu trong lĩnh vực thiết kế và sản xuất linh kiện điện tử STM32
sử dụng các lõi xử lý ARM Cortex-M, được tích hợp với một loạt các tính năng và chức năng phong phú, bao gồm các giao diện kết nối, bộ nhớ và các tính năng bảo mật
Trang 12Vi điều khiển STM32
Vi xử lý STM32 Nucleo-64 với STM32F411RE MCU là một công cụ mạnh mẽ dành cho việc phát triển các ứng dụng nhúng Với tính linh hoạt, tính năng phong phú và hiệu suất cao, nó có thể được áp dụng trong nhiều lĩnh vực từ IoT, điều khiển thiết bị tự động, robotics đến đào tạo và nghiên cứu Sự ổn định và khả năng
mở rộng của vi xử lý STM32 Nucleo-64 là điểm nhấn đáng chú ý, mang lại những giải pháp sáng tạo và hiệu quả cho các nhà phát triển và kỹ sư nhúng
Cấu tạo của STM32
Trang 13VCC: là chân cấp nguồn, được kết nối đến nguồn cung cấp điện áp dương GND (Ground): là chân đất, cực âm của nguồn điện cấp cho STM32 Khi bạn
dùng các thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau
5V: cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA.
3.3V: cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA IOREF: điện áp hoạt động của vi điều khiển trên STM32 có thể được đo ở chân
này Và dĩ nhiên nó luôn là 5V Mặc dù vậy bạn không được lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó không phải là cấp nguồn
RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với
việc chân RESET được nối với GND qua 1 điện trở 10KΩ
Vin (Voltage Input): để cấp nguồn ngoài cho STM32, bạn nối cực dương của
nguồn với chân này và cực âm của nguồn với chân GND
GPIO: GPIOA, GPIOB, GPIOC, GPIOH trên vi điều khiển STM32, các chân
GPIO thường được ký hiệu bằng mã chân như PA0, PA1, PB0, PB1, Với "PA" là viết tắt của GPIOA, "PB" là viết tắt của GPIOB, và tiếp tục cho các nhóm GPIO khác.Đây là cách mà các chân GPIO thường được đặt tên trong mã hóa của các dòng vi điều khiển STM32 và là cách phổ biến để tham chiếu đến chúng trong mã lập trình
Chân I2C: Chân SDA (Serial Data Line): Đây là chân dùng để truyền dữ liệu từ
và đến thiết bị ngoại vi Trên vi điều khiển STM32, chân SDA thường được gắn vào một chân GPIO cụ thể, ví dụ như PA10, PB7, PB9, Chân SCL (Serial Clock Line): Đây là chân dùng để đồng bộ hoá truyền dữ liệu trên chân SDA Cũng giống như chân SDA, chân SCL cũng được gắn vào một chân GPIO cụ thể,
ví dụ như PA9, PB6, PB8,
Chân PWM: Chân này được sử dụng để tạo ra tín hiệu PWM, thường được sử dụng để điều khiển độ sáng của đèn LED, tốc độ của động cơ hoặc các ứng dụng điều khiển động cơ servo Tín hiệu PWM được điều chỉnh bằng cách thay đổi độ rộng xung xung chu kỳ, do đó, nó thường được sử dụng để điều khiển tốc độ của
Trang 14động cơ hoặc độ sáng của đèn LED và có thể điều chỉnh độ rộng xung để điều khiển mức điện áp đầu ra
2.3 MODULE ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC ULN2003
Module điều khiển động cơ bước ULN2003 là một module được sử dụng để điều khiển và điều chỉnh động cơ bước một cách dễ dàng và thuận tiện Nó được sử dụng phổ biến trong các ứng dụng điều khiển động cơ bước như các máy in 3D, máy CNC, robot và các thiết bị tự động hóa khác
Module điều khiển động cơ bước ULN2003 được tích hợp sẵn mạch ULN2003, một bộ khuếch đại dòng điện, giúp tăng cường khả năng đưa ra xung điều khiển cho các động cơ bước
Bảng mạch điều khiển động cơ bước ULN200
Module này có các chân kết nối đơn giản và dễ sử dụng Thông thường, nó bao gồm hai dãy chân điều khiển IN1 đến IN4 và OUT1 đến OUT4 để kết nối với Arduino hoặc bất kỳ bo mạch điều khiển nào khác Module cũng cung cấp các chân nguồn cấp VCC và GND để cung cấp điện cho động cơ bước