1. Trang chủ
  2. » Luận Văn - Báo Cáo

CHƯƠNG 1 SƠ LƯỢC VỀ LỊCH SỬ RA ĐỜI VÀ XU HƯỚNG PHÁT TRIÊN CỦA ROBOT

64 2 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 64
Dung lượng 1,64 MB

Nội dung

Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa LỜI MỞ ĐẦU Cùng với phát triển không ngừng ngành khoa học kĩ thuật, ngành công nghiệp phát triển cách nhanh chóng Việc áp dụng máy móc cơng nghệ đại vào dây chuyền sản xuất nhu cầu thiếu nhà máy xí nghiệp Nhằm tăng suất, tăng chất lượng giảm chi phí nhân cơng dẫn đến giảm giá thành sản phẩm Song song với phát triển ấy, cơng nghệ chế tạo robot phát triển nhanh chóng ( đặc biệt nước phát triển mạnh Nhật, Châ Âu, Mỹ … ) nhằm đáp ứng nhu cầu kinh tế, y tế, quốc phòng Robot thực việc mà người khó thực chí khơng thể làm như: cơng việc địi hỏi độ xác cao, làm việc mơi trường nguy hiểm lị phản ứng hạt nhân, dị phá mìn qn sự, thám hiểm không gian vũ trụ Qua nhiều thập niên phát triển, công nghệ chế tạo Robot phát triển vượt bậc Việc trang bị thêm hệ thống cảm biến cho tạo bước đột phá công nghệ chế tạo loại Robot thơng minh tự điều khiển hành vi thơng qua phản hồi từ cảm biến môi trường Ở nước ta, công nghệ chế tạo Robot giai đoạn đầu với tiếp xúc mạnh mẽ cơng nghệ cao nước ngồi phát triển mạnh trường kĩ thuật tiềm đầy hứa hẹn tương lai phát triển đất nước Từ ý tưởng suy nghĩ ấy, hạn chế nhiều mặt kiến thức hạn chế linh kiện em xin phép nghiên cứu công nghệ chế tạo Robot khuôn khổ luận văn tốt nghiệp đại học Rất mong quan tâm góp ý từ quý thầy cô bạn Xin chân thành cảm ơn SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa CHƯƠNG 1: SƠ LƯỢC VỀ LỊCH SỬ RA ĐỜI VÀ XU HƯỚNG PHÁT TRIỂN CỦA ROBOT Robot loại máy lập trình điều khiển tự động máy tính (vi điều khiển PC) để thực thao tác giống người công việc tác động môi trường Thường robot sử dụng để thực công việc lặp lặp lại, công việc nguy hiểm, cho kết xác, nhanh hơn, rẻ thực người 1.1 Lịch sử đời phát triển Thuật ngữ Robot lần xuất năm 1921 Tiệp Khắc tác phẩm R.U.R (Rossum’s Universal Robot) nhà soạn kịch Karel Capek mang ý nghĩa người làm tạp dịch Kể từ thuật ngữ sử dụng rộng rãi.Khái niệm máy tự động xuất từ lâu với viễn tưởng người máy sống Ngay sau chiến tranh giới lần thứ hai, nhiều công trình bắt đầu phịng thí nghiệm OakRidge Argome để phát triển máy khí điều khiển từ xa nhằm phục vụ phòng thí nghiệm vật liệu phóng xạ Các cánh tay thiết kết mơ cách xác chuyển động bàn tay cánh tay người Trong năm 1950, bên cạnh cánh tay khí xuất cánh tay thuỷ lực điện từ Cũng năm này, George C.Devol thiết kế thiết bị có tên thiết bị vận chuyền có khớp nối lập trình (programmed artculated transfer device) Đây cánh tay máy mà hoạt động lập trình thực chuỗi bước chuyển động xác định câu lệnh chương trình Phát triển xa ý tưởng trên, Devol Joseph F.Engelberger dẫn đường cho robot công nghiệp giới thiệu năm 1959 công ty Unimation Thiết bị sử dụng máy tính liên kết với tay máy nhằm dạy cho thực cơng việc khác cách tự động Khi robot lập trình tạo kỳ lạ tạo sức mạnh sản xuất, vào năm 1960 tất yếu, linh hoạt hệ thống robot nâng cao đáng kể thông qua hệ thống phản hồi từ sensor Tiếp H.A.Ernst cơng bố đời phát triển bàn tay khí điều khiển máy tính sử dụng sensor xúc giác Đây xuất robot có khả thích ứng với mơi trường Vào cuối năm 1960, Mc Carthy bạn đồng nghiệp công bố phát triển máy tính với camera vơ tuyến microphone Năm 1968 Pieper nghiên cứu vấn đề động học điều khiền robot máy tính, năm 1971 Kanh Roth phân tích động lực học giới hạn điều khiển tay máy SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Trong suốt năm 1970, số lượng lớn cơng trình nghiên cứu tập trung vào việc sử dụng sensor ngoại để tăng tiện lợi linh hoạt cho robot Vào thời gian cơng ty máy tính IBM chế tạo loại robot có sensor xúc giác sensor lực để lắp ráp máy in gồm 20 cụm chi tiết Một lĩnh vực nhiều phịng thí nghiệm quan tâm robot tự hành, robot di động Nhiều công trình nghiên cứu thiết kế, xây dựng tạo robot tự hành bắt chước chân người súc vật Trong thập kỷ 80 - 90 phát triển mạnh mẽ khoa học kỹ thuật, đặc biệt lĩnh vực kỹ thuật vi xử lý công nghệ thông tin, số lượng robot gia tăng, giá thành giảm rõ rệt, tính có nhiều bước tiến vượt bậc Ngày nay, chuyên ngành khoa học robot (robotics) trở thành lĩnh vực rộng khoa học, bao gồm việc giải vấn đề cấu trúc cấu động học, động lực học, lập trình quỹ đạo, cảm biến tín hiệu, điều khiển chuyển động.v.v 1.2 Các hệ robot Kể từ khái niệm robot đời, việc thiết kế chế tạo robot trải qua nhiều giai đoạn với nhiều hệ khác Có hệ robot đời kể từ năm 1960 Thế hệ thứ nhất: Bao gồm loại robot hoạt động lặp lại theo chu trình khơng thay đổi Chương trình điều khiển có hai dạng: - Chương trình “cứng”, nghĩa khơng thay đổi không sửa trừ thay đổi phần cứng - Chương trình thay đổi thông qua panel điều khiển thông qua máy tính Các robot hệ sử dụng cấu điều khiển servo vòng hở (openloop nonservo controlled system ) Đây hệ thống không sử dụng thông tin phản hồi từ môi trường để điều khiển robot Thế hệ thứ hai: Robot trang bị sensor cho phép robot giao tiếp với mơi trường bên ngồi Các thiết bị thực chất biến đổi lượng Nó chuyển đại lượng khơng điện thành đại lượng điện mà qua điều khiển robot biết trạng thái mơi trường xung quanh Nhờ sensor robot chọn phương án khác cách linh hoạt nhằm thích nghi với mơi trường bên ngồi Dạng robot với trình độ điều khiển cịn gọi robot điều khiển thích nghi cấp thấp Đây gọi cấu điều khiển servo vịng kín (closed-loop servo controller system) Thế hệ thứ ba: điều khiển logic khả trình PLC (Programmable Logic Controller) sử dụng robot với nhiều chức chuyên biệt Thế hệ thứ bốn: Khác với PLC bị giới hạn chương trình chúng, hệ robot sử dụng máy tính trang bị ngơn ngữ lập trình đặc biệt ngôn ngữ chuẩn Basic, C, C++ , để tạo nhiều ứng dụng CAD/CAM CIM chương trình khơng trực tuyến SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Thế hệ thứ năm: Các điều khiển robot sử dụng trí tuệ nhân tạo (artificial intelligence) Robot trang bị kỹ thuật nhận dạng tiếng nói, hình ảnh, xác định khoảng cách, cảm nhận đối tượng tiếp xúc (da nhân tạo) để xử lý, định hợp lý 1.3 Những xu hướng phát triển robot đại Các robot đại có xu hướng tăng tương lai giúp người tạo sản phẩm mới, bảo vệ sở hạ tầng giới, chăm sóc nhà cửa, mua bán Một xu hướng quan trọng nghiên cứu phát triển robot phát triển hệ thống máy vi điện tử (MEMS) có kích thước nhỏ từ vài cm tới mm chí nhỏ μ m Các robot nhỏ di chuyển vào mạch máu để phân phối thuốc làm vệ sinh mạch máu; chúng di chuyển máy tính lớn để chuẩn đốn vấn đề xảy với máy tính Một xu hướng phát triển việc nghiên cứu phát triển trí tuệ nhân tạo, mạng neuron vào robot nhằm tạo robot thơng minh, có khả thích nghi với mơi trường xung quanh người SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa CHƯƠNG 2: TỔNG QUAN VỀ ROBOT TỰ HÀNH, CẤU TẠO, NGUYÊN LÝ HOẠT ĐỘNG VÀ ỨNG DỤNG 2.1 Giới thiệu Robot tự hành Robot tự hành hay robot di động (mobile robots, thường gọi tắt mobots) định nghĩa loại xe robot có khả tự dịch chuyển, tự vận động (có thể lập trình lại được) điền khiển tự động để thực thành công công việc giao Theo lý thuyết, môi trường hoạt động robot tự hành đất, nước, khơng khí, khơng gian vũ trụ hay tổ hợp chúng Địa hình bề mặt mà robot di chuyển phẳng thay đổi, lồi lõm Theo phận thực chuyển động, ta chia robot tự hành làm lớp: chuyển động chân (legged) bánh (wheeled) Trong lớp đầu tiên, chuyển động có nhờ chân khí bắt chước chuyển động người động vật Robot loại di chuyển tốt định hình lồi lõm, phức tạp Tuy nhiên, cách phối hợp chân vấn đề giữ vững tư cơng việc khó khăn Lớp lại (di chuyển bánh) tỏ thực tế hơn, chúng làm việc tốt hầu hết địa hình người tạo Điều khiển robot di chuyển bánh đơn giản nhiều, gần ln đảm bảo tính ổn định cho robot Lớp chia làm loại robot: Loại chuyển động bánh xe (phổ biến), loại chuyển động vịng xích (khi cần mơ men phát động lớn hay cần di chuyển vùng đầm lầy, cát băng tuyết), loại hỗn hợp bánh xe xích (ít gặp) Tiềm ứng dụng robot tự hành rộng lớn Có thể kể đến robot vận chuyển vật liệu, hàng hóa tòa nhà, nhà máy, cửa hàng, sân bay thư viện, robot phục vụ quét dọn đường phố, khoang chân không; robot kiểm tra môi trường nguy hiểm; robot canh gác, thám; robot khám phá không gian, di chuyển hành tinh; robot hàn, sơn 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ặc dù nhu cầu ứng dụng cao, hạn chế chưa giải robot tự hành, chi phí chế tạo cao, không cho phép chúng sử dụng rộng rãi Một nhược điểm khác robot tự hành phải kể đến cịn thiếu tính linh hoạt thích ứng làm việc vị trí khác Bài tốn tìm đường (navigation problem) robot tự hành khơng phải loại tốn đơn giản nhiều người nghĩ lúc ban đầu Trong luận văn này, tốn tìm đường giải mức độ không phức tạp Sau vài hình ảnh Mobots SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp Robot Nomad 150 GVHD:PGS.TS Dương Hoài Nghĩa Sự kết hợp robot tự hành Nomadic XR4000 cánh tay robot PUMA 560 Robot “con rùa” SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Robot Houdini di chuyển bánh xích Robot bán tự động nghiên cứu vùng cực bắc SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Robot SRR FIDO NASA Robot tự hành chân Spiderbot di chuyển Hỏa Robot sáu chân Genghis SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa 2.2 Mơ hình động học cho Robot tự hành: bánh xe trước Robot điều khiển động bước độc lập Có thể gắn trực tiếp lên trục động bước qua cấu truyền động tùy theo ứng dụng Trong đề tài này, em gắn trực tiếp bánh xe lên trục động bước Ứng dụng bánh trước làm nhiệm vụ bẽ lái cho xe di chuyển bánh tự đa hướng đằng sau làm nhiệm vụ trợ lực Trong mơ hình em sử dụng bánh đa hướng OMNI SVTH: Nguyễn Văn Nghĩa Trang Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Gọi ∆s1, ∆s2 đoạn dịch chuyển bánh trước T khoảng cách bánh xe Bán kính góc quay RD góc dịch chuyển Δψlà: RD = 0.5*T*(∆s2+∆s1)/(∆s2 - ∆s1) Δψ=(∆s2 - ∆s1)/T Khi ∆s1= - ∆s2 Robot quay quanh điểm D bánh xe Khi ∆s1= ∆s2 Robot theo quĩ đạo đường thẳng Dịch chuyển theo phương hệ tham chiếu viết thành dạng ma trận é DX ù é Dx -Dy ù écos(y ) ù ê DY ú = ê Dy Dx ú ê s in(y ) ú ë û ë ûë û Vị trí Robot thời điểm thứ i: éy D (i ) ù éy D (i -1) ù é Dy D (i ) ù ê ú ê ú ê ú ê X D (i ) ú = ê X D ( i -1) ú + ê DX D ( i ) ú ê YD (i ) ú ê YD ( i -1) ú ê DYD ( i ) ú ë û ë û ë û SVTH: Nguyễn Văn Nghĩa Trang 10 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa o Make8(var,offset): hàm trích byte từ biến var, offset vị trí byte cần trích(0,1,2,3) o Make16(varhigh,varlow): giá trị 16 bit kết hợp từ biến bit varhigh varlow o Make 32(var1,var2,var3,var4): trả giá trị 32 bit kết hợp giá trị bit hay 16 bit từ var1 đến var o Có hàm phục vụ Delay: o Delay _cycles(count): Count: số từ 0_255 chu kỳ lệnh,1 chu kỳ lệnh = chu kỳ máy Ví dụ: delay_cycles(10) //delay 10 chu kì lệnh o Delay_us(time): hàm khơng trả giá trị Time: biến số có giá trị 0-255, số có giá trị 0-65355 Ví dụ: delay_us(1); //delay micro giây o Delay_ms(time): hàm không trả giá trị Ví dụ: delay_ms(1000); //delay giây Các hàm IO C: Bao gồm hàm sau: o Output_low(pin), Output_high(pin): Dùng để thiết lập mức (low, 0V), hay mức (high, 5V) cho chân IC, hàm đặt pin làm ngõ ra, hàm thực hết chu kỳ máy Ví dụ: xuất xung vng chu kỳ 100 ms, chân b0, nối b0 với đèn led #include #use delay(clock=12000000) Main () { While(1) { Output_high(pin_B0); Delay_ms(50); Output_ low(pin_B0); Delay _ms(50); } SVTH: Nguyễn Văn Nghĩa Trang 50 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Output_bit(pin,value) Pin: tên chân value: giá trị hay Hàm xúât giá trị 0/1 pin,tương tự hàm trên, thường dùng giá trị tùy thuộc giá trị biến bit ,hay muốn xuất đảo giá trị ngõ trước Input _bit(pin) Hàm trả giá trị trạng thái chân IC, giá trị bit o Output_X(value) X: tên port có chip Value giá trị byte Hàm xuất giá trị byte port Tất chân port ngõ o Input_X() Hàm trả giá trị bti giá trị hữu port o Port_B_pullups(value) Hàm thiết lập ngõ vào port B pullup(điện trở kéo lên) Value=1 kích họat tính value=0 ngừng Chỉ chip có port B có tính dùng hàm Set_tris_X (value) Hàm định nghĩa chân IO cho port ngõ vào hay ngõ Chỉ dùng với #use fast_IO Sử dụng #byte để tạo biến đến port thao tác thao tác port Khai báo ngắt: Mỗi họ PIC có số lượng nguồn ngắt khác nhau: PIC 14 có 14 ngắt, PIC 18 có 35 ngắt Danh sách ngắt với chức tương ứng: · #INT_GLOBAL: ngắt toàn cục · #INT_AD: ngắt chuyển đổi A/D hồn tất · #INT_CCP1: ngắt có Capture hay compare CCP1 · #INT_CCP2: ngắt có Capture hay compare CCP2 · #INT_COMP: kiểm tra Comparator SVTH: Nguyễn Văn Nghĩa Trang 51 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa · #INT_EEPROM: hoàn thành ghi EEPROM · #INT_ EXT: ngắt · #INT_I1C: có họat động I2C · #INT_LOWVOLT: phát áp thấp · #INT_PSP: có data vào cổng Parallel Slave · #INT_RB: thay đổi chân B4 đến B7 · #INT_RDA: data nhận từ RS232 sẵn sàng · #INT_RTCC: tràn Timer · #INT_SSP: có họat động SPI hay I2C · #INT_TBE: đếm chuyển RS232 trống · #INT_TIMER0: tràn Timer0 · #INT_TIMER1: tràn Timer1 · #INT_TIMER2: tràn Timer2 · #INT_OSCF: lỗi OSC 5.3.7 Mạch khối điều khiển dùng PIC16F877A sử dụng đề tài: SVTH: Nguyễn Văn Nghĩa Trang 52 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa R1 10K J4 U2 NGUON VXL C1 TU BU IN OUT GND C2 LOC NHIEU CAM BIEN LM7805C/TO C3 C_0 C_1 C_2 C_3 C_4 C_5 C_6 C_7 15 16 17 18 23 24 25 26 13 C4 J1 PVN2 J14 MCLR*/VPP RA0/AN0 RA1/AN1 RA2/AN2/VREF-/CVREF RA3/AN3/VREF+ RA4/T0CKI/C1OUT RA5/AN4/SS*/C2OUT RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RC4/SDI/SDA RC5/SDO RC6/TX/CK RC7/RX/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 OSC1/CLKIN Y1 CRYSTAL 14 OSC2/CLKOUT 33 34 35 36 37 38 39 40 19 20 21 22 27 28 29 30 RE0/RD*/AN5 RE1/WR*/AN6 10 RE2/CS*/AN7 12 31 VSS VSS J11 KEY_PAD 10 11 12 13 $PIN0 n n n n n n n n n n n n R11 11 VDD 32 VDD PIC16F877A SW1 POT RESET Mạch layout: SVTH: Nguyễn Văn Nghĩa Trang 53 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa CHƯƠNG 6: MỤC TIÊU ỨNG DỤNG CỦA XE VÀ LƯU ĐỒ GIẢI THUẬT ĐỂ GIÁI QUYẾT BÀI TOÁN ẤY 6.1 Yêu cầu cho xe tự hành: Xe theo lộ trình người sử dụng nhập vào cho xe từ bàn phím Khi lệnh khởi động từ bàn phím xe theo lộ trình chuỗi nhập vào hiển thị lên LCD Xe hoạt động theo chuỗi quy ước chương trình.Ví dụ: 100A20B80… Vậy xe thẳng 100cm rẽ phải(A) tiếp 20cm rẽ trái(B) thẳng đoạn 80cm …Khi thực xong chuỗi xe ngừng đợi người sử dụng nhập tiếp lộ trình mới, khơng xe dừng hẳn Hình ảnh minh họa cho q trình dị đường cho ví dụ Trên đường có gặp vật cản rẽ phải góc 90 độ để tránh vật Giả sử vật cần tránh hinh chữ nhật hình vng Khi rẽ phải sau thẳng xe lưu quảng đường rẽ trái Khi rẽ trái xe thẳng bình thường rẽ trái thêm lần Lúc xe đoạn với đoạn lưu rẽ phải để trở đường ban đầu trước tránh vật tiếp tục lộ trình đích Trong tránh vật cản xe giữ khoảng cách với vật cản 14 tới 16 cm không đụng vào vật cản Hình ảnh minh họa trình tránh vật SVTH: Nguyễn Văn Nghĩa Trang 54 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hồi Nghĩa 6.2 Thuật tốn ứng dụng dị đường FLOODING: Nguyên lý dò đường FLOODING: _Chia nút, hay đoạn _Mỗi nút truyền nhận liệu trừ nút nguồn đích _Kết thơng tin truyền xn suốt từ nguồn đến đích 6.3 Trình bày ý tưởng sơ đồ giải thuật: _Khi khởi động, xe nhận tín hiệu từ bàn phím, hiển thị lên hình LCD người sử dụng Khi có lệnh xuất phát xe thẳng _Trên đường đi, gặp vật cản, xe rẽ phải góc 90 độ Sau rẽ xe thẳng, giai đoạn thẳng 10 cm xe kiểm tra khoảng cách từ xe tới vật cản, gần ( bé 16cm) xe chạy tránh xa ra, xa vật (lớn 18 cm) xe chạy gần lại Trong lúc lưu đoạn đường mà xe di chuyển khơng cịn cảm biến phát có vật ( lớn 60 cm) xe rẽ trái thẳng bình thường kiểm tra khoảng cách so với vật không lưu đoạn đường Đến cảm biến không phát vật thể rẽ trái Khi đó, xe thẳng kiểm tra khoảng cách với vật lúc đầu Lần xe đoạn đường với đoạn đường sau rẽ phải lưu lúc đầu rẽ phải để trở lại lộ trình _Cứ tiếp tục kiểm tra hết lộ trình chưa, hết dừng xe chờ lần nhập để tiếp tuc lộ trình khác SVTH: Nguyễn Văn Nghĩa Trang 55 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Lưu đồ thuật tốn chương trình START Xác nhận lộ trình từ phím hiển thị lên LCD Sai Được lệnh khởi động ? Đúng Kiểm tra cảm biến trước mặt Khơng vật cản Có vật cản Tránh vật cản Đi thẳng Sai Kiểm tra đích đến Đúng STOP SVTH: Nguyễn Văn Nghĩa Trang 56 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hồi Nghĩa Lưu đồ thuật tốn chương trình tránh vật BEGIN Rẽ phải 90 độ Đọc cảm biến x Điều chỉnh khoảng cách No x Ỵ [14,16] Yes Đi thẳng lưu quãng đường Yes Phát vật bên trái No Rẽ trái 90 độ Đọc cảm biến x Điều chỉnh khoảng cách No x Ỵ [14,16] Yes Đi thẳng Yes Phát vật bên trái No Rẽ trái 90 độ Đi thẳng Đi khoảng lưu? Yes Rẽ phải 90 độ RETURN SVTH: Nguyễn Văn Nghĩa Trang 57 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa Lưu đồ thuật tốn chương trình giữ khoảng cách với vật cản BEGIN Đọc cảm biến x No x >16 Yes Chạy lại gần x < 14 Yes Chạy xa RETURN 6.4 Mục tiêu ứng dụng chương trình: Với khả xe làm cơng việc thay cho người nhà xưởng hay môi trường làm việc độc hại nguy hiểm như: dị phá mìn qn sự, vận chuyển ngun vật liệu nhà xưởng, kiểm tra chỗ rò rĩ đường ống nước hay nhà máy phóng xạ, hạt nhân… Sau chương trình viết CCS cho xe tự hành #include #device adc=10 #use delay(clock=2000000) #include #include #use fast_io(a) #byte porta=0x05 #use fast_io(b) #byte portb=0x06 #use fast_io(c) #byte portc=0x07 #use fast_io(d) #byte portd=0x08 #use fast_io(e) #byte porte=0x09 SVTH: Nguyễn Văn Nghĩa Trang 58 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa // -// Khai bao cac ham void slow_l(); void khoangcach(); void ctrl_dis(); // -//Khai bao cac bien toan cuc int8 const qt[4] = {0x01,0x02,0x04,0x08}; // dong coquay thuan int8 const qn[4] = {0x01,0x08,0x04,0x02}; // dong co quay nguoc int8 const tien[4] = {0x11,0x28,0x44,0x82}; // xe tien toi int8 const qtrai[4] = {0x11,0x22,0x44,0x88}; // xe re trai int8 const qphai[4] = {0x11,0x88,0x44,0x22}; // xe re phai int8 const cphai[8] = {0x11,0x38,0x24,0x62,0x41,0xb8,0x84,0x92}; //banh phai buoc buoc banh trai buoc buoc int8 const ctrai[8] = {0x11,0x29,0x48,0x8b,0x14,0x26,0x42,0x83}; //banh trai buoc buoc banh phai buoc buoc int8 kcach1=0,kcach2=0,kcach3=0; // khoang cach tu cam bien // -void phai(int8 gocphai) // Re phai goc bat ki { int8 i=0,xung_p=0;int8 k; xung_p=(gocphai*0.6); // So xung can cung cap de quay for(k=0;k4) i=0; }} // -void trai(int8 goctrai) // Re trai goc bat ki {int8 i=0,xung_t=0;int8 k; xung_t=goctrai*0.6;// So xung can cung cap de quay for(k=0;k4) i=0; }} // SVTH: Nguyễn Văn Nghĩa Trang 59 Luận văn tốt nghiệp GVHD:PGS.TS Dương Hoài Nghĩa void phai_90() // Quay ben phai goc 90 {int8 i=0;int8 k; for(k=0;k4) i=0; }} // -void trai_90()// Quay ben phai goc 90 {int8 i=0;int8 k; for(k=0;k4) i=0; }} // -void dithang(int8 xung) // Di thang voi bien dau vao la so cm {int8 i,bu;int16 xung_1; xung_1=xung*2; // bu lai so xung bi truot het 1/2 for(bu=0;bu

Ngày đăng: 30/10/2022, 18:09

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w