Đồ án Ứng dụng phần mềm để giải quyết một số module cơ khí-Kỹ thuật (Phần 1)

pdf 22 trang phuongnguyen 2210
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Ứng dụng phần mềm để giải quyết một số module cơ khí-Kỹ thuật (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfdo_an_ung_dung_phan_mem_de_giai_quyet_mot_so_module_co_khi_k.pdf

Nội dung text: Đồ án Ứng dụng phần mềm để giải quyết một số module cơ khí-Kỹ thuật (Phần 1)

  1. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA CƠ KHÍ CHẾ TẠO MÁY ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ CHẾ TẠO MÁY ỨNG DỤNG PHẦN MỀM ĐỂ GIẢI QUYẾT MỘT SỐ MODULE CƠ KHÍ - KỸ THUẬT GVHD: ThS. NGUYỄN VĂN ĐOÀN SVTH: TRẦN QUAN VIỆT MSSV: 11143195 SVTH: LÊ VĂN NHẬT TÂN MSSV: 11104080 SVTH: NGUYỄN VŨ TOÀN MSSV: 11143161 S K L 0 0 3 9 9 6 Tp. Hồ Chí Minh, tháng 7/2015
  2. TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA CƠ KHÍ CHẾ TẠO MÁY BỘ MÔN CÔNG NGHỆ CHẾ TẠO MÁY ĐỒ ÁN TỐT NGHIỆP Đề tài: “Ứng dụng phần mềm để giải quyết một số Module cơ khí – kỹ thuật” Giảng viên hƣớng dẫn: ThS. NGUYỄN VĂN ĐOÀN Sinh viên thực hiện: TRẦN QUAN VIỆT MSSV: 11143195 Lớp: 111431A Khóa: 2011-1015 Tp. Hồ Chí Minh, tháng7/2015
  3. TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT TP. HCM CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA CƠ KHÍ CHẾ TẠO MÁY Độc lập - Tự do - Hạnh phúc Bộ môn Công nghệ chế tạo máy NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Giảng viên hƣớng dẫn: ThS. Nguyễn Văn Đoàn Sinh viên thực hiện: Trần Quan Việt MSSV: 11143195 1. Tên đề tài: Ứng dụng phần mềm để giải quyết một số Module cơ khí – kỹ thuật 2. Các số liệu, tài liệu ban đầu: Tài liệu ứng dụng phƣơng pháp phần tử hữu hạn trong tính toán kết cấu, các tài liệu hƣớng dẫn ngôn ngữ lập trình C#, AutoLisp, Autodesk Inventor VB.NET, Matlab. Các tài liệu hƣớng dẫn sử dụng phần mềm Visual Studio 2012, WinNC 32 hệ FANUC, Autocad 2007, Autodesk Inventor 2014, Matlab. Các tài liệu môn học nhƣ Lập trình gia công CNC, Sức bền vật liệu, Chi tiết máy, Phần tử hữu hạn đã đƣợc xuất bản và tài liệu online trên Internet. 3. Nội dung chính của đồ án: - Module 1: Sử dụng ngôn ngữ C# trong phần mềm Visual Studio 2012 để lập trình điều khiển phần mềm WinNC 32. - Module 2: Sử dụng ngôn ngữ AutoLisp đƣợc tích hợp sẵn trong phần mềm Autocad để tạo chƣơng trình thiết kế tự động một phần của hộp giảm tốc. - Module 3: Sử dụng ngôn ngữ Autodesk Inventor VB.NET trong công cụ iLogic của phần mềm Autodesk Inventor để tạo và hiệu chỉnh version mô hình 3D của chi tiết. - Module 4: Sử dụng ngôn ngữ Matlab trong phần mềm Matlab để tính toán ứng suất, chuyển vị của khung xe đạp và xuất biểu đồ lực, moment, chuyển vị. 4. Các sản phẩm dự kiến - File .exe chƣơng trình điều khiển phần mềm WinNC 32 hệ FANUC. - Tạo chƣơng trình ứng dụng, lệnh mới trong Autocad giúp thiết kế tự động một phần của hộp giảm tốc. - Tạo chƣơng trình ứng dụng, hộp điều khiển trong phần mềm Autodesk Inventor để quản lý version mô hình 3D chi tiết. - Tạo chƣơng trình tính toán ứng suất, chuyển vị của khung xe đạp dƣới tác dụng của lực và xuất biểu đồ lực, moment, chuyển vị. 5. Ngày giao đồ án: 26/03/2015 6. Ngày nộp đồ án: 22/07/2015 TRƢỞNG BỘ MÔN GIẢNG VIÊN HƢỚNG DẪN Đƣợc phép bảo vệ Không đƣợc phép bảo vệ i
  4. LỜI CAMKẾT Tên đề tài: “Ứng dụng phần mềm để giải quyết một số Module cơ khí – kỹ thuật.” GVHD: ThS. Nguyễn Văn Đoàn Họ tên sinh viên: Trần Quan Việt MSSV: 11143195 Lớp: 111431A Khóa: 2011-1015 Địa chỉ sinh viên: D414, KTX D2, Đại học Sƣ Phạm Kỹ Thuật Tp. Hồ Chí Minh Số điện thoại liên lạc: 01676867102 Email: 11143195@hcmute.edu.vn Lời cam kết: “Tôi xin cam đoan đồ án tốt nghiệp này là công trình do chính tôi nghiên cứu và thực hiện. Tôi không sao chép từ bất kỳ một bài viết nào đã được công bố mà không trích dẫn nguồn gốc.Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác nếu có bất kỳ một sự vi phạm nào, tôi xin chịu hoàn toàn trách nhiệm”. Tp. Hồ Chí Minh, ngày tháng năm 2015 Ký tên ii
  5. LỜI CẢM ƠN Trong thời gian thực hiện luận văn “Ứng dụng phần mềm để giải quyết một số Module cơ khí – kỹ thuật” tôi đã nhận đƣợc nhiều sự giúp đỡ của quý thầy cô, gia đình và bạn bè. Vậy nay tôi: - Xin gửi lời cám ơn chân thành đến thầy ThS. Nguyễn Văn Đoànđã giúp đỡ và hƣớng dẫn cho tôi những kiến thức thực tế quan trọng và dẫn hƣớng cho quá trình thực hiện đồ án tốt nghiệp của mình. Thầy đã dành thời gian quý báu của mình để hƣớng dẫn tôi. - Xin gửi lời cảm ơn đến anh Phạm Nguyễn Hải Hậu – sinh viên Cơ tin khóa 2008 và bạn Nguyễn Hữu Chỉnh – sinh viên KTCN khóa 2012 trƣờng đại học Sƣ Phạm Kỹ Thuật Tp. Hồ Chí Minh đã giúp đỡ kiến thức chuyên môn về lập trình cho tôi trong suốt quá trình tôi thực hiện đồ án Tốt nghiệp. Đồng thời gửi lời cảm ơn đến các bạn sinh viên trên Internet đã không ngại chia sẻ kiến thức đến mọi ngƣời trong đó có tôi. - Tôi cũng không quên cám ơn đến quí thầy cô trong Trƣờng Đại Học Sƣ Phạm Kỹ Thuật TP HCM đã tận tình dạy dỗ, truyền đạt cho tôi những kiến thức nền tảng và cơ bản trong thời gian qua để tôi có những kiến thức quan trọng, vững chắc cho những lập luận của mình trong đồ án tốt nghiệp này. Một lần nữa, xin chân thành cảm ơn ! Sinh viên thực hiện Trần Quan Việt iii
  6. TÓM TẮT ĐỒ ÁN TỐT NGHIỆP Ứng dụng phần mềm để giải quyết một số Module cơ khí – kỹ thuật Đề tài nghiên cứu về việc ứng các ngôn ngữ lập trình vào các phần mềm thiết kế, tính toán, mô phỏng, gia công trong lĩnh vực kỹ thuật cơ khí để cải thiện môi trƣờng, điều kiện, tốc độ làm việc cũng nhƣ học tập. Đề tài gồm có bốn Module nghiên cứu đó là: - Module 1: Sử dụng ngôn ngữ C# trong phần mềm Visual Studio 2012 để lập trình điều khiển phần mềm WinNC 32 - Module 2: Sử dụng ngôn ngữ AutoLisp đƣợc tích hợp sẵn trong phần mềm Autocad để tạo chƣơng trình thiết kế tự động một phần của hộp giảm tốc - Module 3: Sử dụng ngôn ngữ Autodesk Inventor VB.NET trong công cụ iLogic của phần mềm Autodesk Inventor để tạo và hiệu chỉnh version mô hình 3D của chi tiết - Module 4: Sử dụng ngôn ngữ Matlab trong phần mềm Matlab để tính toán ứng suất, chuyển vị của khung xe đạp và xuất biểu đồ lực, moment, chuyển vị. Sau quá trình nghiên cứu, viết lên chƣơng trình ứng dụng, tôi nhận thấy kết quả khả quan với việc tăng tốc độ, cải thiện điều kiện làm việc. Tuy nhiên, vẫn còn một số vấn đề chƣa thể giải quyết triệt để trong quá trình nghiên cứu đề tài nhƣ không thể điều khiển hoàn toàn phần mềm WinNC nếu nhƣ không có khả năng lập trình thực sự tốt, một số đoạn code AutoLisp sẽ thực sự không đƣợc dùng đến vì sau này các phiên bản Autocad mới hơn đã có những cải tiến mạnh Tốt nhất là tùy vào khả năng, tƣ duy lập trình, ngôn ngữ lập trình đã biết và điều kiện giải quyết công việc cũng nhƣ học tập mà mỗi ngƣời sẽ có những ứng dụng khác nhau nhƣng việc ứng dụng ngôn ngữ lập trình cần đƣợc đƣa vào dạy học không những ngành kỹ thuật cơ khí mà các ngành khác nữa là thực sự cần thiết cho tƣơng lai. iv
  7. MỤC LỤC Trang NHIỆM VỤ ĐỒ ÁN i LỜI CAM KẾT ii LỜI CẢM ƠN iii TÓM TẮT ĐỒ ÁN iv MỤC LỤC v DANH MỤC BẢNG BIỂU vii DANH MỤC SƠ ĐỒ, HÌNH viii CHƢƠNG 1: GIỚI THIỆU 1 1.1 Tính cấp thiết của đề tài 1 1.2 Ý nghĩa khoa học và thực tiễn của đề tài 2 1.3 Mục tiêu nghiên cứu của đề tài 2 1.4 Đối tƣợng và phạm vi nghiên cứu 2 1.4.1 Đối tƣợng nghiên cứu 2 1.4.2 Phạm vi nghiên cứu 2 1.5 Phƣơng pháp nghiên cứu 3 1.5.1 Cơ sở phƣơng pháp luận 3 1.5.2 Các phƣơng pháp nghiên cứu cụ thể 3 1.6 Kết cấu của đồ án tốt nghiệp 3 CHƢƠNG 2: TỔNG QUAN NGHIÊN CỨU ĐỀ TÀI 4 2.1 Giới thiệu về ngôn ngữ C# trong Visual Studio 4 2.2 Giới thiệu về phần mềm WinNC 4 2.3 Giới thiệu về ngôn ngữ AutoLisp tích hợp trong phần mềm Autocad 5 2.4 Giới thiệu ngôn ngữ Visual Basic 6 2.5 Giới thiệu phần mềm Autodesk Inventor 7 2.6 Giới thiệu phần mềm Matlab 8 CHƢƠNG 3: CƠ SỞ LÝ THUYẾT 11 3.1 Cấu trúc lệnh ngôn ngữ C# 11 3.2 Lập trình gia công mô phỏng trên phần mềm giáo dục WinNC 13 3.3 Cấu trúc lệnh ngôn ngữ AutoLisp 14 3.4 Các lệnh cơ bản vẽ các chi tiết 2D trong Autocad 17 3.5 Cấu trúc lệnh ngôn ngữ VB.NET trong iLogic 17 3.6 Lý thuyết các lệnh vẽ vật thể trong Autodesk Inventor 18 3.7 Cấu trúc lệnh ngôn ngữ Matlab 19 3.8 Lý thuyết tính lực cho trục, dầm 21 CHƢƠNG 4: PHƢƠNG HƢỚNG VÀ GIẢI PHÁP LẬP TRÌNH CHO MODULE 1 25 v
  8. CHƢƠNG 5: PHƢƠNG HƢỚNG VÀ GIẢI PHÁP LẬP TRÌNH CHO MODULE 2 33 CHƢƠNG 6: PHƢƠNG HƢỚNG VÀ GIẢI PHÁP LẬP TRÌNH CHO MODULE 3 44 CHƢƠNG 7: PHƢƠNG HƢỚNG VÀ GIẢI PHÁP LẬP TRÌNH CHO MODULE 4 47 CHƢƠNG 8: CHẠY CHƢƠNG TRÌNH, ĐÁNH GIÁ, KẾT LUẬN VÀ ĐỀ NGHỊ 50 8.1 Chạy chƣơng trình, đánh giá và kết luận 50 8.2 Đề nghị 50 TÀI LIỆU THAM KHẢO 51 PHỤ LỤC I NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP CỦA GIÁO VIÊN HƢỚNG DẪN IV NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP CỦA GIÁO VIÊN PHẢN BIỆN VI PHIẾU CHẤM ĐIỂM CỦA HỘI ĐỒNG VIII vi
  9. DANH MỤC BẢNG BIỂU Trang Bảng 5.1 Bƣớc xích tiêu chuẩn 39 Bảng 5.2 Chiều cao h 39 vii
  10. DANH MỤC HÌNH ẢNH Trang Hình 1.1: Logo của hãng Autodesk và tuyển dụng của Simpson strong tie 1 Hình 2.1 Module Windows Form Application của C# trong Visual Studio 4 Hình 2.2 Ngôn ngữ AutoLisp đƣợc tích hợp trong Autocad 6 Hình 2.3 Ngôn ngữ Visual Basic 7 Hình 2.4 Phần mềm Autodesk Inventor 2014 8 Hình 2.5 Module Simulink – đảm nhận chức năng đồ họa trong Matlab 10 Hình 3.1 Công cụ MenuStrip 11 Hình 3.2 Các Label bên cạnh textbox 11 Hình 3.3 Nút Button nằm dƣới hai textbox 11 Hình 3.4 Một Groupbox có tên là “thay dao” chứa các công cụ khác 11 Hình 3.5 CheckBox dùng để chọn thay đổi cho một hoặc nhiều dữ liệu 12 Hình 3.6 Chỉ có một RadioButton đƣợc chọn 12 Hình 3.7 Mô tả một đoạn mở đầu của chƣơng trình Form 12 Hình 3.8 Mẫu Form 17 Hình 3.9 Chọn tiêu chuẩn Part 18 Hình 3.10 Các lệnh vẽ và hiệu chỉnh Sketch 18 Hình 3.11 Hộp lệnh Extrude 19 Hình 3.12 Hộp lệnh Revolve 19 Hình 3.13 Hộp lệnh Fillet 19 Hình 3.14 Hộp lệnh Chamfer 19 Hình 3.15 Hộp lệnh Rib 19 Hình 3.16 Hộp thoại Circular Pattem 19 Hình 3.17 Thanh chịu kéo (nén) đúng tâm 21 Hình 3.18 Mặt cắt ngang hình chữ nhật 21 Hình 3.19 Mặt cắt ngang hình tam giác 22 Hình 3.20 Mặt cắt ngang hình tròn 22 Hình 3.21 Trục chịu xoắn thuần túy 22 Hình 3.22 Dầm uốn phẳng 23 Hình 4.1 Giao diện khi mới mở 26 Hình 4.2 Giao diện chạy khởi tạo chƣơng trình 26 Hình 4.3 Giao diện menu hiển thị 26 Hình 4.4 Giao diện thông số dao 26 Hình 4.5 Giao diện thông số phôi 27 Hình 4.6 Giao diện chu trình khoan 27 viii
  11. Hình 4.7 Giao diện phay hóc tròn 27 Hình 4.8 Giao diện phay rãnh 27 Sơ đồ 4.1 Sơ đồ khối gọi chƣơng trình 28 Sơ đồ 4.2 Sơ đồ thông số dao 29 Hình 4.9 Quy luật chạy hốc bù dao trái, phải 31 Hình 4.10 Mô tả các biến cần có để lập trình rãnh cong 32 Hình 5.1 Hình vẽ cần hoàn thành 33 Hình 5.2 Các thông số cần có để vẽ trục 35 Hình 5.3 Sơ đồ điểm vẽ trục 36 Hình 5.4 Thông số ổ bi côn 37 Hình 5.5 Sơ đồ điểm ổ bi côn 37 Hình 5.6 Thông số bánh răng côn 38 Hình 5.7 Các thông số đĩa xích 39 Hình 5.8 Sơ đồ điểm đĩa xích 39 Hình 5.9 Thông số nắp ổ thông 40 Hình 5.10 Sơ đồ điểm nắp ổ thông 41 Hình 5.11 Thông số nắp ổ 41 Hình 5.12 Sơ đồ điểm nắp ổ 42 Hình 5.13 Thông số vòng chắn dầu 42 Hình 5.14 Sơ đồ điểm vòng chắn dầu 43 Hình 6.1 Hình ảnh mô hình 3D của mẫu 44 Hình 6.2 Bảng Parameter 44 Hình 6.3 Form của sản phẩm 45 Hình 6.4 Mô hình sản phẩm tủ 46 Hình 6.5 Form điều khiển sản phẩm tủ 46 Hình 7.1 Mô hình khung xe đạp 47 ix
  12. CHƢƠNG 1: GIỚI THIỆU 1.1 Tính cấp thiết của đề tài Thế giới công nghệ thông tin đang phát triển nhƣ vũ bão và nhân lực cho lĩnh vực này đang thiếu hụt lớn. Không riêng gì ngành kỹ thuật cơ khí mà các ngành khác cũng cần biết đến ngôn ngữ lập trình để ứng dụng cho công việc của mình. Hiện nay có nhiều công ty, tập đoàn đăng tuyển kỹ sƣ cơ khí đều có chính sách ƣu tiên các ứng viên biết một hoặc vài ngôn ngữ lập trình nào đó. Đồng thời các hãng sản xuất phần mềm ứng dụng cho ngành cơ khí trong thiết kế cũng nhƣ chế tạo sản xuất đều tạo một ứng dụng mở để cho ngƣời dùng có thể thâm nhập, sử dụng các ngôn ngữ và kiến thức về lập trình để nâng cao hiệu quả công việc. Điều này cho thấy không nhất thiết phải là kỹ sƣ công nghệ thông tin mới tạo ra đƣợc các chƣơng trình. Ta cũng nhận ra các trƣờng đại học cũng đƣa vào chƣơng trình học các kiến thức cơ bản về một hoặc vài ngôn ngữ lập trình nào đó, đó là cơ sở để chúng ta có thể ứng dụng lập trình vào trong học tập và làm việc để nâng cao năng suất công việc. Hình 1.1: Logo của hãng Autodesk – Hãng sản xuất phần mềm lớn trên thế giới để chế độ mở cho ngƣời dùng ứng dụng lập trình (Hình bên trái) và Thông tin tuyển dụng của công ty cơ khí, xây dựng lớn của nƣớc Mỹ với nhiều chi nhánh trên toàn cầu với ƣu tiên cho các ứng viên có kiến thức về ngôn ngữ lập trình VBA hoặc C# 1
  13. 1.2 Ý nghĩa khoa học và thực tiễn của đề tài Việc tăng tốc độ và cải thiện điều kiện thiết kế, tính toán và sản xuất trong lĩnh vực kỹ thuật cơ khí là một điều cần thiết và có ý nghĩa quan trọng trong việc tăng năng suất, giảm thời gian làm việc, đem lại lợi lớn cho tập thể công ty hoặc cho cá nhân bất kì. Việc ứng dụng ngôn ngữ lập trình trong học tập là thiết thực, giúp tăng hiệu quả trong học tập mà còn kích thích trí tuệ cho học sinh, sinh viên. Trong công việc, ứng dụng đƣợc ngôn ngữ lập trình để giải quyết các vấn đề đặt ra cũng là một lợi thế lớn không những giúp bản thân làm việc hiệu quả hơn mà còn đem lại nhiều lợi ích cho công ty nhất là khâu thiết kế là khâu quan trọng tốn nhiều thời gian. 1.3 Mục tiêu nghiên cứu của đề tài - Đề xuất ứng dụng ngôn ngữ lập trình vào trong học tập và thiết kế kỹ thuật cơ khí - Ứng dụng C# điều khiển phần mềm WinNC - Tự động hóa thiết kế với AutoLisp trong Autocad - Tự động hóa thiết kế với iLogic trong Autodesk Inventor - Ví dụ tính toán khung xe đạp, dầm trong Matlab - Đƣa ra kết luận đánh giá khả năng làm việc của phần mềm đã tạo - Đƣa ra các đề xuất về phƣơng hƣớng, phƣơng pháp ứng dụng ngôn ngữ lập trình 1.4 Đối tƣợng và phạm vi nghiên cứu của đề tài 1.4.1 Đối tƣợng nghiên cứu - Ngôn ngữ lập trình C# - Phần mềm WinNC - Ngôn ngữ lập trình AutoLisp - Phần mềm Autocad - Ngôn ngữ lập trình Visual Basic - Phần mềm Autodesk Inventor - Phần mềm Matlab - Lƣc, moment sinh ra trên khung trong quá trình hoạt động 14.2 Phạm vi nghiên cứu - Một số cấu trúc lệnh của C# đủ để điều khiển phần mềm WinNC một cách cơ bản - Phần phay trong phần mềm WinNC với một số biên dạng phổ biến trong dạy học - Một số lệnh AutoLisp cơ bản để thực hiện các lệnh vẽ cơ bản trong Autocad 2
  14. - Một số lệnh cơ bản trong Autocad để vẽ các chi tiết cơ khí - Một số lệnh cơ bản của Visual Basic để điều khiển, quản lý phiên bản chi tiết trong Autodesk Inventor - Một số lệnh cơ bản trong Autodesk Inventor để dựng chi tiết - Một số lệnh trong Matlab để tính toán lực sinh ra trên chi tiết khung giàn - Một số trƣờng hơp tác dụng lực lên khung giàn 1.5 Phƣơng pháp nghiên cứu 1.5.1 Cơ sở phƣơng pháp luận - Dựa vào nhu cầu lập trình, tự động hóa trong thiết kế cơ khí - Dựa vào nhu cầu lập trình, tự động hóa trong học tập của sinh viên cơ khí - Dựa vào khả năng ứng dụng mở của các phần mềm thiết kế, mô phỏng, tính toán trong kỹ thuật cơ khí - Dựa vào nền tảng ngôn ngữ lập trình đƣợc đào tạo ở nhà trƣờng của sinh viên ngành cơ khí và khả năng tự học tập tìm hiểu thêm - Dựa vào tính thú vị và suy nghĩ logic mà lập trình mang lại 1.5.2 Các phƣơng pháp nghiên cứu cụ thể - Tiến hành thu thập các nhu cầu cụ thể trong học tập và công việc - Tiến hành thu thập các khả năng mở rộng của các phần mềm kỹ thuật - Nghiên cứu kiến thức về ngôn ngữ lập trình có thể ứng dụng đƣợc - Nghiên cứu khả năng ứng dụng lập trình, các bƣớc thâm nhập vào phần mềm - Lập trình, thử kêt quả và sửa chữa chƣơng trình - Đánh giá kết quả. - Rút kinh nghiệm. 1.6 Kết cấu của Đồ Án Tốt Nghiệp Chương 1: Giới thiệu. Chương 2: Tổng quan nghiên cứu đề tài. Chương 3:Cơ sở lý thuyết. Chương 4:Phương hướng và giải pháp lập trình cho Module 1 Chương 5: Phương hướng và giải pháp lập trình cho Module 2 Chương 6: Phương hướng và giải pháp lập trình cho Module 3 Chương 7: Phương hướng và giải pháp lập trình cho Module 4 Chương 8:Chạy chương trình, đánh giá, kết luận và đề nghị 3
  15. CHƢƠNG 2: TỔNG QUAN NGHIÊN CỨU ĐỀ TÀI 2.1 Giới thiệu về ngôn ngữ C# trong phần mềm Visual Studio C# là một ngôn ngữ lập trình ứng dụng, ngôn ngữ biên dịch, ngôn ngữ đa năng đƣợc phát triển bởi hãng Microsoft, là một phần khởi đầu cho kế hoạch .NET. Microsoft phát triển C# dựa trên C, C++ và Java. C# đƣợc miêu tả là ngôn ngữ có đƣợc sự cân bằng giữa C++, Visual Basic, Delphi và Java Ngôn ngữ lập trình C# đƣợc đánh giá là dễ học, nó khá đơn giản chỉ khoảng hơn 80 từ khóa và hơn mƣời mấy kiểu dữ liệu đƣợc dựng sẵn và kết hợp đƣợc nhiều ƣu điểm của các ngôn ngữ lập trình hƣớng đối tƣợng Java và C++. Do đó ngôn ngữ C# đựơc sử dụng rộng rãi nhất. C# có thể đƣợc viết với bất kỳ trình soạn thảo văn bản nào nhƣ Notepad của Windows, và sau đó biên dịch với trình biên dịch dòng lệnh của C#, csc.exe luôn đi kèm với .Net framework. Do đó mà ngày nay, C# đƣợc rất nhiều các coder trên thế giới ƣu chuộng và tìm hiều.C# có các đặc trƣng sau: - C# là ngôn ngữ đơn giản. - C# là ngôn ngữ hiện đại. - C# là ngôn ngữ hƣớng đối tƣợng. - C# là ngôn ngữ mạnh mẽ và mềm dẻo. - C# là ngôn ngữ hƣớng module. - C# sẽ trở nên phổ biến. Trong phần mềm Visual Studio, ta sử dụng ngôn ngữ C# giới hạn trong module windows form application. Hình 2.1 Module Windows Form Application của C# trong Visual Studio Nguồn 2.2 Giới thiệu về phần mềm WinNC Phần mềm WinNC là phần mềm giáo dục dùng cho ngành gia công cơ khí với nhiệm vụ cho phép ngƣời dùng lập trình, mô phỏng và liên kết với máy CNC để gia công sản phẩm. Nó cũng có thể làm phần mềm trung gian nhan dữ liệu mã Code từ 4
  16. các phần mềm khác sau khi qua hiệu chỉnh để điều khiển gia công trực tiếp trên máy CNC. Phần mềm WinNC dùng trong giới hạn của đề tài là EMCO WinNC Fanuc GE Series Fanuc 21 TB. 2.3 Giới thiệu về ngôn ngữ AutoLisp LISP – List Processing là một chuẩn ngôn ngữ lập trình đƣợc John McCarthy phát triển vào năm 1956 trong dự án nghiên cứu AI (Artificial Intelligence). Phiên bảnđầu tiên LISP 1.5 đƣợc giới thiệu vào đầu thập niên 60 và phát triển với nhiều biến thểnhƣ: BBNLisp, Interlisp, MacLisp, NIL (New Implementation of Lisp), Franz Lisp Vào thập niên 70 và đầu những năm 80 đã có máy tính chuyên dụng nhƣ LispMachines đƣợc thiết riêng để chạy những chƣơng trình LISP. Đến năm 1981 để chuẩnhóa LISP các nhà lập trình đã tập hợp và chuẩn hóa thành chuẩn Common LISP. Năm1984 Golden Common LISP trở thành chuẩn chính thức cho máy tính IBM và sau này phát triển thành XLISP- tiền thân của Autolisp ngày nay. AutoLisp đƣợc phát triển từ XLISP là ngôn ngữ lập trình trên môi trƣờngAutoCAD và đƣợc công bố phiên bản đầu tiên 2.18 vào tháng 01 năm 1986. Cùng với sự phát triển của AutoCAD các phiên bản của Autolisp ngày càng đƣợc hoàn thiện vớinhiều tính năng mới, có thể kể đến một vài phiên bản tiêu biểu nhƣ sau: Chính thức giới thiệu phiên bản 2.5 tích hợp vào AutoCAD R7 với một số tính tăngcơ bản về các tƣơng tác với đối tƣợng trong bản vẽ.- Phiên bản 2.6 tích hợp vào AutoCAD R7 với chức năng 3D và một số hàm mớigetcorner, getkword, và initget.- Phiên bản tích hợp vào AutoCAD R12 giới thiệu một số hàm GUI (Graphic User Interface) và ngôn ngữ điều khiển hộp thoại DCL (Dialog Control Language).- Phiên bản Visual LISP™ giới thiệu cùng với AutoCAD R14 là một môi trƣờng pháttriển Autolisp độc lập, trực quan với sự hỗ trợ của các công cụ gỡ rối.- Visual LISP™ đƣợc chính thức tích hợp vào AutoCAD 2000 và từ đó đến nay đƣợc bổ sung nhiều tích năng mới. Ƣu nhƣợc điểm của AutoLisp nhƣ sau Ƣu điểm: - Làm việc rất tốt và dễ dàng với điểm và các yếu tố hình học. - Rất mềm dẻo, không khắt khe. - Không cần trình dịch - Lập trình và thực hiện lệnh. - Chạy đƣợc trên tất các các hệ điều hành với cùng 1 file Lisp. - Quản lý đối tƣợng với List - Một kiểu dữ liệu với nhiều ƣu điểm vƣợt trội trong quảnlý tọa độ điểm. - Mã nguồn mở và cộng đồng phát triển Autolisp rất rộng lớn. 5
  17. Nhƣợc điểm: - Hình thức bên ngoài không hấp dẫn. - Cú pháp khó hiểu.- Hạn chế, không có trình biên dịch. - Ngôn ngữ trung gian nên thực thi chậm. - Hầu nhƣ không thể tƣơng tác với hệ thống. Trong môi trƣờng Autocad đƣợc tích hợp sẵn AutoLisp nên để sử dụng hiệu quả ngôn ngữ này thì ta cần nắm rõ cách sử dụng Autocad. Autocad là phần mềm đồ họa 2D và 3D của hãng Autodesk sản xuất và phát triển quan rất nhiều phiên bản cho đến nay đã là phiên bản 2016 rất hiện đại và đa năng. Nó có thể đƣợc coi là phần mềm đồ họa kỹ thuật cơ bản mà ai cũng phải biết nếu làm trong lĩnh vực cơ khí. Hình 2.2 Ngôn ngữ AutoLisp đƣợc tích hợp trong Autocad Nguồn Internet tổng hợp. 2.4 Giới thiệu về ngôn ngữ Visual Basic Visual Basic, con đƣờng nhanh nhất và đơn giản nhất để tạo những ứng dụng cho Microsoft Windows. Bất kể bạn là một nhà chuyên nghiệp hay là một ngƣời mới lập trình Windows, Visual Basic cung cấp cho bạn một tập hợp các công cụ hoàn chỉnh để nhanh chóng phát triển các ứng dụng. Vậy Visual Basic là gì ? Thành phần “Visual” nói đến các phƣơng thức dùng để tạo giao diện đồ họa ngƣời sử dụng (GUI). Thay vì viết những dòng mã để mô tả sự xuất hiện và vị trí của những thành phần giao diện, ta chỉ cần thêm vào những đối tƣợng đã đƣợc định nghĩa trƣớc ở vị trí nào đó trên màn hình. Thành phần “Basic” nói đến ngôn ngữ “BASIC” (Beginners All-Purpose Symbolic Instruction Code) một ngôn ngữ đƣợc dùng bởi nhiều nhà lập trình hơn bất cứ một ngôn ngữ nào khác trong lịch sử máy tính. Visual Basic đƣợc phát triển dần dần dựa trên ngôn ngữ BASIC, và bây giờ chứa đựng hàng trăm điều lệnh, hàm, và từ khóa có quan hệ trực tiếp với giao diện đồ họa của Windows.Ngôn ngữ lập trình Visual Basic không chỉ là Visual Basic. Hệ thống lập trình Visual Basic, những ứng 6
  18. dụng bao gồm Microsoft Excel, Microsoft Access, và nhiều ứng dụng Windows khác đều dùng cùng một ngôn ngữ. Mặc dù mục đích của chúng ta là tạo ra những ứng dụng nhỏ cho bản thân hay một nhóm, một hệ thống các công ty lớn, hoặc thậm chí phân phối những ứng dụng ra toàn cầu qua Internet. Visual Basic là cung cụ mà bạn cần.Những chức năng truy xuất dữ liệu cho phép ta tạo ra những cơ sở dữ liệu, những ứng dụng front-end, và những thành phần phạm vi server-side cho hầu hết các dạng thức cơ sở dữ liệu phổ biến, bao gồm Microsoft SQL Server và những cơ sở dữ liệu mức enterprise khác.Những kỹ thuật ActiveX cho phép ta dùng những chức năng đƣợc cung cấp từ những ứng dụng khác, nhƣ là chƣơng trình xử lý văn bản Microsoft Word, bảng tính Microsoft Excel và những ứng dụng Windows khác. Khả năng Internet làm cho nó dễ dàng cung cấp cho việc thêm vào những tài liệu và ứng dụng qua Internet hoặc intranet từ bên trong ứng dụng của bạn, hoặc tạo những ứng dụng Internet server. Ứng dụng của bạn kết thúc là một file .exe thật sự. Nó dùng một máy ảo Visual Basic để bạn tự do phân phối ứng dụng. Chúng ta có thể làm gì với Visual Basic: - Tạo giao diện ngƣời dùng - Sử dụng những điều khiển của Visual Basic - Lập trình với những đối tƣợng - Lập trình với phần hợp thành - Đáp ứng những sự kiện chuột và bàn phím - Làm việc với văn bản và đồ họa - Gỡ rối mã và quản lý lỗi - Xử lý ổ đĩa, thƣ mục và file - Thiết kế cho việc thi hành và tính tƣơng thích - Phân phối những ứng dụng Hình 2.3 Ngôn ngữ Visual Basic Nguồn voer.edu.vn 2.5 Giới thiệu phần mềm Autodesk Inventor 7
  19. Hiện nay trên thị trƣờng có rất nhiều phần mềm thiết kế giúp cho việc thiết kế của ngƣời dùng ngày càng trở nên dễ dàng hơn. Với dân thiết thế chắc hẳn hãng Autodesk không xa lạ gì với họ, hãng nổi tiếng với dòng sản phẩm chính là các phần mềm thiết kế 2D và 3D dành cho kiến trúc, kỹ thuật xây dựng, truyền thông và giải trí. Autodesk sản xuất rất nhiều phần mềm thiết kế nổi tiếng nhƣ AutoCAD, Inventor, MoldFlow, Mudbox trong đó nổi tiếng nhất là 2 phần mềm AutoCAD và Inventor. AutoDesk Inventor là phần mềm chuyên dụng dành cho việc thiết kế các chi tiết trong không gian 3D sau đó sẽ kết xuất ra thành các bản vẽ thiết kế. Nó chuyên phục vụ cho các ngành kỹ thuật đặc biệt là thiết kế cơ khí. Autodesk Inventor là một phần mềm vẽ trƣớc, hiệu chỉnh thông số sau (parametric software). Nó khác với AutoCAD, AutoCAD vẽ và nhập thông số của hình luôn trong lúc tạo đối tƣợng, còn trong inventor chúng ta cứ vẽ hình trƣớc, sau đó nhập thông số của nó vào sau. Công việc chính của Autodesk Inventor là thiết kế các bộ phận của vật dụng, máy móc trong không gian 3 chiều. Sau khi các bộ phận đã hoàn chỉnh có thể lắp ráp thành sản phẩm, xoay các hƣớng nhìn, gán vật liệu, tô bóng bề mặt theo vật liệu với chất lƣợng cao. Khi các thông số thiết kế đạt yêu cầu Autodesk Inventor có thể kết xuất chi tiết, cụm chi tiết cũng nhƣ sản phẩm ra ra bản vẽ thiết kế thông thƣờng (2D) với các hình chiếu theo qui chuẩn. Khác với AutoCAD có 2 cấp độ về bản vẽ là model và layout, Inventor có 4 cấp độ về bản vẽ là Part, Assembly, Presentation, và Drawing. Hình 2.4 Phần mềm Autodesk Inventor 2014 Nguồn www.fastest.com.vn 2.6 Giới thiệu phần mềm Matlab MATLAB là phần mềm cung cấp môi trƣờng tính toán số và lập trình, do công ty MathWorks thiết kế. MATLAB cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện ngƣời dùng và liên kết 8
  20. với những chƣơng trình máy tính viết trên nhiều ngôn ngữ lập trình khác. Với thƣ viện Toolbox, MATLAB cho phép mô phỏng tính toán, thực nghiệm nhiều mô hình trong thực tế và kỹ thuật. Matlab là viết tắt từ "MATrix LABoratory", đƣợc Cleve Moler phát minh vào cuối thập niên 1970, và sau đó là chủ nhiệm khoa máy tính tại Đại học New Mexico. MATLAB, nguyên sơ đƣợc viết bởi ngôn ngữ Fortran, cho đến 1980 nó vẫn chỉ là một bộ phận đƣợc dùng nội bộ của Đại học Stanford.Năm 1983, Jack Little, một ngƣời đã học ở MIT và Stanford, đã viết lại MATLAB bằng ngôn ngữ C và nó đƣợc xây dựng thêm các thƣ viện phục vụ cho thiết kế hệ thống điều khiển, hệ thống hộp công cụ (tool box), mô phỏng Jack xây dựng MATLAB trở thành mô hình ngôn ngữ lập trình trên cơ sở ma trận (matrix-based programming language).Steve Bangert là ngƣời đã viết trình thông dịch cho MATLAB. Công việc này kéo dài gần 1½ năm. Sau này, Jack Little kết hợp với Moler và Steve Bangert quyết định đƣa MATLAB thành dự án thƣơng mại - công ty The MathWorks ra đời thời gian này - năm 1984.Phiên bản đầu tiên MATLAB 1.0 ra dời năm 1984 viết bằng C cho MS-DOS PC đƣợc phát hành đầu tiên tại IEEE Conference on Design and Control (Hội nghị IEEE về thiết kế và điều khiển) tại Las Vegas, Nevada. Ban đầu Matlab đƣợc phát triển để hỗ trợ sinh viên sử dụng hai thƣ viện LINPACK và EISPACK dùng cho đại số tuyến tính (viết bằng Fortran) mà không cần biết lập trình Fortran. Năm 1986, MATLAB 2 ra đời trong đó hỗ trợ UNIX. Năm 1987, MATLAB 3 phát hành. Năm 1990 Simulink 1.0 đƣợc phát hành gói chung với MATLAB. Năm 1992 MATLAB 4 thêm vào hỗ trợ 2-D và 3-D đồ họa màu và các ma trận truy tìm. Năm này cũng cho phát hành phiên bản MATLAB Student Edition (MATLAB ấn bản cho học sinh). Năm 1993 MATLAB cho MS Windows ra đời. Đồng thời công ty này có trang web là www.mathworks.com Năm 1995 MATLAB cho Linux ra đời. Trình dịch MATLAB có khả năng chuyển dịch từ ngôn ngữ MATLAB sang ngôn ngữ C cũng đƣợc phát hành trong dịp này. Năm 1996 MATLAB 5 bao gồm thêm các kiểu dữ liệu, hình ảnh hóa, bộ truy sửa lỗi (debugger), và bộ tạo dựng GUI. Năm 2000 MATLAB 6 cho đổi mới môi trƣờng làm việc MATLAB, thay thế LINPACK và EISPACK bằng LAPACK và BLAS.[1] 9
  21. Năm 2002 MATLAB 6.5 phát hành đã cải thiện tốc độ tính toán, sử dụng phƣơng pháp dịch JIT (Just in Time) và tái hỗ trợ MAC. Năm 2004 MATLAB 7 phát hành, có khả năng chính xác đơn và kiểu nguyên, hỗ trợ hàm lồng nhau, công cụ vẽ điểm, và có môi trƣờng phân tích số liệu tƣơng tác. Đến tháng 12, 2008, phiên bản 7.7 đƣợc phát hành với SP3 cải thiện Simulink cùng với hơn 75 sản phẩm khác. Năm 2009 cho ra đời 2 phiên bản 7.8 (R2009a) và 7.9 (R2009b). Năm 2010 phiên bản 7.10 (R2010a) cũng đã đƣợc phát hành. Matlab đƣợc dùng rộng rãi trong giáo dục, phổ biến nhất là giải các bài toán số trị (cả đại số tuyến tính lẫn giải tích) trong nhiều lĩnh vực kĩ thuật. Ngôn ngữ lập trình dùng trong hệ tính toán số cũng có tên gọi là MatLab. Nó thuộc kiểu lập trình thủ tục (với một số đặc điểm của lập trình hƣớng đối tƣợng mới đƣợc bổ sung trong các phiên bản gần đây. Hình 2.5 Module Simulink – đảm nhận chức năng đồ họa trong Matlab 10
  22. S K L 0 0 2 1 5 4