đồ án mô hình xe robot

26 515 0
đồ án mô hình xe robot

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

LỜI NÓI ĐẦU Trong sống đại ngày robot không xa lạ với tất người Robot xuất lĩnh vực đời sống người, từ việc đình quét dọn giúp việc, đến công việc ngành công nghiệp Nhất ngành công nghiệp điện tử robot thay người Vì để hiểu rõ robot ôn lại kiến thức trang bị nhà trường nên chúng em chọn đề tài “Mô hình xe robot”.Mô hình chúng em gồm phần phần xe di chuyển phần cánh tay robot, chúng tạo lên hình di chuyển gắp đồ vật Trong suốt trình thực đề tài chúng em nhận hướng dẫn tận tình thầy Phạm Tùng Lâm thầy cô khoa điện Chúng em xin chân thành cám ơn thầy cô Tuy nhiên trình thực đồ án kiến thức hiểu biết hạn hẹp chúng em chưa có nhiều điều kiện khảo sát thực tế nhiều, thời gian làm đồ án không dài đồ án chúng em tránh thiếu sót Chúng em mong thầy cô bạn đóng góp bổ sung ý kiến để đồ án chúng em thêm hoàn thiện Chúng em xin chân thành cám ơn! PHẦN I: TỔNG QUAN VỀ LỊCH SỬ ROBOT Lịch sử phát triển Robot: Robot có nhiều ứng dụng sống như: thăm chinh phục vũ trụ, hỗ trợ thầy thuốc chẩn đoán bệnh, giúp đỡ người khuyết tật, vận chuyển đồ vật Robot nghiên cứu phát triển qua thời kỳ sau Sự phát triển robot Năm 320 Trước Công nguyên Triết gia Hy Lạp Aristotle có câu nói tiếng: "Nếu công cụ lệnh, chí tự hoạt động theo cách riêng tương lai không tồn nô lệ cho lãnh chúa" Từ năm 1495, Trong năm 1495, danh họa Leonardo da Vinci phác thảo robot hình người Từ năm 1700 - 1900 Trong khoảng thời gian từ năm 1700 đến năm 1900, số người máy tạo Đáng ý có vịt khí tiếng thực Jacques de Vaucanson vươn cổ, vỗ cánh chí nuốt thức ăn Từ năm 1913 Tại nhà máy sản xuất xe mình, Henry Ford lắp đặt thành công dây chuyền lắp ráp đai an toàn giới Một hình T lắp ráp 93 phút Từ năm 1920 Karel Capek đặt thuật ngữ "robot" để tả máy có hình dạng tương tự người kịch ông: Rossums Universal Robots Vở kịch nói việc loài người trở thành nô lệ robot phục vụ cho họ Hiện ý tưởng trở thành chủ đề phổ biến văn học, phim ảnh như: Frankenstein, Terminator (Kẻ hủy diệt), The Matrix (Ma trận)… Định nghĩa robot: Ngày bên cạnh phát triển không ngừng ngành công nghiệp máy tính lĩnh vực robot không ngừng phát triển theo Có nhiều quốc gia giới nghiên cứu lĩnh vực như: Nhật Bản, Mỹ, Úc, Nga… Và kết đạt không khỏi khiến người không ngạc nhiên Do có nhiều khái niệm, định nghĩa robot Theo viện nghiên cứu Hoa Kỳ robot định nghĩa sau: “Robot tay máy có nhiều chức năng, thay đổi chương trình hoạt động, dùng di chuyển nguyên vật liệu, chi tiết máy, dụng cụ dung cho công việc đặc biệt thông qua chuyển động khác nhau” Còn theo giáo sư Masahioo (viện công nghệ Tokyo) robot công nghiệp phải có đặc điểm sau: + Có khả thay đổi chuyển động + Có khả xử lý thông tin (biết suy nghĩ) + Có tính vạn + Có đặc điểm người Nói chung có nhiều định nghĩa robot, nhiên có thống tất định nghĩa đặc điểm “điều khiển theo chương trình” Phân loại: Người ta phân biệt dựa vào yếu tố sau: + Theo dạng hình học không gian hoạt động + Theo hệ robot + Theo điều khiển + Theo nguồn dẫn động • Robot hệ thứ Bao gồm robot hoạt động lập lại theo chu trình lập trình từ trước (playback robots) • Robot hệ thứ hai Robot hệ bao gồm robot sử dụng cảm biến điều khiển cho phép tạo vòng điều khiển kín kiểu servo • Robot hệ thứ ba Đây dạng phát triển cao robot Các robot trang bị thuật toán xử lý phản xạ logic thích nghi theo thông tin môi trường tác động lên robot -> robot tự biết làm hoàn thành công việc cho trước Robot hệ bao gồm hệ thống thu nhận hình ảnh điều khiển (visioncontrolled robots) cho phép nhìn nhận dạng đối tượng thao tác • Robot hệ thứ tư Bao gồm robot sử dụng thuật toán chế điều khiển thích nghi (adaptively controlled robots) có khả lựa chọn đáp ứng tuân theo hình tính toán xác định nhằm tạo ứng xử phù hợp với điều khiển môi trường thao tác • Robot hệ thứ năm Là robot trang bị trí tuệ nhân tạo (artificially intelligent robots) Để thống cách gọi, thuật ngữ robot tay máy xem Tình hình phát triển robot giới: Sự phát triển khoa học kỹ thuật ngày nhanh góp phần nâng cao suất lao động Đặc biệt đời phát triển công nghệ chế tạo robot nhằm tạo tự động hóa trình sản xuất giảm sức lao động chân tay người lao động Đối với nước ngoài, tự động hóa xuất sớm, đạt nhiều thành tựu to lớn: + Robot công nghiệp: + Thám hiểm không gian: Công nghệ cơ-điện tử trở thành ngành mũi nhọn nhiều nước giới, với phát triển không ngừng công nghệ bán bẫn, công nghệ thông tin, trí tuệ nhân tạo khí xác, robot không cỗ máy vô tri, mà bắt đầu có cảm xúc, suy nghĩ hành động sinh vật Những hệ robot gần giống người hãng ASIMO, MITSUBISHI, SONY, HONDA, cho đời chứng tỏ phát triển tương lai ngành cơ-điện tử mạnh mẽ PHẦN II: HÌNH XE ROBOT Tổng quan hình hình xe robot thiết kế gồm phần khung xe cánh tay robot, hình ghép vào mối hàn ốc vít Cánh tay có nhiệm vụ đưa khớp gắp đến gắp đồ vật di chuyển từ vị trí đến vị trí khác Còn xe có nhiệm vụ đưa cánh tay đến gần vị trí để gắp đồ vật Các module chi tiết 2.1 Khung xe Khung xe chia làm khung gồm khung xe bánh xích: - Khung xe: Khung làm hộp sắt mạ kẽm hàn cố định vát đầu Mỗi đầu vát 9cm Khung chia làm phần phần + Phần khung trên: rộng 22cm dài 40cm + Phần khung dưới: rộng 22cm dài 22cm Mặt hình gắn cố định băng meka dài 40cm rộng 22cm Khoảng cách phần 19cm - Bánh xích: Mỗi bên gôm cặp nhông xe máy dây xích xe máy chia làm hàng cho xe hình +Hàng cách 18cm +Hàng cách 12cm +Hàng hàng cách 8cm Cấu tạo xích xe hình gồm nhông xe máy hàn cố định song song với trục giữa, chúng cách cm, đầu trục cố định vòng bi tròn Vòng bi hàn cố định vào khung xe hình - Khoảng cách từ xích xe tới vòng bi 1cm - Xích xe làm từ xích xe máy loại KMC 428 vàn KMC 420 - Chiều dài xích 90 cm - bên xe dùng hàng xích Một số hình ảnh khung xe hình : 2.2 Cánh tay robot 2.2.1 Mục đích yêu cầu hình cánh tay robot Trước việc robot tiến vào sâu đời sống người ngành công nghiệp sản xuất tự động hóa làm việc môi trường độc hại Và robot dần thay người ngành sản xuất điện tử Chính lý mà tầm quan trọng việc hiểu biết rõ loại robot vấn đề cần thiết trước lúc trường sinh viên chúng em Chúng em dẫn thầy cô khoa nhà trường đặc biệt thầy Phạm Tùng Lâm tạo lên hình xe cánh tay robot công nghiệp ABB để hiểu rõ robot Với hình hoạt động phải đảm bảo yêu cầu sau: - Đảm bảo trình hoạt động cách xác liên tục - Độ tin cậy cao - Đảm bảo làm việc ổn định lâu dài 2.2.2 Cấu tạo cánh tay robot Cánh tay robot làm hợp kim nhôm, bao gồm: khớp tay, khớp gắp, động servo công tắc hành trình Chiều dài kéo thẳng 60cm Chiều rộng lớn 15cm, hẹp 3cm Trọng lượng 2kg Cánh tay quay 180˚, tải trọng tối đa 100gram Cánh tay điều khiển linh hoạt thông qua mạch điều khiển arduino mega 2560 • • • • Hình ảnh cánh tay robot 2.2.3 Tay gắp tả tay gắp Tay gắp kim loại G3 có cấu trúc kép, góc mở rộng, tay gắp làm hợp kim nhôm nên bền chắn, tay gắp kim loại G3 tương thích với loại servo Rc dụng nhiều thị trường Thông số kỹ thuật Chất liệu hợp kim nhôm Trọng lượng 60g (không bao gồm servo) Khoảng cách góc mở tối đa giữ khớp gắp 60cm Chiều dài tổng thể 118mm (khi tay khép) Chiều rông lớn Là 107mm (khi tay mở tối đa) Chiều rộng nhỏ 55mm (khi tay đóng) Hình ảnh khớp gắp 2.2.4 Động servo Việc hoạt động cánh tay dựa vào động SERVO Ta dùng động servo thay dùng động khác vì: - Động RC (Radio Control) Servo thiết kế để sử dụng điều khiển máy bay xe Về sau, động sử dụng phổ biến cấu chấp hành điều khiển vi xử lý, vừa nhỏ gọn, vừa tiết kiệm lượng lại giá thành rẻ tiện lợi cho việc nghiên cứu hình cho sinh viên chúng em - Động RC Servo có momen xoắn cao so với kích thước nó, cho vị trí góc xác cách cung cấp xung theo phương thức điều biến độ rộng xung (PWM); độ rộng xung định vị trí góc trục động - Động servo thiết kế để quay có giới hạn quay liên tục động DC hay động bước Mặc dù ta chỉnh động servo RC quay liên tục công dụng động servo đạt góc quay xác khoảng từ 0 – 180 Việc điều khiển ứng dụng để lái robot, di chuyển tay máy lên xuống, quay cảm biến để quét khắp phòng… - Động DC động bước vốn hệ hồi tiếp vòng hở - ta cấp điện để động quay chúng quay ta không biết, kể động bước động quay góc xác định tùy vào số xung nhận được.Việc thiết lập hệ thống điều khiển để xác định ngăn cản chuyển động quay động làm động không quay không dễ dàng Mặt khác, động servo thiết kế cho hệ thống hồi tiếp vòng kín.Tín hiệu động nối với mạch điều khiển.Khi động quay, vận tốc vị trí hồi tiếp mạch điều khiển Nếu có lý ngăn cản chuyển động quay động cơ, cấu hồi tiếp nhận thấy tín hiệu chưa đạt vị trí mong muốn Mạch điều khiển tiếp tục chỉnh sai lệch cho động đạt điểm xác Động servo có nhiều kiểu dáng kích thước, sử dụng nhiều máy khác nhau, từ máy tiện điều khiển máy tính hình máy bay xe Ứng dụng động servo robot, loại với động dùng hình máy bay xe Các động servo điều khiển liên lạc vô tuyến gọi động servo R/C (radiocontrolled) Trong thực tế, thân động servo điều khiển vô tuyến, nối với máy thu vô tuyến máy bay hay xe Động servo nhận tín hiệu từ máy thu Như có nghĩa ta không cần phải điều khiển robot tín hiệu vô tuyến cách sử dụng động servo, trừ ta muốn Ta điều khiển động servo máy tính, vi xử lý hay chí mạch điện tử đơn giản dùng IC 555.Động servo có nhiều kiểu dáng kích thước, sử dụng nhiều máy khác nhau, từ máy tiện điều khiển máy tính hình máy bay xe Ứng dụng động servo robot, loại với động dùng hình máy bay xe Các động servo điều khiển liên lạc vô tuyến gọi động servo R/C (radio-controlled) Trong thực tế, thân động servo điều khiển vô tuyến, nối với máy thu vô tuyến máy bay hay xe Động servo nhận tín hiệu từ máy thu Như có nghĩa ta không cần phải điều khiển robot tín hiệu vô tuyến cách sử dụng động servo, trừ ta muốn Ta điều khiển động servo máy tính, vi xử lý hay chí mạch điện tử đơn giản dùng IC 555 Chính ưu điểm lên chúng em chọn động SERVO làm động điều khiển cho hình cánh tay robot Động servo 2.3 Mạch điểu khiển mạch giao tiếp Toàn hình xe robot gồm module sau: - Module điều khiển chính: Arduino mega 2560 - Module điều khiển động cơ: Module relay kênh - Module nhận tín hiệu điều khiển: Bộ tay cầm PS2 không dây - Module hiển thị: Module LCD I2C + LCD 20x4 - Module nguồn: Module hạ áp 5VDC công suất 50W - Động tải chính: gồm động giảm tốc chiều 12V công suất 50W/1 động - Công tắc bật tắt nguồn, công tắc hành trình - Nguồn điện 2.3.1 Arduino mega 2560 Arduino Mega 2560 board mạch vi điều khiển, xây dựng dựa Atmega 2560 Nó có 54 chân I/O (trong có 15 chân sử dụng làm chân ouput với chức PWM), 16 chân đầu vào Analog, UART, thạch anh 16Mhz, cổng USB, jack nguồn, header, nút nhấn reset Nó chứa thứ cần thiết hỗ trợ cho người lập trình vi điều khiển, đơn giản việc kết nối với máy tính cable USB bắt đầu học tập Mach Arduino 2560 sử dụng tương thích với phần lớn Shield Arduino UNO; Arduino Mega 2560 vi điều khiển hoạt động dựa chip ATmega2560 Bao gồm: 54 chân digital (trong có 15 chân sủ dụng chân PWM từ chân số → 13 chân 44 45 46) 2.3.2 Module relay kênh Mạch Relay Kênh 5V-220V/10A dùng: để đóng/ngắt điện áp tối đa 220V/10A Mạch gồm Relay 5V-220V/10A -Trạng thái hoạt động: + ( 0V): Bật Relay + ( 5V): Ngắt Relay - Kích thước Relay: 50x20MM - Kích thước toàn bộ: Sơ đồ nguyên lý 2.3.3 Màn hình LCD 20x4 Module LCD I2C 2.3.3.1 Màn hình LCD 20x4 Sơ đồ: Màn hinh LCD có tính phổ biến cao, tính ứng dụng cao, hình dùng để thị chị số điệu khiển động báo lỗi hệ thống, 2.3.3.2 Module LCD i2c Hình ảnh Mạch module LCD i2c cung cấp tín hiệu cho Màn hình LCD 20x4 Cấu tạo chân Module LCD i2c chân chân chân chân chân chân chân chân chân chân 10 chân 11 chân 12 Vcc SDA/TX SCL/RX GND(0V) Output-đầu quét xung đến cột input- nhận trạng thái hàng Output-đầu quét xung đến cột input- nhận trạng thái hàng Output-đầu quét xung đến cột input- nhận trạng thái hàng input- nhận trạng thái hàng chế độ nhảy: Khi mở điều khiển T2C, bi đóng nối điều khiển nối tiếp 2.4 Bộ điều khiển không dây PlayStation PS3 Robot điều khiển tay hoạt động cách nhận tín hiệu từ người điều khiển thông qua điều khiển cầm tay gọi tay game Mỗi nút tay game nhấn robot hoạt động theo chức lập trình cụ thể cho nút nhấn Để điều khiển động chạy theo chiều thuận nghịch cần phải có hai nút nhấn số nút nhấn tay game gấp đôi số động có robot Mà nút nhấn lại nối với chân vi điều khiển, nhiều chân sử dụng cho tay game Công nghệ ngày sử dụng nhiều chế tạo robot, điều khiển cho robot tay không dừng lại Hiện nay, điều khiển tự chế thay tay game máy PlayStation sản phẩm giải trí hãng Sony, tay game sử dụng chuẩn giao tiếp SPI (serial peripheral interface), có tổng cộng 16 nút nhấn núm xoay analog Việc sử dụng tay game sẵn có giải vấn đề thường gặp tay game cũ mà chân kết nối với vi điều khiển Hình ảnh Đối với điều khiển robot, cần dùng dây sau: Clock, Data, Command, Attention, VCC & GND, Sơ đồ kết nối PlayStation arduino UNO PlayStation ps3 DATA Command Attention Clock Vcc GND Arduino UNO 13 11 10 12 5V GND 2.5 Động DC 12V-50W Hình ảnh –Công Suất:50W –Điện chạy động là: DC12V Thông Số; – Dây màu Xanh Dương – Dây màu Xanh Lá – Dây màu Đen ( Dây phản hồi tín hiệu ) – Dây Màu Trắng ( Dây phản hồi tín hiệu ) – Dây màu Đỏ * Thông số kỹ thuật – Dây màu Đỏ 12v – Dây màu Xanh Lá GND =>Số vòng: 1500/40 RPM – Dây màu Đỏ 12v – Dây màu Xanh Dương GND 35 =>Số vòng: 2250/60 RPM – Kích thước : + Động Cơ: Đường kính 60MM, Chiều dài 90MM ( Chuôi 20MM) + Hộp Giảm Tốc: L65xW80xH75MM – Trục tăng dần: 7MM, 8MM, 9MM – Trọng lượng: 1.2kg 2.6 Công tắc hành trình Hình ảnh Công tắc hành trình công tắc tức làm chức đóng mở mạch điện, đặt đường hoạt động cấu cho cấu đến vị trí tác động lên công tắc Hành trình tịnh tiến quay Công Tắc hành trình dùng để giới hạn chuyển động tay gắp Gồm hay nhiều tiếp điểm NO NC Khi công tắc hành trình tác động làm đóng ngắt mạch điện cho động servo ngắt để không làm họng tay gắp Giới hạn hành trình ( cấu đến vị trí dới hạn tác động vào công tắc làm ngắt nguồn cung cấp cho cấu -> vượt qua vị trí giới hạn) 2.7 Công tắc bập bênh Hình ảnh Có công tắc hình bao gồm đóng ngắn nguồn bánh xe đóng ngắt cho mạch điều khiển 2.8 Cầu đấu 200A-4P Cầu đầu nối cáp dây điện dùng để đấu nối đầu cấp nguồn với bảng mạch, tiếp điểm đúc đồng mạ hợp kim, cực, 30A, kích thước : x 2,5 x 2mm Cầu nối 4p 2.9 Nguồn điện 2.9.1 Acquy 12V 5AH Hình ảnh Bình ác quy dùng để cấp nguồn cho động bánh xích 2.9.2 Pin Li-ion (Lithium-lon) Pin Lithium-ion loại pin sử dụng nhiều thiết bị điện thoại di động, máy tính xách tay, xe điện, … Trên hình, pin dùng để cấp nguồn cho toàn mạch điều khiển cánh tay gắp Hình ảnh 2.9.3 Ổn áp DC-DC 24V – 5V Hình ảnh Đặc điểm kỹ thuật: Điện áp đầu vào: DC12 / 24V (8-35V) Điện áp đầu ra: 5V Công suất đầu ra: 50W Khối lượng: 66 * 60 * 22mm Mạch ổn áp dùng để hạ áp từ 12V pin sang 5V cấp cho mạch điều khiển cánh tay robot PHẦN 3: CÁC BẢN VẼ HÌNH Sơ đồ nguyên lý 7X RC SERVO (ARM) HẠ ÁP 5V DC 12V DC MÀN HÌNH LCD 20X4 ARDUINO MEGA 2560 MODULE RELAY KÊNH PS2 WIRELESS PIN CELL 2X DC MOTOR 12V DC ẮC QUY Sơ đồ kết nối mạch điều khiển PHẦN 4: PHỤ LỤC 1.Hình ảnh hình thực tế // chèn ảnh hình vào 2.Code mạch điều khiển Arduino // PS2 Arduino controler Robot Tank #include //for v1.6 // dinh nghia chan ket noi tay ps2 #define PS2_DAT 13 // di #define PS2_CMD 12 // #define PS2_SEL 11 // cs #define PS2_CLK 10 // clk // dinh nghia che #define pressures false #define rumble false PS2X ps2x; // create PS2 Controller Class int error = 0; byte type = 0; byte vibrate = 0; //===dinh nghia chan ket noi relay #define relay1 #define relay2 #define relay3 #define relay4 // LCD #include #include LiquidCrystal_I2C lcd(0x27,20,4); int car=0; // bien bao trang thai xe // SERVO #include // sv1 la ca gia tri dieu khien dong co servo Servo sv1,sv2,sv3,sv4,sv5,sv6; // value control // cac bien d1-d6 tuong ung voi cac goc truyen vao dong co servo int d1,d2,d3,d4,d5,d6; /* Ta quy uoc chieu quay dong co nhin tu phia cong tac nguon * Cac bien tu d1-d6 dieu khien cac dong co lan luot nhu sau * d1 dieu khien dong co 1, pham vi tu 0-180, mac dinh bang 90, tang d1 quay nguoc kim dong ho * d2 dieu khien dong co 2, pham vi tu 0-180, mach dinh bang 90, tang d2 quay thuan kim dong ho * d3 dieu khien dong co 3, pham vi tu 0-180, mac dinh bang 90; tang d3 quay nguoc chieu kim dong ho * d4 dieu khien dong co 5, pham vi tu 0-180, mac dinh bang 115; tang d4 quay nguoc chieu kim dong ho * * d5 dieu khien dong co 4, pham vi 1- 159, mac dinh =79, tang d5 dong co se quay thuan kim dong ho * d6 dieu khien dong co 6, pham vi tu 5-163, mac dinh =85, tang d6 dong co se quay nguoc kim dong ho * chu y, d5,d6 de dieu khien cap dong co, d5 tang thi d6 phai giam dong thoi * neu khong co cau quay se bi pha vo * */ void setup_sv() { d1=d2=d3=90; d4=109; d5=79; // d6=85; sv1.attach(14); sv2.attach(15); sv3.attach(16); sv4.attach(17); sv5.attach(18); sv6.attach(19); } void control_sv() { sv1.write(d1); sv2.write(d2); sv3.write(d3); sv4.write(d4); sv5.write(d5); sv6.write(d6); } void setup_lcd() { lcd.init(); lcd.backlight(); lcd.setCursor(1,0); lcd.print("WELLCOM CDNS1-BQP!"); lcd.setCursor(2,2); lcd.print("DO AN TOT NGHIEP"); lcd.setCursor(6,3); lcd.print("CO11DT36"); delay(2000); lcd.clear(); } void lcd_disp() { //lcd.clear(); // BAO TRANG THAI XE lcd.setCursor(2,0); lcd.print("TANK = "); switch(car) { case 0: {lcd.print("DUNG");break;} case 1: {lcd.print("TIEN");break;} case 2: {lcd.print("PHAI");break;} case 3: {lcd.print("TRAI");break;} case 4: {lcd.print("LUI");break;} } lcd.print(" "); // BAO GOC QUAY lcd.setCursor(0,2); lcd.print("D1=");lcd.print(d1); lcd.print("D2=");lcd.print(d2); lcd.print("D3=");lcd.print(d3); lcd.print(" "); lcd.setCursor(0,3); lcd.print("D4=");lcd.print(d4); lcd.print("D5=");lcd.print(d5); lcd.print("D6=");lcd.print(d6); lcd.print(" "); } void setup_ps2() { delay(300); //added delay to give wireless ps2 module some time to startup, before configuring it //setup pins and settings: GamePad(clock, command, attention, data, Pressures?, Rumble?) check for error error = ps2x.config_gamepad(PS2_CLK, PS2_CMD, PS2_SEL, PS2_DAT, pressures, rumble); if(error == 0) Serial.print("Da ket noi, "); else if(error == 1) Serial.println("No controller found."); else if(error == 2) Serial.println("Controller found but not accepting commands."); else if(error == 3) Serial.println("Controller refusing to enter Pressures mode, may not support it."); // type type = ps2x.readType(); Serial.print("Loai tay cam = "); Serial.println(type); } // ====================== chuong trinh chinh void setup() { Serial.begin(57600); setup_ps2(); // cai tat tay game ps2 pinMode(relay1, OUTPUT); pinMode(relay2, OUTPUT); pinMode(relay3, OUTPUT); pinMode(relay4, OUTPUT); // tat tat ca cac relay digitalWrite(relay1, HIGH); digitalWrite(relay2, HIGH); digitalWrite(relay3, HIGH); digitalWrite(relay4, HIGH); setup_lcd(); // cai dat lcd hient hi mac dinh setup_sv(); // cai dat servo control_sv(); // dieu khien servo ve goc } // goc quay d5, 56 lay 79,85 lam goc; void loop() { control_sv(); lcd_disp(); // xoa man hinh va hien thi trang thai xe if(error == 1) // bo qua vong lap neu khong co tay game nao duoc tim thay return; start: delay(20); // doc gia tri phim bam ps2x.read_gamepad(false, vibrate); //=== if(ps2x.Button(PSB_START)) { Serial.println("Start"); } if(ps2x.Button(PSB_SELECT)) { Serial.println("Dung"); car=0; digitalWrite(relay1, HIGH); digitalWrite(relay2, HIGH); digitalWrite(relay3, HIGH); digitalWrite(relay4, HIGH); goto start; } //=== if(ps2x.Button(PSB_PAD_UP)) { Serial.println("Up"); car=1; digitalWrite(relay1, LOW); digitalWrite(relay2, HIGH); digitalWrite(relay3, LOW); digitalWrite(relay4, HIGH); goto start; } if(ps2x.Button(PSB_PAD_RIGHT)) { Serial.println("Right"); car=2; digitalWrite(relay1, LOW); digitalWrite(relay2, HIGH); digitalWrite(relay3, HIGH); digitalWrite(relay4, LOW); goto start; } if(ps2x.Button(PSB_PAD_LEFT)) { Serial.println("LEFT"); car=3; digitalWrite(relay1, HIGH); digitalWrite(relay2, LOW); digitalWrite(relay3, LOW); digitalWrite(relay4, HIGH); goto start; } if(ps2x.Button(PSB_PAD_DOWN)) { Serial.println("DOWN"); car=4; digitalWrite(relay1, HIGH); digitalWrite(relay2, LOW); digitalWrite(relay3, HIGH); digitalWrite(relay4, LOW); goto start; } if (ps2x.NewButtonState()) { if(ps2x.Button(PSB_L3)) { Serial.println("Joint stick Phai"); } if(ps2x.Button(PSB_R3)) { Serial.println("Joint stick Trai"); } if(ps2x.Button(PSB_L2)) { Serial.println("L2"); } if(ps2x.Button(PSB_R2)) { Serial.println("R2"); } if(ps2x.Button(PSB_TRIANGLE)) { Serial.println("Nut tam giac"); if(d15) d1=d1-5; } if(ps2x.ButtonReleased(PSB_SQUARE)) { Serial.println("Nut o vuong"); } if(ps2x.Button(PSB_L1)) { Serial.print("Joint Stick Trai(Doc-Ngang): "); int a = ps2x.Analog(PSS_LY); Serial.print(a); if(a5) { d5=d5-1; d6=d6+1; } Serial.print(","); int b = ps2x.Analog(PSS_LX); Serial.println(b); if(b5) d4=d4-1; // ve tay phai //will be TRUE if button was JUST pressed //will be TRUE if button was JUST pressed OR //will be TRUE if button was JUST released } if(ps2x.Button(PSB_R1)) { Serial.print("Joint Stick Phai(Doc-Ngang): "); int a = ps2x.Analog(PSS_RY); Serial.print(a); if(a5) d3=d3-1; // ve tay phai Serial.print(","); int b = ps2x.Analog(PSS_RX); Serial.println(b); if(b5) d2=d2-1; // ve tay phai } } TÀI LIỆU THAM KHẢO [1] Giáo trình Vi Điều Khiển, trường Cao đẳng nghề số – Bộ quốc phòng [2] Giáo trình kỹ thuật xung – số, trường Cao đẳng nghề số – Bộ Quốc phòng [3] Một số tài liệu mạng Internet ... mẽ PHẦN II: MÔ HÌNH XE ROBOT Tổng quan mô hình Mô hình xe robot thiết kế gồm phần khung xe cánh tay robot, mô hình ghép vào mối hàn ốc vít Cánh tay có nhiệm vụ đưa khớp gắp đến gắp đồ vật di chuyển... Xích xe làm từ xích xe máy loại KMC 428 vàn KMC 420 - Chiều dài xích 90 cm - bên xe dùng hàng xích Một số hình ảnh khung xe mô hình : 2.2 Cánh tay robot 2.2.1 Mục đích yêu cầu mô hình cánh tay robot. .. trí đến vị trí khác Còn xe có nhiệm vụ đưa cánh tay đến gần vị trí để gắp đồ vật Các module chi tiết 2.1 Khung xe Khung xe chia làm khung gồm khung xe bánh xích: - Khung xe: Khung làm hộp sắt mạ

Ngày đăng: 08/06/2017, 15:20

Tài liệu cùng người dùng

Tài liệu liên quan