Mục lục:

Hiển thị nhiệt độ & độ ẩm nhiệt nhiệt - Phiên bản PCB: 6 bước (có hình ảnh)
Hiển thị nhiệt độ & độ ẩm nhiệt nhiệt - Phiên bản PCB: 6 bước (có hình ảnh)

Video: Hiển thị nhiệt độ & độ ẩm nhiệt nhiệt - Phiên bản PCB: 6 bước (có hình ảnh)

Video: Hiển thị nhiệt độ & độ ẩm nhiệt nhiệt - Phiên bản PCB: 6 bước (có hình ảnh)
Video: Bộ Váy Hoa Súng gây bão truyền thông của Hoa Hậu Khánh Vân tại Miss Universe 2021 2024, Tháng sáu
Anonim
Image
Image
Thiết kế PCB sưởi
Thiết kế PCB sưởi

Cách đây không lâu, tôi đã thực hiện một dự án có tên là Hiển thị nhiệt độ & độ ẩm Thermochromic, nơi tôi đã chế tạo một màn hình 7 phân đoạn từ các tấm đồng được làm nóng / làm mát bằng các phần tử peltier. Các tấm đồng được bao phủ bởi một lá nhiệt sắc có thể thay đổi màu sắc theo nhiệt độ. Dự án này là một phiên bản nhỏ hơn của màn hình thay vì peltiers sử dụng PCB với các vết đốt nóng như người dùng DmitriyU2 đề xuất trong phần nhận xét. Sử dụng bộ gia nhiệt PCB cho phép thiết kế đơn giản và nhỏ gọn hơn nhiều. Hệ thống sưởi cũng hiệu quả hơn dẫn đến sự thay đổi màu sắc nhanh hơn.

Xem video để biết cách hoạt động của màn hình.

Vì tôi còn một ít PCB nên tôi cũng đang bán màn hình này trên cửa hàng Tindie của mình.

Quân nhu

  • Máy sưởi PCB (xem GitHub của tôi để biết các tệp Gerber)
  • Kiểm soát PCB (xem GitHub của tôi để biết các tệp Gerber và BoM)
  • Cảm biến DHT22 (ví dụ: ebay.de)
  • Chân đế in 3D (xem GitHub của tôi để biết tệp stl)
  • Tấm keo nhiệt, 150x150 mm, 30-35 ° C (SFXC)
  • Bu lông M2x6 + đai ốc
  • Tiêu đề pin 2x 1x9, 2,54 mm (ví dụ: mouser.com)
  • 2x đầu nối bảng SMD 1x9, 2,54 mm (ví dụ: mouser.com)

Bước 1: Thiết kế PCB của Lò sưởi

Thiết kế PCB sưởi
Thiết kế PCB sưởi
Thiết kế PCB sưởi
Thiết kế PCB sưởi

PCB của lò sưởi được thiết kế bằng Eagle. Kích thước PCB là 100x150 mm vì 150x150 mm là kích thước tiêu chuẩn của các tấm nhiệt màu mà tôi đã sử dụng. Lúc đầu, tôi tạo một bản phác thảo của các phân đoạn trong Fusion360 được lưu dưới dạng dxf và sau đó nhập vào Eagle. Các phân đoạn có những khoảng trống ở giữa chúng và chỉ được nối với nhau bằng những cây cầu nhỏ. Điều này cải thiện khả năng cách nhiệt của các phân đoạn riêng lẻ và do đó cho phép sưởi ấm nhanh hơn và giảm 'nhiễu xuyên âm nhiệt'. Các phân đoạn được lấp đầy bằng các dấu vết PCB trên lớp trên cùng (được nhìn thấy màu đỏ) bằng cách sử dụng công cụ uốn khúc trong Eagle. Tôi đã sử dụng chiều rộng và khoảng cách đường ray là 6 triệu, đây là kích thước tối thiểu có thể được sản xuất bởi PCBWay mà không tính thêm chi phí. Mỗi dấu vết được uốn khúc giữa hai vias sau đó được kết nối với các chân thông qua lớp dưới cùng (màu xanh lam) bằng cách sử dụng dấu vết 32 mil dày hơn nhiều. Tất cả các phân khúc đều có điểm chung.

Tôi đã không thực hiện bất kỳ tính toán nào cho công suất sưởi cần thiết cho một sự gia tăng nhiệt độ nhất định cũng như không tính toán điện trở dự kiến của một đoạn. Tôi đã tìm ra rằng bất kỳ điều chỉnh công suất sưởi nào có thể được thực hiện bằng cách sử dụng tín hiệu PWM với chu kỳ nhiệm vụ khác nhau. Sau đó, tôi nhận thấy rằng các phân đoạn nóng lên khá nhanh khi được cấp nguồn qua cổng USB 5V sử dụng chu kỳ nhiệm vụ ~ 5%. Cường độ dòng điện khi đốt nóng cả 17 đoạn là 1,6 A.

Tất cả các tệp bảng có thể được tìm thấy trên GitHub của tôi.

Bước 2: Thiết kế PCB bộ điều khiển

Thiết kế bộ điều khiển PCB
Thiết kế bộ điều khiển PCB
Thiết kế bộ điều khiển PCB
Thiết kế bộ điều khiển PCB
Thiết kế bộ điều khiển PCB
Thiết kế bộ điều khiển PCB

Để điều khiển bộ gia nhiệt PCB, tôi chọn một MCU SAMD21E18 mà tôi cũng đã sử dụng trong dự án GlassCube của mình. Bộ vi điều khiển này có đủ chân để điều khiển tất cả 17 phân đoạn bộ gia nhiệt và đọc ra cảm biến DHT22. Nó cũng có USB gốc và có thể được flash bằng bộ nạp khởi động CircuitPython của Adafruit. Một đầu nối micro USB được sử dụng làm nguồn điện và để lập trình MCU. Các phân đoạn lò sưởi được điều khiển bởi 9 MOSFETs kênh đôi (SP8K24FRATB). Chúng có thể xử lý lên đến 6 A và có điện áp ngưỡng cổng <2,5 V để chúng có thể được chuyển đổi bằng tín hiệu logic 3,3 V từ MCU. Bác thấy chủ đề này rất hữu ích giúp em thiết kế mạch điều khiển bình nóng lạnh.

Tôi đã đặt mua PCB từ PCBWay và các bộ phận điện tử riêng từ Mouser và tự mình lắp ráp PCB để tiết kiệm chi phí. Tôi đã sử dụng một máy rút keo hàn đặt các bộ phận bằng tay và hàn chúng bằng một bộ sưởi IC hồng ngoại. Tuy nhiên, do số lượng thành phần tương đối lớn và yêu cầu làm lại nên điều này khá tẻ nhạt và tôi đang cân nhắc sử dụng dịch vụ lắp ráp trong tương lai.

Một lần nữa, các tệp bảng có thể được tìm thấy trên GitHub của tôi. Ở đó, bạn có thể tìm thấy phiên bản cải tiến của PCB sử dụng đầu nối USB-C thay vì micro USB. Tôi cũng đã sửa khoảng cách của các lỗ thông qua cho cảm biến DHT22 và thêm một đầu nối 10 chân để dễ dàng nhấp nháy bộ nạp khởi động thông qua J-Link.

Bước 3: Bộ nạp khởi động CircuitPython

Lúc đầu, tôi đã flash SAMD21 bằng bộ nạp khởi động UF2 dựa trên Trinket M0 của Adafruit. Bộ nạp khởi động đã phải được sửa đổi một chút vì Trinket có đèn LED được kết nối với một trong các chân mà tôi sử dụng để sưởi ấm. Nếu không, chân này sẽ tăng cao trong một thời gian ngắn sau khi khởi động và làm nóng đoạn được kết nối với toàn bộ nguồn điện. Việc nhấp nháy bộ nạp khởi động được thực hiện bằng cách kết nối J-Link với MCU qua các cổng SWD và SWC. Toàn bộ quá trình được mô tả chi tiết trên trang web Adafruit. Sau khi cài đặt bộ nạp khởi động, MCU được nhận dạng là ổ đĩa flash khi được kết nối qua cổng micro USB và các bộ nạp khởi động tiếp theo có thể được cài đặt đơn giản bằng cách kéo tệp UF2 vào ổ đĩa.

Bước tiếp theo, tôi muốn cài đặt bộ nạp khởi động CircuitPython. Tuy nhiên, vì bảng của tôi sử dụng nhiều chân không được kết nối trên Trinket M0, nên trước tiên tôi phải sửa đổi một chút cấu hình bảng. Một lần nữa, có một hướng dẫn tuyệt vời cho việc này trên trang web Adafruit. Về cơ bản, người ta chỉ cần nhận xét một vài ghim bị bỏ qua trong mpconfigboard.h và sau đó biên dịch lại mọi thứ. Các tệp bộ nạp khởi động tùy chỉnh cũng có sẵn trên GitHub của tôi.

Bước 4: Mã CircuitPython

Mã CircuitPython
Mã CircuitPython
Mã CircuitPython
Mã CircuitPython

Sau khi bộ nạp khởi động CircuitPython đã được cài đặt, bạn chỉ có thể lập trình bảng bằng cách lưu mã của mình dưới dạng tệp code.py trực tiếp vào ổ đĩa flash USB. Đoạn mã tôi đã viết đọc ra cảm biến DHT22 và sau đó hiển thị luân phiên nhiệt độ và độ ẩm bằng cách làm nóng các phân đoạn tương ứng. Như đã đề cập, việc sưởi ấm được thực hiện bằng cách chuyển MOSFETs bằng tín hiệu PWM. Thay vì định cấu hình các chân làm đầu ra PWM, tôi đã tạo tín hiệu PWM "giả" với tần số chuyển đổi thấp 100 Hz trong mã bằng cách sử dụng độ trễ. Để giảm mức tiêu thụ hiện tại hơn nữa, tôi không bật các phân đoạn đồng thời mà tuần tự như thể hiện trong sơ đồ trên. Ngoài ra còn có một vài thủ thuật để làm cho độ nóng của các phân đoạn trở nên đồng đều hơn. Trước hết, chu kỳ nhiệm vụ có một chút khác biệt đối với mọi phân khúc. Ví dụ: dấu gạch ngang của dấu "%" cần chu kỳ nhiệm vụ lớn hơn nhiều vì sức đề kháng cao hơn của nó. Ngoài ra, tôi nhận thấy rằng các phân đoạn được bao quanh bởi nhiều phân đoạn khác cần được làm nóng ít hơn. Ngoài ra, nếu một phân đoạn được làm nóng trong lần "chạy" trước thì chu kỳ nhiệm vụ có thể được giảm bớt trong lần tiếp theo. Cuối cùng, thời gian làm nóng và làm mát được điều chỉnh phù hợp với nhiệt độ môi trường được đo bằng cảm biến DHT22 một cách thuận tiện. Để tìm các hằng số thời gian hợp lý, tôi thực sự đã hiệu chỉnh màn hình trong một buồng khí hậu mà tôi may mắn có quyền sử dụng tại nơi làm việc.

Bạn có thể tìm thấy mã đầy đủ trên GitHub của tôi.

Bước 5: Lắp ráp

cuộc họp
cuộc họp
cuộc họp
cuộc họp
cuộc họp
cuộc họp

Việc lắp ráp màn hình khá dễ dàng và có thể được chia theo các bước sau

  1. Hàn đầu ghim nữ để làm nóng PCB
  2. Gắn tấm tản nhiệt tự dính vào PCB gia nhiệt
  3. Cảm biến hàn DHT22 để điều khiển PCB và gắn chặt bằng bu lông và đai ốc M2
  4. Hàn đầu ghim nam với bộ điều khiển PCB
  5. Kết nối cả hai PCB và đặt trong giá đỡ in 3D

Bước 6: Hoàn thành dự án

Dự án đã hoàn thành
Dự án đã hoàn thành
Dự án đã hoàn thành
Dự án đã hoàn thành

Tôi khá hài lòng với màn hình đã hoàn thành hiện đang liên tục chạy trong phòng khách của chúng tôi. Mục tiêu tạo ra một phiên bản nhỏ hơn, đơn giản hơn của màn hình cảm ứng nhiệt ban đầu của tôi chắc chắn đã đạt được và tôi muốn cảm ơn người dùng DmitriyU2 một lần nữa vì đề xuất này. Dự án cũng giúp tôi cải thiện kỹ năng thiết kế PCB của mình trong Eagle và tôi đã học về việc sử dụng MOSFET làm thiết bị chuyển mạch.

Người ta có thể cải thiện thiết kế hơn nữa bằng cách tạo ra một vỏ bọc đẹp cho PCB. Tôi cũng đang nghĩ đến việc làm một chiếc đồng hồ kỹ thuật số theo phong cách tương tự.

Nếu bạn thích dự án này, bạn có thể làm lại nó hoặc mua nó trên cửa hàng Tindie của tôi. Cũng xem xét bỏ phiếu cho tôi trong thử thách thiết kế PCB.

Thử thách thiết kế PCB
Thử thách thiết kế PCB
Thử thách thiết kế PCB
Thử thách thiết kế PCB

Giải thưởng giám khảo trong Thử thách thiết kế PCB

Đề xuất: