Để g p phần tạo nền tảng ban đầu cho việc học tập, tìm hiểu công nghệ mới module arduino và cách điều khiển các thiết bị bằng arduino, đề tài “NGHIÊN CỨU, THIẾT KẾ BỘ ĐIỀU KHIỂN ĐỘNG CƠ
Trang 1TRƯỜNG ĐẠI HỌC VINH
KHOA ĐIỆN TỬ VIỄN THÔNG
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
ĐỀ TÀI:
NGHIÊN CỨU, THIẾT KẾ BỘ ĐIỀU KHIỂN
ĐỘNG CƠ BƯỚC SỬ DỤNG GIAO DIỆN
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC VINH
-
BẢN NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP Họ và tên sinh viên: Nguyễn Văn Thụ Mã số sinh viên: 1151083816 Ngành: Điện tử truyền thông Khoá: 52 Giảng viên hướng dẫn: ThS Hồ Sỹ Phương Cán bộ phản biện: 1 Nội dung thiết kế tốt nghiệp:
2 Nhận xét của cán bộ phản biện:
Ngày tháng năm
Cán bộ phản biện
(Ký, ghi rõ họ và tên)
Trang 3MỤC LỤC
LỜI CẢM ƠN 3
MỞ ĐẦU 4
TÓM TẮT ĐỒ ÁN 5
ABSTRACT 5
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ 6
DANH MỤC CÁC BẢNG BIỂU 8
CÁC THUẬT NGỮ VIẾT TẮT 8
CHƯƠNG 1 CƠ SỞ LÍ THUYẾT 9
1.1 Giới thiệu về đề tài 9
1.2 Tổng quan về Arduino 9
1.2.1 Arduino Due 10
1.2.2 Arduino Mega2560 12
1.2.3 Arduino Micro 13
1.2.4 Arduino Leonardo 14
1.2.5 Arduino Nano R3 15
1.2.6 Arduino Esplora 16
1.2.7 Arduino Uno R3 17
1.2.8 Giới thiệu một số Shield thông dụng cho Arduino 18
1.3 Động cơ bước 23
1.3.1 Giới thiệu chung 23
1.3.2 Nguyên lý làm việc chung của động cơ bước 25
1.3.3 Phân loại động cơ bước 28
1.3.4 Ưu nhược điểm của động cơ bước 32
1.3.5.Động cơ bước NEMA size 14-3518X-08 32
1.4 Phần mềm hỗ trợ lập trình 32
1.4.1 LABVIEW là gì? 33
1.4.2 Các khả năng chính của LABVIEW 33
1.4.3 Môi trường phát triển LABVIEW 33
1.4.4 Các tín hiệu đo được với LABVIEW 34
1.4.5 Phân tích 34
Trang 41.4.6 Hiển thị 34
1.4.7 Điều khiển 35
1.4.8 Giao tiếp với thiết bị ngoại vi 35
1.5 Tổng kết chương 1 35
CHƯƠNG 2 PHÂN TÍCH, THIẾT KẾ HỆ THỐNG 37
2.1 Bài toán điều khiển 37
2.1.1 Ba chế độ điều khiển động cơ bước 37
2.1.2 Các đặc trưng của tín hiệu điều khiển động cơ bước 39
2.1.3 Điều khiển tốc độ của động cơ bước 40
2.1.4 Điều khiển chiều quay của động cơ bước 41
2.2 Khối điều khiển trung tâm 43
2.3 Khối giao tiếp máy tính 45
2.3.1 Cổng USB 45
2.3.2 Cấu trúc của giao tiếp USB 48
2.3.3 Các kiểu truyền USB 50
2.3.4 Giao diện vật lý BUS USB 51
2.4 Mạch lực 55
2.5 Khối nguồn 56
2.6 Sơ đồ khối hệ thống điều khiển 57
2.7 Tổng kết chương 2 57
CHƯƠNG 3 MÔ PHỎNG VÀ THỰC THI HỆ THỐNG 58
3.1 Phần cứng 58
3.1.1 Sơ đồ khối hệ thống điều khiển động cơ bước 58
3.1.2 Kết nối điều khiển động cơ bước 58
3.2 Phần mềm điều khiển 62
3.2.1 Xây dựng giao diện trên máy tính 62
3.2.2 Xây dựng chương trình điều khiển 63
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 65
1 Kết luận 65
2 Hướng phát triển 65
TÀI LIỆU THAM KHẢO 66
Trang 5LỜI CẢM ƠN
Trong quá trình được học tập, tu dư ng và r n luyện tại Khoa Điện Tử - Viễn Thông, Trường Đại Học Vinh em đã được trang bị các kiến thức cơ bản, chuyên môn c ng như kinh nghiệm thực tế để c thể hoàn thành đồ án tốt nghiệp của mình Xuất phát t l ng kính trọng và biết ơn s u sắc, em xin ch n thành cảm ơn các thầy, cô giáo trong Khoa Điện Tử - Viễn Thông, Trường Đại Học Vinh đã quan
t m, hướng dẫn, truyền đạt lại kiến thức và kinh nghiệm cho em trong suốt thời gian học tập tại trường
Trong quá trình làm đồ án em đã cố gắng hoàn thành nhưng không tránh khỏi những sai sót, em rất mong nhận được sự đ ng g p ý kiến của quý thầy cô và các bạn để em có thêm kinh nghiệm trong thực tế
Đặc biệt em xin chân thành cảm ơn thầy giáo ThS Hồ Sỹ Phương, người đã
hết sức tận tình chỉ bảo, định hướng và bổ sung kiến thức cho em, đã tạo điều kiện thuận lợi cho em hoàn thành tốt đồ án
Em xin chân thành cảm ơn!
Nghệ An, tháng 05 năm 2016
Sinh viên thực hiện Nguyễn Văn Thụ
Trang 6MỞ ĐẦU
Kỹ thuật vi xử lý với tốc độ phát triển nhanh đã và đang mang đến những thay đổi to lớn trong khoa học và công nghệ c ng như trong đời sống hằng ngày Ngày nay các thiết bị máy m c càng trở nên thông minh hơn, các công việc được thực hiện với hiệu quả cao hơn, đ c ng là nhờ vi xử lý, vi điều khiển
Để g p phần tạo nền tảng ban đầu cho việc học tập, tìm hiểu công nghệ mới module arduino và cách điều khiển các thiết bị bằng arduino, đề tài “NGHIÊN CỨU,
THIẾT KẾ BỘ ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC SỬ DỤNG GIAO DIỆN KẾT NỐI MÁY TÍNH” của em được nghiên cứu và thực hiện hy vọng c thể triển khai
vào thực tiễn Nội dung đồ án được chia thành 3 chương:
Chương 1: Cơ sở lý thuyết
Chương 2: Phân tích, thiết kế hệ thống
Chương 3: Mô phỏng và thực thi hệ thống
Xin tr n trọng cảm ơn Th Hồ ỹ Phương đã giới thiệu, cung cấp tài liệu, tận
tình hướng dẫn về nội dung và phương pháp, giúp em hoàn thành đồ án này
Xin ch n trọng cảm ơn các thầy cô giáo trong khoa Điện tử Viễn thông - trường Đại học Vinh đã giúp đ em trong suốt thời gian học tập và hoàn thành chương trình đào tạo
Do kiến thức c n nhiều hạn chế, nên đồ án này không tránh khỏi những sai s t,
em rất mong nhận được sự đánh giá phê bình của các thầy cô
Nghệ An, tháng 05 năm 2016
Sinh viên thực hiện Nguyễn Văn Thụ
Trang 7TÓM TẮT ĐỒ ÁN
Đồ án này trình bày cách thức để x y dựng và thiết kế hệ thống điều khiển động
cơ bước qua giao tiếp với máy tính qua cổng USB Giao diện điều khiển và giám sát được thiết kế trên máy tính nhờ phần mềm Labview, c chức năng gửi các tín hiệu điều khiển qua cổng USB của máy tính đến mạch điều khiển, đồng thời nhận các tín hiệu về trạng thái hoạt động của các thiết bị và hiển thị trên giao diện của phần mềm Mô hình điều khiển được x y dựng với khối xử lý trung t m sử dụng Arduino Uno R3 và mạch điều khiển động cơ A3967
Đề tài tập trung chủ yếu vào ph n tích và x y dựng chương trình điều khiển động cơ bước trên phần mềm Labview kết hợp với bộ điều khiển Arduino
Ph n tích ưu, nhược điểm của động cơ bước và cách điều khiển động cơ này tối ưu h a để ứng dụng vào thực tiễn trong hệ thống máy CNC
ABSTRACT
This thesis presents the method to build and design Stepper Motor cotrol system
by communicating through USB computer gate Control background and supervising was designed on computer through Labview Software, their function are send control data through USB computer gate to Control Circuit and receive operating status datas of equipments, display on software screen Controlling model was built with a center analysis block using Arduino Uno R3 and A3967 motor driver circuit
The project mostly focuses on analysis and to build up the Stepper Motor Control Programing based on Labview Software combines with Arduino Controller
Analyzing the advantages and disadvantages of Stepper Motor and optimal control to apply to CNC system
Trang 8DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1 Những thành viên khởi xướng Arduino 10
Hình 1.2 Board Arduino Due 12
Hình 1.3 Board Arduino Mega2560 13
Hình 1.4 Board Arduino Micro 13
Hình 1.5 Board Arduino Leonardo 14
Hình 1.6 Board Arduino Nano R3 15
Hình 1.7 Board Arduino Esplora 16
Hình 1.8 Module Arduino Uno R3 17
Hình 1.9 Board Arduino ProtoShied 18
Hình 1.10 Board Arduino Joystic Shield 19
Hình 1.11 Nokia N5110 LCD module 20 Hình 1.12 Board Arduino Motor Shield 20 Hình 1.13 Board Arduino Ethernet Shield 22 Hình 1.14 Một số loại động cơ bước 23 Hình 1.15 Bên trong động cơ bước 23 Hình 1.16 Cấu tạo của động cơ bước 24 Hình 1.17 Một xung tương ứng với một bước của Roto ( 1 xung – 1 bước ) 24 Hình 1.18 Mô tả tương quan giữa quá trình điện và quá trình cơ của động
cơ bước
25 Hình 1.19 Sơ đồ nguyên lý động cơ bước m pha với Roto 2 cực và các lực
điện t khi điều khiển bằng xung 1 cực
26
Hình 1.20 Đông cơ bước nam ch m vĩnh cửu 27 Hình 1.21 Động cơ bước t trở biến thiên 28 Hình 1.22 Động cơ bước ba pha có t trở biến thiên 28 Hình 1.23 Cấu trúc động cơ bước t trở biến thiên 29 Hình 1.24 Động cơ bước kiểu hỗn hợp với m = 2, 2p = 6 30 Hình 1.25 Cấu tạo động cơ bước hỗn hợp 30 Hình 1.26 Động cơ NEMA size 14-3518X-08 31
Trang 9Hình 1.27 Khả năng hiển thị của phầm mềm labview 34 Hình 1.28 Khả năng giao tiếp của phần mềm 34 Hình 2.1 Giãn đồ nguyên lý các lực điện khi điều khiển ở chế độ vi bước 36 Hình 2.2 Sơ đồ nguyên lý của ARDUINO UNO 42 Hình 2.3 Biểu tượng của bus usb (a), cáp và cổng kết nối (b) 45 Hình 2.4 Mô hình kết nối Bus của USB 46 Hình 2.5 Sơ đồ kết nối sao một bus USB 46 Hình 2.6 Kết nối USB theo hình sao qua các Hub 51 Hình 2.7 Cable USB 49 Hình 2.8 Đầu cắm USB kiểu A trên máy tính và đầu cắm kiểu B trên
thiết bị
49 Hình 2.9 Đánh số các ch n nối ổ cắm USB và cab nối kiểu A và B 49 Hình 2.10 Kết nối USB và Cable 50 Hình 2.11 Kết nối với thiết bị USB Full – Speed 51 Hình 2.12 Kết nối với các thiết bị USB Low – Speed 52 Hình 2.13 Các ch n chức năng của A3967 55 Hình 2.14 Sơ đồ nguyên lý khối nguồn 56 Hình 2.15 IC ổn áp LM7805 56 Hình 2.16 Sơ đồ hệ thống điều khiển động cơ 58 Hình 3.1 Sơ đồ khối hệ thống điều khiển động cơ bước NEMA 58 Hình 3.2 Sơ đồ đấu nối hệ thống điều khiển động cơ bước NEMA 58 Hình 3.3 Sơ đồ nguyên lý của ARDUINO UNO 59 Hình 3.4 Các khối cơ bản của Arduino 59 Hình 3.5 Khối init 60 Hình 3.6 Khối close 61 Hình 3.7 Các khối cơ bản của khối low level 61 Hình 3.8 Các khối cơ bản của khối sensor 62 Hình 3.9 Sơ nguyên lý mạch A3967 63 Hình 3.10 Giao diện điều khiển trên máy tính 64 Hình 3.11 Chương trình điều khiển 65
Trang 10DANH MỤC CÁC BẢNG BIỂU
Bảng 2.1 Trạng thái cấp điện của động cơ 4 pha
Bảng 2.2 ARDUINO UNO sử dụng chip ATMEGA328
Bảng 2.3 So sánh giao diện USB với các giao diện thông dụng trên máy tính
Bảng 2.4 Các lớp thiết bị hỗ trợ theo hệ điều hành
Bảng 2.5 Các dây dẫn trong USB
CÁC THUẬT NGỮ VIẾT TẮT
HLVDC High/Low Voltage Detect Control Điều khiển phát hiện điện áp
cao/thấp I2C Inter-Intergrated Circuit Mạch tích hợp
LCD Liquid Crystal Display Màn hình tinh thể lỏng
MSSP Master Synchronous Serial Port Cổng nối tiếp đồng bộ chủ
MSSP Master Synchronous Serial Port Cổng giao tiếp đồng bộ chủ
PWM Pulse Width Modulation Điều chế độ rộng xung
RAM Random Access Memory Bộ nhớ truy cập ngẫu nhiên
SPI Serial Peripheral Interface Giao diện ngoại vi nối tiếp
SPP Streaming Parallel Port Luồng cổng song song
SPPCFG Streaming Parallel Port Configure Cấu hình cổng song song
SPPCON Streaming Parallel Port Control Điều khiển cổng song song
SRAM Static random-access memory Bộ nhớ truy cập ngẫu nhiên tĩnh
UADDR USB Address registers Thanh ghi địa chỉ USB
UEIE USB Error Interrupt Enable Register Thanh ghi cho phép ngắt lỗi
UEIR USB Error Interrupt Status Register Thanh ghi trạng thái ngắt lỗi
USB UIE USB Interrupt Enable Cho phép ngắt USB
UIR USB Interrupt Status Register Thanh ghi trạng thái ngắt USB USART Universal Synchronous &
Asynchronous Receiver/Transmitter
Bộ truyền/ nhận dữ liệu đồng bộ
và không đồng bộ USB Universal Serial Bus Bộ Bus nối tiếp
USTAT USB Status Transmission Trạng thái truyền USB
HID Human Interface Device Thiết bị giao diện người dùng
Trang 11CHƯƠNG 1 CƠ SỞ LÍ THUYẾT 1.1 Giới thiệu về đề tài
Cùng với xu hướng phát triển công nghệ trong thời kì công nghiệp hóa hiện đại
h a đất nước thì vai trò của lĩnh vực điều khiển tự động là rất quan trọng trong xu thế phát triển của nền công nghiệp nước ta hiện nay Có thể n i điều khiển tự động
là lĩnh vực khoa học đ ng vai tr quan trọng quyết định đến sự phát triển về công nghiệp c ng như về cuộc sống của một quốc gia Và vì những lí do trên em đã lựa
chọn cho mình một đề tài để nghiên cứu và phát triển đ là “NGHIÊN CỨU,
THIẾT KẾ BỘ ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC QUA GIAO DIỆN MÁY TÍNH” Với đề tài này của em được nghiên cứu và thực hiện với hy vọng c thể triển khai
vào thực tiễn
1.2 Tổng quan về Arduino
Arduino thực sự đã g y s ng gi trên thị trường người dùng DIY (là những người
tự chế ra sản phẩm của mình) trên toàn thế giới trong vài năm gần đ y, gần giống với những gì Apple đã làm được trên thị trường thiết bị di động, số lượng người dùng cực lớn và đa dạng với trình độ trải rộng t bậc phổ thông lên đến đại học đã làm cho ngay cả những người tạo ra chúng phải ngạc nhiên về mức độ phổ biến
Hình 1.1 Những thành viên khởi xướng Arduino
Arduino là gì mà c thể khiến ngay cả những sinh viên và nhà nghiên cứu tại các trường đại học danh tiếng như MIT, Stanford, Camegie Mellon phải sử dụng; hoặc
Trang 12ngay cả Google c ng muốn hỗ trợ khi cho ra đời bộ kit Arduino Mega ADK dùng
để phát triển các ứng dụng Android tương tác với cảm biến và các thiết bị khác? Arduino thật ra là một bo mạch vi xử lý được dùng để lập trình tương tác với các thiết bị phần cứng như cảm biến, động cơ, đ n hoặc các thiết bị khác Đặc điểm nổi bật của Arduino là môi trường phát triển ứng dụng cực kỳ dễ sử dụng, với một ngôn ngữ lập trình c thể học một cách nhanh ch ng ngay cả với người ít am hiểu về điện
tử và lập trình Và điều làm nên hiện tượng Arduino chính là mức giá rất thấp và tính chất nguồn mở t phần cứng tới phần mềm Chỉ với khoảng $30, người dùng đã
c thể sở hữu một board Arduino c 20 ngõ I/O c thể tương tác và điều khiển
ch ng ấy thiết bị
Arduino ra đời tại thị trấn Ivrea thuộc nước Ý và được đặt theo tên một vị vua vào thế kỷ thứ 9 là King Arduin Arduino chính thức được đưa ra giới thiệu vào năm 2005 như là một công cụ khiêm tốn dành cho các sinh viên của giáo sư Massimo Banzi, là một trong những người phát triển Arduino, tại trường Interaction Design Instistute Ivrea (IDII) Mặc dù hầu như không được tiếp thị gì cả, tin tức về Arduino vẫn lan truyền với tốc độ ch ng mặt nhờ những lời truyền miệng tốt đẹp của những người dùng đầu tiên Hiện nay Arduino nổi tiếng tới nỗi c người tìm đến thị trấn Ivrea chỉ để tham quan nơi đã sản sinh ra Arduino
Arduino Due là board phát triển sử dụng nh n ARM đầu tiên của series board arduino Arduino Due là board sử dụng nh n ARM 32bit cortexM3 và được nạp bootloader tương thích code như các board arduino khác
Arduino Due c 54 ch n Digital I/O ( với 12 ch n c thể sử dụng chức năng PWM), 12 ngõ vào tín hiệu Analog, 4 UARTs ( cổng truyền nối tiếp), xung clock sử dụng lên đến 84MHZ, baord tích hợp 1 cổng USB OTG, 2 bộ chuyển đổi DAC (digital to Analog), 2 TWI, một jack cấp nguồn, 1 jack SPI, một jack chuẫn Jtag, một nút reset, và một nút x a chương trình Arduino Due c n c những tính năng đặt biệt khác đang chờ khám phá
Trang 13Hình 1.2: Board Arduino Due
Để sử dụng trình biên dịch c thể nạp chương trình được cho board Arduino Due chúng ta cần sử dụng trình biên dịch Arduino IDE 1.5 trở lên hoặc bản 1.0.1 trở lên
Vì board Arduino Due chạy nh n ARM Atmel SA3MX8E, nên bị hạn chế điện
áp vào của các ch n I/O là 3.3V Nhưng các Shield Arduino đa phần là sử dụng I/O
là 5V nên việc kết nối với Arduino Due phức tạp hơn một chút Đa số các Shield thiết kế chuẩn theo arduino Uno nên chúng ta phải cẩn thận khi sử dụng shield với Arduino Due
Arduino Due không giống như các board khác, Arduino Due chỉ hoạt động ở điện áp 3.3V nên khi cắm 5V vào các ch n I/O c thể g y hỏng baord Arduino Due Tính năng của board:
Microcontroller: AT91SAM3X8E
Operating Voltage: 3.3V
Recommended Input Voltage: 7-12V
Min-Max Input Voltage: 6-20V
Digital I/O Pins: 54 (of which 12 provide PWM output)
Analog Input Pins: 12
Analog Outputs Pins: 2
Total DC Output Current on all I/O lines: 130 mA
DC Current for 3.3V Pin: 800 mA
DC Current for 5V Pin: 800 mA
Flash Memory: 512 KB all available for the user applications SRAM: 96 KB (two banks: 64KB and 32KB)
Clock Speed: 84 MHz
Trang 141.2.2 Arduino Mega2560
Hình 1.3 Board Arduino Mega2560
Arduino là một mã nguồn mở các nền tảng máy tính vật lý dựa trên một bảng i/o đơn giản và một môi trường phát triển thực hiện ngôn ngữ xử lý/d y Arduino c thể được sử dụng để phát triển các đối tượng tương tác độc lập hoặc c thể được kết nối với phần mềm trên máy tính của bạn (ví dụ như Flash, chế biến, MaxMSP) IDE
mã nguồn mở c thể được tải về miễn phí (hiện nay cho hệ điều hành Mac OS X, Windows và Linux)
Arduino Mega2560 là một board vi điều khiển dựa trên ATmega2560 Board này có 54 chân I/O (14 ch n PWM ), 16 analog đầu hàng vào, 4 UARTs (phần cứng cổng tuần tự), sử dụng thạch anh 16 MHz, kết nối cổng USB, một Jack cắm điện, ch n ICSP, và một nút reset Board c tất cả mọi thứ cần thiết để hỗ trợ vi điều khiển
Chỉ cần kết nối Arduino Mega2560 với một máy tính bằng cáp USB hoặc cấp nguồn với một adapter AC sang DC hoặc pin để bắt đầu Arduino Mega2560 tương thích với hầu hết các shield mở rộng được thiết kế cho Arduino Duemilanove hoặc Diecimila hay Arduino Uno R3
Thông số Arduino Mega2560:
Microcontroller: ATmega2560
Operating voltage: 5 V
Input voltage (recommended): 7-12 V
Trang 15Digital I/O pins: 70 (of which 15 provide PWM output)
Analog input pins: 16
DC current per I/O pin: 40 mA
DC current for 3.3V pin: 50 mA
Flash memory: 256 KB of which 8 KB used by bootloader
SRAM: 8 KB
EEPROM: 4 KB
Clock speed: 16 MHZ
Hình 1.4 Board Arduino Micro
Arduino Micro dùng vi xử lý ATmega32u4, phiên bản Arduino micro đƣợc sản xuất với sự hợp tác giữa Arduino và Adafruit
Board gồm c 20 ch n Input / Output (7 ch n PWM, 12 ch n Analog), sử dụng thạch anh 16MHZ, Micro USB, Ch n ICSP, và nút reset Board c tất cả các chức năng của vi xử lý
Arduino Micro gần giống nhƣ board Aruino Leonardo cùng sử dụng chip vi xử lý ATmega32u4 tích hợp chuẩn kết nối USB, không cần sử dụng đến chip USB khác Board c thể sử dụng các chức năng đặc biệt nhƣ giả lập bàn phím, chuột vitual Serial/ COM port mà các board thông dụng nhƣ Uno hay Mega không c
Thông số cơ bản:
Microcontroller: ATmega32u4
Operating Voltage: 5V
Trang 16Input Voltage (recommended): 7-12V
Input Voltage (limits): 6-20V
Digital I/O Pins: 20
PWM Channels: 7
Analog Input Channels: 12
DC Current per I/O Pin: 40 mA
DC Current for 3.3V Pin: 50 mA
Flash Memory: 32 KB (ATmega32u4) of which 4 KB used by bootloader SRAM: 2.5 KB (ATmega32u4)
Hình 1.5 Board Arduino Leonardo
Board Arduino Leonardo là board nhúng đầu tiên tích hợp chức năng chuyển USB Arduino Leonardo sử dụng chip Atmega32u4 làm chip vi xử chính nên c giá thành rẻ hơn các board khác, vì chip 32U4 tích hợp sẵn USB convert, nên Arduino Leonardo c thể dễ dàng mô phỏng thành bàn phím, chuột, và rất nhiều
Trang 17các loại thiết bị khác c chuẩn USB-HID với thư viện c sẵn do đội ng Arduino phát triển
Arduino Leonardo c 20 ch n digital Input/Output với 7 ch n c chắc năng sử dụng PWM và 12 ch n c chức năng Analog inputs Arduino Leonardo sử dụng thạch anh 16MHZ, kết nối bẳng cổng Micro USB, nguồn jack 3.5mm, ch n ICSP,
và nút reset Board c đầy đủ chức năng của 1 board vi điều khiển
Tính Năng Của Board:
Hình 1.6 Board Arduino Nano R3
Arduino Nano là bản thu nhỏ của các bản arduino khác, Arduino Nano được thiết kế để sử dụng với breadboard nhưng vẫn đầy đủ chức năng như 1 board arduino bình thường khác
Trang 18Arduino Nano nhỏ gọn, đầy đủ, và tiện dụng khi sử dụng với breadboard Arduino Nano sử dụng chip Atmega328-AU nên còn có thêm 2 chân Analog A6 và A7 mà các board sử dụng chip Cắm không hề c .Trên board tích hợp opamp tự động chuyển nguồn khi c điện áp cao hơn vào board nên board không cần sử dụng công tắc chọn nguồn
Trên board Arduino Nano sử dụng chíp chuyển COM To UART là chip FTDI FT232RL chứ không dùng chip giả lập COM nhƣ các board arduino khác, vì vậy việc truyền UART sẽ đơn giản hơn so với các board dùng chip giả lập COM
Thông số kỹ thuật :
Microcontroller Atmel ATmega328
Operating Voltage (logic level) 5 V
Input Voltage (recommended) 7-12 V
Input Voltage (limits) 6-20 V
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 8
DC Current per I/O Pin 40 mA
Flash Memory 32 KB (of which 2KB used by bootloader)
Trang 19Arduino Esplora là board đƣợc thiết kế nhằm chuyên dụng cho việc điều khiển robot đƣợc thiết kế dƣa trên board arduino Leonardo Những ƣu điểm của board Arduino Esplora c đ là cảm biến gia tốc tích hợp, các cảm biến hỗ trợ điều khiển
và rf giúp kết nối không d y với các board Arduino khác, board phù hợp cho các bạn mới học làm robot mà không biết cách nối d y quá nhiều khiến việc làm baord điều khiển trở nên quá rắc rối
Arduino Esplora tích hợp sẵn loa và led, một số cảm biến, kết hợp joystic, một biến trở gạt, càm biến nhiệt độ, cảm biến gia tốc, micro phone, và cảm biến ánh sáng C n c cả socket cho màn hình LCD TFT touch quá đỉnh cho 1 tay cầm điều khiển thực thụ
Arduino Esplora giống nhƣ board Arduino Leonardo c ng dùng chip vi xử lý là Atmega32U4 với tần số xung là 16MHZ, với ngõ USB là Micro USB Ƣu điểm của board Arduino Esplora là c thể kết nối với máy tính nhƣ thiết bị chuột bàn phím, nên c thể chơi game nhƣ Joystic Shield trên máy tính nhƣ đang chơi gamepad thực thụ
Mô tả thông tin board:
Trang 20Bo mạch Arduino sử dụng d ng vi xử lý 8-bit mega AVR của Atmel với hai chip phổ biến nhất là ATmega328 và ATmega2560 Các d ng vi xử lý này cho phép lập trình các ứng dụng điều khiển phức tạp do đƣợc trang bị cấu hình mạnh với các loại
bộ nhớ ROM, RAM và Flash, các ngõ vào ra digital I/O trong đ c nhiều ngõ c khả năng xuất tín hiệu PWM, các ngõ đọc tín hiệu analog và các chuẩn giao tiếp đa dạng nhƣ UART, SPI, TWI (I2C)
Các thông số chi tiết của Arduino Uno:
Vi điều khiển: ATmega328 (họ 8bit)
Điện áp hoạt động: 5V – DC (chỉ đƣợc cấp qua cổng USB)
Tần số hoạt động: 16 MHz
D ng tiêu thụ: 30mA
Điện áp vào khuyên dùng: 7-12V – DC
Điện áp vào giới hạn: 6-20V – DC
Số ch n Digital I/O: 14 (6 ch n PWM)
Số ch n Analog: 6 (độ ph n giải 10bit)
D ng tối đa trên mỗi ch n I/O: 30 mA
Trang 21Hình 1.9 Board Arduino ProtoShied
Proto Shield (hay Breadboards Shield) là mạch khá tiện lợi cho việc thực hiện nhanh một dự án mà không cần phải mất công làm mạch in, giải pháp để làm mạch chức năng nhanh ch ng thì Proto Shield cho một cách nhanh ch ng nhất
ProtoShields tương thích hầu như các board Arduino, bạn c thể hàn các ic hay các linh kiện chức năng phù hợp, ngoài ra trên board c n tích hợp các linh kiện:
- Nút reset tích hợp trên shield
- Chân ICSP (SPI)
- Rất nhiều chân GND và +5V tiện lợi cho việc lấy nguồn nuôi
- Tích hợp sẵn chân cắm IC tiện cho việc
- Tích hợp sẵn 2 led với điện trở hạn dòng
và thêm 2 nút nhấn tiện lợi
Hình 1.10: Board Arduino Joystic Shield
Trang 22Joystic Shield arduino là module rất thích hợp cho những ứng dụng điều khiển chiếc robot của bạn thông qua điều khiển RF NRF24L01 và c thể cùng hiển thị dữ liệu qua màn hình graphic Nokia 5110
Hình 1.11 Nokia N5110 LCD module
Với Joystic Shield Arduino bạn c thể thỏa thích sáng tạo game như game Mario huyền thoại, hoặc c thể kết nối qua RF NRF24L01 để làm hàng ngàn ứng dụng khác
Trên Joystic Shield arduino gồm c 7 nút nhấn:
- 4 nút điều khiển lớn
- 2 nút điều khiển nhỏ
- Và 1 cần điêu khiển joystic 2 trục
Lưu ý: nếu khi sử dụng Joystic Shield arduino với màn hình LCD graphic N5110 phái chuyển sang sử dụng nguồn cấp là 3.3V vì màn hình chỉ hoạt động ở mức điện
áp 3.3V, nếu chúng ta sử dụng điện áp arduino mặc định là 5V thì c thể sẽ làm hỏng module LCD graphic N5110
Trang 23Hình 1.12 Board Arduino Motor Shield
Arduino Motor Shield là một phần board mở rộng cho các board arduino, dùng
để điều khiển các loại động cơ DC, Stepper Motor Arduino Motor Shield được thiết kế gọn gàng, đẹp mắt và tương thích hoàn toàn với các board Arduino: arduino uno r3, arduino leonardo, arduino mega2560, giúp bạn c thể sử dụng và điều khiển một cách dễ dàng và nhanh ch ng
Arduino Motor Shield sử dụng 2 IC cầu H L293D hoàn chỉnh với các chế độ bảo
vệ và 1 IC logic 74HC595 để điều khiển các động cơ
Arduino Motor Shield c thể điều khiển nhiều loại motor khác nhau như step motor, servo motor, motor DC, với mức áp lên đến 36V, d ng tối đa 600mA cho mỗi kênh điều khiển
Cụ thể là điều khiển được số lượng motor như sau:
- 2 jack cắm điều khiển 2 động cơ RC servo
- 4 ngõ ra điều khiển đến 4 động cơ DC độc lập
- 2 động cơ step motor loại đơn cực (unipolar) hoặc lư ng cực (bipolar)
Mạch tích hợp điện trở nối GND giúp cho không tự chạy khi khởi động board Các chân mà Arduino Motor Shield sử dụng là:
- Ch n điều khiển 2 RC servo được kết nối với chân số 9 và 10 Nguồn cung cấp được lấy trực tiếp t board Arduino
Trang 24- Motor 1 nối với chân 11
- Motor 2 nối với chân 3
- Motor 3 nối với chân 5
- Motor 4 nối với chân 6
- Ch n 4, 7, 8, 12 dùng điều khiển motor thông qua IC 74HC595
Ngoài ra để tiện cho việc sử dụng nguồn cắm ngoài, trên Arduino Motor Shield
sử dụng 1 jumper PWR mục đích để lấy nguồn ngoài thông qua jack DC của board arduino để cung cấp nguồn cho motor hoạt động Nếu trong trường hợp chúng ta không sử dụng jumper này thỉ phải cấp 1 nguồn riêng vào ch n EXT_PWR để cấp nguồn cho motor hoạt động
Hình 1.13 Board Arduino Ethernet Shield
Arduino Ethernet Shield sử dụng nhằm giúp arduino c thể kết nối với internet
N được dựa trên chip Wiznet W5100, ethernet phát triển cả 2 chuẩn giao tiếp c khả năng cả 2 chuẩn TCP và UDP Arduino Ethernet Shield hỗ trợ tối đa bốn thiết
bị đồng thời kết nối Sử dụng thư viện Ethernet c sẵn để kết nốivới internet thông qua một jack RJ45
Phiên bản shield này c tích hợp khe cắm thẻ micro SD, c thể được sử dụng để lưu trữ các tập tin phục vụ qua mạng Arduino Ethernet Shield tương thích với Arduino Uno và Mega (sử dụng Ethernet Thư viện) Bạn c thể truy cập vào khe
Trang 25cắm thẻ trên board và sử dụng thư viện SD được bao gồm tích hợp trong bộ thư viện c sẵn trong trình biên dịch arduino
Arduino giao tiếp với cả hai module W5100 và thẻ SD bằng cách sử dụng chuẩn SPI (thông qua cổng ICSP), trên các ch n 11, 12, và 13 của board arduino Uno R3
và ch n 50, 51 và 52 của board arduino mega 2560, ch n số 10 được sử dụng để chọn W5100 và ch n số 4 cho SD card Các ch n không thể được sử dụng cho chức năng i/o nếu sử dụng cả 2 module cùng lúc thì ch n số 10 trên board arduino Uno R3 phải được để trống, và ch n số 53 trên board arduino mega2560 nếu không thì board sẽ không thể hoạt động được
Lưu ý rằng bởi vì W5100 và SD card sử dụng chung chuẩn truyền SPI, vì vậy một thiết bị duy nhất c thể được hoạt động tại một thời điểm Nếu bạn đang sử dụng cả hai thiết bị ngoại vi trong chương trình của bạn, điều này cần được xử lý bởi các thư viện tương ứng
1.3 Động cơ bước
1.3.1 Giới thiệu chung
Hình 1.14 Một số loại động cơ bước
Các hệ truyền động rời rạc thường được thực hiện nhờ động cơ chấp hành đặc biệt gọi là độ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 loại động cơ điện thông thường.Chúng thực chất là một độ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 các chuyển động của Rotor và có khả năng cố định Rotor vào những vị trí cần thiết
Trang 26Như hình 1 minh họa: bên trong động cơ bước có 4 cuộn d y Stator được sắp xếp theo cặp đối xứng qua t m Rotor là nam ch m vĩnh cửu có nhiều răng Động cơ bước hoạt động trên cơ sở lý thuyết điện - t trường : các cực cùng dấu đẩy nhau và các cực khác dấu hút nhau Chiều quay được xác định bởi t trường của Stator, mà
t trường này là do d ng điện chạy qua lõi cuộn d y g y nên Khi hướng của dòng thay đổi thì cực t trường c ng thay đổi theo, gây nên chuyển động ngược lại của động cơ (đảo chiều)
Hình 1.15 Bên trong động cơ bước
Động cơ bước làm việc được là nhờ các bộ chuyển mạch điện tử đưa các tín hiệu điều khiển vào Stator theo một thứ tự nhất định và một tần số nhất định Tổng số góc quay của Rotor tương ứng với số lần chuyển mạch, c ng như chiều quay và tốc
độ quay của Rotor phụ thuộc vào thứ tự chuyển đổi và tần số chuyển đổi Nếu xét trên phương diện d ng điện, khi một xung điện áp đặt vào cuộn dây Stator (phần ứng) của động cơ bước, thì Rotor (phần cảm) của động cơ sẽ quay đi một góc nhất định, góc ấy là một bước quay của động cơ Ở đ y ta c thể định nghĩa về g c bước (Step Angle) là độ quay nhỏ nhất của một bước do nhà sản xuất quy định Khi các xung điện áp đặt vào các cuộn dây phần ứng thay đổi liên tục thì Rotor sẽ quay liên tục (thực chất chuyển động đ vẫn theo các bước rời rạc)
Trang 27Hình 1.16 Cấu tạo của động cơ bước
Theo một phương diện khác, c thể coi động cơ bước là linh kiện (hay thiết bị)
số (Digital Device) mà ở đ các thông tin được số hoá đã thiết lập sẽ được chuyển thành chuyển động quay theo t ng bước Động cơ bước sẽ thực hiện trung thành các lệnh đã số hoá mà máy tính yêu cầu
Hình 1.17 Một xung tương ứng với một bước của Roto ( 1 xung – 1 bước )
Hình 1.18 Mô tả tương quan giữa quá trình điện và quá trình cơ của động cơ bước
1.3.2 Nguyên lý làm việc chung của động cơ bước
Trang 28Khác với động cơ đồng bộ thông thường, Rotor của động cơ bước không c cuộn
d y khởi động mà n được khởi động bằng phương pháp tần số, Rotor của động cơ bước c thể được kích thích (Rotor tích cực) hoặc không được kích thích (Rotor thụ động)
Xung điện áp cấp cho cuộn d y Stator c thể là xung 1 cực hoặc 2 cực:
Chuyển mạch điện tử c thể cung cấp điện áp điều khiển cho các cuộn d y Stator theo t ng cuộn riêng lẻ, hoặc theo t ng nh m các cuộn d y Trị số c ng như chiều của lực điện t tổng F phụ thuộc vào vị trí của các lực điện t thành phần Do đ vị trí Rotor của động cơ bước trong không gian, hoàn toàn phụ thuộc vào phương pháp cung cấp điện cho các cuộn d y:
Trang 29Hình 1.19 Sơ đồ nguyên lý động cơ bước m pha với Roto 2 cực và các lực điện từ
khi điều khiển bằng xung 1 cực
Hình 1.19 vẽ sơ đồ nguyên lý động cơ bước m pha với Rotor có 2 cực (2p=2) và không được kích thích Nếu các cuộn dây của động cơ bước được cấp điện cho t ng cuộn dây riêng lẻ theo thứ tự 1, 2, 3, … m, bởi xung 1 cực, thì Rotor của động cơ bước có m vị trí ổn định trùng với trục của các cuộn dây (hình 1.17a)
Để tăng cường lực điện t tổng của Stator do đ tăng t thông và moment đồng bộ,
ta cấp điện đồng thời cho hai, ba hoặc nhiều cuộn d y Lúc đ Rotor của động cơ bước sẽ có vị trí cân bằng (ổn định) trùng với vector lực điện t tổng F Đồng thời lực điện t tổng F c ng c giá trị lớn hơn lực điện t thành phần của các cuộn dây Stator ( Hình 1.19b, 1.19c )
Hình b vẽ lực điện t tổng F khi cung cấp điện đồng thời cho một số chẵn cuộn dây (2 cuộn dây) Lực điện t tổng F có trị số lớn hơn và nằm ở vị trí chính giữa hai trục của hai cuộn dây
Hình 1.19c vẽ lực điện t tổng F khi cung cấp điện đồng thời cho một số lẻ cuộn dây (3 cuộn dây) Lực điện t tổng F nằm trùng với trục của một cuộn d y và c ng
có trị số lớn hơn
Tóm lại, trong cả hai trường hợp cấp điện cho một số chẵn cuộn dây và cấp điện cho một số lẻ cuộn dây, Rotor của động cơ bước sẽ có m vị trí cân bằng Góc xê dịch giữa hai vị trí liên tiếp của Rotor bằng 2π/m
Nếu cấp điện theo thứ tự một số chẵn cuộn dây, rồi một số lẻ cuộn dây (ví dụ, kết hợp giữa hình 1.19b và 1.19c), hay nghĩa là số lượng cuộn d y được điều khiển luôn
Trang 30luôn thay đổi t chẵn sang lẻ và ngược lại, thì số vị trí cân bằng của Rotor sẽ tăng lên gấp đôi là 2m, độ lớn của một bước sẽ giảm đi một nửa bằng 2π/m Trường hợp này được gọi là điều khiển không đối xứng, hay điều khiển nửa bước (half step) Nếu số lượng cuộn d y được điều khiển luôn luôn không đổi (một số chẵn cuộn dây hoặc một số lẻ cuộn dây, ví dụ hình 1.19b hoặc hình 1.19c) thì Rotor có m vị trí cân bằng và được gọi là điều khiển đối xứng, hay điều khiển cả bước (full step)
1.3.3 Phân loại động cơ bước
1.3.3.1 Động cơ bước nam châm vĩnh cửu
Thường được cấu tạo với stato c dạng hình m ng được t h a với cực N và S xen kẽ nhau; roto thường không c răng, được t h a vĩnh cửu vuông g c với trục (ngang trục) Loại động cơ này c g c bước trong khoảng 60
– 450, tốc độ chậm nhưng c momen khá lớn Hình 1.20 là sơ đồ cấu tạo của động cơ bước nam ch m vĩnh cửu với m = 4 và 2p = 2;
Hình 1.20 Đông cơ bước nam châm vĩnh cửu
1.3.3.2 Động cơ bước từ trở biến thiên
Cấu tạo:
Hình 1.21 Động cơ bước từ trở biến thiên
Trang 31Động cơ bước t trở có hai phần cấu tạo chính là Stator (phần tĩnh) và Rotor (phần quay):
- Stator: gồm có hai phần chính là lõi thép và dây quấn Stator
+ Lõi thép : Được ghép bằng các lá thép kỹ thuật điện lại với nhau tạo thành một khối hình trụ, ở giữa được đục lỗ và phay các rãnh cực t , trên mặt cực t c răng
Bề dày của mỗi lá thép vào khoảng 0,35 mm đến 0,5 mm, ở hai mặt của mỗi lá thép được sơn cách điện
+ Dây quấn Stator: là d y điện t có thể là dây nhôm hoặc đồng được cách điện bằng lớp Emay hoặc Cotton, tiết diện dây quấn có dạng hình tròn Mỗi pha trên Stator được quấn thành hai cuộn dây nối tiếp nhau ở vị trí xuyên t m đối, thậm chí thành 4 cuộn đôi một trực giao, mỗi cuộn dây cuốn có W số vòng dây
- Rotor: C ng giống như Stator, Rotor c ng c răng Rotor được làm bằng vật liệu dẫn t (sắt non) có t trở thay đổi theo góc quay Mỗi răng của Rotor là một cực (hình 1.22)
Hình 1.22 Động cơ bước ba pha có từ trở biến thiên
- Nguyên lý làm việc:
+ Nguyên lý làm việc của động cơ bước có t trở biến thiên dựa trên cơ sở hiện tượng t trở cực tiểu Trong động cơ bước loại này Stator và Rotor đều được làm cùng một vật liệu t và Rotor luôn quay về trạng thái sao cho t trở là nhỏ nhất Nghĩa là hệ thống mạch luôn c xu hướng giảm thiểu t trở Dựa trên sự tác động giữa một trường điện t và một Rotor có t trở biến thiên theo góc quay
- Cấu trúc tiêu biểu cho động cơ bước có t trở thay đổi như hình vẽ
Trang 32Hình 1.23 Cấu trúc động cơ bước từ trở biến thiên
- Rotor được chế tạo bằng vật liệu dẫn t , trên bề mặt Rotor thường có nhiều răng Mỗi răng của Rotor hoặc Stator gọi là một cực Trên hai cực đối diện nhau mắc nối tiếp hai cuộn dây tạo thành một phần của động cơ Động cơ như hình vẽ 11
có 3 pha (các pha 1, 2, 3) t trở thay đổi theo góc quay của răng Khi các răng của Rotor đứng thẳng hàng với các cực của Stator, t trở ở đ sẽ nhỏ nhất
- Khi cuộn 1 được kích điện, răng X của Rotor bị hút vào cực 1 Nếu dòng qua cuộn 1 bị ngắt và cấp dòng qua cuộn 2, Rotor sẽ quay 300 theo chiều kim đồng hồ
và răng Y sẽ hút vào cực 2
Như vậy: hướng quay của Rotor không phụ thuộc vào chiều d ng điện mà phụ thuộc vào thứ tự cấp điện cho cuộn dây Nhiệm vụ này do các mạch logic trong bộ chuyển phát thực hiện Với cách thay đổi cách kích thích các cuộn d y, ta c ng làm thay đổi các vị trí góc quay
Động cơ bước t trở thay đổi chuyển động êm, số bước lớn, nhưng moment đồng
bộ nhỏ G c bước giới hạn trong khoảng 1,80 đến 300 trong chế độ điều khiển bước
đủ, moment hãm t 1 đến 50 Ncm, tần số khởi động lớn nhất 1 Khz, tần số làm việc lớn nhất trong điều kiện không tải là 20 Khz
1.3.3.3 Động cơ bước hỗn hợp
Loại động cơ này c những ưu điểm sau:
- Về cấu tạo nó kết hợp cả hai loại động cơ trên : Động cơ nam ch m vĩnh cửu với dạng cực m ng và động cơ c t trở thay đổi
- Về tính chất, n phát huy được các ưu điểm của cả động cơ bước nam châm vĩnh cửu và động cơ bước có t trở thay đổi: có moment hãm khi ngắt điện lớn, có moment giữ và moment quay lớn, họat động với tốc độ cao và có số bước lớn (góc bước t 0,450 đến 50)
Trang 33Hình 1.24 Động cơ bước kiểu hỗn hợp với m = 2, 2p = 6
- Cấu tạo của động cơ bước hỗn hợp :
Cấu tạo của động cơ bước hỗn hợp là sự kết hợp giữa động cơ bước nam châm vĩnh cửu và động cơ bước có t trở thay đổi Phần Stator có cấu tạo hoàn toàn giống cấu tạo của động cơ c t trở thay đổi Trên các cực của Stator được đặt các cuộn dây pha, mỗi cuộn d y pha được cuốn thành bốn cuộn dây, hoặc được cuốn thành hai cuộn d y đặt xen kẽ nhau để hình thành nên các cực N và S đồng thời đối diện với mỗi cực của các bối d y là răng của Rotor
Hình 1.25 Cấu tạo động cơ bước hỗn hợp
Nguyên lý làm việc :
Động cơ hỗn hợp là sự kết hợp giữa nguyên tắc làm việc của động cơ bước nam
ch m vĩnh cửu và động cơ bước t trở do đ c được đặc tính tốt nhất của hai loại động cơ kể trên là momen lớn và số bước lớn Động cơ bước gồm hai nửa Rotor như hình vẽ 13 Động cơ loại này có số bước đạt đến 400 bước, nhưng giá thành đắt Động cơ bước kiểu hỗn hợp c g c bước thay đổi t 0,360 đến 150 trong chế
độ đủ bước, momen hãm t 3 đến 1000 Ncm, tần làm việc lớn nhất là 40Khz Trong
Trang 34tất cả các loại động cơ bước kể trên thì động cơ bước hỗn hợp được dùng nhiều hơn
cả
1.3.4 Ưu nhược điểm của động cơ bước
- Ưu điểm:
+ Mô men ở chế độ giữ lớn
+ Điều khiển dễ dàng, chính xác, động cơ bước c độ chính xác 3-5 % của mỗi bước và không tích l y sai số sang bước tiếp theo
+ Dễ dàng khởi động, d ng và đảo chiều quay của động cơ
+ Chế tạo động cơ đơn giản, ít tốn kém, dễ điều khiển
+ Tốc độ quay tỉ lệ tần số xung đầu vào
- Nhược điểm:
+ Rất kh để hoạt động ở tốc độ cao
+ Cần phải chế tạo bộ điều khiển, nên tốn chi phí
1.3.5 Động cơ bước NEMA size 14-3518X-08
Hình 1.26 Động cơ NEMA size 14-3518X-08
- Động cơ Nema size 14 – 3518X-08 có các thông số kĩ thuật như sau: