Klipper và Marlin: Những khác biệt chính
Klipper và Marlin: Những khác biệt chính
Marlin và Klipper đều là phần mềm điều khiển máy in 3D phổ biến, tuy nhiên, chúng có những khác biệt đáng chú ý. Marlin đã tồn tại từ năm 2011 và đã đạt được sự phổ biến rộng rãi trên thị trường.
Nó được thiết kế để hoạt động trên vi điều khiển Arduino 8-bit giá rẻ, và đã có sự phát triển liên tục trong các phiên bản 2.0, 2.1 và các phiên bản tiếp theo. Marlin đã nâng cấp để hỗ trợ vi điều khiển 32-bit mạnh mẽ hơn, từ đó cải thiện khả năng xử lý và hiệu suất.
Klipper, trái ngược với Marlin, được phát triển sau và mang đến một phương pháp điều khiển máy in 3D khác.
Klipper chạy trên một máy tính nhúng như Raspberry Pi, trong khi vi điều khiển máy in 3D chỉ thực hiện nhiệm vụ giao tiếp. Điều này cho phép Klipper tận dụng được sự mạnh mẽ của máy tính nhúng và thực hiện tính toán phức tạp hơn. Klipper có thể đạt được hiệu suất và chất lượng in cao hơn, đặc biệt là với các tác vụ in phức tạp và tốc độ in cao.
Trên thực tế, Marlin vẫn là sự lựa chọn chính của đa số người dùng và phổ biến trên các máy in 3D FDM. Tuy nhiên, Klipper cũng có một cộng đồng đông đảo và đang ngày càng phát triển. Cả hai phần mềm đều có những điểm mạnh riêng và đều tiếp tục được cải tiến trong tương lai.
Sự lựa chọn giữa Marlin và Klipper phụ thuộc vào nhu cầu và yêu cầu cụ thể của người dùng, cũng như khả năng kỹ thuật và sở thích cá nhân.
Kiến Trúc
Mã code phức tạp trong firmware là yếu tố quan trọng khi điều khiển máy in 3D. Marlin là một firmware cổ điển được viết bằng ngôn ngữ C++, có thể được cấu hình cho nhiều bo mạch và máy in khác nhau. Phiên bản Marlin 2.0 được ra mắt vào năm 2019 với tính năng tiên tiến, hỗ trợ các thiết bị giao diện bổ sung, ổn định hơn và hỗ trợ bo mạch 32-bit. Marlin vẫn có thể chạy trên bo mạch 8-bit, mặc dù một số tính năng có thể phải bị loại bỏ do hạn chế bộ nhớ.
Klipper được coi là firmware thay thế trực tiếp cho Marlin, nhưng thực tế lại phức tạp hơn. Nguyên tắc thiết kế của Klipper là tập trung đơn giản hóa vai trò của bộ điều khiển, chỉ tương tác với động cơ bước, bộ điều chỉnh nhiệt và cảm biến ABL. Các tính toán chi tiết liên quan đến chuyển đổi mã G thành chuyển động máy in được xử lý trên một máy tính mạnh hơn, thường là Raspberry Pi hoặc các bo mạch Linux khác.
Để thực hiện điều này, firmware Klipper (viết bằng ngôn ngữ C) được cài đặt trên bo mạch điều khiển của máy in và kết nối với Raspberry Pi qua cổng USB. Raspberry Pi chạy phần mềm Klipper có tên là “Klippy”, được viết chủ yếu bằng Python. Phần mềm này đọc mã G, thực hiện tính toán cần thiết và gửi lệnh theo thời gian sự kiện đến bộ điều khiển để duy trì đồng bộ hoàn hảo.
Một hệ quả của phương pháp này là màn hình thông thường trên máy in 3D và kết nối với bo mạch điều khiển thường trở nên không cần thiết. Klipper có thể sử dụng các màn hình này, nhưng thường sử dụng các giao diện người dùng thay thế kết nối trực tiếp với Raspberry Pi. Điều này là một phần quan trọng trong cài đặt Klipper tiêu chuẩn.
Cấu Hình
Khi ngày càng có nhiều bo mạch điều khiển chuyển sang 32 bit, cảnh quan của hệ sinh thái firmware sẽ thay đổi. Đối với Marlin, cấu hình được thay đổi thông qua các tệp configuration.h và configuration-adv.h, và việc này có thể khá phức tạp đối với người mới.
Tuy nhiên, có sẵn các bản cấu hình đã được đóng gói sẵn cho các máy in và thiết bị thông thường. Klipper, åt khác, sử dụng các tệp cấu hình dễ chỉnh sửa và không yêu cầu việc nạp lại bộ điều khiển, cho phép thay đổi cấu hình nhanh chóng.
Dễ Dàng Cài Đặt
Việc cài đặt hoặc cập nhật firmware Marlin là quá trình nạp firmware mới (được cấu hình và biên dịch đúng) vào bộ điều khiển của máy in. Phương pháp cụ thể có thể khác nhau tùy thuộc vào loại thiết bị, thường là thông qua kết nối USB hoặc thẻ SD.
Trước đây, quá trình này thường được thực hiện bằng Arduino IDE, nhưng với các bo mạch 32 bit, người dùng thường sử dụng PlatformIO kết hợp với VSCode.
Đối với Klipper, cũng cần cài đặt firmware đã được cấu hình đúng trên bộ điều khiển máy in và quy trình tương tự như Marlin. Trong một số trường hợp, có thể cần tắt kết nối màn hình máy in để thực hiện bước này. Điểm khác biệt quan trọng, như đã đề cập, là không cần cập nhật firmware điều khiển mỗi khi thay đổi cấu hình.
Việc cài đặt các phần mềm của Klipper chạy trên Raspberry Pi (hoặc thiết bị dựa trên Linux khác) có thể phức tạp hơn. Trước đây, phiên bản sớm của Klipper được biết đến với tính phức tạp và không phù hợp cho người dùng không có kinh nghiệm.
Tuy nhiên, với sự cải thiện tài liệu và sự ra mắt của Klipper Installation And Update Helper (KIAUH), quá trình này đã trở nên dễ dàng hơn. Đây là một chương trình đơn giản giúp việc cài đặt Klipper và các thành phần bổ sung trở nên thuận tiện.
Tích hợp với các tiện ích bổ sung
Việc kết hợp Marlin với OctoPrint đã trở thành một lựa chọn phổ biến. Marlin và OctoPrint cung cấp khả năng điều khiển và giám sát máy in 3D từ xa. OctoPrint có thể được mở rộng bằng các plugin bổ sung như Obico, cho phép tự động dừng in khi gặp lỗi.
OctoPrint giao tiếp với Marlin qua USB và cung cấp giao diện người dùng trực quan thông qua trình duyệt. Klipper cũng có thể được sử dụng với OctoPrint, nhưng cần cẩn thận vì một số vấn đề liên quan đến tài nguyên và xử lý lệnh G-Code.
Giao diện người dùng chuyên dụng cho Klipper như Fluidd và Mainsail đã được phát triển và trở thành lựa chọn hàng đầu. Chúng cung cấp các bảng điều khiển trực quan dựa trên trình duyệt, hiển thị thông tin về tiến trình in ấn và cho phép người dùng thay đổi cài đặt Klipper và in ấn. Các tính năng bổ sung như các plugin OctoPrint và hỗ trợ webcam cũng có sẵn.
Các giao diện người dùng kết nối thông qua Moonraker, một API cho phép tương tác với Klipper và chạy trên cùng nền tảng (ví dụ: Raspberry Pi). Chúng có thể được cài đặt thủ công bằng KIAUH hoặc kèm theo hình ảnh Raspberry Pi đã được đề cập ở phần trước.
Moonraker cũng cung cấp cơ chế để tích hợp các tiện ích bổ sung khác với Klipper. Ngoài Obico, còn có KlipperScreen, một cách tương tác trực tiếp với Klipper thông qua màn hình cảm ứng. Điều này mang lại khả năng quản lý in 3D nhanh chóng và phản hồi tốt trên các màn hình cảm ứng kết nối với Raspberry Pi.
Chức Năng
Cả Marlin và Klipper đều có nhiều chức năng cốt lõi giống nhau, nhưng Klipper hỗ trợ một số tính năng nâng cao và độc đáo .
- Động học và độ phân giải:Klipper sử dụng quá trình xử lý chuyển động phức tạp hơn và hoạt động ở mức độ chi tiết cao hơn. Nó có thể chạy nhiều bước hơn mỗi giây so với Marlin, điều này có thể cải thiện chất lượng in và đặc biệt là tốc độ in.
- Nâng cao tuyến tính/áp suất:Marlin có tính năng Nâng cao tuyến tính để quản lý tốt hơn luồng máy đùn và cải thiện chất lượng cũng như độ sắc nét của các góc. Phiên bản của Klipper được gọi là “(Smooth) Pressure Advance”. Nó sử dụng một phương pháp hiệu chuẩn hơi khác mà nhiều người cho là dễ làm việc hơn và chính xác hơn. Thuật toán tiên tiến hơn của nó cũng cải thiện hiệu suất. Bạn nên đọc tài liệu về tính năng này vì tính năng này không tương thích với một số cài đặt bộ cắt hiện có, chẳng hạn như giảm tốc độ.
- Định hình đầu vào:Đây là một tính năng độc đáo của Klipper và là một tính năng đã thu hút rất nhiều sự quan tâm. Nó có khả năng (thông qua việc in các bản in hiệu chuẩn ) để loại bỏ các cộng hưởng hiển thị dưới dạng “vảy cá”, ” tiếng chuông ” và các tạo tác lặp lại khác. Ấn tượng hơn, nó có thể thực hiện việc này một cách bán tự động bằng cách sử dụng một gia tốc kế gắn vào đầu in để đo chính xác sóng hài và rung động trở thành vấn đề khi tốc độ in tăng lên.
- Nhiều bộ điều khiển:Điều này nghe có vẻ không phải là vấn đề lớn, nhưng đối với những người thực sự thúc đẩy những gì có thể, Klipper giúp dễ dàng thêm nhiều động cơ bước bổ sung hoặc các thiết bị ngoại vi khác. Klipper thậm chí có thể thêm chính Raspberry Pi làm bộ điều khiển và sử dụng các chân GPIO của nó để hỗ trợ các thiết bị bên ngoài bổ sung.
Marlin có nhiều bản phát hành thường xuyên hơn , trong khi Klipper có ít bản cập nhật chính thức hơn.
Điều gì phù hợp với bạn?
Marlin và Klipper đều đang phát triển và cải tiến trong thế giới in 3D. Tuy nhiên, việc chọn lựa phụ thuộc vào nhiều yếu tố khác nhau, và sự lựa chọn đúng đắn có thể gây tranh cãi.
Marlin 2.1+ trên bo mạch 32 bit là một lựa chọn phổ biến với khả năng đáp ứng đa số máy in 3D. Nó có sự hỗ trợ lớn từ cộng đồng người dùng, cài đặt và cấu hình đơn giản, và kết hợp tốt với OctoPrint. Marlin có xu hướng trở thành chương trình cơ sở mặc định của nhiều nhà sản xuất máy in.
Klipper ban đầu phức tạp hơn trong việc cài đặt, nhưng sau đó nhanh chóng và dễ dàng để thay đổi cấu hình. Nó hỗ trợ các tính năng độc đáo để cải thiện chất lượng in ấn với tốc độ cao. Mặc dù Klipper hỗ trợ nhiều phần cứng, nhưng số lượng lựa chọn có thể hạn chế hơn so với Marlin.Klipper hấp dẫn đối với những người muốn cải thiện chất lượng in, tăng tốc độ in hoặc tham gia vào xây dựng và sửa đổi máy in.
Tóm lại, việc lựa chọn giữa Marlin và Klipper phụ thuộc vào nhu cầu và mục tiêu của mỗi người dùng. Marlin phù hợp cho sự đa dụng và dễ sử dụng, trong khi Klipper hướng đến những người muốn tùy chỉnh và tăng cường hiệu suất in ấn.