У моего двойного поклонника RPI есть некоторая инерция в стартапе. Таким образом, он не начнется с DUDY_CYCLE ~ 20000, однако он может начать с 30000, а затем может быть снижен до 20000 года. Таким образом, нам нужен какой -то механизм Kick -Start, а также
У меня возникла эта ошибка [: -eq: Unary Operator ожидается в строке 30
#!/bin/bash
echo 0 > /sys/class/pwm/pwmchip1/export
echo 50000 > /sys/class/pwm/pwmchip1/pwm0/period #20kHz PWM period in nanoseconds
echo normal > /sys/class/pwm/pwmchip1/pwm0/polarity
# Set initial fan speed
duty_cycle=30000
min_duty_cycle=20000
echo $duty_cycle > /sys/class/pwm/pwmchip1/pwm0/duty_cycle
sleep 1 # Give the fan some time to start
while true
do
# Read CPU temperature
temp=$(cat /sys/devices/virtual/thermal/thermal_zone0/temp)
# Convert temperature to integer (divide by 1000)
temp=$((temp / 1000))
# Set PWM duty cycle based on temperature
if [ $temp -gt 73 ]; then
duty_cycle=40000
elif [ $temp -gt 68 ]; then
duty_cycle=30000
elif [ $temp -gt 65 ]; then
duty_cycle=$min_duty_cycle
else
duty_cycle=0
fi
if [ $duty_cycle -eq $min_duty_cycle ] && [ $(cat /sys/class/pwm/pwmchip2/pwm0/duty_cycle) -eq 0 ]; then
echo 30000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle
sleep 2
fi
echo $duty_cycle > /sys/class/pwm/pwmchip1/pwm0/duty_cycle
# Add a small delay to avoid excessive CPU usage
sleep 3
done
Подробнее здесь: https://stackoverflow.com/questions/797 ... r-expected
Ширный сценарий управления вентилятором `unary operator ожидал ⇐ Linux
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение