Thiết lập hệ độ người dùng.

Một phần của tài liệu NGHIÊN CỨU THIẾT KẾ VÀ CHẾ TẠO TAY ĐO TỌA ĐỘ (Trang 68)

V CC C C U S B

6.4.2 Thiết lập hệ độ người dùng.

Đây là chức năng cho phép chúng ta tự định nghĩa một hệ tọa độ cho riêng mình. Sau khi định nghĩa được hệ tọa độ riêng khi đó các điểm trên bề mặt được chọn sẽ có tọa độ tương ứng với hệ tọa độ mới, không còn phục thuộc vào hệ tọa độ mặc định.

và .Khi người dùng lựa chọn điểm trên bề mặt vật, tọa độ điểm sẽ được tính cho hệ tọa độ của thiết bị vì thế cần chuyển đổi từ hệ tọa độ thiết bị sang hệ tọa độ vật(hệ tọa độ do người dùng định nghĩa).

Quá trình chuyển đổi được thực hiện như sau :

Khái quát các hệ tọa độ chính được sử dụng trong chương trình:

- Hệ tọa độ cánh tay đo (machine coordinate system): mỗi vị trí chuyển động của đầu dò được tính toán trong một hệ tọa độ tuyệt đối mà các trục x, y, z của nó được xác lập dựa trên các khớp của cánh tay đo. Đây là hệ tọa độ cố định và được thiết lập dựa vào phần cứng của cánh tay đo.

-Hệ tọa độ vật đo (part coordinate system): ngoài hệ tọa độ máy, phần mềm cho phép ta thiết lập những hệ tọa độ gắn liền với các đặc điểm vật đo. Điều này giúp cho quá trình đo đạc bằng cánh tay đo diễn ra nhanh chóng và thuận tiện hơn rất nhiều so với việc đo đạc bằng các thiết bị đo lường truyền thống.

Hình 6. 22 Các hệ tọa độ đo, (a) hệ tọa độ máy ; (b) hệ tọa độ vật đo

Thiết lập hệ tọa độ vật đo.

Dựa trên các đối tượng hình học cơ bản như điểm, đường thẳng, mặt phẳng và đường tròn, chương trình cho phép ta thiết lập các hệ tọa độ vật đo bằng cách sau đây:

-Sử dụng một mặt phẳng và hai đường thẳng cắt nhau thuộc mặt phẳng đó: mặt phẳng được gán làm mặt phẳng xy, gốc tọa độ là giao của hai đường thẳng, trục x trùng với đường thẳng thứ nhất, trục z song song với pháp vector n của mặt phẳng.

Hình 6. 23 Thiết lập hệ tọa độ bằng mặt phẳng - đường thẳng – đưòng thẳng

Để xây dựng được hệ tọa độ mới chương trình cần tối đa 3 điểm để thực hiện, 3 điểm này sẽ được lấy từ chức năng Reference Frame: Điểm xuất phát hay gốc tọa độ(O), điểm định hướng trục Ox(A) và điểm định hướng trục Oy(B).Mặt phẳng cần xác định chính là mặt phẳng đi qua 3 điểm này

Đây là phương pháp đơn giản và dễ dàng cho người sử dụng cài đặt khi sử dụng chương trình.

Chuyển đổi hệ tọa độ đo.

Về mặt lí thuyết, việc chuyển đổi tọa độ một điểm v từ hệ tọa độ C sang hệ tọa độ C’ được thực hiện bằng một phép tịnh tiến và một phép quay tọa độ. Ta có thể biểu diễn phát biểu trên dưới dạng toán học như sau: vC’ = R.(vC – t) (1)

với vC và vC’ lần lượt là tọa độ của v trong hệ C và C’ , t là vector tịnh tiến và R là vector quay.

Hình 6. 24 Chuyển đổi hệ tọa độ

Để cụ thể, ta xét hai hệ tọa độ Cartesian Oxyz và (Oxyz)1 . Gọi i, j, k, i1, j1, k1 là các vector đơn vị trên các trục tương ứng x, y, z, x1, y1, z1. Ta thấy, theo biểu thức (1), muốn thực hiện việc chuyển đổi giữa hai hệ tọa độ ta cần xác định ma trận quay R và vector tịnh tiến t. Ta xét hai trường hợp riêng biệt sau:

 Trường hợp (Oxyz)1 tịnh tiến so với Oxyz

Hình 6. 25 Trường hợp tịnh tiến hệ tọa độ

Tọa độ của hệ (Oxyz)1 được xác định trong hệ tọa độ cố định Oxyz bởi vector t có các thành phần hình chiếu trên hệ trục Oxyz là m, n và p.

Vị trí của một điểm p trong không gian được biểu diễn thông qua hai hệ tọa độ như sau:

1 1 1

1 o 1 1 1

r = r - t i + j + k = i + j + k - ( i + j + k)x y z x y z m n p

Do hai hệ tọa độ tịnh tiến với nhau nên i = i1 , j = j1 và k = k1 . Từ đó ta thu được kết quả sau: x1 = x – m ; y1 = y – n ; z1 = z – p .

Dưới dạng ma trận ta có thể viết lại ba biểu thức trên như sau:

11 1 1 1 0 0 0 1 0 0 0 1 . x x m y y n z p z            ÷  ÷ =    ÷ −  ÷  ÷  ÷    ÷ ÷  ÷ ÷  ÷      ÷    

Như vậy trong trường hợp hai hệ tọa độ tịnh tiến với nhau thì trong biểu thức (1), vector tịnh tiến t = (m, n, p) với (m, n, p) là tọa độ của O1 trong hệ tọa độ Oxyz, ma trận quay R là ma trận đơn vị (3 x 3).

 Trường hợp (Oxyz)1 quay so với Oxyz (O1 và O trùng nhau)

Hình 6. 26 Trường hợp quay hệ tọa độ

Trong hệ Oxyz ta biểu diễn một điểm p như sau: p = xi + yj + zk.

Tọa độ x1, y1, z1 của p trong hệ (Oxyz)1 được tính bằng cách lấy tích vô hướng của p với các vector đơn vị i1, j1, k1:

x1 = p . i1 = (i1 . i)x + (i1 . j)y + (i1 . k)z (2) y1 = p . j1 = (j1 . i)x + (j1 . j)y + (j1 . k)z (3) z1 = p . k1 = (k1 . i)x + (k1 . j)y + (k1 . k)z (4) Ta biểu diễn (2), (3) và (4) dưới dạng ma trận :

11 1 1 0 0 0 1 1 1 1 1 1 1 1 1 i i i j i k j i j j j k . - k i k j k k x x y y z z            ÷  ÷ =    ÷  ÷  ÷  ÷    ÷  ÷ ÷  ÷  ÷      ÷    

Như vậy trong trường hợp quay hệ tọa độ ta thu được kết quả sau đối với biểu thức (1): - Vector tịnh tiến t = (0, 0, 0) - Ma trận quay R = 1 1 1 1 1 1 1 1 1 i i i j i k j i j j j k k i k j k k           .

Ta nhận thấy ba vector hàng của ma trận R chính là tọa độ của các vector đơn vị i1, j1 và k1 trong hệ tọa độ Oxyz.

Như vậy, thông qua khảo sát hai trường hợp riêng biệt là tịnh tiến hệ tọa độ và quay hệ tọa độ, ta rút ra nhận xét sau: đối với trường hợp chuyển đổi hệ trục tọa độ từ hệ Oxyz ban đầu sang một hệ trục tọa độ bất kì (Oxyz)1 ta thực hiện một phép tịnh tiến và phép quay hệ tọa độ. Biểu thức toán học (1) thể hiện phép chuyển đổi này, trong đó:

- Vector tịnh tiến t = (m, n, p) với (m, n, p) là tọa độ của O1 trong hệ tọa độ Oxyz.

- Ma trận quay R = [r1 r2 r3]T là một ma trận vuông (3 x 3) với các vector hàng r1, r2, r3 lần lượt là tọa độ của các vector đơn vị i1, j1, k1 trong hệ tọa độ Oxyz. Để chuyển đổi được hệ tọa độ, chúng ta cần kết hợp phép tịnh tiến và phép quay tọa độ , phương thức public static Point3D UCS(Point3D value, Point3D O, Point3D X, Point3D Y)sẽ thực hiện việc chuyển đổi tọa độ điểm từ hệ tọa độ hiện tại sang hệ tọa độ mới,

+ O,X,Y lần lượt là gốc và điểm định hướng X và Y

Một phần của tài liệu NGHIÊN CỨU THIẾT KẾ VÀ CHẾ TẠO TAY ĐO TỌA ĐỘ (Trang 68)

Tải bản đầy đủ (DOCX)

(91 trang)
w