Mục lục:
- Quân nhu
- Bước 1: Thiết kế PCB của Lò sưởi
- Bước 2: Thiết kế PCB bộ điều khiển
- Bước 3: Bộ nạp khởi động CircuitPython
- Bước 4: Mã CircuitPython
- Bước 5: Lắp ráp
- Bước 6: Hoàn thành dự án
Video: Hiển thị nhiệt độ & độ ẩm nhiệt nhiệt - Phiên bản PCB: 6 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:31
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
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
Để đ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
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
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
- Hàn đầu ghim nữ để làm nóng PCB
- Gắn tấm tản nhiệt tự dính vào PCB gia nhiệt
- 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
- Hàn đầu ghim nam với bộ điều khiển PCB
- Kết nối cả hai PCB và đặt trong giá đỡ in 3D
Bước 6: Hoàn thành dự án
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.
Giải thưởng giám khảo trong Thử thách thiết kế PCB
Đề xuất:
Hiển thị nhiệt độ & độ ẩm Thermochromic: 10 bước (có hình ảnh)
Hiển thị Nhiệt độ & Độ ẩm Thermochromic: Tôi đã làm việc với dự án này được một thời gian. Ý tưởng ban đầu đến với tôi sau khi xây dựng một trình điều khiển TEC tại nơi làm việc cho một hội chợ thương mại. Để hiển thị khả năng sưởi ấm và làm mát của TEC, chúng tôi đã sử dụng sơn nhiệt sắc tố
Giao diện bàn phím với 8051 và hiển thị số bàn phím trong 7 phân đoạn: 4 bước (có hình ảnh)
Giao diện bàn phím với 8051 và hiển thị số bàn phím trong 7 phân đoạn: Trong hướng dẫn này, tôi sẽ cho bạn biết về cách chúng ta có thể giao diện bàn phím với 8051 và hiển thị số bàn phím trong màn hình 7 đoạn
Arduino Uno: Hình ảnh động bitmap trên Tấm chắn hiển thị màn hình cảm ứng TFT ILI9341 Với Visuino: 12 bước (có Hình ảnh)
Arduino Uno: Ảnh động bitmap trên Tấm chắn hiển thị màn hình cảm ứng TFT ILI9341 Với Tấm chắn màn hình cảm ứng TFT dựa trên Visuino: ILI9341 là Tấm chắn hiển thị chi phí thấp rất phổ biến cho Arduino. Visuino đã hỗ trợ chúng trong một thời gian khá dài, nhưng tôi chưa bao giờ có cơ hội viết Hướng dẫn về cách sử dụng chúng. Tuy nhiên, gần đây có rất ít người hỏi
Hiển thị nhiệt độ trên Mô-đun hiển thị LED P10 bằng Arduino: 3 bước (có hình ảnh)
Hiển thị nhiệt độ trên Mô-đun hiển thị LED P10 bằng Arduino: Trong hướng dẫn trước đã được hướng dẫn cách hiển thị văn bản trên Mô-đun hiển thị LED ma trận P10 bằng cách sử dụng Arduino và Đầu nối DMD, bạn có thể kiểm tra tại đây. Trong hướng dẫn này, chúng tôi sẽ đưa ra một hướng dẫn dự án đơn giản bằng cách sử dụng mô-đun P10 làm màn hình hiển thị
Thực hiện: Bài dự thi Cuộc thi Huy hiệu NYC từ Máy in GameBoy cũ: 14 bước (có Hình ảnh)
Thực hiện: Bài dự thi Huy hiệu NYC từ Máy in GameBoy cũ: Xin chào tất cả, đây là lần chụp thứ hai của tôi tại một cửa hàng Có thể hướng dẫn .. hãy tử tế..Vì vậy, cuộc họp tại địa phương Make: NYC đã có một cuộc thi huy hiệu cho cuộc họp thứ hai .. (liên kết tại đây) , mục đích của cuộc thi là tạo ra một bảng tên / huy hiệu có thể đeo được ở một số loại, bằng một số chất liệu