Professional Documents
Culture Documents
MỤC LỤC........................................................................................................................1
MỤC LỤC HÌNH VẼ.......................................................................................................4
LỜI NÓI ĐẦU..................................................................................................................7
TỔNG QUAN VỀ ĐỒ ÁN TỐT NGHIỆP ......................................................................8
CHƯƠNG I: TỔNG QUAN VỀ MOBILE ROBOT........................................................9
1.1 Giới thiệu........................................................................................................9
1.2 Lịch sử phát triển của mobile robot................................................................9
1.3 Phân loại mobile robot..................................................................................11
1.4 Một số dạng điều khiển mobile robot..........................................................12
1.4.1 Điều khiển từ xa bằng tay.............................................................................12
1.4.2 Rôbốt điều khiển từ xa tự bảo vệ..................................................................12
1.4.3 Rôbốt theo lộ trình........................................................................................12
1.4.4 Rôbốt ngẫu nhiên hoạt động độc lập.............................................................12
1.5 Ứng dụng của Mobile robot..........................................................................13
1.6 Các loại chuyển động của Mobile robot.......................................................16
1.6.1 Chuyển động bằng chân(legged mobile robot).............................................16
1.6.2 Chuyển động bằng xích(tracked mobile robot)...........................................17
1.6.3 Di chuyển bằng bánh xe. (wheeled mobile robot)........................................18
CHƯƠNG II : VẤN ĐỀ CỨU HỘ VÀ MOBLE ROBOT DÙNG XÍCH.....................20
2.1 Vấn đề cứu hộ và hướng tiếp cận bằng robot...............................................20
2.2 Ưu nhược điểm của Mobile robot dùng xích................................................20
2.2.1 Về cấu tạo.....................................................................................................20
2.2.2 Về điều khiển................................................................................................21
2.2.3 Về khả năng linh động..................................................................................21
2.3 Yêu cầu,nhiệm vụ nghiên cứu......................................................................21
2.3.1 Yêu cầu.........................................................................................................21
2.3.2 Phạm vi nghiên cứu......................................................................................22
CHƯƠNG III: ĐỘNG HỌC VÀ ĐỘNG LỰC HỌC.....................................................23
3.1 Giới thiệu chung............................................................................................23
3.2 Mô hình động học.........................................................................................23
3.3 Động lực học.................................................................................................26
CHƯƠNG IV: KẾT CẤU ROBOT................................................................................30
4.1 Giới thiệu......................................................................................................30
4.2 Vấn đề điều khiền phương tiện sử dụng xích...............................................31
4.3 Các kết cấu mắt xích.....................................................................................32
4.4 Cách bố trí xích.............................................................................................34
4.5 Hệ thống căng xích.......................................................................................38
4.6 Các kết cấu của hệ thống xích.......................................................................42
4.6.1 Bộ truyền động điều khiển một xích.............................................................42
4.6.2 Bộ truyền động điều khiển 2 xích.................................................................42
4.6.3 Bộ truyền động 2 xích với các hệ thống thiết bị lái riêng rẽ........................43
4.6.4 Các bộ truyền động có 4 nhánh xích điều khiển...........................................44
4.6.5 Các bộ truyền động có 6 bánh xích...............................................................46
4.7 Phương án thiết kế........................................................................................47
1
4.7.1 Ý tưởng chung..............................................................................................47
4.7.2 Kích thước và hình dáng tổng thể của robot.................................................47
4.7.3 Kết cấu đai được lựa chọn............................................................................49
4.7.4 Kết cấu nhánh chính......................................................................................50
4.7.4.1 Nhiệm vụ.......................................................................................................50
4.7.4.2 Bánh đai dẫn động........................................................................................50
4.7.4.3 Trục trước.....................................................................................................53
4.7.4.4 Bánh đai theo................................................................................................54
4.7.4.5 Khung............................................................................................................54
4.7.4.6 Thanh tăng cứng cho khung..........................................................................55
4.7.4.7 Bánh căng đai dưới.......................................................................................55
4.7.4.8 Bánh căng đai trên........................................................................................56
4.7.5 Kết cấu nhánh tay quay.................................................................................56
4.7.5.1 Nhiệm vụ.......................................................................................................56
4.7.5.2 Bánh đai lớn..................................................................................................56
4.7.5.3 Bánh đai nhỏ.................................................................................................56
4.7.5.4 Tấm tay đỡ....................................................................................................57
4.7.5.5 Cấu tạo cụm chi tiết......................................................................................57
4.8 Tính chọn động cơ........................................................................................59
4.8.1 Động cơ phía sau...........................................................................................59
4.8.2 Động cơ phía trước.......................................................................................60
CHƯƠNG V : THIẾT KẾ HỆ THỐNG XỬ LÝ VÀ XÂY DỰNG PHẦN MỀM ĐIỀU
KHIỂN ROBOT..............................................................................................................61
5.1 Cơ cấu chấp hành..........................................................................................61
5.2 Giới thiệu về bộ vi điều khiển 8 bit..............................................................61
5.2.1 Khái niệm về bộ vi điều khiển......................................................................61
5.2.2 Các yêu cầu để lựa chọn một bộ vi điều khiển.............................................62
5.2.3 Các tiêu chuẩn lựa chọn một bộ vi điều khiển..............................................62
5.3 Bộ vi điều khiển 8bit PIC16F876A..............................................................63
5.3.1 Các đặc tính nổi bật của bộ vi điều khiển.....................................................63
5.3.2 So sánh với bộ vi điều khiển 8051................................................................65
5.3.3 Giới thiệu các module được ứng dụng vào dự án.........................................67
5.3.3.1 Giới thiệu về các cổng vào/ra (I/O ports).....................................................67
5.3.3.2 Truyền nhận dữ liệu đồng bộ và không đồng bộ..........................................73
5.3.3.3 Chuẩn giao tiếp nối tiếp hai dây (I2C Mode)...............................................84
5.3.3.4 Module điều xung (PWM Module)...............................................................93
5.4 Ứng dụng IC điều khiển động cơ L298........................................................95
5.4.1 Giới thiệu......................................................................................................95
5.4.2 Ứng dụng IC L298 vào dự án.......................................................................98
5.5 Thiết kế mạch điều khiển Robot...................................................................99
5.5.1 Nhiệm vụ thiết kế..........................................................................................99
5.5.2 Các module cơ bản........................................................................................99
5.5.2.1 Module truyền/nhận hình ảnh từ robot.........................................................99
5.5.2.2 Module truyền/nhận tín hiệu điều khiển tới robot......................................100
5.5.2.3 Module điều khiển và công suất cho động cơ.............................................102
5.6 Thiết kế phần mềm điều khiển Robot.........................................................108
CHƯƠNG VI:KẾT LUẬN...........................................................................................111
TÀI LIỆU THAM KHẢO............................................................................................112
2
PHỤ LỤC BẢN VẼ CÁC CHI TIẾT...........................................................................113
3
Hình 1. 8 Robot irobot chuyển động bằng xích 17
Hình 1. 9 Robot “gián” di chuyển bằng xích 18
Hình 1. 10 Robot của NASA chuyển động bánh xe 18
Hình 1. 11 Robot Snake 19
Hình 4. 1 Kết cấu mắt xích thép cơ bản biểu diễn điểm có thể kẹt. 33
Hình 4. 2 Vị trí khớp nối hiệu quả của xích làm từ thép. 34
Hình 4. 3 Mắt xích làm từ nhựa urethane rắn 34
Hình 4. 4 Mặt cắt ngang mô hình xích dùng nhựa urethane có lõi thép chịu lực và có
cáp trong. 35
Hình 4. 5 Các hình dạng xích thay đổi để cải thiện 37
Hình 4. 6 Hệ thống xích có thể thay đổi được 38
Hình 4. 7 Các bánh lăn. 40
Hình 4. 8 Căng xích dùng cần lắc cân bằng. 40
Hình 4. 9 Căng đai dùng lò xo xoắn 41
Hình 4. 10 Căng đai dùng các lò xo cuộn. 42
Hình 4. 11 Căng đai dùng lò xo lá 42
Hình 4. 12 Một xích, 2 bánh trước điều khiển: hệ thống lái Ackerman 43
Hình 4. 13 Bố trí 2 xích cơ bản. 44
Hình 4. 14 Xích 2 bánh rộng, fore-and-aft 45
Hình 4. 15 IRobot’s Urbie, a four-tracked teleoperated robot layout 46
Hình 4. 16 Các chân trèo chiều dài như nhau, trục xe giữa dùng chung. 47
Hình 4. 17 2 bánh xích, chân chèo kép. 48
Hình 4. 18 Bản vẽ thiết kế của robot 49
Hình 4. 19 Robot sau khi chế tạo 49
Hình 4. 20 Đai dùng cho nhánh chí 50
Hình 4. 21 Đai dùng cho nhánh tay 51
Hình 4. 22 Bánh đai dẫn động 52
Hình 4. 23 Chốt truyền 52
Hình 4. 24 Vòng chặn đai 53
Hình 4. 25 Vòng đàn hồi 53
Hình 4. 26 Lắp ghép của cụm chi tiết bánh đai dẫn động 54
Hình 4. 27 Trục trước 54
Hình 4. 28 Bánh đai theo 55
Hình 4. 29 Khung dưới 55
Hình 4. 30 Thanh tăng cứng cho khung 56
Hình 4. 31 Bánh căng đai dưới 56
Hình 4. 32 Bánh căng đai trên 57
Hình 4. 33 Bánh đai nhỏ 57
Hình 4. 34 Tấm tay đỡ 58
Hình 4. 35 Lắp ghép và cố định 2 bánh 58
Hình 4. 36 Lắp ghép cho tấm tay quay 59
Hình 4. 37 Lắp ghép cho bánh nhỏ 59
Hình 4. 38 Sơ đồ đặt lực robot 60
4
Hình 5. 39 Đầu ra PWM 95
Hình 5. 40 Các kiểu đóng vỏ 96
Hình 5. 41 Sơ đồ khối của L298 97
Hình 5. 42 Sơ chân của L298 97
Hình 5. 43 Dùng một cầu H để điều khiển một động cơ 99
Hình 5. 44 Dùng hai cầu H để điều khiển một động cơ 99
Hình 5. 45 Sơ đồ khối của hệ thống điều khiển robot 100
Hình 5. 46 Camera không dây Cam208C 101
Hình 5. 47 Bộ thu RADIO AV RECEIVER và USB EasyCAP 101
Hình 5. 48 Sơ đồ nguyên lý của mạch thu/phát 102
Hình 5. 49 Module phát RF_RS232 102
Hình 5. 50 Module thu RF_RS232 103
Hình 5. 51 Công tắc đóng/mở nguồn vào từ Acquy 104
Hình 5. 52 Mạch cung cấp nguồn 5v cho Chip và IC 104
Hình 5. 53 Khối Master 105
Hình 5. 54 Khối Slave I 106
Hình 5. 55 Khối Slave II 106
Hình 5. 56 Mạch công suất cho động cơ thứ nhất 107
Hình 5. 57 Mạch công suất cho động cơ thứ hai 107
Hình 5. 58 Mạch công suất cho động cơ thứ ba 108
Hình 5. 59 Mạch công suất cho động cơ thứ tư 108
Hình 5. 60 Mạch hoàn chỉnh 109
Hình 5. 61 Hộp thoại điều khiển 110
Hình 5. 62 Mã hóa bàn phím 110
Hình 5. 63 Hộp thoại thể hiện hình ảnh thu được từ Camera 111
5
Hình 5. 23 Thanh ghi cho phép truyền trong chế độ đồng bộ phụ 83
Hình 5. 24 Thanh ghi cho phép nhận trong chế độ đồng bộ phụ 84
Hình 5. 25 Bus I2C và các thiết bị ngoại vi 85
Hình 5. 26 Kết nối thiết bị vào bus I2C ở chế độ chuẩn 85
Hình 5. 27 Truyền nhận dữ liệu giữa chủ/tớ 86
Hình 5. 28 Điều kiện START và STOP của bus I2C 87
Hình 5. 29 Quá trình truyền một bit dữ liệu 87
Hình 5. 30 Dữ liệu truyền trên bus I2C 88
Hình 5. 31 Bit ACK trên bus I2C 88
Hình 5. 32 Cấu trúc byte dữ liệu đầu tiên 89
Hình 5. 33 Quá trình truyền dữ liệu 89
Hình 5. 34 Ghi dữ liệu từ chủ lên tớ 90
Hình 5. 35 Đọc dữ liệu từ thiết bị tớ 90
Hình 5. 36 Quá trình phổi hợp đọc/ghi dữ liệu 91
Hình 5. 37 Cấu trúc khối I2C trong PIC. 92
Hình 5. 38 Sơ đồ khối được đơn giản hóa của module CCP trong chế độ PWM 93
6
khẳng định vai trò quan trọng không thể thiếu trong nhiều lĩnh vực, thu hút được rất
nhiều sự đầu tư nghiên cứu.
Trong mobile robot cũng có thể phân chia thành nhiều chủng loại , chủ yếu là
theo cách thức chúng vận hành (mobile robot dùng bánh, dùng chân, dùng xích).Dưới
sự hướng dẫn của Th.s Đặng Bảo Lâm và Th.s Nguyễn Hải Sơn, nhóm chúng em đã
chọn đề tài nghiên cứu và thiết kế mobile robot dùng xích.
Chúng em xin chân thành cảm ơn sự giúp đỡ tận tình của các thầy.
7
robot”.Các loại xích(đai) với hình dáng kết cấu khác nhau sẽ được trình bày chi tiết
trong phần này.
Chương V: “Thiết kế hệ thống điều khiển và xây dựng phần mềm điều khiển
robot” . Phần này sẽ tập trung vào tính toán thiết kế về mạch điện tử, điều khiển, phần
mềm hỗ trợ để hoàn thiện robot theo yêu cầu đặt ra.
Chương VI: “Kết luận” đưa ra những đánh giá về quá trình nghiên cứu và khả
năng phát triển cho robot trong tương lai.
CHƯƠNG I
8
1.2.Lịch sử phát triển của mobile robot
Hình dạng robot đầu tiên xuất hiện ở Hoa Kỳ, là loại tay máy chép hình dùng
trong phòng thí nghiệm vật liệu phóng xạ. Vào những năm 50 thế kỷ trước, bên cạnh
các tay máy chép hình cơ khí, các loại tay máy chép hình thuỷ lực điện từ đã xuất
hiện. Tuy nhiên, các tay máy thương mại đều có chung nhược điểm là thiếu sự di
động. Các tay máy cố định chỉ hoạt động trong một không gian bị giới hạn quanh vị
trí của nó.
Ngược lại, mobile robot là loại robot di động có thể di chuyển từ không gian này
tới không gian khác một cách độc lập hay có điều khiển từ xa, do đó tạo nên không
gian hoạt động rất lớn.
Từ năm 1939 đến 1945: Trong cuộc chiến tranh thế giới lần thứ II, những con
rôbốt di động đầu tiên được xuất hiện. Nó là kết quả của những thành tựu công
nghệ trong những lĩnh vực nghiên cứu mới có liên quan như khoa học máy tính và
điều khiển học, hầu hết chúng là những quả bom bay, ví dụ như những quả bom
chỉ nổ trong những dãy mục tiêu nhất định... sử dụng hệ thống hướng dẫn và rađa
điều khiển. Tên lửa V1 và V2 có “phi công tự động” và hệ thống phát nổ, chúng là
tiền thân của đầu đạn hạt nhân tự điều khiển hiện đại.
Từ năm 1948 đến 1949: W.Gray Walter tạo nên Elmer và Elsie, hai con rôbốt
tự động trông giống con đồi mồi. Về mặt hành chính , chúng được gọi là Machina
Speculatrix bởi vì những con rôbốt này hoạt động trong môi trường như những chú
chim đồi mồi. Elmer và Elsie được trang bị một bộ cảm biến sang. Nếu chúng
nhận ra một nguồn sáng, chúng sẽ di chuyển về phía đó. Chúng có thể tránh hoặc
chuyển những chướng ngại trên đường di chuyển của chúng. Những con rôbốt này
chứng minh rằng những cử chỉ phức tạp có thể phát sinh từ một thiết kế đơn giản.
Elmer và Elsie chỉ được thiết kế tương đương hai tế bào thần kinh.
Từ năm 1961 đến 1963: Trường Đại học Johns Hopkins phát triển ‘Beast’.
Beast sử dụng hệ thống định vị để chuyển động xung quanh. Khi pin yếu , nó sẽ tự
tìm ổ cắm điện và cắm vào
Năm 1969: Mowbot là con rôbốt đầu tiên cắt cả bãi cỏ một cách tự động. The
Stanford Cart line follower là con rôbốt di động có thể di chuyển thông qua nhận
dạng đường kẻ trắng, sử dụng một camera để nhìn. Nó bao gồm một “kênh truyền
thanh” gắn với hệ thống máy tính lớn để tạo ra những tính toán.
Năm 1970: Cùng thời điểm 1969-1972, viện nghiên cứu Stanford đang xây
dựng và nghiên cứu ra Shakey. Shakey có một camera, một dãy kính gắm, một bộ
cảm biến và một bộ phận truyền thanh. Shakey là con rôbốt đầu tiên có thể lý giải
về những chuyển động của nó. Điều này có nghĩa là Shakey có thể đưa cho nhiều
lệnh chung và con rôbốt này sẽ tính toán những bước cần thiết để hoàn thành
nhiệm vụ được giao.
Năm 1976: Trong chương trình Vikiry, tổ chức NASA đã phóng hai tàu vũ trụ
không người lái lên sao Hoả.
9
Năm 1977: Bộ phim “Chiến tranh giữa các vì sao” phần I, A new Hope mô tả
R2D2, một con robot di động hoạt động độc lập và C3P0, một con robot hình
người. Họ đã khiến công chúng biết đến những con rôbốt
Năm 1980: Thị hiếu của người tiêu dùng về robot tăng , robot được bày bán
và mua về để sử dụng trong nhà. Ví dụ , RB5X vẫn tồn tại tới ngày nay và một loạt
mẫu robot HERO. Robot The Stanford Cart được phát triển mạnh, nó đã có thể lái
tàu biển vượt qua những trở ngại và tạo lên bản đồ những nơi nó đi qua.
Năm 1989: Mark Tinden phát minh ra BEAM robotics.
Năm 1990: Cha đẻ của nền rôbốt công nghiệp Joseph Engelberger làm việc
với các đồng nghiệp và đã phát minh ra những con rôbốt tự động trong ngành y tế
và được bán bởi Helpmate. Sở an ninh Mỹ gây quỹ cho dự án MDARS-I dựa vào
robot bảo vệ trong nhà Cybermotion.
Năm 1993-1994: Dante-I và Dante-II được phát triển bởi trường đại học
Carnegie Mellon, cả hai là robot dùng để thám hiểm núi lửa đang hoạt động.
Năm 1995: Rôbốt di động có thể lập trình Pioneer (người tiên phong) được
bán sẵn ở một mức giá chấp nhận được,điều đó dẫn tới sự gia tăng rộng rãi về
nghiên cứu robot và các trường đại học nghiên cứu về robot trong suốt các thập
sau . Robot di động trở thành một phần không thể thiếu trong chương trình giảng
dạy của các trường đại học.
Năm 1996-1997: NASA phóng con tàu Mars Pathfinder có 2 robot Rover và
Sojourner lên sao Hoả. The Rover thám hiểm bề mặt sao hoả được điều khiển từ
mặt đất. Sojourner được trang bị với một hệ thống tránh rủi do cao. Hệ thống này
làm cho Sojourner có thể tìm thấy đường đi của nó một cách độc lập trên địa hình
của sao Hoả.
Năm 1999: Sony giới thiệu Aibo, một con rôbốt có khả năng đi lại, quan sát
và tác động qua lại tới môi trường. Robot điều khiển từ xa dùng cho quân sự
PackBot cũng được giới thiệu.
Năm 2001:Dự án Swaim-Bots, Swaim-Bots giống những bầy côn trùng được
khởi động. Chúng bao gồm một số lượng lớn các con robot đơn lẻ, có thể tác động
lẫn nhau và cùng nhau thực hiện những nhiệm vụ phức tạp
Năm 2002: Roomba, một con robot di động dùng trong gia đình, thực hiện
việc lau nhà được xuất hiện.
Năm 2004: Robosapien, một con rôbốt đồ chơi, thiết kế bởi Mark Tilden
được bán sẵn. Trong dự án “The Centibots Project” 100 con rôbốt cùng làm việc
với nhau để tạo lên một bản đồ cho một vùng không xác định và tìm những vật thể
trong môi trường đó. Trong cuộc thi đầu tiên DARPA Grand Challenge, các con
rôbốt tự động đã cùng nhau tranh tài cùng nhau trên sa mạc.
Năm 2006: Sony dừng việc sản xuất Aibo và Helpmate. PatrolBot trở lên phổ
biến khi các robot di động vẫn tiếp tục cạnh tranh nhau để trở thành mặt hàng độc
quyền. Sở an ninh Mỹ đã bỏ dự án MDARS-I, nhưng lại gây quỹ cho dự án
10
MDARS-E một loại rôbốt an ninh tự động khác. TALON-Sword, một loại rôbốt tự
động dùng để bán sẵn với dàn phóng lựu đạn và những sự lựa chọn về vũ khí hợp
thành khác đã ra đời. Asimo của Honda biết cách chạy và leo cầu thang chỉ với hai
chân như con người.
Năm 2007: Hệ thống KiVa, robot thông minh tăng nhanh về số lượng trong
quy trình phân phối, những robot thông minh này được phân loại theo mức độ phổ
biến những nội dung của chúng. Robot Tug trở thành phương tiện phổ biến trong
các bệnh viện dùng để vận chuyển đồ trong kho từ nơi này sang nơi khác.
ARCSinside Speci-Minder mang máu và các vật mẫu từ trạm y tá tới phòng xét
nghiệm. Seekur, robot dịch vụ dùng ngoài trời với mục đích phi quân sự có thể kéo
một xe qua một bãi đậu xe, lái một cách độc lập (tự động) vào trong nhà và bắt đầu
học cách lái ra ngoài. Trong khi đó, PatrolBot học cách theo sau con người và nếu
cửa mà mở thì đóng lại.
11
1.4.3. Rôbốt theo lộ trình
Một vài robot tự động đầu tiên là những robot theo lộ trình. Chúng có thể theo
những đường được sơn khắc trên sàn, trần nhà hay trên một dây điện trên sàn. Đa số
rôbốt này hoạt động theo một thuật toán đơn giản là giữ lộ trình trong bộ cảm biển
trung tâm, chúng không thể đi vòng qua các chướng ngại vật, chúng chỉ dừng lại khi
có vật nào đó cản đường chúng. Rất nhiều mẫu của loại rôbốt này vẫn được bày bán
bởi FMC, Egemin, HK system và một vài công ty khác.
12
Trong môi trường nguy hiểm và các môi trường khó có thể tới được thậm chí ở
ngay cả trên trái đất, các mobile robot được nghiên cứu và sử dụng để thay thế con
người. Robot Pioneer, được thiết kế để dò tìm và kiểm tra nồng độ phóng xạ trong
thảm họa Chernobyl. Robot MBARI’s ALTEX AUV hoạt động ở dưới đáy biển.
13
Trong công nghiệp, mobile robot được sử dụng chủ yếu để di chuyển các thiết bị,
mang vác nguyên liệu và phụ kiện cần thiết. Robot được dẫn hướng bởi các đường
dây điện đặt ở dưới sàn, hay các robot này được lập trình theo một đường đi và công
việc nhất định. Hiện nay, có hàng ngàn robot loại này đang phục vụ trong công nghiệp
thậm chí trong cả bệnh viện. Robot này thường không có tính cơ động linh hoạt.
Mobile robot không chỉ được ứng dụng trong công nghiệp mà cả trong quân sự
và trong đời sống hàng ngày. Robot lau nhà RC 3000 được phát triển và bán bởi
Alfred Kärcher GmbH & Co., Germany. Robot RC 3000 có khả năng tự nhận biết khu
vực chưa được quét dọn dựa trên sensor trang bị trên nó. Các sensor quang trang bị
trên robot sẽ tự động đo độ bẩn của sàn nhà và đưa ra chế độ làm việc cho robot.
Robot TALON dùng trong quân sự được trang bị súng, rađa dò tìm, di chuyển linh
hoạt trên các loại địa hình.
14
Ngày nay, nhu cầu của con người ngày càng cao, đòi hỏi hưởng thụ và giải phóng
sức lao động ngày càng nhiều, các loại robot phục vụ cho nhu cầu giải trí cũng xuất
hiện với số lượng ngày càng đông đảo. Các cuộc thi của các con robot tự động được tổ
chức nhiều hơn, từ các cuộc thi này, các ứng dụng của khoa học robot được sử dụng
vào đời sống thực tế. Từ cuộc thi chạy của các MALOI robot (một loại robot giống
người), các robot tương tự đã xuất hiện được bán trên thị trường nhằm phục vụ những
nhu cầu của con người như vấn đề an ninh, giải trí hay đơn giản hơn có những người
mua chúng về chỉ để có cảm giác có người trong nhà (vì đây là loại robot giống
người) giúp không khí gia đình trở nên ấm cúng.
15
Hình 1. 7 Robot MANOI AT01 và MANOI PF01
16
Hình 1. 9 Robot “gián” di chuyển bằng xích
17
Hình 1. 11 Robot Snake
Hiện nay, các loại chuyển động của robot ngày càng phức tạp lên theo đà phát
triển của khoa học kỹ thuật. Các chuyển động này không còn đơn giản là bánh xe,
xích hay chân nữa. Có những con robot được phối hơp chuyển động của bánh xe và
chân, của xích và chân … Các con robot loại này được điều khiển một cách hết sức
phức tạp, công nghệ chế tạo cũng hết sức tinh vi, đòi hỏi chính xác cao, các chuyển
động khớp cũng mền dẻo hơn. Các robot kiểu mới này thường được ứng dụng trong
việc vượt các chướng ngại vật hay di chuyển trong các địa hình hết sức phức tạp.
Chúng được gắn các sensor tự hành nhằm tự sử lý sự cố xảy ra trên đường di chuyển.
18
CHƯƠNG II
19
Điều này không xảy ra với robot chạy bằng bánh độc lập hay di chuyển bằng chân.Với
những robot kích thước nhỏ , việc dùng đai thay xích được xem là một phương án rất
hiệu quả, rất phù hợp ở mức độ đồ án, nhằm khắc phục những nhược điểm đã nêu.
Nhưng robot chạy bằng xích nhờ có cấu tạo xích lên không có hiện tượng trượt
trơn bánh như robot chạy bánh độc lập và cũng dễ điều khiển hơn robot di chuyển
bằng chân. Khả năng bám địa hình của robot dùng xích là nổi trội nhất bởi ma sát lớn
với bề mặt tiếp xúc. Không những thế kết cấu của robot cũng tỏ ra không quá phức
tạp, thậm chí có những kết cấu còn có thể thay đổi một cách rất linh hoạt, tạo khả
năng vượt chướng ngại vật đơn giản.
20
Những thiết bị linh kiện để chế tạo robot phải dễ kiếm, mọi quá trình chế
tạo cần được đơn giản hóa tối đa. Đây cũng có thể coi là tiêu chí quan trọng
bậc nhất trong quá trình thiết kế cũng như chế tạo robot.
CHƯƠNG III
21
Động học robot mô tả những sự chuyển động robot. Chúng ta cần hiểu hành vi cơ
khí của người máy nhằm thiết kế mobile robot cho những nhiệm vụ mong muốn và để
tạo ra phần mềm điều khiển cho phần cứng.
Động học thuận giải quyết những mối quan hệ hình học gây ảnh hưởng đến hệ
thống robot, và mối quan hệ giữa những tham số điều khiển và hành vi robot trong
không gian làm việc, đó là: cho những thông số góc quay nhất định của robot thì robot
sẽ đến điểm nào và đến bằng cách nào. Vấn đề động học ngược lại sẽ tính toán những
thông số góc quay của robot để đạt được mục đích khi muốn đến tới một vị trí nhất
định, theo một phương hướng nhất định.
Phần này sẽ đề xuất một cách tiếp cận động học cho mobile robot dùng xích nhằm
tăng khả năng điều khiển chuyển động và đưa ra những đánh giá. Động học phức tạp
bởi có sự trượt và sự tương tác giữa xích và đất làm cho khó có thể xác định chính xác
chuyển động của robot dựa trên vận tốc xích. Giải pháp giải quyết được đề xuất tại ở
đây dựa trên tâm quay tức thời(ICRs) trên mặt phẳng chuyển động của robot. Nhìn
tổng thể, vị trí tâm tức thời trên một địa hình cụ thể sẽ cho kết quả một mẫu động học
gần đúng cho mobile robot.
22
Hình 3. 2 ICRv trên mặt phẳng Robot như một vật rắn
quay quanh tâm quay tức thời ICRv
Đặt tâm hệ trục tại tâm khung chính, trục y hướng theo hướng chuyển động.
Nhiều trong những cách điều khiển vi sai bánh, phương tiện dùng xích chịu chi phối
bởi 2 thành phần điều khiển:vận tốc dài của nhánh phải và nhánh trái đối với khung
robot (Vl, Vr) nên phương trình động học tuyệt đối trên mặt phẳng có thể được phát
biểu như sau:
(v x, vy, ωz) = fd(Vl, Vr) (4.1.1)
Với v = (vx,vy) là vận tốc thẳng của robot
ωz là vận tốc góc của robot
Phương trình động học ngược của robot :
(Vl,Vr) = fi(vx,vy,ωz) (4.1.2)
Nếu robot được xét trong hệ tọa độ 2 chiều thì tâm quay tức thời(ICRv) là điểm
vô cùng trên mặt phẳng mà chuyển đọng của phương tiện chỉ có quay, không có tịnh
tiến, có thể được biểu diễn : ICRv = (xICRv, yICRv).
Trên mặt phẳng chuyển động của robot, không chỉ hướng vào chuyển động của
toàn robot mà còn quan tâm đến chuyển động của 2 nhánh xích trên bền mặt địa
hình.Một nhánh xích có thể coi là mô hình vật rắn với số bậc tự do không giới hạn ,
nó có tốc độ lăn riêng. Vì thế ,chuyển động của 1 điểm trên mặt gồ gề là thành phần
của chuyển động của toàn robot và của sự lăn của xích. Bởi thế tâm quay tức thời của
1 xích trên mặt phẳng chuyển động khác với của robot. Nên có thể định nghĩa tâm
quay tức thời của nhánh trái và nhánh phải là:
ICRl = (xICRl , yICRl) và ICRr = (xICRr , yICRr ) (4.1.3)
Theo lí thuyết Kennedy’s ICR (Shigley and Uicker 1980) thì ICRl và ICRr nằm
trên đường thẳng song song với trục x và đi qua ICRv .
Tọa độ robot và tâm quay tức thời có mối quan hê theo biểu thức sau:
(4.1.4)
23
(4.1.5)
(4.1.6)
(4.1.7)
xICRv biến thiên trong ±∞ phụ thuộc vào góc lượn của robot.
Vận tốc tịnh tiến và vận tốc quay tức thời thu được rút ra từ (4.1.4)(4.1.7):
(4.1.8)
(4.1.9)
(4.1.10)
(4.1.11)
(4.1.12)
(αl ,αr ) gọi là cặp hệ số phụ thuộc vào điều kiện bánh, xích, địa hình hoạt động, đặc
tính tương tác giữa bánh, xích với địa hình.
Khi α = αl = αr và xICR = xICRl = -xICRr ta có:
(4.1.13)
Mối quan hệ giữa khoảng cách tâm 2 nhánh bên với khoảng cách 2 tâm quay tức
thời 2 nhánh đó:
(0≤χ ≤1) (4.1.14)
L là khoảng cách giữa 2 nhánh.
χ = 1 khi không xảy ra sự trượt.
Hệ số độ lệch tâm chuẩn:
(4.1.15)
Các hệ số xICR và α có thể được tính theo công thức:
24
(4.1.16)
(4.1.17)
Trong đó:
Ø : góc quay thực tế đã đạt được.
d: khoảng cách đi được thực tế trên địa hình phẳng.
Hai hệ số này xác định bằng thực nghiệm.
Tâm quay tức thời của 2 dãy xích cũng được tính bằng thực nghiệm. Để xác định vị trí
các tâm quay này cần gắn ít nhất 2 sensor đo vận tốc trược theo phương x trên mỗi
dãy xích. Từ đó ta dùng phương pháp hình học xác định tâm quay tức thời như hình
vẽ:
V 1
Vl
Vt1
ICRl
Vl V2
Vt2
Hình 3.3 ICRv trên mặt phẳng Robot như một vật rắn
quay quanh tâm quay tức thời ICRv
Vt là vận tốc trượt tại điểm cần đo
Các phương trình trên chính là phương trình động học chỉ ra ở phương trình
(4.1.1).Phương trình động học ngược được biểu diễn như sau:
(4.1.18)
(4.1.19)
Có thể thấy v x không ảnh hưởng gì đến Vr, Vl cũng như khi điều khiển giá trị đầu
vào thì không cần quan tâm đến yICRv .
25
so với lúc khác. Lên trong nhiều trường hợp người ta thường bỏ qua phần tính toán
động lực học này vì trên thực tế là muốn tính toán nó thì hết sức khó khăn nếu không
muốn nói là không thể thực hiện được việc tính toán này.Vấn đề điều khiển robot sẽ
được giải quyết bằng việc chế tạo mạch điều khiển và robot được điều khiển từ xa bởi
người sở dụng
Di chuyển của robot là di chuyển chạy bằng xích, dạng di chuyển là di chuyển
trượt, dựa vào ma sát của bánh với bề mặt di chuyển.
Trong mục này, thay vì đi tính toán bài toán động lực học phức tạp, ta sẽ phân tích
các lực tác động lên robot khi di chuyển. Các lực đó bao gồm:
Lực kéo tiếp tuyến
(3.3.1)
Pj
G.sina
G.cosa
G Pf
Pk
Hình 3.4 Sơ đồ các lực
Trong đó:
Mk : moment động cơ truyền đến bánh chủ động
Mrl : moment ma sát trong các khâu khớp của nhánh xích chủ động được moment
xoắn của bánh chủ động gây lên
Mjk : moment các lực quán tính bánh chủ động và các khâu của xích
rl : bán kính bánh lăn chủ động
(3.3.2)
fr : hệ số ma sat giữa chốt và khâu xích
T :lực căng nhánh xích chủ động :
T = Mk/rl (3.3.3)
rc : bán kính chốt xích
β : góc quay khi khâu xích chuyển động
z: số răng bánh chủ động
Thành phần lực do trọng lượng robot gây ra :
Z= G.sinα (3.3.4)
α: là góc nghiêng địa hình
26
Lực quán tính của robot
Pj=δ.M.j (3.3.5)
M: khối lượng lên hợp robot, bao gồm toàn bộ các chi tiết trong robot
j: gia tốc tiếp tuyến của liên hợp robot
δ : hệ số ảnh hưởng của các chi tiết quay
Lực cản lăn
Bao gồm 2 lực:
Lực cản chèn dập đất:
Trong quá trình chuyển động dải xích đè đất lún xuống làm cho các lớp
đất bền mặt bị chèn dập tạo lên các vết xích. Trong quá trình biến dạng
đất đá làm cản chở chuyển động của xích gây ra lực cản chèn dập P fl
Lực cản do ma sát sinh ra trong xích
Nó bao gồm lực cản do ma sát giữa các bánh đè lên đai xích và ma sát
căng ban đầu gây ra trong khớp của nhánh xích bị động
Pf =G.f (3.3.6)
(3.3.7)
t: bước xích,
t=2π r1/z (3.3.8)
f0 : hệ số ma sát thu gọn (tính đến ma sát lăn của bánh xe đè trên dỉa
xích và ma sát trong ổ bi của các bánh đè)
r0: bán kính bánh căng xích
rl : bán kính bánh lăn chủ động
Phương trình cân bằng động lực học:
Pk =Pf ± Pj ± G sinα (3.3.9)
Với Pj lấy dấu “+” khi robot chuyển động nhanh dần, dấu “-” khi robot chuyển
động chậm dần
Vơi G.sinα lấy dấu “+” khi robot lên dốc, dấu “-” khi robot xuống dốc
27
CHƯƠNG IV
28
Phương pháp lắp ghép, giữ cho hệ thống xích gắn trên phương tiện(pin in
hole, guide knives, V-groove).
Hệ thống căng xích (dùng bánh có hoặc không mang lò xo hoặc có thể dùng
hệ thống bánh cố định).
Tạo hình cho mặt trên hặc cả 2 mặt của hệ thống xích.
Kích thước hợp lý giữa xích và bánh xích.
Những sự thay đổi trong kết cấu của hệ thống xích đã được kiểm chứng. Một số tỏ
ra có thành công lớn, số khác dường như chưa cải thiện được tính linh động của hệ
thống xích.
Có nhiều dạng kết cấu xích và dạng kết cấu với số lượng xích khác nhau. Các
dạng này đều mang những ưu điểm cũng như nhược điểm riêng của chúng,thường có
các loại:
Một dãy xích (với một phương pháp điều khiển riêng).
Dạng cơ bản: 2 dãy xích đối xứng nhau.
Hai dãy xích (với một phương pháp điều khiển riêng).
Một số dạng thiết kế sử dụng 4 dãy xích.
Kết cấu dùng 6 dãy xích, bao gồm 2 dãy xích chính ,2 dãy chân trước và sau
phục vụ leo trèo.Kết cấu này tỏ ra quá mức yêu cầu vì đã có một kết cấu 4 dãy
xích vô cùng ấn tượng, trong đó chỉ sử dụng 3 cơ cấu truyền động.
Robot dần tiếp cận đến những nhu cầu sử dụng thông thường trong gia đình và
những công việc ngoài trời cần tính dẻo dai. Việc leo cầu thang sẽ thật khó khăn khi
chỉ sử dụng hệ thống bánh, nhưng nếu chỉ thêm một dãy xích việc đó sẽ trở lên dễ
dàng hơn. Xích sẽ làm đơn giản hóa vấn đề và có thể leo cầu thang êm hơn khi dùng
bánh. Bánh có thể leo thẳng trên cầu thang nhưng chúng có thể bị nghiêng đi phụ
thuộc hướng lái, nghĩa là phụ thuộc vào sự khéo léo của người điều khiển.
Phần này sẽ là cái nhìn bao quát của tất cả các kết cấu xích đã có hoặc đã được
sử dụng vào sản xuất các phương tiện có kích cỡ từ 30 cm đến hơn 45 m. Xích có thể
được sử dụng rất hiệu quả cho những phương tiện nhỏ nhưng cũng có thể thiết kế cho
những phương tiện lớn nhờ áp dụng những loại vật liệu cứng bền.
29
Có những phương pháp có thể làm giảm công suất điều khiển trên những phương
tiện có bánh lái trượt có thể áp dụng cho phương tiện dùng xích, ví dụ, làm yếu bớt
một chút hệ thống căng xích ở giữa nhánh xích . Điều này có hiệu quả làm tăng giới
hạn, là giảm công suất yêu cầu để phanh khi muốn xe rẽ hướng, điều này cũng là giảm
tác dụng chính của xích, sẽ có nhiều diện tích không tiếp xúc với xích thường xuyên
hơn trong khi chuyển động.
Hình 4. 1 Kết cấu mắt xích thép cơ bản biểu diễn điểm có thể kẹt.
Xích có mắt xích có khớp nối toàn bằng thép (hình4.1) dường như là dạng thiết kế
bền nhất có thể chịu va đập tối đa mà xích chịu được. Nhưng có một vài trở ngại đối
với thiết kế này, mảnh vụn có thể bị mắc vào các không gian giữa các mắt xích
chuyển động và có thể gây kẹt xích. Một giải pháp cho vấn đề này là hạ các điểm
khớp nối một cách thấp nhất có thể. Điều này làm giảm độ sâu rãnh, làm giảm diện
tích có thể bị mắc. Đây là chú ý nhỏ nhưng là phần quan trọng của việc thiết kế bánh
xích thép. Thiết kế này được chỉ ra trong hình 4.2:
30
Hình 4. 2 Vị trí khớp nối hiệu quả của xích làm từ thép.
31
Hình 4. 4 Mặt cắt ngang mô hình xích dùng nhựa urethane có lõi thép chịu lực và
có cáp trong.
Từ hình 4.3 cho ta thấy cấu tạo của 1 mắt xích làm từ urethane rắn và hình dung
cách ghép nối giữa các mắt xích. Xích rất dẻo dai, ma sát tương đối cao so với thép,
và không đắt. Nó cũng không làm hỏng bề mặt địa hình ở một mức độ nào đó.Nếu
xích cần có ma sát cao hơn có thể bắt bulông nhiều tấm urethane và những mắt xích
có tấm đệm urethane sẽ có cấu tạo các khớp liên kết có khả năng di chuyển.
Urethane với khả năng co giãn trong hầu hết các loại xích. Nhược điểm này được
khắc phục bằng cách đúc urenthane lõi là những cáp thép bện.Lõi thép thì hoàn toàn
được bao phủ bởi urethane, vì thế không sợ bị mài mòn. Thép loại trừ sự kéo
căng.Thâm chí muốn chịu cường độ lớn hơn, các thanh thép được tôi, đúc thành lõi
xích.Những tấm này có hình dạng xác định và vị trí xác định vì thế các răng trên bánh
xích điều khiển có thể ăn khớp một cách trực tiếp lên chúng. Điều này truyền cho xích
urethane sức bền áp lực lớn hơn nhiều, và kéo dài tuổi thọ của nó. Đây là cách bố trí
thường gặp nhất đối với các xích urethane trên các xe công nghiệp. Hình 4.4 cho thấy
mặt cắt ngang của kết cấu này.
32
Cách đơn giản nhất để tăng chiều cao chướng ngại vật có thể đi qua được là tạo ra
bánh trước của hệ thống lớn hơn. Phương pháp này không làm tăng độ phức tạp của
hệ thống một chút nào, và trên thực tế có thể làm đơn giản hoá nó bằng cách thêm
vào những bánh lăn hỗ trợ. Cách bố trí này kết hợp với việc xác định bánh xích điều
khiển trên trục xe trước cũng làm tăng tính cứng vững hệ thống điều khiển. Điều này
làm giảm sự thay đổi của việc gây hại bánh xích điều khiển và các phần liên quan.
Một cách khác làm tăng khả năng của xích là chế tạo chúng dốc thoải. Các thành
phần dốc thoải thêm vào có thể làm tăng số lượng của các bánh lăn hỗ trợ và do đó số
lượng của các thành phần động, nhưng chúng có thể làm tăng đáng kể khả năng hoạt
động. Dốc về trước thường phổ biến và có các ưu điểm rõ rệt, nhưng dốc thoai thoải ở
sau có thể hỗ trợ khả năng di động khi chạy trong các không gian chật mà yêu cầu lùi
trèo lên trên chướng ngại vật.
Hình 4.5 a
Hình 4. 5 b.
33
Hình4. 5 c.
Hình4. 5 d.
Hình 4. 5 Các hình dạng xích thay đổi để cải thiện
tính linh động và tính cứng vững.
Nhiều công ty đã thiết kế và xây dựng các hệ thống xích mà có thể thay đổi hình
dạng. Hệ thống xích có thể thay đổi hình dạng sử dụng một dạng xích linh động hơn
hầu hết các loại khác. Kết cấu này cho phép xích uốn xung quanh các bánh xích nhỏ
hơn và các bánh đệm, có thể xoay theo hầu hết các hướng. Các bánh đệm thường được
nâng hạ trực tiếp trong gầm xích thông qua một vài hệ thống căng xích, bánh chạy
không được nâng trên một cánh tay mà có thể di chuyển theo một cung mà làm thay
đổi hình dạng của góc dốc trước. Một bánh chạy không lực tạo lực căng thứ 2 có thể
được bổ xung cho hệ thống xích để duy trì độ căng đối với tất cả vị trí của xích.
34
Hình4.6a
Hình4.6 b
Hình 4. 6 Hệ thống xích có thể thay đổi được
Khi chịu cả áp lực trong xích và mô men quay điều khiển, bánh xích điều khiển
(và các kết cấu điều khiển liên kết) là một phần dễ tổn hại nhất của một hệ thống xích.
35
Chúng có thể có vị trí hoặc ở phía trước hoặc ở phía sau của xích, tuy vậy chúng
thường được sử dụng trong bộ phận đằng sau để giữ chúng rời xa khỏi các va chạm
không thể tránh được ở phía trước khi xe di động. một giải pháp tốt là nâng bánh xích
dẫn động lên khỏi mặt đất di tránh cho bánh xích va chạm chướng ngại trên mặt
đường. Kết cấu này mang lại một hình dạng xích phổ biến, như chỉ trong hình 4.5 c.
Có một cách đơn giản để mở rộng khả năng di động là ráp thêm một nhánh nối có
độ dốc với khung gầm hoặc thân phương tiện. Nhánh này dốc, không chuyển động và
mở rộng phía trước và phía trên các xích và trượt trên các chướng ngại vật cao hơn
xích. Điều này truyền cho xe có khả năng vượt qua các chướng ngại vật mà cao hơn
hệ thống xích vốn có. Như vậy ta có thể dùng cách đó như một mẹo hay để tăng khả
năng hoạt động, nghĩa là gắn thêm các phần cố định , có độ dốc cho xe.
36
Hình 4. 7 Các bánh lăn.
Địa hình mấp mô làm giảm hiệu quả của xích, bởi vì khung gầm phương tiện bị
trèo lên hoặc trèo xuống va chạm với địa hình gồ ghề. Chuyển động này đặc biệt cần
loại bỏ ở tốc độ cao. Cách bố hệ thống cần lắc cân bằng được sử dụng trên các xe có
bánh thì hầu như hiệu quả trên các xích trong trường hợp này. Các bánh lăn được đỡ
từng cặp trên cần lắc cân bằng bố trí giữa bánh đĩa điều khiển và bánh quay theo. Các
cần lắc cân bằng (hình 4.8) cho phép xích biến đổi không đáng kể khi đi ngang qua
địa hình gồ ghề, nó làm giảm chuyển động theo phương thẳng đứng của khung. Các
bánh lăn sẽ tạo áp lực căng xích.
37
Tay kéo trên lò xo xoắn.
Tay kéo với lò xo cuộn.
Lò xo lá cân bằng.
Tay kéo trên lò xo xoắn được vẽ trong hình 4.9. Nó là một thiết bị đơn giản dựa
vào sự xoắn của lò xo, nó quay xung quanh tâm lò xo xoắn gắn trên khung.Bánh lăn
gắn ở đầu còn lại của tay kéo và tạo ra lực luôn tì lên xích.
Ta cũng có thể hỗ trợ phần cuối của tay kéo với một lò xo (hình 4.10). Ưu điểm
của lò xo cuộn trên hệ thống căng xích dùng lò xo xoắn là vật nặng được hỗ trợ bởi lò
xo rất gần với điểm trọng tải, làm giảm các lực và các mômen cho tay kéo. Điều này
có thể làm giảm tải cho hệ thốngcăng xích. Hệ thống đặt ở bên trong không gian xích
tốt hơn là bên trong khung gầm phương tiện.
38
Hình 4. 10 Căng đai dùng các lò xo cuộn.
Một sự thay đổi đơn giản của hệ thống cần lắc cân bằng là dùng các lò xo lá (hình
4.11). Điều này làm giảm chấn động va chạm tới cần lắc cân bằng và là một cách đơn
giản hơn. Các cần lắc cân bằng thường rất cứng lên vẫn cho phép các bánh lăn tạo ra
các sự di chuyển lớn. Hệ thống này có thể dùng bổ xung nếu xích không đủ độ êm và
lướt đi yêu cầu. Hình 4.11 dùng các bánh con lăn kép.
39
4.6 Các kết cấu của hệ thống xích
4.6.1 Bộ truyền động điều khiển một xích
Kết cấu bố trí xích đơn giản nhất là bố trí mà chỉ sử dụng một xích. Bố trí này,
trên thực tế còn tồn tại ít nhất một dạng, và tính di động khá tốt. Dạng thường gặp là
của xe một xích chạy trên tuyết và băng. Mặc dù các xe này được thiết kế dành riêng
cho sử dụng trên tuyết, các bánh xe thay thế ván trượt, chúng cũng có thể được sử
dụng trên các mặt phẳng cứng. Áp lực lên xích trên tuyết nhỏ hơn nhiều so với trên
mặt đất.
Khả năng di động được quyết định bởi 2 điểm : các bánh cần được đẩy vượt lên
trên các chướng ngại vật và sự dẫn hướng được thực hiện bởi hệ thống Ackerman, nó
sẽ ngăn chặn việc quay trong không gian. Hình 4.12 là kết cấu dùng xích dốc thoải
phía trước phổ biến trên các xe chạy bằng máy trên tuyết
Hình 4. 12 Một xích, 2 bánh trước điều khiển: hệ thống lái Ackerman
Kết cấu dùng 2 xích thì phổ biến hơn rất nhiều. Dạng cơ bản của nó đơn giản, dễ
hiểu, và tương đối dễ để xây dựng. Hai xích được gắn vào 2 bên, và mỗi bánh dẫn
động được cấp nguồn bởi mỗi động cơ riêng. Các thiết kế cứng vững thực chất có
động cơ được đỡ bên trong khung và được gắn trực tiếp vào bánh xích điều khiển. Khi
bánh xích điều khiển cần rẽ thì điều khiển tốc độ 2 động cơ lệch nhau, hầu như luôn
có một phương án giảm tốc động cơ phục vụ cho bộ truyền động. Hình 4.13 cho thấy
một bố trí 2 xích, với các động cơ điều khiển, các hộp số, các thanh dẫn hướng cố
định của xích, và các xích không dốc thoải. Kết cấu này đại diện cho bố trí đơn giản
nhất của một xe có bánh xích.
40
Hình 4. 13 Bố trí 2 xích cơ bản.
4.6.3 Bộ truyền động 2 xích với các hệ thống thiết bị lái riêng rẽ
Một kết cấu phức tạp hơn, nhưng kém hiệu quả hơn là kết cấu 2 xích được điều
khiển thông qua bộ truyền động vi sai, và robot được lái bởi một tập các bánh xe được
gắn trên xích. Bố trí này sử dụng khi các toa xe lớn không có đủ ma sát trên các con
đường không chuẩn bị trước,thay thế các bánh xe phía sau bằng thành cách hệ thống
xích mang xấp xỉ khối lượng như nhau. Kết cấu này (hình 4.14) được gọi các xích
một nửa.
Sự thay đổi đáng chú ý của bố trí 2 xích là đặt 2 xích nội tuyến (inline), một xích
ở đằng trước một xích khác (hình 4.14). Trạng thái ổn định được duy trì bằng cách tạo
các xích đủ rộng, và thiết bị lái được hoàn thành với một khớp nối giữa 2 xích. Các
xích buộc phải được hỗ trợ từ các mặt phẳng (side), giống như trên một xe chạy bằng
máy trên tuyết. Năng lượng của thiết bị lái đựơc truyền thông qua một hoặc hai cơ cấu
truyền động tuyến tính hoặc quay là bộ phận của chỗ nối có khớp nối.
Khi các xích chắc chắn thẳng dọc theo nhau, hình dạng cung trên mỗi xích không
tạo ra bất kì sự lắc lư nào. Hệ thống này có tính di động lớn, nhưng xích một nửa
không thể quay trong không gian. Nó sẽ có khả năng làm việc rất tốt đối với các xe sử
dụng trên tuyết hoặc trên cát. 2 xích có thể hoặc mang các khung của chúng hoặc gắn
trên một khung đơn có gắn vào trục nối vạn năng.
41
Hình 4. 14 Xích 2 bánh rộng, fore-and-aft
Việc thêm vào nhiều hơn các xích sẽ làm tăng tính di động của xe. Có một vài
vấn đề với cách tiếp cần này. Thêm vào nhiều hơn các xích có nghĩa là tất yếu có
nhiều phần chuyển động hơn, nhưng nó cũng thường có nghĩa là tạo ra xe dài hơn. Kết
cấu tốt nhất là bố trí mà thêm nhiều hơn các xích với số lượng ít nhất của các phần
chuyển động thêm vào, và giữ xe có chiều dài cần thiết. Tiêu chí cuối dành cho một
kết cấu có khả năng thay đổi cấu hình, kết cấu cần chiều dài dài hơn khi cần thiết. Kết
cấu này được triển khai trong 2 cách khác nhau.
Hình 4.15 cho thấy kết cấu chung của Urbie telerobotic iRobot. Bố trí này sử
dụng cơ cấu truyền động thứ 3 để điều khiển một cặp xích tay trèo quay xung quanh
các bánh quay theo ở trước. Chúng được vận hành bởi các động cơ giống nhau và
luôn luôn quay cùng động cơ. Bố trí này biểu diễn hình dạng đơn giản nhất của xe 4
nhánh xích, và có khả năng di chuyển rất cao.
42
Hình 4. 15 IRobot’s Urbie, a four-tracked teleoperated robot layout
Trọng tâm của Urbie được đặt ở phía trên đầu của xe, với các chân trèo được kéo
dài, Urbie có thể trèo qua khe nứt mà rộng hơn một nửa chiều dài của xe cơ bản. Vị trí
trọng tâm này cũng làm cho các chân chèo có khả năng lật robot lên trên nếu nó bị đảo
ngược. Khi các chân trèo quay, chúng tạo độ dốc lớn, Urbie có thể trèo qua các
chướng ngại vật mà cao hơn chiều cao toàn bộ của xích cơ bản. Ở đây cũng có các
chức năng khác, chân trèo có thể thực hiện không liên quan tới tính di động, giống
như khả năng đứng. Điều này làm cho robot cao hơn và cho phép một camera được
đặt vi trí chiến lược để nhìn khắp vùng địa hình.
Hình 4.16a.
43
Hình 4.16b.
Hình 4. 16 Các chân trèo chiều dài như nhau, trục xe giữa dùng chung.
Một kết cấu gần với bố trí của Urbie (hình 4.17 a-b) là kết cấu mà ở đó các cặp
xích có kích thước giống nhau, được gắn lên cùng trục giữa. Có 2 loại cơ cấu truyền
động khác nhau để cung cấp lực một cách độc lập cho 4 nhánh xích và một cơ cấu
truyền động thứ 5 để cung cấp lực cho trục giữa nâng lên hạ xuống.
Thủ thuật này làm nâng toàn bộ khung, nhưng nó cũng làm tăng khả năng lăn khi
ma sát là không cần lớn. Bố trí có thể cấu hình lại này bao gồm tính di động cao.
Đây là một bố trí xích cuối cùng (hình 4.17) .Nó là một sự mở rộng của thiết kế
Urbie, nhưng trên thực tế được sáng chế trước kết cấu Urbie. Bố trí tăng lên 2 nhánh
xích.Các chân trèo cả đằng trước và đằng sau, được điều khiển độc lập.Bố trí này cho
phép xe đứng lên gần giống trong hình 4.16. Chân trèo kép kéo dài chiều dài phương
tiện, làm dễ dàng vượt qua các kẽ nứt rộng và trèo lên các bặc thang, song vẫn chưa
cho phép để quay trong không gian một lối hẹp.
44
Hình 4. 17 2 bánh xích, chân chèo kép.
Trước khi bước vào thiết kế, ta sẽ điểm qua về chức năng và giới hạn của robot
theo yêu cầu đã đặt ra. Ta cần chế tạo một mobile robot di chuyển dùng xích có thể
thực hiện được nhiều nhiệm vụ trong nhà cũng như ngoài trời. Robot có thể vượt qua
địa hình gập nghềnh,mấp mô bất kì, có thể leo cầu thang thông thường, có thể nhận
biết (theo màu, hình dạng…) của một vật và tự di chuyển theo vật đó. Cùng với những
hiều biết ở chương trước, ta sẽ đi thiết kế một mobile robot mới phù hợp với những
yêu cầu đặt ra.
Yêu cầu nhiệm vụ cụ thể địa hình cần vượt qua của robot phục vụ cho thiết kế cơ
khí là:
Chiều cao của địa hình có thể vượt qua: 100 mm
Chiều dài địa hình không liên tục có thể vượt qua: 200 mm
Góc nghiêng địa hình có thể đi ổn định: 300
Từ những phân tích về kết cấu, ta quyết định lựa chọn phương án kết cấu robot
gồm 2 cặp đai. Trong đó thân chính của robot gồm có 1cặp đai đối xứng 2 bên, nhánh
trên của robot là 2 tay gạt chuyển động nhờ đai . Với kết cấu này robot có khả năng
vượt những chướng ngại vật cao không quá 2/3 chiều dài lớn nhất của nó một cách dễ
dàng
45
Hình 4. 18 Bản vẽ thiết kế của robot
46
Kích thước cao nhất:Hmax= 124 mm
4.7.3 Kết cấu đai được lựa chọn
Trong pham vi đồ án này, chúng tôi sử dụng đai thay thế cho hệ thống xích bởi
những lí do sau:
Do kích thước của robot là tương đối nhỏ nên việc dùng xích là khó khăn vì
khối lượng xích rất nặng nề.
Việc chế tạo xích đạt yêu cầu là cả một công việc phức tạp tốn nhiều công
sức, trong khi đó việc dùng đai tỏ ra ưu việt hơn. Vật liệu là đai vốn mềm và có
khả năng ma xát tốt, việc tạo đai theo yêu cầu bám đường thực hiện đơn giản hơn
rất nhiều so với chế tạo xích. Kết cấu robot sẽ đơn giả hơn mà vẫn có hiệu quả cao.
Khối lượng robot theo đó cũng sẽ giảm đáng kể, động cơ và nguồn cung cấp cũng
sẽ có nhiều sự lựa chon hợp lý hơn…
Tuy nhiên việc lựa chọn đai cũng cần phải đảm bảo những yêu cầu sau:
Đai có khả năng chuyền chuyển động tốt, hiệu quả, không xảy ra hiện tượng
trượt đai,dão đai trong quá trình hoạt động.
Hệ thống đai phải có mặt ngoài ma sát tương đối tôt, đảm bảo cho robot luôn
bám địa hình, đặc biệt trong địa hình gồ ghề đai phải tạo ma sát đủ lớn để robot có
thể vượt qua.
Với những yêu cầu trên đai có hình dáng thiết và thông số như sau:
Hình dáng tổng thể:
Đai dùng cho nhánh chính:
47
Hình 4. 21 Đai dùng cho nhánh tay
Cấu tạo, kích thước chính:
Đai 1 mặt (mặt trong)
Nhánh chínhcó chu vi:C1=804 mm,nhánh tay:C2=562 mm.
Môđun: m= 3
Bề rộng Wđai=25 mm
Miếng tạo ma sát cho mặt ngoài đai(cao su), được dán mặt ngoài của đai
kích thước: LxWx H =24x7x4.
4.7.4.1 Nhiệm vụ
Nhánh chính có những nhiệm vụ sau:
Tạo chuyển động chính cho cả robot di chuyển đồng thời là bộ phận dẫn
hướng chính trong khi chuyển động.
Chứa động cơ và nguồn cấp năng lượng(acquy), mạch điều khiển và thiết bị
giao tiếp, trao đổi tín hiệu(camera).
Cấu tạo gồm những bộ phận chính sau:
- Cụm bánh đai dẫn động(số lượng 2).
- Cụm bánh đai theo (số lượng 2).
- Trục trước(số lượng 2).
- Khung(số lượng 1).
48
Hình 4. 22 Bánh đai dẫn động
Kích thước chính:
Đường kính ngoài Ø102
Môđun m =3
Số răng :n=34
Bề dày: Wbánhđai= 25 mm
Chốt truyền:
Hình dạng
49
Hình 4. 24 Vòng chặn đai
Vòng đàn hồi
50
Hình 4. 26 Lắp ghép của cụm chi tiết bánh đai dẫn động
51
Truyền chuyển động cho đai của nhánh tay gạt.
Cấu tạo
Hình dáng:
4.7.4.5 Khung
Nhiệm vụ: là nơi gá đỡ của trục, động cơ, mạch điều khiển, nguồn cấp, webcam…
Cấu tạo:
Hình dạng:
52
Hình 4. 30 Thanh tăng cứng cho khung
53
Hình 4. 32 Bánh căng đai trên
4.7.5.1 Nhiệm vụ
Liên kết với nhánh chính tạo ra khối chuyển động trong khi di chuyển trên địa
hình không quá gồ ghề.
Có nhiệm vụ nâng robot, bám địa hình khi gặp những chướng ngai vật lớn.
Một nhiệm vụ quan trọng nữa là để dồn trọng tâm robot về phía trước hạn chế cho
robot không bị lật ngửa khi đi trên địa hình dốc.
54
4.7.5.4 Tấm tay đỡ
Cấu tạo:
55
Hình 4. 36 Lắp ghép cho tấm tay quay
Trên tấm tay quay có gắn 2 miếng nhôm chữ L để tăng cứng, đầu trên tấm tay
quay bắt bulông qua có tác dụng như trục quay cho bánh nhỏ , một đầu cố định bằng
đai ốc và đệm vênh.
56
4.8.1 Động cơ phía sau
57
4.8.2 Động cơ phía trước
Động cơ phía trước chỉ có nhiệm vụ nâng cánh tay nên tải trọng là không đáng kể,
tuy nhiên cần có khả năng tự hãm để đảm bảo góc nghiêng ổn định khi robot di
chuyển cũng như va chạm. Vì thế động cơ lựa chọn là động cơ có bộ truyền trục vít –
bánh vít.
Robot với 2 nhánh đai lên rất linh hoạt trong khi di chuyển. Bình thường,
robot dùng chủ yếu 2 dãy đai của nhánh chính để phục vụ di chuyển bằng phẳng.
Nhờ có ma sát lớn giữa đai và bề mặt địa hình, robot di chuyển dễ dàng qua địa
hình thấp có chiều cao không lớn hơn gầm robot hoặc có thể cao hơn một chút.
Khi gặp địa hình có chướng ngại cao hơn gầm robot, 2 tay phía trước của robot sẽ
được khởi động ấn xuống nâng gầm robot cao hơn chướng ngại. Lực ma sát của
đai và địa hình tại những điểm tiếp xúc giữ cho robot bám bề mặt không bị trượt .
Lúc này phản lực từ địa hình lên robot cũng giảm đáng kể động cơ dẫn động phía
sau sẽ cung cấp moment cho bánh đai cả 2 nhánh cùng lăn, đẩy robot tiến lên phía
trước.Điểm thú vị ở đây là cả 2 nhánh đai luôn cùng chuyển động, các bánh đai
luôn quay lên tổng lực đẩy robot về phía trước là khá lớn. Nhánh tay ở những vị
trí thích hợp sẽ có thể tạo lực đẩy lớn hơn cho robot, hạn chế bớt phản lực từ bề
mặt địa hình
Ở hình a ta thấy lực ma sát lên bề mặt chướng ngại vật là nhỏ do bề mặt diện
tích tiếp xúc nhỏ, trong khi đó phản lực về robot từ bề mặt đó tăng khi lực phát
động tăng. Đai có xu hướng trượt trên bền mặt địa hình. Robot sẽ không vượt qua
được chướng ngại vật
Để robot vượt qua chướng ngại vật, tay phía trước được nâng lên như hình b.
Lúc này lực ma sát trên bề mặt đai ngoài nhánh tay lớn, đai sẽ không bị trượt,
đồng thời phản lực từ bề mặt địa hinh nhỏ hơn rất nhiều, lúc này lực phát động
chỉ cần chống lại thành phần lực của trọng lượng robot gây ra và các lực ma sát
giữa các bộ phận trong robot. Với một động cơ khỏe robot sẽ được đẩy lên phía
trước
58
F2
G.sina
F1
Fms
a
G
Fms
c,
F2
F1 G.sina
a
Fms
Fms
d,
e,
Hình 4. 39 Minh họa robot vượt qua chướng ngại vật
59
CHƯƠNG V
Ngày nay, các bộ vi điều khiển đang được ứng dụng ngày càng rộng lớn trong
các lĩnh vực kỹ thuật và đời sống xã hội, đặc biệt là trong lĩnh vực tự động hóa và điều
khiển từ xa. Giờ đây với nhu cầu chuyên dụng hóa, tối ưu hóa (về thời gian, không
gian và giá thành trên một đơn vị sản phẩm), bảo mật, tính chủ động trong công việc...
ngày càng đòi hỏi khắt khe và việc đưa ra công nghệ mới trong lĩnh vực chế tạo mạch
điện tử nhằm đáp ứng những yêu cầu trên là hoàn toàn cấp thiết mang tính thực tế cao.
Để hiểu khái niệm về bộ vi điều khiển, ta có thể làm phép so sánh nó với bộ vi
xử lý công dụng chung như sau:
60
Các bộ vi xử lý công dụng chung như họ Intel x86 (8086, 80286, 80386, 80486
và Pentium) hay là họ Motorola 680x0 (68000, 68010, 68020, 68030, 68040, ...)
không có RAM, ROM, các bộ định thời và các cổng vào/ra tích hợp trên chip... Với lý
do đó mà chúng được gọi là các bộ vi xử lý công dụng chung.
Một nhà thiết kế hệ thống sử dụng một bộ vi xử lý công dụng chung chẳng hạn
như Pentium hay 68040 sẽ phải bổ sung thêm RAM, ROM, các cổng vào/ra và các bộ
định thời bên ngoài để cho chúng hoạt động được. Mặc dù việc bổ sung thêm RAM,
ROM, các bộ định thời và các cổng vào/ra sẽ làm cho hệ thống cồng kềnh lên nhưng
lại có ưu điểm là người sử dụng các bộ vi xử lý kiểu này rất linh hoạt trong việc quyết
định dung lượng RAM, ROM và các cổng vào/ra vừa đủ cho ứng dụng.
Trong khi đó một vi điều khiển đóng gói thì đã được nhúng một CPU (bộ vi xử
lý) cùng với một một số lượng RAM, ROM, cổng vào/ra cố định và bộ định thời tùy
thuộc vào từng loại vi điều khiển. Do đó người thiết kế không thể bổ sung thêm RAM,
ROM, các cổng vào/ra hay bộ định thời cho hệ thống. Với một lượng RAM, ROM và
các cổng vào/ra cố định như vậy là một hạn chế song nó lại thật sự lý tưởng đối với
những ứng dụng mang tính chuyên biệt, tối ưu về giá thành, tối ưi về không gian...
Hiện nay trên thị trường có các bộ vi điều khiển 8bit chính đó là: 68011 của hãng
Motorola, 8051 của hãng Intel, Z8 của hãng Xilog, PIC16x của hãng Microchip
Technology. Mỗi loại trên đây đều có một tập lệnh và số thanh ghi riêng biệt nên
chúng không tương thích lẫn nhau.
Tiêu chuẩn đầu tiên và trước hết trong lựa chọn một bộ vi điều khiển là nó phải
đáp ứng nhu cầu bài toán về mặt công suất tính toán, giá thành và hiệu quả. Trong khi
phân tích các nhu cầu của một dự án dựa trên bộ vi điều khiển, chúng ta trước hết phải
biết là bộ vi điều khiển nào là 8 bít, 16 bít hay 32 bít có thể đáp ứng tốt nhất nhu cầu
tính toán của bài toán một cách hiệu quả nhất.
Những tiêu chuẩn được đưa ra để cân nhắc là:
- Tốc độ: Tốc độ lớn nhất mà bộ vi điều khiển hỗ trợ là bao nhiêu.
- Kiểu đóng vỏ: Đó là kiểu 28 chân DIP hay QFP hay là kiểu đóng vỏ khác. Đây
là điều quan trọng đối với yêu cầu về không gian, kiểu lắp ráp và tạo mẫu thử
cho sản phẩm cuối cùng.
- Công suất tiêu thụ: Điều này đặc biệt khắt khe đối với những sản phẩm dùng
pin, ắc quy.
- Dung lượng bộ nhớ RAM và ROM trên chíp.
61
- Số chân vào/ ra, bộ định thời, số ngắt trên chíp.
- Khả năng dễ dàng nâng cấp cho hiệu suất cao hoặc giảm công suất tiêu thụ.
- Giá thành cho một đơn vị: Điều này quan trọng quyết định giá thành cuối cùng
của sản phẩm mà một bộ vi điều khiển được sử dụng.
62
- Bộ chuyển đổi tín hiệu số sang tương tự với 10 bít .
- Cổng truyền thông nối tiếp SSP với SPI phương thức chủ và I2C(chủ/tớ).
- Bộ truyền nhận thông tin đồng bộ, không đồng bộ(USART/SCL) có khả năng
phát hiện 9 bít địa chỉ.
- Cổng phụ song song (PSP) với 8 bít mở rộng, với RD, WR và CS điều khiển.
63
Hình5. 2 Sơ đồ khối của VĐK PIC16F873A/876A
64
- Có 128bytes RAM.
- Có 4 cổng vào/ra (I/O) 8bits.
- Có 2Timers 16bits.
- Có 64kbytes vùng nhớ mã ngoài (ROM ngoài).
- Có 64kbytes vùng nhớ dữ liệu ngoài (RAM ngoài).
- Xử lý Boolean (hoạt động trên bit đơn).
- Có 210 vị trí nhớ có thể định vị bit.
- Có 5 ngắt.
- 4us cho hoạt động nhân hoặc chia.
- Dùng nguồn dao động ngoài.
- Dùng điện áp 5v để chip hoạt động.
65
- Có bộ dao động chủ trên chíp, điều này sẽ tránh được những sai số không cần
thiết trong việc tạo xung dao động.
- Có khả năng tự Reset bằng bộ WDT.
- Có thêm 256bytes EEPROM.
- Và có khă năng chống nhiễu tốt hơn trong ứng dụng điều khiển từ xa so với
8051.
66
Hình 5. 4 Sơ đồ khối của các chân RA0:RA3
67
Hình 5. 5 Sơ đồ khối của các chân RA4/T0CKI
68
Cổng B là cổng hai chiều với độ rộng đường truyền là 8 bit và để điều khiển việc
truy xuất dữ liệu trên chân này ta sử dụng thanh ghi TRISB. Nếu set bit TRISB=1 thì
chân tương ứng của cổng B sẽ làm nhiệm vụ của một ngõ vào và ngược lại nếu xóa bit
TRISB=0 thì chân tương ứng đó sẽ làm nhiệm vụ của một ngõ ra.
Có ba chân của cổng B có thể tích hợp với các chức năng vận hành với điện áp
thấp đó là các chân: RB3/PGM, RB6/PGC, RB7/PGD.
Mỗi chân của cổng B có một khả năng kéo lên bên trong yếu. Một bit điều khiển
đơn có thể bật tất cả khả năng kéo lên đó, điều này được miêu tả bởi việc xóa bit
(OPTION_REG<7>). Khả năng dừng này sẽ tự động được tắt đi khi các chân
của cổng được định nghĩa là đầu ra và khi ta Reset. Bốn chân của cổng B, từ chân
RB4:RB7 có đặc tính là ngắt khi thay đổi trạng thái. Chỉ những chân được định dạng
là đầu vào thì ngắt này mới tồn tại. Một vài chân RB4:RB7 được định dạng như chân
ra, nó thi hành ngắt trên sự so sánh thay đổi. Chân vào RB4:RB7 được so sánh với giá
trị cũ của chốt ở lần đọc cuối cùng của cổng B. Sự ghép đôi không khớp chân ra của
RB4:RB7 bằng lệnh OR làm phát sinh ra ngắt với cờ bit RBIF của thanh ghi
INTCON. Ngắt này có thể khởi động thiết bị từ trạng thái SLEEP.
Dưới đây là sơ đồ khối các chân của cổng B:
69
Hình 5. 8 Sơ đồ khối của các chân RB4:RB7
c. Cổng C và thanh ghi TRISC
Cổng C là cổng hai chiều với độ rộng đường truyền là 8 bit và tương ứng với việc
điều khiển nó là thanh ghi TRISC. Nếu đặt bit TRISC=1 thì chân tương ứng với nó
làm nhiệm vụ của một đầu vào và ngược lại nếu xóa bit TRISC=0 thì chân tương ứng
đó làm nhiệm vụ của một đầu ra. Cổng C đa hợp với việc vận hành thiết bị ngoại vi và
chân của cổng C thông qua bộ đệm Schmitt Trigger đầu vào.
Khi chế độ I2C hoạt động, các chân cổng PORTC<4:3> có thể được sắp xếp với
mức I2C thường hoặc với mức SMBUS bằng cách sử dụng bit CKE (SSPSTAT<6>).
Khi các chức năng ngoại vi đang hoạt động, điều quan tâm là cần xác định bit
TRIS của mỗi chân cổng C. Một số phần phụ có thể ghi đè lên bit TRIS làm cho chân
này trở thành chân ra, trong khi đó thì một số phần phụ khác lại ghi đè lên bit TRIS
làm cho chân này trở thành chân vào. Từ khi sự ghi đè bit TRIS có hiệu quả trong khi
thiết bị ngoại vi được cho phép, những lệnh đọc- sửa-ghi(BSF,BCF,XORWF) với
thanh ghi TRISC như là nơi gửi tơi sẽ được tránh. Người sử dụng nên đề cập tới việc
phân chia kết nối các thiết bị ngoại vi để set chính xác các bit TRIS.
70
Dưới đây là sơ đồ khối các chân của cổng C:
71
Hình 5. 10 Sơ đồ khối của các chân RC3:RC4
72
Công thức tính tốc độ truyền như sau:
bit 7 CSR: bit lựa chọn xung clock chỉ dùng trong chế độ đồng bộ
1 = Master mode clock từ BRG
0 = Slave mode clock từ bên ngoài
bit 6 TX9: cho phép truyền 9 bit
1 = truyền 9 bit
0 = truyền 8 bit
bit 5 TXEN: bit cho phép truyền
1 = cho phép truyền
0 = không cho phép truyền
bit 4 SYNC: lựa chọn chế độ USART
1 = chế độ đồng bộ
0 = chế độ không đồng bộ
bit 3 không sử dụng
bit 2 BRGH: bit lựa chọn tốc độ cao
1 = tốc độ cao
0 = tốc độ thấp
bit 1 TRMT: cho trạng thái thanh ghi dịch TSR
1 = TSR rỗng
0 = TSR đầy
bit 0 TX9D: dữ liệu bit thư 9 truyền đi, có thể là bit Parity
Chú ý:
R = bit cho phép đọc W = bit cho phép ghi U = bit không dùng
-n = giá trị ở POR -1 = bit được set -0 = bit bị xóa -x = bit chưa rõ
- Trạng thái nhận và thanh ghi điều khiển:
73
bit 7 SPEN: bit cho phép cổng nối tiếp (định hình các chân RC6/TX/CK và
RC7/RX/DT như chân cổng nối tiếp)
1 = cho phép hoạt động
0 = không cho phép hoạt động
bit 6 RX9: cho phép nhận 9 bit
1 = nhận 9 bit
0 = nhận 8 bit
bit 5 SREN: bit cho phép nhận riêng rẽ (chỉ có chế độ đồng bộ chủ bit nay
mới được sử dụng)
1 = cho phép nhận riêng rẽ
0 = không cho phép nhận riêng rẽ
bit 4 CREN: cho phép tiếp tục nhận
- Chế độ không đồng bộ:
1 = cho phép tiếp tục nhận
0 = không cho phép tiếp tục nhận
- Chế độ đồng bộ:
1 = cho phép tiếp tục nhận đến khi bit CREN bị xóa
0 = không cho phép tiếp tục nhận
bit 3 ADDEN:cho phép đánh địa chỉ trong chế độ không đồng bộ truyền 9 bit
(RX9=1)
1 = cho phép đánh địa chỉ, cho phép ngắt và tải vào bộ đệm nhận khi
RSR<8> được set
0 = cho phép đánh địa chỉ, tất cả các byte được trả về và bit thứ 9 có thể
được sử dụng như bit chẵn lẻ (parity bit)
bit 2 FERR: bit lỗi khung truyền
1 = có lỗi
0 = không có lỗi
bit 1 OERR: bit lỗi tràn
1 = có lỗi tran
0 = không có lỗi tràn
bit 0 RX9D: bit thứ 9 của dữ liệu được nhận
Chú ý:
R = bit cho phép đọc W = bit cho phép ghi U = bit không dùng
-n = giá trị ở POR -1 = bit được set -0 = bit bị xóa -x = bit chưa rõ
b. Chế độ truyền thông không đồng bộ
Chế độ truyền không đồng bộ được định dạng như sau: bắt đầu với bit START,
tiếp theo là 8 hay 9 bit dữ liệu và kết thức bởi bit STOP. Thông thường thì dữ liệu
được định dạng với 8 bit. Việc truyền và nhận dữ liệu được tiến hành với những bit
thấp trước rồi đến các bit cao, việc truyền và nhận có thể tiến hành độc lập nhau. Khi
74
sử dụng chế độ truyền không đồng bộ thì chúng ta cần thiết lập tốc độ truyền và số bit
định dạng dữ liệu. Truyền thông không đồng bộ dừng khi ở chế độ SLEEP.
- Truyền dữ liệu:
Việc truyền dữ liệu thì thang ghi TSR đóng vai trò quan trọng, dữ liệu của nó có
thể được đọc hay ghi thông qua bộ đệm là thanh ghi TXREG. Thanh ghi TSR không
được nạp giá trị cho tới khi bit STOP của lần truyền trước chuyển đi. Khi bit STOP
chuyển đi nó sẽ nạp giá trị mới tới thanh ghi TSR từ thanh ghi TXREG. Nếu thanh ghi
TXREG rỗng nó sẽ set cờ bit TXIF của thanh ghi PIR1. Trong khi cờ bit TXIF cho
biết trạng thái của thanh ghi TXREG thì bit TRMT cho biết trạng thái của thanh ghi
TSR. Bit trạng thái TRMT chỉ dùng để đọc, nó được set khi thanh ghi TSR rỗng. Việc
truyền dữ liệu hoạt động khi ta set bit TXEN của thanh ghi TXSTA. Việc truyền dữ
liệu chỉ hoạt động khi dữ liệu đã được nạp tới thanh ghi TXREG và tốc độ truyền đã
được sản sinh từ xung đồng hồ. Khi việc truyền dữ liệu bắt đầu lần đầu tiên thì thanh
ghi TSR lúc đó rỗng. Ngay lập tức dữ liệu được truyền từ thanh ghi TXREG tới thanh
ghi TSR, sau đó thanh ghi TXREG rỗng và công việc này được lặp lại.
Để truyền 9 bit dữ liệu đi thì bit truyền TX9 của thanh ghi TXSTA phải được set
và bit dữ liệu thứ 9 truyền đi sẽ được ghi tới bit TX9D. Bit thứ 9 này phải được ghi
trước trước khi chuyển 8 bit dữ liệu tới thanh ghi TXREG bởi vì dữ liệu ghi lên thanh
ghi TXREG ngay lập tức được chuyển đến thanh ghi TSR.
75
Hình 5. 13 Truyền không đồng bộ hai từ nối tiếp
Hình 5. 14 Thanh ghi cho phép truyền trong chế độ không đồng bộ
- Nhận dữ liệu:
Trong chế độ không đồng bộ, việc nhận dữ liệu được kích hoạt bằng cách set bit
CREN (RCSTA<4>).
Đóng vai trò quan trọng trong việc nhận dữ liệu là thanh ghi RSR. Sau khi đã
nhận xong bit STOP, dữ liệu từ thanh ghi RSR được chuyển tới thanh ghi RCREG
nếu thanh ghi này trống. Nếu việc truyền nhận được hoàn thành thì cờ bit RCIF
(PIR1<5>) sẽ được set và có thể ngắt hoạt động của nó bằng việc set bit RCIE
(PIE1<5>). Cờ bit RCIF chỉ được dùng để đọc, nó được xóa bởi phần cứng, nó được
xóa khi thanh ghi RCREG được đọc là trống. Thanh ghi RCREG là một thanh ghi có
bộ đệm đôi, nó có khả năng nhận hai byte dữ liệu và truyền tới thanh ghi RCREG
FIFO và khi đó byte thứ 3 sẽ truyền tới thanh ghi RSR. Nếu phát hiện bit STOP của
byte thứ 3 mà thanh ghi RCREG vẫn đầy thì bit báo lỗi OERR (RCSTA<1>) sẽ được
set. Bit báo lỗi chỉ được xóa bằng phần mềm. Nếu bit OERR được set thì việc truyền
dữ liệu từ thanh ghi RSR tới thanh ghi RCREG bị ngăn cấm và dữ liệu không được
nhận. Bit báo lỗi tạo khung FERR (RCSTA<2>) sẽ được set khi bit STOP được phát
hiện đã bị xóa. Bit FERR và bit RX9D (RCSTA<0>) được lưu trong bộ đệm giống
như dữ liệu nhận. Khi đang đọc thanh ghi RCREG thì sẽ nạp giá trị mới cho các bit
RX9D và FERR, thành ra, đó là điều thiết yếu để người dùng đọc thanh ghi RCSTA
trước khi sự đọc thanh ghi RCREG để không mất thông tin FERR và RX9D trước đó.
76
Hình 5. 15 Sơ đồ khối của chế độ nhận USART
Hình 5. 17 Thanh ghi cho phép nhận trong chế độ không đồng bộ
c. Chế độ truyền thông đồng bộ chính
77
Trong chế độ truyền này, dữ liệu được truyền nhận dưới dạng bán song công
(việc truyền và nhận dữ liệu không thể tiến hành đồng thời cùng một lúc được). Khi
đang truyền dữ liệu thì việc nhận dữ liệu bị ngăn cấm. Việc chọn chế độ truyền thông
đồng bộ được thiết lập bằng cách set bit SYNC (TXSTA<4>), ngoài ra bit SPEN còn
được set để định dạng các chân vào ra RC6/TX/CK và RC7/RX/DT để làm đường
truyền xung clock (CK) và đường truyền dữ liệu (DT). Chế độ chủ còn được xác định
bằng cách set bit CSRC (TXSTA<7>).
- Truyền dữ liệu:
Tương tự truyền thông không đồng bộ, truyền thông đồng bộ cũng cần có thanh
ghi TSR, thanh ghi này đọc và ghi dữ liệu thông qua bộ đệm là thanh ghi TCREG.
Thanh ghi TSR được nạp giá trị bằng phần mềm, nó sẽ không được nạp giá trị cho tới
khi đã truyền đi bit cuối cùng của lần truyền trước đó. Khi đã truyền hết bỉt cuối cùng
thì thanh ghi TSR sẽ được nạp giá trị mới từ thanh ghi TXREG. Nếu thanh ghi
TXREG rỗng thì bit cờ ngắt TXIF sẽ được set. Cờ ngắt này hoạt động hay không hoạt
động được quy định bởi việc set hay xóa bit TXIE (PIE1<4>). Trong khi bit cờ ngắt
cho biết trạng thái hoạt động của thanh ghi TXREG thì bit TRMT cho biết trạng thái
của thanh ghi TSR, bit trạng thái TRMT chỉ dùng để đọc và nó được set khi thanh ghi
TSR rỗng.
Việc truyền dữ liệu hoạt động khi ta set bit TXEN (TXSTA<5>), bit dữ liệu đầu
tiên sẽ được truyền đi trên sườn lên của xung clock trên chân CLK. Việc truyền dữ
liệu được bắt dầu từ thanh ghi TXREG và set bit TXEN. Ưu điểm ở đây là tốc độ thấp
có thể được lựa chọn. Tốc độ truyền được dữ nguyên trong khi RESET khi các bit
TXEN, CREN, SREN được xóa.
Việc truyền dữ liệu được bắt đầu lần đầu tiên khi thánh ghi TSR rỗng, dữ liệu
truyền tới thanh ghi TXREG ngay lập tức được chuyển tới thanh ghi TSR và kết quả
là thanh ghi TXREG rỗng. Xóa bit TXEN trong khi truyền dữ liệu là lí do việc truyền
dữ liệu bị gián đoạn và nó phải dừng lại, nếu bit CREN hoặc bit SREN được set trong
khi đang truyền cũng là nguyên nhân gây ra việc truyền dữ liệu bị gián đoạn.
Để truyền 9 bit dữ liệu thì bit TX9 (TXSTA<6>) phải được set và bit dữ liệu thứ
9 này sẽ được ghi tới bit TX9D (TXSTA<0>). Bit này phải được ghi trước khi ghi 8
bit dữ liệu còn lại tới thanh ghi TXREG bởi vì dữ liệu được ghi lên thanh ghi TXREG
ngay lập tức được chuyển đến thanh ghi TSR nếu thanh ghi này rỗng. Nếu thanh ghi
TSR rỗng và thanh ghi TXREG được ghi trước khi ghi giá trị bit TX9D thì hiện tại nó
sẽ nạp giá trị cũ trong bit TX9D.
78
Hình 5. 18 Thanh ghi cho phép truyền trong chế độ đồng bộ chủ
79
Việc nhận dữ liệu ở chế độ đồng bộ chủ được chọn bằng việc set bit CREN
(RCSTA<4>) hoặc bit SREN (RCSTA<5>). Dữ liệu được lấy ở chân RC7/RX/DT
trên sườn xuống của xung clock. Nếu bit SREN được set thì chỉ nhận được một từ, và
nếu bit CREN được set thì việc nhận cứ tiếp diễn cho tới khi bit này bị xóa mới. Nếu
cả hai bit này được set thì bit CREN được ưu tiên trước rồi theo thứ tự đó. Sau khi dữ
liệu đã được nhận vào trong thanh ghi RSR nó sẽ được chuyển tới thanh ghi RCREG.
Khi việc chuyển dịch này được hoàn thành thì cờ bit RCIF (PIR1<5>) sẽ được set, cờ
này hoạt động hay không phụ thuộc vào việc set hay xóa bit RCIE (PIE1<5>).
RCREG là thanh ghi có bộ đệm đôi, nó có khả năng nhận hai byte dữ liệu và chuyển
tới thanh ghi RCREG INFO và byte thứ 3 bắt đầu chuyển tới thanh ghi RSR. Khi rời
bit STOP của byte thứ 3 mà thanh ghi RCREG vẫn đầy thì bit báo lỗi OERR sẽ được
set và từ ở trong thanh ghi RSR sẽ bị lỗi. Bit OERR được xóa bằng phần mềm và nếu
bit này được set thì việc truyền dữ liệu từ thanh ghi RSR tới thanh ghi RCREG sẽ bị
cấm. Việc nhận bit thứ 9 cũng tương tự như việc nhận bit dữ liệu, trong khi thanh ghi
RCREG đang đọc nó sẽ nạp giá trị mới cho bit RX9D, đó là điều thiết yếu khi người
sử dụng dùng truyền thông 9 bit.
Hình 5. 21 Thanh ghi cho phép nhận trong chế độ đồng bộ chủ
80
cho phép thiết bị nhận hoặc truyền dữ liệu ở chế độ SLEEP. Chế độ phụ được hoạt
động bằng cách xóa bit CSRC (TXSTA<7>).
- Truyền dữ liệu:
Hoạt động truyền của truyền thông đồng bộ chính và truyền thông đồng bộ phụ
hoàn toàn giống nhau, chỉ khác là ở chế độ truyền của truyền thông đồng bộ phụ có
thể hoạt động ở chế độ SLEEP. Nếu hai từ được ghi tới thanh ghi và lệnh SLEEP
được tiến hành thì nó sẽ tồn tại những điểm sau:
+ Từ đầu tiên truyền đến thanh ghi TSR và nó sẽ được chuyển đi ngay.
+ Từ thứ hai được chứa trong thanh ghi TXREG.
+ Cờ bit TXIF sẽ không được set.
+ Khi từ đầu tiên được chuyển ra khỏi thanh ghi TSR thì thanh ghi TXREG se
chuyển từ thứ hai vào thanh ghi TSR và bây giờ thì cờ bit TXIF se được set.
+ Nếu bit TXIE được set thì ngắt sẽ đánh thức chip từ chế độ SLEEP và nếu
ngắt toàn phần được cho phép thì chương trình sẽ rẽ nhánh tới véc tơ ngắt
(0004h).
Các bước thiết lập chế độ truyền thông đồng bộphụ:
+ Để thiết lập chế độ truyền thông đồng bộ phụ thì ta phải set bit SYNC và bit
PSEN, xóa bit CSRC.
+ Xóa bit CREN và SREN.
+ Muốn ngắt hoạt động thì phải set bit TXIE.
+ Nếu muốn truyền thông 9 bit thì phải set bit TX9.
+ Cho phép truyền bằng việc set bit TXEN.
+ Nếu chọn truyền thông 9 bit thì bit thứ 9 cần được tải vào bit TX9D.
+ Bắt đầu truyền thông bằng việc tải dữ liệu tới thanh ghi TXREG.
+ Nếu sử dụng các ngắt thì phải chắc chắn rằng bit GIE (INTCON<7>)và bit
PEIE (INTCON<6>) đã được set.
Hình 5. 23 Thanh ghi cho phép truyền trong chế độ đồng bộ phụ
- Nhận dữ liệu:
Hoạt động nhận của truyền thông đồng bộ chính và truyền thông đồng bộ phụ
hoàn toàn giống nhau, chỉ khác là ở chế độ nhận của truyền thông đồng bộ phụ có thể
hoạt động ở chế độ SLEEP. Bit SREN không được sử dụng ở chế độ này.
Nếu việc nhận dữ liệu được hoạt động bằng việc set bit CREN trước khi lệnh
SLEEP được thực hiện, khi đó một từ có thể được nhận trong khi sleep. Khi việc nhận
81
dữ liệu được hoàn thành thì thanh ghi RSR sẽ chuyển dữ liệu tới thanh ghi RCREG và
nếu bit RCIE được set thì ngắt có thể được gọi từ lệnh SLEEP.
Hình 5. 24 Thanh ghi cho phép nhận trong chế độ đồng bộ phụ
5.3.3.3 Chuẩn giao tiếp nối tiếp hai dây (I2C Mode)
Ngày nay trong các hệ thống điện tử hiện đại, rất nhiều IC hay các thiết bị ngoại
vi cần giao tiếp với các IC hay thiết bị khác. Với mục tiêu đạt được hiệu quả tốt nhất
cho phần cứng với mạch điện đơn giản, Philips đã phát triển một chuẩn giao tiếp nối
tiếp hai dây được gọi là I2C. I2C là chữ viết tắt của cum từ Inter Intergrated Circuit –
Bus giao tiếp giữa các IC với nhau.
I2C mặc dù được phát triển bởi Philips nhưng nó đã được rất nhiều nhà sản xuất
IC trên thế giới sử dụng. I2C trở thành một chuẩn công nghiệp cho các giao tiếp điều
khiển, có thể kể ra đây một số vài tên tuổi ngoài Philips như: Texas Intrument (TI),
Maxim-Dallas, Analog Device, National Semiconductor... Bus I2C được sử dụng làm
bus giao tiếp ngoại vi cho rất nhiều loại IC khác nhau như các loại vi điều khiển 8051,
AVR, PIC, ARM, chíp nhớ như RAM tĩnh (Static RAM), EPPROM, bộ chuyển đổi
tương tự/số (ADC) hay bộ chuyển đổi số/tương tự (DAC), IC điều khiển LCD, LED...
82
a. Đặc điểm giao tiếp I2C
Một giao tiếp I2C gồm có 2 dây: Serial Data (SDA) và Serial Clock (SCL). SDA
là đường truyền dữ liệu hai hướng, còn SCL là đường truyền xung đồng hồ chỉ theo
một hướng. Như hình vẽ trên, khi một thiết bị ngoại vi kết nối vào bus I2C thì chân
SDA được nối vào dây SDA và chân SCL được nối vào dây SCL của bus.
83
Dựa vào hình trên chúng ta có thể thấy, xung đồng hồ chỉ có một hướng duy nhất
từ chủ tới tớ, còn dữ liệu có thể đi theo hai hướng: từ chủ tới tớ hay ngược lại.
Về dữ liệu truyền trên bus I2C, một bus I2C chuẩn truyền 8 bit dữ liệu có hướng
trên đường truyền với tốc độ 100Kbits/s – chế độ chuẩn (standard mode), tốc độ
truyền có thể lên tới 400Kbits/s – chế độ nhanh (fast mode) và cao nhất 3.4Mbits/s –
chế độ cao tốc (high-speed mode).
Một bus I2C có thể hoạt động ở nhiều chế độ khác nhau:
- Một chủ - một tớ (one Master – one Slave).
- Một chủ - nhiều tớ (one Master – multi Slave).
- Nhiều chủ - nhiều tớ (multi Master – multi Slave).
Và dù ở chế độ nào, một giao tiếp I2C đều dựa theo quan hệ chủ/tớ. Ví dụ một
thiết bị M muốn gởi dữ liệu tới thiết bị S, quá trình thực hiện như sau:
- Thiết bị M (chủ) xác định đúng địa chỉ của thiết bị S (tớ), song song với việc
xác định địa chỉ, thiết bị M sẽ quyết định việc đọc hay ghi vào thiết bị S.
- Thiết bị M gửi dữ liệu tới thiết bị S.
- Thiết bị M kết thúc quá trình truyền dữ liệu.
Khi thiết bị M muốn nhận dữ liệu từ S, quá trình diễn ra như trên chỉ khác M sẽ
nhận dữ liệu từ S. Trong giao tiếp này M là chủ còn S vẫn là tớ.
b. Điều kiện START và STOP
Điều kiện START và STOP là hai điều kiện bắt buộc phải có khi một thiết bị chủ
muốn thiết lập giao tiếp với một thiết bị nào đó trong mạng I2C. START là điều kiện
khởi đầu, báo hiệu bắt đầu của giao tiếp, còn STOP là điều kiện kết thúc, báo hiệu kết
thúc của giao tiếp. Hình sau sẽ mô tả điều kiện START và STOP.
84
Cả hai điều kiện START và STOP đều được tạo ra bởi thiết bị chủ. Sau điều kiện
START thì bus I2C được coi là đang trong trạng thái làm việc (busy). Bus I2C sẽ rỗi,
sẵn sàng cho một giao tiếp mới sau điều kiện STOP từ thiết bị chủ.
Sau một điều kiện START, trong quá trình giao tiếp, khi có một tín hiệu START
được lặp lại thay vì một tín hiệu STOP thì bus I2C vẫn trong trạng thái bận. Tín hiệu
START và tín hiệu lặp lại đếu có một chức năng là khởi tạo một giao tiếp I2C.
c. Định dạng dữ liệu truyền
Dữ liệu được truyền trên bus I2C theo từng bit, bit dữ liệu được truyền đi trên
mỗi sườn dương của xung clock trên dây SCL. Quá trình thay đổi bit dữ liệu khi xung
SCL đang ở mức thấp.
85
Hình 5. 31 Bit ACK trên bus I2C
d. Định dạng địa chỉ thiết bị
Mỗi thiết bị ngoại vi tham gia vào bus I2C đều có một địa chỉ duy nhất nhằm
phân biệt giữâ các thiết bị với nhau. Độ dài địa chỉ là 7bits, điều đó có nghĩa là trên
một bus I2C chúng ta có thể nối được 128 thiết bị. Khi thiết bị chủ muốn giao tiếp
với thiết bị ngoại vi nào trên bus I2C thì nó sẽ gửi 7 bits địa chỉ của thiết bị đó ra bus
ngay sau xung START. Byte đầu tiên được gửi sẽ bao gồm 7bits địa chỉ và một bit thứ
8 điều khiển hướng truyền.
86
Hình 5. 33 Quá trình truyền dữ liệu
Việc truyền dữ liệu giữa con chủ và con tớ có thể theo hai hướng, từ chủ đến tớ
hay ngược lại và hướng truyền được quy định trong bit thứ 8 (R/ ) trong byte được
truyền đi đầu tiên.
- Truyền dữ liệu từ chủ đến tớ - ghi dữ liệu: Thiết bị chủ khi muốn ghi dữ liệu
lên con tớ , quá trình được thực hiện như sau:
+ Thiết bị chủ tạo xung START báo hiệu quá trình giao tiếp bắt đầu.
+ Thiết bị chủ gửi địa chỉ của thiết bị tớ cần giao tiếp cùng với bit R/ = 0 ra
bus và đợi xung ACK từ thiết bị tớ.
+ Khi nhận được xung ACK báo đã nhận diện đúng thiết bị tớ, con chủ bắt đầu
gửi dữ liệu đến con tớ theo từng byte một và theo sau mỗi byte này là một
xung ACK. Số lượng byte truyền là không hạn chế.
+ Sau khi truyền byte cuối cùng, con chủ tạo xung STOP báo hiệu quá trình
truyền kết thúc.
87
+ Sau xung ACK đầu tiên, thiết bị tớ sẽ gửi từng byte dữ liệu ra bus, thiết bị
chủ sẽ nhận dữ liệu và trả về xung ACK. Số lượng byte truyền không hạn
chế.
+ Khi muốn kết thúc quá trình giao tiếp, thiết bị chủ sẽ gửi xung Not-ACK và
tạo xung STOP để kết thúc.
88
định rõ đường I2C có rỗi hay không (chế độ Multi Master). Chế độ địa chỉ có thể là
7bits hay 10bits.
Khối I2C có 6 thanh ghi điều khiển hoạt động, đó la:
- SSPCON: Thanh ghi điều khiển.
- SSPCON2: Thanh ghi điều khiển thứ hai.
- SSPSTAT: Thanh ghi rạng thái.
- SSPBUF: Thanh ghi bộ đệm truyền nhận.
- SSPSR: Thanh ghi dịch.
- SSPADD: Thanh ghi địa chỉ.
Các thanh ghi SSPCON, SSPCON2, SSPBUF, SSPADD có thể truy cập đọc/ghi
được. Thanh ghi SSPRS không thể truy cập trực tiếp được, là thanh ghi dịch dữ liệu ra
hay vào. Các thanh ghi SSPCON, SSPCON2, SSPSTAT được địa chỉ bit, mỗi bít có
chức năng riêng.
89
+ chế_độ: Master hay Slave.
+ tốc_độ: Slow(100khez), fast(400khez).
+ sda và scl là các chân i2c tương ứng của PIC.
Sau khi khai báo như trên ta có thể sử dụng các hàm sau để thực hiện, xử lý giao
tiếp i2c với các thiết bị ngoại vi:
- i2c_isr_state();//thông báo trạng thái giao tiếp i2c
- i2c_start();//tạo điều kiện START
- i2c_stop();//tạo điều kiện STOP
- i2c_read();//đọc giá thị từ thiết bị i2c và trả về giá trị 8bits
- i2c_write()//ghi giá trị 8bits đến thiết bị i2c
Ví dụ sau là hàm ghi một giá trị 8bits value lên một thiết bị ngoại vi có địa chỉ ở
slave_addr:
void Write_I2C(int8 value,int8 slave_addr)
{
i2c_start();
i2c_write(slave_addr);
i2c_write(value);
i2c_stop();
}
90
Hình 5. 38 Sơ đồ khối được đơn giản hóa của module CCP trong chế độ PWM
Dưới đây là hình miêu tả đầu ra một xung đáp ứng điện áp của PWM với chu kỳ
là Period và thời gian tích cực của nó là Duty Cycle , và tần số của PWM là 1/Period.
Tần số PWM được tính bằng cách lấy nghịch đảo của PWM Period.
Khi TMR2 = PR2, ba sự kiện xảy ra trên chu kỳ tăng tiếp theo như dưới đây:
- TMR2 được xóa.
- Chân CCP1 được set (trừ phi nếu thời gian tích cực của PWM = 0%, chân
CCP1 sẽ không được set).
- Thời gian tích cực của PWM được chốt từ CCPR1L đến CCPR1H.
b. Thời gian làm việc của PWM (PWM duty cycle)
Chu kỳ làm việc của PWM (PWM duty cycle) được chỉ rõ bằng việc ghi lên
thanh ghi CCPR1L và tới bit CCP1CON<5:4> và nó có thể lên đến 10 bit. Thanh ghi
91
CCPR1L chứa 8 bit có trọng số cao MSB và CCP1CON<5:4> chứa 2 bit có trọng số
thấp LSB. Giá trị 10 bit này được miêu tả bởi CCPR1L:CCP1CON<5:4>. Phương
trình sau có thể dung để tính toán thời gian duty cycle của PWM:
Thanh ghi CCP1L và CCP1CON<5:4> có thể được ghi vào bất kỳ thời gian nào,
nhưng giá trị duty cycle không được chốt lên CCP1H cho đến sau khi một sự kết hợp
giữa PR2 và TMR2 xuất hiện (chu kỳ hoàn thành). Trong chế độ PWM thì thanh ghi
CCP1H là thanh ghi chỉ đọc.
Thanh ghi CCPR1H và 2 bit chốt trong được sử dụng làm bộ đệm đôi cho chu kỳ
làm việc của PWM. Bộ đệm đôi này là cần thiết cho thuật toán PWM với sự tăng vọt
tự do.
Khi CCPR1H và 2 bit chốt phối hợp TMR2, được liên kết với 2 bit xung đồng hồ
nội Q hoặc 2 bit của bộ đếm gộp trước TMR2, chân CCP1 được xóa.
Độ phân giải cực đại của PWM (tính bằng bit) đối với tần số PWM cho trước
được tính theo công thức sau:
(6.3)
92
dưới của mỗi mạch cầu được nối với nhau và nối ra chân ngoài để nối với điện trở
cảm ứng dòng khi cần.
93
Hình 5. 42 Sơ chân của L298
Các giá trị chịu đượng tối đa
Thông số về nhiệt độ
94
5.4.2 Ứng dụng IC L298 vào dự án
Mỗi IC L298 được tích hợp hai mạch cầu H có thể chịu đượng tối đa điện áp
40V và dòng 2A. Khi chỉ dung một mạch cầu H để điều khiển cho một động co
thì cần chú ý là dòng khi động cơ quá tải không được vượt quá giới hạn cho phép.
Tuy nhiên có rất nhiều trường hợp có thể làm cho dòng chạy qua động cơ
vượt quá giới hạn 2A đó là: ngắn mạch do động cơ bị ngẹt do vướng phải chưởng
ngại vật, chập dây…. Lúc đó dòng có thể rất lớn và vượt xa dòng giới hạn 2A, vì
vậy ta phải có phương án làm tăng dòng chịu đựng của IC L298. Và một cách
truyền thống đó là dung hai cầu H trong một IC L298 để điều khiển một động cơ
và khi đó dòng chịu đựng có thể lên tới 4A.
Mặc dù dòng chịu đựng có thể lên tới 4A nhưng trong những trường hợp
không may xảy ra thì dòng chạy qua động cơ vẫn vượt quá 4A, do đó việc sử
dụng tính năng tắt nhanh của IC là rất cần thiết.
Sau đây là hai sơ đồ nối dây để điều khiên động cơ công suất bé và động cơ
công suất lớn:
95
Hình 5. 43 Dùng một cầu H để điều khiển một động cơ
96
Hình 5. 45 Sơ đồ khối của hệ thống điều khiển robot
97
Hình 5. 47 Bộ thu RADIO AV RECEIVER và USB EasyCAP
98
thông tin. Thành phần phát có nhiệm vụ phát đi từng bit một, khi đầu vào có mức
logic 1 mạch phát sẽ bức xạ sóng điện từ ra không gian, còn khi đầu vào có mức
logic 0 thì mạch phát sẽ không bức xạ sóng điện từ. Nguồn cung cấp cho mạch
họat động trong khoảng 9v÷12v.
99
Hình 5. 50 Module thu RF_RS232
100
Hình 5. 52 Mạch cung cấp nguồn 5v cho Chip và IC
b. Khối Master
Khối Master có nhiệm vụ nhận tín hiệu từ module thu của bộ RF_RS232 để
xử lý và truyền đến hai khối Slave qua chuẩn I2C. Ngoài ra khối này còn có thể
giao tiếp với khối Max232 để nhận tín hiệu từ máy tính thông qua một đường
truyền có dây để thuận lợi cho việc test mạch.
Ngoài mạch cơ bản để chip có thể hoạt động được (chân nguồn, các chân
nối vào bộ dao động …) thì khối Master còn dùng thêm các chân khác để thực
hiện các chức năng như: thể hiện (RB4÷RB7), giao tiếp I2C (RC3÷RC4), truyền
nhận đồng bộ/không đồng bộ - USART (RC6÷RC7), hai cổng mở rộng
(RA0÷RA5 và RC0÷RC2_RB0÷RB3).
Cụ thể là:
- RB4÷RB7: làm nhiệm vụ điều khiển các led.
- RC3_RC4 tương ứng là SCL_SDA: là hai chân thực hiện giao tiếp I2C đó
là truyền tín hiệu đến các chip Slave.
- RC6_RC7 tương ứng là TX_RX: thực hiện giao tiếp USART đó là nhận
tín hiệu từ module thu RF_RS232 để xử lý.
101
Hình 5. 53 Khối Master
c. Khối Slave
Khối Slave có nhiệm vụ nhận tín hiệu từ khối Master qua chuẩn giao tiếp
I2C để xử lý và truyền tín hiệu điều khiển đến các chân của IC điều khiển động
cơ L298.
Ngoài mạch cơ bản để chip có thể hoạt động được (chân nguồn, các chân
nối vào bộ dao động …) thì khối Slave còn dùng thêm các chân khác để thực hiện
các chức năng thể hiện (RB4÷RB7), giao tiếp I2C (RC3÷RC4) và điều khiển
(RA0_RA1_RA3_RC0÷RC2_RB0÷RB2).
Cụ thể, đối với chip Slave I:
- RB4÷RB7: làm nhiệm vụ điều khiển các led.
- RC3_RC4 tương ứng là SCL_SDA: là hai chân thực hiện giao tiếp I2C đó
là nhận tín hiệu từ chip Master để xử lý và điều khiển các chân
RB4÷RB7_RC0÷RC2_RB0÷RB2.
- RA0_RA1_RA3 tương ứng là SEN1_SEN2_VRFF1: thực hiện nhiệm vụ
nhận tín hiệu so sánh Analog phản hồi về từ IC L298 để chống sự cố do ngắn
mạch động cơ gây ra hiện tượng tăng dòng đột ngột.
- RC0÷RC2_RB0÷RB2 tương ứng là EN1÷IND12_EN2÷IND22 thực hiện
nhiệm vụ đóng ngắt và đảo chiều động cơ thứ nhất và thứ hai.
102
Đối với chip Slave II thì được thiết kế tương tự để điều khiển cho hai động
cơ thứ ba và thứ tư.
103
Khối công suất gồm có 4 module nhỏ, môi module dùng để điều khiển một
động cơ DC.
104
Hình 5. 58 Mạch công suất cho động cơ thứ ba
105
Hình 5. 60 Mạch hoàn chỉnh
106
Hình 5. 61 Hộp thoại điều khiển
Connect
Tiến
Disconnect
Dưng Hạ Phanh
107
Hình 5. 63 Hộp thoại thể hiện hình ảnh thu được từ Camera
CHƯƠNG VI
KẾT LUẬN
Kết quả sau quá trình nghiên cứu thiết kế chế tạo tracked mobile robot:
Về mặt lí thuyết:
108
Phân tích và lựa chọn được kết cấu hợp lý để thiết kế.
Xây dựng mô hình động học, động lực học đơn giản.
Xây dựng phần mềm điều khiển robot từ xa bằng máy tính.
Về mặt thực nghiệm:
Chế tạo thành công mô hình mobile robot dùng xích.
Chế tạo thành công hệ thống điều khiển từ xa cho robot.
Điều khiển robot đi thành công trên những địa hình đã đề ra.
Robot có khả năng truyền hình ảnh về máy tính để thuận lợi cho việc
điều khiển.
Vấn đề còn tồn tại:
Kết cấu robot đưa ra vẫn chưa được kiểm nhiệm về tính cứng vững,
khả năng cần bằng và ổn định trọng tâm, kiểm tra sai số điều khiển.
Chưa xây dựng được thực nghiệm kiểm chứng lí thuyết mô hình động
học và động lực học cho robot.
Hướng phát triển cho tương lai:
Để tài có tính mở, còn rất nhiều vấn đề cần tiếp tục được triển khai
nghiên cứu.
Hoàn thiện phần điều khiển. mạch điều khiển để robot hoạt động thực
sự có hiệu quả và có tính ứng dụng cao.
Trang bị cho robot các sensor đo nhiệt độ, độ ẩm… để gửi tín hiệu về
máy tính điều khiển phục vụ cho việc vẽ bản đồ.
Trang bị thêm tay máy gắn trên robot thực hiện thao tác mong muốn.
Xây dựng, hoàn thiện khả năng làm việc theo nhóm của robot, tạo ra
thế mạnh nổi bật so với các loại robot khác.
Vấn đề tồn tại là khá nhiều, tuy nhiên trong giới hạn phạm vi đồ án, khả năng trình
độ và thời gian có hạn nên chúng em chưa thể hoàn thiện những vấn đề trên. Đây là
một đề tài mới mẻ và có rất nhiều hướng phát triển, và có tính thực tế cao, nếu có điều
kiện chúng em rất mong được tiếp tục nghiên cứu và phát triển nó. Rất mong sẽ nhận
được sự giúp đỡ chỉ bảo của các thầy để hoàn thành để tài một cách có chất lượng.
109
[5] GS-TSKH.Nguyễn Văn Khang -Cơ sở cơ học kĩ thuật tập I, II – NXB ĐH Quốc
Gia Hà Nội, 2003
[6] Tài liệu “Động học mobile robot di chuyển trên mặt phẳng”.
[7] Microchip Technology Inc, PIC16F87XA DataSheet, 2003.
[8] Custom Computer Services Inc, CCS C Compiler Help, 2007.
[9] Phạm Công Ngô – Phạm Ngọc Nam – Phạm Tuấn Lương, Tự học lập trình
VISUALC++6.0 từ cơ bản đến nâng cao, NXB Thống kê, 2002.
[10] Các diễn đàn trên mạng: PIC Việt nam ( http://picvietnam.com/forum/ ), Điện
tử Việt nam ( http://dientuvietnam.net/forums/ )…
[11]Nguyễn Hữu Cẩn, Dư Quốc Thịnh, phạm Minh Thái, nguyễn Văn Tài,
Lê Thị Vàng – Lý thuyết ô tô, máy kéo, NXBKHKTHN, 2005
110
PHỤ LỤC BẢN VẼ CÁC CHI TIẾT
111