Báo cáo thực tập cơ điện tử tại công ty TNHH ngô hà gia
LỜI CẢM ƠN Trong suốt trình thực tập tốt nghiệp vừa qua em nhận quan tâm, giúp đỡ tận tình từ anh thuộc cơng ty TNHH Ngô Hà Gia, từ thầy, cô giáo mơn Cơ điện tử, khoa Cơ khí trường Đại học Bách khoa thành phố Hồ Chí Minh Lời đầu tiên, em xin bày tỏ long biết ơn sâu sắc đến ban giám hiệu trường Đại học Bách khoa thành phố Hồ Chí Minh, thầy khoa Cơ khí đặc biệt thầy cô môn Cơ- điện tử tận tình giúp đỡ em suốt thời gian học trường Đặc biệt, em xin gửi lời cảm ơn chân thành đến thầy TS Ngô Hà Quang Thịnh, tạo điều kiện cho em thực tập công ty, trực tiếp giúp đỡ, tận tình hướng dẫn giải đáp thắc mắc suốt q trình thực tập để em hồn thành báo cáo Em xin gửi lời cảm ơn tới anh chị công ty TNHH Ngô Hà Gia giúp em suốt trình thực tập Em xin cảm ơn bạn bè gia đình hỗ trợ em suốt thời gian thực tập vừa qua Trong suốt trình thực tập, kiến thức chuyên mơn kiến thức ngồi thực tế nhiều hạn chế nên báo cáo tránh khỏi thiếu sót Em mong nhận nhận xét, góp ý từ thầy, để làm tốt báo cáo tới Em xin chân thành cảm ơn TPHCM, ngày 09 tháng 08 năm 2018 Sinh viên thực MỤC LỤC Phần 1: TỔNG QUAN 1.1 Giới thiệu công ty: 1.2 Sơ đồ tổ chức: Phần 2: TỔNG QUAN VỀ ROBOT CÔNG NGHIỆP 2.1 Tìm hiểu chung robot công nghiệp: 2.1.2 Định nghĩa robot công nghiệp: 2.1.3 Cấu trúc robot công nghiệp 2.2 Robot Fanuc 2.2.1 Tổng quan robot Fanuc 2.2.2 Cấu tạo robot: Phần 3: ĐIỀU KHIỂN ĐỘNG CƠ AC SERVO 11 3.1 Vị trí vai trò PCL6045BL Kit 11 3.2 Nguyên tắc hoạt động: 11 3.3 Một số thiết lập 13 3.3.1 Kiểu xuất xung cho hai chân OUT DIR 13 3.3.2 Thiết lập đường đặt tính xuất xung 13 3.3.3 Các kiểu xuất xung: .14 3.4 Điều khiển vị trí: 14 3.4.1 Xuất xung liên tục (MOD: 00h, 08h) 14 3.4.2 Xuất xung với giá trị tương đối (MOD: 41h) 15 3.4.3 Xuất xung với giá trị tuyệt đối ( MOD: 42h) 16 3.4.4 Trở vị trí counter ( MOD: 44h) 17 3.5 Những cố thường gặp điều khiển động AC servo 17 3.5.1 Đối với board PCL6045BL: 17 3.5.2 Đối với động AC servo: 18 Phần 4: GIỚI THIỆU VỀ OPENGL .19 4.1 Giới thiệu OpenGL 19 4.1.1 OpenGL gì? .19 4.1.2 Cấu trúc lệnh OpenGL 19 4.1.3 OpenGL Utility Toolkit (GLUT): 20 4.2 Vẽ đối tượng hình học 21 4.2.1 Một số thao tác bản: 21 4.2.2 Vẽ đối tượng hình học: 22 4.3 Các phép biến đổi 22 4.3.1 Giới thiệu: .22 4.3.2 Thao tác ModelView 23 4.3.3 Thao tác Projection 24 4.3.4 Thao tác ViewPort 24 4.4 Tô màu 26 4.4.1 Chế độ màu RGBA .26 4.4.2 Thiết lập màu shading 26 4.5 Tương tác với người dùng: Chọn đối tượng 26 MỤC LỤC HÌNH ẢNH Hình 2.1: Ứng dụng robot KAKU hệ thống sản xuất CIM Hình 2.2: Robot FANUC LR Mate 200iB .7 Hình 2.3: Vùng hoạt động FANUC LR Mate 200iB Hình 2.4:Cấu tạo FANUC LR Mate 200Ib Hình 3.1: Vị trí PCL6045BL Kit hệ thóng điều khiển 11 Hình 3.2: Kiểu xuất xung chân OUT DIR 13 Hình 3.3: Đường đặc tính xuất xung 13 Hình 3.4: Chế độ xuất xung liên tục .14 Hình 3.5: Chế độ xuất xung tương đối 15 Hình 3.6: Chế độ xuất xung tuyệt đối .16 Hình 3.7: Chế độ xuất xing counter 17 Hình 3.8: Sơ đồ đấu dây chân EL+(+ Limit) EL- (-Limit) 18 Hình 4.1 Giao diện Window OpenGL 21 Hình 4.2: Sơ đồ tạo ảnh tới mắt người nhìn OpenGL 22 Hình 4.3: Ảnh tạo thơng qua camera 23 Hình 4.4: Minh họa cho việc thiết lập Viewport .25 Hình 4.5: Dùng GLUT để tạo hai khớp robot, thao tác xoay robot chuột 27 Hình 4.6: Dùng MFC để tạo khớp, điều chỉnh slider toolbar .28 MỤC LỤC BẢ Bảng 2.1: Thông số kĩ thuật robot FANUC LR Mate 200Ib .9 Bảng 3.1: Các bước vận hành board PCL6045BL 12 Y Phần 1: TỔNG QUAN 1.1 Giới thiệu công ty: Công ty TNHH Ngô Hà Gia: Với định hướng doanh nghiệp khoa học công nghệ, công ty bao gồm đội ngũ kỹ sư trẻ, giàu nhiệt huyết, vững chuyên môn nhằm áp dụng thành tựu lĩnh vực khoa hoc công nghệ, nâng cai giá trị gia tăng hàm lượng chất xám sản phẩm “Made in Viet Nam” 1.2 Sơ đồ tổ chức: Công ty TNHH Ngơ Hà Gia: Sản phẩm cơng ty: Sản phẩm công ty thiết bị, vi mạch điều khiển, giải pháp phần mềm lĩnh vực khí, tự động hóa Phần 2: TỔNG QUAN VỀ ROBOT CƠNG NGHIỆP 2.1 Tìm hiểu chung robot công nghiệp: 2.1.1 Sơ lược trình phát triển: a) Trên giới: Thuật ngữ “Robot” xuất phát từ tiếng Séc (Czech) “Robota” có nghĩa công việc tạp dịch kịch Rosum’s Robot Karel Capek, vào năm 1921 Thuật ngữ Industrial Robot (IR) xuất Mỹ công ty AMF ( American Machine and Foundry Company) quảng cáo, mô thiết bị có dáng dấp tính tay người điều khiển tự dộng, thực số thao tác sản xuất có tên “Versatran” *Q trình phát triển xủa Robot cơng nghiệp tóm tắt sau: - Năm 1950, Mỹ thành lâp viện nghiên cứu Đầu năm 1960, công ty AMF cho ta đời sản phẩm có tên Versatran Từ năm 1967, ANh người ta bắt đầu nghiên cứu chế tạ IR theo quyền Mỹ Từ năm 1970, việc nghiên cứu tính robot ý nhiều bắt đầu xuất nước như: Đức, Ý , Pháp, Thụy Điển Từ năm 1968, Nhật Bản bắt đầu nghiên cứu IR Từ 1980-1990, Robot có vị trí quan trọng dây chuyển sản xuất tự động đại Đến có khoảng 200 cơng ty sản suất IR giới: + Ở Mỹ có khoảng 30 cơng ty: Robots.Pro, Vecna Robotics, Robot Dynamics, … Cùng với sản phẩm tiếng như: robot lấy sách tự động , robot tự hành Spirit and Opportunity… + Ở Nhật có khoảng 80 cơng ty, điển hình như: Yaskawa( Motoman), Fanuc, Toyota, Hoanda,… Ngồi , giới có 90 cơng ty Tây Âu số cơng ty Nga,… Do đó, ta nói robot lĩnh vực nghiên cứu ứng dụng thiếu nước phát triển b) Tại Việt Nam: Tại Việt Nam, nghiên cứu phát triển robot có bước tiến đáng kể 25 năm qua Nhiều đơn vị toàn quốc thực nghiên cứu và ứng dụng robot như: Trung tâm Tự động hóa- Đại học Bách khoa Hà Nội, viện Điện tử-Tin học, viện Khoa học Công nghệ quân -Học viện Kỹ thuật qn sư,… Bên cạnh đó, phải kể đến Cơng ty Cổ phần Robot TOSY doanh nghiệp thiết kế chế tạo robot Việt Nam có nhiều sản phẩm ấn tượng thị trường quốc tế Các nghiên cứu động học động lực học robot khoa khí, chế tạo máy trường đại học viện nghiên cứu quan tâm, Ngồi việc tìm phương pháp giải toán liên quan đến học loại robot nối tiếp, song song, di động, chương trình mơ kết chuyển động 3D áp dựng phát tiển để minh họa phục vụ cho phân tích, thiết kế robot 2.1.2 Định nghĩa robot công nghiệp: Robot công nghiệp định nghĩa theo số tiêu chuẩn sau: Theo tiêu chuẩn AFNOR Pháp: Robot công nghiệp cấu chuyển động tự động lập trình, lặp lại chương trình, tổng hợp chương trình đặt trục tọa độ, có khả đinh vị, đinh hướng, di chuyển đối tượng vật chất chi tiết, đạo cụ, gá lắp theo hành trình thay đổi cài đặt nhằm thực nhiệm vụ công nghệ khác Theo tiêu chuẩn RIA Mỹ ( Robot Institute of America): Robot tay máy vạn lặp lại chương trình, thiết kế để di chuyển vật liệu, chi tiết, dụng cụ, thiết bị chun dung thơng qua chương trình điều khiển để hoàn thành nhiệm vụ khác Theo tiêu chuẩn TOCT 25686-85 Nga: Robot công nghiệp máy tự động đặt cố định di động được, liên kết tay máy hệ thống điều khiển theo chương trình, lặp lại để hoàn thành chức vận đơng điều khiển q trình sản xuất Do đó, robot cơng nghiệp thiết bị tự động hóa trở thành phận thiếu hệ thống sản xuất linh hoạt Vì robot công nghiệp trở thành phương tiện hữu hiệu để tự động hóa, nâng cao suất lao động giảm nhẹ cho người công việc nặng nhọc, độc hại giám sát cong người Hình 2.1: Ứng dụng robot KAKU hệ thống sản xuất CIM 2.1.3 Cấu trúc robot công nghiệp a) Các thành phần robot cơng nghiệp: Một robot cơng nghiệp thường bao gồm thành phân sau: cánh tay robot, ngồn động lực, dụng cụ gắn lên khâu chấp hành ( tool), cảm biến, điều khiển, bẳng dạy, máy tính… Cánh tay robot ( tay máy) kết cấu khí gồm khâu liên kết với khớp động để tạo chuyển động robot Nguồn động lực động điện, hệ thống thủy lực, khí nén cho tay máy hoạt động Dụng cụ thao tác gắn lên khâu cuối robot, dụng cụ robot nhiều kiểu khác như: dạng bằn tay để nắm bắt đối tượng công cụ làm việc mỏ hàn, đá mài, đầu phun sơn… Bảng dạy ( Teach-Pendant) dung để dạy cho robot thao tác cần thiết theo u cầu q trình làm việc, sau robot lặp lại cacs bước trình dạy Các phần mềm độc lập chương trình điều khiển robot cài đặt máy tính, dung để điều khiển robot thông qua điều khiển ( Controller) Bộ điều khiển gọi Modun điều khiển ( Unit Driver) Một modun điều khiển có cổng I/O để làm việc với nhiều thiết bị khác cảm biến giúp robot nhận biết trạng thái thân, xác định vị trí đối tượng làm việc dò tìm vât khác,… b) Kết cấu tay máy Tay máy phần quan trọng robot cơng nghiệp, định đến khả làm việc robot Các kết cấu nhiều tay máy theo cấu tạo chức tay người, nhiên ngày tya máy thiết kế đa dạng, nhiều cánh tay robot có hình dáng khác xa so với cánh tay người Trnong thiết kế sử dụng, cần quan tâm đến thông số liên quan đến khả làm việc robot như: tầm với ( trường công tác), số bậc tự ( thể khéo léo, linh hoạt robot), độ cứng vững, tải trọng vật nâng, lực kẹp… 2.2 Robot Fanuc 2.2.1 Tổng quan robot Fanuc Máy robot FANUC LR Mate 200Ib, robot dòng FANUC, robot nhỏ gọn, mơđun, sử dụng cho nhiều ứng dụng khác Robot 200iB hệ thống servo có cánh tay robot bậc tự với khả quay phía sau để có vùng làm việc lớn để cung cấp linh hoạt tối đa Các lợi ích bổ sung bao gồm tốc độ trục đạt 480 độ/ giây, phận hiệu ứng cuối tích hợp cổ tay, phanh an toàn trục trục 3, van điện từ gắn bên Bảo trì yêu cầu với động servo không chổi than AC 10 - Kết thúc: sử dụng lệnh “ Immediate Stop” 49h 3.4.2 Xuất xung với giá trị tương đối (MOD: 41h) Chỉ rõ số lượng xung xuất chiều quay, quy định số có dấu theo ghi PRMV Hình 3.5: Chế độ xuất xung tương đối Ví dụ 2: Vận hành xuất xung liên tục theo chiều tăng với tần số 20 xung/s lệnh Start kết thúc đạt 500 xung so với ban đầu (Sử dụng phần mềm NPMCom) - Tắt điều kiện ngắt: + RENV1 = 0x200h: đặt chân ALM tích cực cao để tắt ALM + Cấp điện 24V vào chân EL+ EL- để tắt EL+ EL- Thiệt lập Speed pattern: + FL=10 +PRMG=299 Thiết lập mode hoạt động: PRMD=0x41h Thiết lập số xung: PRMV=500 Bắt đầu chạy: Sử dụng lệnh “FL constant speed start” 50h Kết thúc đủ 500 xung 3.4.3 Xuất xung với giá trị tuyệt đối ( MOD: 42h) Board vận hành đến giá trị xung ghi PRNV trùng với giá trị counter 20 Hình 3.6: Chế độ xuất xung tuyệt đối Ví dụ 3: Vận hành xuất xung liên tục theo chiều tăng với tần số 300 xung/s lệnh Start kết thúc counter đạt 5000 xung (Sử dụng phần mềm NPMCom) - Tắt điều kiện ngắt: + RENV1 = 0x200h: đặt chân ALM tích cực cao để tắt ALM + Cấp điện 24V vào chân EL+ EL- để tắt EL+ EL- Thiệt lập Speed pattern: + FL=150 +PRMG=149 Thiết lập mode hoạt động: PRMD=0x42h Thiết lập số xung: PRMV=5000 Bắt đầu chạy: Sử dụng lệnh “FL constant speed start” 50h Kết thúc counter đạt 5000 xung 3.4.4 Trở vị trí counter ( MOD: 44h) Board vận hành giá trị counter giá trị 0, chiều quay thiết lập tự động đến gần giá trị 21 Hình 3.7: Chế độ xuất xing counter Ví dụ 3: Counter có giá trị 300, vận hành cho counter trở giá trị với tần số 30 xung/s (Sử dụng phần mềm NPMCom) - Tắt điều kiện ngắt: + RENV1 = 0x200h: đặt chân ALM tích cực cao để tắt ALM + Cấp điện 24V vào chân EL+ EL- để tắt EL+ EL- Thiệt lập Speed pattern: + FL=30 +PRMG=299 Thiết lập mode hoạt động: PRMD=0x44h Bắt đầu chạy: Sử dụng lệnh “FL constant speed start” 50h Kết thúc counter đạt giá trị 3.5 Những cố thường gặp điều khiển động AC servo 3.5.1 Đối với board PCL6045BL: - Bắt buộc phải cấp 24V DC vào chân EL+ EL- xuất xung 22 Hình 3.8: Sơ đồ đấu dây chân EL+(+ Limit) EL- (-Limit) - Mỗi lần chạy chế độ, muốn tùy chỉnh phải set up lại phần mềm board 3.5.2 Đối với động AC servo: Trên servo pack thường mắc lỗi sau: + Lỗi A.81: Encoder Back up Error: Trên AC servo có hai chế độ encoder : tuyệt đối ( Absolute) tương đối ( Increment) Khi lỗi xảy thiếu nguồn cấp cho encoder ( thường đặt chế độ tuyệt đối), ta phải chuyển encoder chế độ tương đối ( Increment) cách set ghi Pn200, bit thứ từ lên + Lỗi A.C9: Encoder Communication Error Kiểm tra lại cáp nối từ động encoder + Lỗi A.72: Overload Kiểm tra động có bị kẹt hay tải Trên động thường mắc lỗi sau: + Cấp xung động không hoạt động: Đầu tiên, ta phải set up servopack SigmaWin, sử dụng chức Auto Turnign để cài đặt thông số số cho phù hợp với động tải sử dụng 23 Phần 4: GIỚI THIỆU VỀ OPENGL Để mô robot, ta thường dùng công cụ Simechanic Matlab kết hợp SolidWork Trong báo cáo này, xin giới thiệu công cụ khác để mô chuyển động robot thư viện OpenGL 4.1 Giới thiệu OpenGL 4.1.1 OpenGL gì? OpenGL thư viện, tiêu chuẩn đồ họa, có khoảng 200 hàm bản, giúp bạn xây dựng đối tượng đồ họa phức tạp từ hàm vẽ vẽ line, vẽ điểm, phép quay, phép chiếu OpenGL ứng dụng nhiều việc phát triển game đồ họa 2D, 3D phần mềm mô phpngr đồ họa cho lĩnh vực khí, xây dựng OpenGL hỗ trợ lệnh đồ họa : - - Xây dựng đối tượng phức tạp từ thành phần hình học (điểm, đoạnm đa giác, ảnh, bitmap) Sắp xết đối tượng 3D chọn điểm thuân lợi đẻ quan sát Tính tốn màu sắc đối tượng (màu sắc đối tượng quy định điều kiện chiếu sang, texture đối tượng, mơ hình xây dựng kết hợp yếu tố đó) Biến đổi mơ tả tốn học hổi tượng thơng tin màu sắc thành pixel hình ( trình gọi rasterization) 4.1.2 Cấu trúc lệnh OpenGL OpenGL sử dựng tiền tố “gl” từ viết hoa chữ đầu để tạo nên tên lệnh, ví dụ glClearColor() Tương tự, OpenGL đặt tên số bắt đầu “GL_” từ tiếp sau viết hoa cách dâu “_”, ví dụ: GL_COLOR_BUFFER_BIT Bên cạnh đó, với số lệnh, để ám số lượng kiểu tham số truyền, số hậu tố sử dụng bảng sau 24 Hậu tố Kiểu liệu Tương ứng C Tương ứng OpenGL B 8-bit integer Signed char GLbyte S 16-bit integer Short GLshort I 32-bit integer int or long GLint, GLsizei F 32-bit floating point Float GLfloat, GLclampf D 64-bit floating point Double GLdouble, GLclampd Ub - bit unsigned unsigned char integer Glubyte, Gluboolean Us 16 - bit unsigned unsigned short integer GLushort Ui 32- bit integer Gluint, GLbitefield unsigned unsigned int or unsigned long GLenum, Ví dụ: glVertex2i(1,3) tương ứng với xác định điểm (x,y) với x,y nguyên (integer) Lưu ý: OpenGL có định nghĩa số kiểu biến, việc sử dụng đinh nghĩa thay vị định nghĩa có sẵn C tránh gây lỗi biên dịch code hệ thống khác Một số lệnh OpenGL kết thưc với “v” ám tham số truyền vào vector Ví dụ: glColor3v( color_array) color_array mảng chiều có ba phần tử float 4.1.3 OpenGL Utility Toolkit (GLUT): Để khắc phục số nhược điểm OpenGL, GLUT tạo vơi nhiều hàm hỗ trợ: - Quản lí Window Display callback Nhập xuất ( bàn phím, chuột,…) Vẽ số đối tượng phực tạp ( mặt cầu, khối hộp …) 25 Hình 4.1 Giao diện Window OpenGL 4.2 Vẽ đối tượng hình học 4.2.1 Một số thao tác bản: Xóa hình: Trong OpenGL có hai loại buffer phổ biến nhất: + color buffer: buffer chứa màu pixel cần thực + depth buffer ( hay gọi z-buffer): buffer chứa chiều sâu pixel, đo khoảng cách đến mắt Mục đích buffer loại bỏ phần đối tượng nằm sau đối tượng khác Mỗi lần vẽ, nên xóa buffer glClearColor(0.0, 0.0, 0.0, 0.0); /* xác định màu để xóa color buffer (màu đen)*/ glClearDepth(1.0); /* xác định giá trị để xóa depth buffer */ glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 26 /* xóa color buffer depth buffer */ Xác định màu: Khi vẽ đối tượng, OpenGL tự động sử dụng màu xác định trước Do đó, để vẽ đối tượng với màu sắc theo ý mình, cần phải thiết lập lại màu vẽ thiết lập màu vẽ dùng hàm glColor3f ( ) 4.2.2 Vẽ đối tượng hình học: OpenGL khơng có sẵn hàm để xây dựng đối tượng hình học phức tạp, người dùng phải tự xây dựng chúng từ đối tượng hình học OpenGL hổi trợ: điểm, đoạn thẳng, đa giác Khai báo điểm, dùng hàm glVertexXY với X số chiều ( 3), Y kiểu liệu 4.3 Các phép biến đổi 4.3.1 Giới thiệu: Trong OpenGL, tiến trình từ điểm nhìn tới khơng gian giới thực đến pixel mà sau: Hình 4.2: Sơ đồ tạo ảnh tới mắt người nhìn OpenGL Tương ứng với thao tác chụp ảnh sau: 27 Hình 4.3: Ảnh tạo thông qua camera 4.3.2 Thao tác ModelView Trước kkhi thực thao tác ModelView, cần gọi hàm glMatrixMode(GL_MODELVIEW) - Một số hàm biến đổi affine: OpenGL hỗ trợ sẵn hàm biến đổi affine: +Tịnh tiến: void glTranslate{fd}(TYPEx, TYPE y, TYPEz); + Quay quanh trục nối gốc tọa độ với điểm (x,y,z) void glRotate{fd}(TYPE angle, TYPE x, TYPE y, TYPE z) + Tỉ lệ ( tâm tỉ lệ tới gốc tọa độ) void glScale{fd}(TYPEx, TYPE y, TYPEz); 28 Với mục đích tổng quát hơn, việc nhân hai ma trận Mđược thực thi hàm: void glMultMatrix{fd}(const TYPE *m); - Thiết lập view: Giống chụp hình, thiết lập view thiết lập vị trí góc, hướng camera GLUT có hàm giúp thiết lập view cách nhanh chóng Ta dùng hàm: Void gluLookAt() 4.3.3 Thao tác Projection Trước thực thi thao tác chiếu, gọi hàm: glMatrixMode(GL_PROJECTION); glLoadIdentity(); - Chiếu phối cảnh ( Perspective Projection) Đặc điểm phép chiếu đối tượng lùi xa ngày nhỏ Để thiết lập phép chiếu này, OpenGL có hàm : Void glFrustum( ) Void gluPerspective(); - Chiếu trực giao ( Orthogonal Projection) Trong phép chiếu này, khoảng cash vất tới camera không ảnh hưởng đến độ lớn vật hiển thị Để thiết lập phép chiếu này, OpenGL có hàm: Void glOrtho() 4.3.4 Thao tác ViewPort OpenGL có hàm thiết lập Viewport : void glViewPort() 29 Hình 4.4: Minh họa cho việc thiết lập Viewport Chú ý lập trình mơi trường Windows ( ví dụ MFC), tọa độ sổ thông thường quy định sau: 30 Tuy nhiên ViewPort, quy định hệ tọa độ khác: 4.4 Tô màu 4.4.1 Chế độ màu RGBA OpenGL hộ tọe chế độ màu RGBA Color-Index Trong báo cáo này, quan tâm đến RGBA Trong chế độ màu RGBA, RGB ba màu: đỏ, xanh xanh dương Còn A alpha khơng ảnh hưởng trực tiếp lên màu pixelm người ta dùng A để xác định độ suốt 4.4.2 Thiết lập màu shading Một đoạn thẳng tơ màu đồng ( chế độ flat) hay tạo nhiều màu sắc khác ( chế độ smooth) Để thiết lập chế độ shading phù hợp, dùng hàm: Void glShdeModel( GLenum mode); Trong mode chế độ mong muốn, nhận hai giá trị GL_SMOOTH GL_FLAT 4.5 Tương tác với người dùng: Chọn đối tượng Việc cho phép người dùng chọn đối tượng cách click chuột cửa sổ yêu cầu thiết yếu ứng dụng tương tác Để thực chức vậy, OpenGL có sẵn chế độ Selection 31 Có cơng đoạn lớn cần phải làm: Thực thao tác vẽ chế độ render (đây điều mà chương trước bàn tới) Thực thao tác vẽ chế độ selection (giống hồn tồn cơng đoạn (1), kết hợp với số thao tác đặc trưng chế độ selection Công đoạn thao tác để biến đổi đối tượng không gian pixel sau hiển thị lên hình Cơng đoạn 2, gần ngược lại, chương trình xác định xem pixel mà người dùng tương tác (ví dụ nhấn chuột trái) thuộc đối tượng Để chuyển đổi qua lại công đoạn (hay chế độ), dùng hàm: GLint glRenderMode(GLenum mode); đó: mode GL_RENDER GL_SELECT (mode GL_FEEDBACK khơng xét tới) Hình 4.5: Dùng GLUT để tạo hai khớp robot, thao tác xoay robot chuột 32 Hình 4.6: Dùng MFC để tạo khớp, điều chỉnh slider toolbar 33 TÀI LIỆU THAM KHẢO Fanuc Robot series LR Handling Tool Fanuc Robotics SYSTEM R-J3iB Controller KAREL Reference Manual Fanuc Robotics SYSTEM R-J3iB Controller Maintenance Manual NPM Nipon Pulse Motor Co., Ltd., User’s Manual For PCL6045BL Pulse Control LSI, 2009 NPM Nippon Pulse Motor Co., Ltd., User's Manual For PCL6045 Pulse Control LSI, 2009 PCL-6045BL Evaluation Kit Instruction Lê Phong, Hướng dẫn lập trình OpenGL Joey de Vries, Learn OpenGL- An offline transcript of learnopengl.com, 2017 Nguyễn Văn Chánh, Giáo trình mơn học- Lập trình Window với VC/MFC, 2006 34 ... dụng thành tựu lĩnh vực khoa hoc công nghệ, nâng cai giá trị gia tăng hàm lượng chất xám sản phẩm “Made in Viet Nam” 1.2 Sơ đồ tổ chức: Công ty TNHH Ngô Hà Gia: Sản phẩm cơng ty: Sản phẩm cơng ty. .. Bảng 3.1: Các bước vận hành board PCL6045BL 12 Y Phần 1: TỔNG QUAN 1.1 Giới thiệu công ty: Công ty TNHH Ngô Hà Gia: Với định hướng doanh nghiệp khoa học công nghệ, công ty bao gồm đội ngũ... glRotate{fd}(TYPE angle, TYPE x, TYPE y, TYPE z) + Tỉ lệ ( tâm tỉ lệ tới gốc tọa độ) void glScale{fd}(TYPEx, TYPE y, TYPEz); 28 Với mục đích tổng quát hơn, việc nhân hai ma trận Mđược thực thi hàm: void