Tay đo tọa độ xác định dữ liệu về tọa độ của điểm trên biên dạng vật đo thôngqua việc xác định giá trị các góc xoay tại mỗi khớp, sau đó tọa độ được tính thông quabài toán động học thuận
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KỸ THUẬT MÁY TÍNH KHOÁ LUẬN TỐT NGHIỆP
NGHIÊN CỨU THIẾT KẾ VÀ CHẾ TẠO TAY
ĐO TỌA ĐỘ
Giảng viên hướng dẫn : PGS.TS THÁI THỊ THU HÀ
Sinh viên thực hiện: TẠ VĂN CHÍNH - 06520047
Lớp : KTMT01
Khoá : 2010 - 2014
TP Hồ Chí Minh, tháng 02 năm 2015
Trang 2Chương 1: TỔNG QUAN VỀ TAY ĐO TỌA ĐỘ 1
1.1 Chức năng của tay đo tọa độ 3
1.2 Ứng dụng của tay đo tọa độ 4
1.2.1 Ưu điểm của Tay đo 4
1.2.2 Nhược điểm của Tay đo 4
1.3 Một số sản phẩm trên thị trường 5
Chương 2: NGUYÊN LÝ LÀM VIỆC CỦA TAY ĐO 7
2.1 Nguyên lí làm việc của thiết bị 7
2.2 Kết cấu tay đo 7
2.2.1 Phân tích và lựa chọn dạng tay đo (các kiểu bố trí các khớp xoay) 7
2.3 Sơ đồ động (các kiểu bố trí các khớp xoay) 10
2.4 Quy tắc Denavit-Hartenberg 11
Chương 3: GIỚI THIỆU VỀ PIC, ENCODER VÀ CHUẨN USB 16
3.1 Giới thiệu về encoder 16
3.1.1 Nguyên lý hoạt động cơ bản của encoder, LED và lỗ 17
3.2 Giới thiệu về giao tiếp USB 18
3.2.1 Kiến trúc và các thành phần của giao tiếp USB 18
3.2.2 Các định dạng gói để truyền 23
3.2.3 Phương thức truyền thông 24
3.2.4 Các bước kết nối thiết bị 26
3.3 Giới thiệu về vi điều khiển PIC và PIC 18F4550 29
3.3.1 Vi điều khiển PIC 29
3.3.2 PIC 18F4550 và module USB 31
3.3.3 Lập trình USB với PIC 18F4550 35
Chương 4: KHỐI MẠCH NHẬN TÍN HIỆU VÀ GIAO TIẾP MÁY TÍNH 38
4.1 Sơ đồ nguyên lí 38
4.2 Khối nguồn 38
4.3 Khối đọc encoder và khối vi xử lý: 39
Trang 3Chương 5: LẬP TRÌNH ỨNG DỤNG VỚI WINDOWS PRESENTATION FOUNDATION(WPF)
44
5.1 Giới thiệu WPF 44
5.2 Lập trình trong WPF 45
5.3 Giao diện Ribbon 47
Chương 6: PHẦN MỀM THU NHẬN VÀ HIỂN THỊ DỮ LIỆU 48
6.1 Các chức năng cơ bản của 1 chương trình tay đo 48
6.1.1 Phần mềm đo DCSElab Measuring ARM 49
6.1.2 Giao diện và chức năng 49
6.1.3 Chức năng record đơn điểm 50
6.1.4 Chức năng tự động nạp điểm 50
6.1.5 Chức năng chuyển đổi đơn vị 51
6.1.6 Chức năng quét bề mặt 51
6.1.7 Chức năng định nghĩa tọa độ người dùng 51
6.1.8 Đo khoảng cách giữa hai điểm 52
6.1.9 Xác định bán kính cung tròn 53
6.1.10 Xác định góc giữa hai mặt phẳng 53
6.2 Lập trình nhận tính hiệu từ mạch điều khiển và thu nhập giữ liệu 54
6.3 Lập trình hiển thị dữ liệu 3D 55
6.3.1 Đồ họa ba chiều trong WPF 55
6.3.2 Hiển thị tọa độ 56
6.3.3 Điểm 58
6.3.4 Dịch chuyển đối tượng 59
6.4 Lập trình các chức năng khác 65
6.4.1 Lưu trữ vào tạo mới 65
6.4.2 Thiết lập hệ độ người dùng 65
6.4.3 Các chức năng bổ sung 71
Chương 7:ĐÁNH GIÁ ĐỘ CHÍNH XÁC CỦA TAY ĐO TỌA ĐỘ 72
7.1 Kết quả thực hiện 72
7.2 Xác định độ chính xác của thiết bị 73
Trang 47.3.2 Ứng dụng đo khoảng cách trong không gian 78
7.3.3 Ứng dụng đo góc trong không gian 80
7.4 Kết luận và hướng phát triển đề tài 82
7.4.1 Kết luận 82
7.4.2 Hướng phát triển đề tài 82
TÀI LIỆU THAM KHẢO 84
Tiếng Việt: 84
Tiếng Anh: 84
Trang 5Bảng 3 1 Những tính năng của PIC 18F4550 32
Bảng 4 1 Thư viện WPF 44
Hình 1 1 CMM kích thước trung bình 2
Hình 1 2 Mẫu tay đo đầu tiên 2
Hình 1 3 Tay đo dùng để số hóa khung sườn chi tiết mẫu và thiết kế ngược 4
Hình 1 4 Dùng tay đo để xây dựng bề mặt từ các mô hình 4
Hình 1 5 Tay đo của Microscribe (trái) và FARO (Phải) 6
Hình 1 6 Tay đo của hãng Faro có sử dụng súng laser 6
Hình 2 1 Sơ đồ nguyên lí 7
Hình 2 2 Thiết bị đo tay máy dạng trụ 8
Hình 2 3 Thiết bị đo tay máy dạng cầu 8
Hình 2 4 Thiết bị đo tay máy dạng SCARA 9
Hình 2 5 Thiết bị đo tay máy dạng người 9
Hình 2 6: Một số kết cấu tay đo 10
Hình 2 7 Tay đo có kết cấu 2-1-2 11
Hình 2 8 Hệ tọa độ quy tắc Denavit - Hartenberg 12
Hình 2 9 Sơ đồ động học tay đo 5 bậc tự do 13
Hình 3 1 Sơ đồ cấu tạo encoder 16
Hình 3 2 Nguyên lí hoạt động của Encoder 17
Hình 3 3 Sơ đồ xung encoder 18
Hình 3 4 Kiến trúc dạng tầng của giao tiếp USB 19
Hình 3 5 Control transfer 25
Hình 3 6 OUT BULK Transfer 25
Hình 3 7 IN BULK Transfer 25
Hình 3 8 Interrupt transfer 26
Hình 3 9 Insochronous transfer 26
Hình 3 10 Vi xử lí PIC 18F4550 31
Hình 3 11 Sơ đồ chân PIC 18F4550 33
Hình 3 12 Khối giao tiếp USB trong PIC 18F4550 33
Hình 4 1 Sơ đồ khối quan hệ dữ liệu các khối trong mạch 38
Trang 6Hình 4 4 Sơ đồ khối vi xử lý 40
Hình 4 5 Sơ đồ khối USB 41
Hình 4 6 Sơ đồ khối nút nhấn 41
Hình 4 7 Sơ đồ khối nạp 42
Hình 4 8 Sơ đồ nguyên lí mạch 42
Hình 4 9 Mạch đọc tín hiệu chuyển vị và giao tiếp máy tính 43
Hình 5 1 Quản lí thiết kế và lập trình 46
Hình 5 2 Giao diện ribbon cơ bản 47
Hình 6 1 Giao diện MUS 48
Hình 6 2 Giao diện cơ bản và các cùng chức năng chính của chương trình 49
Hình 6 3 Chức năng Auto Scan 50
Hình 6 4 Cấu hình 51
Hình 6 5 Bề mặt quét 51
Hình 6 6 Định nghĩa hệ tọa độ người dùng 52
Hình 6 7 Khoảng cách hai điểm 52
Hình 6 8 Bán kính 53
Hình 6 9 Góc giữa hai bề mặt 53
Hình 6 10 Mô hình phân cấp các đối tượng 3D trong WPF 56
Hình 6 11 Camera trong hệ tọa độ 3 chiều 56
Hình 6 12 Vị trí camera 57
Hình 6 13 Không gian hiển thị của camera 57
Hình 6 14 Hệ tọa độ cầu và hệ thức liên hệ 58
Hình 6 15 Mô hình quả cầu và một đơn vị lưới được sử dụng 58
Hình 6 16 Minh họa trackball trong chuyển đổi quay 59
Hình 6 17 Một phép quay theo trục Y 60
Hình 6 18 Minh họa hệ tọa độ và phép chiếu 61
Hình 6 19 Các hệ tọa độ tương ứng 61
Hình 6 20 Trục và góc quay trong trackball 63
Hình 6 21 Hệ tọa độ trong WPF 64
Hình 6 22 Các hệ tọa độ đo, (a) hệ tọa độ máy ; (b) hệ tọa độ vật đo 66
Hình 6 23 Thiết lập hệ tọa độ bằng mặt phẳng - đường thẳng – đưòng thẳng 67
Hình 6 24 Chuyển đổi hệ tọa độ 68
Hình 6 25 Trường hợp tịnh tiến hệ tọa độ 68
Hình 6 26 Trường hợp quay hệ tọa độ 69
Trang 7Hình 7 4 Bề mặt cần đo và chấm điểm bề mặt 75
Hình 7 5 Minh họa đo tọa độ vật và kết quả 76
Hình 7 6 Chuyển tọa độ được đo qua phần mềm Pro-Enginner 76
Hình 7 7 Phủ lưới bề mặt 77
Hình 7 8 Phủ lưới của sản phẩm bằng thiết bị MicroScribe G2X 78
Hình 7 9 Phủ lưới của sản phẩm bằng thiết bị của đề tài 78
Hình 7 10 Chi tiết cơ khí được gia công chính xác đặt trên bàn máp để xác định kích thước 79
Hình 7 12 Đo chiều cao bằng tay đo tọa độ và kết quả (54,76mm) 79
Hình 7 13 Đo chiều cao bằng thước đo cao của hãng Mitutoyo (54,74 mm) 80
Hình 7 14 Đo góc bằng thiết bị scan VIVID 910 80
Hình 7 15 Đo góc bằng phần mềm chuyên dụng XOR từ máy Scan 81
Hình 7 16 Đo góc giữa hai mặt phẳng bằng tay đo tọa độ 81
Trang 8Chương 1: TỔNG QUAN VỀ TAY ĐO TỌA ĐỘ
Ngày nay, để sản phẩm có sức cạnh tranh trên thị trường thế giới cũng nhưtrong nước thì quy trình sản xuất phải đảm bảo được độ chính xác, mẫu mã phải đadạng và thay đổi liên tục, giá thành chế tạo, đo lường và kiểm tra phải thấp… Sự xuấthiện các dòng máy CNC trong gia công cơ khí đã tạo nên đột phá đem đến khả năng
tự chế tạo trong nước các sản phẩm có hình dạng phức tạp trong thời gian ngắn, làđiều quyết định cho việc thay đổi mẫu mã Tuy nhiên, dù việc gia công bằng máythường hay máy CNC thì thao tác đo và kiểm tra tra kích thước hình học là không thểtránh khỏi, các chi tiết càng phức tạp thì càng khó khăn Vì vậy, chúng ta rất cần cácthiết bị xác định chính xác tọa độ trên bề mặt chi tiết đi kèm với máy CNC Thiết bịnày có thể xác định chính xác tọa độ của điểm trên bề mặt chi tiết đo ngoài việc dùngtrong đo lường, kiểm tra chất lượng sản phẩm của các bề mặt phức tạp một cách linhhoạt, còn có khả năng mô phỏng tái tạo lại các vật thể tự nhiên và chứa đựng những
dữ liệu theo những tập tin đồ họa CAD
Việc đo lường, đặc biệt là đo lường kích thước, ngày càng trở nên quan trọngtrong quá trình sản xuất công nghiệp Khả năng nâng cao chất lượng sản phẩm và cảitiến các quá trình sản xuất phụ thuộc vào chất lượng của các thiết bị đo lường Hiệnnay ta có thể khẳng định rằng trình độ đo lường trong quá trình sản xuất chế tạo thểhiện năng lực và tiềm năng phát triển của ngành công nghiệp một quốc gia
Các mục tiêu chính của kĩ thuật đo kích thước hiện đại là: Độ chính xác cao; Khảnăng hiệu chỉnh (calibration) đáng tin cậy; Có khả năng tích hợp vào hệ thống sảnxuất chung
Để có thể đạt được những mục tiêu trên đòi hỏi cần phải có những thiết bị đolường hiện đại, chính xác và hiệu quả, đồng thời phải nghiên cứu và phát triển những
kĩ thuật đo lường tiến bộ hơn Một trong những kĩ thuật mới nhất hiện nay, được xemnhư là tác nhân thúc đẩy sự phát triển vượt bậc của kĩ thuật đo lường, là kĩ thuật đotọa độ (Coordinate Measuring Technique) được áp dụng trong các máy đo tọa độ
Trang 9Hình 1 1 CMM kích thước trung bình
Nhưng những thiết bị đo tọa độ có độ chính xác cao nhưng giá thành đắt khi đo
và kiểm tra chi tiết phải có những đồ gá chuyên dụng Từ đây phát sinh ra nhu cầuphát triển ra một loại máy có chức năng giống với máy đo tọa độ nhưng có độ linhhoạt cao hơn, góp phần khắc phục những hạn chế của máy CMM
Đến thập niên 70, với mẫu phát minh đầu tiên 18/4/1974, có số hiệu 3,994,798với tay đo có đầu dò vật có biên dạng ống, do ông Homer Eaten phát minh
Hình 1 2 Mẫu tay đo đầu tiên
Những năm gần đây, trên thế giới đã phát triển và ứng dụng những thiết bị đotọa độ dạng tay máy để đáp ứng cho những nhu cầu đo trên mà không cần đồ gá phứctạp, vẫn đảm bảo được độ chính xác Tay đo được ứng dụng trong nhiều lĩnh vực như:công nghiệp ô tô, xe máy, thiết kế phát triển sản phẩm, y sinh học, khảo cổ học, thiết
kế ngược…
Trang 10Hiện nay trên thế giới có nhiều nhà sản xuất máy tay đo nhưng lớn nhất là haihãng FARO và ROMER Ngoài ra còn một số hãng khác như: Immersion;TRIMAQS; ScanWorks; Metris; Mitutoyo…
1.1 Chức năng của tay đo tọa độ
Tay đo tọa độ chính là sản phẩm lai giữa một máy đo tọa độ và tay máy, nhưng
nó khác với máy CMM cũng như tay máy ở chỗ, tại mỗi khớp của tay đo người takhông cài đặt các động cơ được điều khiển để dịch chuyển đầu dò đến vị trí cần đo,ngược lại với tay đo người ta dùng tay để quay các khớp nhằm dịch chuyển đầu dòcủa tay đo đến vị trí mong muốn
Đầu dò dược sử dụng ở tay đo tương ứng với phương pháp đo tiếp xúc, việclựa chọn đầu dò tùy thuộc vào biên dạng ngoài của vật thể, với mục tiêu đạt đượcđược độ chính xác cao hơn trong phép đo Ngoài ra người ta còn sử dụng phươngpháp đo không tiếp xúc bằng cách gắn các máy quét laser ở khâu cuối của tay đo.Với phương pháp đo không tiếp xúc phép đo có độ chính xác cao hơn
Tay đo tọa độ xác định dữ liệu về tọa độ của điểm trên biên dạng vật đo thôngqua việc xác định giá trị các góc xoay tại mỗi khớp, sau đó tọa độ được tính thông quabài toán động học thuận Dữ liệu về tọa độ điểm sau khi được tính toán được gửi vềmáy tính Máy tính sẽ thực hiện nhiệm vụ xử lý dữ liệu, cụ thể ở đây máy tính sẽ làmnhiệm vụ liên kết các điểm nhận được thành đám mây điểm, hoặc một đối tượng đồhọa khác như các mặt (surface) hoặc các khối rắn (solid) Giống với một máy CMMtay đo tọa độ cho ra mô hình 3D sau khi quét vật mẫu cụ thể, nhờ vào khả năng liênkết với các phần mềm CAD, CAM và tạo mô hình 3D phổ biến như sau:
Tạo mô hình 3D / hoạt họa: 3ds max, LightWave 3D, AutodeskVIZ,…
Phần mềm CAD/ CAM: SolidWorks, Pro/ENGINEER,AutoCAD, Mastercam,…Với khả năng liên kết với phần mềm CAD, CAM đã giúp người sử dụng ngày càng dễdàng sử dụng, đồng thời việc này gắn kết các nhà sản xuất lại gần nhau hơn
Trang 11Hình 1 3 Tay đo dùng để số hóa khung sườn chi tiết mẫu và thiết kế ngược
Hình 1 4 Dùng tay đo để xây dựng bề mặt từ các mô hình
1.2.1 Ưu điểm của Tay đo
- Gọn nhẹ, cơ động, dễ dàng di chuyển
- Giá thành phù hợp
- Kết cấu cơ khí linh hoạt giúp đầu dò tiếp cận với bề mặt có biên dạng phức tạpnhư các đường rãnh, các lỗ nhỏ có đường trục không vuông góc với bề mặt vật đo dễdàng, không yêu cầu gá đặt chuyên dụng Đây là ưu điểm của Tay Đo so với các máyCMM
1.2.2 Nhược điểm của Tay đo
- Vùng hoạt động giới hạn, có những vùng không với tới được
- Độ chính xác không cao do đặc thù kết cấu
- Tăng độ chính xác và vùng hoạt động sẽ làm tăng đáng kể giá thành
Trang 12- Không có chức năng tự động kiểm tra hàng loạt như các máy CMM.
Ngoài ra, việc phát triển công nghệ cao tích hợp cho các tay đo nhằm khắcphục những nhược điểm cũng như phát huy lợi thế của tay đo đang được nghiên cứu
và phát triển
- Tay đo tích hợp hệ thống quét bằng laser
- Tay đo có hệ thống đầu dò dùng cảm biến
Hiện nay trên thế giới các nước như: Nhật, Đài Loan, Đức, Mĩ …đã áp dụngcác thiết bị này rộng rãi trong công nghiệp thiết kế, chế tạo và đo lường (thiết kếngược, phát triển kiểu dáng sản phẩm v.v…) và đem lại hiệu quả kinh tế cao
Bảng 1 1 Bảng giá một số thieert bị tay đo trên thị trường
FARO: (Nguồn: http://www.dirdim.com/prod_digitizers.htm) sử dụng cảm biến bằnglaser theo phương pháp không tiếp xúc cho ra độ chính xác cao
Trang 13Hình 1 5 Tay đo của Microscribe (trái) và FARO (Phải)
Ngoài ra còn một số hãng khác như: TRIMAQS, ScanWorks, Metris, Mitutoyo,ROMER
Hình 1 6 Tay đo của hãng Faro có sử dụng súng laser
Ở nước ta đã bắt đầu áp dụng thiết bị này, song hầu hết các doanh nghiệp phảimua thiết bị đo của nước ngoài với chi phí giá thành cao Vì vậy việc nghiên cứu thiết
kế và chế tạo tay đo là hết sức cần thiết
Trang 14Chương 2: NGUYÊN LÝ LÀM VIỆC CỦA TAY ĐO
2.1 Nguyên lí làm việc của thiết bị
Tín hiệu góc quay được nhận biết từ cảm biến và lưu trữ vào bộ nhớ máy tính.Khi nào đầu dò tiếp xúc với chi tiết thì các dữ liệu góc này được tính toán và xác địnhtọa độ điểm đo trong tọa độ Đề Các Từ các tọa độ đã tính toán trên được phần mềm
đồ họa vẽ lại trên màn hình máy tính Sơ đồ nguyên lý như hình vẽ dưới đây :
2.2 Kết cấu tay đo.
2.2.1 Phân tích và lựa chọn dạng tay đo (các kiểu bố trí các khớp xoay).
Máy tính tiếp nhận, xử
lý và hiển thị kết quả
Trang 15Loại này gồm 3 khớp nối: khớp đầu tiên là khớp xoay, 2 khớp còn lại là khớptrụ mỗi khớp chuyển động ứng với mỗi bậc tự do Cấu trúc cơ khí dạng này có độcứng vững tốt Vùng làm việc của dạng này là hình vành khăn.
Hình 2 2 Thiết bị đo tay máy dạng trụ
Thiết bị đo tay máy dạng cầu
Loại này khác với loại cầu là khớp nối thứ 2 được thay thế bằng khớp nối xoaytrong hệ tọa độ cầu, mỗi chuyển động của mỗi khớp tương ứng với một bậc tự do Đốivới loại này độ cững vững thấp hơn loại dạng cầu trên và có cấu trúc cơ khí phức tạphơn Vùng không gian làm việc có dạng hình cầu
Hình 2 3 Thiết bị đo tay máy dạng cầu
Thiết bị đo tay máy dạng SCARA
Loại thiết bị này có 2 khớp nối xoay và 1 khớp nối trụ, các trục của khớp nốisong song với nhau
Trang 16Hình 2 4 Thiết bị đo tay máy dạng SCARA
Thiết bị đo tay máy dạng người
Loại tay máy hình dạng người (Scriber) có 3 khớp nối xoay, trục quay đầu tiêncủa khớp nối thứ nhất là trục gốc và trục của 2 khớp nối còn lại thì song song vớinhau Sơ đồ động của thiết bị này mô phỏng theo cánh tay người, khớp nối thứ 2 đượcgọi là khớp nối bả vai và khớp nối thứ 3 được gọi là khớp nối khuỷu tay
Hình 2 5 Thiết bị đo tay máy dạng người
Ưu điểm của thiết bị đo tọa độ dạng tay máy là khả nằng di chuyển đầu dò linhhoạt, nhưng thiết bị có độ chính xác không cao Cùng với việc phát triển mẫu mã, nhucầu đo bề mặt có biên dạng phức tạp ngày càng cao Để đáp ứng nhu cầu này, trên thịtrường thế giới đã xuất hiện thiết bị đo bề mặt 5 khâu chứa toàn khớp bản lề
Kết luận :
Tay đo sẽ có kết cấu của tay máy giống người vì nó đáp ứng được yêu cầu đặt
ra về độ khéo léo cũng như kết cấu gồm các khớp xoay cho phép sử dụng đồng bộ các
Trang 17Lợi ích thứ nhất: Nó giúp cho người sử dụng dễ dàng thao tác khi chỉ cần thựchiện chuyển động xoay các khớp hơn việc thực hiện chuyển động tịnh tiến các khớp,hay việc vừa quay vừa tịnh tiến các khớp.
Lợi ích thứ hai: việc sử dụng đồng bộ các khớp xoay giúp cho người thiết kế
dễ dàng hơn vì các khớp sẽ có kết cấu tương tự nhau nên việc hạn chế sai số hệ thốngtrở nên hiệu quả hơn, mặt khác về mặt kỹ thuật khớp tịnh tiến khó hãm hơn khớpquay Về mặt mỹ thuật với cánh tay mà các khớp quay sẽ trở nên đẹp hơn và gần gũivới con người nhất Nhìn chung các mẫu tay đo hiện nay trên thị trường người ta cũng
sử dụng tay đo có kiểu giống người
2.3 Sơ đồ động (các kiểu bố trí các khớp xoay)
Trong đại đa số các trường hợp, tay đo tọa độ là một chuỗi động học hở đượccấu tạo bởi một số các khâu(Links),được nối với nhau nhờ các khớp.Một đầu củachuỗi nối với giá đỡ, còn đâu kia nối với phần công tác
Hình 2 6: Một số kết cấu tay đo
Các thiết kế đều phỏng theo cánh tay con người, do vậy trong các thiết kếngười ta cũng phân chức năng các khớp tương ứng với các khớp của cánh tay conngười Với loại kết cấu này, tay đo có thể cho phép đầu dò chạm tới những vùng khóchạm tới Với kiểu tay có 2 bậc tự do ở khớp vai 1 bậc tự do ở khớp khuỷu và 3 bậc tự
do ở khớp cổ tay, lại có một lợi thế khác Sau khi phân tích các kiểu tay đo, nhómnghiên cứu chọn kiểu thiết kế 2-1-2 vì nó cho phép đo cũng như lấy biên dạng một vậtbất kỳ, có thể giúp giảm kích thước của tay đo, đồng thời làm giảm được chi phí chế
Trang 18tạo Ngoài ra vì nhận thấy rằng với cánh tay 5 bậc tự do đủ điều kiện để xác định vì trí
và hướng của vật thể trong không gian
Hình 2 7 Tay đo có kết cấu 2-1-2
2.4 Quy tắc Denavit-Hartenberg
Để định vị và định hướng từng khâu trên cánh tay đo cũng như khâu tác độngsau cùng chúng ta phải gắn các hệ tọa độ suy rộng lên từng khâu, cả cơ cấu có một hệquy chiếu chung nối với giá cố định, hệ quy chiếu này có chức năng vừa để mô tảđịnh vị, định hướng khâu tác động sau cùng của cánh tay đo, vừa để mô tả đối tượngtác động của cánh tay đo mà nó cần nhận diện
Việc xây dựng các hệ quy chiếu này cần có tính thống nhất cao, đòi hỏi tínhxác định duy nhất
Một trong các quy tắc cho phép thiết lập hệ tọa độ trên các cặp khâu-khớp trêntay đo tọa độ là quy tắc Denavit-Hartenberg(DH).Dựa trên hệ tọa độ này chúng ta cóthể mô tả các cặp bằng hệ thống các tham số, biến khớp và áp dụng một dạng phươngtrình tổng quát cho bài toán động lực học tay máy
Quy tắc DH xác định như sau:
Hệ tọa độ được gắn lên các khâu khớp như sau:
Đặt trục tọa độ zi dọc theo trục của khớp sau(thứ i+1)
Trang 19trục zi và zi-1.Giao điểm của pháp tuyến chung với trục zi-1 là gốc O'i của hệ O'i
x'iy'iz'i
Đặt trục tọa độ xi theo phương pháp tuyến chung giữa zi-1 và zi' hướng từ khớp itới khớp thứ i+1
Trục yi được xác định theo quy tắc bàn tay phải
Đặt ai=OiO'i khoảng cách giữa hai khớp liên tiếp theo phương xi
di=Oi-1O'i khoảng cách giữa hai khớp liên tiếp theo phương zi-1
αi: góc quay quanh trục xi để zi-1 đến trùng với zi
Θi: góc quay quanh trục zi-1 để xi-1 đến trùng với xi
Hình 2 8 Hệ tọa độ quy tắc Denavit - Hartenberg
Dựa theo quy tắc DH ta có sơ đồ động của tay máy 5 bậc tự do gồm các khớp xoay được biểu diễn như hình dưới đây:
Trang 20có 6 hệ tọa độ được thiết lập nên sẽ có các chuyển đổi hệ tọa độ như sau:O0x0y0z0
->O1x1y1z1 ->O2x2y2z2 ->O3x3y3z3 ->O4x4y4z4->O5x5y5z5
Phép chuyển đổi các hệ tọa độ thực chất là sự kết hợp của phép tịnh tiến vàphép quay.Mỗi mỗi chuyển đổi từ hệ tọa độ này qua hệ tọa độ khác chúng ta có một
ma trận chuyển đổi
Trang 21=
Ta có ma trận thuần nhất Ma trận thuần nhất là matran 4x4 với các cột như sau: Cột thứ nhất của kết quả:
Cột thứ hai của kết quả:
Trang 22
Cột thứ ba của kết quả:
Cột thứ tư của kết quả:
Với tọa độ tiếp điểm đầu dò được đặt ngay tại gốc tọa độ của hệ trục thứ 5, nênkết quả của cột thứ tư cũng chính là tọa độ của điềm tiếp xúc của đầu dò so với hệ tọa
độ gốc hay hệ tọa độ thứ không Từ bảng thông số DH và ma trận chuyển đổi chúng
ta nhận thấy rằng thay vì phải tính toán một cách phức tạp các hệ tọa độ thì giờ đâybài toán chỉ phục thuộc vào các thông số là d1,a2,d4,a5 (đây là các giá trị hằng số) vàcác giá trị theta (biến số), giá trị này thay đổi mỗi khi chúng ta di chuyển đầu dò vàđược ghi nhận qua các encoder
quả như sau :
200 c1(c2 s3+s2 c3)+300 c1c2+135 c5(s1 s4+c4 c1(c2 c3−s2 s3) )−135 s5c1(c2 s3+c3 s2)
200 s1(c2s3+s2c3)+300 s1c2−135 c5(c1s4−c4(c2c3s1−s1s2s3) )−135 s5s1(c2s3+c3s2)
200(s3s2−c2c3)+280+300 s2+135 s5(c2c3−s2s3)+135 c4c5(c2s3+c3s2)
1
Trang 23Chương 3: GIỚI THIỆU VỀ PIC, ENCODER VÀ CHUẨN USB
3.1 Giới thiệu về encoder.
Encoder mục đích dùng để quản lý vị trí góc của một đĩa quay, đĩa quay có thể
là bánh xe, trục động cơ, hoặc bất kỳ thiết bị quay nào cần xác định vị trí góc.Encoderđược chia làm 2 loại, absolute encoder và incremental encoder Tạm gọi là encodertuyệt đối và encoder tương đối
Với encoder tuyệt đối thì với tín hiệu ta nhận được, sẽ chỉ rõ ràng vị trí củaencoder, chúng ta không cần xử lý gì thêm, cũng biết chính xác vị trí của encoder
Với incremental encoder, là loại encoder chỉ có 1, 2, hoặc tối đa là 3 vòng lỗ,
cứ mỗi lần đĩa quay 1 vòng, ta sẽ nhận được tín hiệu và biết đĩa quay một vòng Nếubây giờ các có nhiều lỗ hơn, ta sẽ có được thông tin chi tiết hơn, có nghĩa là đĩa quay1/4 vòng, 1/8 vòng, hoặc 1/n vòng, tùy theo số lỗ nằm trên incremental encoder
Cứ mỗi lần đi qua một lỗ, chúng ta phải lập trình để thiết bị đo đếm lên 1 Dovậy, encoder loại này có tên incremental encoder (encoder tăng lên 1 đơn vị)
Hình 3 1 Sơ đồ cấu tạo encoder
Trang 243.1.1 Nguyên lý hoạt động cơ bản của encoder, LED và lỗ.
Nguyên lý cơ bản của encoder, đó là một đĩa tròn xoay, quay quanh trục Trênđĩa có các lỗ (rãnh) Người ta dùng một đèn led để chiếu lên mặt đĩa Khi đĩa quay,chỗ không có lỗ (rãnh), đèn led không chiếu xuyên qua được, chỗ có lỗ (rãnh), đènled sẽ chiếu xuyên qua Khi đó, phía mặt bên kia của đĩa, người ta đặt một con mắtthu Với các tín hiệu có, hoặc không có ánh sáng chiếu qua, người ta ghi nhận đượcđèn led có chiếu qua lỗ hay không
Khi trục quay, giả sử trên đĩa chỉ có một lỗ duy nhất, cứ mỗi lần con mắt thunhận được tín hiệu đèn led, thì có nghĩa là đĩa đã quay được một vòng
Hình 3 2 Nguyên lí hoạt động của Encoder
Ưu điểm của incremental encoder so với absolute encoder chính là kích thước
và độ chính xác cao Và do đã khắc phục được những nhược điểm của absolute encdernên ngày nay đa số người ta sử dụng incremental encoder trong những ứng dụng hiệnđại
Encoder được nhóm lựa chọn là loại incremental encoder của Sony, có độ phângiải 2048 xung, với 2 ngõ tín hiệu đặc trưng A/B được đặt lệch ¼ chu kỳ, ta có thể sửdụng để nhận biết góc quay với độ phân giải gấp 4 lần giá trị mặc định, cho kết quả là8192xung/vòng
Trang 25Hình 3 3 Sơ đồ xung encoder
3.2 Giới thiệu về giao tiếp USB.
3.2.1 Kiến trúc và các thành phần của giao tiếp USB.
USB dùng để hỗ trợ việc trao đổi dữ liệu giữa một máy chủ ( host ) với cácthiết bị ngoại vi được nối với nó Bus USB cho phép thiết bị ngoại vi được ghép nốivới máy tính chủ được cấu hình , được sử dụng một cách độc lập trong khi máy tínhchủ và thiết bị ngoại vi khác đang hoạt động (đó chính là đặc tính Plug-and-Play)Thiết bị ngoại vi làm việc ở vị trí slave được nối trực tiếp với máy tính thông qua bộtiếp nối HUB
Ưu điểm của USB là:
Ghép nối đơn giản do ổ cắm đã được chuẩn hoá
Linh hoạt trong khi sử dụng
Triển khai đơn giản và rẻ tiền
Tốc độ tương đối cao so với một số chuẩn đã ra đời và có thể ghép nốinhiều thiết bị ngoại vi cùng một lúc
Có đặc tính Plug-and-play người sử dụng có thể cắm thêm hay dỡ bỏthiết bị ngoại vi mà không cần tắt máy hoặc hkởi động lại hệ thống ,
Trang 26thiết bị ngoại vi cũng không cần các bản mạch phụ vì chức năng nàyđược phần mềm hệ thống đảm nhiệm khi phát hiện ra có ngoại vi mớiđược đấu nối vào thì hệ điều hành sẽ tự động cài đặt các phần mềm điềukhiển
Về mặt vật lý USB là một kiến trúc tầng sao(tiered star) Một HUB ở tại trungtâm của mỗi sao , với 7 bit địa chỉ usb cho phép quản lý tối đa 127 thiết bị ngoại viđây là con số mang tính lý thuyết bởi khi có càng nhiều thiết bị đấu nối thì tốc độtruyền càng chậm do dải thông của toàn bộ bus bị phân chia đến từng thiết bị
Hình 3 4 Kiến trúc dạng tầng của giao tiếp USB
Các thành phần của giao tiếp usb:
Host USB
Host USB chính là máy tính cá nhân với hệ điều hành có khả năng quản líUSB, một mạng USB chỉ được phép có một host USB , máy tính sử dụng phần cứngphần mềm USB để làm việc như một host bus Máy tính nhận biết việc cắm thêm hay
dỡ bỏ một thiết bị ngoại vi để khởi động quá trình đánh số và các quá trình truyền dữliệu khác trong bus Máy tính cũng có trách nhiệm kiểm tra trạng thái ,thống kê hoạtđộng và kiểm tra ghép nối điện giữa bộ điều khiển chủ và các thiết bị USB ngoại vi
Thiết bị USB (USB device)
Trang 27Các thiết bị USB có chức năng slave trog mạng bus Ta chia ra làm hai loạithiết bị USB HUB và thiết bị chức năng :
HUB: Một hub ngoài có một cổng hướng về máy chủ (upstream) và 4cổng ra thiết bị ghép nối (downstream) trong máy PC cũng có một hubcắm ngay trên bản mạch chính hub này được gọi là hub gốc (roothub) Hub thường gồm có một bộ điều khiển hub và một bộ nhắc lại(repeater) một hub có chức năng : chuyển một ổ cắm usb thành nhiều ổcắm, nhận biết các thiết bị mới được đấu vào xoá đi một
Thiết bị đã đấu nối vào bus nhưng sau đấy được tháo ra để thực hiệnđược việc này có nhữn gtrạng thái bus được tạo ra theo cách đặc biệt( dựa vào mức điện áp , ta không đề cập đến kỉ thuật này ở đây)
Thiết bị chức năng: Là các thiết bị ngoại vi như: chuột, bàn phím, mànhình, máy quét, ADC, vi điều khiển… mọi thiết bị chức năng của busđều phải theo các qui định của usb để máy chủ có thể nhận biết đượcchúng Mọi thiết bị usb đều được thiết kế gồm 3 phần chính:
Phần giao diện tuần tự SIE là vi mạch chịu trách nhiệm nhận vàgửi dữ liệu theo chuẩn USB
Một tổ hợp giũa phần cứng và firmware nhận nhiệm vụ truyền dữliệu giữa khối SIE và điểm cuối của thiết bị qua các đường ống(pipeline) thích hợp của chúng
Thành phần thứ 3 là phần chức năng của thiết bị ngoại vi
Phương thức giao tiếp USB
Máy chủ bao gộp hầu hết sự phức tạp của giao thức USB.Dữ liệu có thể truyền
từ thiết bị đến máy chủ và ngược lại.Quá trình truyền được thực hiện qua các gói dữliệu.Mỗi gói dữ liệu gôm 3 phase:
Token phase: khởi động kiểu truyền
Data phase: dữ liệu truyền đi, tối đa 1023 byte
Handshake phase: cho biết quá trình truyền thành công hay bị lỗi
Trang 28Hệ thống USB dùng cấu trúc Polling trong truyền thông.
Có 4 kiểu truyền trong hệ thống USB:
Isochronous transfer (Truyền đẳng thời)
Bulk transfer ( Truyền hàng loạt)
Interrupt transfer
Control transfer
Các thiết bị tốc độ thấp chỉ hỗ trỡ kiểu truyền Interrupt và Cotrol.Còn các thiết
bị tốc độ cao thì hỗ trợ cả 4 kiểu truyền trên.Dữ liệu được truyền dưới dạng từng gói
và mỗi gói bao gồm nhiều trường dữ liệu
Các gói dữ liệu USB thông thường có các trường sau:
1 Trường Sync:
Tất cả các gói dữ liệu đều bắt đầu với trường này _Sync field có độ dài 8 bit, đồng bộcác thiết bị ngoại vi với xung clock bên trong
2 Trường PID:
PID viết tắt của Packet ID
PID dùng để nhận dạng loại gói dữ liệu.4 bit đầu để nhận dạng dữ liệu, 4 bit cuối để kiểm tra bit và phát hiện lỗi
PID chia thành 3 nhóm:
Mã thông báo (Token): có thể là IN, OUT, SOF hoặc SETUP
● OUT: để chỉ dữ liệu sẽ truyền từ host đến device
● IN: để chỉ dữ liệu sẽ truyền từ device sang host
● SOF: chỉ bắt đầu của 1 frame
● SETUP: truyền từ host đến device, chứa lệnh dùng để cấu hình thiết bị
Data
Trang 29● ACK: bên nhận đã nhận data.
● NAK: bên nhận không thể nhận dữ liệu, hoặc bên truyền không cho phép truyền dữ liệu
● STALL: lệnh điều khiển không được thực hiện
3 Trường địa chỉ
Chia thành 2 phần:
ADDR gồm 7 bit, có thể quản lý được 127 thiết bị Địa chỉ 0 không được sử dụng, nếu 1 thiết bị nào đó vẫn chưa được gán địachỉ thì địa chỉ mặc định được trả về là 0
Chứa số thứ tự của điểm cuối của thiết bị
4 Frame number field
Bao gồm 11 bit, chỉ số thứ tự của frame, chỉ có trong mã thông báo SOF( SOF token)
5 Data Field
Chứa dữ liệu truyền đi
6 CRC Field
Trang 30Gồm 5 bit dùng để bảo vệ các trường khác trong gói mã thông báo ngoại trừ trường PID.
Gồm 16 bit dùng để bảo vệ dữ liệu trong gói dữ liệu
7 EOP
3.2.2 Các định dạng gói để truyền.
1 Token Packets
Có 3 loại gói token packets:
- In – thông báo cho thiết bị USB biết là host muốn đọc dữ liệu
- Out - thông báo cho thiết bị USB biết là host muốn gửi dữ liệu
- Setup – được dùng để bắt đầu điều khiển truyền
Định dạng của gói này là
2 Start of Frame Packets
Các gói SOF bao gồm một frame 11-bit được gửi bởi host mỗi 1ms500ns
Trang 31_ NAK – bên nhận không thể nhận dữ liệu, hoặc bên truyền không cho phép truyền
dữ liệu
_ STALL – Lệnh điều khiển
Định dạng của gói này là
5 Special Packet
PRE: yêu cầu mode truyền tốc độ thấp
ERR: báo lỗi
Plit: chia dữ liệu truyền
Ping: dùng để kiểm tra đường truyền
3.2.3 Phương thức truyền thông.
Như đã trình bày có 4 kiểu truyền thông chính trong giao tiếp USB
Isochronous transfer (Truyền đẳng thời)
Bulk transfer ( Truyền hàng loạt)
Interrupt transfer
Control transfer
1 Control transfer
Gồm 2 hoặc 3 pha: Cài đặt, Dữ liệu(có thể có hay không) và trạng thái
Mỗi pha ở trên lại bao gồm 3 pha khác: Token, Data, Handshake
Pha SETUP có nhiều loại:
SET_ADDRESS
GET_DEVICE_DESCRIPTOR
GET_CONFIGURATION_DESCRIPTOR
SET_CONFIGURATION
Trang 32Hình 3 5 Control transfer
2 Bulk Transfer
Các thiết bị như một máy in, nhận dữ liệu trong một gói lớn, sử dụng chế độtruyền hàng loạt Một khối dữ liệu được gửi đến máy in (một khối 64 byte) và đượckiểm tra để chắc chắn nó chính xác
Có 2 loại: IN bulk transfer và OUT bulk transfer
Hình 3 6 OUT BULK Transfer.
Hình 3 7 IN BULK Transfer.
Trang 33Một thiết bị như chuột hoặc bàn phím, gửi một lượng nhỏ dữ liệu, sẽ chọn chế độngắt.
3.2.4 Các bước kết nối thiết bị.
a Kết nối các thiết bị USB
Khi có một kết nối đến HUB nó sẽ thông báo đến máy chủ , máy chủ hỏi HUB
để xác định nguyên nhân của thông báo , HUB trả lời bằng việc nhận dạng cổng đãkết nối với thiết bị USB Máy chủ cho phép cổng và định địa chỉ thiết bị USB vớimột pipeline điều khiển bằng cách sử dụng địa chỉ mặc định USB, tất cả các thiết bị
Trang 34khi đấu nối vào lần đầu đều được nhận một địa chỉ mặc định USB , Host xác địnhxem thiết bị vừa được đấu nối là HUB hay thiết bị chức năng và gắn cho thiết bị USBmột địa chỉ duy nhất.
Máy chủ thiết lập một pipeline điều khiển đối với thiết bị USB bằng cách sửdụng địa chỉ USB đã được gán và số 0 điểm cuối
Nếu thiết bị USB là một hub thì khi có một thiết bị USB kết nối vào nó quátrình trên diễn ra liên tục
Nếu thiết bị USB là một thiết bị chức năng thì các thông báo về việc kết nối sẽđược phần mềm usb gửi tới phần mềm máy chủ
b Loại bỏ thiết bị USB
Khi một thiết bị USB được gỡ bỏ từ một trong số các cổng của hub thì hub tựđộng vô hiệu hoá cổng và cung cấp một thông tin cho host báo về việc loại bỏ thiết bị
ra khỏi bus sau đấy host sẽ loại bỏ các số liệu đã viết về thiết bị vừa dỡ bỏ
Nếu thiết bị usb dỡ bỏ là một hub thì quá trình dỡ bỏ phải được thực hiện vớitất cả thiết bị usb mà trước đó đã được đấu nối vào hub
c Sự điểm danh
Một ưu điểm đặc biệt của bus USB là khả năng “ cắm là chạy “ ( Plug andPlay) đói với thiết bị mới được đấu nối vào bus Muốn thế hệ thống phải hoạt độngtrong trạng thái thường xuyên kiểm tra thông tin từ một thiết bị , từ thông tin này thiết
bị sẽ được nạp phần mềm điều khiển thich hợp
Khi một thiết bị mới được điểm danh (enumeration) sẽ nhận được một địa chỉbus và được hỗ trợ qua một phần mềm cụ thể
Việc điểm danh được thực hiện hoàn toàn độc lập bởi hệ điều hành , khi mộtthiết bị mới được đấu nối vào có thể xảy ra hiện tượng là hệ điều hành yêu cầu cầnmột đĩa điều khiển thích hợp
Trang 35Quá trình điểm danh là quá trình hệ điều hành tiến hành kiểm tra các phầncứng mới được đấu nối vào qua thông tin nó thu được từ thiết bị được đấu nối Thôngtin này thường gọi là bản tóm lược
Khi có một thiết bị mới được đáu nối vào bus sau đấy diễn ra các bước sau :
Hub nhận biết được và nó thông báo với máy chủ là có một thiết bị mới được đấu nối vào
Máy chủ hỏi lại hub xem thiết bị đã được nối vào cổng nào
Máy chủ khi này biết thiét bị đã được nối vào cổng nào , nó sẽ đưa ra một lệnh nối đến cổng đó và thực hiện một thao tác reset lại bus
Hub tạo ra một tín hiệu reset với độ dài 10 ms và cấp một dòng điện với cường
độ 100mA cho thiết bị Bây giờ thiết bị đã sẵn sàng hoạt động và trả lời bằng một địa chỉ mặc định 0
Trước khi nhận được một địa chỉ riêng thì thiết bị vẫn được trao đổi với host thông qua địa chỉ mặc định máy chủ đọc byte đầu tiên của bản tóm lược, để xem độ lớn bản tóm lược là bao nhiêu
Máy chủ gán cho thiết bị một địa chỉ bus riêng
Qua địa chỉ mới máy chủ đọc tất cả các thông tin cấu hình có từ thiết bị
Qua đó máy chủ sẽ gán cho thiết bị một phần điều khiển phù hợp nếu có thể Bây giờ thiết bị sẽ được phép lấy ra dòng điện tiêu thụ như trong bản tóm lược
đã nêu Như vậy là thiết bị và máy chủ đều đã sẵn sàng trao đổi
Mỗi thiết bị có các thông số như : mã giao thức , nhà sản xuất , loại thiết bị ,độ lớn fifo, dòng tiêu thụ………
Tất cả các thông tin này được lưu trong ROM của thiết bị khi thiết bị được đấu nối vào vi điều khiển của hub sẽ đọc các thông tin này và truyền cho máy chủ Để máy chủ có những điều khiển phù hợp
d Bộ mô tả báo cáo (Report Descriptor)
Một bộ mô tả thông báo định nghĩa khuôn dạng và công dụng của dữ liệu chứatrong các report Ví dụ nếu thiết bị là một con chuột thì dữ liệu trong report sẽ thôngbáo cho máy chủ biết sự di chuyển của con chuột và các sự kiện click chuột, nếu thiết
Trang 36bị là một bộ điều khiển rơle thì dữ liệu trong báo cáo sẽ cho biết rơle nào mở và rơlenào đóng.
Một bộ mô tả thông báo định nghĩa khuôn dạng và công dụng của dữ liệu chứatrong các report Ví dụ nếu thiết bị là một con chuột thì dữ liệu trong report sẽ thôngbáo cho máy chủ biết sự di chuyển của con chuột và các sự kiện click chuột, nếu thiết
bị là một bộ điều khiển rơle thì dữ liệu trong báo cáo sẽ cho biết rơle nào mở và rơlenào đóng
3.3 Giới thiệu về vi điều khiển PIC và PIC 18F4550
3.3.1 Vi điều khiển PIC
PIC là một họ vi điều khiển theo kiến trúc Havard được sản xuất bởi công tyMicrochip Technology Dòng PIC đầu tiên là PIC1650 được phát triển bởiMicroelectronics Division thuộc General Instrument
PIC bắt nguồn là chữ viết tắt của "Programmable Intelligent Computer" là mộtsản phẩm của hãng General Instruments đặt cho dòng sản phẩm đầu tiên của họ làPIC1650 Lúc này, PIC1650 được dùng để giao tiếp với các thiết bị ngoại vi cho máychủ 16bit CP1600, vì vậy, người ta cũng gọi PIC với cái tên "Peripheral InterfaceController" CP1600 là một CPU tốt, nhưng lại kém về các hoạt động xuất nhập, và vìvậy PIC 8-bit được phát triển vào khoảng năm 1975 để hỗ trợ hoạt động xuất nhậpcho CP1600 PIC sử dụng microcode đơn giản đặt trong ROM
PIC sử dụng tập lệnh RISC, với dòng PIC low-end (độ dài mã lệnh 12 bit, vídụ: PIC12Cxxx) và mid-range (độ dài mã lệnh 14 bit, ví dụ: PIC16Fxxxx), tập lệnhbao gồm khoảng 35 lệnh, và 70 lệnh đối với các dòng PIC high-end (độ dài mã lệnh
16 bit, ví dụ: PIC18Fxxxx) Tập lệnh bao gồm các lệnh tính toán trên các thanh ghi,với các hằng số, hoặc các vị trí bộ nhớ, cũng như có các lệnh điều kiện, lệnh nhảy/gọihàm, và các lệnh để quay trở về, nó cũng có các tính năng phần cứng khác như ngắthoặc sleep (chế độ hoạt động tiết kiện điện) Microchip cung cấp môi trường lập trìnhMPLAB, nó bao gồm phần mềm mô phỏng và trình dịch ASM
Trang 37Hiện nay có khá nhiều dòng PIC và có rất nhiều khác biệt về phần cứng, nhưngcác chức năng chính có thể điểm qua một vài nét như sau:
8/16 bit CPU, xây dựng theo kiến trúc Harvard có sửa đổi khác với kiếntrúc Von Neumann của AVR
Flash và ROM có thể tuỳ chọn từ 256 byte đến 256 Kbyte
Các cổng Xuất/Nhập (I/O ports) (mức logic thường từ 0V đến 5.5V,ứng với logic 0 và logic 1)
8/16 Bit Timer
Công nghệ Nanowatt (dòng PIC 18Fxxxx)
Các chuẩn Giao Tiếp Ngoại Vi Nối Tiếp Đồng bộ/Không đồng bộUSART, AUSART, EUSARTs
Bộ chuyển đổi ADC Analog-to-digital converters, 10/12 bit
Bộ so sánh điện áp (Voltage Comparators)
Các module Capture/Compare/PWM
LCD
MSSP Peripheral dùng cho các giao tiếp I²C, SPI, và I²S
Bộ nhớ nội EEPROM - có thể ghi/xoá lên tới 1 triệu lần
Module Điều khiển động cơ, đọc encoder
Hỗ trợ giao tiếp USB
Hỗ trợ điều khiển Ethernet
Hỗ trợ giao tiếp CAN
Hỗ trợ giao tiếp LIN
Hỗ trợ giao tiếp IrDA
Một số dòng có tích hợp bộ RF (PIC16F639, và rfPIC)
KEELOQ Mã hoá và giải mã
DSP những tính năng xử lý tín hiệu số (dsPIC)
Ở Việt Nam thì PIC được sử dụng rộng rãi, rất dễ kiếm và có hẳn nguyên 1diễn đàn hỗ trợ về lập trình cho PIC là trang http://www.picvietnam.com
Trang 383.3.2 PIC 18F4550 và module USB.
PIC18F4550 là dòng vi điều khiển hiệu năng cao có giá thành rẻ Nó là sảnphẩm của họ vi xử lý PIC thông dụng của công ty Microchip của Mỹ có trụ sở đặt tạiChandler, Arizona (Mỹ)
Điểm riêng biệt của vi xử lý PIC18F4550 là một trong những PIC hỗ trợ đầy
đủ các tính năng cho USB, nghĩa là ta nối trực tiếp các chân USB của vi điều khiểntới máy tính mà không cần mạch kéo hay bất cứ mạch gắn ngoài nào khác
Hình 3 10 Vi xử lí PIC 18F4550
Những tính năng của PIC 18F4550:
Program Memory (Instructions) 16384
Data EEPROM Memory (Bytes) 256
Trang 39Compare/PWM Modules
Enhanced USARTUniversal Serial Bus (USB)
Module
1
Streaming Parallel Port (SPP) Yes
13-Bit Analog-to-Digital Module Yes
RESET Instruction, Stack Full,
Stack Underflow (PWRT, OST), MCLR (optional),WDT
Programmable Low-Voltage
Detect
Yes
Programmable Brown-out Reset Yes
83 with ExtendedInstruction Set enabled
Bảng 3 1 Những tính năng của PIC 18F4550
Ưu điểm:
Sử dụng công nghệ nanoWatt tiết kiệm điện năng
Hỗ trợ giao tiếp theo chuẩn USB 1.1 và 20
Trang 40Hình 3 11 Sơ đồ chân PIC 18F4550
Khối xử lý usb trong vi xử lý 18F4550:
Hình 3 12 Khối giao tiếp USB trong PIC 18F4550
Hoạt động của module USB được cấu hình và quản lí thông qua 3 thanh ghi điều