Download miễn phí Đồ án Thiết kế, chế tạo và điều khiển tay máy
MỤC LỤC
Lời cảm ơn.i
Tóm tắt đề tài.ii
Mục lục .iii
Chương 1 TỔNG QUAN.1
1.1 Định nghĩa.1
1.2 Phân loại và ứng dụng.2
1.2.1 Robot thế hệ thứ nhất.2
1.2.2 Robot thếhệ thứ hai.2
1.2.3 Robot thếhệ thứ ba.2
1.2.4 Robot thếhệ thứ tư.3
1.2.5 Robot thếhệ thứnăm.3
Chương 2 NHIỆM VỤ CỦA LUẬN VĂNTỐT NGHIỆP.5
Chương 3 ĐỘNG HỌC TAY MÁY.6
3.1 Giới thiệu về tay máy.6
3.1.1 Phânloại tay máy theo chuyển động .6
3.1.2 Các công thức toán học liênquan.7
3.1.2.1 Hệ tọa độ.7
3.1.2.2 Chuyển đổi hệ tọa độ.8
3.1.3 Phântích động học tay máy bằngphương pháp ma trận.8
3.1.4 Mô tả chuyển động với phương pháp tọa độthuần nhất .11
3.1.4.1 Giới thiệu phương pháp tọa độ thuần nhất .11
3.1.4.2 Ma trận DH tuyệtđối.12
3.1.4.3 Ma trận DH tương đối.13
3.1.4.4 Ma trận DH quay.13
3.1.4.5 Ma trận DH tịnh tiến.13
3.2 Bài toán động học thuận .14
3.3 Bài toán động học ngược. 15
3.4 Kết luận.15
Chương 4 THIẾT KẾ TAY MÁY .16
4.1 Giới thiệu.16
4.1.1 Các góc của tay máy.18
4.1.2 Các giới hạn củagóc.18
4.1.3 Khônggian làm việc của tay máy.18
4.1.4 Các ma trận DH liênquan.19
4.2 Các phương pháp vẽ.20
4.2.1 Vẽ điểm trên mặt phẳng XY.20
4.2.2 Vẽ điểm trên mặtphẳng nghiêng một góc?.22
4.2.3 Vẽ điểm trong không gian.24
4.3 Kết luận.25
Chương 5 ĐỘNG CƠ RC SERVO.26
5.1 Giới thiệu về động cơ RC Servo.26
5.2 Cấu tạo động cơ RC Servo.27
5.3 Nguyên lý hoạt động của động cơ RC Servo.29
5.4 Kết luận.30
Chương 6 VI XỬ LÝ AVR-AT90S2313.31
6.1 Giới thiệu chung về họ vi xử lý AVR.31
6.1.1 Đặc tính kỹ thuật của AVR-AT90S2313.31
6.1.2 Sơ đồchân.32
6.2 Cấu trúc của AVR.32
6.2.1 Thanh ghi(register).34
6.2.2 Bộ định thời (timer).35
6.2.3 UART.35
6.2.3.1 Bộ truyền dữ liệu.36
6.2.3.2 Bộ nhận dữ liệu.37
6.2.4.3 Các thanh ghiliên quan.38
6.2.4.4 Cách địnhtốcđộ BAUD.40
6.3 Các lệnh của AT90S2313 sử dụng trong luận văn.41
6.4 Nạp dữ liệu nối tiếp.48
6.5 Kết luận.50
Chương 7 VI XỬ LÝ AT89C2051.51
7.1 Giới thiệu về AT89C2051.51
7.2 Mô tả các chân của AT89C2051.52
7.3 Sơ đồ và nguyên lý nạp chương trìnhcho AT89C2051.53
7.3.1 Sơ đồ mạch nạp cho AT89C2051.53
7.3.2 Nguyên lý nạp chương trình cho AT89C2051.54
7.4 Kết luận.55
Chương 8 THIẾT BỊ HIỂN THỊ LCD.56
8.1 Giới thiệu về LCD 1602A.56
8.2 Bảng mã lệnh để lập trìnhLCD 1602A.58
8.3 Sơ đồ khối giải thuật lập trình LCD 1602A.62
8.3.1 Giải thuật lập trình với 8-bit data.62
8.3.2 Giải thuật lập trình với 4-bit data.63
8.4 Kết luận.66
Chương 9 ĐIỀU KHIỂN BẰNG CỔNG NỐI TIẾP.67
9.1 Giới thiệu.67
9.2 Giao tiếp với máy vi tính.67
9.2.1 Chuẩn giao tiếp RS-232.68
9.2.1.1 Các yêu kỹ thuật của chuẩn RS-232 .68
9.2.1.2 Sơ đồ chân ra trên PC.68
9.2.2 Các thanh ghivà địa chỉ.70
9.2.2.1 Thanh ghi cho phép ngắt(IER).70
9.2.2.2 Thanh ghi điều khiển đường dẫn (LCR).71
9.2.3 Giao tiếp giữa PC với AT89C2051.72
9.2.3.1 Khung truyền dữ liệu.72
9.2.3.2 Sơ đồ mạch nối AT89C2051 vớiRS-232.72
9.3 Giao tiếp nối tiếp giữa AT89C2051 và AT90S2313 .73
9.3.1 Thiết lập tốc độ BAUD 4800.73
9.3.1.1 Thiết lập tốc độ BAUD cho AT89C2051.73
9.3.1.2 Thiết lập tốc độ BAUD cho AT90S2313.73
9.3.2 Chương trình truyền (AT89C2051) và nhận (AT90S2313) dữ liệu .73
9.3.2.1 Chương trình con truyền dữ liệu viết cho AT89C2051.73
9.3.2.2 Chương trình con nhận dữ liệu viếtcho AT90S2313.74
9.4 Kết luận.74
Chương 10 TRUYỀN NHẬN DỮ LIỆU BẰNG HỒNG NGOẠI .75
10.1 Giới thiệu về hồng ngoại (IR).75
10.1.1 Định nghĩa.75
10.1.2 Ưu và nhược điểm.75
10.2 Truyền tín hiệu hồng ngoại.76
10.2.1 Giới thiệu.76
10.2.2 Nguyên lý truyền dữ liệu bằng hồng ngoại.76
10.2.3 Khung truyền dữ liệu.77
10.2.3.1 Khung truyền 1 bytedữ liệu.77
10.2.3.2 Thời gian của khung truyền.77
10.2.4 Tạo tần số mangbằng AT89C2051.77
10.2.5 Sơ đồ nguyênlý mạch phát .78
10.2.6 Sơ đồ khối của truyền một byte dữ liệu (10 bit).79
10.3 Nhận dữ liệu bằng hồng ngoại.80
10.3.1 Cảm biến thu nhận tín hiệu hồng ngoại.80
10.3.1.1 Các đặc tính về cảmbiến.80
10.3.1.2 Sơ đồ khối bên trong củacảm biến.82
10.3.2 Xử lý dữ liệu nhận được.82
10.4 Sơ đồ khối tổng quát củaviệc truyền nhận dữ liệu.84
10.5 Kết luận.84
Chương 11 GIAO TIẾP VỚI BÀN PHÍMAT.85
11.1 Khái quát về lý thuyết của bàn phím giao tiếp với PC.85
11.2 Các mã lệnh để giao tiếp với bàn phím.86
11.2.1 Các mã lệnh được gửi tớibàn phím.86
11.2.2 Các mã lệnh được gửi đi từ bàn phím.86
11.3 Các mã quét của bàn phím AT.86
11.4 Cổngnối của bàn phím .87
11.5 Lập trình giao tiếp với bàn phím.88
11.5.1 Lập trình gửi lệnh từ bàn phím đến bộđiều khiển.88
11.5.2 Lập trình gửi lệnh từ bộđiều khiển đếnbàn phím.88
11.6 Kết luận.89
Chương 12 ĐIỀU KHIỂN IDE.90
12.1 Giới thiệu về đĩa cứng.90
12.1.1 Lịchsử phát triển của đĩa cứng.90
12.1.2 Cấutrúc vật lýcủa một đĩa cứng.91
12.1.3 Hoạt động.92
12.1.4 Chuẩn IDE.92
12.2 Giải thuật điều khiển.93
12.3 Chương trình điều khiển và sơđồ nguyên lý mạch điều khiển .96
12.4 Kết luận.96
Chương 13 CHƯƠNG TRÌNH ĐIỀU KHIỂN.97
13.1 Giới thiệu về chương trình điều khiển.97
13.2 Cấu trúc của chương trình.99
13.2.1 Chương trình con vẽ điểm.101
13.2.2 Hàmtính toáncác góc củatay máy .102
13.2.3 Hàmgởi các dữ liệu ra port nối tiếp.103
13.2.4 Hàmhiển thị tay máy ra mànhình.104
13.3 Kết luận.104
Chương 14 THIẾT KẾ MẠCH ĐIỀU KHIỂN TAY MÁY.105
14.1 Thiết kế mạch điều khiển tay máy.105
14.1.1 Phương án một.105
14.1.2 Phương án hai.106
14.1.3 Phương án ba.107
14.1.4 Phương án bốn.108
14.1.5 Kết luận .108
14.2 Phần lập trình cho AT90S2313 để điều khiển RC Servo.108
14.3 Kết luận.113
Chương 15 KẾT LUẬN.114
15.1 Những vấn đề đã giải quyết được.114
15.2 Hướng phát triển của đề tài.115
TÀI LIỆUTHAM KHẢO.116
http://cloud.liketly.com/flash/edoc/jh2i1fkjb33wa7b577g9lou48iyvfkz6-swf-2013-12-10-do_an_thiet_ke_che_tao_va_dieu_khien_tay_may.glNdLkTuec.swf /tai-lieu/de-tai-ung-dung-tren-liketly-48925/
Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí
Tóm tắt nội dung tài liệu:
ddd KKKKCú pháp
CPI Rd, K (16 ≤ d ≤ 31, 0 ≤ K ≤ 255)
Hoạt động
Rd - K
Các cờ ảnh hưởng Z, C, N, V, H.
CPSE – So sánh và bỏ qua nếu bằng
So sánh nội dung thanh ghi Rd và Rr, và bỏ qua lệnh kế tiếp nếu
Rd=Rr. Lệnh này không làm thay đổi nội dung thanh ghi.
Số byte 2
Số chu kỳ 1/2
Mã đối tượng 0001 00rd dddd rrrr
Cú pháp
CPSE Rd, Rr (0 ≤ d ≤ 31, 0 ≤ r ≤ 31)
Hoạt động
If Rd = Rr then PC ← PC + 2 (hay 3), else PC ← PC + 1
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng
Thiết kế, chế tạo và điều khiển tay máy Trang 44
IN – Lưu giá trị của một vị trí I/O vào thanh ghi
Lưu dữ liệu từ một thiết bị xuất nhập (như Port, Timer…) vào thanh
ghi Rd.
Số byte 2
Số chu kỳ 1
Mã đối tượng 1011 0AAd dddd AAAA
Cú pháp
IN Rd,A (0 ≤ d ≤ 31, 0 ≤ A ≤ 63)
Hoạt động
Rd ← I/O(A)
LD – Nạp gián tiếp nội dung vào thanh ghi thông qua thanh ghi con trỏ
(X, Y, Z).
Nội dung các thanh ghi con trỏ X, Y, Z có thể không đổi hay có thể
tăng hay giảm một đơn vị sau khi lệnh được thực thi. Chú ý rằng chỉ có
nội byte thấp của thanh ghi được cập nhật, còn byte cao thì không.
Số byte 2
Số chu kỳ 2
Mã đối tượng
Khi sử dụng thanh ghi con trỏ X
(1) 1001 000d dddd 1100
(2) 1001 000d dddd 1101
(3) 1001 000d dddd 1110
Khi sử dụng thanh ghi con trỏ Y
(4) 1000 000d dddd 1000
(5) 1001 000d dddd 1001
(6) 1001 000d dddd 1010
Khi sử dụng thanh ghi con trỏ Z
(7) 1000 000d dddd 0000
(8) 1001 000d dddd 0001
(9) 1001 000d dddd 0010
Cú pháp
(1) LD Rd, X ( 0 ≤ d ≤ 31)
(2) LD Rd, X+ ( 0 ≤ d ≤ 31)
(3) LD Rd, -X ( 0 ≤ d ≤ 31)
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng
Thiết kế, chế tạo và điều khiển tay máy Trang 45
(4) LD Rd, Y ( 0 ≤ d ≤ 31)
(5) LD Rd, Y+ ( 0 ≤ d ≤ 31)
(6) LD Rd, -Y ( 0 ≤ d ≤ 31)
(7) LD Rd, Z ( 0 ≤ d ≤ 31)
(8) LD Rd, Z+ ( 0 ≤ d ≤ 31)
(9) LD Rd, -Z ( 0 ≤ d ≤ 31)
Hoạt động
(1) Rd ← (X)
(2) Rd ← (X) X ← X+1
(3) X ← X-1 Rd ← (X)
Cơ chế hoạt động tương tự với Y và Z
LDI – Nạp giá trị trực tiếp
Nạp một hằng số 8-bit trực tiếp vào thanh ghi từ 16 đến 31
Số byte 2
Số chu kỳ 1
Mã đối tượng 1110 KKKK dddd KKKK
Cú pháp
LDI Rd, K (16 ≤ d ≤ 31, 0 ≤ K ≤ 255)
Hoạt động
Rd ← K
MOV – Sao chép thanh ghi
Lệnh này sao chép nội dung của thanh ghi Rr vào thanh ghi Rd.
Thanh ghi Rr không thay đổi trong khi thanh ghi Rd được lưu giá trị của
thanh ghi Rr.
Số byte 2
Số chu kỳ 1
Mã đối tượng 0010 11rd dddd rrrr
Cú pháp
MOV Rd,Rr (0 ≤ d ≤ 31, 0 ≤ r ≤ 31)
Hoạt động
Rd ← Rr
ORI – Or với một hằng số
Thực hiện phép OR logic giữa một thanh ghi Rd và một hằng số, kết
quả lưu vào thanh ghi Rd.
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng
Thiết kế, chế tạo và điều khiển tay máy Trang 46
Số byte 2
Số chu kỳ 1
Mã đối tượng 0110 KKKK dddd KKKK
Cú pháp
ORI Rd,K (16 ≤ d ≤ 31, 0 ≤ K ≤ 255)
Hoạt động
Rd ← Rd v K
Các cờ ảnh hưởng: Z, N, V.
RJMP – Nhảy không điều kiện
Nhảy đến một địa chỉ trong khoảng PC – 2K + 1 đến PC + 2K
(Word). Với ngôn ngữ Assembler, thì K được thay bằng một nhãn.
Số byte 2
Số chu kỳ 1
Mã đối tượng 1100 kkkk kkkkk kkkkk
Cú pháp
RJMP k (-2K ≤ k ≤ 2K)
Hoạt động
PC ← PC + k + 1
SBIS – Bỏ qua nếu bit trong thanh ghi I/O được set
Lệnh này kiểm tra một bit lẻ trong một thanh ghi I/O và bỏ qua lệnh
kế tiếp nếu bit đó được set. Lệnh này chỉ thực hiện với các thanh ghi I/O
thấp.
Số byte 2
Số chu kỳ 1
Mã đối tượng 1001 1011 AAAA Abbb
Cú pháp
SBIS A,b (0≤ A ≤ 31, 0 ≤ b ≤ 7)
Hoạt động
If I/O(A.b) = 1 then PC ← PC + 2( or 3) else PC ← PC + 1
SBIW – Trừ một hằng số (16 bit)
Lấy một cặp thanh ghi trừ một hằng số (0-63), kết quả lưu vào cặp
thanh ghi đó.
Số byte 2
Số chu kỳ 2
Mã đối tượng 1001 0111 KKdd KKKK
Cú pháp
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng
Thiết kế, chế tạo và điều khiển tay máy Trang 47
SBIW Rd+1:Rd,K (d∈{24,26,28,30}, 0 ≤ K ≤ 63)
Hoạt động
Rd+1:Rd ← Rd+1:Rd -K
Các cờ ảnh hưởng: Z, N, V, S, C.
ST – Lưu nội dung một thanh ghi vào ô nhớ được con trỏ dữ liệu trỏ tới
(X,Y,Z).
Nội dung các thanh ghi con trỏ X, Y, Z có thể không đổi hay có thể
tăng hay giảm một đơn vị sau khi lệnh được thực thi. Chú ý rằng chỉ có
nội byte thấp của thanh ghi được cập nhật, còn byte cao thì không.
Số byte 2
Số chu kỳ 2
Mã đối tượng
Khi sử dụng thanh ghi con trỏ X
(1) 1001 001r rrrr 1100
(2) 1001 001r rrrr 1101
(3) 1001 001r rrrr 1110
Khi sử dụng thanh ghi con trỏ Y
(4) 1000 001r rrrr 1000
(5) 1001 001r rrrr 1001
(6) 1001 001r rrrr 1010
Khi sử dụng thanh ghi con trỏ Z
(7) 1000 001r Rrrr 0000
(8) 1001 001r Rrrr 0001
(9) 1001 001r Rrrr 0010
Cú pháp
(1) ST X, Rr ( 0 ≤ r ≤ 31)
(2) ST X+, Rr ( 0 ≤ r ≤ 31)
(3) ST -X, Rr ( 0 ≤ r ≤ 31)
(4) ST Y, Rr ( 0 ≤ r ≤ 31)
(5) ST Y+, Rr ( 0 ≤ r ≤ 31)
(6) ST -Y, Rr ( 0 ≤ r ≤ 31)
(7) ST Z, Rr ( 0 ≤ r ≤ 31)
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng
Thiết kế, chế tạo và điều khiển tay máy Trang 48
(8) ST Z+, Rr ( 0 ≤ r ≤ 31)
(9) ST -Z, Rr ( 0 ≤ r ≤ 31)
Hoạt động
(2) (X) ← Rr
(4) (X) ← Rr X ← X+1
(5) X ← X-1 (X) ← Rr
Cơ chế hoạt động tương tự với Y và Z
STS – Lưu giá trị trực tiếp vào biến
Lưu một byte từ một thanh ghi vào trong bộ nhớ (RAM nội).
Số byte 4
Số chu kỳ 2
Mã đối tượng 0110 001d dddd 0000
kkkk kkkk kkkk kkkk
Cú pháp
STS k,Rr (0 ≤ r ≤ 31, 0 ≤ k ≤ 65535)
Hoạt động
(k) ← Rr
¾ Chú ý đối với các lệnh không đề cập đến các cờ ảnh hưởng, nghĩa là các
lệnh đó không ảnh hưởng đến các cờ.
6.4 NẠP DỮ LIỆU NỐI TIẾP
Chương trình có thể được nạp vào chip bằng chuẩn SPI trong khi chân
RESET được kéo xuống mass. Chuẩn SPI dùng 3 chân: SCK, MOSI (nhập) và
MISO (xuất). Sau khi chân RESET được kéo xuống mass, thì lệnh cho phép lập
trình cần được thực hiện trước khi thực hiện việc xoá và nạp chương trình.
Hình 6.8 Sơ đồ mạch đổ chương trình cho chip
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng
Thiết kế, chế tạo và điều khiển tay máy Trang 49
Đối với EEPROM thì không cần thực hiện lệnh xóa vì điều này sẽ được
thực hiện tự động. Lệnh xóa làm toàn bộ nội dung thành FFh.
Hình 6.9 Giản đồ xung cho quá trình đổ dữ liệu vào chip
Quá trình nạp chip
a) Cấp nguồn cho chip (Vcc và GND) trong khi chân RESET và SCK xuống
mass.
b) Chờ ít nhất 20ms và cho phép nạp nối tiếp bằng cách gởi lệnh cho phép nạp
tới chân MOSI (PB5).
c) Nếu thiếu sự đồng bộ thì các lệnh nạp nối tiếp sẽ không được thực hiện. Khi
đã có sự đồng bộ, thì byte thứ hai (53h) sẽ được gởi ngược trở lại trong khi
byte thứ ba đang của lệnh cho phép nạp được gởi. Cho dù byte gởi về thứ hai
(53h) có đúng hay không thì tất cả 4 byte cũng phải được truyền đi. Trong
trường hợp byte thứ hai (53h) không được gởi về thì ta cấp một xung dương
cho chân SCK và sau đó ta lại tiếp tục truyền lại lệnh lập trình. Quá trình này
sẽ được lập đi lập lại trong 32 lần, nếu không thành công coi như việc lập
trình chip bị hủy.
d) Nếu lệnh xóa chip được thực hiện (khi lập trình Flash ROM) thì ta chờ tWD-
ERASE (tối thiểu 8ms) sau lệnh này, tiếp tục cấp một xung dương cho chân
RESET rồi quay lại bước hai....