PIC Vietnam

Go Back   PIC Vietnam > Robotics > Điều khiển

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc Vi điều khiển

Điều khiển Lý thuyết điều khiển và ứng dụng lý thuyết điều khiển trong những trường hợp thực tế

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 13-04-2007, 07:58 PM   #1
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Quaternion - Phương pháp đại số biểu diễn phép xoay

Lý do của bài viết:
- Hiện nay nhóm đang thực hiện đề tài tự calib cho hệ cảm biến gyro và acc.
- Dự kiến nghiên cứu đôi nét về quaternion cho một số bài toán INS sau này
- Giới thiệu một phương pháp, có thể sau này áp dụng cho các hệ thống robotics

Phạm vi nội dung:
- Giới thiệu nguồn gốc, xuất xứ
- Giới thiệu cơ bản về cách sử dụng quaternion
- Giới thiệu một vài bài toán cơ bản làm trên Matlab

Người viết:
- Tất cả những ai có thể, không quan tâm đàn ông hay đàn bà, người già hay trẻ nhỏ, con bé hay thằng cu, dù bác dù tôi, tá lả...

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 14-04-2007, 01:06 PM   #2
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf

(William Rowan Hamilton; 1805 - 65), nhà cơ học, toán học Ailen. Nghiên cứu về quang học, cơ học giải tích và toán học. Các phương trình chính tắc Hamintơn, hàm Hamintơn, phương trình Hamintơn - Iacôbi, đại số các quatenion (a + ib + jc + kd) - khái niệm mở rộng của các số phức,... cho đến nay vẫn đang được dùng phổ biến trong các giáo trình đại học và trong nghiên cứu khoa học. Được bầu là Viện sĩ nước ngoài đầu tiên của Viện Hàn lâm khoa học Quốc gia của Hoa Kì (được thành lập năm 1863). Năm 32 tuổi, trở thành chủ tịch Viện Hàn lâm hoàng gia Ailen.

Đây là đồng chí đẻ ra cái quaternion. Về chi tiết đồng chí này, các bạn có thể tham khảo tại wikipedia tiếng Anh: http://en.wikipedia.org/wiki/William_Rowan_Hamilton

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 14-04-2007, 01:28 PM   #3
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Lịch sử quaternion

Trong một ngày đẹp trời, năm 183x (F chả nhớ), lúc đó đồng chí này rất là trai tráng, khỏe mạnh, nhưng chỉ mỗi tội hơi xấu giai tí, cho nên chưa có người yêu. Hôm đó chủ nhật đẹp trời, đồng chí đi dạo qua cầu sông Hàn (không phải của Hàn Quốc mà của Đà Nẵng). Đồng chí mới thấy, oái, sao cái cầu nó xoay được? Làm sao để biểu diễn được cái cầu xoay bằng các phương trình toán học?

Lưu ý rằng, các phương trình toán ma trận chưa được biết đến vào những năm này, cho nên mấy thứ như kiểu ma trận xoay các loại thì hoàn toàn không có trong ý niệm của chàng trai trẻ của chúng ta.

Đặc biệt, khi không có một cô bạn gái Đà Nẵng đi cùng, thì việc ngắm cái cầu đạt đến sự tập trung cao độ.

Đêm đó, đồng chí cũng rất rảnh, bởi vì không có cô nào để nghĩ tới, mà cũng không có điện thoại để nhắn tin chọc phá cô nào, cho nên đồng chí mới ngẫm nghĩ như sau:

a) Để biểu diễn một dãy số trên một đường thẳng, thì chúng ta có tập số thực, có nghĩa là .

b) Để biểu diễn một vector trên mặt phẳng, thì chúng ta có tập số phức có dạng (a + ib), trong đó i được gọi là số ảo. .

Rồi để biểu diễn vẫn đề một vector xoay trong mặt phẳng, thì chúng ta có thể biểu diễn nó ở dạng hệ trục tọa độ cực, hoặc bản thân phép xoay cũng có thể dễ dàng giải quyết với số phức. Dạng biểu diễn của hệ tọa độ cực:

Trong đó V là vector cần biểu diễn, R là độ lớn của vector, và e mũ:
.

Đại loại là như vậy, vì phần này khá loằng xì mà ngoằng, cho nên các bạn đọc lại thêm.

c) Cũng vì chưa có bạn gái, nên đồng chí của chúng ta nghĩ một cách rất ngờ nghệch rằng, nếu như một trục, ta dùng 1 số để biểu diễn, 2 trục, ta dùng 2 số để biểu diễn (số phức có 2 thành phần), thế thì nếu như cái cầu xoay trên sông Hàn là một không gian 3 chiều, thì chúng ta sẽ dùng 3 số để biểu diễn??

Sau một đêm quyết tâm và chắc mẩm với cái ý đồ của mình, đồng chí của chúng ta đã quyết tâm thử nghiệm. (a,b,c) để biểu diễn một vector trong không gian ba chiều.

Hơ hơ, phải định nghĩa các phép toán, cộng vector, nhân vector,... các bạn thử định nghĩa và thử làm các phép tính xem kết quả như thế nào?

Nói tóm lại, là không ra. Nhưng F khuyên các bạn hãy thử nghiệm đi, hay cho nó một dạng (a,b,c) = a + bx + cy. Sau đó các bạn thử thực hiện phép cộng trừ nhân chia giống như khi làm với số phức (a + ib), thì các bạn sẽ thấy kết quả rất rất là lý thú.

d) Vì không thể nào giải quyết được với 3 con số, cho nên khái niệm "tritanion" bị Hamilton đóng dấu khai tử từ đó. Mãi cho tới khi có bạn gái, trong một đêm không nghĩ ngợi được gì cả, Hamilton, đồng chí của chúng ta, đã cho ra đời một của nợ, mà kể từ đây về sau chúng ta sẽ phải coi nó là anh em, là bạn bè, là sư phụ, là niềm tự hào, là ... "quaternion"...

Dạng số (a,b,c,d) = a + ib + jc + kd, để biểu diễn cho một vector trong không gian ba chiều và biểu diễn sự quay của các vector.

Tạm tới đây cho sự mào đầu. Một điều chắc chắn rằng, bạn gái của Hamilton không phải là người Đà Nẵng, vì nếu không thì quaternion đã có phần của VN. Nhưng dù sao, câu chuyện là để kể cho vui, đừng phán xét câu chuyện.

Bài vừa rồi, mô tả sơ bộ ý tưởng về sự xuất hiện của quaternion. Lưu ý rằng, câu chuyện đi trên cầu là chính xác, vì Hamilton ghi rõ ngày ra đời của quaternion (hình như là 1838), chỉ có điều không phải là cầu sông Hàn, mà là một cây cầu nào đó... và sure là không đi với bạn gái!! Con gái là loài động vật có thể làm cho nhân loại mất đi cả một nền khoa học. . Ít nhất là nếu lúc này trên cầu có một cô gái, thì chúng ta sẽ mất đi cái gọi là "Đại số Hamilton".

Câu chuyện tiếp theo về quaternion, hy vọng sẽ có nhiều người kể tiếp, hôm nay bận, sẽ kể tiếp sau.

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 18-04-2007, 09:56 PM   #4
minhpic
Đệ tử 9 túi
 
Tham gia ngày: Nov 2005
Bài gửi: 99
:
Ha Ha bác F dí dỏm quá, mấy hôm nữa em hoàn thiện phần em dịch ngày làm đồ án tốt nghiệp (có đụng hàng đến thứ đại số kinh dị này) lâu quá không sờ đến nên quyên nhiều rùi, trong matlab cái thứ này quá nhiều trong phần aero..gì đó.
minhpic vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 16-05-2007, 07:50 PM   #5
Mecha
Trưởng lão PIC bang
 
Mecha's Avatar
 
Tham gia ngày: Dec 2005
Bài gửi: 315
:
Hôm nay trong lúc làm bài tập cho môn nonlinear control system, Mecha dính phải cái gọi là "port-Hamiltonian system". Đang đau đầu với nó đây! *.*
__________________
Sống là động nhưng lòng luôn bất động,
Sống là thương nhưng lòng chẳng vấn vương,
Sống yên vui danh lợi vẫn coi thường,
Tâm bất biến giữa dòng đời vạn biến.


Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
http://www.picvietnam.com/forum//showthread.php?t=1263
Mecha vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 16-05-2007, 09:38 PM   #6
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Trong không gian 1 chiều:

Rõ ràng không có phép xoay, chỉ có phép dịch chuyển. Và như vậy, để dịch chuyển tử một điểm này tới một điểm khác trên một trục thì rõ ràng là chúng ta dùng phép nhân, chỉ với điều kiện điểm đó không phải là điểm 0, thì có thể đi tới bất kỳ các điểm nào khác bằng việc nhân với một số thực.

Như vậy:

SỐ MỚI = SỐ * SỐ CŨ

*Lưu ý, cách viết này là do F viết (sai, nhưng sẽ làm cho dễ hiểu).

Trong không gian 2 chiều:

Xoay một phát thì làm thế nào? bác nào cho chút ý kiến nhẩy.

thay đổi nội dung bởi: falleaf, 23-05-2007 lúc 02:25 AM.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-05-2007, 07:53 PM   #7
Mecha
Trưởng lão PIC bang
 
Mecha's Avatar
 
Tham gia ngày: Dec 2005
Bài gửi: 315
:
Trong không gian hai chiều, phép quay 1 điểm quanh gốc tọa độ được biểu diễn bằng công thức:
x' = x*cos(alpha) - y*sin(alpha)
y' = x*sin(alpha) + y*cos(alpha)

alpha la góc quay với chiều quay dương được quy ước là ngược chiều kim đồng hồ
__________________
Sống là động nhưng lòng luôn bất động,
Sống là thương nhưng lòng chẳng vấn vương,
Sống yên vui danh lợi vẫn coi thường,
Tâm bất biến giữa dòng đời vạn biến.


Chú ý: đề nghị các thành viên đọc luồng dưới đây trước khi post bài:
http://www.picvietnam.com/forum//showthread.php?t=1263
Mecha vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 18-05-2007, 01:25 AM   #8
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Thực ra như vậy thì không làm rõ nghĩa cái đoạn phép nhân, nếu bây giờ viết lại dạng số phức thì sao nhỉ?

Chúc vui

thay đổi nội dung bởi: falleaf, 23-05-2007 lúc 02:22 AM.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 18-05-2007, 06:21 PM   #9
picvendor
Super Moderator
 
Tham gia ngày: Jun 2005
Bài gửi: 385
:
(bỏ qua bài giới thiệu về Quarternion của F)

Cả trong không gian n chiều, phương pháp ma trận vẫn có tác dụng tổng quát. Ma trận Rnxn nếu có n vector riêng thì thể hiện được không gian n chiều. Phép đưa một điểm từ vị trí này đến vị trí khác tương ứng với phép biến đổi ma trận:

A1 = TAT^(-1)

Nếu dùng đại số tuyến tính để thể hiện được các phép biến hình, thì việc sử dụng quarternion có ý nghĩa gì không?
__________________
Cách tìm link DOI để yêu cầu bài báo ở Sciencedirect: http://www.picvietnam.com/forum/show...&postcount=682
Cách tìm link DOI để yêu cầu bài báo ở IEEE: http://www.picvietnam.com/forum/show...&postcount=760
Cuộc thi thiết kế PIC (tạm ngưng): http://www.picvietnam.com/contest
picvendor vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 18-05-2007, 10:27 PM   #10
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Đó chính là một vấn đề rất lớn mà quaternion đã giải quyết. Bài giới thiệu đã nói rõ một điểm mà có lẽ picvendor chưa đọc kỹ. Đó là vào thời gian này, việc ứng dụng ma trận cho các phép xoay vẫn chưa được đề cập đến. Đây là thời kỳ vẫn còn toán đại số. Đó là điểm thứ nhất.

Điểm thứ hai, sau này khi phát triển lên một số vấn đề chi tiết, thì quaternion giải quyết được một số vấn đề. Trong đó, vấn đề của hệ xoay, hay hệ INS (thiết bị quán tính IMU) thì phân lầm 3 trường phái. Trường phái thứ nhất là trường phái robotics, họ đi lên bằng phương pháp Euler. Sau đó đi tới bằng DCM. Thực ra ma trận DCM là ma trận xoay trong ngành robotics vẫn hay dùng. Còn một số người, họ đi bằng Quaternion. Hai phương pháp đầu xử lý bằng ma trận, còn phương pháp thứ ba xử lý bằng đại số.

Cho tới nay, các phương pháp xử lý trên quaternion hoặc DCM hoặc Euler đều như nhau cả. Có nhiều vấn đề quaternion xử lý tốt, nhưng có nhiều vấn đề DCM lại xử lý tốt hơn.

Cho nên, việc nghiên cứu quaternion là một việc làm cần thiết không thể thiếu.

Để làm rõ chỗ này, nếu các bạn để ý rằng:



thì các bạn sẽ hình dung ra rằng, phép xoay trong hệ trục 2 chiều, chính là một phép nhân nữa giữa một số 2 chiều và một số 2 chiều. Nó cũng gần như kiểu trên số một chiều.

Đó chính là lý do vì sao, vào cái thời kỳ "mông muội" đó, Hamilton đã tạo ra một lý thuyết đại số mới tuyệt vời, bắt đầu từ ý nghĩ cơ bản, đó là nếu như trong không gian 2 chiều, thì lấy số 2 chiều nhân với số 2 chiều sẽ ra một vector mới để xoay. Nếu muốn thay đổi độ dài thì ở đây chúng ta thấy cũng rất dễ dàng là nhân với một hệ số nữa, và nó có dạng:



vẫn là số 2 chiều nhân với số hai chiều.

Vậy nếu như trong 3 chiều thì chúng ta có cách nào biểu diễn

Số 3 chiều mới = số 3 chiều x số 3 chiều cũ.

Đây là câu hỏi mà Hamilton đặt ra, bình thường như tất cả những người bình thường nào có thể đặt ra. Nhưng vấn đề là, ông là người đặt ra đầu tiên, và giải quyết được vấn đề này đầu tiên, để rồi không ai cần phải đặt ra hay cần phải giải quyết nữa.

Nhưng F rất muốn các bạn thử viết ra một trường hợp, và sử dụng phép xoay trong không gian 3 chiều và dùng một "vector 3 chiều" với 3 số để xử lý. Rõ ràng các bạn sẽ thấy không cách nào làm được.

Hamilton thêm vào đó một con số nữa. 4 số cho không gian 3 chiều. Không biết bắt nguồn từ đâu, có thể là tiếng Hy Lạp cổ. Quad có nghĩa là 4, như quarter, quad, quadrange,... Do đó, đại số với 4 con số được gọi là Quaternion.

Mục đích căn bản là, để làm sao biểu diễn một vector trong không gian biến thành một vector khác, chủ yếu là trong phép xoay, còn với phép tịnh tiến thì chỉ cần nhân hệ số vào là xong.

Lợi điểm của việc làm này, so với Euler, DCM còn là một dấu hỏi, về mức độ tính toán, hầu như quaternion tính toán ngắn hơn trong những phép tính đơn giản và căn bản. Sự chuyển đổi giữa Quaternion và DCM và Euler gần như tương đương. Tuy nhiên, mỗi phương pháp đều có một vấn đề cần phải xử lý ở mức cao, chứ mức cơ bản thì chỉ nói chơi thôi. Do vậy, chúng ta sẽ bàn vấn đề này sau. Nhưng để chứng thực một điều rằng không mèo nào cắn mỉu nào, thì các bạn có thể search các bài báo về INS, thì lượng sử dụng quaternion và dcm và euler là gần như nhau. Euler thì có phần yếu hơn hẳn vì nó có quá nhiều chỗ cần phải xử lý, nhưng DCM và quaternion gần như nhau cả thôi. Cho nên quaternion hoàn tòan không yếu một chút nào.

Chúc vui.

thay đổi nội dung bởi: falleaf, 23-05-2007 lúc 02:21 AM.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-05-2007, 03:06 PM   #11
HaiAu2005
Đệ tử 9 túi
 
Tham gia ngày: May 2006
Bài gửi: 150
:
Ai quan tâm nên tìm cuốn sau đọc (thử tìm trong http://ebooksclub.org xem sao):

Hamilton, William Rowan (1853). Lectures on Quaternions. Machillan and Co. Cambridge.

H.A.
HaiAu2005 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-05-2007, 09:11 PM   #12
tda
Đệ tử 3 túi
 
Tham gia ngày: Jul 2005
Bài gửi: 51
:
Nếu dùng đại số tuyến tính để thể hiện được các phép biến hình, thì việc sử dụng quarternion có ý nghĩa gì không?

Em chưa đọc kĩ bài của anh F nhung vector quartenion sử dụng thì sẽ có hai ưu điểm so vởi các góc Euler:
- Khử điểm kì dị trong biến đổi ận tốc giữa hai hệ toạ độ
- Ma trận DCM (ma trận chuyển hệ toạ độ - mt cosin chỉ hướng) thể hiện bằng vector quarternion sẽ toàn là cộng trừ các sộ hang của quarternion, khác với phải tính cos, sin so với dùng góc Euler. điều này quan trọng trong việc tính toán khi chỉ sử dụng vđk, vồn hạn chế về tốc độ.
Còn nếu dùng máy tính (mô phỏng) thì cứ dùng các góc Euler là thuận tiện nhất.

to HaiAu2005: anh có thể cho điểm cuốn sách anh giới thiệu dc ko, với 0 điểm là đọc chỉ phí thời gian, 10 điểm là rất cần thiết để đọc(có thể đọc đi đọc lại 2-3 lần), 5 điểm là chỉ dùng khi cần tham khảo.
tda vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-05-2007, 10:21 PM   #13
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
F không biết bạn gọi điểm kỳ dị là singularity? (F không biết dịch từ này trong tiếng Việt). Trong bài toán, còn có rất nhiều vấn đề xử lý ở mức chi tiết hơn nữa. quaternion vẫn bị những vấn đề khác vd như việc tính toán phải chuẩn hóa về độ dài đơn vị. Chính điều này là vấn đề.

Oki, tiếp đê, anh em phát thêm về chi tiết vấn đề quaternion đi. Cứ từ từ xây dựng thôi.

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-05-2007, 11:06 AM   #14
tda
Đệ tử 3 túi
 
Tham gia ngày: Jul 2005
Bài gửi: 51
:
điểm kỳ dị là singularity. Cái này ko phải em dịch mà anh Lâm dịch, lúc học động học robot, có khái niệm singularity và được dịch thành điểm kì dị.

Em chỉ lấy một số phần cơ bản để làm luận văn nên ko chi tiết, bài bản như anh viết được. Thế nên anh viết tiếp nhé.

Trích :Cả trong không gian n chiều, phương pháp ma trận vẫn có tác dụng tổng quát.

Đúng là người ta có xây dụng cả cho n chiều, rồi thay n=3 vào, nhưng cái này cũng chăng nên tìm hiểu làm gì vì em đọc chả hiểu khó như Đại số PFIEV hồi học năm 1 ấy.
tda vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-05-2007, 03:59 PM   #15
HaiAu2005
Đệ tử 9 túi
 
Tham gia ngày: May 2006
Bài gửi: 150
:
Nếu ngày nay có hàng trăm hàng nghìn cuốn sách viết về quaternions thì cuốn tôi giới thiệu là cuốn đầu tiên do chính tác giả, ông William Rowan Hamilton, của quaternions viết để làm bài giảng lúc đương thời (thế kỷ 19). Còn điểm thì để bạn đọc tự cho điểm!

Quyển này có cả trên Gmail (vì chắc không còn ai giữ bản quyền), tôi vừa tìm và download được ở địa chỉ sau:

http://books.google.com/books/pdf/Le...trPARo3gA24A3w

Hải Âu

thay đổi nội dung bởi: HaiAu2005, 20-05-2007 lúc 09:52 PM.
HaiAu2005 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 04:45 AM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam