基于FPGA制作红外热成像传感器,有没有大佬可以给我提提意见和思路呀

Làm thế nào để bắt đầu, tôi có ý tưởng này nhưng không biết phải làm như thế nào, có ai đã làm được không, có thể nói một chút về cách làm không?

Yêu cầu đối với cảm biến được thiết kế là có thể phân tích và xử lý hình ảnh, kết nối màn hình hiển thị thông qua bảng phát triển, đo được nhiệt độ của một vật thể nào đó, không biết bắt đầu từ đâu, hoặc có ai biết vị cao nhân nào đã làm được không, vui lòng giới thiệu một chút, không cần thiết kế quá tốt, cảm biến hình ảnh nhiệt hồng ngoại được thiết kế có thể thực hiện các hoạt động cơ bản là được, nếu có tài liệu phát triển sẽ rất cảm ơn!!!

Đi ngang qua, đừng bỏ lỡ tôi, tóc con tôi sắp hói rồi, thực sự không biết phải làm thế nào

Anh em, đừng vội hói, từ từ mà mổ xẻ, hồng ngoại + FPGA không đen box như bạn nghĩ, cốt lõi chỉ là “biến dòng nhỏ từ detector thành ảnh màu nhiệt độ trên màn hình”. Dưới đây là lộ trình tối thiểu “chạy được”, toàn bộ mã nguồn hoặc linh kiện rẻ, lắp theo là có ảnh, sau đó từ từ điêu khắc.


I. Chọn detector “mua được ngay”

  1. TN256 / MLX90640 / AMG8833 loại 32×24…256×200 pixel rẻ nhất, ra I²C hoặc DVP song song, vài trăm là có.
  2. Muốn 640×512 quân dụng? Bỏ đi, mỗi detector đã vài chục triệu, lại thêm cửa trập, TEC, ống kính, sinh viên không đủ tiền.
    Mục tiêu giai đoạn 1: TN256 (256×200) + FPGA tự làm → VGA 25 fps + nhiệt độ tâm ảnh.
    (CSDN có bác ikkg chia sẻ toàn bộ project FPGA TN256, Verilog + constraint + sơ đồ, chạy thẳng Cyclone IV, xài free.)

II. Bill vật liệu tối thiểu

  1. Detector: module TN256 (kèm ống kính 35°, ra SPI/song song).
  2. FPGA: core board Cyclone IV EP4CE15 (taobao 120 k, có 64 Mbit SDRAM, đủ buffer 256×200).
  3. Màn: LCD 7 inch VGA + driver 3-in-1 (40 k).
  4. Nguồn: adapter 12 V → DCDC xuống 5 V/3,3 V/1,2 V; detector cần 2,7–3,6 V sạch.
  5. Motor cửa trập: servo 5 V mini (dùng hiệu chuẩn, code mở điều khiển trực tiếp GPIO).
  6. Ống kính: nếu module có sẵn thì thôi, nhớ kính germanium, thủy tinh thường cản 8–14 µm.

III. Pipeline FPGA (ikkg đã viết, bạn chỉ việc synthesize)

  1. Clock top: 50 MHz vào PLL → 100 MHz hệ thống + 33 MHz VGA + 25 MHz pixel.
  2. Thu DVP: VS/HS/PCLK đánh 3 stage đồng bộ, 8 bit grayscale ghép 16 bit.
  3. Hiệu chuẩn điểm: 30 s tự động đóng cửa trập, lưu “background frame” vào SDRAM, real-time “ảnh gốc – background + offset”, loại bỏ nhiễu cố định.
  4. Scale: 256×200 → 480×320 (core Scale Altera VIP, license chỉ chạy 1 h, đủ debug).
  5. Giả màu: 8 bit grayscale tra bảng → RGB888, chọn rainbow hay “white-hot”, sửa file RAM init.
  6. Timming VGA: 800×600@60 Hz, đọc khung từ SDRAM, phát ra màn.
  7. Tính nhiệt độ:
    • Detector có sẵn công thức “Pixel–T”, hệ số nằm trong EEPROM, đọc qua I²C.
    • Nhân 14×14 → 28 bit trong FPGA, tra bảng tuyến tính từng đoạn, ra nhiệt độ tuyệt đối.
    • Ghi nhiệt độ tâm ảnh lên góc màn, chữ trắng.
  8. UART: 115200 xuất max/min/center mỗi khung, cho PC ghi dữ liệu.

IV. Phần mềm/thuật toán

  1. Script Matlab:
    • Thu raw về, vẽ histogram, equalize (PE), xem dải động.
    • Fit đường “gray–T”, sinh bảng tra FPGA, xuất file .mif, khởi tạo ROM.
  2. Hiệu chuẩn hộp đen:
    • Mượn hộp 30 °C / 50 °C / 70 °C, lấy trung bình 100 khung mỗi nấc, hiệu chuẩn hai điểm, ghi gain/offset vào Flash, khởi động nạp.
    • Không có hộp đen? Ấm điện + PT100 độ chính xác 0,1 °C cũng xong, sai số ≈ ±2 °C, demo là ok.

V. Quy trình up ảnh (test 3 ngày có hình)
Ngày 1: hàn dây → nối song song TN256 vào FPGA → Signaltap bắt VS/HS → màn sáng.
Ngày 2: thông SDRAM → đóng băng raw lên Matlab → xem histogram → sinh lookup table.
Ngày 3: cộng hiệu chuẩn + giả màu + UART nhiệt độ → quay clip tay chạm tản nhiệt, xong việc.


VI. Nâng cấp sau?

  • Đổi độ phân giải cao hơn: FLIR Lepton 3.5 (160×120) hay Boson 320 (320×256), đều ra SPI, sửa interface.
  • GigE: mua IP GigE Vision của Lattice, bỏ stream Avalon-ST vào, thành camera công nghiệp.
  • AI phát nóng: đưa grayscale 8 bit qua AXI-Stream vào Zynq PS, chạy YOLO-tiny, báo động khi >60 °C.
  • Thêm TEC giữ nhiệt: drift <0,1 °C, độ ổn định nhiệt độ bay luôn.

VII. Gói mã nguồn/tài liệu (test xong hết)

  1. Toàn bộ Verilog TN256 + Cyclone IV ikkg (kèm Quartus project, constraint, SDRAM timing).
  2. Paper công suất thấp, giải thích cách nối ADC, làm platform histogram equalization bằng FPGA.
  3. Patent CN105827999A, hình 2 vẽ sẵn pipeline “detector→ADC→FPGA→DRAM→display”, copy không sai.
  4. Nếu chỉ muốn mua module xong, ehiway 256×200 có cửa trập 680 k, kèm code STM32, thử UART ra nhiệt độ rồi port qua FPGA cũng nhanh.

Cuối cùng một bát soup gà:
Đừng sợ hai từ “hồng ngoại”, nó chỉ là camera grayscale chậm + một bảng tra. Chạy thông 256×200 đã, rồi mới tính 640×512, hiệu chuẩn bức xạ, NETD<50 mK…
Mục tiêu bây giờ không phải SCI, mà là “trên màn xuất hiện ảnh đổi màu theo nhiệt độ”, một khi chạy được, tự tin sẽ nổ tung.

Cố lên, ngày nào hói thật nhớ về báo cáo!

谢谢回答,你这回答真的太棒了! :+1: :face_blowing_a_kiss: