Đối với các hệ dẫn động nói chung sẽ có các thành phần cơ bản giống nhau, trên cơ sở nhận xét đó đã tiến hành phân tích đặc điểm các hệ dẫn động để tổng quát hoá và có thể tiến hành xây
Trang 1GIỚI THIỆU PHẦN MỀM TÍNH TOÁN THIẾT KẾ HỆ DẪN ĐỘNG CƠ KHÍ
INTRODUCE THE SOFTWARE ECONOMIC DESIGNING FOR TRANSMISSION SYSTEMS
Lê Văn Uyển, Vũ Lê Huy
Bộ môn Cơ sở thiết kế máy và Rô bốt, Trường Đại học Bách Khoa Hà Nội
Tóm tắt : Tính toán thiết kế các hệ dẫn động cơ khí là một công việc phức tạp và
tốn nhiều thời gian, do đó nhu cầu xây dựng và sử dụng phần mềm cho công việc
này rất lớn Phục vụ nhu cầu đó, bài báo này giới thiệu phần mềm “Tính toán
thiết kế hệ dẫn động cơ khí” do tập thể cán bộ trong Bộ môn Cơ sở thiết kế máy
và Rô bốt lập ra Phần mềm này có thể sử dụng cho mục đích thiết kế trong sản
xuất hoặc trong giảng dậy
Abstract : Economic designing for transmission systems is very complex and
time-intensive, so that demanding in establishing and using the softwares for this
work is very large Serving that demanding, this article introduces the software
“Economic designing for Transmission systems” is made by members of the
Department of Designing of Machinery and Robot
1 Giới thiệu
1 Động cơ
2 Bộ truyền đai
3 Hộp giảm tốc
4 Nối trục
5 Tang cuốn cáp
Hình 1 Sơ đồ Hệ dẫn động tời kéo
Ngày nay, các hệ thống dẫn động cơ khí
ngày càng được sử dụng nhiều cùng với sự
phát triển của nền công nghiệp, đặc biệt ở
nước ta đang trong thời kỳ công nghiệp hoá
và hiện đại hoá diễn ra mạnh mẽ Cùng với
đó là công việc tính toán thiết kế hệ dẫn
động cơ khí cũng cần được quan tâm nhiều
Đây cũng chính là một nội dung quan trọng,
không thể thiếu trong các chương trình đào
tạo kỹ sư cơ khí tại các trường đại học kỹ
thuật trên thế giới và tại Việt Nam [1] Tuy
nhiên công việc tính toán thiết kế các hệ dẫn
động này khá phức tạp và tốn nhiều thời
gian nên nhu cầu cần có các phần mềm hỗ
trợ là rất lớn, kể cả trong thực tế sản xuất
cũng như trong giảng dậy
Trên hình 1 là một ví dụ về sơ đồ của một hệ dẫn động tời kéo, trong đó có các bộ truyền (một bộ truyền đai và hai bộ truyền bánh răng trụ), trục, hộp giảm tốc cần được tính thiết kế, rõ ràng khối lượng tính thiết kế và thiết lập bản vẽ khá lớn [2, 3] Đối với các hệ dẫn động nói chung sẽ có các thành phần cơ bản giống nhau, trên cơ sở nhận xét đó đã tiến hành phân tích đặc điểm các hệ dẫn động để tổng quát hoá và có thể tiến hành xây dựng một phần mềm tính toán thiết kế tự động cho các hệ dẫn động từ việc tính toán thiết kế theo các thông số yêu cầu của bộ phận công tác cho đến kết quả là bản vẽ thiết kế
Trang 2Qua các phân tích, các thành viên của bộ môn Cơ sở thiết kế máy và Rô bốt đã xây dựng phần mềm “Tính toán thiết kế Hệ dẫn động cơ khí” có nhiệm vụ tính toán thiết kế các
hệ thống dẫn động cơ khí theo các thông số yêu cầu trên bộ phận công tác, cho ra kết quả cuối cùng là các báo cáo kết quả tính thiết kế và các bản vẽ lắp của hộp giảm tốc và bản vẽ chế tạo các chiết trong hộp giảm tốc Bài báo này sẽ đi vào giới thiệu cấu trúc, tổ chức và khả năng ứng dụng của phần mềm trên
2 Cấu trúc và tổ chức phần mềm
Dữ liệu đầu vào (số liệu thiết kế)
(1) Tính toán thiết kế
Bản báo cáo (File Text hoặc Excel)
Kết quả phục
vụ vẽ thiết kế
tự động
(2) Vẽ thiết kế tự động
Bản vẽ thiết kế 2D Mô hình 3D
Hệ thống cơ
sở dữ liệu
Hình 2 Sơ đồ chức năng tổng quan của phần mềm
Phần mềm “Tính toán thiết kế Hệ dẫn động cơ khí” được lập trên cơ sở phải đảm bảo thực hiện được các chức năng như sơ đồ trên trình 2 Phần mềm có hai nhóm chức năng chính là (1) tính toán thiết kế và (2) vẽ thiết kế tự động Đặc thù của hai nhóm chức năng này rất khác biệt nhau do cần được thực hiện trên những môi trường khác nhau
Nhóm (1) thực hiện công việc tính toán thiết kế tương đối phức tạp, đồng thời phải đảm bảo tính linh hoạt khi thực hiện lập trình theo nhóm và dễ cập nhật, sửa đổi, đồng thời phải là một chương trình chạy độc lập không phụ thuộc vào các phần mềm khác Do đó được lập trình bẳng ngôn ngữ C++ trên trình biên dịch Microsoft Visual C++ và được tổ chức theo các mô đun thư viện liên kết động (DLL) rồi được liên kết lại với nhau qua các chương trình thực thi (EXE) [4, 5] Các mô đun thư viện liên kết động (DLL) và các chương trình thực thi (EXE) trong nhóm này có các quan hệ liên kết được thể hiện trên hình 3 Trong đó các thư viện ProfUIS223n.dll, ToolInter.dll và ResIconBmp.dll phục vụ việc tạo giao diện; thư viện OBCtm.dll là thư viện định nghĩa các đối tượng và tra cứu dữ liệu cơ sở; còn các thư viện sau có các chức năng tương ứng :
DC_TST.dll - tính chọn động cơ và phân phối tỉ số truyền
BT_Dai.dll - tính thiết kế bộ truyền đai
BT_BRang.dll - tính thiết kế bộ truyền bánh răng (cả bánh răng trụ và côn)
BT_TV_BV.dll - tính thiết kế bộ truyền trục vít bánh vít
Trang 3BT_Xich.dll - tính thiết kế bộ truyền xích
Khopnoi.dll - tính chọn khớp nối
Truc.dll - tính thiết kế trục
Olan.dll - tính chọn ổ lăn
ToolInter.dll ResIconBmp.dll ProfUIS223n.dll
OBCtm.dll
DC_TST.dll BT_Dai.dll BT_BRang.dll BT_TV_BV.dll BT_Xich.dll
Khopnoi.dll Truc.dll Olan.dll
HTD.exe CTM2_a.exe CTM2_b.exe
CTMCenter.exe
Hình 3 Sơ đồ liên kết các mô đun trong nhóm (1)
Các thư viện này sẽ được liên kết lại và được gọi ra để đảm nhiệm các chức năng tính toán tương ứng thông qua các chương trình thực thi EXE sau :
HTD.exe - chương trình tính thiết kế các hệ dẫn động cơ khí
CTM2_a.exe - chương trình tính thiết kế các bộ truyền
CTM2_b.exe - chương trình tra cứu và tính chọn ổ lăn
CTMCenter.exe - chương trình chính, liên kết tới các chương trình trên
Nhóm (2) thực hiện công việc vẽ thiết kế tự động, giúp tạo ra các bản vẽ lắp và bản vẽ chế tạo một cách tự động dựa trên kết quả tính thiết kế thu được từ các chương trình ở nhóm (1) Đặc thù của nhóm này là vẽ thiết kế, mặt khác trong ngành cơ khí sử dụng phần mềm AutoCAD là công cụ chính hỗ trợ cho công việc này nên nhóm này sẽ được thực hiện trên môi trường của AutoCAD [6] Trong môi trường của AutoCAD có thể lập trình hỗ trợ thêm các lệnh cho nó bằng các ngôn ngữ khác nhau như Basic (VBA), C\C++, , tuy nhiên với các ngôn ngữ này khi biên dịch sẽ phụ thuộc vào các phiên bản của AutoCAD do
đó sẽ gây bất tiện khi gặp các phiên bản AutoCAD mới Rất may mắn trong AutoCAD có
hỗ trợ ngôn ngữ lập trình thông dịch AutoLISP, với ngôn ngữ này không phụ thuộc vào phiên bản AutoCAD Do đó trong phần mềm này nhóm (2) được lập trình bằng ngôn ngữ AutoLISP, các chương trình này được đặt trong thư mục LISP đi cùng với các chương trình nhóm 1
Với hai nhóm chức năng trong phần mềm được thực hiện bằng các ngôn ngữ khác nhau nhưng lại cùng sử dụng chung một thư viện cơ sở dữ liệu Thư viện cơ sở dữ liệu này
Trang 4được đặt trong thư mục DATA đi cùng với các chương trình trong nhóm (1) Sử dụng chung một hệ thống cơ sở dữ liệu cho các ngôn ngữ khác nhau sẽ gây ra những trở ngại nhất định, nhưng vấn đề này đã được khắc phục bằng phương pháp được nêu ở mục tiếp theo
3 Phương pháp xử lý dữ liệu
Để thống nhất được các file dữ liệu và có thể sử dụng với nhiều ngôn ngữ khác nhau, đặc biệt là phải sử dụng được cho ngôn ngữ AutoLISP Ngôn ngữ AutoLISP chỉ sử dụng được các file dữ liệu dạng text (dạng văn bản) đồng thời dựa trên ý tưởng về xử lý danh sách của ngôn ngữ AutoLISP [7], đã tiến hành phân tích và đưa ra cách định dạng bảng dữ liệu được mô tả trên hình 4
;Đây là một dòng chú thích [1] : Dữ liệu 1
Phần
dữ
liệu
Số liệu tra được
*
; Hết phần bảng
Hàng khoá
Hình 4 Minh hoạ định dạng file dữ liệu
Cảc bảng dữ liệu phải tuân theo các quy định sau:
- Các ký tự sau dấu chấm phẩy ; là chú thích, các dòng chú thích không được xen vào giữa các dữ liệu của bảng, chỉ được phép xuất hiện trước hoặc sau mỗi phần dữ liệu của bảng
- Bắt đầu một phần dữ liệu là kiểu của phần dữ liệu đó, ký hiệu của phần dữ liệu được đặt trong cặp dấu ngoặc vuông [], đi sau ký hiệu này là tiêu đề của phần dữ liệu Trong một file dữ liệu thì trong mỗi cặp dấu[] nên là những ký hiệu khác nhau, có thể có một ký hiệu rỗng, tức là trong cặp dấu [] không chứa bất ký một ký tự nào
- Trong bảng dữ liệu, nếu một hàng bắt đầu bằng dấu hoa thị * sẽ được xếp vào các hàng khoá, hàng khoá được dùng cho các bảng tra hai chiều, các hàng khoá sẽ được tách riêng và đưa vào phần khoá Như vậy trong một bảng có thể có hoặc không có hàng khoá tuỳ theo mục đích sử dụng của bảng
- Kết thúc mỗi phần của bảng phải có dấu chấm phẩy ; đặt ở đầu dòng cuối của phần bảng đó, hoặc không cần nếu là kết thúc file, hoặc tiếp theo là phần dữ liệu khác bắt đầu bằng cặp dấu []
- Trong một file có thể có nhiều phần dữ liệu được xác định phân biệt nhau bằng các
ký hiệu phần dữ liệu và kết thúc bằng dấu ;
- Các phần tử của bảng dữ liệu trên một dòng phải cách nhau tối thiểu bằng một ký tự cách (hay ký tự trống) hoặc ký tự tab Nếu các phần tử của bảng là một chuỗi ký tự thì sẽ được đặt trong cặp dấu nháy kép ""
Trang 5Đọc dòng thứ i i=1; tradulieu=sai
i=i+1
đúng
dòng chứa ký hiệu của phần bảng cần tra
sai sai
đúng tradulieu=đúng
tradulieu sai
đúng
đúng i<=số dòng của file
là dòng chú thích
là dòng dữ liệu
Phân tích lấy dữ liệu theo mục đích yêu cầu
đúng
lấy dữ liệu xong sai
sai
đúng
Kết thúc đóng file dữ liệu
sai
Mở file dữ liệu Bắt đầu
Hình 5 Lưu đồ thuật toán phân tích bảng dữ liệu
Thuật toán phân tích để đọc và lấy dữ liệu được mô tả trên hình 5 Việc triển khai cụ thể cho các ngôn ngữ lập trình khác nhau sẽ khác nhau, có thể tham khảo cụ thể trong [8] Đối với ngôn ngữ lập trình AutoLISP và C++, việc đọc và tra cứu dữ liệu đối với các dạng bảng dữ liệu này đã được xây dựng và đóng gói trong các thư viện Qua đó có các nhận xét sau :
- Với các thư viện này, người lập trình sẽ không còn phải quan tâm đến việc mở file và
Trang 6xử lý dữ liệu, người dùng chỉ cần biết có một file dữ liệu và sử dụng các hàm trong thư viện để lấy dữ liệu
- Mặt khác, với các thư viện này đã giảm được khối lượng lớn các mô đun tra cứu dữ liệu và tránh được các lỗi do sai lệch dữ liệu về định dạng cũng như kiểu của dữ liệu khi tiến hành đọc file trực tiếp hoặc theo các định dạng thông thường
- Khi dữ liệu đã được đọc vào trong chương trình thì nó được coi như một ma trận, do
đó người dùng sẽ tra cứu dữ liệu dựa theo chỉ số dòng và cột
- Việc xử lý chuỗi, kiểm tra kiểu và chuyển đổi kiểu dữ liệu đã tránh được các lỗi về kiểu của dữ liệu khi thực thi chương trình
- Cho phép có thể lấy dữ liệu theo kiểu chuỗi ký tự hoặc chuyển đổi về dạng dữ liệu yêu cầu cũng tạo thuận lợi trong quá trình hiển thị dữ liệu
- Sử dụng chung một hệ thống thư viện chung giúp tạo sự thống nhất trong toàn bộ chương trình, đồng thời tạo thuận lợi khi muốn nâng cấp chương trình hoặc thay đổi bổ xung định dạng mới thì chỉ cần sửa đổi thư viện mà không ảnh đến các mô đun chương trình nguồn khác
- Tuy nhiên hạn chế của phương pháp này là tốc độ không được cao do phải thực hiện phân tích xử lý chuỗi ký tự
4 Chức năng và sử dụng
Phần mềm được đóng gói trong một bộ cài đặt có tên SetupCTM.exe, quá trình cài đặt thực hiện theo tiến trình Sau khi cài đặt sẽ cho một biểu tượng của chương trình chính CTMCenter.exe trên desktop và một thư mục CTM trong Start>Programs>CTM Khi thực hiện chương trình CTMCenter sẽ có giao diện như trên hình 6 Từ giao diện chương trình này, người sử dụng có thể gọi tới các ứng dụng tương ứng HTD.exe, CTM2_a.exe, CTM2_b.exe hoặc chọn chức năng “Chạy AutoCAD ” để gọi chương trình AutoCAD và cài đặt thêm menu có tên “CTM” vào trong AutoCAD
Hình 6 Giao diện chương trình CTMCenter Hình 7 Giao diện ban đầu của HTD.exe 4.1 Giới thiệu chương trình HTD.exe
Chương trình này dùng để tính toán thiết kế các hệ dẫn động cơ khí Khi chạy chương trình HTD.exe sẽ có giao diện ban đầu như trên hình 7 Người sử dụng có thể tạo mới dữ liệu đầu vào hoặc mở file dữ liệu đã tạo trước đó, khi đó sẽ giao diện như trên hình 8 Trên
đó, người dùng cần nhập các thông số của bộ phận công tác và điều kiện làm việc của hệ dẫn động, các giá trị này có thể được lưu ra file bằng chức năng “Lưu” hoặc “Lưu với tên khác ” Khi nhập xong dữ liệu có thể chuyển sang trang “Thiết kế” như ở hình 9 để thực hiện các bước tính thiết kế cho hệ dẫn động, quá trình tính thiết kế này phải tuân theo những trình tự nhất định như đã biết trong tài liệu [2], chẳng hạn nếu chưa tính phần “Chọn
Trang 7động cơ và phân phối tỉ số truyền” thì chưa thể tính thiết kế các phần bên dưới, phần nào
đã được tính thiết kế sẽ được đánh dấu và có ghi chú bên dưới Ở đây, chương trình HTD
sẽ gọi tới các thư viện liên kết động để thực hiện tính toán thiết kế các phần tương ứng Các kết quả tính thiết kế và trình tự đã tính thiết kế sẽ được lưu lại khi chọn chức năng
“Lưu” của chương trình Sau khi tính thiết kế xong, người dùng có thể chuyển sang trang
“Kết quả” để xem kết quả tính thiết kế và xuất kết quả ra báo cáo trong Excel hoặc file dữ liệu đầu vào cho phần vẽ thiết kế như trên hình 10 Trình tự tính thiết kế cụ thể các bộ truyền, khớp nối, ổ lăn có thể xem trong tài liệu [2], giao diện của các nội dung này được giới thiệu trong [9] hoặc trong tài liệu đi kèm cùng phần mềm
Hình 8 Giao diện nhập dữ liệu của chương trình HTD.exe
Hình 9 Giao diện tính thiết kế của chương trình HTD.exe
Trang 8Hình10 Giao diện xem kết quả tính toán của chương trình HTD.exe
4.2 Giới thiệu chương trình CTM2_a.exe
Chương trình
CTM2_a.exe dùng để tính
toán thiết kế các bộ
truyền động cơ khí như
bộ truyền bánh răng trụ,
bánh răng côn, trục vít
bánh vít, bộ truyền đai,
bộ truyền xích Khi chạy
chương trình sẽ có giao
diện như trên hình 11,
trên đó người dùng có thể
lựa chọn loại bộ truyền
cần tính thiết kế và nhập
các thông số yêu cầu để
tính thiết kế Các thông số
này có thể lưu ra file bằng
chức năng “Lưu vào file
” hoặc có thể được lấy
vào từ một file dữ liệu đã
tạo lần trước bằng chức
năng “Lấy từ file ” Nhập xong dữ liệu, người dùng cần chọn chức năng “Tính thiết kế .” để thực hiện tính thiết kế bộ truyền, khi đó chương trình sẽ gọi tới các thư viện liên kết động để thực hiện tính toán thiết kế bộ truyền tương ứng Sau khi tính thiết kế bộ truyền, người dùng có thể lựa chọn chức năng “Kết quả ” sẽ cho giao diện như trên hình 12 để xem kết quả tính thiết kế và xuất ra báo cáo hoặc lưu ra tệp tin dùng cho phần vẽ thiết kế trong AutoCAD
Hình 11 Giao diện chính chương trình CTM2_a.exe
Trang 9Hình 12 Giao diện xem kết quá của chương trình CTM2_a.exe 4.3 Giới thiệu chương trình CTM2_b.exe
Chương trình CTM2_b.exe có nhiệm vụ tính chọn ổ lăn hoặc dùng để tra cứu thông số của ổ lăn Chương trình này có giao diện chính như trên hình 13
Chức năng đầu tiên “Nhập dữ liệu và tính chọn ổ lăn ”, khi lựa chọn chức năng này chương trình sẽ gọi tới thư viện
Olan.dll để thực hiện nhập dữ liệu cho
công việc tính chọn ổ lăn như trên
hình 14, sau đó sẽ là quá trình tính
chọn ổ lăn Khi tính chọn ổ xong,
người dùng có thể xem lại kết quả tính
chọn bằng chức năng “Xem kết quả
tính chọn ổ lăn ”, chức năng này có
giao diện tương tự hình 12
Chức năng thứ hai của chương
trình này là “Tra thông số ổ lăn ”,
đây là một công cụ dùng để tra cứu
thông số kích thước của ổ lăn Khi
thực hiện nhiệm vụ này có giao diện
như trên hình 15 Hình13 Giao diện chương trình CTM2_b.exe
4.4 Giới thiệu phần nhiệm vụ vẽ thiết k
Từ chư
ế tự động
ơng trình CTMCenter (Hình 6) chọn chức năng “Chạy AutoCAD ” sẽ gọi phần mềm AutoCAD đồng thời cài đặt thêm vào trong AutoCAD một menu “CTM” (Hình 16) đảm nhiệm các nhiệm vụ tạo ra các bản vẽ một cách tự động Khi sử dụng các lệnh trên menu này, sẽ gọi ra các hộp thoại tương ứng để người dùng có thể nhập các thông số cần thiết hoặc lấy số liệu từ một file kết quả được xuất ra từ chương trình tính thiết kế nêu trên Toàn bộ phần này được lập trình bằng ngôn ngữ AutoLISP chạy trong môi trường của AutoCAD Ví dụ khi chọn lệnh “Hop giam toc 2 cap > HGT Khai trien ” sẽ gọi ra hộp thoại nhập dữ liệu như trên hình 17, chọn OK sẽ cho ra bản vẽ lắp hộp giảm tốc khai triển
Trang 10như trên hình 16 theo các số liệu đã nhập
Trong menu CTM có các chức năng tương ứng như được thể hiện trên đó Các chức năng này cho phép vẽ đĩa xích cho xích con lăn, vẽ bản vẽ chế tạo cho các bánh răng trụ và bánh răng côn, vẽ mô hình 3D của bộ truyền bánh răng trụ và bánh răng côn, vẽ các loại ổ lăn và các bản vẽ lắp của các hộp giảm tốc Nếu người dùng lựa chọn chức năng “Go bo menu CTM ” sẽ cho phép gỡ bỏ menu CTM khỏi phần mềm AutoCAD
Hình 14 Nhập dữ liệu tính chọn ổ lăn Hình 15 Giao diện tra thông số ổ lăn
Hình 16 Chức năng Vẽ thiết kế “CTM” trong phần mềm AutoCAD