python控制树莓派风扇_gpio控制风扇转速 pwm方案

news/2025/2/12 23:11:46/

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#最新的保持温度恒定的代码,把——改成空格或者\t

#

#!/usr/bin/env python

# encoding: utf-8

import RPi.GPIO

import time

import sys

import math

RPi.GPIO.setwarnings(False)

RPi.GPIO.setmode(RPi.GPIO.BCM)

#这里根据自己接法修改

gpio=4

RPi.GPIO.setup(gpio, RPi.GPIO.OUT)

pwm = RPi.GPIO.PWM(gpio, 440)

RPi.GPIO.setwarnings(False)

#风扇能保持旋转的最低速度,需要自己尝试

min_speed=20.0

#希望cpu温度稳定在多少

temperature=39400

##########以下都可以不用修改####################

prv_speed = 0.0

speed_fin=50.0

max_step=3.0

def sigmoid(x):

——x=x/4000.0

——result= 2.0*max_step/(1+math.exp(-x))-max_step

——return result

try:

——pwm.start(0)

——while True:

————tmpFile = open( '/sys/devices/platform/sunxi-i2c.0/i2c-0/0-0034/temp1_input' )

————cpu_temp = int(tmpFile.read())

————tmpFile.close()

————speed_fin=speed_fin+sigmoid(cpu_temp-temperature)

————speed_fin = min( speed_fin, 100.0 )

————speed_fin = max( speed_fin, min_speed-0.5 )

————if speed_fin < min_speed:

——————speed=0

————else:

——————speed=speed_fin

————if prv_speed == 0.0 :

——————if speed!=0.0 :

————————pwm.ChangeDutyCycle(100)

————————time.sleep(0.3)

————————print "start"

————prv_speed = speed

#如果不需要记录当前转速,去掉下面两行

————with open('/tmp/fan.info', 'w') as file:

——————file.write(str(speed))

————#print speed,speed_fin,cpu_temp

————pwm.ChangeDutyCycle(speed)

————time.sleep(2)

except KeyboardInterrupt:

——pass

pwm.stop()


http://www.ppmy.cn/news/496716.html

相关文章

STM32PWM控制智能风扇

设计思路&#xff1a; 这个是一个STM32通过定时器产生PWM波控制小风扇的设计&#xff0c;首先STM32驱动ds18b20温度传感器采集环境温度&#xff0c;然后通过按键设置温度的阈值&#xff0c;不同的温度范围定时器产生的PWM波不同&#xff0c;相应的小风扇的转速也会不一样&…

四线直流风扇PWM调速探研

最近拿到个9cm风扇&#xff0c;试了下可以使用&#xff0c;这个风扇是常见的用于机柜或机箱的工业扇&#xff08;高转速高电流&#xff09;&#xff0c;因此在接通典型12V后非常暴力&#xff0c;怠速电压在4v左右。 这篇文章将说明电脑风扇如何调速&#xff0c;为自制控制器预研…

NanoPC-T4 上实现pwm风扇自动调速

友善之臂推出的 NanoPC-T4 是一款采用 瑞芯微 RK3399 方案的嵌入式开发板&#xff0c;性能强大。发热量也杠杠的。 其板载PWM调速风扇接口采用GH1.25 插头&#xff0c;支持PWM调速。但查看了下 dts 并没有配置自动根据温度调节的选项。(注:pwm-fan, thermal_zone, cooling_devi…

树莓派4 PWM控制风扇转速

5V风扇是笔记本拆下来的&#xff0c;接了个ss8550 NPNPNP三极管。 接线&#xff1a; pi 5V --- 风扇5V 风扇GND --- 三接管C极 pi BCM 18 --- 三极管B极 pi GND --- 三极管E极 效果图&#xff1a; 代码&#xff1a; #!/usr/bin/python3 # encoding: utf-8import RPi.GPIO…

树莓派 linux pwm,树莓派使用pwm控制风扇

使用gpio readall查看针脚名称 $ gpio readall -------------------------------Pi 4B------------------------------ | BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM | ---------------------------------------------------------------- | | | 3…

Linux pwm_fan 风扇驱动

前言 本文分析风扇驱动&#xff0c;驱动主要功能是控制以及计算风扇转速&#xff0c;添加进Linux Thermal 核心层&#xff1b; 设备树 常用设备树如下&#xff1a; pwm-fan {compatible "pwm-fan";cooling-min-state <0>;cooling-max-state <3>;#c…

【小伟哥AI之路】Jetson Nano之4针PWM风扇转速控制

刚拆封的Jetson Nano 配置是PWM4脚风扇&#xff0c;发现开机不转&#xff0c;感觉风扇安装问题…… jetson-nano-sd-card-image.zip 发现3脚和4脚有区别&#xff0c;4脚能控制风速&#xff0c;这个高级了。 硬件连接 FAN注意对好方向&#xff0c;将风扇接入 Jetson Nano 的风…

Ubuntu系统下主板GPU温控pwm风扇

要求主板、风扇均可pwm调速 sudo apt instlal lm-sensorssudo sensors-detectsudo apt install fancontrol配置一服务存放nvidia-smi读取的GPU温度在/tmp/nvidia-temp/temp文件中&#xff1a; [Unit] DescriptionNVidia GPU temperaturee reader Requiresfancontrol.service Be…