Cảm biến theo dõi và phát hiện filament cho máy in 3D

một cảm biến dây tóc không chỉ theo dõi chạy (như một công tắc đơn giản sẽ làm) mà còn cả sự tiến triển

👁️
880
Lượt Xem
❤️
18
Lượt Thích
📥
75
Lượt Tải
Cập Nhật Nov 22, 2025
Chi tiết
Tải xuống
Bình Luận
Khoe bản in
Remix

Mô tả

Giới thiệu

Phạm vi của dự án này là xây dựng một cảm biến filament không chỉ theo dõi tình trạng hết filament (như một công tắc đơn giản) mà còn theo dõi tiến trình để phát hiện tắc nghẽn.

Các tùy chọn hiện tại hoặc không đáng tin cậy (cảm biến laser không hoạt động tốt với các filament trong suốt) hoặc đắt và khó sử dụng (giám sát filament từ Duet)

Vì vậy, ý tưởng của tôi là sử dụng một công tắc quang học giá $0.50 để cảm nhận xung thông qua một bánh mã hóa, giống như những con chuột bóng ngày xưa.

Đã có một số thiết lập duet cho thấy công tắc quang học đơn giản có thể gây ra sự không nhất quán trong việc đọc do tính chất analog của tín hiệu được gửi từ cảm biến IR.

Việc thêm một bộ kích hoạt Schmitt sẽ khắc phục vấn đề, làm sạch tín hiệu đến mức cho phép độ chính xác đọc dưới +/-5%.

Có sẵn các cảm biến tốc độ IR Arduino tiết kiệm chi phí với bộ kích hoạt Schmitt tích hợp.

Theo phong cách RepRap thuần túy, nó cũng được thiết kế để sử dụng càng nhiều bộ phận in 3D càng tốt.


Danh sách nguyên liệu:

Dưới đây là tất cả phần cứng bạn sẽ cần:

1x Cảm biến tốc độ Arduino; loại này: https://www.aliexpress.com/item/4000010517311.html

2x Vòng bi MR105 (5mm ID x 10mm OD x 4mm)

6x ốc vít M3 x 6mm

Một ít ống PTFE 4mm

Hướng dẫn:

Bắt đầu bằng cách in tất cả các bộ phận đi kèm. Tất cả nên in mà không cần hỗ trợ ở độ cao lớp 0.2mm.

Bánh xe nên được in bằng vật liệu mềm; TPU hoặc TPE.

Trục-A nên được in bằng vật liệu tối, không trong suốt để chắn cảm biến IR.

Sau đó, sử dụng công cụ cắt để cắt khe trên ống PTFE. Kiểm tra lắp ráp trong thân.

Tiếp theo, lắp ráp Trục_A vào Trục_B. Nên vừa khít, đừng ngần ngại nhẹ nhàng đóng nó xuống. (Những người dùng Railcore sẽ có đặc quyền sử dụng các lỗ góc của bảng điều khiển)

Bánh xe sau đó sẽ được gắn vào khu vực lục giác của Trục_B, và hoàn thành bằng cách lắp vòng bi ở mỗi đầu.

Văn bản phù hợp với cụm lắp trục trong thân máy, nó nên di chuyển tự do. Nếu không, hãy đảm bảo rằng bánh xe được căn chỉnh tốt trên trục, và ống PTFE được cắt/hướng đúng cách. Kiểm tra xem có bị dính sợi nào không.

Nếu mọi thứ đều ổn, hãy tiếp tục lắp ráp 2 nửa thân lại với nhau bằng cách siết chặt 3 ốc vít. Đừng siết quá chặt kẻo bạn sẽ làm hỏng ren.

Kiểm tra lại rằng trục đang di chuyển tự do bằng cách chèn một đoạn filament và xem nếu bánh mã hóa đang quay.

Nếu có, bạn gần hoàn thành rồi!

Lắp cảm biến vào khe với 2 ốc vít còn lại, trượt giá đỡ vào rãnh, và cắt ống Teflon thừa nếu bạn muốn nó gọn gàng.

Thế là xong!


Cài đặt firmware:

Cho đến nay, tôi chỉ thử nghiệm trên Reprap Firmware, xin hãy cho tôi biết bạn đã cài đặt nó trên bo mạch của bạn như thế nào:

-Duet3/RRF3:

M591 D0 P7 C"io6.in" E48 L1.2 R50:150 A1 S0 ; Giám sát filament kiểu xung trên chân io6.in, đã bật, độ nhạy 1.20mm/xung, chuyển động cho phép 50% đến 150%, kiểm tra mỗi 48mm

Nơi mà "io6.in" là đầu vào cảm biến của bạn và S0 đặt nó ở chế độ "không làm gì" để bạn có thể thử nghiệm bằng cách khởi động một bản in và nhập M591 D0 để lấy độ nhạy thực tế đo được từ bảng điều khiển (sau đó chỉnh sửa giá trị L của bạn)

E48 tương ứng với chu vi bánh xe, cho phép trung bình các xung qua một vòng trong trường hợp in không đồng nhất; bạn có thể thử siết chặt nếu bạn có một bản in thật đẹp và chính xác

-Klipper (Được cung cấp bởi JohnOCFII từ cộng đồng Railcore)

Dưới đây là phần liên quan trong printer.cfg

#___ Cảm biến Filament ___# [filament_motion_sensor fe_sensor] detection_length: 6.0

Chiều dài tối thiểu của filament được kéo qua cảm biến để kích hoạt

một sự thay đổi trạng thái trên switch_pin

Mặc định là 7 mm.

extruder: extruder

Tên của phần extruder mà cảm biến này liên kết với.

Tham số này phải được cung cấp.

switch_pin: ^PC16 pause_on_runout: True runout_gcode: {action_respond_info("Cảm biến filament báo hết FILAMENT")} PAUSE #insert_gcode: #event_delay: #pause_delay:

Xem phần "filament_switch_sensor" để biết mô tả về các

tham số ở trên.

Mục PAUSE gọi một macro có tên là PAUSE.

Tôi hy vọng bạn thấy nó hữu ích!


Lịch sử sửa đổi:

Rev1.0 - 2020-06-11 - Phát hành ban đầu

Rev1.1 - 2020-10-14 - Thêm bánh xe encoder 8 và 12 khe cho việc in dễ dàng hơn

Rev1.2 - 2021-02-18 - Cập nhật lớn - Thay thế cảm biến bằng cảm biến IR kiểu Adruino được trang bị schmitt-trigger, kéo dài và lộ trục để kiểm tra sự quay tốt, và kéo dài hướng dẫn boden ở phía đầu ra.

Rev1.3 - Dọn dẹp hoàn toàn tệp, bao gồm tệp bước, điều chỉnh khả năng in nhỏ, thêm khe trên trục để trực quan hóa tốt hơn sự quay, cải thiện công cụ cắt

Danh mục: Phụ kiện Máy in 3D

Giấy phép

Tác phẩm này được cấp phép theo

Creative Commons — Attribution — Noncommercial — Share Alike

CC-BY-NC-SA

Yêu cầu ghi công
Remix & phái sinh Được phép
Sử dụng thương mại Không được phép

File mô hình

TẤT CẢ FILE MÔ HÌNH (8 Tập tin)
Đang tải files, vui lòng chờ...
Vui lòng đăng nhập để bình luận.

Chưa có bình luận nào. Hãy là người đầu tiên!

Vui lòng đăng nhập để khoe bản in của bạn.

Chưa có bản in nào được khoe. Hãy là người đầu tiên!

Remix (0)