Mục tiêu nghiên cứu của đề tài Xây dựng mô hình cánh tay robot điều khiển bằng smartphone, mà cụ thể ở đây là điều khiển cánh tay robot dựa trên ứng dụng được cài đặt trên các Smartphon
Trang 1LỜI CẢM ƠN
Đầu tiên em xin chân thành gửi lời cảm ơn tới nhà trường, các cô giáo, thầy giáo khoa công nghệ tự động hóa trường Đại học Công nghệ Thông tin và Truyền thông Thái nguyên đã tạo điều kiện và giúp đỡ em trong suốt khóa học và hoàn thành
đồ án tốt nghiệp
Để thực hoàn thành đồ án tốt nghiệp là sự hướng dẫn chỉ bảo của cô Hoàng Thị Hải Yến, người đã giúp đỡ, góp ý, cung cấp ý tưởng cũng như chỉ dẫn tài liệu trong quá trình làm đồ án Em xin giửi lời cảm ơn chân thành tới thầy cô
Tuy nhiên do kiến thức và kinh nghiệm có hạn nên đồ án sẽ không tránh khỏi những thiếu sót Em rất mong nhận được sự chỉ bảo của các thầy giáo, cô giáo, các bạn
để em hoàn thiện hơn bản đồ án của mình
Trang 2
LỜI CAM ĐOAN
Tên em là: Hoàng Đức Giang
Sinh viên lớp K11 nghành Công nghệ kĩ thuật điện, điện tử trường Đại học Công nghệ thông tin và Truyền thông Thái nguyên – Đại học Thái nguyên
Em xin cam đoan toàn bộ nội dung trong đồ án là do em làm theo định hướng của giáo viên hướng dẫn, không sao chép của người khác
Các phần trích, các tài liệu tham khảo đã được chỉ rõ trong đồ án
Nếu có gì sai sót em hoàn toàn chịu trách nhiệm
Sinh viên
Hoàng Đức Giang
Trang 3MỤC LỤC
LỜI CẢM ƠN 1
LỜI CAM ĐOAN 2
MỤC LỤC 3
DANH MỤC HÌNH ẢNH 5
TỔNG QUAN VỀ ĐỀ TÀI 7
CHƯƠNG I CƠ SỞ LÝ THUYẾT 9
1.1 Tổng quan về robot 9
1.1.1 Lịch sử phát triển Robot 9
1.1.2 Các ứng dụng của robot 11
1.1.3 Các khái niệm Robot – Robot công nghiệp 14
1.1.4 Phân loại robot 19
1.2 Tổng quan về ngôn ngữ lập trình Arduino 25
1.2.1 Tổng quan về Arduino 25
1.2.2 Các ứng dụng của Arduino 26
1.2.3 Tìm hiểu Aruino Uno 28
1.3 Tìm hiểu phần mềm App Inventor 2 30
1.3.1 Lịch sử hình thành và phát triển 30
1.3.2 Đặc điểm và tính năng của App Inventor 30
1.4 Tổng quan Module Bluetooth HC – 06 SLAVE 32
1.4.1 Giới thiệu về Module Bluetooth HC – 06 32
1.4.2 Thông số kĩ thuật 32
1.4 Tổng quan về động cơ Servo 33
1.4.1 Giới thiệu về động cơ Servo 33
1.4.2 Hoạt động của động cơ Servo R/C 34
1.4.3 Động cơ Servo và điều biến độ rộng xung 35
1.4.4 Các giới hạn quay của động cơ Servo 36
1.4.5 Hệ thống truyền động bánh răng và truyền động công suất 37
1.4.6 Động cơ Servo SG90 37
CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ 40
Trang 42.1 Mô tả hệ thống 40
2.2 Thiết kế phần cứng 40
2.2.1 Sơ đồ khối hệ thống 40
2.2.2 Sơ đồ nguyên lý 41
2.2.3 Lưu đồ thuật toán hệ thống 42
2.3 Tính toán và thiết kế cánh tay robot 43
2.3.1 Phân tích và lựa chọn cấu trúc cánh tay robot 43
2.3.2 Các phương án thiết kế 44
2.3.3 Lựa chọn phương án thiết kế 45
2.3.4.Thiết lập bảng D-H và giải bài toán động học thuận cho robot 46
2.4 Thiết kế ứng dụng điều khiển cánh tay robot trên smartphone 48
2.4.1 Thiết kế giao diện cho ứng dụng trên MIT App Inventor 2 48
2.4.2 Ứng dụng hoàn thiện được cái đặt trên Smartphone 50
CHƯƠNG 3 KẾT QUẢ THỰC HIỆN 54
3.1 Hình ảnh kết quả sau khi hoàn thành 54
3.2 Nhận xét 54
KẾT LUẬN 55
HƯỚNG PHÁT TRIỂN 56
TÀI LIỆU THAM KHẢO 57
PHỤ LỤC 58
Trang 5DANH MỤC HÌNH ẢNH
Hình 1.1 Robot Shakey 9
Hình 1.2 Mobile Robot và ứng dụng công nghệ xử lý ảnh (Nguồn SRI, Stanford, CA) 10
Hình 1.3 Robot 6 bậc tự do 11
Hình 1.4 Robot hàn trong công nghệ sản xuất cơ khí 12
Hình 1.5 Ứng dụng robot trong sản xuất linh hoạt 13
Hình 1.6 Robot sử dụng trong công đoạn cấp liệu và lắp ráp 13
Hình 1.7 Các ứng dụng trong lĩnh vực thám hiểm, quân sự 14
Hình 1.8 Biểu diễn không gian của tay máy 15
Hình 1.9 Cánh tay robot 15
Hình 1.10 Cấu tạo động cơ servo 16
Hình 1.11 Robot PUMA 6 bậc tự do 18
Hình 1.12 Hệ trục tọa độ theo bàn tay phải 18
Hình 1.13 Hệ tọa độ của robot có n khâu 19
Hình 1.14 Xác định tọa độ cho các khâu của robot scara 19
Hình 1.15 Robot kiểu tọa độ đề các 20
Hình 1.16 Robot kiểu tọa độ trụ 20
Hình 1.17 Robot kiểu tọa độ cầu 21
Hình 1.18 Robot kiểu scara 21
Hình 1.19 Robot kiểu tọa độ góc 22
Hình 1.20 Robot song song 23
Hình 1.21 Mobile robot ứng dụng trong các lĩnh vực khác nhau 24
Hình 1.22 Hình ảnh Arduino Uno 26
Hình 1.23 Máy in 3D 26
Hình 1.24 Robot 27
Hình 1.25 Máy bay không người lái 27
Hình 1.26 Lập tình game tương tác 28
Hình 1.27 Điều khiển hiệu ứng ánh sáng 28
Hình 1.28 Cấu trúc phần cứng Aruino Uno 29
Hình 1.29 Cấu trúc phần mềm App Inventor 30
Hình 1.30 Giao diện phần mềm MIT App Inventor 2 31
Trang 6Hình 1.31 Giao diện của App Inventor 2 31
Hình 1.32 Module HC – 06 SLAVE 32
Hình 1.33 Động cơ Servo SG90 34
Hình 1.34 Cấu tạo động cơ Servo R/C 34
Hình 1.35 Điều khiển vị trí của trục ra bằng cách điều chế độ rộng xung 35
Hình 1.36 Vôn kế được dùng như một cầu chia áp 36
Hình 1.37 Động cơ Servo SG90 37
Hình 1.38 Sơ đồ chân động cơ Servo SG90 38
Hình 2.1 Sơ đồ khối hệ thống 40
Hình 2.2 Sơ đồ nguyên lý hệ thống 41
Hình 2.3 Lưu đồ thuật toán chính của hệ thống 42
Hình 2.4 Cơ cấu tọa độ decac 43
Hình 2.5 Cơ cấu tọa độ trụ 43
Hình 2.6 Cơ cấu tọa độ cầu 44
Hình 2.7 Hình vẽ mô phỏng cánh tay robot 3 bậc tự do RRR có gắn trục tọa độ 46
Hình 2.8 Mô hình cánh tay robot 48
Hình 2.9 Màn hình ứng dụng trong quá trình thiết kế 49
Hình 2.10 Màn hình điều khiển ứng dụng 49
Hình 2.11 Màn hình lập trình cho ứng dụng 50
Hình 2.12 Một số câu lệnh điều khiển trong màn hình lập trình 50
Hình 3.1 Mô hình cánh tay robot sau khi hoàn thành 54
Hình 3.2 Ứng dụng điền khiển cánh tay robot trên Smartphone 54
Trang 7TỔNG QUAN VỀ ĐỀ TÀI
1 Tính cấp thiết
Ngành công nghiệp robot trên thế giới đã đưa được sản phẩm là robot công nghiệp để phục vụ sản xuất, thậm chí phục vụ nhu cầu giải trí cũng như chăm sóc con người Với ngành công nghiệp của Việt Nam thì robot chưa được xuất hiện nhiều trong các dây truyền sản xuất Vì sản phẩm này còn quá đắt đối với thị trường Việt Nam Nhằm nội địa hóa sản phẩm, cũng như nghiên cứu chuyên sâu về robot, tôi chọn
đề tài “Xây dựng mô hình cánh tay robot điều khiển bằng smartphone” Đề tài này hướng tới có thể thay thế các bộ điều khiển của các công ty nước ngoài và xây dựng thuật điều khiển tối ưu cho các đối tượng sản xuất, mà các đối tượng này thích hợp với điều kiện sản xuất ở nước ta Với các phòng thí nghiệm, đây là một mô hình để sinh viên thực nghiệm và nghiên cứu, để hướng tới cho các bạn sinh viên một cái nhìn cụ thể, thực tiễn hơn về robot
2 Mục tiêu nghiên cứu của đề tài
Xây dựng mô hình cánh tay robot điều khiển bằng smartphone, mà cụ thể ở đây
là điều khiển cánh tay robot dựa trên ứng dụng được cài đặt trên các Smartphone sử
dụng hệ điều hành Android kết hợp với nền tảng là ngôn ngữ lập trình Arduino
3 Phương pháp nghiên cứu
Nghiên cứu lý luận: Tổng hợp các tài liệu kỹ thuật, công nghệ, phân tích và đánh giá nội dung liên quan đến đề tài
Phương pháp thực nghiệm: Khảo sát, phân tích, thiết kế và đánh giá nội dung nghiên cứu trong quá trình xây dựng mô hình cánh tay robot điều khiển bằng smartphone Đề xuất phương án xây dựng, chế tạo hệ thống cho phù hợp
4 Phạm vi nghiên cứu:
Mô hình cánh tay robot thiết kế ra với phạm vi trong nhà trường, ứng dụng trong giảng dạy để giúp các bạn sinh viên hiểu biết rõ hơn về robot cũng như biết áp dụng các kiến thức đã học vào thực tế
5 Bố cục đề tài
Đề tài gồm có 3 chương:
Trang 8CHƯƠNG I: “CƠ SỞ LÝ THUYẾT”: Trong chương này em trình bày tổng quan về Arduino, tìm hiểu về robot công nghiệp, giới thiệu phần mềm App Inventor 2…
CHƯƠNG II “PHÂN TÍCH VÀ THIẾT KẾ”: Nội dung chủ yếu của chương này là mô tả yêu cầu bài toán, đưa ra lưu đồ thuật toán và thiết kế phần cứng
CHƯƠNG III “KẾT QUẢ ĐẠT ĐƯỢC”: Ở chương này sẽ trình bày hình ảnh sản phẩm sau khi hoàn thành, giao diện ứng dụng điều khiển cánh tay robot bằng Smartphone
Trang 9CHƯƠNG I CƠ SỞ LÝ THUYẾT 1.1 Tổng quan về robot
1.1.1 Lịch sử phát triển Robot
Khái niệm Robot ra đời đầu tiên vào ngày 09/10/1922 tại NewYork, khi nhà soạn kịch người Tiệp Khắc Karen Kapek đã tưởng tượng ra một cổ máy hoạt động một cách tự động, nó là niềm mơ ước của con người lúc đó
Từ đó ý tưởng thiết kế, chế tạo Robot đã luôn thôi thúc con người Đến năm
1948, tại phòng thí nghiệm quốc gia Argonne, Goertz đã chế tạo thành công tay máy đôi (master-slave manipulator) Đến năm 1954, Goertz đã chế tạo tay máy đôi sử dụng động cơ servo và có thể nhận biết được lực tác động lên khâu cuối
Năm 1956 hãng Generall Mills đã chế tạo tay máy hoạt động trong việc thám hiểm dại dương Năm 1968 R.S Mosher, của General Electric đã chế tạo một cỗ máy biết đi bằng 4 chân Hệ thống vận hành bởi động cơ đốt trong và mỗi chân vận hành bởi một hệ thống servo thủy lực Năm 1969, đại học Stanford đã thiết kế được Robot
tự hành nhờ nhận dạng hình ảnh
Hình 1.1 Robot Shakey
Năm 1970 con người đã chế tạo được Robot tự hành Lunokohod, thám hiểm bề mặt của mặt trăng Trong giai đoạn này, ở nhiều nước khác cũng tiến hành công tác nghiên cứu tương tự, tạo ra các Robot điều khiển bằng máy tính có lắp đặt các loại cảm biến và thiết bị giao tiếp người và máy
Trang 10Theo sự tiến bộ của khoa học kỹ thuật, các Robot ngày càng được chế tạo nhỏ gọn hơn, thực được nhiều chức năng hơn, thông minh hơn
Một lĩnh vực được nhiều nước quan tâm là các Robot tự hành, các chuyển động của chúng ngày càng đa dạng, bắt chước các chuyển động của chân người hay các loài động vật như : bò sát, động vật 4 chân, … Và các loại xe Robot(robocar) nhanh chóng được ứng dụng rộng rãi trong các hệ thống sản xuất tự động linh hoạt (FMS)
Hình 1.2 Mobile Robot và ứng dụng công nghệ xử lý ảnh (Nguồn SRI,
Stanford, CA)
Từ đó trở đi con người liên tục nghiên cứu phát triển Robot để ứng dụng trong quát trình tự động hoá sản xuất để tăng hiệu quả kinh doanh Ngoài ra Robot còn được sử dụng thay cho con người trong các công việc ở môi trường độc hại, khắc nghiệt, …
Chuyên ngành khoa học về robot “robotics” đã trở thành một lĩnh vực rộng trong khoa học, bao gồm các vấn đề cấu trúc cơ cấu động học, động lực học, quĩ đạo chuyển động, chất lượng điều khiển… Tuỳ thuộc vào mục đích và phương thức tiếp cận, chúng ta có thể tìm hiểu lĩnh vực này ở nhiều khía cạnh khác nhau
Hiện nay, có thể phân biệt các loại Robot ở hai mảng chính : Các loại robot công nghiệp (cánh tay máy) và các loại robot di động (mobile robot) Mỗi loại có các ứng dụng cũng như đặc tính khác nhau Ngoài ra, trong các loại robot công nghiệp còn
Trang 11được phân chia dựa vào cấu tạo động học của nó : Robot nối tiếp (series robot) và robot song song (parallel robot)
Hình 1.3 Robot 6 bậc tự do
Chính công nghệ tiên tiến ở tất cả các lĩnh vực : cơ khí, vi mạch, điều khiển, công nghệ thông tin … đã tạo ra nền tảng cũng như những thách thức lớn đối với khoa học nghiên cứu robot Chính vì vậy, con người đã và đang tiếp tục phát triển và nâng cao mức độ hoàn thiện trong lĩnh vực đầy hấp dẫn này
1.1.2 Các ứng dụng của robot
1.1.2.1 Các ưu điểm khi sử dụng robot
Các loại Robot tham gia vào qui trình sản xuất cũng như trong đời sống sinh hoạt của con người, nhằm nâng cao năng suất lao động của dây chuyền công nghệ, giảm giá thành sản phẩm, năng cao chất lượng cũng như khả năng cạnh tranh của sản phẩm tạo ra
Robot có thể thay thế con người làm việc ổn định bằng các thao tác đơn giản và hợp lý, đồng thời có khả năng thay đổi công việc để thích nghi với sự thay đổi của qui trình công nghệ
Sự thay thế hợp lý của robot còn góp phần giảm giá thành sản phẩm, tiết kiệm nhân công ở những nước mà nguồn nhân công là rất ít hoặc chi phí cao như : Nhật Bản, các nước Tây Âu, Hoa Kỳ…
Tất nhiên nguồn năng lượng từ robot là rất lớn, chính vì vậy nếu có nhu cầu tăng năng suất thì cần có sự hỗ trợ của chúng mới thay thế được sức lao
Trang 12động của con người Chúng có thể làm những công việc đơn giản nhưng dễ nhầm lẫn, nhàm chán
Robot có khả năng nghe được siêu âm, cảm nhận được từ trường Bên cạnh đó, một ưu điểm nổi bậc của robot là môi trường làm việc Chúng có thể thay con người làm việc ở những môi trường độc hại, ẩm ướt, bụi bặm hay nguy hiểm
Ở những nơi như các nhà máy hoá chất, các nhà máy phóng xạ, trong lòng đại dương, hay các hành tinh khác … thì việc ứng dụng robot để cải thiện điều kiện làm việc là rất hữu dụng
1.1.2.2 Một số lĩnh vực về ứng dụng
a Ứng dụng trong lĩnh vực sản xuất cơ khí
Trong lĩnh vực cơ khí, robot được ứng dụng khá phổ biến nhờ khả năng hoạt động chính xác và tính linh hoạt cao
Các loại robot hàn là một ứng dụng quan trọng trong các nhà máy sản xuất ôtô, sản xuất các loại vỏ bọc cơ khí…
Hình 1.4 Robot hàn trong công nghệ sản xuất cơ khí
Ngoài ra người ta còn sử dụng robot phục vụ cho các công nghệ đúc, một môi trường nóng bức, bụi bặm và các thao tác luôn đồi hỏi độ tin cậy
Đặc biệt trong các hệ thống sản xuất linh hoạt (FMS), Robot đóng vai trò rất quan trọng trong việc vân chuyển và kết nối các công đoạn sản xuất với nhau
Trang 13Hình 1.5 Ứng dụng robot trong sản xuất linh hoạt
b Ứng dụng trong lĩnh vực gia công lắp ráp
Các thao tác này thường được tự động hoá bởi các robot được gia công chính xác và mức độ tin cậy cao
Hình 1.6 Robot sử dụng trong công đoạn cấp liệu và lắp ráp
Trang 14c Ứng dụng trong các lĩnh vực y học, quân sự, khảo sát địa chất
Ngày nay, việc sử dụng các tiện ích từ Robot đến các lĩnh vực quân sự, y
tế, …rất được quan tâm Nhờ khả năng hoạt động ổn định và chính xác, Robot đặc biệt
là tay máy được dùng trong kĩ thuật dò tìm, bệ phóng, và trong các ca phẫu thuật y khoa với độ tin cậy cao
Hình 1.7 Các ứng dụng trong lĩnh vực thám hiểm, quân sự
Ngoài ra, tuỳ thuộc vào các ứng dụng cụ thể khác mà Robot được thiết kế
để phục vụ cho các mục đích khác nhau, tận dụng được các ưu điểm lớn của chúng đồng thời thể hiện khả năng công nghệ trong quá trình làm việc
1.1.3 Các khái niệm Robot – Robot công nghiệp
Lĩnh vực nghiên cứu về Robot hiện nay rất đa dạng và phong phú Trong tài liệu này, chúng tôi chỉ trình bày các kiến thức chủ yếu trên các loại Robot công nghiệp, tức các cánh tay máy Các bài toán cân bằng lực, các phương trình động học và động học là những nền tảng cơ bản để các bạn học viên có thể tiếp cận với chuyên nghành kĩ thuật Robot
1.1.3.1 Định nghĩa về robot công nghiệp (Industrial Robot)
Tuỳ thuộc mỗi quốc gia, tổ chức và mục đích sử dụng, chúng ta có nhiều định nghĩa về robot công nghiệp Vì vậy trong nhiều tài liệu khác nhau, định nghĩa về robot công nghiệp cũng khác nhau Theo từ điển Webster định nghĩa robot là máy tự động thực hiện một số chức năng của con người Theo ISO ( International Standards Organization ) thì : Robot công nghiệp là tay máy đa mục tiêu, có một số bậc tự do, dễ dàng lập trình và điều khiển trợ động, dùng
để tháo lắp phôi, dụng cụ hoặc các vật dụng khác Do chương trình thao tác có
Trang 15thể thay đổi nên thực hiện nhiều nhiệm vụ đa dạng Tuy nhiên Robot công nghiệp được định nghĩa như vậy chưa hoàn toàn thoả đáng
Theo tiêu chuẩn của Mỹ RIA ( Robot Institute of America ) định nghĩa robot là loại tay máy vạn năng có thể lặp lại các chương trình đã được thiết kế để di chuyển vật liệu, chi tiết, dụng cụ hay các thiết bị chuyên dùng, thông qua các chương trình chuyển động có thể thay đổi để hoàn thành các nhiệm vụ khác nhau
Hình 1.8 Biểu diễn không gian của tay máy 1.1.3.2 Các thành phần cơ bản của robot công nghiệp
a Cánh tay robot
Là bộ phận cơ khí gồm các khâu liên kết với nhau bởi các khớp nối, các
bộ truyền động như: Bộ truyền bánh răng, bộ truyền đai, bộ truyền trục vítbánh ví, vít me- đai ốc…
Hình 1.9 Cánh tay robot
Trang 16b Nguồn động lực
Các thiết bị tạo chuyển động cho Robot, có thể là các thiết bị khí nén, thuỷ lực, điện Đối với các chuyển động cần độ chính xác cao, yêu cầu gọn nhẹ người ta có thể dùng các loại nguồn truyền động là các motor bước, các motor servo
Hình 1.10 Cấu tạo động cơ servo
c Bộ điểu khiển
Là thành phần quan trọng quyết định khả năng hoạt động và độ chính xác của Robot Bộ phận này thông thường được tích hợp dưới dạng các board mạch điều khiển, có thể có các loại sau:
IC diều khiển trung tâm (CPU) kết hợp với các card điều khiển phân theo modul
Các thiết bị điều khiển Robot sử dụng PLC ( Programable Logic Controller )
Sử dụng các bộ điều khiển PMAC ( Programable Multi-Axies Controller )
Các bộ điều khiển thiết kế theo các dạng điều khiển hiện đại như : Bộ điều khiển mờ, bộ điều khiển theo mạng neuron…
d Cảm biến ( Sensor)
Là thiết bị chuyển các đại lượng vật lý thành các tín hiệu điện cung cấp cho hệ thống nhằm nâng cao khả năng linh hoạt và độ chính xác trong điều khiển Như vậy Robot chính là một hệ thống điều khiển kín với vòng hồi tiếp ( Feedback) được thực hiện từ tín hiêu thu về từ cảm biến Các loại cảm biến thường gặp như:
Trang 17e Các chương trình
Các chương trình luôn tương thích với các bộ điều khiển Chính vì vậy các loại ngôn ngữ để viết chương trình điều khiển cho Robot cũng kha đa dạng, có thể là ngôn ngữ viết cho vi xử lý (ngôn ngữ máy), ngôn ngữ viết cho PLC (thuộc các hãng khác nhau), hay các ngôn ngữ trên máy tính như: Pascal, C, C++, Visual Basic, Matlab…
1.1.3.3 Bậc tự do của robot công nghiệp
a Khái niệm
Bậc tự do là số khả năng chuyển động của một cơ cấu để dịch chuyển được một vật thể nào đó trong không gian Cơ cấu chấp hành của robot phải đạt được một số bậc tự do nhất định Nói chung, cơ hệ của một robot là một cơ cấu
hở ( là cơ cấu có một khâu nối giá )
Chuyển động của các khâu trong robot thường là một trong hai khâu chuyển động cơ bản là tịnh tiến hay chuyển động quay
b Xác định số bậc tự do của robot (DOF- Defree Of Freedom)
Số bậc tự do của robot được xác định:
Trang 18Hình 1.11 Robot PUMA 6 bậc tự do 1.1.3.4 Hệ tọa độ trong robot
Mỗi robot thường bao gồm nhiều khâu liên kết với nhau ( links ) thông qua các khớp ( joints ) tạo thành một xích động học xuất phát từ một khâu cơ bản đứng yên Hệ toạ độ gắn với khâu cơ bản gọi là hệ toạ độ cơ bản ( hay hệ toạ độ chuẩn )
Các hệ toạ độ trung gian khác gắn với các khâu động gọi là hệ toạ độ suy rộng
Tại từng thời điểm hoạt động các toạ độ suy rộng xác định cấu hình của robot bằng các chuyển dịch dài hoặc các chuyển dịch góc của các khớp tịnh tiến hoặc khớp quay Các toạ độ suy rộng còn lại là các biến khớp
Tất cả các hệ toạ độ dùng trong robot phải tuân theo qui tắc bàn tay phải : Dùng bàn tay phải co hai ngón út và áp út, ngón cái trỏ theo phương diện trục z, ngón trỏ theo phương diện trục x, ngón giữa hướng trục y
Hình 1.12 Hệ trục tọa độ theo bàn tay phải
Trang 19Hình 1.13 Hệ tọa độ của robot có n khâu
Các góc quay θ1, θ3, θ4, θ5 và độ dịch chuyển dài d2 là các toạ độ suy rộng ( các biến khớp )
Để khảo sát động học robot ta phải gắn trên mỗi khâu của robot một hệ toạ
độ Nguyên tắc chung để gắn hệ toạ độ sẽ được trình bày trong chương III trong khi xét đến phương trình động học của robot và bộ thông số DenavitHartenberg
Ví dụ: Xác định toạ độ cho robot SCARA (Robot có 4 bậc tự do )
Hình 1.14 Xác định tọa độ cho các khâu của robot scara
1.1.4 Phân loại robot
1.1.4.1 Robot công nghiệp
1 Robot nối tiếp (series robot)
Thực chất loại Robot này chính là các loại tay máy, các khâu và khớp nối của chúng được thiết kết liên tiếp nhau để hình thành nên các quĩ đạo chuyển động nhất định Đối với loại robot này, chúng ta có nhiều cách phân loại khác nhau :
Trang 20a Phân loại theo kết cấu
Robot kiểu tọa độ Đề các
Tay máy có 3 chuyển động tịnh tiến theo 3 phương của hệ tọa độ Đề các trong không gian
Hình 1.15 Robot kiểu tọa độ đề các
Thường ứng dụng loại robot này trong việc vận chuyển phôi liệu, lắp ráp, hàn trong mặt phẳng…
Robot kiểu tọa độ trụ
Vùng làm việc của robot này có dạng hình trụ rỗng Robot Versatran (hãng AFM, Hoa Kỳ) là một robot thuộc loại này
Hình 1.16 Robot kiểu tọa độ trụ
Trang 21 Robot kiểu tọa độ cầu
Vùng làm việc của robot có dạng hình cầu Có hai loại cấu hình chính thuộc kiểu robot này : 3 khớp quay (RRR) 2 khớp quay, 1 khớp tịnh tiến ở khâu cuối (RRT)
Hình 1.17 Robot kiểu tọa độ cầu
Robot có cấu trúc theo kiểu Scada ra đời từ năm 1979, tại trường đại học Yamanashi (Nhật Bản) Robot loại này là robot kiểu tọa độ cầu thường được ứng dụng trong các lĩnh vực lắp ráp, với cấu hình của 3 khâu đầu tiên là : RRT
Hình 1.18 Robot kiểu scara
Robot kiểu tọa độ góc
Đây là kiểu robot được dùng nhiều hơn cả, ba chuyển động đầu tiên là chuyển động quay, trục quay thứ nhất vuông góc với hai trục kia Các chuyển động định hướng khác cũng là trục quay Vùng làm việc của tay máy này cũng giống một phần
Trang 22khối cầu Tất cả các khâu đều nằm trong mặt phẳng thẳng đứng nên cách tính toán cơ bản là bài toán phẳng
Ưu điểm nổi bật của các loại robot hoạt động theo tọa độ góc là gọn nhẹ, tức là
có vùng làm việc tương đối lớn so với kích cỡ của bản thân robot, độ linh hoạt cao Robot PUMA là loại robot nổi tiếng đặc trưng cho loại robot kiểu tọa độ góc
Hình 1.19 Robot kiểu tọa độ góc
b Phân loại theo nguồn truyền động
Trang 23Bảng 1.1 Robot phân loại theo ứng dụng
2 Robot song song (Parallel Robot )
Các loại Robot thuộc nhóm này có các khâu chuyển động song song tương đối với nhau Thông thường chúng gồm 1 đế cố định và 1 đế di động
Tuỳ thuộc vào số lượng các nhánh của robot song song mà ta có thể phân loại chúng với nhau Một loại robot song song có 6 nhánh được sử dụng rất phổ biến là Hexapod
Hình 1.20 Robot song song
Trang 241.1.4.2 Robot di động (Mobile Robot)
Đây là hệ Robot có nhiều tính năng thông minh và linh hoạt trong quá trình ứng dụng nhờ khả năng di chuyển được theo lập trình
Hình 1.21 Mobile robot ứng dụng trong các lĩnh vực khác nhau
Hệ thống mobile robot là lĩnh vực thật sự hấp dẫn đối với các nhà nghiên cứu cũng như những người quan tâm, không chỉ nhờ những ưu điểm nổi bậc của nó mà còn ở tính đa dạng trong ứng dụng
Phân tích động học và động học mobile robot là những bài toán có mức độ phức tạp khác nhau, nó tuỳ thuộc vào kết cấu của robot cũng như yêu cầu về độ chính xác, tính thông minh trong xử lý tình huống…
Chúng ta xem xét một vài chuyển động mà con người mong muốn thiết kế các loại mobile robot
+ Chuyển động theo dạng trườn:
+ Chuyển động “slide” của các động vật bò sát
Trang 25+ Chuyển động chạy của động vật 4 chân
+ Chuyển động đi bộ của con người
Ngày nay con người đã hiện thực hoá được các ý tưởng này, mặc dù mức độ chính xác, độ tin cậy của mỗi loại, mỗi hãng sản xuất… là khác nhau
1.2 Tổng quan về ngôn ngữ lập trình Arduino
1.2.1 Tổng quan về Arduino
Arduino cơ bản là một nền tảng tạo mẫu mở về điện tử (open-source electronics prototyping platform).Về mặt kĩ thuật có thể coi Arduino là 1 bộ điều khiển logic có thể lập trình được Đơn giản hơn, Arduino là một thiết bị có thể tương tác với ngoại cảnh thông qua các cảm biến và hành vi được lập trình sẵn Với thiết bị này, việc lắp ráp và điều khiển các thiết bị điện tử sẽ dễ dàng hơn bao giờ hết.Một điều không hề dễ dàng cho những ai đam mê công nghệ và điều khiển học nhưng là người ngoại đạo và không có nhiều thời gian để tìm hiểu sâu hơn về về kĩ thuật lập trình và cơ điện tử
Hiện tại có rất nhiều loại vi điều khiển và đa số được lập trình bằng ngôn ngữ C/C++ hoặc Assembly nên rất khó khăn cho những người có ít kiến thức sâu về điện tử và lập trình Nó là trở ngại cho mọi người muốn tạo riêng cho mình một món đồ mang tính công nghệ Do vậy đó là lí do Arduino được phát triển nhằm đơn giản hóa việc thiết kế, lắp ráp linh kiện điện tử cũng như lập trình trên vi xử lí và mọi người có thể tiếp cận dễ dàng hơn với thiết bị điện tử mà không cần nhiều về kiến thức điện tử và thời gian Sau đây là nhưng thế mạnh của Arduino so với các nền tảng vi điều khiển khác:
Chạy trên đa nền tảng: Việc lập trình Arduino có thể thể thực hiện trên các hệ điều hành khác nhau như Windows, Mac Os, Linux, Android trên di động
Trang 26Nền tảng mở: Arduino được phát triển dựa trên nguồn mở nên phần mềm chạy trên Arduino được chia sẻ dễ dàng và tích hợp vào các nền tảng khác nhau
Mở rộng phần cứng: Arduino được thiết kế và sử dụng theo dạng module nên việc mở rộng phần cứng cũng dễ dàng hơn
Hình 1.22 Hình ảnh Arduino Uno
Arduino có rất nhiều module, mỗi module được phát triển cho một ứng dụng
Về mặt chức năng, các bo mạch Arduino được chia thành hai loại: loại bo mạch chính
có chip Atmega và loại mở rộng thêm chức năng cho bo mạch chính Các bo mạch chính về cơ bản là giống nhau về chức năng, tuy nhiên về mặt cấu hình như số lượng I/O, dung lượng bộ nhớ, hay kích thước có sự khác nhau Một số bo có trang bị thêm các tính năng kết nối như Ethernet và Bluetooth Các bo mở rộng chủ yếu mở rộng thêm một số tính năng cho bo mạch chính
1.2.2 Các ứng dụng của Arduino
Trong thực tế Arduino có rất nhiều ứng dụng bởi khả năng xử lý linh hoạt, phần cứng dễ dàng tích hợp vào hệ thống khác Do đó có thể ứng dụng trong hầu hết các hệ thống điều khiển tự động từ đơn giản là các thiết bị báo cháy báo ga, hay phức tạp hơn
là xử lý máy in 3D
Hình 1.23 Máy in 3D
Trang 27Một cuộc cách mạng khác cũng đang âm thầm định hình nhờ vào Arduino, đó
là sự phát triển máy in 3D nguồn mở Reprap.Máy in 3D là công cụ giúp tạo ra các vật thể thực trực tiếp từ các file CAD 3D.Công nghệ này hứa hẹn nhiều ứng dụng rất thú
vị trong đó có cách mạng hóa việc sản xuất cá nhân.Máy in 3D là sự tổng hòa của kỹ thuật và công nghệ để làm cho cuộc sống trở nên đẹp hơn nhờ các ứng dụng của nó
Hình 1.24 Robot
Trong hình trên Robot được lập trình bởi Arduino với chức năng quay camera
dò đường và truyền thông về máy tính Trên máy tính sẽ quản lý và điều chỉnh hướng của Robot
Hình 1.25 Máy bay không người lái
UAV là một ứng dụng đặc biệt thíchhợp với Arduino do chúng có khả năng xử
lý nhiều loại cảm biến như Gyro, accelerometer, GPS…; điều khiển động cơ servo và
cả khả năng truyền tín hiệu từ xa
Trang 28Hình 1.26 Lập tình game tương tác
Việc đọc cảm biến và tương tác với PC là một nhiệm vụ rất đơn giản đối với Arduino Do đó rất nhiều ứng dụng game tương tác có sử dụng Arduino Trong hình trên game được tương tác với Arduino ngưới dùng có thể điều khiển cần chơi game , trên màn hình LCD cũng hiển thị các chức năng bấm và máy tính là giao diện tương tác người dùng
Hình 1.27 Điều khiển hiệu ứng ánh sáng
Các tác vụ điều khiển đơn giản như đóng ngắt đèn LED hay phức tạp như điều khiển ánh sáng theo nhạc hoặc tương tác với ánh sáng laser đều có thể thực hiện với Arduino
1.2.3 Tìm hiểu Aruino Uno
Arduino Uno là một bo mạch vi điều khiển dựa trên chip Atmega328 Có 14 chân vào ra bằng tín hiệu số, trong đó có 6 chân có thể sử dụng để điều chế đô rộng xung Có 6 chân đầu vào tín hiệu tương tự cho phép chúng ta kết nối với các bộ cảm biến bên ngoài để thu thập số liệu, sứ dụng một dao động thạch anh tần số dao động 16MHz, có một cổng kết nối bằng chuẩn USB để chúng ta nạp chương trình vào bo mạch và một chân cấp nguồn cho mạch, một ICSP header, một nút reset
Trang 29Hình 1.28 Cấu trúc phần cứng Aruino Uno
- Khối nguồn Aruino Uno:
Arduino có thể được hỗ trợ thông qua kết nối USB hoặc với một nguồn cung cấp điện bên ngoài.Các nguồn năng lượng được lựa chọn tự động Hệ thống vi điều khiển có thể hoạt động bằng một nguồn cung cấp bên ngoài từ 6V đến 12V
Vin: Điện áp đầu vào Arduino khi chúng ta dùng nguồn điện bên ngoài (khác với nguồn 5V lấy từ USB hoặc nguồn thông qua jack cắm nguồn riêng) Chúng ta có thể cung cấp nguồn thông qua chân này
5V: Cung cấp nguồn vi điều khiển và các bộ phận khác trên bo mạch và cung cấp nguồn cho các thiết bị ngoại vi khi kết nối tới bo mạch
3,3V: Cung cấp nguồn cho các thiết bị cảm biến
GND: Chân nối đất
Chân Aref: Tham chiếu điện áp đầu vào analog
Chân IOREF: Cung cấp điện áp cho các vi điều khiển hoạt động Một shield được cấu hình đúng có thể đọc điện áp chân IOREF và lựa chọn nguồn thích hợp hoặc kích hoạt bộ chuyển đổi điện áp để là việc ở mức 5V hoặc 3,3V
Chân 0 (Rx): Chân được dùng để nhận dữ liệu nối tiếp
Chân 1 (Tx): Chân được dùng để truyền dữ liệu nối tiếp
Trang 30Chân 2 và 3: Chân ngắt ngoài
Chân 3, 5, 6, 9, 10 và 11: Chân vào/ra số hoặc để điều chế độ rộng xung Chân 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK): Chuẩn giao tiếp SPI
Chân A4 (SDA) và A5 (SCL): Hỗ trợ truyền thông TWI
1.3 Tìm hiểu phần mềm App Inventor 2
1.3.1 Lịch sử hình thành và phát triển
Ngày 12/7/2010, Google chính thức giới thiệu công cụ lập trình trực quan App Inventor dùng để phát triển phần mềm ứng dụng trên hệ điều hành Android App Inventor là công cụ lập trình dành cho mọi người, kể cả trẻ em
Hình 1.29 Cấu trúc phần mềm App Inventor
Với công cụ App Inventor, Google tạo điều kiện để mọi người có thể tự xây dựng phần mềm ứng dụng cho thiết bị di động dùng hệ điều hành Android
1.3.2 Đặc điểm và tính năng của App Inventor
App Inventor thực chất là một ứng dụng web, chạy bởi trình duyệt trên máy tính cá nhân.Tuy nhiên, người dùng vẫn phải cài đặt một phần mềm Java mang tên App Inventor Extras, có nhiệm vụ điều khiển điện thoại Android (kết nối với máy tính thông qua cổng USB).Nhờ vậy, người dùng có thể nhanh chóng chuyển ứng dụng từ
Trang 31máy tính cá nhân qua điện thoại Android để chạy thử Nhóm dự án App Inventor tại Google dự định bổ sung những bộ mô phỏng điện thoại Android để có thể sử dụng App Inventor mà không cần có điện thoại Android thực sự gắn vào máy tính
Hình 1.30 Giao diện phần mềm MIT App Inventor 2
Điểm nổi bật của App Inventor 2 là nó cho phép bạn vừa thiết kế ứng dụng vừa
sử dụng thử ứng dụng đó trực tiếp trên chiếc điện thoại Android đang được kết nối với máy tính Tất cả các công đoạn viết phần mềm đều thông qua giao diện đồ họa trực quan theo kiểu WYSIWYG ( What you see is what you get) mà không cần bạn phải đụng tới một đoạn mã nào Các chỉ dẫn trên màn hình đủ dễ hiểu để bạn có thể tiến hành viết phần mềm ngày mà không cần thiết phải xem qua các bản hướng dẫn sử dụng
Hình 1.31 Giao diện của App Inventor 2