Robot công nghiệp là l nh vực đã đƣợc nghiên cứu và phát triển mạnh trên
thế giới.Ở nƣớc ta l nh vực này còn mới mẻ ngày nay trong môi trƣờng sản xuất
hiện đại, hầu hết các quy trình đƣợc thực hiện b ng các máy chuyên dùng. Với các
phƣơng pháp này, đã làm giảm r rệt chi phí sản xuất các sản phẩm công nghiệp
phù hợp với đa số ngƣời tiêu dùng. Tuy nhiên mỗi máy công cụ, đƣợc thiết kế để
thực hiện nguyên công cho trƣớc, mỗi khi cần thay đổi kiểu m u sản phẩm, thì toàn
bộ dây chuyền sản xuất phải đƣợc cải tạo lại. Việc sửa đổi đó rất tốn k m. Kiểu tự
động hoá này là kiểu tự động hoá cứng và rất tốn k m.
Do vậy, mà trên thế giới có phƣơng pháp sản xuất tiên tiến tiến đó là chế tạo
ra các loại Robot đƣợc đƣa vào quy trình chế tạo để thực hiện nhiều nguyên công
nhƣ: chuyển tải vật tƣ và các thiết b trong các dây chuyền hiện đại, hàn điểm, sơn
phun và l p ráp trong công nghiệp ô tô . . Do các cơ cấu hoạt động đƣợc điều
khiển b ng máy tính ho c các bộ vi xử lý, chúng có thể tái lập dễ dàng cho nhiều
nguyên công khác nhau, do đó không cần thay các máy móc này khi thay đổi kiểu
m u sản phẩm. Đây là kiểu tự động hoá linh hoạt và mang lại hiệu quả kinh tế cao
và rất cần thiết trong hoàn cảnh của đất nuớc ta hiện nay đang tiến tới công nghiệp
hóa và hiện đại hoá đất nuớc.
Robot công nghiệp đƣợc ứng dụng rộng rãi trong các dây truyền sản xuất
hiện đại và có sự linh hoạt cao vì vậy việc nghiên cứu và chế tạo rô bốt là cần
thiết. Trong quá trình tính toán và thiết kế và chế tạo Rôbốt thì việc mô phỏng các
hoạt động của Rôbốt là một phần rất quan trọng. Quá trình mô phỏng sẽ cho ta
thấy đƣợc sự hoạt động và quá trình làm việc của Rôbốt. Với các ý ngh a đó trong
môn học Đồ án tin học ứng dụng với sự hƣớng d n của thầy giáo TS Phan Bùi
Khôi em đã chọn đề tài “Xây dựng chƣơng trình mô phỏng hoạt động của Robot
Scara 4 bậc tự do”.
______________________________________________________________________________________
11
ĐỒ ÁN TỐT NGHIỆP
Em xin cám ơn thầy đã tạo điều kiện thuận lợi và hƣớng d n ch bảo tận tình
giúp em hoàn thành tốt Đồ án tin học ứng dụng này.
86 trang |
Chia sẻ: ngtr9097 | Lượt xem: 5000 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đồ án Lập trình mô phỏng hoạt động của rôbốt Scara 4 bậc tự do, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
______________________________________________________________________________________
1
ĐỒ ÁN TỐT NGHIỆP
TRƢỜNG ĐHBKHN CỘNG HÕA XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA CƠ KHÍ Độc lập - Tự do - Hạnh phúc
-------------
***
------------
-------------------------
***
----------------------
NHIỆ V THIẾT KẾ ĐỒ ÁN N H C
Họ và tên sinh viên: NGUYỄN ĐỨC NHIÊN
Khoa: Cơ khí ớp: Cơ điện tử 1 – K49 Bộ môn: Cơ học ứng dụng
Giáo viên hƣớng dẫn: TS. PHAN BÙI KH I
1. Đầu đề thiết kế
ập trình mô phỏng hoạt động cuả rôbốt Scara 4 bậc tự do.
2 .Các số liệu ban đầu
3 .Nội dung thuyết minh và tính toán
Đồ án gồm các phần chính sau:
A. Mục đích của đồ án tin học ứng dụng
Tìm hiểu
- Tìm hiểu về 1 robot cụ thể sử dụng trong công nghiệp(Robot Scara)
- Tìm hiểu về các cơ cấu hoạt động của Robot – các khâu hoạt động của
Rôbốt.
- Tìm hiểu về động học và mô hình 3D của Robot mô phỏng hoạt động của
Robot
- Tìm hiểu cách xây dựng chƣơng trình điều khiển cho robot
B. Nhiệm vụ của em trong đồ án tin học ứng dụng là xây dựng chƣơng trình mô
phỏng hoạt động của robotScara 4 bậc tự do.
______________________________________________________________________________________
2
ĐỒ ÁN TỐT NGHIỆP
+ Các công cụ để xây dựng bài toán mô phỏng
- Ngôn ngữ lập trình C++(Xây dựng giao diện MFC,xây dựng chƣơng trình dọc file
dữ liệu có dạng .*BDF và .*STL).
- Lập trình đồ họa OPEN GL để xây dựng các khối đồ họa để mô phỏng (Tìm hiểu
kỹ các gói thƣ viện của OPEN GL).
- Các công cụ cần để xây dựng là Visual C++ 6.0 (tạo Project với Visual C++)
C. Kết quả đạt đƣợc qua đồ án
- Hiểu đuợc nguyên lý hoạt động của Robot trong công nghiệp qua chƣơng trình
mô phỏng
- Có 1 chƣơng trình cụ thể để mô phỏng .
- Tìm hiểu và lập trình MÔ PHỎNG với openGL.
- Tìm hiểu về phần mền lập trình Visual C++ 6.0.
- Tìm hiểu về ngôn ngữ lập trình VC++ .
4 .Yêu cầu chung
- N m vững kiến thức cơ sở về Cơ học để khảo sát bài toán t nh học.
- Sử dụng thành thạo ít nhất một phần mềm thiết kế, n m vững kiến thức về
tính toán thiết kế chi tiết máy, các bộ truyền động cơ khí.
- Các phần của thuyết minh gồm Trang bìa, Nhiệm vụ thiết kế, mục lục, giới
thiệu, nội dung (đ t bài toán, thực hiện, kết luận), tài liệu tham khảo.
- Phần đ t vấn đề cần cụ thể, r ràng, ch ra đƣợc mục đích, nhiệm vụ, kết quả
mong muốn. Phần thực hiện trình bày cơ sở lý thuyết khảo sát, tính toán,
thiết kế C : y ,
______________________________________________________________________________________
3
ĐỒ ÁN TỐT NGHIỆP
, . Các kết quả nhận đƣợc
thể hiện dƣới dạng đồ th , bảng số, ho c ghi ra file kết quả, các phần mềm
đƣợc xây dựng,
- Thuyết minh đồ án đƣợc trình bày trong ít nhất 20 trang khổ giấy A4, soạn
thảo b ng máy tính, cở chữ 13-14, 1.5 line, font tiếng Việt (Times New
Roman), lề trên dƣới 2cm, trái 3cm, phải 2cm. In một m t, đóng thành quyển
khi hoàn thành và nộp cho giáo viên hƣớng d n đúng thời hạn để đƣợc duyệt
và cho ph p bảo vệ kết quả trƣớc hội đồng chấm đồ án môn học.
5 .Ngày hoàn thành nhiệm vụ ..
Ngày 09 tháng 11 năm 2008
Chủ nhiệm bộ môn Giáo viên hƣớng d n
Sinh viên đã hoàn thành
(v ộ ả ế ế
Ngày 09 tháng 11 năm 2008
______________________________________________________________________________________
4
ĐỒ ÁN TỐT NGHIỆP
MỤC LỤC
MỤC LỤC ..................................................................................................................... 4
LỜI NÓI ĐẦU
......9
GIỚI THIỆU TỔNG QUAN VỀ ROBOT CÔNG NGHỆP VÀ MÔ PHỎNG
HOẠT ĐỘNG
.11
CHƢƠNG I: CÁC C NG C ĐỂ XÂY DỰNG BÀI TOÁN PHỎNG HOẠT
ĐỘNG CỦA ROBOT ................................................................................................... 13
1.1. Giới thiệu về Open GL
.. .....13
1.1.1.Đ c điểm của OpenGL
.. ...14
1.1.2. Các thƣ viện hỗ trợ lập trình
OpenGL .. 20
1.1.3. Các bƣớc tổng quan khi xây dựng ứng dụng đồ họa với
OpenGL ...21
1.1.4. Xây dựng các đối tƣợng 3 chiều
.. 23
1.1.5. Quan sát các đối tƣợng 3 chiều
. ....... 24
______________________________________________________________________________________
5
ĐỒ ÁN TỐT NGHIỆP
1.2.Giới thiệu về VisualC++ và ứng dụng
MFC . ... .27
1.3. Tìm hiểu phần mềm thiết kế VS 6.0 và AutoCAD ,
SolidWorks . ...28
CHƢƠNG II: CÁC BƢỚC XÂY DỰNG BÀI TOÁN PHỎNG ……32
2.1. Cách tạo ra một project MFC để mô phỏn . ..32
2.2. Khởi tạo và thiết lập các gói thƣ viOpenGL ...39
2.3. Thiết kế mô hình Robot trên SolidWork
2007 . ...58
2.4. Xây dựng module đọc file .*STL và
.*BDF . ... 61
2.4.1. Xây dựng module đọc file .*STL
61
2.4.2 Xây dựng module đọc file .*BDF
. . .. 65
2.5. Mô phỏng chƣơng trình trên OpenGL
.. .. 74
CHƢƠNG III: CHẠY CHƢƠNG TRÌNH PHỎNG ............................................ 75
KẾT LUẬN ................................................................................................................... 81
Tài liệu tham khảo ...................................................................................................... 83
______________________________________________________________________________________
6
ĐỒ ÁN TỐT NGHIỆP
DANH C CÁC HÌNH VẼ TRONG ĐỒ ÁN
H 1.1 : Mộ ố ơ ỗ ấ ơ ả ợ ằ
OpenGL.................16
H 1. 2 : Mộ ố ơ ợ ở
OpenGL......................................16
H 1. 3 :M 4 ố ơ : 2 ố ỏ v 2 ố x
.......................17
H 1. 4 :M ơ v d ộ
.......................18
H 1.5: M 3 v 3 ằ
OpenGL….19
H 1. 6 :M 1 ợ ằ
OpenGL………………………………...20
H 1.7 : C ọ ố ợ ể vẽ S dw
2007……………………………………….28
H 1.8 :Mộ ơ ả ợ vẽ ằ S dWorks
…………………………………...29
H 1.9 : G d ổ q ể vẽ
AutoCAD………………………………………………..30
H 1.10: G d ổ q ể ế 1 j
MFC…………………………………..31.
H 2.1 : Bắ ầ ế MFC
…………………………………………………………….….33
H 2.2 : T ế 1 ……………………………………………………………………..
….…..34
H 2.3 : T ế
2…………………………………………………………………………..…34
H 2.4 : T ế
3……………………………………………………………………………...35
H 2.5 :T ế 4
……………………………………………………………………………...36.
______________________________________________________________________________________
7
ĐỒ ÁN TỐT NGHIỆP
H 2.6 : T ế
5………………………………………………………………………………37
H 2.7 : H ế P j
MFC……………………………………………….…37.
H 2.8 : C y ử P j
MFC…………………………………………………………….…38.
H 2.9 : C dụ
MFC…………………………………………………….…39
H 2.10 : T ế v
OpenGL……………………………………………..….40.
H 2.11 : C ọ O ể ế O GL
…………………………………..…45.
H 2.12 : C ọ O D s y ể y O GL
…………………………………………47.
H 2.13 : C ọ O S z ể ế dụ O GL
………………….…...48.
H 2.14 : C ọ O P ể vẽ ố ợ O GL
……………………………50
H 2.15 : C y ử j O GL ………………………………………………………53.
H 2.16 : T ê ế v P j MFC ………………………………………………….…54
H 2.17 : C ọ O T ể ế ờ y O GL……………..……55
H 2.18 : T ế O T ……………………………………………….……56
H 2.19 : T ế N w
Symbol…………………………………………………………..…..57
H 2.20 : C y ử 1 ơ OpenGL…………………………………………………57
H 2.21 : Vẽ ầ ế R
………………………………………………………..……58.
H 2.22 : Vẽ â 1 R …………………………………………………………..……59
H 2.23 : Vẽ â 2 R …………………………………………………………..……59
H 2.24 : K â
3………………………………………………………………………………60.
______________________________________________________________________________________
8
ĐỒ ÁN TỐT NGHIỆP
H 2.24 : K â
3…………………………………………………………………………….…60.
H 2.25 : M R ã ợ ắ v ê S dW
2007.61
H 2.26 : C yể s
File.*STL…………………………………………………………..…62
H 2.27 : C yể ầ ế R s
.*STL…………………………………………..63
H 2.28 : C ọ ị d f .* STL
ASCII………………………………………...64.
H 2.29 : C yể ế v â s f
.*STL………………………………………65
H 2.30: C X W s y…………………………………………………..…66
H 2.31 : T ụ
XchangeWorks…………………………………………………….66.
H 2.32: P ầ ề A CAD
2000…………………………………………..……….…….67.
H 2.33: Hộ L d/U d A ……………………………………..……….68
H 2.34 : I /X ………………………………………………………………….….68
H 2.35: Hộ O f *.s d …………………………………………………….…69
H 2.36: T FF ê ố ợ 3D……………………………………………70
H 2.37 : K ố ơ ả s …………………………………………………….……71
H 2.38 : M R S ã ợ vẽ ê
OpenGL………..74.
H 3.1 : R y q ỹ 1 ờ ấ ỳ ………………………..……75.
H 3.1 : R y q ỹ 1 ờ ấ ỳ ………………………….…76.
H 3.2 : R y q ỹ 1 ờ ò ……………………………………....77.
H 3.3 : R y q ỹ 1 ờ E s ……………………………….….78.
H 3.4 : R y q ỹ 1 ờ S ………………………………….79
H 3.5 : R y q ỹ 1 ờ 3 …………………….....80
______________________________________________________________________________________
9
ĐỒ ÁN TỐT NGHIỆP
______________________________________________________________________________________
10
ĐỒ ÁN TỐT NGHIỆP
ỜI NÓI ĐẦU
Robot công nghiệp là l nh vực đã đƣợc nghiên cứu và phát triển mạnh trên
thế giới.Ở nƣớc ta l nh vực này còn mới mẻ ngày nay trong môi trƣờng sản xuất
hiện đại, hầu hết các quy trình đƣợc thực hiện b ng các máy chuyên dùng. Với các
phƣơng pháp này, đã làm giảm r rệt chi phí sản xuất các sản phẩm công nghiệp
phù hợp với đa số ngƣời tiêu dùng. Tuy nhiên mỗi máy công cụ, đƣợc thiết kế để
thực hiện nguyên công cho trƣớc, mỗi khi cần thay đổi kiểu m u sản phẩm, thì toàn
bộ dây chuyền sản xuất phải đƣợc cải tạo lại. Việc sửa đổi đó rất tốn k m. Kiểu tự
động hoá này là kiểu tự động hoá cứng và rất tốn k m.
Do vậy, mà trên thế giới có phƣơng pháp sản xuất tiên tiến tiến đó là chế tạo
ra các loại Robot đƣợc đƣa vào quy trình chế tạo để thực hiện nhiều nguyên công
nhƣ: chuyển tải vật tƣ và các thiết b trong các dây chuyền hiện đại, hàn điểm, sơn
phun và l p ráp trong công nghiệp ô tô .. . Do các cơ cấu hoạt động đƣợc điều
khiển b ng máy tính ho c các bộ vi xử lý, chúng có thể tái lập dễ dàng cho nhiều
nguyên công khác nhau, do đó không cần thay các máy móc này khi thay đổi kiểu
m u sản phẩm. Đây là kiểu tự động hoá linh hoạt và mang lại hiệu quả kinh tế cao
và rất cần thiết trong hoàn cảnh của đất nuớc ta hiện nay đang tiến tới công nghiệp
hóa và hiện đại hoá đất nuớc.
Robot công nghiệp đƣợc ứng dụng rộng rãi trong các dây truyền sản xuất
hiện đại và có sự linh hoạt cao vì vậy việc nghiên cứu và chế tạo rô bốt là cần
thiết. Trong quá trình tính toán và thiết kế và chế tạo Rôbốt thì việc mô phỏng các
hoạt động của Rôbốt là một phần rất quan trọng. Quá trình mô phỏng sẽ cho ta
thấy đƣợc sự hoạt động và quá trình làm việc của Rôbốt. Với các ý ngh a đó trong
môn học Đồ án tin học ứng dụng với sự hƣớng d n của thầy giáo TS Phan Bùi
Khôi em đã chọn đề tài “Xây dựng chƣơng trình mô phỏng hoạt động của Robot
Scara 4 bậc tự do”.
______________________________________________________________________________________
11
ĐỒ ÁN TỐT NGHIỆP
Em xin cám ơn thầy đã tạo điều kiện thuận lợi và hƣớng d n ch bảo tận tình
giúp em hoàn thành tốt Đồ án tin học ứng dụng này.
GIỚI THIỆU TỔNG QUAN VỀ R BỐT C NG NGHIỆP VÀ
PHỎNG HOẠT ĐỘNG
Ngày nay, robot công nghiệp có vai trò rất quan trọng và đƣợc ứng dụng rộng
rãi trong quá trình sản xuất của nền công nghiệp hiện đại. Để chế tạo ra đƣợc một
mô hình robot và đem ra phục vụ cho sản xuất phải trải qua rất nhiều giai đoạn nhƣ
: tìm hiểu về các loại robot và các đ c tính hoạt động của nó,tính toán một cách
chính xác các khâu của các cơ cấu, các phƣơng trình hoạt động và thiết kế các mô
hình 3D sao cho tối ƣu và hiệu quả nhất.Một mô hình robot hoạt động trơn tru và
đáp ứng đƣợc các yêu cầu kỹ thuật đề ra đòi hỏi việc chế tạo là hết sức t m và chi
tiết từng bƣớc một. Trong một mô hình robot bao gồm rất nhiều phần nhƣ Cơ khí
để chế tạo ra các chi tiết, điện tử để điều khiển các hoạt động và tin học để lập trình
cho các cơ cấu của robot hoạt động theo các quỹ đạo và yêu cầu kỹ thuật đề ra.
Một phần cũng rất quan trọng mà một mô hình robot nào cũng phải thực hiện là mô
phỏng quá trình hoạt động của nó.
Sau khi hoàn thiện mô hình robot thì mô phỏng chính là kiểm tra trên máy
tính xem mô hình robot đó có hoạt động tốt hay không, có thực hiện đƣợc các yêu
cầu đ t ra hay không, sau đó đƣa vào các thông số đã tính toán, giải lập quá trình
hoạt động của đội tƣợng một cách trực quan nhất. Trên cơ sở đó có thể kiểm
nghiệm đƣợc quá trình hoạt động của cơ cấu có đúng theo kết quả tính toán và thiết
kế hay không. M t khác, cũng có thể thay đổi một cách linh hoạt các số liệu, các
thông số ban đầu vào để tìm ra lời giải cho bài toán tối ƣu cơ cấu. Mô phỏng còn
đóng vai trò rất lớn trong việc giảng dạy, báo cáo, truyền đạt thông tin về sản phẩm
______________________________________________________________________________________
12
ĐỒ ÁN TỐT NGHIỆP
cho mọi ngƣời. Giúp cho nhà thiết kế có có nhìn tổng quan về sản phẩm để từ đó
có thể cải tiến sản phẩm, ho c đƣa ra một quy trình sản xuất đơn giản, tối ƣu cho
sản phẩm. Vì vậy có thể thấy mô phỏng là một khâu rất quan trọng, không thể thiếu
trong quá trình chế tạo sản phẩm nhƣ các loại robot công nghiệp.
Trong l nh vực cơ khí có rât nhiều phền mềm nổi tiếng nhƣ : AutoCAD,
Inventor, SolidWorks, Catia . Dùng để tính toán, thiết kế và mô phỏng, kiểm tra
các điều kiện làm việc của chi tiết . Tuy nhiên, các phần mềm này còn b hạn chế
khi cần mô phỏng kết cấu hoạt động theo một quy trình tính toán cụ thể ví dụ nhƣ
hoạt động của robot theo 1 theo 1 quỹ đạo cụ thể . Khi đó, để có thể chủ động, linh
hoạt trong quá trình tính toán và thiết kế thì đơn giản và tiện lợi là lập trình mô
phỏng, qua đó ta có thêt xây dựng và đáp ứng đúng với nội dung và mục đích thiết
kế.
Để lập trình mô phỏng đƣợc hoạt động của robot thì trong Đồ án tin học em chọn
ngôn ngữ lập trình Visual C++ và đƣợc kết hợp với thƣ viện đồ họa của OpenGL để
xây dựng đƣợc bài toán mô phỏng phù hợp vói yêu cầu.
Nội dung của Đồ án tốt nghiệp “Lập trình mô phỏng hoạt động của Robot
Scara 4 bậc tự do” gồm có 3 chƣơng nhƣ sau :
Chƣơng 1 : CÁC C NG C ĐỂ XÂY DỰNG BÀI TOÁN PHỎNG HOẠT ĐỘNG
CỦA R BỐT
Chƣơng này giới thiệu về các công cụ cần thiết để xây dựng bài toán mô phỏng
nhƣ ngôn ngữ lập trình Visual C++, các ứng dụng MFC và thƣ viện đồ họa
OpenGL, phần mềm thiết kế nhƣ AutoCAD, SolidWorks
Chƣơng 2 : CÁC BƢỚC ĐỂ XÂY DỰNG BÀI TOÁN PHỎNG.
______________________________________________________________________________________
13
ĐỒ ÁN TỐT NGHIỆP
Trong chƣơng này bao gồm các bƣớc cần thiết để thực hiện xây dựng chƣơng trình
khi mô phỏng, nhƣ khởi tạo dự án MFC, nhập các thƣ viện OpenGL, thiết kế các
mô hình .
Chƣơng 3 : CHẠY CHƢƠNG TRÌNH PHỎNG THEO QUỸ ĐẠO ĐÃ SỐ HÓA.
Chƣơng này giới thiệu khái quát về chƣơng trình mô phỏng đã xây dựng đƣợc,
cách sử dụng các chức năng chính mà chƣơng trình có thể cung cấp .
CHƢƠNG I
CÁC CÔNG CỤ ĐỂ XÂY DỰNG BÀI TOÁN MÔ PHỎNG HOẠT ĐỘNG CỦA
ROBOT
Các công cụ để xây dựng bài toán mô phỏng gồm có:
- Thƣ viện đồ họa OpenGL.
- Ngôn ngữ lập trình Visual C++ và các ứng dụng của MFC.
- Phầm mềm thiết kế Solidworks và AutoCAD.
1. Giới thiệu chung.
1.1- Giới thiệu về phần mền OpenG
Để hiểu một cách cụ thể về công cụ đồ họa nhƣ OpenGL thì một câu hỏi đƣợc đ t
ra là : OpenGL là gì ? và tại sao lại sử dụng OpenGL cho bài toán mô phỏng.
Hình 1.1 Logo OpenGL
______________________________________________________________________________________
14
ĐỒ ÁN TỐT NGHIỆP
OpenGL là chữ viết t t của Open Graphic Library là 1 thƣ viện đồ họa tốc độ cao
và độc lập với hệ thống giao diện các hệ điều hành. Tiền thân của OpenGL là IRIS
GL do hãng Silicon Graphic Library Inc phát triển cho các WorkStation đồ họa tốc
độ cao từ năm 1982.Sau đó từ năm 1992 thì OpenGL đã trở thành một chuẩn công
nghiệp và đ c tính kỹ thuật của OpenGL do ủy ban kỹ thuật ARB (Architectural
Review Board ) phê chuẩn.
Trong công nghệ đồ họa động đang ngày càng đƣợc ứng dụng trong cuộc
sống và ngày nay nó đã đƣợc phát triển tƣơng đối mạnh mẽ ở Việt Nam.Trong kỹ
thuật thì việc sử dụng các ứng dụng của OpenGL cũng nhƣ DirectX vào việc mô
phỏng các cơ cấu máy móc, các họat động của Rôbốt công nghiệp trƣớc khi đem
thử nghiệm b ng mô hình thực là giải pháp mà rất nhiều k sƣ cơ khí cũng nhƣ
cũng nhƣ các viện nghiên cứu lựa chọn do tính ƣu việt của nó trong việc thể hiện
các mô hình đồ họa động trong không gian 3 chiều (3D). Vì vậy trong phạm vi của
đồ án này em chọn cách sử dụng OpenGL để xây dựng bài toán mô phỏng.
1.2 Gới thiệu về Cơ chế hoạt động của Open G .
Hình 1.2 : Cơ chế hoạt động của OpenGL
OpenGL có cơ chế hoạt động theo kiểu ống d n tức là đầu ra của giai đoạn trƣớc là
đầu vào của giai đoạn sau.Từ sơ đồ thì các thành phần của cơ chế đƣợc giải thích
nhƣ sau :
______________________________________________________________________________________
15
ĐỒ ÁN TỐT NGHIỆP
+ Display List: Là nơi lƣu lại một số lệnh để xử lý sau.
+ Evaluator: Xấp x các đƣờng cong và m t phẳng hình học b ng cách đánh giá các
đa thức của dữ liệu đƣa vào.
+ Per-vertex operations and primitive assembly: Xử lý các primitive (điểm,đoạn,đa
giác) đƣợc mô tả bởi các vertex. Các vertex sẽ đƣợc xử lý và các primitive đƣợc c t
x n vào viewport để chuẩn b cho khâu kế tiếp.
+ Rasterization: sinh ra một loạt các đ a ch framebuffer và các giá tr liên quan
b ng cách sử dụng mô tả 2 chiều của điểm, đoạn,đa giác.Mỗi phần tử (fragment)
đƣợc sinh ra sẽ đƣa vào giai đoạn kế tiếp.
+ Per-fragment operations: Các tác vụ sau cùng (cập nhập có điều kiện cho
framebuffer dựa vào dữ liệu vào và dữ liệu đƣợc lƣu trữ trƣớc đó của giá tr z (đối
với z buffering), thực hiện trộn màu cho các pixel và làm một số thao tác khác) sẽ
đƣợc thực hiện trên dữ liệu trƣớc khi nó đƣợc chuyển thành pixel và đƣa vào
framebuffer.
Trong trƣờng hợp dữ liệu vào ở dạng pixel không phải vertex, nó sẽ đƣa thẳng vào
giai đoạn xử lý pixel. Sau giai đoạn này, dữ liệu ở dạng pixel sẽ đƣợc lƣu trữ vào
texture memory để đƣa vào giai đoạn Per-fragment operation ho c đƣa vào
Rasterization nhƣ dữ liệu dạng Vertex(tức là các điểm).
1.3 Đặc điểm của OpenG .
Các khả năng của thƣ viện OpenGL cung cấp.OpenGL là một thƣ viện đồ họa rất
lớn gồm khoảng 150 hàm hỗ trợ một số tính năng cơ bản sau:
1.3.1.Khả năng thể hiện các đối tượng đồ hoạ cơ bản.
OpenGL cũng có cách xây dựng các đối tƣợng theo cách riêng. Trong OpenGL,
mọi đối tƣợng hình học đều đƣợc mô tả cơ bản từ các vertex. Vertex cũng có thể
______________________________________________________________________________________
16
ĐỒ ÁN TỐT NGHIỆP
hiểu là một điểm. Cấu trúc này bao gồm bộ 4 số thực ch tọa độ trong không gian.
Để ch đ nh một vertex, ta dùng:
glVertex{234}{sifd}[v](TYPEcoords);
Từ hình vẽ trên ta có thể thấy các trƣờng khai báo có nội dung nhƣ sau:
[v] - véctơ chứa các phần tử là tọa độ của Vertex.
{sifd}- kiểu tham số của vector: Interger, float…
{234}- số phần tử của véctơ
Các đối tƣợng đồ hoạ cơ bản nhƣ điểm,đoạn thẳng,đa giác,các đƣờng cong hay m t
cong bậc hai.
Giá tr Ý ngh a.
GL_POINT Hàm này cung cấp các chức năng vẽ điểm (tức là từng
Vertex đƣợc vẽ riêng)
GL_LINE Vẽ đƣờng thẳng nối giữa 2 điểm ( Mỗi c p vertex
đƣợc coi nhƣ 2 đầu một đoạn thẳng)
GL_LINE_STRIP Tập hợp của những đoạn thẳng nối với nhau ( Bộ 4
vertex xem nhƣ các đ nh tứ giác (có l p))
GL_LINE_LOOP Đƣờng gấp khúc kh p kín(Nhƣ trên nhƣng vertex đầu
và cuối đƣợc nối với nhau (l p vòng))
GL_TRIANGLES Vẽ hình tam giác.( Bộ 3 vertex đƣợc xem các đ nh một
tam giác (không l p))
GL_QUADS Vẽ tứ giác.( Bộ 4 vertex đƣợc xem nhƣ 4 đ nh 1 đa giác
(không l p))
GL_TRIANGLES_STRIP Vẽ tập hợp các tứ giác liền nhau chung một cạnh.( Bộ 3
vertex xem nhƣ các đ nh tam giác (có l p))
______________________________________________________________________________________
17
ĐỒ ÁN TỐT NGHIỆP
GL_TRIANGLE_FAN Vẽ hình quạt.( Vertex 0 là đ nh chung kết hợp c p đ nh
bất kỳ tạo tam giác)
Dƣới đây là một số hàm thể hiện các đối tƣợng cơ bản
______________________________________________________________________________________
18
ĐỒ ÁN TỐT NGHIỆP
Hình 1.3: Các đối tượng đồ họa cơ bản.
Ngoài ra còn có một số đối tƣợng 3 chiều cơ bản nhƣ: Hình cầu, hình trụ, hình hộp
vv... từ đó ta xây dựng đƣợc các đối tƣợng 3 chiều phức tạp hơn, thậm chí có thể tự
đ nh ngh a hay thiết