LUẬN VĂN TỐT NGHIỆP: XÂY DỰNG MÔ HÌNH MẠNG KHÔNG DÂY ĐIỀU KHIỂN HỆ THỐNG ROBOT TỰ ĐỘNG VẬN CHUYỂN HÀNG HÓA
Trang 1KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỀU KHIỂN TỰ ĐỘNG -oOo -
LUẬN VĂN TỐT NGHIỆP
XÂY DỰNG MÔ HÌNH MẠNG KHÔNG DÂY
ĐIỀU KHIỂN HỆ THỐNG ROBOT TỰ ĐỘNG
Trang 2Thành phố Hồ Chí Minh -o0o -
KHOA: ĐIỆN – ĐIỆN TỬ NHIỆM VỤ LUẬN ÁN TỐT NGHIỆP BỘ MÔN: ĐIỀU KHIỂN TỰ ĐỘNG Chú ý: Sinh viên phải dán tờ này vào trang thứ nhất của bản thuyết minh HỌ VÀ TÊN: VŨ MINH HOÀNG MSSV: 40800732 NGÀNH: ĐIỀU KHIỂN TỰ ĐỘNG LỚP: DD08KSTD 1-Đầu đề luận án XÂY DỰNG MÔ HÌNH MẠNG KHÔNG DÂY ĐIỀU KHIỂN HỆ THỐNG ROBOT TỰ ĐỘNG VẬN CHUYỂN HÀNG HÓA 2-Nhiệm vụ (yêu cầu về nội dung và số liệu ban đầu)
3-Ngày giao nhiệm vụ luận án:
4-Ngày hoàn thành nhiệm vụ:
5-Họ và tên người hướng dẫn Phần hướng dẫn 1
2
3
Nội dung và yêu cầu LATN đã được thông qua Bộ môn Ngày……tháng…….năm 200… Chủ nhiệm bộ môn Người hướng dẫn chính (Ký và ghi rõ họ tên) (Ký và ghi rõ họ tên) PHẦN DÀNH CHO KHOA, BỘ MÔN Người duyệt (Chấm sơ bộ):
Đơn vị:
Ngày bảo vệ:
Điểm tổng kết:
Nơi lưu trữ của luận án:
Trang 3Ngày _tháng năm _
PHIẾU CHẤM BẢO VỆ LVTN
(Dành cho người hướng dẫn)
2 Đề tài: Xây dựng mô hình mạng không dây
điều khiển hệ thống robot tự động vận chuyển hàng hóa 3 Họ và tên người hướng dẫn: KS PHAN NGUYỄN PHỤC QUỐC 4 Tổng quát về bản thuyết minh:
Số trang: Số chương:
Số bảng số liệu: Số hình vẽ:
Số tài liệu tham khảo: Phần mềm tính toán:
Sản phẩm:
5 Tổng quát các bản vẽ: Số bản vẽ: bản A1 bản A2 khổ khác:
Số bản vẽ tay: Số bản vẽ máy tính:
6 Những ưu điểm chính của luận án tốt nghiệp:
7 Những khuyết điểm chính của luận án tốt nghiệp
8 Đề nghị: Được bảo vệ º Bổ sung thêm để bảo vệ º Không được bảo vệ º 9 3 câu hỏi sinh viên phải trả lời trước hội đồng: a)
b)
c)
10 Đánh giá chung (bằng chữ: giỏi, khá, trung bình)……….Điểm: ……./10
Kí tên (ghi rõ họ tên)
Trang 4Ngày _tháng năm _
PHIẾU CHẤM BẢO VỆ LVTN
(Dành cho người phản biện)
2 Đề tài: Xây dựng mô hình mạng không dây
điều khiển hệ thống robot tự động vận chuyển hàng hóa 3 Họ và tên người hướng dẫn: KS PHAN NGUYỄN PHỤC QUỐC 4 Tổng quát về bản thuyết minh:
Số trang: Số chương:
Số bảng số liệu: Số hình vẽ:
Số tài liệu tham khảo: Phần mềm tính toán:
Sản phẩm:
5 Tổng quát các bản vẽ: Số bản vẽ: bản A1 bản A2 khổ khác:
Số bản vẽ tay: Số bản vẽ máy tính:
6 Những ưu điểm chính của luận án tốt nghiệp:
7 Những khuyết điểm chính của luận án tốt nghiệp
8 Đề nghị: Được bảo vệ º Bổ sung thêm để bảo vệ º Không được bảo vệ º 9 3 câu hỏi sinh viên phải trả lời trước hội đồng: a)
b)
c)
10 Đánh giá chung (bằng chữ: giỏi, khá, trung bình)……….Điểm: ……./10
Kí tên (ghi rõ họ tên)
Trang 5………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 6………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 7trên gi ảng đường Những tấm gương đã dạy cho em nhiều điều hơn
ki ến thức, đó là nhân cách và tấm lòng
Xin được cảm ơn những tháng ngày học tập và hoạt động dưới mái
trường Bách Khoa thân yêu Hành trang vào đời không chỉ có những
điều thầy đã dạy, mà còn mang theo cả bản lĩnh và nhiệt huyết của
tu ổi trẻ ta có được sau hơn 4 năm rèn luyện tại trường
Xin c ảm ơn những người bạn chân thành tôi đã có, những người
cùng tôi vượt qua nhiều thử thách, cùng chia sẻ thành công, thất bại,
ni ềm vui, nỗi buồn những ngày qua
C ảm ơn gia đình Điểm tựa vững chắc nhất cho tất cả những thành
công trong cu ộc sống
Xin được chân thành cảm ơn thầy Phan Nguyễn Phục Quốc đã tận tình
ch ỉ bảo và tạo mọi điều kiện thuận lợi để em có thể hoàn thành tốt luận văn
t ốt nghiệp này
Xin c ảm ơn câu lạc bộ nghiên cứu khoa học khoa Điện – Điện tử và
nh ững người bạn ở phòng TT-Lab đã giúp đỡ, ủng hộ tôi về mặt ý tưởng
lu ận văn cũng như về mặt tinh thần để tôi có đủ bản lĩnh và ý chí hoàn
thành quãng đường học tập tại đại học Bách Khoa
Vũ Minh Hoàng
Hồ Chí Minh, Ngày 17 tháng 12 năm 2012
Trang 8hàng hóa có một trạm điều khiển trung tâm làm nhiệm vụ phân phối đường chạy, cập nhật vị trí các robot slave và xử lý các trường hợp xung đột làn đường Việc lựa chọn đề tài này
Mục đích thứ nhất là ứng dụng các kiến thức đã học vào thực tế
phương pháp dò line được điều khiển bởi vi điều khiển ARM Cortex M3 LM3S5R31 và một
slave giao tiếp với nhau nhanh chóng và chính xác
Tuy còn một số hạn chế nhưng đề tài đã tạo được một mô hình hệ thống vận chuyển hàng
Trang 9Nhiệm vụ luận văn tốt nghiệp
CHƯƠNG 1 T ỔNG QUAN 1
1.1 Sơ lược về robot: 1
1.2 Robot tự hành: 2
1.2.1 Robot tự hành theo đường lập trình sẵn: 3
1.2.2 Tình hình nghiên cứu và ứng dụng trên thế giới: 3
1.2.3 Tình hình nghiên cứu và ứng dụng ở Việt Nam: 4
CHƯƠNG 2 PHÂN TÍCH NHI ỆM VỤ LUẬN VĂN 5
2.1 Các vấn đề cần giải quyết 5
2.2 Hướng giải quyết đề nghị 5
2.3 Phạm vi của luận văn 6
2.4 Sơ đồ tổng quát mô tả các module sử dụng trong luận văn 6
CHƯƠNG 3 CƠ SỞ LÝ THUYẾT 8
3.1 Giới thiệu về Module TI eZ430-RF2500: 8
3.1.1 Giới thiệu về Module RF Transceiver CC2500: 8
3.1.2 Một vài thông số nổi bật của Module RF Transceiver CC2500: 9
3.1.3 Giới thiệu về Module TI eZ430-RF2500: 9
3.1.4 Giới thiệu về MCU TI MSP430F2274: 10
3.2 Giới thiệu PIF 5R31 Development Kit: 11
3.2.1 Giới thiệu MCU TI Stellaris LM3S5R31: 12
3.2.2 Module System Timer: 13
3.2.3 Module General Timer: 14
3.2.4 Module Pulse Width Modulator (PWM): 15
Trang 103.2.7 Module Analog-to-Digital Converter (ADC): 18
3.3 Giới thiệu TI EKS-LM4F232 Evaluation Kit: 19
3.3.1 Giới thiệu MCU TI Stellaris LM4F232: 21
3.3.2 Module General Timer (GPTM): 23
3.3.3 Module Universal Asynchronous Receivers/Transmitters (UARTs): 24
3.4 Giới thiệu Module RFID: 25
3.4.1 Khái niệm RFID: 25
3.4.2 Các phương thức truyền thông của công nghệ RFID: 25
3.4.3 Các thành phần của một hệ thống RFID: 26
3.4.4 Giới thiệu các thành phần RFID sử dụng trong luận văn: 26
3.5 Động cơ DC Servo: 27
3.5.1 Giới thiệu: 27
3.5.2 Điều khiển động cơ DC servo: 28
3.5.3 Thuật toán PID: 28
3.5.4 Mạch cầu H: 32
3.6 Điều khiển robot bám theo line: 35
3.6.1 Nguyên tắc phân biệt line đen và trắng: 35
3.6.2 Nguyên tắc điều khiển robot bám theo line: 37
3.6.3 Áp dụng thuật toán PID vào dò line: 39
CHƯƠNG 4 THI ẾT KẾ VÀ THI CÔNG 40
4.1 Mạch điện tử: 40
4.1.1 Mạch dò line: 40
4.1.2 Mạch cầu H: 42
4.1.3 Mạch Stamp slave: 44
4.2 Thiết kế và thi công cơ khí: 46
4.2.1 Thiết kế và thi công sàn làm việc của robot: 46
4.2.2 Thi công mô hình robot: 50
4.3 Xây dựng giải thuật giao tiếp trong mạng không dây: 51
4.3.1 Các quy tắc giao tiếp trong mạng: 51
Trang 114.4.1 Giải thuật chương trình MCU trên module eZ430-RF2500: 53
4.4.2 Giải thuật chương trình trên vi điều khiển của Master: 57
4.4.3 Giải thuật chương trình trên vi điều khiển của Slave: 62
4.5 Chương trình trên máy tính: 76
4.5.1 Chương trình viết bằng ngôn ngữ C#: 77
4.5.2 Chương trình viết bằng ngôn ngữ Python 2.7.3: 78
CHƯƠNG 5 V ẬN HÀNH VÀ KẾT QUẢ 79
5.1 Vận hành: 79
5.2 Kết quả: 82
CHƯƠNG 6 K ẾT LUẬN 83
6.1 Những kết quả đạt được: 83
6.2 Khả năng ứng dụng: 83
6.3 Những hạn chế còn tồn tại và hướng giải quyết: 83
6.4 Hướng phát triển của đề tài: 85
TÀI LI ỆU THAM KHẢO: 86
PH Ụ LỤC 87
Trang 12Hình 1.2 Hình ảnh một số robot tự hành 2
Hình 1.3 Một số hình ảnh về hệ thống robot Kiva 4
Hình 2.1 Sơ đồ tổng quát hệ thống 6
Hình 3.1 Module CC2500 8
Hình 3.2 Sơ đồ khối bên trong module CC2500 9
Hình 3.3 Module eZ430-RF2500 10
Hình 3.4 Sơ đồ khối bên trong MSP430F2274 11
Hình 3.5 Kit phát triển PIF 5R31 11
Hình 3.6 Sơ đồ khối vi điều khiển LM3S5R31 13
Hình 3.7 Sơ đồ khối Module General Timer 14
Hình 3.8 Sơ đồ khối module PWM 16
Hình 3.9 Sơ đồ khối bộ phát xung 16
Hình 3.10 Sơ đồ khối bộ QEI 17
Hình 3.11 Sơ đồ khối bộ UART 18
Hình 3.12 Sơ đồ khối bộ ADC 19
Hình 3.13 EKS-LM4F232 Evaluation Kit 20
Hình 3.14 Sơ đồ khối EKS-LM4F232 Evaluation Kit 20
Hình 3.15 Sơ đồ khối vi điều khiển LM4F232 22
Hình 3.16 Sơ đồ khối module General Timer LM4F232 23
Hình 3.17 Sơ đồ khối bộ UART LM4F232 24
Hình 3.18 Module Reader RFID ACE630 26
Hình 3.19 Frame dữ liệu của module Reader RFID ACE630 26
Hình 3.20 Thẻ (Tag) 125 kHz 27
Trang 13Hình 3.23 Bộ điều khiển PID 32
Hình 3.24 Thiết kế cơ bản của mạch cầu H 32
Hình 3.25 Mạch cầu H chế độ thuận 33
Hình 3.26 Mạch cầu H chế độ nghịch 33
Hình 3.27 Sơ đồ cấu tạo của IR2184 34
Hình 3.28 Quang trở 35
Hình 3.29 Mạch ứng dụng quang trở 36
Hình 3.30 Cách sắp xếp quang trở và Led trên mạch dò line 37
Hình 3.31 Mạch dò line sử dụng 4 cảm biến 37
Hình 3.32 Trường hợp robot chạy giữa line 38
Hình 3.33 Trường hợp robot chạy lệch phải 38
Hình 3.34 Trường hợp robot chạy lệch trái 39
Hình 4.1 Sơ đồ nguyên lý mạch dò line 41
Hình 4.2 Hình thực tế mạch dò line 41
Hình 4.3 Sơ đồ nguyên lý mạch cầu H 43
Hình 4.4 Hình thực tế mạch cầu H 43
Hình 4.5 Sơ đồ khối mạch Stamp slave 45
Hình 4.6 Hình thực tế mạch stamp và kết nối với board MCU slave 46
Hình 4.7 Bản thiết kế một block 47
Hình 4.8 Số thứ tự các point trong 1 block 48
Hình 4.9 Kích thước chi tiết sàn làm việc của robot 49
Hình 4.10 Vị trí các point trên sàn làm việc của robot 49
Hình 4.11 Mô hình cơ khí robot slave 50
Trang 14Hình 4.14 Frame slave truyền để đăng ký sự hiện diện 52
Hình 4.15 Frame slave truyền vị trí hiện tại của nó 52
Hình 4.16 Frame slave truyền mã số gói hàng 52
Hình 4.18 Frame slave trả lời xác nhận việc đã nhận frame thành công 52
Hình 4.19 Frame master truyền kiểm tra sự tồn tại của slave 52
Hình 4.20 Frame master truyền yêu cầu slave dừng/chạy 53
Hình 4.21 Frame master truyền địa chỉ kho của gói hàng 53
Hình 4.22 Frame master truyền xác nhận việc nhận 1 frame thành công 53
Hình 4.23 Frame truyền từ module eZ430-RF2500 đến master/slave 54
Hình 4.24 Frame truyền từ master/slave đến module eZ430-RF2500 54
Hình 4.25 Mô hình giao tiếp giữa master với các module 57
Hình 4.26 Các module sử dụng trên vi điều khiển của master 57
Hình 4.27 Các module sử dụng trên vi điều khiển của robot slave 63
Hình 4.28 Quy định về biến định vị hướng của robot 71
Hình 4.29 Giao diện chương trình viết trên C# 77
Hình 4.30 Cửa sổ thiết lập kết nối UART 77
Hình 4.31 Cửa sổ thay đổi vị trí kho hàng 78
Hình 4.32 Cửa sổ chương trình trên Python 78
Trang 16CHƯƠNG 1 TỔNG QUAN
1.1 Sơ lược về robot:
Robot được định nghĩa là một máy cơ khí được thiết kế để làm các công việc thay cho con người Các bộ phận trên robot ứng dụng cơ điện tử và được điều khiển bởi một chương trình máy tính hoặc các vi mạch điện tử được lập trình Robot có thể được phân loại ra các dạng tự động hoàn toàn, bán tự động và điều khiển từ xa
Trên thế giới ngày nay, robot được ứng dụng trong rất nhiều lĩnh vực, và phụ thuộc vào
từng lĩnh vực sẽ yêu cầu robot có các thiết kế, cấu trúc và chức năng khác nhau Từ đó robot
có thể được phân loại thành các dạng chính như: robot tự hành (robot di động, mobile robot), robot công nghiệp, robot cộng tác (collaborative robot), robot quân sự
Trang 171.2 Robot t ự hành:
Trong các loại robot trên thì robot tự hành được ứng dụng rộng rãi nhất trong mọi lĩnh vực,
mọi môi trường Theo lý thuyết, môi trường hoạt động của robot tự hành có thể là đất, nước,
không khí, không gian vũ trụ hay sự tổ hợp giữa chúng Địa hình bề mặt mà robot di chuyển trên đó có thể bằng phẳng hoặc thay đổi, lồi lõm Theo bộ phận thực hiện chuyển động, ta có
thể chia robot tự hành làm 2 lớp: chuyển động bằng chân (legged) và bằng bánh (wheeled) Trong lớp đầu tiên, chuyển động có được nhờ các chân cơ khí bắt chước chuyển động của con người và động vật Robot loại này có thể di chuyển rất tốt trên các định hình lồi lõm, phức
tạp Tuy nhiên, cách phối hợp các chân cũng như vấn đề giữ vững tư thế là công việc cực kỳ khó khăn Lớp còn lại (di chuyển bằng bánh) tỏ ra thực tế hơn, chúng có thể làm việc tốt trên
hầu hết các địa hình do con người tạo ra Điều khiển robot di chuyển bằng bánh cũng đơn
giản hơn nhiều, gần như luôn đảm bảo tính ổn định cho robot Lớp này có thể chia làm 3 loại robot: Loại chuyển động bằng bánh xe (phổ biến), loại chuyển động bằng vòng xích (khi cần
mô men phát động lớn hay khi cần di chuyển trên vùng đầm lầy, cát và băng tuyết), và loại
hỗn hợp bánh xe và xích (ít gặp)
Trang 18Tiềm năng ứng dụng của robot tự hành hết sức rộng lớn Có thể kể đến robot vận chuyển
vật liệu, hàng hóa trong các tòa nhà, nhà máy, cửa hàng, sân bay và thư viện; robot phục vụ quét dọn đường phố, khoan chân không; robot kiểm tra trong môi trường nguy hiểm; robot canh gác, do thám; robot khám phá không gian, di chuyển trên hành tinh; robot hàn, sơn trong nhà máy; robot xe lăn phục vụ người khuyết tật; robot phục vụ sinh hoạt gia đình v.v
Một ứng dụng được nghiên cứu từ rất sớm của robot tự hành đó là robot tự hành theo đường lập trình sẵn (automatic guided vehicle (AGV)) AGV là robot tự hành di chuyển theo
những đường line hoặc những điểm mốc trên sàn nhà hoặc sử dụng laser hoặc xử lý ảnh Loại robot này được ứng dụng nhiều nhất trong công nghiệp để vận chuyển các vật liệu xung quanh những máy sản xuất hoặc trong nhà kho Trong ứng dụng robot vận chuyển vật liệu này, điều khó khăn nhất đó là việc dẫn đường cho robot Thông thường nếu nhà máy chỉ có
một robot tự hành thì việc robot di chuyển theo tuyến đường cố định khá đơn giản Tuy nhiên khi nhà máy có nhiều robot tự hành di chuyển trùng tuyến đường với nhau thì việc dẫn đường cho từng robot di chuyển lại khó khăn hơn rất nhiều
Việc phát triển hệ thống robot tự hành tự định vị và dẫn đường đã được rất nhiều công ty, trường đại học trên thế giới nghiên cứu nhưng đến nay chỉ có hệ thống robot Kiva do công ty Kiva Systems phát triển và sản xuất là gây được tiếng vang trên thế giới Hiện hệ thống này
đã được sử dụng trong kho hàng của một số công ty lớn trên thế giới như hệ thống cửa hàng Amazon
Trang 19Hình 1.3 M ột số hình ảnh về hệ thống robot Kiva
Ở Việt Nam hiện nay hệ thống robot tự động vận chuyển hàng hóa trong sản xuất cũng đã được áp dụng trong một số nhà máy lớn như nhà máy gạch Đồng Tâm ở dạng đơn giản
Hệ thống robot tự động vận chuyển hàng hóa có khả năng ứng dụng vào bất cứ ngành nào
có nhu cầu vận chuyển số lượng lớn hàng hóa đến nhiều điểm khác nhau như trong ngành hàng không chuyển các valy hành lý của hành khách về máy bay, trong các nhà máy cần vận chuyển nguyên liệu đến các máy khác nhau hoặc vận chuyển thành phẩm đến chứa ở nhiều kho riêng biệt
Nói tóm lại ngày nay nhu cầu ứng dụng hệ thống vận chuyển hàng hóa tự động là rất lớn
Vì vậy việc nghiên cứu và ứng dụng thành công hệ thống vận chuyển này ở Việt Nam có ý nghĩa rất lớn trong việc áp dụng khoa học kỹ thuật giải phóng sức lao động của con người và nâng cao năng suất lao động
Trang 20CHƯƠNG 2 PHÂN TÍCH NHI ỆM VỤ LUẬN VĂN
Luận văn nhằm xây dựng một hệ thống các robot tự động vận chuyển hàng hóa từ một tổng kho đến các kho phụ tùy thuộc vào gói hàng và có khả năng chọn được tuyến đường ít xung đột nhất
Hệ thống cơ bản gồm một trung tâm điều khiển (master) và các slave
2.1 Các v ấn đề cần giải quyết
Làm sao để các robot slave di chuyển giữa các kho hàng
Làm sao để các robot slave không va chạm nhau tại các giao lộ
Làm sao để các robot slave nhận ra gói hàng
Làm sao để người sử dụng có thể điều khiển phân phối vị trí kho hàng cho các gói hàng dễ dàng
2.2 Hướng giải quyết đề nghị
Để di chuyển giữa các kho hàng thì tôi lựa chọn phương pháp dò line Phương pháp này được lựa chọn vì tính dễ sử dụng, tính chính xác và có lợi về mặt kinh tế
Để các robot slave có khả năng phát hiện ra nhau để tránh va chạm thì ta sử dụng
một master quản lý vị trí các robot slave Khi master phát hiện ra có hai robot đang đến cùng
một giao lộ thì master sẽ ra lệnh cho robot đến giao lộ sau (thông báo lên master muộn hơn)
phải dừng lại chờ robot đến trước qua khỏi giao lộ thì robot đến sau sẽ được tiếp tục chạy
Một vấn đề phát sinh là làm sao các robot slave có thể truyền vị trí của nó lên master xử lý xung đột? Đây là một bài toán về định vị và dẫn đường (localization, navigation) Trong luận văn này tôi lựa chọn các lưu bản đồ sàn làm việc trên robot slave và việc dẫn đường cũng được thực hiện trên slave, master chỉ chỉ ra một số mốc trong việc dẫn đường, còn lại sẽ được
xử lý hoàn toàn trên slave
Từ đây lại nảy sinh ra một vấn đề nữa là làm sao để các slave có thể giao tiếp với master?
Một đòi hỏi bắt buộc là giao tiếp phải là không dây và tốc độ phải đủ nhanh cho phép master
cập nhật các yêu cầu từ slave và ra lệnh cho slave nhanh chóng, đáp ứng yêu cầu thời gian
thực Ở luận văn này tôi chọn phương án sử dụng mạng RF dùng module eZ430-RF2500 của
TI để thực hiện
Trang 21 Để nhận diện các gói hàng thì ở luận văn này tôi sử dụng công nghệ RFID với mỗi gói hàng tương ứng với một thẻ Tag RFID
Để người sử dụng giao tiếp với master một cách trực quan thì sẽ có chương trình trên máy tính cho phép người sử dụng có thể cấu hình vị trí kho hàng cho các gói hàng dễ dàng
2.3 Ph ạm vi của luận văn
Xây dựng mô hình robot slave có khả năng di chuyển theo line một cách hoàn
chỉnh
Xây dựng mô hình trạm điều khiển master
Xây dựng cấu trúc mạng không dây dùng giao tiếp giữa các slave với master mà sẽ ứng dụng cấu trúc đó vào mạng RF trong luận văn này
Lập trình phần mềm cho phép tương tác giữa người dùng và master một các trực quan nhất
2.4 Sơ đồ tổng quát mô tả các module sử dụng trong luận văn
Trang 22Board master sẽ nhận bản tin từ slave nhờ giao tiếp với board eZ430-RF2500 sử dụng chuẩn UART và giao tiếp với máy tính cũng sử dụng chuẩn UART
Master và slave sẽ giao tiếp với nhau thông qua môi trường RF sử dụng module RF2500 của hãng Texas Instrument
Trang 23eZ430-CHƯƠNG 3 CƠ SỞ LÝ THUYẾT
Chương 2 đã trình bày các vấn đề sẽ được nghiên cứu trong luận văn cũng như đề xuất các
giải pháp thực hiện Chương này sẽ giới thiệu các lý thuyết liên quan, trình bày các phương pháp nghiên cứu và thực hành cụ thể, đồng thời phân tích, đánh giá, làm rõ và lý giải cho sự các lựa chọn đó
Với yêu cầu phải lựa chọn một hệ thống truyền nhận không dây để ứng dụng vào luận văn này, em lựa chọn mạng RF sử dụng module eZ430-RF2500 của hãng Texas Instrument do tính dễ sử dụng và ổn định của sản phẩm này
Khi cần mở rộng hệ thống có thể chọn mạng WiFi giao thức TCP/IP để có khoảng cách và
tốc độ truyền nhận cao hơn Trong khuôn khổ luận văn này, do hệ thống nhỏ và thời gian phát triển ngắn nên chỉ dừng lại ở hệ thống sử dụng mạng RF
CC2500 là một bộ thu phát 2.4 GHz được thiết kế cho những ứng dụng không dây tiết
kiệm năng lượng Bộ thu phát này được tích hợp bộ điều biến dải nền có thể tùy chỉnh được cho phép thay đổi tốc độ truyền lên đến 500 kBaud
Những thông số hoạt động và bộ nhớ truyền nhận (FIFO) của CC2500 có thể được điều khiển thông qua giao tiếp SPI (Serial Peripheral Interface) Thông thường, CC2500 được sử
dụng cùng với 1 vi điều khiển và một vài linh kiện thụ động trong hệ thống
Hình 3.1 Module CC2500
Trang 24Hình 3.2 Sơ đồ khối bên trong module CC2500
− Độ nhạy cao (-104 dBm ở tốc độ 2.4 kBaud, tỷ lệ lỗi gói 1%)
− Tiêu thụ ít năng lượng (dòng tiêu thụ 13.3 mA ở tốc độ 250 kBaud)
− Khả năng chọn lọc dữ liệu thu được
− Có thể thay đổi tốc độ từ 1.2 đến 500 kBaud
− Dải tần hoạt động: 2400 – 2483.5 MHz
eZ430-RF2500 là một module giao tiếp USB và truyền nhận dữ liệu không dây do hãng Texas Instrument sản xuất eZ430-RF2500 được phát triển dựa trên MSP430F2274 kết
hợp với chip CC2500 truyền nhận tín hiệu ở vùng tần số 2.4 GHz, tích hợp sẵn cảm biến nhiệt độ Do đặc điểm dòng MSP430 có những ưu thế về năng lượng nên đáp ứng được
những nhu cầu trong thiết bị di động
Bộ eZ430-RF2500T là một sản phẩm có thể làm việc với đầu cắm USB như một hệ
thống độc lập với cảm biến bên ngoài Hoặc sử dụng thiết kế mở rộng với những module ngoại vi Với giao diện gỡ lỗi USB cho phép sản phẩm có thể truyền và nhận dữ liệu từ xa
từ máy tính cá nhân sử dụng truyền nhận nối tiếp UART
Trang 25Hình 3.3 Module eZ430-RF2500 3.1.4 Giới thiệu về MCU TI MSP430F2274:
MSP430F2274 là vi điều khiển 16bit tiết kiệm năng lượng thuộc dòng MSP430 của hãng Texas Instrument với một số thông số nổi bật sau:
− Nguồn điện thế sử dụng trong khoảng từ 1.8V đến 3.6V
− Nguồn tiêu thụ cực thấp
o Chế độ hoạt động: 270 µA tại 1MHz và 2.2V
o Chế độ ngủ: 0.7 µA
o Chế độ không hoạt động: 0.1 µA
− Thời gian thức dậy từ chế độ ngủ là ít hơn 1µs
− Cấu trúc RISC 16 bit, mỗi chu kỳ lệnh hoạt động mất 62.5ns
− Có hai thanh ghi cho Timer_A, Timer_B 16 bit
− Hỗ trợ các giao diện giao tiếp nối tiếp như: UART, SPI, I2C, IrDA
− Bộ chuyển đổi ADC 10-bit với tốc độ chuyển đổi lên tới 200ksps
− Bộ nhớ bao gồm 32KB + 256B Flash Memory, 1KB RAM
Trang 26Hình 3.4 Sơ đồ khối bên trong MSP430F2274
3.2 Giới thiệu PIF 5R31 Development Kit:
Kit phát triển PIF 5R31 Development Kit sử dụng vi điều khiển TI Stellaris LM3S5R31 được sử dụng làm bộ điều khiển trung tâm của robot trong luận văn này
Trang 273.2.1 Gi ới thiệu MCU TI Stellaris LM3S5R31:
MCU LM3S5R31 là một vi điều khiển 32 bit của hãng Texas Instrument sử dụng lõi ARM Cortex-M3 có khả năng hoạt động ở tốc độ nhân là 80 MHz cùng nhiều các module ngoại vi
mở rộng thích hợp cho các ứng dụng điều khiển chuyển động
Lõi xử lý ARM Cortex-M3
Tốc độ cao: hoạt động ở 80-MHz
Bộ nhớ Flash 256 KB
Bộ nhớ RAM 48 KB
Bộ nhớ ROM nội nạp sẵn thư viện StellarisWare
Giao tiếp ngoại vi mở rộng (External Peripheral Interface)
Các chuẩn giao tiếp cao cấp: UART, SSI, I2C, I2S, CAN, USB
Tích hợp sẵn: bộ định thời đa chức năng (general-purpose timers), bộ định thời watchdog (watchdog timers), DMA, gerenal-purpose I/Os
Điều khiển chuyển động sử dụng các module tích hợp sẵn: Pulse Width Modulator (PWM) và bộ đọc encoder (quadrature encoder inputs)
Chuẩn JTAG và ARM Serial Wire Debug (SWD)
Chuẩn đóng gói 100-pin LQFP
Trang 28Hình 3.6 Sơ đồ khối vi điều khiển LM3S5R31 3.2.2 Module System Timer:
Bộ định thời hệ thống được tích hợp sẵn, là bộ định thời 24 bit, đếm xuống Bộ định thời được sử dụng trong nhiều ứng dụng như:
− Bộ định thời cho RTOS
Trang 29− Bộ định thời thời gian
− Bộ đếm đơn giản sử dụng để đo thời gian hoàn tất hay thời gian đã sử dụng
3.2.3 Module General Timer:
4 bộ General-Purpose Timer Modules (GPTM), mỗi bộ cung cấp hai bộ timer/counter bit Mỗi GPTM có thể được cấu hình để hoạt động độc lập:
16-− Là một bộ đếm thời gian 32-bit
− Là một đồng hồ thời gian thực 32-bit (RTC) để nắm bắt sự kiện
− Dùng cho điều chế rộng xung (PWM)
− Để kích hoạt chuyển đổi tương tự - số
Chế độ Timer 32-bit:
o Có thể lập trình one-shot thời gian
o Có thể lập trình theo chu kỳ thời gian
o Real-Time Clock sử dụng một xung nhịp 32,768-KHz bên ngoài như đầu vào
o Người dùng có thể dừng trong quá trình gỡ rối
o Kích hoạt ADC
Trang 30 Chế độ Timer 16-bit:
o Chức năng như độ định thời với một bộ chia 8-bit (cho chế độ one-shot và
chế độ theo chu kỳ)
o Có thể lập trình one-shot thời gian
o Có thể lập trình theo chu kỳ thời gian
o Người dùng có thể dừng trong quá trình gỡ rối
o Kích hoạt ADC
Chế độ Input Capture 16-bit:
o Capture đầu vào theo sườn
o Capture đầu vào theo thơi gian
Chế độ PWM 16bit:
o Chế độ PWM đơn giản với đầu ra có thể lập trình phần mềm của tín hiệu PWM
3.2.4 Module Pulse Width Modulator (PWM):
LM3S5R31 có 1 bộ PWM gồm 4 bộ phát xung và 1 bộ điều khiển cho tổng cộng 8 ngõ ra PWM Bộ điều khiển sẽ quyết định mức tích cực của tín hiệu PWM và tín hiệu nào ra được
xuất ra ở chân nào
Mỗi bộ phát xung sẽ cho 2 tín hiệu PWM sử dụng chung 1 bộ định thời và cùng tần số
Một số đặc điểm chú ý của bộ phát xung:
− Bộ định thời 16 bit:
o 2 chế độ hoạt động: đếm xuống hoặc đếm lên/xuống
o Cập nhật giá trị ban đầu cho bộ định thời có thể đồng bộ với các bộ phát xung khác
− Tín hiệu PWM ngõ ra có thể được cấu hình dựa trên tín hiệu từ bộ định thời hoặc tín hiệu từ bộ so sánh
− Tạo được Dead-band cho 2 tín hiệu PWM ngõ ra
Trang 31Hình 3.8 Sơ đồ khối module PWM
3.2.5 Module Quadrature Encoder Interface (QEI):
Bộ QEI với khả năng đọc tín hiệu từ encoder tăng (incremental encoder) 2 kênh và cho biết chiều quay, vận tốc góc của động cơ Đầu vào của bộ QEI là 2 kênh xung encoder và kênh xung index (có thể có hoặc không)
Trang 32Stellaris LM3S5R31 có sẵn 2 bộ QEI cho phép điều khiển 2 động cơ cùng lúc với những đặc điểm sau:
− Bộ tích hợp vị trí cho phép theo dõi vị trí của encoder
− Bộ lọc nhiểu đầu vào có thể lập trình được
− Bộ định thời tích hợp sẵn cho phép đo vận tốc
− Tần số xung ngõ vào có thể lên đến ¼ tần số hoạt động của lõi
Stellaris LM3S5R31 có 3 bộ UART với các đặc điểm:
− Bộ tạo tốc độ baud có thể lập trình được
− Bộ FIFO 16x8 bit đọc và ghi phân biệt nhằm giúp vi điều khiển giảm số lần vào
ngắt
− Các mức độ FIFO 1 / 8, 1 / 4, 1 / 2, 3 / 4, và 7 / 8
Trang 33− Tiêu chuẩn giao tiếp không đồng bộ với các bit bắt đầu, dừng lại, và tính chẵn lẻ
− Phát hiện và sửa lỗi đường truyền
− Lập trình đầy đủ các đặc tính giao diện nối tiếp:
o 5, 6, 7, hoặc 8 bit dữ liệu
o Tạo và kiểm tra bit chẵn, lẻ hoặc không
o Tạo 1 hoặc 2 bit dừng
3.2.7 Module Analog-to-Digital Converter (ADC):
Stellaris LM3S5R31 có 2 bọ ADC độ phân giải 10 bit và hỗ trợ đến 16 kênh đầu vào và 1
cảm biến nhiệt nội Mỗi bộ ADC gồm 4 bộ sequencer cho phép lấy mẫu từ nhiều đầu vào mà không cần tín hiệu điều khiển liên tục Mỗi bộ sequencer cung cấp khả năng cài đặt đầy đủ từ nguồn lấy mẫu, sự kiện bắt đầu lấy mẫu, ngắt đến mức độ ưu tiên của các sequencer Mốc sự
kiện bắt đầu lấy mẫu có thể lấy từ phần mềm (lập trình), bộ định thời, bộ so sánh tương tự (analog), PWM, GPIO
Một vài thông số quan trọng của bộ ADC:
Trang 34− Lên đến 16 kênh tín hiệu đầu vào
− Có thể cấu hình đầu vào là tín hiệu dạng vi phân
− Có cảm biến nhiệt nội
− Tốc độ lấy mẫu tối đa 1 triệu mẫu mỗi giây
− Có phần cứng lấy trung bình mẫu, cho phép lấy trung bình đến 64 mẫu
Kit phát triển TI EKS-LM4F232 Evaluation Kit sử dụng vi điều khiển TI Stellaris LM4F232 và được sử dụng làm bộ điều khiển trung tâm kiểm soát hoạt động của các robot trong luận văn này
Trang 35Hình 3.13 EKS-LM4F232 Evaluation Kit
Hình 3.14 Sơ đồ khối EKS-LM4F232 Evaluation Kit
Trang 363.3.1 Gi ới thiệu MCU TI Stellaris LM4F232:
MCU LM4F232 là một vi điều khiển 32 bit của hãng Texas Instrument sử dụng lõi ARM Cortex-M4F có khả năng hoạt động ở tốc độ nhân là 80 MHz Điểm khác biệt của lõi ARM Cortex-M4F với lõi ARM Cortex-M3 là khả năng tính toán số chấm động Lõi ARM Cortex-M4F được tích hợp bộ Foating Point Unit (FPU) cho phép tính toán số chấm động nhanh hơn
Bộ nhớ ROM nội nạp sẵn thư viện StellarisWare
Các chuẩn giao tiếp cao cấp: UART, SSI, I2C, I2S, CAN, USB
Tích hợp sẵn: bộ định thời đa chức năng (general-purpose timers), bộ định thời watchdog (watchdog timers), DMA, gerenal-purpose I/Os
Điều khiển chuyển động sử dụng các module tích hợp sẵn: Pulse Width Modulator (PWM) và bộ đọc encoder (quadrature encoder inputs)
Chuẩn JTAG và ARM Serial Wire Debug (SWD)
Chuẩn đóng gói 144-pin LQFP
Trang 37Hình 3.15 Sơ đồ khối vi điều khiển LM4F232
Trang 383.3.2 Module General Timer (GPTM):
LM4F232 có 12 bộ General-Purpose Timer Modules (GPTM), gồm 6 bộ định thời 16/32 bit và 6 bộ định thời 32/64 bit Mỗi bộ định thời 16/32 bit cung cấp hai bộ đếm 16 bit hoặc 1
bộ đếm 32 bit Mỗi bộ định thời 32/64 bit cung cấp hai bộ đếm 32 bit hoặc 1 bộ đếm 64 bit
Mỗi GPTM có thể được cấu hình để hoạt động độc lập:
− Là một bộ đếm thời gian 32-bit
− Là một đồng hồ thời gian thực 32-bit (RTC) để nắm bắt sự kiện
− Dùng cho điều chế rộng xung (PWM)
− Để kích hoạt chuyển đổi tương tự - số
Chế độ hoạt động 16/32 bit:
o Có thể lập trình chạy 1 lần ở bộ đếm 16/32 bit
o Có thể lập trình theo chu kỳ thời gian ở bộ đếm 16/32 bit
o Có thể lập trình bộ định thời 16 bit với bộ chia tần 8 bit
o Real-Time Clock 32 bit sử dụng một xung nhịp 32,768-KHz bên ngoài như đầu vào
Chế độ hoạt động 32/64 bit:
o Có thể lập trình chạy 1 lần ở bộ đếm 32/64 bit
o Có thể lập trình theo chu kỳ thời gian ở bộ đếm 32/64 bit
Trang 39o Có thể lập trình bộ định thời 32 bit với bộ chia tần 16 bit
o Real-Time Clock 64 bit sử dụng một xung nhịp 32,768-KHz bên ngoài như đầu vào
3.3.3 Module Universal Asynchronous Receivers/Transmitters (UARTs):
Stellaris LM4F232 có 8 bộ UART với các đặc điểm:
− Bộ tạo tốc độ baud có thể lập trình được
− Bộ FIFO 16x8 bit đọc và ghi phân biệt giúp vi điều khiển giảm số lần vào ngắt
− Các mức độ FIFO 1 / 8, 1 / 4, 1 / 2, 3 / 4, và 7 / 8
− Tiêu chuẩn giao tiếp không đồng bộ với các bit bắt đầu, dừng lại, và tính chẵn lẻ
− Phát hiện và sửa lỗi đường truyền
− Lập trình đầy đủ các đặc tính giao diện nối tiếp:
o 5, 6, 7, hoặc 8 bit dữ liệu
o Tạo và kiểm tra bit chẵn, lẻ hoặc không
o Tạo 1 hoặc 2 bit dừng
Trang 403.4 Gi ới thiệu Module RFID:
RFID (Radio Frequency Identification) là công nghệ xác nhận dữ liệu đối tượng bằng sóng
vô tuyến để nhận dạng, theo dõi và lưu thông tin trong một thẻ gọi là Tag Reader quét dữ liệu
thẻ và gửi thông tin đến cơ sở dữ liệu lưu trữ dữ liệu của thẻ
Kỹ thuật RFID có liên quan đến hệ thống không dây cho phép một thiết bị đọc thông tin được chứa trong một chip không tiếp xúc trực tiếp ở khoảng cách xa, mà không thực hiện bất
kỳ giao tiếp vật lý nào hoặc yêu cầu một sự nhìn thấy giữa hai cái Nó cho ta phương pháp truyền và nhận dữ liệu từ một điểm đến điểm khác
Dạng đơn giản nhất được sử dụng hiện nay hệ thống RFID bị động làm việc như sau: một RFID reader truyền một tín hiệu tần số vô tuyến điện tử qua antenna của nó đến một con chip không tiếp xúc Reader nhận thông tin trở lại từ chip và gửi nó đến máy tính điều khiển đầu đọc và xử lý thông tin tìm được từ con chip Các con chip không tiếp xúc, không tích điện, chúng hoạt động bằng cách sử dụng năng lượng chúng nhận từ tín hiệu được gửi bởi một reader
Kỹ thuật RFID sử dụng truyền thông không dây trong dải tần số sóng vô tuyến để truyền
dữ liệu từ các thẻ đến các reader Thẻ có thể được đính kèm hoặc gắn vào đối tượng được
nhận dạng như sản phẩm, hộp hoặc pallet
Công nghệ RFID sử dụng 3 phương thức truyền thông dựa trên tần số của sóng radio như