Marlin Điều chỉnh tốc độ tiến dao


9

Tôi đang sử dụng phần mềm Marlin (1.1.0-RC7 - 31 tháng 7 năm 2016) cho máy in 3d. Hiện tại việc in ấn không hoàn hảo do sự thiếu chính xác nhỏ trong các chuyển động dọc theo trục x và y. Tôi đang cố gắng thay đổi tốc độ tiến dao cho tốc độ dọc theo trục xy trong khi máy in đang hoạt động để đảm bảo máy in dừng đúng giờ và in chính xác.

Tôi có một số mã để kiểm soát tốc độ tiến dao nhưng vấn đề là tôi không chắc mình sẽ thực hiện những điều chỉnh này ở đâu. Trong tệp configure.h tôi thấy mã này: (dòng 742 và 753)

/*line 742*/ #define HOMING_FEEDRATE_XY (50*60) 
/*line 753*/ #define DEFAULT_MAX_FEEDRATE {300, 300, 5, 25}  // (mm/sec)

Tôi có thể hiểu nhầm một cái gì đó nhưng có vẻ như điều này đặt tốc độ tiến dao đến một giá trị mặc định giống như mức tối đa.

Nếu tốc độ tiến dao thay đổi trong khi in, tôi đoán nó sẽ được thực hiện trong Marlin_main.cpp nhưng tôi không chắc phần nào nó thực sự thay đổi. Ai đó có thể chỉ cho tôi đi đúng hướng ở đây?


Tốc độ nạp được đặt theo mã g bạn cung cấp, tại sao không đặt tốc độ nạp in thấp hơn? Điều duy nhất bạn sẽ thay đổi trong phần sụn mà không sửa đổi nó là tốc độ thức ăn tối đa và homing.
tjb1

Câu trả lời:


3

Bạn có thể thay đổi tốc độ tiến dao tối đa cho phép trong Cấu hình.h, nhưng tốc độ tiến dao thực tế được sử dụng không được xác định bởi phần sụn của bạn. Tốc độ tiến dao được chỉ định trong tệp G-Code. Một lệnh như

G0 X10.0 Y15.0 Z3.0 F9000

chỉ ra việc di chuyển đến (10,15,3) với tốc độ tiến dao 9000 mm / phút. Nếu F không được chỉ định, tốc độ tiến dao được sử dụng cuối cùng sẽ được sử dụng.

Bạn chỉ cần cung cấp các lệnh mã G thích hợp với tốc độ tiến dao bạn muốn trong chúng. Không có lý do để sửa đổi phần sụn để có tốc độ tiến dao khác nhau.


Vì vậy, tốc độ tiến dao có cần giống nhau cho tất cả các trục x, y và z không? Bạn cũng quen thuộc với phần nào của Marlin_main.cpp chịu trách nhiệm đọc các lệnh từ tệp G-Code?
làm cho nó xảy ra

Không, tốc độ tiến dao cho các trục riêng lẻ được tính toán sao cho tổng tốc độ tiến dao là 9000mm / s (ví dụ: khoảng cách eidianidian giữa các điểm chia cho thời gian để di chuyển bằng tốc độ tiến dao). Nếu bạn di chuyển từ 0,0 đến 2,1 thì tốc độ tiến dao của X sẽ cao gấp hai lần tốc độ tiến dao của Y. Tôi không chắc bạn đang cố gắng đạt được điều gì, nhưng thay đổi phần sụn có lẽ không phải là lựa chọn phù hợp . Nếu bạn nhấn mạnh, có lẽ bạn nên xem prepare_movechức năng.
Tom van der Zanden

Bạn không thể thiết lập tốc độ tiến dao cho các trục một cách độc lập bởi vì sau đó một trục có thể đến đích trước một trục khác. Bạn muốn di chuyển từ X, Y sang X ', Y' để dẫn đến một đường thẳng. Do đó thức ăn phụ thuộc vào nhau.
Tom van der Zanden

2

Có vẻ như bạn có thể muốn xem xét các bước trên mỗi mm.

#define DEFAULT_AXIS_STEPS_PER_UNIT

Dòng này là nơi bạn hiệu chỉnh số bước trên mỗi mm. Để hiệu chỉnh, đánh dấu một điểm dọc theo một trục, sau đó di chuyển trục đó giống như 100 mm. Nếu nó không di chuyển chính xác 100 mm, hãy thay đổi

(how far it moved)       (how far it should have moved)
------------------   =   ------------------------------
(current steps/mm)         (new steps/mm) --> find this

1

Bạn có các dòng để điều chỉnh tốc độ thức ăn. Cái đầu tiên (dòng 742) có liên quan đến tốc độ nạp tối đa XY trong khi homing (không phải trong khi in). Tôi nghĩ rằng đây không phải là một vấn đề trong trường hợp cụ thể của bạn và bạn có thể để nó như vậy.

Cái thứ hai (dòng 753) là tốc độ nạp trong khi in cho XY. Đặc biệt các số trong ngoặc liên quan đến (X, Y, Z, E). Nếu máy in của bạn đang di chuyển, nó có thể ảnh hưởng đến XY nhiều hơn Z và E. Vì vậy, bạn có thể thử điều chỉnh hai số đầu tiên.

Do tình huống rất cụ thể là không thể cung cấp cho bạn tỷ lệ thức ăn dựa trên tính toán vì bạn đang xử lý các gia tốc bên ngoài do tình huống di động gây ra. Bạn sẽ cần phải thử và điều chỉnh nó cho đến khi bạn làm đúng.

Một cài đặt khác cũng có thể giúp bạn bù gia tốc bên ngoài, nếu có, là gia tốc của hai trục đó. Bạn nên tìm hai dòng như sau:

#define DEFAULT_MAX_ACCELERATION {1500,1500,50,250}    
#define DEFAULT_ACCELERATION 1500 // X, Y, Z và E tăng tốc tối đa tính bằng mm / s ^ 2 để di chuyển in

Tuy nhiên, việc tăng tốc của các trục có thể ảnh hưởng đến chất lượng in.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.