Tài liệu tham khảo chuyên ngành viễn thông Tìm hiểu nguyên tắc hoạt động và cấu tạo của robot CleanMate 365 của hãng Metapo,USA
Trang 1Lời cảm ơn
Trước hết em xin gửi lời cảm ơn chân thành và sâu sắc tới PSG.TS TrầnQuang Vinh người đã trực tiếp hướng dẫn, chỉ bảo tận tình và tạo mọi điều kiệntốt nhất để em hoàn thành luận văn này.
Thứ hai em muốn gửi lời cảm ơn đến các thầy cô giáo đã giảng dạy em trong 4năm học vưa qua
Thứ ba em cảm ơn gia đình đã nuôi dưỡng và tạo điều kiện học tập tốt nhấtcho em.
Và cuối cùng em cảm ơn giúp đỡ và ủng hộ của các bạn trong suốt quá trìnhhọc tập
Sinh viên Kim Ngọc Bách
Trang 2Tóm tắt nội dung luận văn
Nội dung của bài luận văn này là về vấn đề tìm hiểu nguyên tắc hoạt động và cấutạo của robot CleanMate 365 của hãng Metapo,USA Từ đó thiết kế, xây dựng mộtrobot có chức năng giống CleanMate 365 Sau đó hoàn thiện phát triển thêm các chức năng mới cho robot này
Luận văn bao gồm 6 chương Chương 1 đặt vấn đề và giới thiệu về Robot Cleanmate 365 Chương 2 là cơ sở lý thuyết về robot di động thông minh Các chương 3,4,5 là thiết kế chi tiết của robot về cơ khí, điện tử, phần mềm điều khiển.Chương 6 báo cáo về kết quả quá trình xây dựng, hoàn thiện Robot, và đề ra hướng phát triển cho robot.
Phần phụ lục giới thiệu các công cụ sử dụng trong quá trình xây dựng robot và mã nguồn tham khảo của chương trình điều khiển robot.
Trang 31.2 Giới thiệu về Robot Cleamate: 7
Chương 2: Cơ sở lý thuyết về hệ thống robot thông minh 8
2.1 Khái Niệm Về Robot : 8
2.2 Phân Loại Robot : 9
2.3 Các bộ phận của robot di động thông minh : 10
2.4 Các mô hình điều khiển robot: 11
2.4.1 Mô hình kiểu phản xạ : 11
2.4.2 Mô hình “sens – plan – act “ : 11
2.4.3 Mô hình kiểu lai : 11
Chương 3: Thiết kế Robot cleanmate – Phần cơ khí 12
Chương 4: Thiết kế mạch điện tử 14
4.2 Khối điều khiển và giới thiệu PIC16F877A: 14
4.2.1 Hight-performance RISC CPU 15
4.2.2 Các cổng vào ra : 16
4.2.3 Các Khối Timer: 19
4.2.4 Khối PWM: 23
4.2.5 Khối ADC: 24
4.2.6 Khối truyền thông nối tiếp UART: 26
4.2.7 Các tài nguyên của PIC được sử dụng trong việc xây dựng khối điều khiển chorobot: 26
4.3 Khối quản lý nguồn : 28
4.3.1 Khối chuyển đổi nguồn nuôi: 28
4.9 Hiển thị LED 7 đoạn và Loa: 42
4.9.1 Hiển thị LED 7 đoạn : 42
4.9.2 Loa : 42
4.10 Mạch điều khiển động cơ : 43
4.10.1 Giới thiệu về mạch cầu H: 43
4.10.2 Điều khiển motor với IC L298: 44
4.10.3 Điều khiển Motor chổi quét: 46
4.11 Thiết kế PCB: 47
Trang 44.11.1 Phần mềm thiết kế mạch in PCB DXP Altium Designer: 47
4.11.2 Thiết kế mạch điện trong môi trường Altium Designer: 48
4.11.3 Kết quả và nhận xét: 48
Chương 5: Phần mềm điều khiển Robot 49
5.1 Lập trình cho hệ thống thời gian thực: 49
5.2 Bài toán di chuyển của robot: 51
5.3 Tránh vật cả và độ cao: 52
5.4 Tìm chỗ sáng: 52
5.5 Chương trình điều khiển robot: 53
5.5.1 Chương trình điều khiển robot: 53
Chương trình điều khiển robot có thể diên tả bằng lưu đồ sau, trong đó Cleaner là hàm hoạt động của robot, charger là hàm nạp pin 53
5.5.2 Sơ đồ trạng thái của robot trong quá trình hoạt động: 54
Chương 6: Kết quả thực nghiệm và hướng phát triển của đề tài 55
6.1 Kết quả thực nghiệm: 55
6.2 Hướng phát triển của đề tài: 56
6.2.1 Tìm trạm sạc: 56
6.2.2 Tạo tiếng nói cho robot: 58
6.2.3 Lập trình thời gian biểu: 58
Phụ Lục 59
Danh Mục Hình VẽHình 1: Robot Cleaner 365 do Hãng Metapo chế tạo 7
Hình 9: Sơ đồ chân của PIC16F877A 15
Hình 10: Sơ Đồ KhốI PIC16F877A 16
Hình 11: Sơ đồ khối Timer0 20
Hình 12: Sơ đồ khối Timer1 21
Hình 13: sơ đồ khối timer 2 22
Hình 14: sơ đồ khối PWM 23
Hình 15: xung ra từ PWM 23
Hình 16: Sơ đồ khối ADC 25
Hình 17: Sơ đồ đầu đưa điện áp vào 29
Hình 18: Sơ đồ hệ rơle chọn nguồn 29
Hình 19: sơ đồ ổn áp 30
Hình 20: Cấu tạo bên trong của LM2576 32
Hình 21: Sơ đồ mạch nguồn cho motor 32
Hình 22: Sơ đồ khối nạp Pin 33
Hình 23: Cách ly quang 34
Hình 24: sơ đồ bộ phận cảm nhận vật cản 35
Trang 5Hình 26: sơ đồ ghép nối quang trở 36
Hình 27: Dạng Xung mã hoá Manchester 37
Hình 28: Khung dữ liệu RC5 khi nhận 37
Hình 29: Cấu trúc 1 bộ phát hồng ngoại 38
Hình 30: Sơ đồ bộ phát 39
Hình 31: Sơ đồ cấu tạo bên trong của GP1U52X 39
Hình 32: Hình ảnh cảm biến GP1U52X 40
Hình 33: Sơ đồ ghép nối phím bấm với Vi điều khiến 41
Hình 34: Sơ đồ hiển thị LED 7 đoạn 42
Hình 35: Sơ đồ ghép nối loa 42
Hình 36: Sơ đồ nguyên lý và nguyên tắc hoạt động của mạch cầu H 43
Hình 37: Mạch cầu H được thiết kế với transistor trường MOSFET 44
Hình 38: Sơ đồ chân IC L298 44
Hình 39: Sơ đồ ghép nối với vi điều khiển 45
Hình 40: mô tả IRF540 46
Hình 41: sơ đồ mạch điều khiển motor quét 46
Hình 42: ví dụ về đáp ứng của hệ thống thời gian thực 49
Hình 43: Lưu đồ thuật toán chương trình chính 53
Hình 44: Sơ đồ trạng thái Robot 54
Danh Mục Bảng BiểuBảng 1: Cấu hình Cổng A 17
Bảng 8: Cấu hình xung nhịp cho ADC 25
Bảng 9: Mô tả các tài nguyên được sử dụng 28
Bảng 10: Giá trị ADC khi đọc phím bấm 41
Bảng 11: Trạng thái motor 43
Bảng 12: Mô tả IC L298 45
Trang 6Chương 1: Tổng quan
1.1 Đặt vấn đề:
Ngày nay cùng với sự phát triển của kinh tế xã hội Việt Nam việc đưa robot vào trong các hoạt động sản xuất công nghiệp đã trở nên phổ biến Tuy nhiên đối với các robot phục vụ trong gia đình, robot giải trí – gọi chung là các robot dịch vụ còn là một lĩnh vực khá mới mẻ và ít được quan tâm Cùng với sự phát triển của nền kinh tế, đời sống người dân tăng cao, giờ đây các loại máy giặt, máy rửa bát, máy hút bụi xuất hiện ngày càng nhiều trong các gia đình, giúp giải phóng bớt gánh nặng của người phụ nữ Tuy nhiên với nhịp sống ngày càng nhanh như hiện nay thì việc xuất hiện các robot phục vụ tự động trong gia đình đang trở nên cần thiết hơn Sự xuất hiện của Robot cleanmate 365 – một robot hút bụi thông minh tại Việt Nam trong những năm gần đây, cho thấy nhu cầu cầu sử dụng robot thông minh trong gia đình không phải là nhỏ, và cho thấy thị trường tiềm năng trong lĩnhvực còn mới mẻ này.
Bên cạnh đó ta cũng thấy ngày càng nhiều cải tiến, nâng cấp trong lĩnh vực vi xử lý Các bộ vi điều khiển, vi xử lý xuất hiện trên thị trường rất đa dạng, tốc độ xử lýngày một cao, tính năng hỗ trợ ngày càng mạnh mẽ Có thể đưa ra đây những cái tên tiêu biểu như các vi điều khiển họ AVR của Atmel, vi điều khiển họ PIC của Microchip, Psoc của Cypress, ARM, và các loại FPGA… Đó là điều khiện thuận lợi để phát triển các hệ thống nhúng đa dạng hơn, thông minh hơn.
Trong xu thế cạnh tranh, các hãng phát triển vi mạch cố gắng tăng mật độ tích hợptrên vi mạch ngày càng cao, và hạ giá thành đến mức thấp Người sử dụng có thể dễ dàng sở hữu một bộ vi xử lý tốc độ cao giá rẻ, các công cụ phát triển, tài liệu liên quan có thể dễ dàng tìm được Vì vậy giá thành cho sản phẩm cuốI cùng cũng được giảm.
Nhiệm vụ bài khoá luận này là khảo sát tính năng của robot Cleanmate365, từ đó hoàn thiện và phát triển 1 robot có tính năng tương tự như robot Cleamate365, dựatrên vi điều khiển PIC.
Trang 71.2 Giới thiệu về Robot Cleamate:
Cleanmate365 là một robot hút bụi thông minh được chế tạo bởi hãng Metapo, Hoa Kỳ Không giống như các loại máy hút bụi thông thường, Cleanmate365 thực hiện công việc hút bụi một cách hoàn toàn tự động theo chương trình đã được lập sẵn Cleanmate thích hợp cho các gia đình và văn phòng có nền nhà gỗ , thảm, đá hoa Với kích thước nhỏ gọn cleanmate365 có thể di chuyển hết cả phòng, những nơi mà máy hút bụi thông thường không với vào được như gầm giường, gầm ghế…
Được mệnh danh là máy hút bụi thông minh, CleanMate 365 có thiết kế nhỏ gọn với đường kính 36 cm và nặng 2,7kg, bao gồm một cổng hút dài và hệ thống chổi quét lô tròn và chổi quét cạnh, khi di chuyển máy sẽ xới bụi và cổng hút sẽ hút hết bụi bẩn Chính vì vậy mà động cơ hút bụi không cần có công suất lớn như máy hútbụi thông thường.
Các chức năng nổi bật của Cleanmate365: Điều khiển được từ xa bằng remote control, tự cảm nhận tránh vật cản, làm việc trên bậc cầu thang mà không bị rơi, dichuyển theo 5 dạng quỹ đạo khác nhau.
Hình 1: Robot Cleaner 365 do Hãng Metapo chế tạo
Trang 8Chương 2: Cơ sở lý thuyết về hệ thống robot thông minh
2.1 Khái Niệm Về Robot :
Nguyên gốc của một từ La Tinh là robota có nghĩa là người tạp dịch Như vậy mục đích ra đời của robot là thay thế con người làm 1 số công việc nào đó.
Robot hay người máy là một loại máy có thể thực hiện những công việc một cách tự động bằng sự điều khiển của máy tính.
Robot là một tác nhân cơ khí, nhân tạo, ảo, thường là một hệ thống cơ khí-điện tử.Với sự xuất hiện và chuyển động của mình, robot gây cho người ta cảm giác rằng nó giác quan giống như con người Từ "robot" (người máy) thường được hiểu với hai nghĩa: robot cơ khí và phần mềm tự hoạt động.
Ngày nay, người ta vẫn còn đang tranh cãi về vấn đề: “Một loại máy như thế nào thì đủ tiêu chuẩn để được gọi là một robot?” Một cách gần chính xác, robot phải có một vài (không nhất thiết phải đầy đủ) các đặc điểm sau đây:
Không phải là tự nhiên, tức là do con người sáng tạo ra.
Có khả năng nhận biết môi trường xung quanh.
Có thể tương tác với những vật thể trong môi trường.
Có sự thông minh, có khả năng đưa ra các lựa chọn dựa trên môi trường và được điều khiển một cách tự động theo những trình tự đã được lập trình trước.
Có khả năng điều khiển đuợc bằng các lệnh để có thể thay đổi tùy theo yêu cầu của người sử dụng.
Có thể di chuyển quay hoặc tịnh tiến theo một hay nhiều chiều.
Có sự khéo léo trong vận động Sau đây là một số định nghĩa về robot :
Tiêu chuẩn quốc tế ISO 8373 định nghĩa robot như sau: “Đó là một loại máy móc được điều khiển tự động, được lập trình sẵn, sử dụng vào nhiều
Trang 9mục đích khác nhau, có khả năng vận động theo nhiều hơn 3 trục, có thể cố định hoặc di động tùy theo những ứng dụng của nó trong công nghiệp tự động.”
Joseph Engelberger, một người tiên phong trong lĩnh vực robot công nghiệpnhận xét rằng: “Tôi không thể định nghĩa robot, nhưng tôi biết loại máy móc nào là robot khi tôi nhìn thấy nó!!”.
Từ điển Cambridge trực tuyến định nghĩa robot rằng rằng: “Đó là một loại máy có thể thực hiện những công việc một cách tự động bằng sự điều khiểncủa máy tính”.
Người máy hay Robot là công cụ cơ điện tử, thủy lực, nhân tạo, ảo, thay thế con người trong công nghiệp hay môi trường nguy hiểm Robot còn là công cụ để giúp con người giải trí, tìm hiểu khoa học.
Ta có thể thấy định nghĩa về robot là 1 định nghĩa “mở”, nghành công nghiệp robot ngày càng phát triển, con người sẽ được chứng kiến sự ra của nhiều loại robot hơn nữa.
2.2 Phân Loại Robot :
Có rất nhiều định nghĩa cũng như cách phận loại robot Sau đây là một số cách phân loại robot.
Theo Viện Robotics Hoa Kỳ(Robotics Institute of America - RIA) thì có 4 loại robot như sau:
Robot vân hành với sự điều khiển của con người.
Tự vận hành với chu trình được định trước.
Robot khả trình, điều khiển được với quỹ đạo liên tục
Robot có khả năng tự thu nhận thông tin từ môi trường để đưa ra chuyển động thông minh
Theo Hiệp Hội Robot Nhật Bản :
Robot vận hành với sự điều khiển của con người.
Robot vận hành với trình tự cố định.
Robot vận hành với trình tự được điều khiển đơn giản.
Trang 10 Playback Robot, Robot được lập trình sẵn nhiều cách chuyển động.
Robot điều khiển bằng số với các tác vụ được lập sẵn.
Robot thông minh : có thể tự hiểu được môi trường để hành động hoàn thành tác vụ.
Ngoài ra còn các cách phân loại robot theo hình dáng và chức năng của robot ví dụnhư: robot công nghiệp, tay máy, robot giống người, robot mo phỏng động vật …
2.3 Các bộ phận của robot di động thông minh :
Một robot thường bao gồm 3 bộ phận: bộ phận cảm nhận, bộ phận điều khiển và bộ phận chấp hành.
Bộ phận cảm nhận : thu nhận thông tin từ môi trường Bao gồm các sensor nội và sensor ngoại
Bộ phận điều khiển : nhận thông tin từ bộ phận cảm nhận từ đó đưa ra tín hiệu điều khiển bộ phận chấp hành Bao gồm bộ xử lý và bộ nhớ.
Bộ phận chấp hành : thực hiện hành động của robot Nhận thông tin điều khiển từ bộ phận điều khiển Trong nhiều trường hợp bộ phận chấp hành nhận thông tin thẳng từ bộ phận cảm nhận.
Điềukhiển(gồm vixử lý vàbộ nhớ)
Môi Trường
Trang 112.4 Các mô hình điều khiển robot:
2.4.1 Mô hình kiểu phản xạ :
Hình 3: Mô hình kiểu phản xạ
Mô hình này không có khối điều khiển Thông tin từ khối cảm nhận được đưa thẳng tới khối chấp hành, từ đó cơ cấu chấp hành hoạt động Mô hình này có ưu điểm là tốc độ đáp ứng nhanh.
2.4.2 Mô hình “sens – plan – act “ :
Hình 4: Mô hình tuần tự
Ở mô hình này, thông tin của môi trường được cảm nhận Thông tin này được truyền tới bộ phận điều khiển, bộ phận điều khiển sẽ phân tích và từ đó đưa ra thông tin điều khiển tới bộ phận chấp hành Mô hình này có tốc độ đáp ứng chậm.
2.4.3 Mô hình kiểu lai :
Hình 5: Mô hình laiMô hình này là mô hình kết hợp giữa 2 kiểu mô hình trên
Lập kế hoạch
Trang 12Mô hình lai bao gồm nhiều cặp “cảm nhận – châp hành” hoạt động như mô hình phản xạ, tốc độ đáp ứng khá nhanh Bên cạnh đó có 1 khối điều khiển lập kế hoạchcho toàn bộ tác vụ của robot.
Chương 3: Thiết kế Robot cleanmate – Phần cơ khí
Robot bao gồm :
Đế hình tròn bằng nhựa mica đường kính 38 cm
Hộp hút bụi: chổi quét, hộp đựng rác, nắp đậy Chổi quét hoạt động bởi 1 động cơ chổi than.
Vành dò vật cản: là 1 vành tròn uốn bằng nhôm, lắp phía trước robot.
Bánh xe phát động: tiện bằng nhự có vành cao su, đường kính 7cm Cặp động cơ phát động là 2 động cơ chổi than có sô vòng quay là 100 vòng / phút.
Hình 6: Đế Robot nhìn từ trên xuống
HỘP ĐỰNG RÁC
20 cm38 cm
Trục đỡ vànhdò vật cản
Bánh xe phát động
Trang 13Hình 7: Đế robot nhìn từ dưới
Hình 8: Motor và bánh xe phát động
Chổi Qué
Bánh xephát động20 cm
Bánh xethụ độngSensor dò
độ cao
38cm
Trang 14Chương 4: Thiết kế mạch điện tử
4.1 Tổng quan về mạch điện tử :Mạch điện tử bao gồm các khối lớn sau:
Khối nguồn:
o Nguồn lấy từ ăcquy (khi robot hoạt động), điện lưới thông qua adapter (khi robot sạc pin).
o Khối nạp ăcquy.
o Khối nguồn cho các động cơ.
o Khối nguồn cho vi điều khiển, sensor.
Khối giao tiếp:
o Cảm biến dò vật cản phía trước.
Mạch công suất: Mạch điều khiển động cơ.
Khối điều khiển trung tâm: Sử dụng vi điều khiển PIC16F877A của hãng Microchip.
4.2 Khối điều khiển và giới thiệu PIC16F877A:
Vi điều khiển được sử dụng trong robot là PIC16F877A do hãng Microchip sản xuất Các vi điều khiển thuộc dòng PIC tỏ ra rất ổn định, các khối chức năng đượchỗ trợ đầy đủ và giúp người dùng tiết kiệm thời gian thiết kế mạch cũng như lập trình Hiện nay các loại vi điều khiển dòng PIC được sử dụng rất nhiều trong công nghiệp Tiêu biểu nhất trong dòng vi điều khiển cấp trung của họ PIC là 16F877A.
Trang 15Hình 9: Sơ đồ chân của PIC16F877A4.2.1 Hight-performance RISC CPU
Cấu trúc tập lệnh đơn giản: 35 lệnh đơn. CPU thiết kế theo kiến trúc RISC.
Tần số hoạt động lớn nhất: DC – 20MHz. Flash Program Memory: 8K x 14 words. Data Memory (RAM) : 368 x 8 bytes. EEPROM Data Memory: 256 x 8 bytes. Nạp chương trình và sửa lỗi onboard. Chế tạo theo công nghệ CMOS. Hỗ trợ nhiều tính năng mạnh mẽ
Trang 16Hình 10: Sơ Đồ KhốI PIC16F877A4.2.2 Các cổng vào ra :
Vi điều khiển PIC16F877A có 5 cổng vào ra bao gồm:A, B, C, D, E Trong đó: Cổng A:
o Vào ra 6 bit, có định hướng Khai báo định hướng vào ra ở thanh ghiTRISA Nếu bit TRISAx=1 thì chân RAx sẽ được đinh nghĩa là lốivào và ngược lại.
o Thanh ghi lưu trạng thái các chân của cổng A là thanh ghi PORTA.
Trang 17o Chân RA4 của cổng A được có thể được sử dụng để đưa dao độngđầu vào cho Timer0 (T0CKI).
o Các chân còn lại của cổng A có thể được khai báo để được dùng nhưlối vào tương tự Các thanh ghi liên quan ADCON0, ADCON1.o
Bảng 1: Cấu hình Cổng A Cổng B:
o Vào ra số có độ rộng 8bit, có định hướng Khai báo định hướng vàora ở thanh ghi TRISB Nếu bit TRISBx=1 thì chân RBx sẽ được đinhnghĩa là lối vào và ngược lại.
o Thanh ghi lưu trạng thái các chân của cổng B là thanh ghi PORTBo 3 chân của cổng B là : RB3,RB6,RB7 còn được sử dụng làm chân
lập trình PGM, PGC,PGD.
o 4 chân từ RB7:RB4 có ngắt on-change.
Bảng 2: Cấu hình Cổng B
Trang 18 Cổng C :
o Vào ra số có độ rộng 8bit, có định hướng Khai báo định hướng vàora ở thanh ghi TRISC Nếu bit TRISCx=1 thì chân RCx sẽ được đinhnghĩa là lối vào và ngược lại.
o Thanh ghi lưu trạng thái các chân của cổng C là thanh ghi PORTC.o Các chân của cổng C đều có bộ đệm triger smitt.
o Cổng C còn được sử dụng cho 1 số khối chức năng khác
Bảng 3: Cấu hình Cổng C Cổng D :
o Vào ra số có độ rộng 8bit, có định hướng Khai báo định hướng vàora ở thanh ghi TRISD Nếu bit TRISDx=1 thì chân RDx sẽ đượcđinh nghĩa là lối vào và ngược lại.
o Thanh ghi lưu trạng thái các chân của cổng D là thanh ghi PORTD.
Bảng 4: Cấu hình Cổng D Cổng E :
o Cổng E chỉ có 3 chân vào ra, có bộ đệm triger smitt.
Trang 19o Cổng E có thể được dùng như lối vào ra số hoặc tương tự Thiết lậptại các thanh ghi TRISE, ADCON1.
Bảng 5: Cấu hình Cổng E4.2.3 Các Khối Timer:
Vi điều khiển PIC16F877A có 3 bộ timer: Timer0:
o Là bộ đếm 8bit, có thể ghi đọc.
o Timer0 có 2 chế độ hoạt động là : định thời hoặc đếm.
o Khi hoạt động Timer đếm tiến từ giá trị được ghi trong thanh ghiTMR0 đến 256 Khi đếm đến 256 cờ tràn TMR0IF sẽ đc bật lên.o Time = (FOSC/4) x Prescale x ( 256 – TMR0 )
o Bit T0CS : chọn nguồn dao động cho Timer0
=1 nguồn dao động được đưa vào từ chân T0CKI.(Chế độđếm)
=0 nguồn dao động hệ thống
o Bit T0SE : Ở chế độ đếm, chọn sườn xung =1 sườn xuống
=0 sườn lên.
Trang 20o Bit PSA : Chọn prescale
=1 prescale được dùng cho watchdog. =0 prescale được dùng cho timer0.o Bit PS2:PS0 : chọn tỉ lệ chia cho Prescale
Bảng 6: Cấu hình Presacle Timer0
Hình 11: Sơ đồ khối Timer0
Trang 21 Timer1:
Hình 12: Sơ đồ khối Timer1
o Là bộ đếm 16 bit, có thể ghi đọc Giá trị timer được lưu trong 2thanh ghi là TMR1L và TMR1H.
o Khác với timer0, timer1 có bit bật và tắt timer.
o Timer1 có thể được dùng để đinh thờI cho khối CPP.
o Khi Timer 1 được bật, timer sẽ đếm từ giá trị được ghi trong 2 thanhghi TMR1L và TMR1H tới 0xFFFF, khi đó cờ tràn TMR1IF đượcbật.
o Time = (FOSC/4) x Prescale x ( 0xFFFF – (( TMR1H x 0xFFFF ) +TMR1L)).
o Bit T1OSCEN: Chọn nguồn dao động =1: sử dụng dao động ngoài.
Trang 22 =1 Bật. =0 Tắt.
o Bit T1CKPS1: T1CKPS0 : Chọn số chia cho prescale. 0:0 chia 1
0:1 chia 2 1:0 chia 4 1:1 chia 8 Timer2:
Hình 13: sơ đồ khối timer 2
o Là bộ đếm 16 bit, có thể ghi đọc Giá trị timer được lưu trong 2thanh ghi là TMR1L và TMR1H.
o Timer2 có bit bật và tắt timer.
o Timer1 có thể được dùng để đinh thời cho khối PWM.
o Khi Timer 1 được bật, timer sẽ đếm từ giá trị được ghi trong 2 thanhghi TMR2L và TMR2H tới 0xFFFF, khi đó cờ tràn TMR2IF đượcbật.
o Timer 2 có cả prescale lẫn postscale.
Trang 23o Các bit TOUTPS3: TOUTPS0 : Chọn thỉ lệ chia cho postscale.o TMR2ON : bit bật tắt timer2.
o T2CKPS1: T2CKPS1 : Chọn tỉ lệ cho prescale.4.2.4 Khối PWM:
PIC16F877A có 2 khốI PWM nằm trong 2 khối CCP
Trang 24 Các bước cài đặt cho PWM
o Ghi chu kì vào thanh ghi PR2.
o Ghi độ rộng xung vào 2 thanh ghi CCPR1L và CCP1CON<5:4>o Chọn chân ra là chân RC2 Bằng cách xoá bit TRISC2.
o Ghi giá trị prescale của timer2 Cho phép Timer2.o Cấu hình CCP để sử dụng PWM.
Bảng 7: Cấu hình khối CCP4.2.5 Khối ADC:
Khối ADC của PIC16F877A là loại ADC xấp xỉ liên tiếp có 10 bit lối ra Điện áp tham chiếu lựa chọn được bằng phần mềm, có thể là điện áp hệ thống, hoặc điện áp tham chiếu ngoài được đưa và từ chân RA2 và RA3.
Khi việc biến đổi A/D hoàn tất cờ ADIF sẽ được bật.Khối biến đổi A/D có 4 thanh ghi là :
Kết quả biến đổi Byte cao: ADRESH Kết quả biến đổi Byte thấp: ADRESL
Hai thanh ghi điều khiển: ADCON0 và ADCON1.
Trang 25Hình 16: Sơ đồ khối ADC Thanh ghi ADCON0:
o Chọn nhịp xung đồng hồ cho ADC.
Bảng 8: Cấu hình xung nhịp cho ADCo Các bit CHS2:CHS1:CHS0 : chọn kênh cho ADC
000 : kênh 0 ( AN0 ) 001: kênh 1 ( AN1 ) 010: kênh 2 ( AN2 )
Trang 26 011: kênh 3 ( AN3 ) 100: kênh 4 ( AN4 ) 101: kênh 5 ( AN5 ) 110: kênh 6 ( AN6 ) 111: kênh 7 ( AN7 )
o Bit GO/DONE : khi ADGO=1, ADC bắt đầu biến đổi.o Bit ADON: bật tắt ADC.
4.2.6 Khối truyền thông nối tiếp UART:
Khối UART có thể được cấu hình để hoạt động ở chế độ song công hoặcbán song công.
Chuẩn điện : bit 1 tương ứng mức điện áp 5v, bit 0 tương ứng với điện áp0v.
Data 7 bit hoặc 8 bit Ở đầu khung dữ liệu có 1 Bit start, cuối khung dữ liệucó 1 hoặc 2 bit stop.
Khi nhận dữ liệu cờ ngắt RCIE và RCIF sẽ đc bật. Tốc độ truyền được ghi vào thanh ghi SPBRG.
Cụ thể các tài nguyên được dùng trình bày ở bảng sau
Trang 27Mô tả chức năng các chân vào ra được sử dụng
Trang 28Tên chân Chân#
CDS/RA2 4 I Kênh 2 của bộ A/D để cảm nhậnmức độ sáng tối của môi trườngV1sen/RA3 5 I
Kênh 3 của bộ A/D để theo dõi mứcđiện áp trên pin trong quá trìnhCleaner hay Charger
SW/RB0 33 I Cảm nhận vật cản Foto_Dio/RB1 34 I Cảm nhận độ caoPGM/Mo_sing/RB3 36
PGM P Lập trình ICSP ở mức thế thấpMo_Sing O Điều khiển motor quét
Speak/RB4 37 O Tín hiệu điều khiển loaPGC 39 P Chân Clock của ICSPPGD 40 P Chân Data của ICSP
Trang 29O Các tín hiệu điều khiển chuyển độngbánh xe
A, B, C, D/RDx
O Dữ liệu về số được hiển thịPORTE
T1/RE0 8 O Điều khiển bật/tắt led 7 đoạn 1T2/RE1 9 O Điều khiển bật/tắt led 7 đoạn 2T3/RE2 10 O Điều khiển bật/tắt các led đơn
4.3 Khối quản lý nguồn :
4.3.1 Khối chuyển đổi nguồn nuôi:
Nguồn cung cấp lối vào cho CleanMate có thể lấy từ pin hoặc adaptor tùy thuộc vào chế độ hoạt động của robot là Cleaner hay Charger, do vậy cần có hệ thống rơle để chuyển đổi giữa hai loại nguồn này
Hình 17: Sơ đồ đầu đưa điện áp vào.
Trang 30 Hình A: điện áp được lấy trực tiếp từ pin hoặc adaptor qua các diode bảo vệđưa vào mạch rơle ở hình B.
o Việc sử dụng rơle sẽ tránh được sự ngắn mạch giữa pin và adaptor.
Hình 18: Sơ đồ hệ rơle chọn nguồn
4.3.2 Khối ổn áp:Tạo điện áp 5 V :
o sử dụng IC7805
o Điện áp 5V được sử dụng để nuôi vi điều khiển, IC giải mã 74LS47,khối logic của L298, các khối cảm biến, loa và các led hiện thị.
Trang 31Hình 19: sơ đồ ổn áp.
Tạo nguồn cho các motor:
o Để đảm bảo cho robot di chuyển một cách đồng đều khi có sự thănggiáng của điện áp trên nguồn hoặc khi sử dụng một nguồn điện khác,ta sử dụng thêm một mạch ổn áp để cung cấp nguồn cho các motor o Các yêu cầu cho bộ nguồn motor:
Điện áp ra trên 10V và có thể điều chỉnh được Dòng cung cấp có thể đạt tới 3A
o Đáp ứng các tiêu chí trên và một vài yếu tố khác, ở đây ta sử dụngmạch ổn áp theo kiểu Switching Step-Down dùng IC LM2576.o Lựa chọn nguồn Switching thay cho nguồn kiểu tuyến tính (linear)
sẽ thu được nhiều ưu điểm quan trọng sau: Hiệu suất làm việc cao (có thể tới 88%)
Có thể cung cấp dòng ra lớn (điều mà hiếm IC linear nào cóthể đạt được hoặc sẽ phải dùng tản nhiệt lớn, chằng hạn nhưLM138 - 5A, LM150 – 3A, LM317 – 1.5A)
Công suất tiêu tán nhiệt ít
Đây là kết luận thu được sau một quá trình sử dụng LM317 Lúc đầu hệ thống dựđịnh sẽ sử dụng LM138 hoặc LM150, tuy nhiên hai loại IC này không có bán trênthị trường, do vậy đã chuyển sang dùng 2 IC LM317 mắc song song để tạo ra dònglớn hơn (mới chỉ cung cấp cho 2 động cơ bánh xe mà không có động cơ chổiquét) Điều đó cũng đồng nghĩa với việc phải sử dụng tản nhiệt có kích thước lớn.Nhưng với LM2576 thì hoàn toàn không cần đến tản nhiệt (nếu cũng cung cấp cho2 động cơ bánh xe) hoặc dùng tản nhiệt nhỏ (nếu cung cấp cho cả 3 motor).
Trang 32Thực tế ta cũng có thể sử dụng LM317 để tạo nguồn ổn áp theo kiểu Switchingnhưng sẽ yêu cầu nhiều thành phần bên ngoài hơn là sử dụng LM2576.
Tham khảo mạch của CleanMate 356 ta cũng thấy có một IC SwitchingKA34063A, IC này có thể hoạt động theo 3 chế độ Buck, Boost, Inverter với dòngtối đa là 1.5A
- Bộ dao động bên trong với tần số không đổi 52kHz- Hiệu suất cao
- Bảo vệ quá dòng, quá nhiệt
Hình 20: Cấu tạo bên trong của LM2576
Trang 33Hình 21: Sơ đồ mạch nguồn cho motorCông thức tính điện áp ra:
Trong đó: VREF = 1.23V, R24 = 100, R25 = 1k
Như vậy điện áp ổn định lối ra được quyết định thông qua điện áp phản hồi về chân 4 (FB- Feed Back) Điện áp này sau đó được so sánh với một điện áp tham chiếu chuẩn (VREF) để điều khiển độ dẫn của một transistor trong LM2576 sao cho điện áp ra luôn luôn gần với điện áp mong muốn.
Lựa chọn các linh kiện:
Diode Schottky D16: FR306 (3A)
Cuộn cảm L1: dùng dây đồng cuốn đầy trên lõiferit hình xuyến (hình bên)
Biến trở R43 10k được xoay chỉnh sao cho điện áptrên hai cực của motor là 9V Khi đó Vmotor =10.25V Theo công thức trên ta tính được P1 =7.23k.
4.3.3 Khối nạp Pin:
Khối nạp Pin sử dụng thêm 1 bộ chuyển đổI AD/DC, đầu vào 220V – 50hz đầu ra là 22VDC- 1A.