Lập trình điều khiển trong chế tạo robot tự động

39 614 0
Lập trình điều khiển trong chế tạo robot tự động

Đ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

Chu Thị Quý Khóa Luận Tốt Nghiệp LỜI CẢM ƠN Trong thời gian nghiên cứu hoàn thành đề tài, nhận nhiều đóng góp giúp đỡ quý thầy cô, bạn sinh viên ủng hộ tất người thân, bạn bè Những ủng hộ giúp nhiều để hoàn thành đề tài Qua đây, em xin gửi lời cám ơn sâu sắc tới TS.Nguyễn Thế Lâm thường xuyên hướng dẫn, động viên giúp đỡ em Tôi xin cám ơn người bạn nhóm SP2, người vượt khó khăn, thử thách để hoàn thành công việc Em xin chân thành cám ơn thầy cô giáo khoa Vật Lý, bạn sinh viên động viên kịp thời đặc biệt có ý kiến quý báu để em hoàn thành đề tài Do lần tham gia nghiên cứu khoa học, đặc biệt tiếp cận với công việc lập trình đầy mẻ phức tạp, trình độ hiểu biết chưa sâu nên không tránh khỏi thiếu sót, hạn chế Tôi mong nhận nhiều ý kiến đóng góp thiết thức để hoàn thiện Hà Nội, tháng năm 2011 Sinh Viên Chu Thị Quý -1- Chu Thị Quý Khóa Luận Tốt Nghiệp LỜI CAM ĐOAN Em xin cam đoan công trình nghiên cứu riêng em Các số liệu, kết khóa luận trung thực chưa công bố công trình nghiên cứu khác Sinh Viên Chu Thị Quý -2- Chu Thị Quý Khóa Luận Tốt Nghiệp MỤC LỤC Trang LỜI CÁM ƠN LỜI CAM ĐOAN MỤC LỤC MỞ ĐẦU Lý chọn đề tài Mục tiêu nghiên cứu đề tài Chương 1: Giời thiệu chung hợp ngữ vi điều khiển AT89C52 Chương 2: Kỹ thuật lập trình vi điều khiển chế taọ Robot 13 Chương3: Lập trình điều khiển Robot tự động 21 KẾT LUẬN 38 TÀI LIỆU THAM KHẢO 39 -3- Chu Thị Quý Khóa Luận Tốt Nghiệp MỞ ĐẦU Lý chọn đề tài Trong trình chế tạo máy móc tự động lập trình vi điều khiển phần việc thiếu Lập trình vi điều khiển tạo chương trình điều khiển cho máy tự động này.Chương trình điều khiển xuất tín hiệu số, mạch điện tử chuyển thành tín hiệu tương tự điều khiển thiết bị, ngược lại nhận tín hiệu từ bên để xử lý thông qua cổng ( port) giao tiếp Chúng ta hình dung cỗ máy, phần khí giúp tạo thành hình dáng phần điện tử lập trình não để điều khiển hoạt động Một ưu điểm vượt trội lập trình vi xử lý chương trình điều khiển thay nhiều mạch logic phức tạp với độ xác cao, điều làm cho mạch điện tử đơn giản đỡ tốn qua trình chế taọ Một chương trình điều khiển viết nhiều ngôn ngữ lập trình khác Pascal, lập trình C, Assembly,……Với ngôn ngữ lập trình cấp cao, có ưu điểm dễ viết, dễ hiểu kích thước chương trình lớn thực chương trình cho máy phức tạp, việc điều khiển có nhiều Modul, lúc kích thước chương trình lớn dung lượng chíp điều khiển Chính lý đó, khắc phục việc sử dụng ngôn ngữ lập trình cấp thấp Assembly để viết chương trình Để chương trình chạy được, có chương trình đủ, cần để chíp vi điều khiển để nạp chương trình viết vào Một chương trình điều khiển sau dịch file Hecxa -4- Chu Thị Quý Khóa Luận Tốt Nghiệp nạp vào chíp chíp gắn với mạch điện tử Hiện nay, thấy có nhiều họ vi điều khiển 8051, 8048, AVR….Nhưng với trình thiết kế chế tạo Robot, sử dụng chíp vi điều khiển AT89C52, chíp đơn có cấu trúc giống họ MCS51, loại chíp phổ biến thuận tiện giao tiếp Ngày nay, chíp vi điều khiển sử dụng rộng rãi nhiều sản phẩm khác nhau, đặc biệt sản phẩm công nghệ cao thiết bị công nghệ, ngoại vi, máy tính, thiết bị tự động,… Với mong muốn vận dụng kiến thức kỹ thuật điện tử lập trình, đặc biệt tiếp cận với lập trình điều khiển tham gia chế tạo thành công số Robot để tham gia Robocon 2011 vừa qua Trong chế tạo Robot đòi hỏi kỹ thuật tổng hợp gồm nhiều phần khác nhau, khóa luận tốt nghiệp mình, trình bày phân nhỏ : “Lập trình điều khiển chế tạo Robot ” Mục tiêu nghiên cứu đề tài Nghiên cứu lĩnh vực mới, lĩnh vực lập trình điều khiển, áp dụng vào thực tế để chế tạo số thiết bị điều khiển tự động Đồng thời nắm bắt số công nghệ chế tạo Robot nhằm phục vụ nhu cầu tự động hóa xã hội tương lai -5- Chu Thị Quý Khóa Luận Tốt Nghiệp CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ HỢP NGỮ VÀ VI ĐIỀU KHIỂN AT89C52 Giới thiệu tổng quan hợp ngữ Hợp ngữ ( Assembly language) ngôn ngữ máy tính, có vị trí ngôn ngữ máy ngôn ngữ cấp cao Ngôn ngữ Assembly gắn liền với ngôn ngữ nhị phân máy tính, sử dụng từ đại diện ngắn gọn thay cho số nhị phân dài dòng khó hiểu trình dịch hợp ngữ dịch trực tiếp sang mã máy Ngôn ngữ Assembly sử dụng từ có tính gợi nhớ, từ viết tắt để ta dễ ghi nhớ thị phức tạp làm cho việc lập trình Assembly dể dàng Mục đích việc dùng từ gợi nhớ nhằm thay việc lập tình trực tiếp ngôn ngữ máy sử dụng máy tính thường gặp nhiều lỗi tốn thời gian Chương trình viết Assembly có tốc độ cao dung lượng nhỏ Các ngôn ngữ cấp cao Pascal , C, hay Visual Basin sử dụng từ phát biểu dễ hiểu người Một dòng lệnh ngôn ngữ lập trình cấp cao biên dịch sang hợp ngữ bao gồm nhiều dòng lệnh Ngôn ngữ máy (machine language) ngôn ngữ dạng nhị phân máy tính Một chương trình viết ngôn ngữ máy tính chuỗi byte nhị phân biểu diễn lệnh mà máy tính thực thi Như ta nói trên, hợp ngữ thay mã nhị phân ngôn ngữ máy tính mã gợi nhỡ giúp ta dễ nhớ dễ lập trình hơn.Một chương trình viết hợp ngữ thực thi trực tiếp máy tính Sau viết xong, chương trình phải qua trình biên dịch thành ngôn ngữ máy Phụ thuộc vào mức độ phức tạp môi trường lập trình, việc dịch -6- Chu Thị Quý Khóa Luận Tốt Nghiệp bao gồm nhiều bước tạo sản phẩm chương trình ngôn ngữ máy thực thi Như vậy, chương trình viết hợp ngữ ( gọi tắt chương trình hợp ngữ) chương trình viết dạng ký hiệu, mã gợi nhớ, Trong phát biểu tương ứng với lệnh ngôn ngữ máy Các chương trình thực thi trực tiếp máy tính Một chương trình viết ngôn ngữ máy ( gọi tắt ngôn ngữ máy) chương trình chứa mã nhị phân biểu diễn lệnh máy tính Các chương trình ngôn ngữ máy thường gọi chương trình đối tượng hay mã đối tượng thực thi máy tính Vi điều khiển AT89C52 2.1 Sơ đồ khối Sau lập trình chương trình điều khiển dạng File Hecxa nạp vào chíp vi điều khiển AT89C52 để gắn với mạch điện tử, ta có sơ đồ khối sau: Chương trình AT89C52 Mạch điện tử H 1.1: Sơ đồ khối chương trình dung AT89C52 Một chương trình sau viết dạng file hecxa máy vi tính nạp vào chíp vi điều khiển thông qua nạp chíp Sau đó, chíp vi điều khiển gắn trực tiếp vào mạch điện tử Chíp vi điều khiển AT89C51 thông qua mạch điện tử, điều khiển hoạt động động -7- Chu Thị Quý Khóa Luận Tốt Nghiệp robot trình làm việc Như vậy, chíp vi điều khiển có vị trí quan trọng, có tác dụng não robot Cấu tạo vi điều khiển dạng sơ đồ khối: CPU Xung đếm Các ngắt Thiết bi nối Thời gian tiếp Bộ định Điều Giao tiếp Giao tiếp thời khiển ngắt nối tiếp song song song song Các bus địa chỉ, liệu, điều khiển Bộ nhớ ROM Bộ nhớ RAM H1.2: Sơ đồ khối cấu tạo vi điều khiển AT89C52 -8- Thiết bị Chu Thị Quý Khóa Luận Tốt Nghiệp 2.2 Đặc điểm chung vi điều khiển AT89C52 Vi điều khiển AT89C52 mà sử dụng có đặc điểm sau: - 4KB ROM bên - 256 Byte - Port xuất nhập liệu I/O - Giao tiếp nối tiếp - 64 KB vùng nhớ mã - 64 Kb vùng nhớ liệu - Xử lý Bôlean 2.3 Sơ đồ chân vi điều khiển At89C52 Trên sơ đồ chân có nhóm chân sau: 2.3.1 Nhóm chân nguồn: + Nguồn nuôi 5V ( chân số 40) + Nối đất ( chân số 20) H1.3.Các vi mạch họ AT89C52 -9- Chu Thị Quý Khóa Luận Tốt Nghiệp 2.3.2 Nhóm chân điều khiển Nhóm phân biệt tín hiệu vào, a Nhóm tín hiệu vào điều khiển + Xtal l ( chân số 18), Xtal 2( chân số 19): nối tinh thể thạch anh cho máy phát xung nhịp chu trình + RST( Reset): (chân số 9) nối chuyển mạch để xóa trạng thái ban đầu hay khởi động lại + /EA/CPP: (chân số 31) chọn nhớ (nối đất) hay chọn nhớ (nối nguồn nuôi 5V) + T2 hay P1.0 (chân số 1) tín hiệu vào đếm cho Timer2/ Counter2 89C52 + T2EX: (chân số 2) tín hiệu vào ngắt cho 89C52 + /INT hay P3.2: (chân số 12) tín hiệu vào gây ngắt cho 8051 + /INT hay P3.3: (chân số 13) tín hiệu vào gây ngắt cho 8051 + T hay P3.4: (chân số 14) tín hiệu vào đếm cho Timer0/ Counter0 + T hay P3.5: (chân số 15) tín hiệu vào đếm cho Timer1/ Counter b Nhóm tín hiệu điều khiển + ALE//PROG: ( chân số 30) dùng để đưa tín hiệu chốt địa (ALE) có nhớ hay điều khiển ghi chương trình /PROG + /PSEN: ( chân số 29) dùng để đưa tín hiệu điều khiển đọc nhớ chương trình ROM + /WR hay P3.6: (chân số 29) dùng để đưa tín hiệu ghi liệu vào nhớ + /RP hay P3.7:( chân số 17) để đưa tín hiệu đọc liệu từ nhớ - 10 - Chu Thị Quý Khóa Luận Tốt Nghiệp SETB P2.3 RET ;==========ĐẾM VẠCH============================= DI_DEM: JB P1.2,DI_DEM ;Chờ P1.2 JNB P1.2,CHAY ; Chờ P1.2 – Đếm kiện INC R0 LJMP MAIN KTRA: Đoạn chương trình điều khiển Robot dò đường đếm vạch trước dừng lại để hạ cánh tay gắp đồ Đoạn chương trình sau tiếp tục công vệc tiếp theo, Robot thực thủ tục đưa ; CHUYỂN ĐỘNG MOTO HẠ TAY XUỐNG ;==========MOTO CHUYỂN ĐỘNG HẠ CÁNH TAY XUỐNG========= SETB P2.4 ; Chuyển động moto quay đưa cánh tay xuống CLR P2.5 LCALL DELAY200 ; Gọi thủ tục trễ LCALL DELAY200 SETB P2.4 SETB P2.5 ;========MOTO CHUYỂN ĐỘNG ĐƯA TAY QUAY RA NHẶT ĐỒ===== SETB P2.6 CLR P2.7 LCALL DELAY200 SETB P2.6 SETB P2.7 ; Chuyển động moto quay cánh tay để nhặt đồ - 25 - Chu Thị Quý Khóa Luận Tốt Nghiệp ;=====================NHẶT ĐỒ======================== SETB P1.6 ; Chuyển động Moto làm hạ cánh tay CLR P1.7 ; nâng vật LCALL DELAY200 SETB P1.6 SETB P1.7 ; Gọi thủ tục trễ ;===========MOTO CHUYỂN ĐỘNG ĐƯA TAY LÊN============ CLR P2.4 ;Xóa chân P2.4 SETB P2.5 ; Đưa P2.5 lên giá trị LCALL DELAY200 ; Gọi thủ tục trễ SETB P2.4 SETB P2.5 LCALL DELAY200 LCALL DELAY200 Với đoạn chương trình trên, ta thấy rằng, robot phải thực thao tác nhặt đồ Nhiệm vụ tiếp theo, lập trình cho Robot thêm đoạn nữa, sau đặt đồ nhặt xuống ;=====TIẾP TỤC ĐI THĂNG THÊM VẠCH NỮA VÀ DỪNG LẠI==== MOV R0,#0 ; Chờ R0=0 MAINa: CJNE R0, #3, DI_DEMa ; Nhảy đến DI_DEMa R0=0 SETB P2.0 SETB P2.1 SETB P2.2 SETB P2.3 ; Chuyển giá trị P2.0, P2.1, P2.2, P2.3 lên giá trị - 26 - Chu Thị Quý Khóa Luận Tốt Nghiệp LCALL DELAY200 LCALL DUNGLAIa ; Gọi thủ tục dừng lại ;================================================== CHAYa: JB P1.0, KHONG1a JB P1.1, KHONG2a LCALL DITHANGa SJMP KTRAa ; Chờ P1.0=0 KHONG2a: LCALL RETRAIa SJMP KTRAa ; Gọi thủ tục rẽ trái KHONG1a: JB P1.1, KHONG3a LCALL REPHAIa SJMP KTRAa ; Gọi thủ tục rẽ phải KHONG3a: LCALL DITHANGa SJMP KTRAa ;=========CHƯƠNG TRÌNH CON===================== RETRAIa: CRL P2.2 SETB P2.1 SETB P2.0 SETB P2.3 ; Gọi thủ tục rẽ trái RET REPHAIa: CRL P2.1 SETB P2.1 SETB P2.2 ; Gọi thủ tục rẽ phải - 27 - Chu Thị Quý Khóa Luận Tốt Nghiệp SETB P2.3 DITHANGa: CLR P2.0 CLR P2.2 SETB P2.1 SETB P2.3 ; Thủ tục thẳng RET DUNGLAIa: SETB P2.0 SETB P2.1 SETB P2.2 SETB P2.3 ; Thủ tục dừng lại RET ;===================ĐẾM VẠCH========================== DI_DEMa: JB P1.2, DI_DEMa ; Chờ P1.2 JNB P1.2, CHÂY ; Chờ P1.2- Đếm kiện INC R0 LJMP MAINa KTRAa: Sau đếm vạch nữa, Robot dừng lại thả vât xuống Vậy làm để thả vật cánh tay Robot xuống được? ; ĐẶT VẬT XUỐNG SÀN ;===========MOTO CHUYỂN ĐỘNG HẠ CÁNH TAY XUỐNG===== SETB P2.4 ;Đưa P2.4 lên làm quay moto hạ cánh tay Robot xuống CLR P2.5 LCALL DELAY200 - 28 - Chu Thị Quý Khóa Luận Tốt Nghiệp LCALL DELAY200 SETB P2.4 SETB P2.5 ;===============ĐẶT VẬT XUỐNG======================== CLR P2.6 SETB P1.7 LCALL DELAY200 SETB P1.6 SETB P1.7 ; Thả vật khỏi tay ;===========MOTO CHUYỂN ĐỘNG ĐƯA TAY LÊN=============== CLR P2.4 SETB P2.5 LCALL DELAY200 SETB P2.4 SETB P2.5 LCALL DELAY200 LCALL DELAY200 ; Chuyển động Moto đưa cánh tay lên ;========MOTO CHUYỂN ĐỘNG ĐƯA TAY QUAY VÀO TRONG==== CLR P2.6 SETB P2.7 LCALL DELAY200 ; Chuyển động quay Moto vào ; Gọi thủ tục trễ ; KẾT THÚC QUÁ TRÌNH Trong lập trình vi điều khiển, việc tăng hay giảm độ rộng xung thự cách dễ dàng thông qua việc thêm hay bớt thủ tục trễ thời gian, điều giúp bạn điều chỉnh hoạt động Robot dễ dàng - 29 - Chu Thị Quý Khóa Luận Tốt Nghiệp Encoder 3.1 Công dụng Encoder - Một công nghệ số đội robot áp dụng năm gần sử dụng Encoder - Cơ sở phương pháp sử dụng đặc tính độ dài quãng đường sai số chuyển động hai bánh động nhờ khai thác tĩnh chất mã hóa xung vòng quay ( Rotary Encoder) - Bộ Encoder thực chất đĩa đục lỗ có gắn cặp sensor thu phát bên - Bộ Encoder gắn bánh xe động Robot 3.2 Nguyên tắc hoạt động Encoder Gồm thu phát hồng ngoại đĩa cho chia lỗ đặt hệ thống thu phát Đĩa gắn trục động trục chuyển động Quá trình chuyển động làm cho phần photo sensor thay đổi trạng thái tạo chuỗi xung vuông đầu Tùy theo số lỗ đĩa mà số xung tạo vòng quay đĩa khác Số lượng lớn nghĩa số lỗ nhiều vòng tròn 360 độ Nghĩa ta điều chỉnh xác, dĩ nhiên Encoder đắt tiền Chúng ta thấy nhiều loại Encoder dùng từ trường đĩa có nhiều vòng lỗ giới thiệu loại phổ dụng đơn giản sử dụng ánh sáng Trong thực tế thấy Encoder động DC không thành phận độc lập Việc lựa chọn sử dụng hai loại Encoder có ưu nhược điểm rêng mà không đề cập đến - 30 - Chu Thị Quý Khóa Luận Tốt Nghiệp 3.3 Cấu tạo Encoder: H3.1 Cấu tạo Encoder - Khi Robot muốn dịch chuyển theo quỹ đạo xác định cần vào hai trạng thái quãng đường hai bánh ( tham chiếu với chương trình hướng chuyển động), sai số quãng đường hai động - Phương pháp đặc tính mềm dẻo phải chuyển động xoay Robot góc khỏi quỹ đạo - Encoder thường có dây (hoặc dây tùy loại) bao gồm dây nguồn, dây tín hiệu A B dây pha Z Hai dây tín hiệu A B cho phép bạn xác định số vòng quay động cơ, vận tốc chiều quay động Để lập trình xử lý tín hiệu Encoder, bạn điều khiển chế độ Countre, vi điều khiển đếm xung từ vi điều khiển - Chương trình chạy: $mod51fx ;include ;định nghĩa biến ghi ;==============define bit====================== ;===========motor============================ MOTOR1 DATA CCAP0H - 31 - ;P1.3 Chu Thị Quý Khóa Luận Tốt Nghiệp MOTOR2 DATA CCAP1H ;P1.4 MOTOR3 DATA CCAP2H ;P1.5 MOTOR4 DATA CCAP3H ;P1.6 MOTOR5 DATA CCAP4H ;P1.7 ;=============START======================== BIT_START BIT P2.0 ; Nút ấn start ;========GIÁ TRỊ ĐIỀU XUNG=================== PWN_COUNT BIT 50H ;0-225 ;==========MAIN=============================== ORG 0000H MAIN ; Cho phép điều xung kênh P1.3- P1.7 MOV CMOD,#0 SETB CR MOV ; Chế độ chu kỳ xung nhịp =1/2 chu kỳ máy ; Cho phép PCA(programing counter array)hoạt động CCAPM0,#01000010B ;P1.3 PCA hoạt động chế độ PWM bít MOV CCAPM1,#01000010B ; P1.4 MOV CCAPM2,#01000010B ; P1.5 MOV CCAPM3,#01000010B ; P1.6 MOV CCAPM4,#01000010B ; P1.7 ;*Chương trình điều khiển vận tốc động từ 0-max từ max-0 kênh P1.3 ;*Vận tốc động từ 0-max ứng với PWN_COUNT từ 0-225 ngược lại MOV PWM_COUNT,#0 ; Động dừng JB BIT_START,$ ; Cho phép động chạy INC PWN_COUNT ; 0-max MOV MOTOR1, PWM_COUNT LCALL DELAY200MS MOV A, PWM_COUNT RUN_UP: - 32 - Chu Thị Quý Khóa Luận Tốt Nghiệp CJNE A, #255,RUN_UP RUN_DOWN: DEC PWM_COUNT ; max-0 MOV MOTOR1,PWM_COUNT LCALL DELAY200MS MOV A,#0,RUN_DOWN JMP RUN_UP SJMP $ ;==========DELAY200MS========================== DELAY200MS: MOV R2,#2 LOOP200_1: MOV R0,#200 LOOP200_2: MOV R1,#250 DJNZ R1,$ DJNZ R0,LOOP200_2 DJNZ R2,LOOP200_1 ;================================================= END - 33 - Chu Thị Quý Khóa Luận Tốt Nghiệp Ổn tốc động 4.1 Nhiệm vụ ổn tốc động cơ: - Muốn tăng hay giảm tốc độ thay đổi thời gian lưu DELAY - Nguyên lý không sử dụng băm xung, khống chế thời gian T-on T-off - Ban đầu vào, cho khởi động 5s để tạo Momem cho động quay, thay đổi thời gian cho phu hop Mỗi có ngắt ngoài, cho động tắt khoảng thời gian cố định DELAY, sau cho chạy lại Mình gọi thời gian Delay T-off, thời gian động chạy T-on 4.2 Chương trình ổn tốc động cơ: Sự khống chế Ton Toff sau: - T-on lớn (DC chay nhanh)  ngắt xảy nhanh, T-off tăng => T-on nhỏ lại - T-on nhỏ lại  ngắt xảy chậm  T-off giảm => T-on tăng lại Cứ chu trình lặp lặp lại, động ổn tốc * Chương trình: ORG 0000H LJMP MAIN ORG ; Địa bắt đầu bật nguồn ; Nhảy đến chương trình MAIN: 0003H LJMP NGAT_N0 ORG 001BH LJMP NGAT_T1 ORG 0030H MOV A,#20 MOV R1,#5 - 34 - Chu Thị Quý Khóa Luận Tốt Nghiệp MAIN: MOV IE,#89H SETB PT1 SETB TF1 SETB IT0 MAIN1: SETB P3.3 LCALL DELAY1 SUBB A,R1 MOV R2,A MOV A,#20 CLR P3.3 LCALL DELAY2 CJNE R3,#10,KT1 CJNE R4,#10,KT2 INC R1 LJMP MAIN KT1: CJNE R4,#10,KT3 INC R1 LJMP MAIN KT3: INC R1 LJMP MAIN1 KT2: DEC R1 LJMP MAIN DELAY1: CLR TF1 - 35 - Chu Thị Quý Khóa Luận Tốt Nghiệp CLR TR1 LAP1: MOV TH1,#HIGH(-10) MOV TL1,#LOW(-10) SETB TR1 JNB TF1,$ CLR TF1 CLR TR1 DJNZ R1,LAP1 RET DELAY2: CLR TF1 CLR TR1 LAP2: MOV TH1,#HIGH(-10) MOV TL1,#LOW(-10) SETB TR1 JNB TF1,$ CLR TF1 CLR TR1 DJNZ R2,LAP2 RET NGAT_N0: INC R0 CJNE R0,#4,STOP MOV R0,#0 MOV R3,#10 RET STOP: - 36 - Chu Thị Quý Khóa Luận Tốt Nghiệp NGAT_T1: MOV R7,#20 LOOP: CLR TF1 CLR TR1 MOV TH1,#HIGH(-50000) MOV TL1,#LOW(-50000) SETB TR1 JNB TF1,$ DJNZ R7,LOOP RET END - 37 - Chu Thị Quý Khóa Luận Tốt Nghiệp KẾT LUẬN “ Lập trình điều khiển chế tạo Robot” phần thiếu chế tạo Robot Nó tạo tính ổn định tạo cac hoạt động linh hoạt cho Robot, đồng thời việc lập trình điêu khiển giúp điều khiển hoạt động Robot cách dễ dàng Qua trình thực hiện, đề tài thu kết sau: - Viết chương trình điều khiển Robot tự động: thẳng, đếm xung, quay vòng, nâng hạ cánh tay - Viết chương trình sử dụng Encoder kiểm soát đường Robot - Viết chương trình ổn tốc cho động phát động chuyển động Robot - Tham gia chế tạo thành công Robot tham gia tự động thi “ Sáng tạo Robocon Việt Nam 2011” - Ứng dụng phát triển đề tài: Trển khai ứng dụng cho sản phẩm tự động hóa đời sồng, sản xuất ngành công nghiệp nặng, môi trường làm việc ôi nhiễm có hại cho sức khỏe người, việc chế tạo Robot tự động để giúp người tránh khỏi công việc có hại cần thiết - 38 - Chu Thị Quý Khóa Luận Tốt Nghiệp TÀI LIỆU THAM KHẢO [1] Tống Văn On- Hoàng Đức Hải, Họ vi điều khiển 8051, NXB Lao động- Xã Hội [2] Ngô Diêp Tập, Kỹ thuật gép nối máy tính, NXB Khoa học Kỹ Thuật,2011 [3] Ngô Diên Tập, Lập trình xử lý đo lường điều khiển, NXB Khoa học va kỹ thuật, 2001 [4] Nguyễn Minh San- Hoàng Đức Hải, Cẩm nang lập trình, NXB Giáo dục, 1999 [5] Hoàng Đức Hải Tống Văn On, Hợp ngữ lập trình ứng dụng tập 1, NXB Giáo Dục, 2001 [6] Phương Lan, Kỹ xảo lập trình VB6, NXB Lao Động Xã Hội [7] Đặng Bình Phương , Nhập môn lập trình, NXB Đại Học Quốc Gia, 2005 [8] T.s Lê Hữu Lập, Th.s Nguyễn Duy Phương, Giáo trình Kỹ Thuật lập trình, NXB Học viện Bưu Chính Viễn Thông, 2002 [9] Nguyễn Đình Tê, Hoàng Đức Hải, Giáo trình lý thuyết tập ngôn ngữ C, Nhà xuất Giáo dục, 1999 [10] Ngô Văn Viện, Giúp Tự Học Lập Trình Với Ngôn Ngữ C, NXB Đồng Nai, 2002 - 39 - [...]... nào về quá trình lập một robot tự động, chúng ta sẽ nghiên cứu một số chương trình đã được lập cho vi điều khiển, những chương trình này sẽ trực tiếp điều khiển mọi hoạt động của Robot trong quá trình làm việc Mỗi Robot có thể trực hiện được một số công việc nhất định tùy theo mục đích của người thiết kế và chế tạo Cương trình điều khiển cho mỗi Robot là tương đối dài, vì vậy dưới đây tôi chỉ trình bày... Tốt Nghiệp 1.2.4 Vi điều khiển AT89C52 H1.4: Vi điều khiển AT89C52 H1.5: Vi điều khiển AT89S51 H1.6: Vi điều khiển AT89C2051 - 12 - Chu Thị Quý Khóa Luận Tốt Nghiệp CHƯƠNG 2: KỸ THUẬT LẬP TRÌNH VI ĐIỀU KHIỂN TRONG CHẾ TẠO ROBOCON 1 .Trình dịch hợp ngữ Trình dịch hợp ngữ ( trình biên dịch) là chương trình dùng để dịch một chương trình hợp ngữ thành chương trình ngôn ngữ máy Chương trình ngôn ngữ máy (... thể tạo ra một robot đơn giản có thể tự dò đường đi theo mong muốn Trên đây là một số các ví dụ về lập trình vi điều khiển, các ban hoàn toàn có thể thay đổi những chương trình trên theo ý riêng của mình Những chương trình này tuy đơn giản nhưng hi vọng sẽ hữu ích cho những bạn mời tham gia vào lập trình điều khiển - 20 - Chu Thị Quý Khóa Luận Tốt Nghiệp CHƯƠNG 3: LẬP TRÌNH ĐIỀU KHIỂN ROBOT TỰ ĐỘNG... diện chương trình như hình dưới đây: H2.1 Giao diện của chương trình Reads51 Với phần mềm lập trình READS51 này, bạn có thể trực tiếp lập trình trên cửa sổ giao diện và cũng có thể trực tiếp kiểm tra được đúng hay sai Đây là điều rất thuận lợi trong quá trình lập trình điều khiển - 14 - Chu Thị Quý Khóa Luận Tốt Nghiệp 2 Một số chương trình mẫu Trong phần này ta nghiên cứu một số chương trình mẫu, minh... phải, điều khiển tốc độ, đo quãng đường, đếm vạch, băm xung,……Ý nghĩa của các đoạn chương trình sẽ được ghi trong phần chú thích Và tất nhiên, đây chỉ là những chương trình được viết theo suy nghĩ của tác gải, các bạn có thể thay đổi tùy theo mục đích sử dụng của Robot và kỹ năng lập trình của mình Sau đây, tôi sẽ giới thiệu với các bạn một Modul điều khiển Rbot tự động: 1 Nhiệm vụ của Robot tự động. .. trí và sau đó chồng hoa lên đài hoa Krathong - 21 - Chu Thị Quý Khóa Luận Tốt Nghiệp - Robot tự động mang theo Krathong đã hoàn thành lên mặt sông Không có bất kỳ phần nào của Robot được phép chạm vào bề mặt sông dù trực tiếp hay gián tiếp 2 Chương trình điều khiển Robot tự động ; QUY ĐỊNH CÁC CHUÂN CỦA CHÍP ĐIỀU KHIỂN ; ĐẦU VÀO” ; DÒ ĐƯỜNG : P1.0, P1.1 ; ĐẾM VẠCH : P1.2 ; ĐẦU RA ; TIẾN, LÙI, RẼ TRÁI,... khỏi tay ;===========MOTO CHUYỂN ĐỘNG ĐƯA TAY LÊN=============== CLR P2.4 SETB P2.5 LCALL DELAY200 SETB P2.4 SETB P2.5 LCALL DELAY200 LCALL DELAY200 ; Chuyển động của Moto đưa cánh tay đi lên ;========MOTO CHUYỂN ĐỘNG ĐƯA TAY QUAY VÀO TRONG= === CLR P2.6 SETB P2.7 LCALL DELAY200 ; Chuyển động quay Moto vào trong ; Gọi thủ tục trễ ; KẾT THÚC QUÁ TRÌNH Trong lập trình vi điều khiển, việc tăng hay giảm độ... gồm 2 dây nguồn, 2 dây tín hiệu A và B và dây pha Z Hai dây tín hiệu A và B cho phép bạn xác định số vòng quay của động cơ, vận tốc và chiều quay của động cơ Để lập trình xử lý tín hiệu Encoder, bạn có thể điều khiển ở chế độ Countre, vi điều khiển sẽ đếm xung từ vi điều khiển - Chương trình chạy: $mod51fx ;include ;định nghĩa các biến thanh ghi ;==============define bit======================... khiển Rbot tự động: 1 Nhiệm vụ của Robot tự động - Sau khi Robot bằng tay hoàn thành xong nhiệm vụ Robot tự động sẽ hoạt động đi thu thập đài hoa và hoa Krathong từ các điểm lưu trữ và đặt tại vị trí chuẩn bị trên sân thi đấu - Các Robot tự động di chuyển lên vùng Sala mang theo 1 đài hoa Kratong và 1 hoa Krathong từ các vị trí chuẩn bị Các Robot tự động phải xếp đài hoa lên giá đèn tại điểm trang trí và... quan trọng trong quá trình dịch là ghi nhận lại các lỗi có trong chương trình nguồn để thông báo lại cho người viết chương trình Trong dạng sau, việc liên kết được yêu cầu để thiết lập địa chỉ tuyệt đối từ đó chương trình được thực thi Ngày nay, với điều kiện phát triển của khoa học kỹ thuật, đặc biệt là sự phát triển mạnh mẽ của công nghệ thông tin, nhiều phần mềm ( Software) cho phép tạo cả tệp tin ... chọn đề tài Trong trình chế tạo máy móc tự động lập trình vi điều khiển phần việc thiếu Lập trình vi điều khiển tạo chương trình điều khiển cho máy tự động này.Chương trình điều khiển xuất tín... CHƯƠNG 3: LẬP TRÌNH ĐIỀU KHIỂN ROBOT TỰ ĐỘNG Để hiêu phần trình lập robot tự động, nghiên cứu số chương trình lập cho vi điều khiển, chương trình trực tiếp điều khiển hoạt động Robot trình làm... LUẬN “ Lập trình điều khiển chế tạo Robot phần thiếu chế tạo Robot Nó tạo tính ổn định tạo cac hoạt động linh hoạt cho Robot, đồng thời việc lập trình điêu khiển giúp điều khiển hoạt động Robot

Ngày đăng: 30/11/2015, 22:11

Mục lục

  • LỜI CẢM ƠN

  • Hà Nội, tháng 5 năm 2011

  • Sinh Viên

  • Chu Thị Quý

  • LỜI CAM ĐOAN

  • Sinh Viên

  • Chu Thị Quý

  • MỤC LỤC

  • MỞ ĐẦU

  • 1. Lý do chọn đề tài

  • 2. Mục tiêu nghiên cứu đề tài

  • H 1.1: Sơ đồ khối của chương trình dung AT89C52

  • H1.2: Sơ đồ khối cấu tạo của vi điều khiển AT89C52

  • 2.2 Đặc điểm chung của vi điều khiển AT89C52

  • 2.3 Sơ đồ chân của vi điều khiển At89C52

  • 2.3.1. Nhóm chân nguồn:

  • 2.3.2. Nhóm chân điều khiển.

  • Nhóm này còn phân biệt các tín hiệu vào, ra.

  • 1.2.4. Vi điều khiển AT89C52

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

Tài liệu liên quan