Nhu cầu thay thế dần các công việc của con người bằng các tay máy có chức năng tương tự đã và đang tiếp tục được thực hiện, Trong khi đó, sự tiếp cận về lĩnh vực này ở Việt Nam tính đến
Trang 1Nội dung
Trang CHƯƠNG I : DẪN NHẬP 1.1 Đặt vấn đề 1
1.2 Tầm quan trọng của đề tài 1
1.3 Điểm mới của đề tài 2
1.4 Giới hạn đề tài 2
1.5 Mục đích nghiên cứu 2
1.6 Phương pháp nghiên cứu 3
1.7 Thời gian nghiên cứu 3
chương 2 : Cơ sở lý luận 2.1 Sự xuất hiện của thuật ngữ robot và tình hình nghiên cứu sử dụng robot của các nước trên thế giới 4
2.2 Tình hình phát triển của robot ở Việt Nam 5
2.3 Nhu cầu thực tế về vấn đề sử dụng robot trong sự nghiệp CNH-HĐH ở nước ta 7
2.4 Những công việc đòi hỏi nên đưa vào sử dụng các cơ cấu robot 8
2.5 Các loại robot trong công nghiệp và phạm vi ứng dụng của từng loại 9
2.5.1 Robot Scara 4 bậc tự do 9
2.5.2 Robot Puma 10
2.5.3 Robot Stanford 10
2.5.4 Một số khó khăn khi tính toán và chế tạo robot ở nước ta trong giai đoạn hiện nay 11
2.6 Cơ sở lý thuyết về ma trận chuyển, phương trình cơ bản của robot 12
2.6.1 Ma trận chuyển đổi tịnh tiến giữa hai toạ độ 12
2.6.2 Ma trận biến đổi xoay giữa hai toạ độ 13
2.7 Ma trận biến đổi xoay quay các trục đặc biệt 15
2.7.1 Ma trận biến đổi khi xoay hệ trục toạ độ OX 1 Y 1 Z 1 quanh trục X một góc α so với hệ trục toạ độ OXYZ 15
2.7.2 Ma trận biến đổi khi xoay hệ trục toạ độ OX 1 Y 1 Z 1 quanh trục Y một góc β so với hệ trục toạ độ OXYZ 16
2.7.3 Ma trận biến đổi khi xoay hệ trục toạ độ OX 1 Y 1 Z 1 quanh trục Z
Trang 22.7.4 Bộ thông số DH(Denavit J & Hartenberg R.S) 17
2.7.5 Thiết lập hệ trục toạ độ 18
2.7.6 Mô hình biến đổi 19
2.7.7 Phương trình động học 19
2.8 Cơ sở lý thuyết về ma trận Jacobi 20
2.9 Phương trình Lagarange bậc II ứng dụng trong phân tích động lực học cho robot 23
2.10 Cơ sở lý thuyết về họ vi xử lý 8051 24
2.10.1 Giới thiệu chung 24
2.10.2 Cấu Trúc AT89S52 25
2.10.3 Sơ đồ khối 26
2.10.4 Sơ đồ chân 27
2.10.5 Cấu trúc của vùng Ram 28
2.10.6 Ngôn ngữ điều khiển 28
2.10.7 Kết nối với máy tính 29
2.10.8 Cấu trúc cổng xuất nhập và mô tả chức năng các chân trên vi điều khiển 33
2.11 Giới thiệu cấu tạo và nguyên lý hoạt động của động cơ bước 36
2.11.1 Nguyên tắc hoạt động chung của động cơ bước 36
2.11.2 Nguyên tắc họat động của động cơ bước dạng từ dẫn thay đổi 37
2.11.3 Điều khiển động cơ bước 41
2.12 Cơ sở lý thuyết về giao tiếp máy tính 42
2.12.1.Các phương pháp giao tiếp 42
2.12.2.Các hình thức giao tiếp trên máy tính 43
2.12.3 Tiêu chuẩn giao tiếp cổng nối tiếp 43
2.12.4 Chức năng của các chân trên các cổng giao tiếp 43
2.12.5 Phương pháp kết nối 44
2.12.6 Nguyên lý truyền dữ liệu 46
2.13 Khái quát về giao tiếp nối tiếp trong matlab 46
2.14 Trình tự thực hiện giao tiếp giữa thiết bị với cổng nối tiếp 47
Chương III: Chọn sơ đồ cơ cấu, tính toán động học và động lực học cho robot 6 bậc tự do 49
3.1 Chọn sơ đồ kết cấu cho robot 6 bậc tự do 49
3.2 Các kích thước ban đầu 50
3.3 Tính toán động học thuận cho robot 6 bậc tự do 50
3.3.1 Nhiệm vụ 50
Trang 33.3.3 Phân tích động học thuận cho robot 51
3.4 Phân tích động học ngược cho robot 55
3.5 Ứng dụng ma trận Jacobi quay vít để tính toán vận tốc cho các khớp và bộ tác động cuối 60
3.6 Tính toán động lực học cho robot 6 bậc tự do 65
3.6.1 Tính bền cho toàn bộ cơ cấu dựa trên cơ sở tĩnh học 65
3.6.2 Kiểm tra động lực học cho tay máy khi đang thực hiện nhiệm vụ 72
Chương IV: Thiết kế bộ điều khiển và chương trình giao tiếp máy tính 78
4.1 Phân tích bộ điều khiển tay máy 78
4.2 Thiết kế mạch điện cho các bộ giải mã 80
4.2.1: Nhiệm vụ 80
4.2.2 Sơ đồ mạch điện điều khiển vi bước 80
4.3 Thiết kế mạch điều khiển chính 81
4.3.1.Nhiệm vụ 81
4.3.2 Thiết kế mạch điều khiển chính 81
4.4 Thiết kế mạch xử lý tín hiệu từ cảm biến 82
4.4.1 Nhiệm vụ 82
4.4.2 Sơ đồ mạch điện xử lý tín hiệu cảm biến 82
4.5 Thiết kế giao diện điều khiển 83
4.5.1 Nhiệm vụ 83
4.5.2 Xử lý số liệu nhập 84
4.5.3 Giao diện điều khiển 84
4.6 Trình tự lập trình hoạt động cho tay máy 85
4.7 Mô phỏng hoạt động 85
4.7.1 Giới thiệu về phần mềm Solid edge 85
4.7.2 Giới thiệu về phần mềm Visual Natran 86
4.8 Thuật toán điều khiển cho robot gắp sản phẩm 87
Chương V: Thực Nghiệm 88
5.1 Chế tạo các bộ giải mã 88
5.1.1 Sơ đồ mạch in 88
5.1.2 Sơ đồ thực tế 88
5.2 Chế tạo bộ điều khiển trung tâm, Bộ điều khiển trung gian và card giao tiếp 89
5.2.1 Sơ đồ mạch in 89
5.2.2 Sơ đồ thực tế 89
5.3 Chế tạo mạch cảm biến 90
Trang 45.3.1 Sơ đồ thực tế 90
5.4 Cấu tạo bộ điều khiển và mô hình thực tế 90
5.5 Giải quyết một bài toán thực tế 92
Chương VI: Kết luận và hướng phát triển 96
6.1 Kết luận 96
6.2 Hướng phát triển của đề tài 96
Phụ lục 1 Chương trình viết cho bộ điều khiển trung tâm và bộ điều khiển trung gian 97
1 Chương trình viết cho bộ điều khiển trung tâm 97
2 Chương trình viết cho bộ điều khiển trung gian 1 102
3 Chương trình viết cho bộ điều khiển trung gian 2 113
Phụ lục 2: Thuật toán điều khiển động cơ vi bước, chương trình viết cho vi bước bằng hợp ngữ và chương trình matlab tính toán các dữ liệu vào 117
1 Thuật toán điều khiển vi bước 117
2 Chương trình điều khiển vi bước 117
3 Chương trình tạo giao diện và tính toán dữ liệu vào 123
Phụ lục 3: Các hệ số trong phương trình động lực học cho robot 6 bậc tự do 134
Trang 5CHƯƠNG I
DẪN NHẬP 1.1 Đặt vấn đề
Hiện nay tình hình robot trên thế giới đang ở đỉnh cao của sự phát triển, việc ứng dụng robot trong nhiều lĩnh vực khác nhau của đời sống được thể hiện rõ rệt Nhu cầu thay thế dần các công việc của con người bằng các tay máy có chức năng tương tự đã và đang tiếp tục được thực hiện, Trong khi đó, sự tiếp cận về lĩnh vực này ở Việt Nam tính đến nay vẫn còn rất nhiều hạn chế, chúng ta thiếu cả về số lượng cũng như chất lượng các sản phẩm robot thực tế, thiếu về các tài liệu tính toán, về thiết bị điều khiển cũng như công nghệ chế tạo sản phẩm robot hoàn chỉnh Vì vậy, để tăng tốc độ tiếp cận và áp dụng rộng rãi công nghệ mới này chúng ta cần phải đẩy mạnh tốc độ phát triển cả về vấn đề tính toán cũng như công nghệ chế tạo các thiết bị hiện đại này, mà trước hết là phải triển khai và phát triển các đề tài trong nước làm tiền đề cho sự phát triển các sản phẩm thực tế sau này Đứng trước tình hình đó nhiệm vụ của các trung tâm nghiên cứu, các trường Đại học, cao đẳng trong nước đối với vấn đề này, phải được đặt lên tầm quan trọng hàng đầu, các trường phải có nhiều đề tài nghiên cứu cả về lĩnh vực thiết kế cũng như chế tạo, làm cơ sở đào tạo ra các cán bộ kỹ thuật có năng lực, đáp ứng được nhu cầu phát triển ngành của robot trong tương lai gần Trên cơ sở đó, đề tài “Thiết kế, chế tạo tay máy gắp sản phẩm”, với sự trình bày một cách khá tổng quát về trình tự thiết kế, chế tạo một robot hoàn chỉnh
6 bậc tự do, sẽ là một đề tài rất có ý nghĩa cho quá trình đào tạo về lĩnh vực robot ở Việt Nam, đồng thời nó còn là tiền đề cho các nhà máy, các xí nghiệp khi thực hiện quá trình sản xuất tay máy ứng dụng vào thực tế đời sống
1.2 Tầm quan trọng của đề tài
Sự thay thế dần sức người bằng sức máy là một vấn đề cực kỳ quan trọng trong quá trình đất nước chuẩn bị hoàn thành giai đoạn CNH-HĐH và tiến lên chủ nghĩa xã
hội, với đề tài “Thiết kế, chế tạo tay máy gắp sản phẩm” không những sẽ làm sáng
tỏ các vấn đề về mối liên quan giữa các lĩnh vực Công nghệ thông tin – Điện tử – Cơ khí mà nó còn thể hiện mức độ rút ngắn khoảng cách sự tiếp cận các công nghệ mới ở Việt Nam so với các nước trên thế giới, cũng như tạo ra một đòn bẩy thúc đẩy sự phát triển nhanh lĩnh vực robot ở nước ta
Với kết cấu 6 bậc tự do, cơ cấu tay máy sẽ rất linh hoạt, điểm tác động cuối có thể chuyển động theo bất cứ một quỹ đạo nào và quay theo bất cứ một trục nào nằm trong vùng không gian hoạt động của nó Điều này rất có ý nghĩa khi kiểm tra và thể
Trang 6hiện một giải thuật điều khiển từ máy tính Đồng thời nó cũng không kém phần quan trọng để sinh viên có thể thử nghiệm khi viết chương trình điều khiển quỹ đạo của robot theo ý muốn
Nếu trong dây truyền sản xuất tự động, có sự trang bị của loại robot linh hoạt này, khi có yêu cầu về thay đổi chu trình làm việc, thay vì phải thay thế bằng một cơ cấu robot khác, cơ cấu robot này chỉ cần nạp vào một chương trình điều khiển mới là có thể đáp ứng được Điều này sẽ giúp các nhà máy giảm chi phí về thời gian, tiền của cũng như nắm bắt được các thời cơ trong chu kỳ phát triển của sản phẩm
1.3 Điểm mới của đề tài
Phần tính toán lý thuyết về động học, động lực học được thể hiện trong đề tài, không có gì mới so với các đề tài trước đây, chủ yếu vẫn dựa trên cơ sở lý thuyết tính toán của các tài liệu đã có, các lý thuyết về vi xử lý nói riêng và kỹ thuật điện tử nói chung cũng chủ yếu mang tính ứng dụng vào thực tế
Tuy nhiên, với phần lập trình điều khiển, người nghiên cứu đã sử dụng trực tiếp công cụ tính toán là phần mềm Matlab để truyền tải dữ liệu cho các khối vi xử lý, các khối vi xử lý này sẽ trực tiếp điều khiển cơ cấu chấp hành Có thể nhấn mạnh rằng, điểm mới của đề tài là : người nghiên cứu đã tổng hợp và nối kết được các mảng kiến thức của 3 lĩnh vực : Công nghệ thông tin – Điện tử – Cơ khí, để tạo nên một sản phẩm robot khá hoàn chỉnh Ngoài ra, với sự ứng dụng của các phần mềm : Autocad, Inventer, Solid egle, Visual nastran vào việc vẽ và mô phỏng sẽ làm cho vấn đề lý thuyết được sáng tỏ hơn, thêm vào đó các công cụ tạo giao diện sẽ đơn giản hoá quá trình thiết lập quy luật điều khiển cho tay máy, điều này sẽ giảm thiểu thời gian cho người sử dụng cũng như độc giả có quan tâm
1.4 Giới hạn đề tài
Do thời gian nghiên cứu và điều kiện vật chất có hạn nên trong đề tài này người nghiên cứu mới chỉ tính toán, thiết kế và chế tạo thử nghiệm một mô hình robot 6 bậc tự
do Mô hình này có thể nâng vật nặng tối đa là 1kg, và vận tốc tối đa là 0.05m/s, bộ tác động cuối là bộ phận chỉ gắp các chi tiết dạng hộp có kích thước tối đa là 60 x 60 x 60 và tối thiểu là 30 x 30 x 30 và ứng dụng chủ yếu trong công tác đào tạo ở các trường Đại Học, Cao Đẳng và Trung Học Trong nước
1.5 Mục đích nghiên cứu
Với đề tài ““Thiết kế, chế tạo tay máy gắp sản phẩm” người nghiên cứu thể
hiện với các mục đích sau:
Trang 7- Hoàn thiện một lượng kiến thức khá lớn về tin học và điện tử nói chung, công nghệ tự động hoá nói riêng
- Giới thiệu cho học sinh các trường kỹ thuật một sản phẩm khá hoàn chỉnh về một tay máy với 6 bậc tự do bao gồm phần tính toán cơ học, thiết kế mạch điều khiển, các chương trình điều khiển
- Góp phần phát triển nghành công nghệ tự động của nước nhà
1.6 Phương pháp nghiên cứu
- Phương pháp tham khảo tài liệu : Tài liệu về robot công nghiệp, tài liệu về thiết kế mô phỏng, tài liệu về lập trình bằng ngôn ngữ matlab, tài liệu về động cơ bước, động cơ Servo, tài liệu về vi xử lý và các linh kiện bán dẫn, linh kiện điện tử công suất
- Phương pháp thực nghiệm : Lắp ráp và thí nghiệm các mạch điều khiển động cơ bước, Bộ điều khiển chính, cổng truyền thông nối tiếp với phần mềm matlab, gia công toàn bộ các chi tiết và lắp ráp hoàn chỉnh mô hình robot 6 bậc tự do
1.7 Thời gian nghiên cứu
- Từ tháng 2/2006 đến tháng 3/2006, tham khảo các tài liệu và tính toán các thông số cơ bản để thiết kế và chế tạo mô hình robot
- Từ tháng 3/2006 đến tháng 6/2006, thiết kế và chế tạo mô hình robot 6 bâc tự do
- Từ tháng 6/2006 đến tháng 8/2006, thử nghiệm và chế tạo bộ điều khiển, Card giao tiếp với phần mềm matlab
- Từ tháng 8/2006 đến 15/9/2006,Tổng kết và hoàn thành thuyết minh
Trang 8CHƯƠNG II
CƠ SỞ LÝ LUẬN 2.1 Sự xuất hiện của thuật ngữ robot và tình hình nghiên cứu sử dụng robot của các nước trên thế giới
Thuật ngữ “robot” bắt đầu xuất hiện vào khoảng năm 1922 trong tác phẩm
“Rossum’s Universal Robot” của Karel Capek Theo tiếng séc có nghĩa là người tạp dịch Trong tác phẩm này nhân vật Rossum và con trai ông ta đã tạo ra những chiếc máy gần giống như con người để hầu hạ con người
Hơn 20 năm sau, ước mơ viễn tưởng của Karel Capek đã bắt đầu trở thành hiện thực Ngay sau chiến tranh thế giới lần thứ 2, ở Hoa Kỳ đã xuất hiện những tay máy chép hình điểu khiển từ xa trong các phòng thí nghiệm về vật liệu phóng xạ
Vào giữa những năm 50 thì hàng loạt các tay máy dạng chép hình đã xuất hiện nhưng mãi đến năm 1975 công ty Unimation mới bắt đầu có lợi nhuận từ những sản phẩm robot đầu tiên
Khái niệm robot công nghiệp được ra đời và đưa vào ứng dụng đầu tiên vào năm
1961 ở hoa kỳ
Năm 1967 nhật bản mới nhập chiếc robot công nghiệp đầu tiên từ công ty AMF tại hoa kỳ, và đến năm 1990 có hơn 40 công ty nhật bản, trong đó có những công ty khổng lồ như công ty Hitachi và công ty Mitsubishi, đã đưa ra thị trường quốc tế nhiều loại robot nổi tiếng
Từ ngay sau đó việc đưa vào ứng dụng những loại robot được phát triển rất mạch
ở nhật, trong khi mỹ thì nghiêng về phần tính toán cơ sở lý thuyết
Từ những năm 70 việc nghiên cứu nâng cao tính năng của robot đã chú ý nhiều đến sự lắp đặt thêm các cảm biến ngoại tín hiệu để nhận biết môi trường làm việc, các robot này có thể có một vài chức năng nhận biết giống như con người Tại trường đại học tổng hợp Stanford người ta đã tạo ra loại robot lắp ráp tự động điều khiển bằng máy
vi tính trên cơ sở xử lý thông tin từ các cảm biến lực và thị giác Cũng vào thời gian này công ty IBM đã chế tạo loại robot có các cảm biến xúc giác và cảm biến lực, điều khiển bằng máy vi tính để lắp ráp các máy in gồm 20 cụm chi tiết
Từ những năm 80 nhất là vào khoảng những năm 90 do áp dụng rộng rãi các tiến bộ về vi xử lý và công nghệ thông tin, số lượng robot công nghiệp đã gia tăng, giá thành giảm rõ rệt so với trước đó nhưng các tính năng được phát triển vượt bậc, hầu như có thể thay thế toàn bộ các công việc nặng nhọc và độc hại cho con người
Trang 9Chính từ những ứng dụng này lên chuyên ngành khoa học về robot “Robotics” đã trở thành một lĩnh vực rộng rãi trong khoa học, bao gồm các vấn đề về động học, động lực học, tính toán điều khiển theo quỹ đạo, cảm biến tín hiệu điều khiển chuyển động v.v… Việc ứng dụng robot trên thế giới đã được nghiên cứu và phát triển mạnh ở các nước : Pháp, Đức, Italia, Nhật, Anh, Mỹ và đến nay thì đã lan rộng sang các nước châu
Á như : Hàn Quốc, Singapo, Đài Loan Tuy nhiên, trong những năm 1991 thì việc ứng dụng công nghệ robot ở các nước ở Châu Á còn thấp nhưng đến năm 2000 thì mức độ sử dụng và phát triển gần ngang bằng với các nước phát triển
Robot được ứng dụng nhiều nhất ở các nước trên thế giới là trong công nghệ chế tạo lắp ráp xe hơi và lắp ráp một số sản phẩm khác
Cho đến nay công nghệ sử dụng robot ở các nước phát triển đã ở giai đoạn phát triển cao nhất, từ các công việc như giúp việc nhà, trang trí, khuôn dỡ hàng hoá, lắp ráp kiểm tra sản phẩm, an ninh quốc phòng, thám hiểm v.v.v đều có sự tham gia của robot Đặc biệt là các công việc nặng nhọc và mang tính độc hại thì sử dụng robot là một trong các phương pháp nâng cao hiệu quả nhất
Các công ty nhật cho đến hiện nay nhờ sự phát triển với tốc độ rất nhanh của nghành điện tử và công nghệ thông tin họ đã giới thiệu các sản phẩm robot với hình dạng và các tính năng giống hệt như con người, ví dụ như robot leo cầu thang, vỗ tay, cúi chào khán giả v.vv
Robot có thể ứng dụng trong nhiều công việc khác nhau, như đã đề cập, những khái niệm robot công nghiệp vẫn luôn là điểm mấu chốt trong công nghệ chế tạo robot, thuật ngữ robot công nghiệp được rất nhiều các tác giả định nghĩa khác nhau nhưng theo ISO thì robot công nghiệp là một tay máy đa mục tiêu, có một số bậc tự
do, dễ dàng lập trình, đ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á Do chương trình thao tác có thể thay đổi nên thực hiện nhiều nhiệm vụ
đa dạng Nói một cách đầy đủ hơn, Robot công nghiệp là những thiết bị tự động linh hoạt, bắt chước được các chức năng lao động công nghiệp của con người
2.2 Tình hình phát triển của robot ở Việt Nam
Đối với nước ta, việc đưa vào sử dụng robot có thể nói là một trong những nước chậm nhất tuy vậy với mục tiêu tiếp cận kỹ thuật mới về lĩnh vực này, trong nước đã triển khai các đề tài nghiên cứu khoa học cấp nhà nước : đề tài 58.01.03 trong giai đoạn 81-85 và đề tài 52B.03.01 trong giai đoạn 86-89 Kết quả nghiên cứu của các đề tài này khong những đáp ứng được nhu cầu tiếp cận mà còn có những ứng dụng ban đầu trong kỹ thuật bảo hộ lao động và phục vụ công tác đào tạo cán bộ kỹ thuật ở nước ta
Trang 10Trong giai đoạn tiếp theo từ năm 1990 các nghành công nghiệp trong nước bắt đầu được đổi mới Nhiều cơ sở cần phải trang bị một số các hệ thống thiết bị mới nhưng chủ yếu là nhập dây truyền từ các nước phát triển để phục vụ cho một số các công việc sau đây:
- Tháo lắp các dụng cụ cho các trung tâm gia công và các máy CNC
- Lắp ráp các linh kiện điện tử
- Tháo các sản phẩm ở máy ép nhựa tự động, trong đó có loại thao tác phối hợp với hệ thống giám sát, điều khiển bằng camera
- Hàn vỏ xe hơi
- Phun sơn, phủ các bề mặt
Từ tháng 4/98 nhà máy Rorze/Robotech đã bước vào hoạt động ở khu công nghiệp Nonura Hải Phòng Đây là nhà máy đầu tiên ở Việt Nam chế tạo và lắp ráp robot Đó là loại robot có cấu trúc đơn giản nhưng rất chính xác trong sản xuất chất bán dẫn Nhà máy Rorze Robotech có vốn đầu tư là 46 triệu đôla mỹ do Nhật Bản đầu tư
Trong những năm gần đây Trung Tâm Nghiên Cứu Kỹ Thuật (NCKT) tự động hoá, trường Đại Học Bách Khoa (ĐHBK) – Hà Nội đã nghiên cứu tính toán thiết kế một kiểu robot mới ký hiệu là robot RP Robot RP thuộc loại robot phỏng sinh (Bắt trứơc cơ cấu tay người) Sự khác biệt của robot này với các kiểu robot phỏng sinh khác là ở đây dùng cơ cấu pantograph với 2 con trượt dẫn động làm mô đun chủ yếu của cơ cấu tay máy
Trung tâm nghiên cứu đã chế tạo thử nghiệm các robot với tên RPS-406 dùng để phun men, Robot RPS – 4102 dùng trong công nghệ bề mặt có 6 bậc tự do, Robot SCA mini dùng để phục vụ cho các trường tham khảo và nghiên cứu, ngoài ra trung tâm còn xây dựng một thư viện tính toán mô phỏng một số loại robot hiện có trên thế giới Một số các trường đại học cao đẳng ở phía nam và miền trung trong thời gian này thì mới chỉ trong giai đoạn nghiên cứu lại những thành quả robot đã có sẵn của trung tâm nghiên cứu và của các trường đại học nổi tiếng trên thế giới
Từ sau năm 2003 thì tình hình phát triển và ứng dụng robot ở phía nam đã phát triển những bước vượt bậc, các trường chủ chốt như Đại học Bách Khoa TP.HCM và Đại học
Sư Phạm Kỹ Thuật đã mở ra một lĩnh vực hoàn toàn mới đó là lĩnh vực về điều khiển tự động rất thích hợp cho sự phát triển về robot Trong những năm gần đây để lĩnh vực robot của nước nhà hàng năm chính phủ phát động cuộc thi robocon, cuộc thi này được các sinh viên hưởng ứng và tham gia tích cực Tuy nhiên, đây chỉ là sự phát triển về ý tưởng sáng tạo về robot chưa đi sâu vào chế tạo và tính toán kết cấu thực tế của robot, trong khi đó ở các nước phát triển trong thời gian này họ chủ yếu nghiên cứu về công nghệ ứng dụng các
Trang 11loại robot mới và các thiết bị trang bị trên nó nhằm nâng cao tốc độ và độ chính xác cùng với năng suất làm việc Nhưng cũng cần phải nhấn mạnh đây là bước đi đầu tiên tạo tiền đề vững chắc cho lĩnh vực phát triển về robot sau này
Trong các nhà máy xí nghiệp thì sự ứng dụng của robot trong các dây truyền sản xuất đã trong giai đoạn phổ biến, việc nghiên cứu tính toán thì hầu như không xuất hiện ở đây mà chủ yếu là ở các trung tâm nghiên cứu và ở các trường đại học sau đó chuyển giao công nghệ cho các nhà máy xí nghiệp
Gần đây nhất là sự ra đời của robot song song với độ cứng vững rất cao do viện nghiên cứu cơ học Hà Nội chế tạo sử dụng trong việc gia công chính xác các chi tiết Nói chung sự phát triển của lĩnh vực robot đối với Việt Nam hiện nay là một bước phát triển vượt bặc so với trước đây, nhưng so với các nước trên thế giới thì vẫn còn thua kém rất nhiều đặc biệt là trong công nghệ chế tạo và điều khiển robot
2.3 Nhu cầu thực tế về vấn đề sử dụng robot trong sự nghiệp CNH-HĐH ở nước ta
Trong sự nghiệp công nghiệp hoá và hiện đại hoá của nước nhà và đồng thời để theo kịp đà tiến của các nước phát triển đặc biệt là các nước láng giềng như Trung Quốc thì nhu cầu hiện đại hoá và sử dụng các dây truyền sản xuất hoàn toàn tự động là cực kỳ bức thiết Tất cả các công nghệ tiên tiến ở nước ta hiện có hầu như đều nhập từ các nước trên thế giới mà bản thân nước nhà hầu như chưa thể thực hiện được Trong các nhà máy xí nghiệp đặc biệt đối với xí nghiệp có môi trường làm việc độc hại và nóng bức thì hiện nay công nhân vẫn phải trực tiếp thực hiện, các công việc đơn điệu trong các dây truyền như phân loại sản phẩm theo hình dáng số lượng, hoạc khối lượng và ngay cả các công việc tỉ mỉ như lắp ráp những linh kiện nhỏ vào trong bo mạch, khuân dỡ hàng hoá ở các cảng v.v vẫn là công việc của con người, các công việc mang tính lặp đi lặp lại nếu được thực hiện bởi con người thì không những năng suất mà chất lượng sẽ giảm đáng kể, nếu thay bằng hệ thống các robot tự động thì không những tăng năng suất, chất lượng và nhịp độ sản xuất không đổi mà còn có thể tăng được một khoảng thời gian lớn nếu robot làm việc 24/24 Tuy năm thứ nhất mức đầu tư cho một robot so với mức thuê mướn nhân công thì có thể việc đầu tư cho một robot trong giai đoạn hiện nay có giá thành cao hơn rất nhiều, nhưng nếu so sánh trong những năm tiếp theo thì lợi nhuận từ robot sẽ lại cao hơn rất nhiều so với mức thuê mướn nhân công Nếu xét trong một khía cạnh khác của mức độ ổn định sản xuất thì sử dụng robot trong tất cả các công đoạn cũng sẽ giảm đi một số lượng lớn bộ phận nhân sự khi đào tạo đầu vào của nhân công, Trong khi với robot thì việc học việc chỉ đơn giản là nạp chương trình vào bộ nhớ của nó.v.v
Trang 12Với các công việc nguy hiểm như làm việc trực tiếp với các hoá chất độc hại có thể gây cháy nổ, thám hiểm núi lửa mặt trăng, hay một hành tinh lạ nào đóv.v thì chắc chắn sự tham gia của robot là phù hợp hơn cả Mặt khác, để tiến tới mức độ tự động hoá hoàn toàn các khâu trong sản xuất và trong hầu hết các lĩnh vực về xã hội và nhằm nâng cao năng lực sáng tạo của con người thì sự phát triển các robot tự động là hoàn toàn phù hợp Trên cơ sở này thì giờ đây công việc của con người chỉ là ở mức độ lập trình hướng dẫn cho robot làm việc
Lĩnh vực y tế hiện nay cũng đã đưa vào sử dụng rất nhiều các hệ thống robot, Điều này là do với sự phát triển như vũ bão của hệ thống thông tin, sự đa dạng về các chíp điện tử, sự phát triển của các vi mạch có ổn định cao, sự gia công chính xác của các phương pháp gia công tiên tiến, sự ra đời của các loại vật liệu nhẹ nhưng có độ cứng và bền cao v.v với sự tổng hợp của các yếu tố này thì độ chính xác và độ tin cậy của robot đã được nâng lên rất cao và h ầu như không gặp bất cứ một sự cố gì trong quá trình thực hiện công việc
Trong giai đoạn đất nước đang chuẩn bị tham gia tổ chức thương mại quốc tế
“WTO” thì giá thành hàng hoá có xu hướng giảm đi rất nhiều, nếu dây truyền sản xuất hiện nay của các xí nghiệp trong nước không được thay đổi và trang bị thêm các hệ thống tự động thì chắc chắn rằng hàng hoá trong nước sẽ không thể cạch tranh được với hàng hoá từ các nước khác đưa vào Khi đó, nền kinh tế của nước ta có thể bị phụ thuộc nhiều vào các nước khác, điều này sẽ ảnh hưởng không tốt đến vấn đề an ninh độc lập chủ quyền của nước ta mà bao đời nay đã giữ vững được
Từ những yếu tố trên chúng ta có thể khẳng định rằng, việc đầu tư nghiên cứu và phát triển các hệ thống tự động nói chung và các hệ thống robot nói riêng phải là vấn đề được quan tâm hàng đầu, việc đầu tư cho lĩnh vực này chính là một trong những phương pháp nhanh nhất để nước ta hoàn thành sớm sự nghiệp CNH – HĐH đất nước
2.4 Những công việc đòi hỏi nên đưa vào sử dụng các cơ cấu robot
Như đã đề cập ở phần trên chúng ta có thể đưa ra những công việc mà nếu sử dụng robot thì hiệu quả công việc sẽ tăng lên rất nhiều cụ thể như :
- Những công việc mang tính đơn điều nhàm chán như : lắp ráp các linh kiện điện tử, lắp ráp những chi tiết bulông đai ốc, chuyển sản phẩm từ vị trí này đến một vị trí khác
- Những công việc mang tính nguy hiểm như : thám hiểm núi nửa, đại dương, thăm dò những hành tinh mới, mài cơ với tốc độ cao
Trang 13- Những công việc mang tính độc hại và môi trường làm việc nóng bức như: vận chuyển hoá chất, gắp sản phẩm trong các lò nung, tôi, đúc vv
- Những công việc cần độ chính xác cao và mang tính ổn định
Những công việc này trong giai đoạn hiện nay thì nên đưa vào sử dụng các cơ cấu robot và trong tương lai thì chắc chắn rằng phải có sự tham gia của robot thì mới đảm bảo được các vấn đề về sức khoẻ cho con người, hiệu quả sản xuất cũng như vấn đề về tiếp cận các công nghệ mới của thời đại
2.5 Các loại robot trong công nghiệp và phạm vi ứng dụng của từng loại
Tuỳ theo từng loại và đặc điểm của công việc mà đưa vào kết cấu robot cho phù hợp, cho đến nay do tính đa dạng của các loại công việc và hình thức sử dụng robot trong các lĩnh vực khác nhau lên có rất nhiều kết cấu robot khác nhau, nhưng xét cho cùng thì chỉ có 2 dạng kết cấu đó là robot với kết cấu nối tiếp và robot với kết cấu song song
Với robot nối tiếp thì các khâu sẽ nối tiếp nhau, từ khâu có định đến khâu cuối cùng, xét về nguyên lý máy thì đó là cơ cấu hở, loại robot này có tính uyển chuyển rất cao và kết cấu cũng khá gọn lên thường ứng dụng trong các công việc như lắp ráp, di chuyển các sản phẩm, phun sơn, hàn các kết cấu phức tạp v.v… tuy nhiên do là cơ cấu hở lên độ cứng vững và độ ổn định không được cao vì vậy để đảm bảo độ chính xác thì tốc độ của các robot này thường là rất thấp
Với robot song song thì tất cả các khâu sẽ tạo thành một chuỗi khép kín, xét về nguyên lý máy thì đó là cơ cấu kín, vì là cơ cấu kín lên độ cứng vững rất cao nó được ứng dụng trong các công việc cần độ ổn
định lớn và tải trọng cao ví dụ như làm bàn
dao cho các máy phay CNC hay các máy
gia công tia lửa điện Mặt khác tốc độ của
robot song song cũng cao hơn nhiều do độ
cứng vững và việc sử dụng các loại vật liệu
nhẹ, nên nó còn được ứng dụng trong các
công việc cần tốc độ cao như lắp ráp các
linh kiện trong công nghệ lắp ráp tốc độ
cao, tuy nhiên do kết cấu phức tạp lên độ
linh động của cơ cấu thấp thường phải làm
việc ở vùng không gian ít chướng ngại vật
2.5.1 Robot Scara 4 bậc tự do
Hình 1: Robot Scara 4 bậc tự do
Trang 14Ưu điểm: Kết cấu khá đơn giản, dễ chế tạo, vùng không gian hoạt động tương đối rộng Nhược điểm: độ linh hoạt không cao, hướng của cơ cấu tác động cuối chỉ có thể xoay quanh
trục thẳng đứng
Phạm vi ứng dụng: ứng dụng trong các dây truyền lắp ráp các chi tiết có định hướng
theo một phương, di chuyển sản phẩm giữa các dây truyền, đóng gói, phân chia sản phẩm, máy cắt bằng tia nước
2.5.2 Robot Puma
Ưu điểm: Với kết cấu 6
bậc tự do toàn khớp quay,
sự linh hoạt của tay máy
này rất cao, nó có thể
chuyển động theo mọi
quỹ đạo trong vùng làm
việc, đáp ứng được nhu
cầu thay đổi của hệ thống
công nghệ
Nhược điểm: Kết cấu
phức tạp, giá thành cao, tính
toán phức tạp,
Phạm vi ứng dụng: Ứng
dụng trong các dây truyền
lắp ráp phức tạp, công nghệ
phun sơn tự động, công nghệ
hàn v.vv
2.5.3 Robot
Stanford
ưu điểm: Với kết cấu 6 bậc
tự do( 5 khớp quay, một khớp
Hình 2: Robot Puma 6 bậc tự do
Hình 3: Robot Stanford 6 bậc tự do
Trang 15tịnh tiến), robot này cũng có độ linh hoạt cao hơn nhiều so với robot Scara, kết cấu đơn giản hơn robot Puma
Nhược điểm: Kết cấu tương đối phức tạp, độ linh hoạt thấp hơn robot Puma
Phạm vi ứng dụng: Ứng dụng trong công nghệ lắp ráp tương đối phức tạp, công nghệ
hànv.v
2.5.4 Một số khó khăn khi tính toán và chế tạo robot ở nước ta trong giai
đoạn hiện nay
Trong giai đoạn của nước ta hiện nay đối với toàn bộ quá trình thiết kế và sản xuất robot là còn rất thấp, chủ yếu vẫn còn dừng ở phần thiết kế tính toán và mô phỏng trên máy tính, còn hạn chế nhiều ở khâu chế tạo hoàn chỉnh một robot cụ thể, ở các trưỡng đại học, cao đẳng thì với các mô hình robot mang tính mô phỏng thử nghiệm các lý thuyết đã tính toán tức mô hình chỉ mang tính kiểm nghiệm là chủ yếu, sở dĩ như vậy là do tình hình phát triển robot của đất nước ta còn gặp nhiều các khó khăn mà điển hình nhất là các khó khăn sau đây:
- Sản phẩm robot là sản phẩm của nghành cơ điện tử, tức là phải có sự phối hợp hài hoà cả về nghành công nghệ thông tin, công nghệ truyền tải dữ liệu từ máy tính, cả về lĩnh vực về điện tử, công nghệ vi xử lý đồng thời cả một lý thyết tính toán rộng lớn của cơ học và sức bền vật liệu Chính vì vậy với các nghành đạo tạo hiện có ở các trường thì một học viên không thể lĩnh hội được một mảng tri thức khổng lồ như thế với thời gian đào tạo không quá 5 năm Đứng trước vấn đề này thì hiện nay các trường cũng đã bổ sung thêm một nghành mới với tên là ngành cơ điện tử hoạc ngành điều khiển tự động, nhưng như thế vẫn chưa đáp ứng được yêu cầu đặt ra, mặt khác nếu làm việc theo tập thể dựa trên sự phối hợp của 3 mảng kiến thức thì chúng ta lại gặp phải những khó khăn về cách thức tổ chức làm việc
- Kinh phí để cho ra một sản phẩm robot hoàn hảo là rất lớn, đặc biệt là trong thời gian thử nghiệm, trong khi đó nhà nước vẫn chưa có một chính sách về vốn đầu tư thoả đáng cho lĩnh vực này
- Công nghệ chế tạo các chi tiết của nước ta còn quá lạc hậu, cụ thể là với các công nghệ này chúng ta không thể chế tạo được các chi tiết trang bị trên robot điển hình với các chi tiết đòi hỏi phải có trọng lượng nhẹ có độ cứng vững cao, chịu mài
Trang 16Hình 1.1
b
a c
mòn và phải làm việc tốt trong môi trường có điều kiện khắc nghiệt mà vẫn phải giữ được độ chính xác về hình dạng hơn nữa các thiết bị về cảm biến ngoại vi cho đến nay hầu như chúng ta vẫn phải nhập từ nước ngoài lên giá thành còn rất cao
- Nhu cầu sử dụng robot trong các dây truyền ở các xí nghiệp nói chung là còn rất thấp, bởi vì để lập trình điều khiển được các hệ thống này đòi hỏi phải có một nền tảng kiến thức tầm cỡ
- Các lý thuyết tính toán về robot với các tài liệu tiếng việt còn hạn chế vì vậy việc tính toán về sức bền độ ổn định còn rất nhiều khó khăn, chưa mang tính phổ biến cho các cán bộ kỹ thuật có trình độ tương đối
Với một vài lý do trên, nên hiện nay sự phát triển về lĩnh vực robot của nước ta vẫn còn bị hạn chế và cản trở nhiều, trong các cuộc triển lãm về công nghệ tự động mới của thế giới hầu như vẫn chưa thấy sự có mặt của nước nhà, đó là một thiệt thòi
to lớn trong sự nghiệp phát triển của đất nước
2.6 Cơ sở lý thuyết về ma trận chuyển, phương trình cơ bản của robot
2.6.1 Ma trận chuyển đổi tịnh tiến giữa hai toạ độ
Cho toạ độ gốc OXYZ, một hệ tọa độ O1X1Y1Z1 tịnh tiến so với hệ toạ độ gốc theo các trục X,Y,Z lần lượt là a,b,c, như vậy các điểm trong toạ độ O1X1Y1Z1 được xác định trong toạ độ gốc là:
100
010
001
Z Y X
c b a
Trang 17a T
1 0 0
0 1 0
0 0 1
được gọi là ma trận biến đổi tịnh tiến từ hệ trục toạ độ
O1X1Y1Z1 về hệ trục toạ độ gốc OXYZ
Để đơn giản trong tính toán người ta đưa ma trận trên về ma trận vuông bằng cách thêm một phương trình như sau: 1 = 0 × X1+ 0 × Y1+ 0 × Z1 + 1 × 1
Khi đó ma trận trên được viết lại như sau : ( )2 1
1 0 0 0
1 0 0
0 1 0
0 0 1
2.6.2 Ma trận biến đổi xoay giữa hai toạ độ
Cho một hệ toạ độ cố định OXYZ và một hệ toạ độ động OX1Y1Z1 xoay tương đối so với hệ toạ độ gốc theo các phương X, Y, Z với các góc lần lượt là α, β, θ Một điểm M được xác định trong hai hệ toạ độ này thông qua vector R thể hiện như sau:
( )2.2
1 1 1
=
++
=
Z Y X
Z Y X
R R R
R
R R R
R
rrv
r
rrr
=
++
=
k Z j Y i
X
R
k Z j Y i
X
R
rr
r
r
rr
r
r
Thực chất R1 chính là R0 và bằng R, cân bằng
2 phương trình (III) ta được:
rrr
r
++
=+
+
Lần lượt nhân 2 vế của phương trình (IV) với
véc tơ i, j, k ta thu được hệ 3 phương trình sau:
1 1
1
1 1 1
1 1
1
1 1 1
1 1
=
++
=
++
=
k k Z k j Y k i X
Z
j k Z j j Y j i X
Y
i k Z i j Y i i X
X
rrr
rr
r
rrr
rr
r
rrr
rv
r
Hay viết dưới dạng ma trận: Hình 5: Sơ đồ xoay 2 hệ toạ độ
Trang 18( )2.6
*),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
1 1
1
1 1
1
1 1
1
1 1 1
1 1
1
1 1
1
1 1
k k k
j k
i
j k j
j j
i
i k i
j i
i
Z Y X
Z Y X
k k k j k
i
j k j j j
i
i k i j i
rr
r
rrr
rr
r
rrr
rr
rr
rrrr
r
rrrrr
r
rrrrr
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
1
1 1
1
1 1
1
1 1
1
1 1
1
1 1
1
k k k
j k
i
j k j
j j
i
i k i
j i
i
k k k j
k
i
j k j j
j
i
i k i j
i
i
R
r r r
r r
r
r r r
r r
r
r r r
r r
r r
r r r
r
r
r r r r
r
r
r r r r
r
r
sẽ biến đổi toạ độ trong hệ
OX1Y1Z1 về hệ OXYZ
Tương tự chúng ta cũng thiết lập được ma trận xoay R1, ma trận này sẽ biến toạ độ trong hệ OXYZ về hệ OX1Y1Z1
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
) , cos(
1
1 1
1
1 1
1
1 1
1
1 1
1
1 1
1 1
j k
i
j k j
j j
i
i k i
j i
i
k k k j k i
j k j j j i
i k i j i i
R
r r r
r r
r
r r r
r r
r
r r r
r r
r r
r r r r r
r r r r r r
r r r r r r
Cũng như ma trận biến đổi tịnh tiến, để đơn giản và thuận lợi trong tính toán người
ta đưa thêm vào ma trận trên các hệ số để trở thành ma trận 4x4 như sau:
)8.2(10
00
0),cos(
),cos(
),cos(
0),cos(
),cos(
),cos(
0),cos(
),cos(
),cos(
10
00
0),cos(
),cos(
),
cos(
0),cos(
),cos(
),
cos(
0),cos(
),cos(
)
,
cos(
1 1
1
1 1
1
1 1
1
1 1
1
1 1
1
1 1
y z
x
y z y
y y
x
x z x
y x
x
k k k
j k
i
j k j
j j
i
i k i
j i
i
rrr
rr
r
rrr
rr
r
Để thiết lập một ma trận tổng quát biểu hiện mối tương quan của hệ toạ độ OX1Y1Z1 vừa tịnh tiến vừa xoay so với hệ toạ độ OXYZ chúng ta có thể dựa vào 2 ma trận vừa tìm trên bằng 2 cách:
Cách 1: Ma trận biến đổi tổng quát nếu hệ toạ độ tịnh tiến trước, xoay sau
00
0),cos(
),cos(
),cos(
0),cos(
),cos(
),cos(
0),cos(
),cos(
),cos(
1000
100
010
001
*
1 1
1
1 1
1
1 1
1
z z z
y z
x
y z y
y y
x
x z x
y x
x
c b a R
T TR
00
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
1 1
1
1 1
1
1 1
1
c z z z
y z
x
b y z y
y y
x
a x z x
y x
x
Trang 19Cách 2: Ma trận biến đổi tổng quát nếu hệ toạ độ xoay trước tịnh tiến sau
100
010
001
10
00
0),cos(
),cos(
),cos(
0),cos(
),cos(
),cos(
0),cos(
),cos(
),cos(
*
1 1
1
1 1
1
1 1
1
c b a
z z z
y z
x
y z y
y y
x
x z x
y x
x T
00
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
),cos(
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
1 1
c z z z y z
x z
z z
y z
x
b y z y y y
x y
z y
y y
x
a x z x y x
x x
z x
y x
x
Thông thường ma trận tổng quát thường được tính theo cách 1 để kết quả được đơn giản hơn, đồng thời có thể hiểu rằng ma trận tổng quát được ghép từ ma trận xoay và ma trận tịnh tiến
( ) 2 9 1
2.7 Ma trận biến đổi xoay quay các trục đặc biệt
Trên quan điểm của khớp xoay hoạc tịnh tiến đối với những khớp thường dùng trong robot chỉ có số bậc tự do là 1 vì vậy ma trận biến đổi xoay tổng quát được thiết lập ở trên sẽ được đơn giản hoá cho từng trường hợp quay quanh các trục cụ thể
2.7.1 Ma trận biến đổi khi xoay hệ trục toạ độ OX 1 Y 1 Z 1 quanh trục X một góc α so với hệ trục toạ độ
Trang 2000
0001)
α α
α
C S
S C x
00
0010
00
β β
β
C S
S C
y
R
2.7.3 Ma trận biến đổi khi xoay hệ
trục toạ độ OX 1 Y 1 Z 1 quanh trục Z
một góc θ so với hệ trục toạ độ
OXYZ
Cũng như hai trường hợp trên ta lại có:
Cos(x1,x) = Cosθ = Cθ ; Cos(y1,x) =
-β β
Hình 7:Sơ đồ quay quanh trục Y
Hình 8:Sơ đồ quay quanh trục Z
Trang 21Sinθ = -Sθ; Cos(z1,x) = 0
Cos(x1,y) = Sinθ = Sθ ; Cos(y1,y) = Cosθ = Cθ ; Cos(z1,y) = 0
Cos(x1,z) = 0 ; Cos(y1,z) = 0 ; Cos(z1,z) = 1
Ma trận biến đổi xoay trong trường hợp này là :
( 2 12 )
1 0 0 0
0 1 0 0
0 0
0 0 )
S C
z
R
2.7.4 Bộ thông số DH(Denavit J & Hartenberg R.S)
Vị trí của khâu cuối được xác định thông qua vị trí toạ độ và hướng của khâu cuối và nó được xác định thông qua ma trận tổng quát sau:
( 2 13 )
1 0 0
y y y y
x x x x
E
p w v u
p w v u
p w v u
Trong đó P = (Px, Py, Pz) là thành phần xác định vị trí điểm đầu mút của khâu cuối, (ux,uy,uz) là véc tơ đơn vị chỉ phương của trục U so với hệ trục toạ độ cố định XYZ, tương tự (vx,vy,vz), (wx,wy,wz) là vector chỉ phương của trục V, W so với hệ trục toạ độ cố định XYZ, ở đây UVW là hệ toạ độ động gắn trên khâu cuối
Như vậy từ vị trí biến khớp của các khâu thành phần chúng ta phải đi xác định 12 thành phần trong ma trận TE Trong 12 thành phần này thì chỉ có 6 thành phần là độc lập tuyến tính, các thành phần còn lại là phụ thuộc tuyến tính với các thành phần trên
Để xác định vị trí của khâu cuối so với khâu thành phần, trước tiên ta đi xác định
vị trí tương quan của 2 khâu kế tiếp nhau, vấn đề này có thể bắt nguồn từ các phương pháp biến đổi toạ độ như đã trình bày ở phần trên, nhưng để đơn giản hơn chúng ta sử dụng bộ thông số DH do Denavit J & Hartenberg R.S đã thiết lập để mô tả mối quan hệ giữa 2 khâu liên tiếp trong cơ cấu không gian thông qua ma trận thuần nhất 4x4 Bộ thông số DH bao gồm 4 thành phần :
1 Khoảng cách đường vuông góc chung của trục khớp động thứ i và thứ i+1, a i
Trang 222 Góc chéo giữa 2 trục khớp động i và i +1,αi
3 Khoảng cách đo dọc trục khớp động thứ I từ đường vuông góc chung giữa trục khớp động thứ i – 1 với trục khớp động thứ i tới đường vuông góc chung
giữa trục khớp động thứ i và trục khớp động thứ i+1 d i
4 Góc giữa 2 đường vuông góc chung nói trên, θ i
2.7.5 Thiết lập hệ trục toạ độ
Để sử dụng đươc bộ thông số DH đã đề cập ở trên thì khi thiết lập hệ trục toạ độ cho các khâu, chúng ta phải tuân thủ theo những nguyên tắc sau đây:
- Gốc của hệ toạ độ gắn liền với khâu thứ i, gọi là gốc toạ độ thứ i đặt tại giao
điểm giữa đường vuông góc chung thứ a i và trục khớp động thứ i+1 Trường hợp
2 trục giao nhau thì gốc toạ độ độ đặt tại giao điểm đó Trường hợp 2 trục song
song với nhau thì gốc toạ độ đặt tại điểm bất kỳ trên trục khớp động thứ i+1
- Trục Z i của hệ toạ độ thứ i, Nằm dọc theo trục khớp động thứ i+1
- Trục X i của hệ toạ độ thứ i, hướng dọc theo đường vuông góc chung a i ,
Trường hợp 2 trục giao nhau thì hướng của trục X i trùng với hướng của tích 2
véc tơ Z i x Z i-1 , nghĩa là vuông góc với mặt phẳng chứa Z i và Z i-1.
- Trục Y i được xác định theo quy tắc bàn tay phải
Hình 9: Thiết lập mối tương quan giữa 2 hệ trục toạ độ,
khi sử dụng bộ thông số DH
Trang 232.7.6 Mô hình biến đổi
Trên cơ sở đã xây dựng các hệ toạ độ với hai khâu động liên tiếp như trên đã trình bày, Có thể thiết lập mối quan hệ giữa 2 hệ toạ độ liên tiếp theo 4 bước sau đây:
1 Quay quanh trục Zi-1, một góc θi
2 Tịnh tiến dọc trục Zi-1 một lượng di
3 Tịnh tiến dọc trục Xi-1 đã trùng với Xi một đoạn ai.
4 Quay quanh trục Xi một góc αi
Bốn bước biến đổi này được biểu hiện bằng tích các ma trận thuần nhất sau:
A i = R(z,θ I ) x T P (0,0,d i ) x T P ( a i ,0,0) x R(x,α I ) (*)
- Biểu thức I là quan hệ giữa hệ toạ độ i so với hệ toạ độ i-1, và được gọi là
mô hình DH, cách thiết lập mô hình động học theo kiểu mô hình DH tỏ ra khá thuận tiện trong việc giải quyết các vấn đề về robot
- Các ma trận ở vế phải của phương trình (*) tính theo các công thức đã thiết lập ở trên và sau khi thực hiện phép nhân ta có:
(2.14)
10
00
i
i i i i i
i i
i i i i i i i
i
d C
S
S a S C C
C S
C a S S C S C
A
α α
θ α
θ α
θ θ
θ α
θ α θ θ
Đối với khớp quay thì θi là biến khớp
2.7.7 Phương trình động học
Ma trận Ti là tích của các ma trận Ai, và là ma trận mô tả vị trí và hướng của hệ
toạ độ gắn liền với khâu thứ i, so với hệ tọa độ cố định Trong trường hợp i = n, với n
là số hiệu chỉ hệ toạ độ gắn liền với điểm tác động cuối (E) thì ta có
Tn = A1.A2….An
Mặt khác hệ toạ độ tại điểm tác động cuối được mô tả bằng ma trận TE, vì vậy hiển nhiên là TE = Tn
Hay:
Trang 24100
y y y y
x x x x
n
P a s n
P a s n
P a s n
Phương trình II là phương trình động học cơ bản của robot
2.8 Cơ sở lý thuyết về ma trận Jacobi
Gọi v0 là vận tốc của 1 điểm trên bộ tác động cuối của cơ cấu nối tiếp trùng với gốc tức thời hệ quy chiếu cố định Khi đó vận tốc của bộ tác động cuối được tính theo công thức sau:
( 2 16 )
$
1
i n
i i n
n
q v
$ˆ với khớp tịnh tiến (2.17)
Phương trình (2.16), ma trận Jacobi đơn giản là tập hợp các sự quay vít đơn vị liên hệ với các trục khớp Các toạ độ của các khớp quay đơn vị là các phần tử của ma trận Jacobi:
[ n]
J = $ˆ1,$ˆ2 $ˆ (2.18)
Để tính ma trận jacobi, trước tiên cần xác định chiều và vị trí của các trục khớp ứng với hệ quy chiếu bằng cách xét hình học của cơ cấu Nếu các hệ toạ độ khớp (x0,y0,z0) đến (x6,y6,z6) được thiết lập theo quy ước DH, si và soi được lấy từ cột thứ 3 và thứ tư của ma trận 0 1
Xét hệ quy chiếu tức thời (x0′,y0′,z0′) trùng với hệ toạ độ khâu (xj,yj,zj) chiều và vị trí các trục khớp theo hệ quy chiếu (x0′,y0′,z0′) được cho tương ứng theo cột thứ 3 và cột thứ tư của j i
A:
Trang 25( ) (2.30)
10001
;19
.201000
1 , 0 1
j
i
A
s A
s
Các toạ độ quay trên được tính bằng các công thức đệ quy:
1 Điều kiện ban đầu: Bắt đầu với sj+1=[0,0,1]T,s0,j+1=[0,0,0]T
2 Tính toán thuận: với i = j + 1, j + 2 đến n-1, tính được:
( )( ) ( )( ) ( )
( )( 1)
1
, 0 1 ,
0
1
31.2
+ +
+ +
i i i j i i
i i i j i
R R R
r R s
s
z R s
3 Tính toán ngược Với i = j -1, j - 2 cho tới 0, tính được:
, 0 1 ,
0
1
32.2
−
−
+
+ + +
+ +
i i i j i i
i i i j i
R R R
r R s
s
z R s
i i
α là vector vị trí xác định từ Oi-1 đến Oi và được biểu diễn trong toạ độ khâu thứ i
Tập hợp các sự quay đơn vị tính từ các công thức đệ quy nêu trên:
(2.33)
0
q J
Trang 26Hình bên dưới (xi,yi,zi) và (xj,yj,zj) là hai hệ quy chiếu, vị trí Oj liên hệ với hệ (xi,yi,zi) theo
z y
s
i i i
s
j j j
j j
36.2
0
s
s R
s
j j i i
×
=
s R s R p s s R
s R
j j i j j i i j j j i
j j i
0
j i
j i
R R
x y
x z
y z j
i
p p
p p
p p
W là véc tơ 3 x 3 biểu diễn vector OiOj trong hệ toạ độ thứ i
Do i j
W đối xứng và i j
R vuông, nên ma trận nghịch đảo là:
Hình 10: Sơ đồ biến đổi sự quay vít
Trang 27
0
R
R
T
Như vậy nếu biết sự quay trong khung thứ j, có thể tính biểu thức sự quay đó trong hệ
toa ïđộ thứ i bằng cách áp dụng phương trình (2.41), và ngược lại sử dụng phương trình
song song theo các trục toạđộ của hệ (xj,yj,zj) và biểu thức trong hệ (xi,yi,zi) Sáu sự
quay chuẩn hóa này, có biểu thức trong hệ (xj,yj,zj) là:
( )
T T T T T T
]1,0
0,0
F q
L q
L
dt
d
Mi i i
Trong đó: L là hàm larange L = K-P
- K: Động năng của hệ
- P: Thế năng của hệ
- FMi: Nguồn động lực, Hình thành trong khớp động thứ i, khi thực hiện chuyển
động
- qi: Biến khớp, hay toạ độ suy rộng
- q& i: Đạo hàm của biến khớp theo thời gian
2
12
r p T ir i ip n
i
i p i r
r p T ir i
ip J U q q Tr U J U q q U
Tr
Trang 28với Tr là vết của ma trận : ∑
=
= n
i ii
a TrA
0
i j j j
ij
A D
0000
0001
0010
+
−
++
−
=
i i
i yz
i i
i i zz yy xx i
i xz
i i yz
zz yy xx xy
i i xz
xy zz
yy xx
i
m z
m I
x m
z m I I I y
m I
y m I
I I I I
x m I
I I
I I
j
j j ji j m
k n
T ji j jkm k
T ji j jk
Hoặc ở dạng rút gọn:
= n
k
n k n m
i m k ikm k
i U J U Tr
=
n i
q q h h
h h h h h
m k ikm i
T
2.1,,
),,,,,
5 4 3 2
h
n m k i j
T ji j jkm
) , max(
T
r gU m c
c c c c c
c
q
c
1 6
5 4 3 2
1, , , , , ) ,
(
)
(
2.10 Cơ sở lý thuyết về họ vi xử lý 8051
2.10.1 Giới thiệu chung
Nêáu J≤i Nêáu J>i
Trang 29MCS-51™ là một họ IC vi điều khiển do Intel phát triển và sản xuất Một số nhà sản xuất được phép cung cấp các IC tương thích với các sản phẩm MCS-51™ của Intel là Siemens, Advanced Micro Devices, Fujitsu, Philips, Atmel… AT89S52 là một Microcomputer 8 bit, loại CMOS, có tốc độ cao và công suất thấp với bộ nhớ Flash có thể lập trình được Nó được sản xuất với công nghệ bộ nhớ không bay hơi mật độ cao của hãng Atmel, và tương thích với chuẩn công nghiệp của 80C51 và 80C52 về chân và bộ lệnh Các IC của họ MCS-51™ có các đặc trưng chung như sau:
- 4 port I/O 8 bit
- Giao tiếp nối tiếp
- 64K không gian bộ nhớ chương trình mở rộng
- 64K không gian bộ nhớ dữ liệu mở rộng
- Một bộ xử lý luận lý (thao tác trên các bit đơn)
- 210 bit được địa chỉ hóa
- Bộ nhân/chia 4 μs
2.10.2 Cấu Trúc AT89S52
Với yêu cầu của khối điều khiển như trên việc thực hiện bằng Vi xử lý hoặc Vi điều khiển đều có thể Tuy nhiên, thực hiện bằng Vi xử lý sẽ hạn chế hơn Vi điều khiển ở các vấn đề sau:
- Sử dụng Vi xử lý cần phải thiết kế thêm bộ nhớ ngoài vì thế, mạch điện sẽ phức tạp hơn Trong khi Vi điều khiển đã có sẵn bộ nhớ nội và RAM bên trong đủ để sử dụng nên không cần phải kết nối thêm các thiết bị khác
- Do có một số đường điều khiển riêng lẻ nên cần phải truy xuất từng bit và việc này thực hiện dễ dàng trên Vi điều khiển
- Do cùng lúc phải giao tiếp với nhiều thiết bị khác nên cần nhiều Port xuất nhập mà các Port Vi điều khiển thì đủ để thực hiện, trong khi sử dụng Vi xử lý thì cần phải mở rộng Port giao tiếp sẽ gây phức tạp cho mạch điện cũng như tăng chi phí thực hiện, ngoài ra các vi xử lý cũng có thể thực hiện được việc giao tiếp với nhau thông qua các port xuất nhập này, nên phạm vi ứng dụng với các thiết bị có nhiều tín hiệu vào ra là rất thích hợp
- Các đặc trưng của vi điều khiển 89S52
8k CPU bộ nhớ lập trình lại
1000 lần đọc / ghi cho môt chu kỳ
256 x 8 bit RAM
Trang 30 32 đường truy nhập dữ liệu
Timer/ Counter 16 bít
Tóm lại, vấn đề xử lý trong mạch này là không quá lớn, việc sử dụng Vi xử lý
vào một ứng dụng nhỏ là lãng phí và gây nhiều tốn kém khi phải kết nối thêm các thành phần khác hỗ trợ cho Vi xử lý Từ những lý do trên, để thiết kế khối điều khiển người thực hiện đã chọn phương án dùng Vi điều khiển để thực hiện nhiệm vụ này mà cụ thể là Vi điều khiển AT89S52 với 4 Port xuất nhập đủ để giao tiếp với các khối khác và bộ nhớ chương trình 8 Kbyte đủ để ghi toàn bộ chương trình điều khiển trên
2.10.3 Sơ đồ khối
Nạp chương trình
Đếm sự kiệnTime0
Time1
TDRD
Cổng nối tiếp
P0 , P1 , P2, P3 (địa chỉ ,dữ liệu)
Các cổng xuất nhập
RAM (Dữ liệu)
ROM (Chương trình)
Các ngắt ngoài
Bộ tạo
dao động
CPU
Điều khiển ngắt
BUS XUẤT NHẬP 8 BÍT
Mô tả hoạt động: Bộ vi xử lý trung Tâm (CPU) hoạt động nhờ bộ dao động,
Chương trình phải nạp vào ROM( Read only memory,bộ nhớ chỉ đọc), trước khi vi điều khiển hoạt động, Sự tác động của Rom vào CPU chỉ theo một chiều, chương trình chứa trong ROM sẽ điều khiển sự hoạt động của CPU, Và chương trình sẽ không được chỉnh sửa trong quá trình CPU làm việc, mũi tên hướng ngược vào đường bus dữ liệu như hình vẽ muốn nói ROM ở trạng thái chủ động Ngược lại RAM(Random
access memory) là bộ nhớ truy cập ngẫu nhiên Nó được truy xuất và ghi dữ liệu bởi
Các lệnh chứa trong Rom thông qua CPU Mũi tên hướng vào Ram hiểu rằng Ram bị
Trang 31ghi và xuất dữ liệu ở trạng thái bị động Dữ liệu chứa trong Ram và Rom có thể bị mất
đi trong một khoảng thời gian nào đó nếu không duy trì nguồn cung cấp Các bộ định thời(Time0, Time1, Thậm chí Time2 ở 8052), về nguyên tắc sẽ làm ngưng tạm thời công việc của vi xử lý trong một khoảng thời gian hoặc đếm số lần các sự kiện xuất hiện (Bộ đếm) Các cổng xuất nhập là nhân tố chính của vi điều khiển để giao tiếp với các thiết bị bên ngoài, hoặc truy cập địa chỉ,dữ liệu từ các bộ nhớ phụ (Ram hoạc Rom), Bộ điều khiển ngắt sẽ điều khiển CPU thực hiện ngay tức khắc các sự kiện xuất hiện ngẫu nhiên, mà được người lập trình dự tính trước Cổng nối tiếp sẽ Liên kết
vi xử lý với máy tính (Truyền và nhận dữ liệu) nếu Vi sử lý là cầu nối giữa máy tính với các thiết bị bên ngoài Tất cả mọi quá trình truyền và nhận dữ liệu của vi điều khiển đều thông qua đường truyền dữ liệu 8 bít
2.10.4 Sơ đồ chân
Trang 322.10.5 Cấu trúc của vùng Ram
Thanh ghi chức năng
đặc biệt Vùng Ram
Không định địa chỉ bít Không định địa chỉ bít Không định địa chỉ bít Không định địa chỉ bít Không định địa chỉ bít
89 8A 8B
8C 8D
P1 90
SCON
99
P2 A0
IE A8
P3 B0
IP B8
PSW D0
B F0
FF
81
83 82 84
85 86
89 8A 8B 8C 8D 8E
91
93 92 94
95 96
99 9A 9B 9C 9D 9E
A1 A3 A2 A4
A5 A6
A9 AA AB AC - -
B1 B3 B2 B4
B5 B6
B9
BB BA BC
-
D1 D3 D2 D4
D5 D6
E1 E3 E2 E4
E5 E6
7F
30
00 01 02 03 04 05 06 07
2C 6F 6E 6D 6C 6B 6A 69 68
2D 2E 77 76 75 74 73 72 71 70
78 79 7A 7B 7C 7D 7E 7F
2F
P0 80
2.10.6 Ngôn ngữ điều khiển
Ngôn ngữ sử dụng cho việc lập trình điều khiển sự hoạt động của vi điều khiển
họ 8051 là assembly Ngôn ngữ assembly là ngôn ngữ cấp thấp giữa ngôn ngữ máy và
ngôn ngữ cấp cao Ngôn ngữ cấp cao được đặc trưng như: Pascal, C Còn chương
Hình 12 :Cấu trúc vùng Ram của họ vi điều khiển 8051
Trang 33trình ngôn ngữ máy là một chuỗi các byte nhị phân được đặc trưng bởi các lệnh mà máy tính có thể thực thi Ngôn ngữ assembly thay thế các mã nhị phân của ngôn ngữ máy để sử dụng các “thuật nhớ“ dễ dàng trong quá trình lập trình Ví du,ï lệnh cộng trong ngôn ngữ máy được đặc trưng bởi mã nhị phân “10110011” trong khi ngôn ngữ assembly là“ADD“ Một chương trình ngôn ngữ assembly không thể thực thi bởi máy tính mà nó phải được dịch sang mã nhị phân ngôn ngữ máy Một bước nữa có thể yêu cầu một trình liên kết (linker) để kết hợp các phần của chương trình ở các tập tin riêng rẽ và thiết lập địa chỉ trong bộ nhớ nơi mà chương trình được thực thi Chương trình chỉ chứa các mã nhị phân thay cho các lệnh (với các địa chỉ và các hằng dữ liệu) được hiểu bởi máy tính Có nhiều trình biên dịch với mục đích khác nhau có tác dụng là dễ hiểu các ứng dụng vi điều khiển ASM51 là tiêu biểu chuẩn biên dịch của họ MSC-51 ASM51 là trình biên dịch mạnh có tác dụng hữu hiệu trên hệ thống phát triển INTEL và họ IBM PC của máy vi tính ASM51 được gọi từ dấu nhắc hệ thống bằng lệnh :
ASM51 source file [Assembly Control]
Trình biên dịch nhận một file nguồn với tư cách là ngõ nhập (PROGRAM.SCR) và họ phát ra một file đối tượng (PROGRAM.OBJ) và file listing (PROGRAM.LST) Vì hầu hết các trình biên dịch tập tin nguồn 2 lần trong quá trình dịch tập tin nguồn sang ngôn ngữ máy, chúng còn được gọi là trình dịch hợp ngữ hai bước Trong bước 1, tập tin nguồn được quét từng dòng một và một bảng ký hiệu (symbol table) được tạo ra Bộ đếm vị trí LC (location counter) được mặc định bằng 0 hoặc được set ban đầu bởi chỉ dẫn ORG Khi tập tin được quét, bộ đếm vị trí được tăng bởi kích thước của mỗi một lệnh Các chỉ dẫn định nghĩa dữ liệu DB hoặc DW tăng bộ đếm vị trí bởi số byte được định nghĩa Các chỉ dẫn dự trữ (hay dành trước) bộ nhớ DS (reserve memory directive) tăng bộ đếm vị trí bởi số byte được dự trữ Mỗi một lần tìm thấy một nhãn ở trước một dòng lệnh, nhãn được đặt vào trong bảng ký hiệu cùng với giá trị hiện hành của bộ đếm
vị trí Các ký hiệu được định nghĩa bởi các chỉ dẫn gán (equate directive) như EQU được đặt vào trong bảng ký hiệu được lưu lại và sau đó được sử dụng cho bước 2 Trong bước 2, tập tin đối tượng và tập tin liệt kê được tạo ra, các mã gợi nhớ được chuyển đổi thành Opcode và được đưa vào các tập tin trên Các toán hạng được xác định giá trị và đặt phía sau Opcode lệnh Ở nơi các ký hiệu xuất hiện trong toán hạng, các giá trị của chúng được lấy ra từ bảng ký hiệu (được tạo ra trong bước 1) và được dùng để tính toán dữ liệu hoặc địa chỉ cho các lệnh Tập tin đối tượng, nếu thuộc dạng địa chỉ tuyệt đối chỉ chứa các byte nhị phân (00H - FFH) của chương trình ngôn ngữ máy Tập tin đối tượng thuộc loại tái định vị cũng sẽ chứa một bảng ký hiệu và các thông tin khác cần cho sự liên kết và định vị sau này Tập tin liệt kê chứa các mã văn bản ASCII (20H – 7EH) cho chương trình nguồn và các byte số hex trong chương trình mã máy
2.10.7 Kết nối với máy tính
Trang 348051/8031 có một port nối tiếp trong chip có thể hoạt động ở nhiều chế độ trên một dãi tần số rộng Chức năng chủ yếu của port nối tiếp là thực hiện chuyển đổi song song sang nối tiếp đối với dữ liệu xuất, và chuyển đổi nối tiếp sang song song với dữ liệu nhập
Truy xuất phần cứng đến port nối tiếp qua các chân TXD và RXD Các chân này có các chức năng khác với hai bit của Port 3, P3.1 ở chân 11 (TXD) và P3.0 ở chân 10 (RXD) Port nối tiếp cho hoạt động song công (full duplex : thu và phát đồng thời), và đệm lúc thu (receiver buffering) cho phép một ký tự sẽ được thu và được giữ trong khi ký tự thứ hai được nhận Nếu CPU đọc ký tự thứ nhất trước khi ký tự thứ hai được thu được thu đầy đủ thì dữ liệu sẽ không bị mất Hai thanh ghi chức năng đặc biệt cho phép phần mềm truy xuất đến port nối tiếp là : SBUF và SCON Bộ đệm port nối tiếp (SBUF) ở địa chỉ 99H thật sự là hai bộ đệm Viết vào SBUF để nạp dữ liệu sẽ được phát, và đọc SBUF để truy xuất dữ liệu thu được Đây là hai thanh ghi riêng biệt : thanh ghi chỉ ghi để phát và thanh ghi chỉ đọc để thu
Thanh ghi điều khiển port nối tiếp (SCON) ở địa chỉ 98H là thanh ghi có địa chỉ bit chứa các bit trạng thái và các bit điều khiển Các bit điều khiển đặt chế độ hoạt động cho port nối tiếp, và các bit trạng thái báo kết thúc việc phát hoặc thu ký tự Các bit trạnh thái có thể được kiểm tra bằng phần mềm hoặc có thể được lập trình để tạo ngắt Tần số làm việc của port nối tiếp, còn gọi là tốc độ baud có thể cố định (lấy từ bộ dao động trên chip) Nếu sử dụng tốc độ baud thay đổi, Timer 1 sẽ cung cấp xung nhịp tốc độ baud và phải được lập trình
CLK SBUF Q (chỉ ghi)
TXD
(P3.1)
Thanh ghi dịch
D CLK
Xung nhịp
tốc độ baud
(phát)
Xung nhịp tốc độ baud (thu)
Trang 35Chế độ hoạt động của port nối tiếp được đặt bằng cách ghi vào thanh ghi chế độ port nối tiếp (SCON) ở địa chỉ 98H Sau đây là các bảng tóm tắt thanh ghi SCON và các chế độ của port nối tiếp
Trong các chế độ này thì chúng ta chỉ quan tâm đến chế độ 1, tức là chế độ UART 8 bít với tốc độ truyền có thể thay đổi được, và việc truyền nhận dữ liệu là truyền theo kiểu nối tiếp Ở chế độ này, port nối tiếp của 8051/8031 làm việc như một UART 8 bit với tốc độ baud thay đổi được Một UART (UniversalAsynchronous Receiver/Transmitter : Bộ thu/phát bất đồng bộ vạn năng) là một dụng cụ thu và phát dữ liệu nối tiếp với mỗi ký tự dữ liệu đi trước là bit start ở mức thấp và theo sau là bit stop ở mức cao Đôi khi xen thêm bit kiểm tra chẵn lẻ giữa bit dữ liệu cuối cùng và bit stop Hoạt động chủ yếu của UART là chuyển đổi song song sang nối tiếp với dữ liệu xuất và chuyển đổi nối tiếp sang song song với dữ liệu nhập Ở chế độ 1, 10 bit được phát trên TXD hoặc thu trên RXD Những bit đó là : 1 bit start (luôn luôn là 0), 8 bit dữ liệu (LSB đầu tiên) và 1 bit stop (luôn luôn là 1).Với hoạt động thu, bit stop được đưa vào RB8 trong SCON Trong 8051/8031 chế dộ baud được đặt bằng tốc độ báo tràn của Timer 1 Tạo xung nhịp và đồng bộ hóa các thanh ghi dịch của port nối tiếp trong các chế độ 1, 2 và 3 được thiết lập bằng bộ đếm 4 bit chia cho 16, ngõ ra là xung nhịp tốc độ baud Ngõ vào của bộ đếm này được chọn qua phần mềm
Tạo xung nhịp port nối tiếp
Truyền dữ liệu (phát) được khởi động bằng cách ghi vào SBUF, nhưng vẫn chưa thật sự bắt đầu chạy cho đến khi sự thay thế kế tiếp của bộ đếm chia cho 16 cung cấp tốc độ baud cổng nối tiếp Dữ liệu được dịch ra ngoài trên đường TXD bắt đầu bằng
Xung nhịp tốc độ baudThanh ghi dịch port nối tiếp
÷ 16
16 × tốc độ baud
Trang 36bit start, theo sau là 8 bit dữ liệu và sau cùng là bit stop Độ rộng (theo thời gian của mỗi bit) là nghịch đảo của tốc độ baud được lập trình trong timer Cờ ngắt phát (TI) được đặt lên 1 khi xuất hiện bit stop trên TXD
Việc thu dữ liệu được khởi động bằng một chuyển trạng thái từ 1 xuống 0 trên RXD Bộ đếm 16 tức thời được xóa để đồng bộ số đếm với luồng bit đến Luồng bit đến được lấy mẫu giữa 16 lần đếm Bộ thu sẽ phát hiện được bit start sai bằng cách yêu cầu trạng thái 0 ở (bit start) ở lần đếm thứ 8 sau khi có chuyển trạng thái từ 1 xuống 0 đầu tiên Nếu điều này không xảy ra, người ta giả sử là bộ thu được kích bởi nhiễu chứ không phải do một ký tự hợp lệ Bộ thu được reset và quay về trạng thái nghỉ (idle), tìm kiếm (đợi) chuyển trạng thái từ 1 xuống 0 kế
Giả sử đã phát hiện được bit start hợp lệ, thì tiếp tục thu ký tự Bit start được bỏ qua và 8 bit dữ liệu được đưa vào thanh ghi dịch cổng nối tiếp theo xung nhịp Khi đã có được tất cả 8 bit, điều sau đây xảy ra :
1 Bit thứ 9 (bit stop) được chốt vào RB8 trong SCON
2 SBUF được nạp với 8 bit dữ liệu
3 Cờ ngắt bộ thu (RI) được đặt lên 1
Tuy nhiên, những điều này chỉ xảy ra nếu đã có những điều kiện sau :
1 RI = 0
2 SM2 = 1 và bit stop thu được là 1, hoặc SM2 = 0
Đòi hỏi RI = 0 để bảo đảm là phần mềm đã đọc ký tự trước (và RI được xóa) Điều kiện thứ hai hơi phức tạp nhưng chỉ áp dụng trong chế độ truyền thông đa xử lý Điều đó hàm ý là “không đặt RI lên 1 trong chế độ truyền thông đa xử lý khi bit dữ liệu thứ 9 là 0) Tốc độ truyền thông có thể là 1200, 2400, 4800, 9600,19200 bít/s, tuỳ thuộc vào giá trị định trước cho thanh ghi Pcon và giá trị nạp trước cho thanh ghi TH1 của bộ định thời
1, và nó phải đồng bộ với tốc độ của máy tính
bit
start D0 D1 D2 D3 D4 D5 D6 D7 stop bit
TXD
1 tốc độ baud
TI (SCON.1)
Ngắt phát (chuẩn bị cho dữ liệu)
Trang 372.10.8 Cấu trúc cổng xuất nhập và mô tả chức năng các chân trên vi điều khiển
Tất cả các Port (từ Port0 tới Port3) đều có thể làm cổng xuất nhập riêng Port0 phải mắc thêm điện trở kéo lên, cấu trúc của một port xuất nhập như sau:
Mô tả chân
VCC (chân 40): Chân cấp nguồn
GND (chân 20): Chân nối đất
Port 0
Port 0 là một port xuất/nhập song hướng cực máng hở 8 bit Nếu được sử dụng như là một ngõ xuất thì mỗi chân có thể kéo 8 ngõ vào TTL Khi mức 1 được viết vào các chân của port 0, các chân này có thể được dùng như là các ngõ nhập tổng trở cao Port 0 có thể được định cấu hình để hợp kênh giữa bus địa chỉ và bus dữ liệu (phần byte thấp) khi truy cập đến bộ nhớ dữ liệu và bộ nhớ chương trình ngoài Ở chế độ này, P0 có các điện trở pullup bên trong Port 0 cũng nhận các byte code (byte mã chương trình) khi lập trình Flash, và xuất ra các byte code khi kiểm tra chương trình Cần có các điện trở pullup bên ngoài khi thực hiện việc kiểm tra chương trình
Port 1
Port 1 là một port xuất/nhập song hướng 8 bit có các điện trở pullup bên trong Các bộ đệm ngõ ra của port 1 có thể kéo hoặc cung cấp 4 ngõ nhập TTL Khi mức 1 được viết vào các chân của port 1, chúng được kéo lên cao bởi các điện trở pullup nội và có thể được dùng như là các ngõ nhập Nếu đóng vai trò là các ngõ nhập, các chân của port 1 (được kéo xuống thấp qua các điện trở bên ngoài) sẽ cấp dòng IIL do các điện trở pullup bên trong
Hình 14:
Trang 38 Port 2
Port 2 là một port xuất/nhập song hướng 8 bit có các điện trở pullup bên trong
Các bộ đệm ngõ ra của port 2 có thể kéo hoặc cung cấp 4 ngõ vào TTL Khi các mức
1 được viết vào các chân của port 2 thì chúng được kéo lên cao bởi các điện trở pullup nội và có thể được dùng như các ngõ vào Khi được dùng như các ngõ vào, các chân của port 2 (được kéo xuống qua các điện trở bên ngoài) sẽ cấp dòng IIL do có các điện trở pullup bên trong Port 2 phát ra byte cao của địa chỉ khi đọc từ bộ nhớ chương trình ngoài và khi truy cập bộ nhớ dữ liệu ngoài dùng các địa chỉ 16 bit (MOVX @DPTR) Trong ứng dụng này, nó dùng các điện trở pullup nội "mạnh" khi phát ra các mức 1 Khi truy cập bộ nhớ dữ liệu ngoài dùng các địa chỉ 8 bit (MOVX @RI), port 2 phát ra các nội dung của thanh ghi chức năng đặc biệt P2 Port 2 cũng nhận các bit cao của địa chỉ và một vài tín hiệu điều khiển khi lập trình và kiểm tra Flash
P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7
RXD TXD
INT0INT1
T0 T1
WR
RD
Port nhập nối tiếp Port xuất nối tiếp Ngắt 0 bên ngoài Ngắt 1 bên ngoài Ngõ vào Timer/Counter 0 Ngõ vào Timer/Counter 1 Xung ghi bộ nhớ dữ liệu ngoài Xung đọc bộ nhớ dữ liệu ngoài
RST (chân 9)
Ngõ vào reset Một mức cao trên chân này khoảng hai chu kỳ máy trong khi bộ dao động đang chạy sẽ reset thiết bị
Trang 39 ALE/PROG
ALE là một xung ngõ ra để chốt byte thấp của địa chỉ trong khi truy cập bộ nhớ ngoài Chân này cũng là ngõ nhập xung lập trình (PROG) khi lập trình Flash Khi hoạt động bình thường, ALE được phát với một tỷ lệ không đổi là 1/6 tần số bộ dao động và có thể được dùng cho các mụch đích timing và clocking bên ngoài Tuy nhiên, lưu ý rằng một xung ALE sẽ bị bỏ qua mỗi khi truy cập bộ nhớ dữ liệu ngoài Nếu muốn, hoạt động ALE có thể cấm được bằng cách set bit 0 của SFR tại địa chỉ 8Eh Nếu bit này được set, ALE chỉ dược hoạt động khi có một lệnh MOVX hoặc MOVC Ngược lại, chân này được kéo lên cao bởi các điện trở pullup "nhẹ" Việc set bit cấm-ALE không có tác dụng khi bộ vi điều khiển đang ở chế độ thi hành ngoài
PSEN
PSEN (Program Store Enable) là xung đọc bộ nhớ chương trình ngoài Khi
AT89C52 đang thi hành mã (code) từ bộ nhớ chương trình ngoài, PSEN được kích hoạt hai lần mỗi chu kỳ máy, nhưng hai hoạt động PSEN sẽ bị bỏ qua mỗi khi truy
cập bộ nhớ dữ liệu ngoài
EA /Vpp
EA (External Access Enable) phải được nối với GND để cho phép thiết bị đọc code từ bộ nhớ chương trình ngoài có địa chỉ từ 0000H đến FFFFH Tuy nhiên, lưu ý
rằng nếu bit khoá 1 (lock-bit 1) được lập trình, EA sẽ được chốt bên trong khi reset
EA phải được nối với Vcc khi thi hành chương trình bên trong Chân này cũng nhận điện áp cho phép lập trình Vpp =12V khi lập trình Flash (khi đó áp lập trình 12V được chọn)
XTAL1 và XTAL2
XTAL1 và XTAL2 là hai ngõ vào và ra của một bộ khuếch đại dao động nghịch được cấu hình để dùng như một bộ dao động trên chip Nếu chỉ sử dụng vùng Rom và dung lượng Ram trên vi điều khiển thì để có thể hoạt động được, sơ dồ nối chân được thể hiện như hình bên Tần số của thạch anh sẽ quyết định đến tốc độ làm việc của vi điều khiển Do dòng ra trên các chân xuất rất nhỏ vì vậy khi nối với tải lớn bên ngoài, nhằm giảm đến mức tối thiểu các tín hiệu nhiễu ảnh hưởng đến sự hoạt động của vi điều khiển, thông thường phải dùng một linh kiện đệm mà phổ biến nhất là dùng OPTO, cấu trúc của opto được thể hiện như sau:
Trang 40hiệu ra sẽ nối
trên chân out
2.11 Giới thiệu cấu tạo và nguyên lý hoạt động của động cơ bước
Các nguồn lực cung cấp cho tay máy là các động cơ bước, tuy cho đến hiện nay với sự trang bị này chỉ thích ứng cho các tay máy có công suất nhỏ Nhưng một ưu điểm lớn ở động cơ bước là điều khiển không cần phản hồi, vì vậy mạch điều khiển tương đối đơn giản so với việc sử dụng động cơ thường hoạc DC Servo Trong tương lai gần người ta có xu hướng tăng công suất động cơ bước lên nhiều lần và có thể được sử dụng rộng rãi
2.11.1 Nguyên tắc hoạt động chung của động cơ bước
Nguyên tắc họat động chung của các dạng động cơ bước được trình bày như sau :
Cấu tạo của OPTO