Mục lục:
- Bước 1: Chuẩn bị sơ đồ
- Bước 2: Vẽ PCB
- Bước 3: Hàn
- Bước 4: Chuẩn bị kiểm tra
- Bước 5: Kiểm tra (Nhiệt độ CPU là mức trung bình)
- Bước 6: Kiểm tra (CPU cần mức làm mát)
- Bước 7: Cấp nguồn cho mạch INDICATOR
- Bước 8: Nối dây RPI
- Bước 9: Chương trình Python
- Bước 10: Hoạt động INDICATOR
- Bước 11: Chế tạo thay thế (Sử dụng Transistor NPN) và Phát triển thêm
Video: Chỉ báo nhiệt độ CPU Raspberry Pi: 11 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:30
Trước đây tôi đã giới thiệu mạch chỉ báo trạng thái hoạt động raspberry pi (Sau đây gọi là RPI) đơn giản.
Lần này, tôi sẽ giải thích một số mạch chỉ báo hữu ích hơn cho RPI chạy theo cách không đầu (không có màn hình).
Mạch trên hiển thị nhiệt độ CPU thành 4 mức khác nhau như:
- Đèn LED xanh lục bật khi nhiệt độ CPU trong khoảng 30 ~ 39 độ
- Đèn LED màu vàng cho biết nhiệt độ được tăng lên trong khoảng 40 đến 45 độ
- Đèn LED màu đỏ thứ 3 cho thấy CPU trở nên nóng hơn một chút khi đạt 46 ~ 49 độ
- Một đèn LED đỏ khác sẽ nhấp nháy khi nhiệt độ vượt quá 50 độ
Các phạm vi nhiệt độ CPU ở trên là khái niệm thiết kế cá nhân của tôi (Các phạm vi nhiệt độ khác có thể được định cấu hình bằng cách thay đổi các điều kiện thử nghiệm của chương trình python điều khiển mạch này).
Bằng cách sử dụng mạch này, bạn không nhất thiết phải thực hiện lệnh “vcgencmd Measure_temp” thường xuyên trên thiết bị đầu cuối bảng điều khiển.
Mạch này sẽ thông báo nhiệt độ CPU hiện tại một cách liên tục và thuận tiện.
Bước 1: Chuẩn bị sơ đồ
Mặc dù bạn có thể điều khiển 4 đèn LED trực tiếp bằng cách chỉ sử dụng mã python, logic điều khiển của chương trình sẽ tải RPI và kết quả là nhiệt độ CPU sẽ tăng lên nhiều hơn vì bạn phải chạy mã python phức tạp một chút liên tục.
Do đó, tôi đang giảm thiểu độ phức tạp của mã python càng đơn giản càng tốt và tắt logic điều khiển đèn LED cho mạch phần cứng bên ngoài.
Mạch chỉ báo nhiệt độ CPU (Sau đây gọi là INICATOR) bao gồm các bộ phận chính sau đây.
- Hai bộ ghép quang được kết nối với các chân RPI GPIO để lấy dữ liệu mức nhiệt độ như 00-> LOW, 01-> Medium, 10-> High, 11-> Cần làm mát.
- Đầu ra điều khiển 74LS139 (hoặc 74HC139, bộ giải mã 2 đến 4 và bộ khử ghép kênh) (Y0, Y1, Y2, Y3) theo các đầu vào (A, B)
- Khi nhiệt độ trong khoảng 30 ~ 39 độ, mã python xuất 00 đến các chân GPIO. Do đó, 74LS139 nhận dữ liệu đầu vào 00 (A-> 0, B-> 0)
- Khi nhập 00, đầu ra Y0 trở nên THẤP. (Vui lòng tham khảo bảng sự thật của 74LS139)
- Khi đầu ra Y0 trở nên THẤP, nó sẽ kích hoạt bóng bán dẫn 2N3906 PNP và kết quả là đèn LED Xanh lục được bật
- Tương tự như vậy, Y1 (01 -> môi trường nhiệt độ CPU) sẽ bật đèn LED màu vàng, v.v.
- Khi Y3 trở nên THẤP, DB140 kích hoạt mạch nhấp nháy LED NE555 (đây là mạch nhấp nháy LED thông thường dựa trên IC 555) là tải của bóng bán dẫn BD140 PNP
Thành phần quan trọng nhất của mạch này là 74LS139 giải mã 2 chữ số đầu vào thành 4 đầu ra đơn khác nhau như trong bảng chân trị bên dưới.
Đầu vào | Đầu ra
G (Bật) | B | A | Y0 | Y1 | Y2 | Y3 |
H | X | X | H | H | H | H |
L | L | L | L | H | H | H |
L | L | H | H | L | H | H |
L | H | L | H | H | L | H |
L | H | H | H | H | H | L |
Khi đầu ra 74LS139 trở nên THẤP, bóng bán dẫn loại PNP có thể làm cho mạch tổng thể trở nên đơn giản vì bóng bán dẫn PNP được bật khi đầu cuối cơ sở trở nên THẤP. (Tôi sẽ hiển thị phiên bản NPN ở cuối câu chuyện này)
Vì chiết áp 100K được bao gồm trong mạch nhấp nháy LED NE555, thời gian BẬT / TẮT LED đỏ có thể được điều chỉnh tùy ý theo nhu cầu.
Bước 2: Vẽ PCB
Khi sơ đồ hoạt động của INDICATOR được giải thích, chúng ta hãy bắt đầu tạo mạch.
Trước khi hàn một thứ gì đó trên bo mạch đa năng, việc chuẩn bị bản vẽ PCB hiển thị ở trên là hữu ích để giảm thiểu bất kỳ sai lầm nào.
Bản vẽ được thực hiện bằng cách sử dụng power-point để xác định vị trí của từng bộ phận trên bảng phổ thông và tạo các mẫu đi dây giữa các bộ phận có dây.
Vì hình ảnh chân ra của IC và bóng bán dẫn được đặt cùng vị trí với mẫu dây PCB, nên có thể thực hiện quá trình hàn bằng cách sử dụng hình vẽ này.
Bước 3: Hàn
Mặc dù bản vẽ PCB ban đầu được thực hiện không sử dụng dây đơn để kết nối các thành phần trên PCB, tôi hàn hơi khác.
Bằng cách sử dụng dây dẫn đơn (không phải dây thiếc), tôi đang cố gắng giảm kích thước PCB phổ biến chứa mạch INDICATOR.
Nhưng như bạn có thể thấy ở mặt hàn của PCB, tôi cũng đang sử dụng dây thiếc theo các mẫu được mô tả trong bản vẽ PCB.
Khi mỗi thành phần được kết nối theo thiết kế ban đầu của bản vẽ PCB, bảng mạch PCB đã hoàn thành việc hàn bao gồm mạch INDICATOR sẽ hoạt động chính xác.
Bước 4: Chuẩn bị kiểm tra
Trước khi kết nối RPI, mạch hoàn thiện yêu cầu thử nghiệm.
Vì có thể xảy ra bất kỳ lỗi hàn nào, nhà cung cấp nguồn DC được sử dụng để ngăn ngừa thiệt hại khi xảy ra chập hoặc đấu dây sai.
Để kiểm tra INDICATOR, hai cáp cấp nguồn bổ sung được kết nối với đầu nối nguồn điện 5V của mạch.
Bước 5: Kiểm tra (Nhiệt độ CPU là mức trung bình)
Khi không có đầu vào 5V thì đầu vào giải mã 74LS139 và kích hoạt đầu ra Y0 ở dạng THẤP (Đèn LED xanh lục được bật).
Nhưng 5V được áp dụng cho đầu vào A, đầu ra Y1 của 74LS139 kích hoạt (THẤP).
Do đó, đèn LED màu vàng được bật như trong hình trên.
Bước 6: Kiểm tra (CPU cần mức làm mát)
Khi cấp nguồn 5V cho cả hai đầu vào (A và B) của 74LS139, đèn LED màu đỏ thứ 4 sẽ nhấp nháy.
Tốc độ nhấp nháy có thể được thay đổi bằng cách điều chỉnh 100K VR như trong hình trên.
Khi quá trình thử nghiệm hoàn tất, có thể tháo hai cáp Molex 3 pin cái.
Bước 7: Cấp nguồn cho mạch INDICATOR
Để cấp nguồn cho mạch INDICATOR, tôi đang sử dụng bộ sạc điện thoại cầm tay thông thường có đầu ra 5V và bộ chuyển đổi USB loại B như trong hình trên.
Để tránh sự cố với RPI bằng cách kết nối GPIO 3.3V và mạch INDICATOR được cấp nguồn 5V, giao diện tín hiệu và nguồn điện được cách ly hoàn toàn với nhau.
Bước 8: Nối dây RPI
Đối với mạch INDICATOR giao tiếp với RPI, hai chân GPIO nên được dành riêng cùng với hai chân nối đất.
Không có yêu cầu cụ thể cho việc chọn chân GPIO.
Bạn có thể sử dụng bất kỳ chân GPIO nào để kết nối INDICATOR.
Nhưng các chân có dây phải được chỉ định làm đầu vào cho 74LS139 (ví dụ: A, B) trong chương trình python.
Bước 9: Chương trình Python
Khi hoàn thành mạch, việc tạo chương trình python bắt buộc phải sử dụng hàm INDICATOR.
Vui lòng tham khảo lưu đồ ở trên để biết thêm chi tiết về logic chương trình.
# - * - mã hóa: utf-8 - * -
nhập quy trình con, tín hiệu, hệ thống
thời gian nhập khẩu, tái
nhập RPi. GPIO dưới dạng g
A = 12
B = 16
g.setmode (g. BCM)
g.setup (A, g. OUT)
g.setup (B, g. OUT)
##
def signal_handler (sig, frame):
print ('Bạn đã nhấn Ctrl + C!')
g.output (A, Sai)
g.output (B, Sai)
f.close ()
sys.exit (0)
signal.signal (signal. SIGINT, signal_handler)
##
trong khi Đúng:
f = open ('/ home / pi / My_project / CPU_tempeosystem_log.txt', 'a +')
temp_str = subprocess.check_output ('/ opt / vc / bin / vcgencmd Measure_temp', shell = True)
temp_str = temp_str.decode (mã hóa = 'UTF-8', sai sót = 'nghiêm ngặt')
CPU_temp = re.findall ("\ d + \. / D +", temp_str)
# trích xuất nhiệt độ CPU hiện tại
current_temp = float (CPU_temp [0])
nếu current_temp> 30 và current_temp <40:
# nhiệt độ thấp A = 0, B = 0
g.output (A, Sai)
g.output (B, Sai)
time.sleep (5)
elif current_temp> = 40 và current_temp <45:
# môi trường nhiệt độ A = 0, B = 1
g.output (A, Sai)
g.output (B, True)
time.sleep (5)
elif current_temp> = 45 và current_temp <50:
# nhiệt độ cao A = 1, B = 0
g.output (A, True)
g.output (B, Sai)
time.sleep (5)
elif current_temp> = 50:
# Yêu cầu làm mát CPU cao A = 1, B = 1
g.output (A, True)
g.output (B, True)
time.sleep (5)
current_time = time.time ()
formated_time = time.strftime ("% H:% M:% S", time.gmtime (current_time))
f.write (str (formated_time) + '\ t' + str (current_temp) + '\ n')
f.close ()
Chức năng chính của chương trình python như bên dưới.
- Đầu tiên thiết lập GPIO 12, 16 làm cổng đầu ra
- Định nghĩa trình xử lý ngắt Ctrl + C để đóng tệp nhật ký và tắt GPIO 12, 16
- Khi truy cập vào vòng lặp vô hạn, hãy mở tệp nhật ký ở chế độ nối thêm
- Đọc nhiệt độ CPU bằng cách thực hiện lệnh “/ opt / vc / bin / vcgencmd Measure_temp”
- Khi nhiệt độ nằm trong khoảng 30 ~ 39 thì xuất 00 để bật đèn LED xanh
- Khi nhiệt độ nằm trong khoảng 40 ~ 44 thì xuất 01 để bật đèn LED Vàng
- Khi nhiệt độ nằm trong khoảng 45 ~ 49 thì xuất 10 để bật đèn LED Đỏ
- Khi nhiệt độ hơn 50 thì xuất ra 11 để làm cho đèn LED đỏ nhấp nháy
- Ghi dấu thời gian và dữ liệu nhiệt độ vào tệp nhật ký
Bước 10: Hoạt động INDICATOR
Khi mọi thứ đều ổn, bạn có thể thấy từng đèn LED được bật hoặc nhấp nháy theo nhiệt độ CPU.
Bạn không cần phải nhập lệnh shell để kiểm tra nhiệt độ hiện tại.
Sau khi thu thập dữ liệu trong tệp nhật ký và kết xuất dữ liệu văn bản thành biểu đồ bằng cách sử dụng Excel, kết quả được hiển thị như hình trên.
Khi áp dụng tải cao (Chạy hai Trình duyệt Midori và phát video Youtube), nhiệt độ CPU tăng đột biến lên đến 57,9C.
Bước 11: Chế tạo thay thế (Sử dụng Transistor NPN) và Phát triển thêm
Đây là ví dụ dự án INDICATOR trước đây sử dụng bóng bán dẫn NPN (2N3904 và BD139).
Như bạn có thể thấy thêm một IC (74HC04, bộ đảo ngược Quad) là cần thiết để điều khiển bóng bán dẫn NPN vì điện áp mức CAO nên được áp dụng cho cơ sở của NPN để bật bóng bán dẫn.
Tóm lại, sử dụng transistor NPN thêm phức tạp không cần thiết để làm mạch INDICATOR.
Để phát triển thêm dự án này, tôi sẽ thêm quạt làm mát như trong hình trên để làm cho mạch INDICATOR hữu ích hơn.
Đề xuất:
Raspberry Pi Hộp FAN làm mát với chỉ báo nhiệt độ CPU: 10 bước (có hình ảnh)
Raspberry Pi Box of Cooling FAN With CPU Temperature Indicator: Tôi đã giới thiệu mạch chỉ báo nhiệt độ CPU raspberry pi (Sau đây gọi là RPI) trong dự án trước. Mạch chỉ hiển thị RPI 4 mức nhiệt độ CPU khác nhau như sau. - Đèn LED màu xanh lá cây bật khi Nhiệt độ CPU trong khoảng 30 ~
Chỉ báo nhiệt độ và độ ẩm của Arduino: 7 bước (có hình ảnh)
Chỉ báo nhiệt độ và độ ẩm bằng Arduino: Hướng dẫn này sẽ hướng dẫn cách tạo một hộp có thể chỉ ra nhiệt độ và độ ẩm bằng Arduino Bạn có thể đặt hộp này trên bàn để đo nhiệt độ và độ ẩm trong phòng của bạn Bằng cách làm hộp MDF bằng cắt laser chất lượng cao, mọi thứ đều nén chặt f
Nhiệt kế nấu ăn đầu dò nhiệt độ ESP32 NTP với cảnh báo nhiệt độ và hiệu chỉnh Steinhart-Hart.: 7 bước (có hình ảnh)
Nhiệt kế nấu ăn đầu dò nhiệt độ ESP32 NTP với cảnh báo nhiệt độ và hiệu chỉnh Steinhart-Hart. là một chương trình Có thể hướng dẫn cho thấy cách tôi thêm đầu dò nhiệt độ NTP, piezo b
Chỉ báo nhiệt độ RGB (với XinaBox): 5 bước (có hình ảnh)
Chỉ báo nhiệt độ RGB (với XinaBox): Đây chính thức là bài viết về Các thiết bị hướng dẫn đầu tiên của tôi, vì vậy tôi phải thừa nhận rằng tôi đang tận dụng cơ hội này ngay bây giờ để thử. Cảm nhận về cách nền tảng hoạt động, toàn bộ khía cạnh trải nghiệm người dùng của nó. Nhưng trong khi tôi đang làm điều đó, tôi nghĩ rằng tôi có thể
KỸ THUẬT VIKING! Sừng LED trên mũ bảo hiểm Viking Space: Chỉ báo âm lượng + Mũ bảo hiểm Viking Transucent: 6 bước
KỸ THUẬT VIKING! Sừng LED trên mũ bảo hiểm Viking Space: Chỉ báo âm lượng + Mũ bảo hiểm Viking Transucent: Có! Đây là mũ bảo hiểm dành cho người Viking không gian. *** Cập nhật, Cái này nên được đổi tên thành Techno Viking Helmet *** Nhưng nó là tháng 10 năm 2010 và tôi chỉ mới biết về Techno Viking hôm nay. Ẩn sau đường cong meme. Whateva 'Anh ấy đang ở đây với năng suất cao hơn