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ĩnh vực còn mới mẻ này.
Tài liệu Robot CleanMate – Robot hút bụi Tóm tắt nội dung luận văn Nội dung luận văn vấn đề tìm hiểu nguyên tắc hoạt động cấu tạo robot CleanMate 365 hãng Metapo,USA Từ thiết kế, xây dựng robot có chức giống CleanMate 365 Sau hồn thiện phát triển thêm chức cho robot Luận văn bao gồm chương Chương đặt vấn đề giới thiệu Robot Cleanmate 365 Chương sở lý thuyết robot di động thông minh Các chương 3,4,5 thiết kế chi tiết robot khí, điện tử, phần mềm điều khiển Chương báo cáo kết trình xây dựng, hoàn thiện Robot, đề hướng phát triển cho robot Phần phụ lục giới thiệu công cụ sử dụng trình xây dựng robot mã nguồn tham khảo chương trình điều khiển robot Mục Lục Tài liệu Robot CleanMate – Robot hút bụi Mục Lục Danh Mục Hình Vẽ Danh Mục Bảng Biểu Chương 1: Tổng quan 1.1 Đặt vấn đề: 1.2 Giới thiệu Robot Cleamate: Chương 2: Cơ sở lý thuyết hệ thống robot thông minh 2.1 Khái Niệm Về Robot : 2.2 Phân Loại Robot : 2.3 Các phận robot di động thông minh : 2.4 Các mô hình điều khiển robot: 2.4.1 Mơ hình kiểu phản xạ : 10 2.4.2 Mơ hình “sens – plan – act “ : 10 2.4.3 Mơ hình kiểu lai : 10 Chương 3: Thiết kế Robot cleanmate – Phần khí 11 Chương 4: Thiết kế mạch điện tử 13 4.2 Khối điều khiển giới thiệu PIC16F877A: 13 4.2.1 Hight-performance RISC CPU 14 4.2.2 Các cổng vào : 15 4.2.3 Các Khối Timer: 18 4.2.4 Khối PWM: 22 4.2.5 Khối ADC: 23 4.2.6 Khối truyền thông nối tiếp UART: 25 4.2.7 Các tài nguyên PIC sử dụng việc xây dựng khối điều khiển cho robot: 25 4.3 Khối quản lý nguồn : 27 4.3.1 Khối chuyển đổi nguồn nuôi: 27 4.3.2 Khối ổn áp: 28 4.3.3 Khối nạp Pin: 31 4.4 Hệ thống cảm nhận vật cản: 32 4.5 Hệ thống sensor gầm cảm nhận độ cao: 33 4.6 Cảm nhận sáng tối: 34 4.7 Khối giao tiếp điều khiển từ xa hồng ngoại: 34 4.7.1 Nguyên lý hoạt động: 35 4.7.2 Bộ Phát : 36 4.7.3 Phần thu: 37 4.8 Bàn phím: 39 4.9 Hiển thị LED đoạn Loa: 40 4.9.1 Hiển thị LED đoạn : 40 4.9.2 Loa : 41 4.10 Mạch điều khiển động : 41 4.10.1 Giới thiệu mạch cầu H: 41 4.10.2 Điều khiển motor với IC L298: 42 4.10.3 Điều khiển Motor chổi quét: 44 4.11 Thiết kế PCB: 45 4.11.1 Phần mềm thiết kế mạch in PCB DXP Altium Designer: 45 4.11.2 Thiết kế mạch điện môi trường Altium Designer: 46 4.11.3 Kết nhận xét: 46 Chương 5: Phần mềm điều khiển Robot 47 Tài liệu Robot CleanMate – Robot hút bụi 5.1 Lập trình cho hệ thống thời gian thực: 47 5.2 Bài toán di chuyển robot: 49 5.3 Tránh vật độ cao: 50 5.4 Tìm chỗ sáng: 50 5.5 Chương trình điều khiển robot: 51 5.5.1 Chương trình điều khiển robot: 51 Chương trình điều khiển robot diên tả lưu đồ sau, Cleaner hàm hoạt động robot, charger hàm nạp pin 51 5.5.2 Sơ đồ trạng thái robot trình hoạt động: 52 Chương 6: Kết thực nghiệm hướng phát triển đề tài 53 6.1 Kết thực nghiệm: 53 6.2 Hướng phát triển đề tài: 54 6.2.1 Tìm trạm sạc: 54 6.2.2 Tạo tiếng nói cho robot: 56 6.2.3 Lập trình thời gian biểu: 56 Phụ Lục 56 Danh Mục Hình Vẽ Hình 1: Hình 2: Hình 3: Hình 4: Hình 5: Hình 6: Hình 7: Hình 8: Hình 9: Hình 10: Hình 11: Hình 12: Hình 13: Hình 14: Hình 15: Hình 16: Hình 17: Hình 18: Hình 19: Hình 20: Hình 21: Hình 22: Hình 23: Hình 24: Hình 25: Hình 26: Hình 27: Hình 28: Hình 29: Hình 30: Robot Cleaner 365 Hãng Metapo chế tạo Hình Ba phận robot Mô hình kiểu phản xạ 10 Mơ hình 10 Mơ hình lai 10 Đế Robot nhìn từ xuống 11 Đế robot nhìn từ 12 Motor bánh xe phát động 12 Sơ đồ chân PIC16F877A 14 Sơ Đồ KhốI PIC16F877A 15 Sơ đồ khối Timer0 19 Sơ đồ khối Timer1 20 sơ đồ khối timer 21 sơ đồ khối PWM 22 xung từ PWM 22 Sơ đồ khối ADC 24 Sơ đồ đầu đưa điện áp vào 28 Sơ đồ hệ rơle chọn nguồn 28 sơ đồ ổn áp 29 Cấu tạo bên LM2576 30 Sơ đồ mạch nguồn cho motor 31 Sơ đồ khối nạp Pin 32 Cách ly quang 32 sơ đồ phận cảm nhận vật cản 33 Sơ đồ điều chế tín hiệu phát 34 sơ đồ ghép nối quang trở 34 Dạng Xung mã hoá Manchester 35 Khung liệu RC5 nhận 36 Cấu trúc phát hồng ngoại 36 Sơ đồ phát 37 Tài liệu Robot CleanMate – Robot hút bụi Hình 31: Hình 32: Hình 33: Hình 34: Hình 35: Hình 36: Hình 37: Hình 38: Hình 39: Hình 40: Hình 41: Hình 42: Hình 43: Hình 44: Sơ đồ cấu tạo bên GP1U52X 38 Hình ảnh cảm biến GP1U52X 38 Sơ đồ ghép nối phím bấm với Vi điều khiến 39 Sơ đồ hiển thị LED đoạn 40 Sơ đồ ghép nối loa 41 Sơ đồ nguyên lý nguyên tắc hoạt động mạch cầu H 41 Mạch cầu H thiết kế với transistor trường MOSFET 42 Sơ đồ chân IC L298 42 Sơ đồ ghép nối với vi điều khiển 43 mô tả IRF540 44 sơ đồ mạch điều khiển motor quét 44 ví dụ đáp ứng hệ thống thời gian thực 47 Lưu đồ thuật toán chương trình 51 Sơ đồ trạng thái Robot 52 Danh Mục Bảng Biểu Bảng 1: Bảng 2: Bảng 3: Bảng 4: Bảng 5: Bảng 6: Bảng 7: Bảng 8: Bảng 9: Bảng 10: Bảng 11: Bảng 12: Cấu hình Cổng A 16 Cấu hình Cổng B 16 Cấu hình Cổng C 17 Cấu hình Cổng D 17 Cấu hình Cổng E 18 Cấu hình Presacle Timer0 19 Cấu hình khối CCP 23 Cấu hình xung nhịp cho ADC 24 Mô tả tài nguyên sử dụng 27 Giá trị ADC đọc phím bấm 39 Trạng thái motor 42 Mô tả IC L298 43 Tài liệu Robot CleanMate – Robot hút bụi Chương 1: Tổng quan 1.1 Đặt vấn đề: Ngày với phát triển kinh tế xã hội Việt Nam việc đưa robot vào hoạt động sản xuất công nghiệp trở nên phổ biến Tuy nhiên robot phục vụ gia đình, robot giải trí – gọi chung robot dịch vụ lĩnh vực mẻ quan tâm Cùng với phát triển kinh tế, đời sống người dân tăng cao, loại máy giặt, máy rửa bát, máy hút bụi xuất ngày nhiều gia đình, giúp giải phóng bớt gánh nặng người phụ nữ Tuy nhiên với nhịp sống ngày nhanh việc xuất robot phục vụ tự động gia đình trở nên cần thiết Sự xuất Robot cleanmate 365 – robot hút bụi thông minh Việt Nam năm gần đây, cho thấy nhu cầu cầu sử dụng robot thơng minh gia đình khơng phải nhỏ, cho thấy thị trường tiềm lĩnh vực cịn mẻ Bên cạnh ta thấy ngày nhiều cải tiến, nâng cấp lĩnh vực vi xử lý Các vi điều khiển, vi xử lý xuất thị trường đa dạng, tốc độ xử lý ngày cao, tính hỗ trợ ngày mạnh mẽ Có thể đưa tên tiêu biểu vi điều khiển họ AVR Atmel, vi điều khiển họ PIC Microchip, Psoc Cypress, ARM, loại FPGA… Đó điều khiện thuận lợi để phát triển hệ thống nhúng đa dạng hơn, thông minh Trong xu cạnh tranh, hãng phát triển vi mạch cố gắng tăng mật độ tích hợp vi mạch ngày cao, hạ giá thành đến mức thấp Người sử dụng dễ dàng sở hữu vi xử lý tốc độ cao giá rẻ, công cụ phát triển, tài liệu liên quan dễ dàng tìm Vì giá thành cho sản phẩm cuốI giảm Nhiệm vụ khoá luận khảo sát tính robot Cleanmate365, từ hồn thiện phát triển robot có tính tương tự robot Cleamate365, dựa vi điều khiển PIC 1.2 Giới thiệu Robot Cleamate: Tài liệu Robot CleanMate – Robot hút bụi Cleanmate365 robot hút bụi thông minh chế tạo hãng Metapo, Hoa Kỳ Không giống loại máy hút bụi thông thường, Cleanmate365 thực công việc hút bụi cách hồn tồn tự động theo chương trình lập sẵn Cleanmate thích hợp cho gia đình văn phịng có nhà gỗ , thảm, đá hoa Với kích thước nhỏ gọn cleanmate365 di chuyển hết phòng, nơi mà máy hút bụi thông thường không với vào gầm giường, gầm ghế… Được mệnh danh 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 nặng 2,7kg, bao gồm cổng hút dài hệ thống chổi qt lơ trịn chổi quét cạnh, di chuyển máy xới bụi cổng hút hút hết bụi bẩn Chính mà động hút bụi khơng cần có cơng suất lớn máy hút bụi thông thường Các chức bật Cleanmate365: Điều khiển từ xa remote control, tự cảm nhận tránh vật cản, làm việc bậc cầu thang mà không bị rơi, di chuyển theo dạng quỹ đạo khác Hình 1: Robot Cleaner 365 Hãng Metapo chế tạo Chương 2: Cơ sở lý thuyết hệ thống robot thông minh Tài liệu Robot CleanMate – Robot hút bụi 2.1 Khái Niệm Về Robot : Nguyên gốc từ La Tinh robota có nghĩa người tạp dịch Như mục đích đời robot thay người làm số cơng việc Robot hay người máy loại máy thực công việc cách tự động điều khiển máy tính Robot tác nhân khí, nhân tạo, ảo, thường hệ thống khí-điện tử Với xuất chuyển động mình, robot gây cho người ta cảm giác giác quan giống người Từ "robot" (người máy) thường hiểu với hai nghĩa: robot khí phần mềm tự hoạt động Ngày nay, người ta tranh cãi vấn đề: “Một loại máy đủ tiêu chuẩn để gọi robot?” Một cách gần xác, robot phải có vài (khơng thiết phải đầy đủ) đặc điểm sau đây: Không phải tự nhiên, tức người sáng tạo Có khả nhận biết mơi trường xung quanh Có thể tương tác với vật thể mơi trường Có thơng minh, có khả đưa lựa chọn dựa môi trường điều khiển cách tự động theo trình tự lập trình trước Có khả điều khiển đuợc lệnh để thay đổi tùy theo yêu cầu người sử dụng Có thể di chuyển quay tịnh tiến theo hay nhiều chiều Có khéo léo vận động Sau số định nghĩa robot : Tiêu chuẩn quốc tế ISO 8373 định nghĩa robot sau: “Đó loại máy móc điều khiển tự động, lập trình sẵn, sử dụng vào nhiều mục đích khác nhau, có khả vận động theo nhiều trục, cố định di động tùy theo ứng dụng công nghiệp tự động.” Tài liệu Robot CleanMate – Robot hút bụi Joseph Engelberger, người tiên phong lĩnh vực robot công nghiệp nhận xét rằng: “Tôi định nghĩa robot, biết loại máy móc robot tơi nhìn thấy nó!!” Từ điển Cambridge trực tuyến định nghĩa robot rằng: “Đó loại máy thực công việc cách tự động điều khiển máy tính” Người máy hay Robot cơng cụ điện tử, thủy lực, nhân tạo, ảo, thay người công nghiệp hay môi trường nguy hiểm Robot cịn cơng cụ để giúp người giải trí, tìm hiểu khoa học Ta thấy định nghĩa robot định nghĩa “mở”, nghành công nghiệp robot ngày phát triển, người chứng kiến nhiều loại robot 2.2 Phân Loại Robot : Có nhiều định nghĩa cách phận loại robot Sau số cách phân loại robot Theo Viện Robotics Hoa Kỳ(Robotics Institute of America - RIA) có loại robot sau: Robot vân hành với điều khiển người Tự vận hành với chu trình định trước Robot khả trình, điều khiển với quỹ đạo liên tục Robot có khả tự thu nhận thông tin từ môi trường để đưa chuyển động thông minh Theo Hiệp Hội Robot Nhật Bản : Robot vận hành với điều khiển người Robot vận hành với trình tự cố định Robot vận hành với trình tự điều khiển đơn giản Playback Robot, Robot lập trình sẵn nhiều cách chuyển động Robot điều khiển số với tác vụ lập sẵn Robot thơng minh : tự hiểu mơi trường để hành động hồn thành tác vụ Tài liệu Robot CleanMate – Robot hút bụi Ngoài cịn cách phân loại robot theo hình dáng chức robot ví dụ như: robot cơng nghiệp, tay máy, robot giống người, robot mo động vật … 2.3 Các phận robot di động thông minh : Một robot thường bao gồm phận: phận cảm nhận, phận điều khiển 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 sensor nội sensor ngoại Bộ phận điều khiển : nhận thông tin từ phận cảm nhận từ đưa tín hiệu điều khiển phận chấp hành Bao gồm xử lý nhớ Bộ phận chấp hành : thực hành động robot Nhận thông tin điều khiển từ phận điều khiển Trong nhiều trường hợp phận chấp hành nhận thông tin thẳng từ phận cảm nhận Môi Trường Cảm nhận Điều khiển Chấp hành (gồm vi xử lý nhớ) Robot Hình 2: Hình Ba phận robot 2.4 Các mơ hình điều khiển robot: PC Tài liệu Robot CleanMate – Robot hút bụi 2.4.1 Mơ hình kiểu phản xạ : Cảm Nhận Chấp Hành Mơ hình kiểu phản xạ Hình 3: Mơ hình khơng có khối điều khiển Thơng tin từ khối cảm nhận đưa thẳng tới khối chấp hành, từ cấu chấp hành hoạt động Mơ hình có ưu điểm tốc độ đáp ứng nhanh 2.4.2 Mô hình “sens – plan – act “ : Cảm nhận Lên kế hoạch Chấp hành Mơ hình Hình 4: Ở mơ hình này, thơng tin mơi trường cảm nhận Thông tin truyền tới phận điều khiển, phận điều khiển phân tích từ đưa thơng tin điều khiển tới phận chấp hành Mơ hình có tốc độ đáp ứng chậm 2.4.3 Mơ hình kiểu lai : Lập kế hoạch Cảm Nhận Hình 5: Chấp hành Mơ hình lai Mơ hình mơ hình kết hợp kiểu mơ hình Mơ hình lai bao gồm nhiều cặp “cảm nhận – châp hành” hoạt động mơ hình phản xạ, tốc độ đáp ứng nhanh Bên cạnh có khối điều khiển lập kế hoạch cho toàn tác vụ robot 10 Tài liệu Robot CleanMate – Robot hút bụi 5.3 Tránh vật độ cao: Vành dò vật cản hệ thống sensor gầm cho ta biết robot có gặp vật cản hay độ cao hay không Sau thuật toán tránh vật cản độ cao robot : Bước 1: Kiểm tra trạng thái sensor Nếu khơng có vật cản hay độ cao tiếp tục bước Nếu có vật cản độ cao thực bước Bước 2: Lùi lại đoạn, rẽ hướng khác Sau quay lại bước Tác vụ kiểm tra trạng thái sensor thực theo chu kì ngắt timer vi xử lý 5.4 Tìm chỗ sáng: Robot sử dụng quang trở để cảm nhận sáng tối, robot có biết vị trí thời tối hay sáng vị trí lúc trước Sau thuật tốn tìm chỗ sáng robot: Bước 1: Robot thẳng đến gặp vùng tối Chuyển sang bước Bước 2: Xoay trịn Nếu gặp vùng sáng chuyển qua bước Nếu ko chuyển sang bước Bước 3: Cho robot tiến thẳng đoạn chuyển sang bước Thuật tốn giới hạn thực khoảng thời gian xác định Do hết thời gian robot vẫn bị nhốt vùng tối 50 Tài liệu Robot CleanMate – Robot hút bụi 5.5 Chương trình điều khiển robot: 5.5.1 Chương trình điều khiển robot: Chương trình điều khiển robot diên tả lưu đồ sau, Cleaner hàm hoạt động robot, charger hàm nạp pin Bắt Đầu Khởi tạo ADC, Timer,UART, Ngắt Cleaner( ) Nguồn có từ Pin khơng ? Hình 43: Lưu đồ thuật tốn chương trình 51 Charger( ) Tài liệu Robot CleanMate – Robot hút bụi 5.5.2 Sơ đồ trạng thái robot trình hoạt động: Sau khởi tạo ADC, Timer, UART, ngắt kiểm tra nguồn từ Pin, robot bắt đầu hoạt động Trong trình hoạt động, trạng thái robot biểu diễn sơ đồ đây: Trạng thái chờ Start Stop Di chuyển không quét sàn (1) Stop Di chuyển có quét sàn (2) Bật motor quét Tắt motor quét Tránh vật cản Và bậc thang Ngắt Timer Ngắt Timer Đọc xong sensor Đọc trạng thái sensor Hình 44: Sơ đồ trạng thái Robot Hình 45: 52 Đọc xong sensor Tài liệu Robot CleanMate – Robot hút bụi Chương 6: Kết thực nghiệm hướng phát triển đề tài 6.1 Kết thực nghiệm: Sau dựng lại robot, hoạt động tương tự robot Cleanmate365 Tuy nhiên, nhiều điểm hạn chế: Do phần khí chưa tốt nên ảnh hưởng đến việc di chuyển robot chưa tốt Bánh xe phát động lắp đai cao su nên di chuyển mặt thảm gặp khó khăn Phần robot nhẹ so với phần đầu, nhiên khắc phục Hệ thống sensor gầm phát độ cao làm chưa tốt, nên đặt mặt thảm dầy, robot thường không nhận mặt sàn báo lỗi Phương hướng khắc phục nâng công suất phát led phát Phần chổi quét hoạt động chưa tốt, vận hành lâu, transistor điều khiển motor quét nóng bị cháy Robot không tự nạp điện mà cần trợ giúp người Các tính hồn thiện: Có thể lệnh cho robot phím bấm robot điều khiển từ xa Hiển thị thời gian vận hành chương trình di chuyển led đoạn Có chức hẹn cho robot Thời gian tối đa 80 phút, tối thiểu 10 phút Robot lập trình nhiều kiểu di chuyển: phản xạ, men tường hình chữ S, đa giác, xoẵn ốc, xoắn đa giác… Robot tránh vật cản bậc cầu thang Khi gần hết Pin robot tự tìm đc vị trí sáng tự động ngừng làm việc Loa kêu cảnh báo robot báo lỗi : không nhận mặt sàn, hết Pin… 53 Tài liệu Robot CleanMate – Robot hút bụi 6.2 Hướng phát triển đề tài: 6.2.1 Tìm trạm sạc: Ý tưởng: Khi hết Pin, thực xong nhiệm vụ, robot tự tìm đến vị trị định phịng dừng lại, tự động nạp đầy Pin Sau nạp đầy Pin robot lại tiếp tục cơng việc Phương pháp thực hiện: Có phương pháp Phương pháp thứ nhất: Tìm đường hồng ngoại Tại trạm sạc, ta đặt nguồn phát hồng ngoại Trên thân robot ta đặt số nguồn thu hồng ngoại Khi cần tìm trạm sạc, robot di chuyển cho nhận tín hiệu từ nguồn phát hồng ngoại, robot di chuyển thị trường nguồn phát đến trạm sạc Tuy nhiên phương pháp có số nhược điểm khó khắc phục sau: Do nguồn hồng ngoại phát xa, lại bị ảnh hưởng phản xạ khó cho robot nhận tín hiệu từ nguồn phát thị trường nguồn phát Dễ bị ảnh hưởng nhiễu gây thiết bị khác Việc lập trình cho robot nguồn hồng ngoại phức tạp thời gian Phương pháp thứ 2: Tìm đường phương pháp xử lý ảnh Tại trạm sạc, ta đánh dấu mốc để làm mẫu cho robot nhận dạng, ví dụ ta dán hình vng màu đỏ Trên robot ta đặt camera, có chức phát khơng dây, thu RF ghép nối với vi điều khiển Khi muốn tìm trạm sạc, robot di chuyển men theo tường đồng thời gửi hình ảnh thu máy tính Máy tính liên tục so sánh hình ảnh với mẫu trạm sạc có sẵn Khi phát trạm sạc, máy tính gửi tín hiệu điều khiển cho robot thơng qua máy phát sóng RF Khi nhận tín hiệu điều khiển từ máy tính, robot dừng lại thực việc nạp điện 54 Tài liệu Robot CleanMate – Robot hút bụi Phương pháp tỏ ưu điểm nhiều so với phương pháp tìm đường hồng ngoại: Robot có thêm “cái nhìn” mơi trường, từ hỗ trợ việc dẫn đường cho robot tốt Không bị ảnh hưởng nhiễu Việc có thêm camera xử lý ảnh giúp phát triển nhiều tính thơng minh cho robot ví dụ lệnh cho robot cách hiệu tay cho robot v.v… Vì khối vi điều khiển PIC16F877A có khối giao tiếp RS-232, khối lại dùng để nhận tín hiệu từ remote control Nên ghép nối thêm thu tín hiệu RF theo chuẩn RS 232 Ta khắc phục cách ghép nối thu tín hiệu RF với vi điều khiển thông qua chuyển đổi giao tiếp từ nối tiếp (serial) sang song song (parallel), sau ghép nối với vi điều khiển cổng vào (I/O port) vi điều khiển Hoặc để khắc phục điểm ta sử dụng thêm vi điều khiển Psoc để quét bàn phím, hiển thị, ghép nối với thu RF Ở ta đưa giải pháp sử dụng Psoc vi điều khiển Psoc chế tạo cơng nghệ mới, có khả cấu hình phần cứng linh hoạt, ta đặt nhiều khối UART vi điều khiển Từ giảm nhẹ cơng việc cho khối điều khiển PIC đồng thời làm tăng khả giao tiếp robot với nhiều thiết bị Bàn Phím Khối điều khiển PIC Psoc Xử lý giao tiếp LCD GP1U52X Bộ Thu RF Các thiết bị khác 55 Tài liệu Robot CleanMate – Robot hút bụi 6.2.2 Tạo tiếng nói cho robot: Ý tưởng: để robot trở nên gần gũi với người, thay tiếng kêu bip bip, robot phát tiếng nói Thực hiện: Sử dụng thẻ nhớ để lưu trữ sở giọng nói, dạng file MP3 wav Đồng thời sử dụng Chip PIC18F8550, DSPIC – Vi điều khiển cấp cao họ PIC, thực việc đọc liệu từ thẻ nhớ giải mã file audio … 6.2.3 Lập trình thời gian biểu: Chức cho phép đặt làm việc cho robot, với chức robot hoạt động hồn tồn độc lập Cơng việc người lên lịch cho robot, chẳng hạn 10h bắt đầu làm việc, sau 40 kết thúc… Phụ Lục A Giới thiệu Mplab IDE HT-PIC: Mplab IDE gói phần mềm cơng cụ cho dòng vi điều khiển PIC hãng Micro chip phát triển kèm Mplab IDE bao gồm chương trình soạn thảo dịch mã nguồn, cộng mơ phỏng, chương trình nạp cho vi điều khiển sử dụng mạch nạp ICD2 ICE Chương trình soạn thảo dịch Mplab hỗ trợ cho ngôn ngữ Assembly Để thuận tiện cho việc phát triển chương trình, hãng HiTech phát triển phần mềm HT-PIC chạy Mplab, hỗ trợ cho ngôn ngữ C loại vi điều khiển dòng PIC16 số thuộc dòng PIC18 Dùng HT-PIC Mplab, ta phát triển chương trình chương trình ngơn ngữ C, sử dụng hết cơng cụ tiện ích Mplab Ngồi HT-PIC có nhiều phần mềm biên soạn dịch chương trình cho dịng vi điều khiển PIC Tuy nhiên, HT-PIC dịch mã nguồn tối ưu nhất, HT-PIC chạy Mplab nên ta tận dụng hết tiện ích Mplab 56 Tài liệu Robot CleanMate – Robot hút bụi B Mã Nguồn: //Khoa Luan Tot Nghiep //Kim Ngoc Bach //MCU: PIC16F877A //=====Hard ware========================= //PORT A // RA0 key Analog // RA1 V1sens Vcc // RA2 CDS Analog //PORT B // RB0 SW // RB2 Speaker // RB3 Motorquet //PORT C // RC6 TX // RC7 RX //PORT D // RD0,RD1,RD2,RD3DKmotor // RD4,RD5,RD6,RD7Led7Segment //PRTD E // RE0 T1 // RE1 T2 // RE2 T3 // Thach Anh XT 4MHz //======================================= #include CONFIG(UNPROTECT & XT & PWRTEN & BOREN & WDTDIS & LVPDIS & DUNPROT & DEBUGDIS); #define tien 0b00001010; #define lui 0b00000101; #define quaytrai 0b00001001; #define quayphai 0b00000110; #define retrai 0b00001000; #define rephai 0b00000010; #define phanh 0b00000000; 57 Tài liệu Robot CleanMate – Robot hút bụi int cnt1; int cnt2; int cnt3; int t1,t2; char start; char key; char char time; sens; char mode; //========================================= void interrupt MyInt(void) { if(TMR0IF) { TMR0=96; leddisplay(); cnt1++; cnt2++; if(cnt1==4) { cnt1=0; sens=readsens(); if(sens) t1++; if(t1==100) error(); } void run(); TMR0IF=0; } if(RXIF) { bip(15); readremote(); RXIF=0; 58 Tài liệu Robot CleanMate – Robot hút bụi } } //========================================== void Init(void) { TRISD=0b00000000; TRISB=0b00001000; TRISA=0b11111111; ADCON0=0b10000001; ADCON1=0b10001110; T0CS=0; PSA=0; PS2=1; PS1=0; PS0=0; // khoi tao ADC // khai bao timer0 TMR0IF=1; PEIE=1; GIE=1; } //========================================== void leddisplay(void) { RE1=0; PORTD=(PORTD&0b00001111)|(mode*16); RE1=1; } char readsens(void) { if((RB0==0)&&(RB1==0)) else return(0); } return(1); char readadc(void) 59 Tài liệu Robot CleanMate – Robot hút bụi { char ad; ADGO=1; ad=(ADRESH1100) {PORTD=tien;t2=0;} } void ct4(void) { PORTD=tien;delay(100); PORTD=quaytrai;delay(100++); } 62 Tài liệu Robot CleanMate – Robot hút bụi void ct5(void) { // } void ct6(void) { } void quet(void) { RB3=!RB3; } //========================================== void main(void) { Init(); while(1) { if(cnt2==25) { readkey(); cnt2=0; if(start==1) {state=1;break();} } if(mode==0) {mode=readremote();} } } 63 Tài liệu Robot CleanMate – Robot hút bụi Tài Liệu Tham Khảo: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [12] [13] www.botmag.com www.cypress.com www.dientuvietnam.net www.diendandientu.com www.mathworks.com www.mircochip.com www.picvietnam.net www.roombareview.com www.wikipedia.com Trần Văn Huấn Khóa luận tốt nghiệp, xây dựng robot cleaner_D, sở tổng hợp cảm biến Đại Học Công Nghệ - ĐHQGHN 2007 Nguyễn Thiện Phúc Robot giống người Nxb KHKT Trần Quang Vinh Bài giảng Robotics – ĐH Công Nghệ - ĐHQGHN 2008 Douglas R Malcolm Robotics: An Introduction Delmar Publishers ,1988 Panos J Antsaklis and Kevin M Passino An Introduction to Intelligent and Autonomous Control Kluwer Academic Publishers, 1993 64