NanoPC-T4 上实现pwm风扇自动调速
友善之臂推出的 NanoPC-T4 是一款采用 瑞芯微 RK3399 方案的嵌入式开发板,性能强大。发热量也杠杠的。 其板载PWM调速风扇接口采用GH1.25 插头,支持PWM调速。但查看了下 dts 并没有配置自动根据温度调节的选项。(注:pwm-fan, thermal_zone, cooling_device相关DTS节点) , 不过这么做也可以理解,友善官方并没有配套的风扇出售。而这些跟风扇参数相关)
这里给出 NanoPC-T4官方Wiki资料,有兴趣的自行了解。
- NanoPC-T4 WIKI资料
shell 脚本 保存到 /sbin/fan 并添加执行权限
#!/bin/bashecho $$ > /var/run/fan.pidecho 0 > /sys/class/pwm/pwmchip1/exportecho 0 > /sys/class/pwm/pwmchip1/pwm0/enable
echo 50000 > /sys/class/pwm/pwmchip1/pwm0/period
echo 1 > /sys/class/pwm/pwmchip1/pwm0/enablewhile true
dotemp=$(cat /sys/class/thermal/thermal_zone0/temp)if [ $temp -gt 55000 ]; then# 数字越大 转速越慢echo 1000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;elif [ $temp -gt 43000 ]; thenecho 20000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;elif [ $temp -gt 38000 ]; thenecho 30000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;elif [ $temp -gt 32000 ]; thenecho 45000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;elseecho 49990 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;fisleep 1s;
done
文件 /lib/systemd/system/fan.service
[Unit]
Description=The PWM fan Script
After=syslog.target[Service]
Type=forking
PIDFile=/var/run/fan.pid
ExecStart=/bin/bash -c "/sbin/fan "&
ExecReload=/bin/kill -s HUP
ExecStop=/bin/kill -s QUIT
PrivateTmp=true[Install]
WantedBy=multi-user.target
最后执行如下命令:
systemctl enable fan.service
systemctl start fan.service
将该脚本配置为系统服务并自动启动。
NanoPC-T4 上实现pwm风扇自动调速相关推荐
- jetson nano 风扇自动调速
jetson nano 风扇自动调速 概述 一.临时调试 二.驱动脚本 概述 jetson nano一定要配一个可调风扇,jetson nano散热不好极容易死机!! 一.临时调试 PWM范围:0-2 ...
- 基于Arduino的自动调速风扇
好久没有更新了,家里实在太乱,最近趁着618活动,买了一堆收纳抽屉和置物架,把家里彻底收拾了一下,然后客厅就成了这个奇葩样子,注孤生的节奏了. 话不多说,夏天到了,天气逐渐热起来,风扇成了必不可少的消 ...
- 【毕业设计】基于超声波与红外的自动调速风扇系统(代码开源) -物联网 嵌入式 stm32
文章目录 1 简介 1 设计概要 2 系统设计 2.1 系统供电问题 2.2 自动/手动模式的切换 2.3 PWM信号的产生 2.4 单片机内部资源的分配 三.硬件搭建 3.1 单片机最小系统 3.2 ...
- 毕业设计 超声波红外自动调速风扇系统
文章目录 1 简介 1 设计概要 2 系统设计 2.1 系统供电问题 2.2 自动/手动模式的切换 2.3 PWM信号的产生 2.4 单片机内部资源的分配 三.硬件搭建 3.1 单片机最小系统 3.2 ...
- Jetson Nano-PWM自动调速
由于Nano散热差时,会造成宕机等问题,所以必须配上风扇,PWM最佳 手动设置 PWM范围:0 - 255 最小0即不转,255为最大转速 sudo sh -c 'echo 255 > /sys ...
- 基于51的多功能小风扇,可以实现定时,摇头,超声波自动调速等功能
最近也是想加入一个实验室,考核题目就是写一个小风扇!下面是题目要求 由于我也是大一新生,也就自学了一点51和c语言知识,代码写的可能有点拙,还请多多指教! #include <REGX52.H& ...
- 基于模糊控制(fuzzy control)的PWM直流电机闭环调速系统
文章目录 摘要 1. 引言 2. 系统总体框图 3. 模糊(Fuzzy)控制算法 4. 软件设计及Proteus仿真 摘要 本文介绍直流电机PWM恒转速闭环调节系统的一种设计方案.系统以单片机AT89 ...
- 智能小车之PWM脉冲控制小车调速
目录 一.PWM脉冲控制小车调速 二.代码实现 一.PWM脉冲控制小车调速 原理:全速前进是LeftCon1A = 0:LeftCon1B = 1:完全停止是LeftCon1A = 0:LeftCon ...
- matlab脉宽调制pwm,PWM脉宽调制直流调速系统设计及MATLAB仿真验证
PWM 脉宽调制直流调速系统设计及MATLAB 仿真验证 第一章 系统概述 1.1 设计目的 1. 掌握转速,电流双闭环控制的双极式PWM 直流调速原理. 2. 掌握并熟练运用MATLAB 对系统进行 ...
最新文章
- windows7下解决caffe check failed registry.count(type) == 1(0 vs. 1) unknown layer type问题
- Koa2和Redux中间件源码研究
- Redis~Linux环境下的部署
- 企业做大的捷径:“复印”成功的商业模式
- 四十一、Linux基础命令,用户管理和文件系统总结
- 重叠I/O之事件对象通知
- C. 奇奇怪怪的魔法阵(未搞懂)
- 虚拟机和linux的安装
- js判断浏览器是否支持flash的方法
- C# 彻底搞懂async/await
- 2021年六月中旬推荐文章
- Vue.js 组件编码规范
- vue+element Form键盘回车事件页面刷新解决
- 入学年份 mysql_MySQl的学习1___概述
- PX4日志读取并转化为.scv文件、MATLAB显示
- data.unity3d 文件过大解决方法
- Region Proposal Network
- Coap在Andorid中的简单应用
- Vue基础语法必知必会
- 中国电信 合约协议 转载