想用树莓派3搞个自动温度控制系统,求助大神这是什么歌5

这篇博文整理了在使用树莓派的过程中常见的问题和解答,以及我自己在使用时遇到的问题与总结,供树莓派爱好者快速查阅。本文根据需要不断更新,也欢迎读者留言提问与补充。
Table of Contents
一、基本操作与管理
Q: 树莓派的默认登录密码是什么?
A: 用户名: pi,密码: raspberry。
Q: 树莓派如何解锁root?
A: 解锁方法如下:
#设置root密码
$sudo passwd root
#解锁root用户
$sudo passwd --unlock root
#切换当前用户到root
Q: 如何启动树莓派的图形界面?
A: 命令行中输入startx。如果要设置开机启动默认为图形模式,可使用 raspi-config 命令进行配置。
Q: 如何格式化输出当前系统时间?
A: 使用 date -d today +“格式化参数” 。如下例所示,引号内为格式化字符串,可自行修改为需要的格式:
date -d today +&%Y-%m-%d %H:%M:%S&
Q: 如何读取树莓派CPU和GPU的温度?
A: 查看CPU温度(读数除以1000):
$cat /sys/class/thermal/thermal_zone0/temp
查看GPU温度:
$/opt/vc/bin/vcgencmd measure_temp
Q: 如何修改树莓派HDMI显示的分辨率?
A: 修改SD卡中的 config.txt
配置文件,配置方法见。
Q: 树莓派如何设置静态IP地址?
A: 修改 /etc/network/interfaces
配置文件,配置方法为:
iface eth0 inet static
address 192.168.1.100
# Static IP Address
netmask 255.255.255.0
gateway 192.168.1.1
Q: 如何查看树莓派当前进程与CPU使用情况?
A: 查看所有进程:ps -a ,查看CPU当前使用情况:top。
Q: 如何查看树莓派当前内存及硬盘使用情况?
A: 使用 free 命令查看内存使用情况,也可以使用 free -m 以MB为单位显示。对应的可以使用 df 或者 df -m 查看硬盘使用情况。
Q: 如何查看树莓派已载入的模块和已加载的USB设备?
A: 分别使用 lsmod 和 lsusb 命令。如果要查看所有加载的设备,直接输入 ls dev 查看设备虚拟文件夹。
Q: 树莓派支持哪些USB摄像头?
A: 见 。支持的较好的还是罗技和微软的低分辨率型号。有些摄像头功耗较大,需要外部供电。
Q: 树莓派支持哪些USB无线网卡?
A: 见 。推荐EDUP的迷你WiFi网卡以及树莓派官方销售的配套网卡。
Q: 树莓派如何和电脑之间传输数据?
A: 树莓派默认打开了SFTP服务,只需要使用专用的FTP软件(如 FlashFXP),并在登陆时选择SFTP方式登陆即可,连接URL填写树莓派的IP地址,而登陆的账号密码和开机密码相同。
Q: 树莓派兼容的SD卡?
A: 该页面给出了所有树莓派可以使用的SD卡型号和大小:。
二、多媒体
Q: 树莓派如何播放MP3音乐?
A: 因为树莓派没有音频输出,首先需要配一个USB声卡或者专用的Walfson扩展板。之后安装 mplayer 音乐播放器 sudo apt-get install mplayer。使用以下命令将当前目录下的所有MP3文件创建为一个Playlist:
find ./ -type f -iname &*.mp3& & playlist.m3u
Q: 树莓派如何播放视频?
A: 安装 omxplayer,支持 1080P 的 AVI 和 MP4 硬解码。
三、应用开发
Q: 树莓派支持哪些编程语言?
A: 树莓派自身包含了gcc / g++ 4.6 编译器,所以支持C和C++的开发;不过我推荐使用的语言还是Python,树莓派内置两个版本的Python,分别为 Python 2.7 和 Python 3.2。Python对于网络和串口的开发也有对应支持,而且也有支持Python的GPIO库 (RPi.GPIO)。
Q: 树莓派如何连接Arduino?
A: 三种方法,第一种为直接使用USB线缆进行连接,对于使用独立USB串口芯片的型号,在Linux中的显示名称为 /dev/ttyUSB0, 而对于使用另一片Arduino进行USB通信的型号显示为 /dev/ttyACM0;第二种为使用树莓派的IO串口进行通信,此方法的相关配置见;第三种方法还可以使用无线模块进行远程通信。
Q: 树莓派如何使用TTS功能?
A: 首先需要树莓派具有音频输出设备(如USB声卡)。下载festival程序库,sudo apt-get install festival。使用方法为:
$echo &Do not touch me. I am dangerous!& | festival --tts
$festival --tts Simple_Test.txt
Q: 如何操作树莓派的GPIO?
A: 可以使用RPi.GPIO, WiringPI或bcm2835 c库三种方法。我在另一篇博文""里详细介绍了这三种方法。
Q: 树莓派如何支持模拟量采集?
A: 目前还没有标准方案,不过可以通过与Arduino的通信实现模拟量采集及PWM输出功能。
Q: 树莓派如何安装OpenCV?
A: 执行以下命令安装OpenCV及Python支持库。
$sudo apt-get install libopencv-dev python-opencv
Q: 树莓派如何编译Kernel?
A: 见官方的“”及Argu的“”。
Related Posts
new follow-up comments
new replies to my comments
WP Cumulus Flash tag cloud by
9 or better.
Recent Posts
赞助与支持
云飞机器人实验室是个人管理与运营的网站。
如果你觉得本网站对你有帮助,并希望支持这样的独立博客,你可以通过上面的支付宝二维码对本网站进行赞助,你的赞助将会用于网站的域名与空间维护费用。对于大额赞助的读者,我可以提供一次约稿服务。
你也可以在留言表示对我的支持。如果你是机器人或开源硬件方面的企业,也可以联系我探索合作方式。树莓派论坛_树莓派官方论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
Powered by最近一直加班,没空玩树莓派,昨天回家,突然好像感觉没什么事情做了,于是把树莓派的模块拿出来了,就找了个DHT11温湿度感应模块打算玩玩。
还是老样子,从网上查DHT11接法,通过GPIO图接好模块。
我的DHT11有三个针脚,一个vcc、一个gnd、一个out,看网上有四个针脚的,模块好像和我的有些差别,但是多出的那个针脚不接,基本也算是一样。
vcc我接了5v的pin2
gnd我接了负极的pin6
out我接了pin16(pin12被人体红外感应模块占了,通过面包板同时接两个我怕会有冲突)
接好了下面开始搞代码
网上好像有好几种获取DTH11模块的代码,有python的,有C的,java的看好像都没有成功,因为前面一直用python的,所以我查资料找可用的python代码(虽然我对python一点都不懂),找到了代码看的似懂非懂,最后决定试一下并添加了几句代码看是否能用。
新建了个temperature.py文件,写入代码,我是在windows上建好文件写好代码后用winscp上传到树莓派上的,但是要注意的是好像没有执行的权限等问题。于是又执行了sudo chmod 755 temperature.py
temperature.py的代码如下:
# -*- coding: utf-8 -*-
“””
Created on Sun Jan 26 14:24:43 2014
@author: pi
“””
import RPi.GPIO as gpio
import time
gpio.setwarnings(False)
gpio.setmode(gpio.BOARD)
time.sleep(1)
def delay(i): #20*i usdelay
for j in range(i):
#start work
gpio.setup(16,gpio.OUT)
#gpio.output(16,gpio.HIGH)
#delay(10)
gpio.output(16,gpio.LOW)
time.sleep(0.02)
gpio.output(16,gpio.HIGH)
#wait to response
gpio.setup(16,gpio.IN)
while gpio.input(16)==1:
while gpio.input(16)==0:
while gpio.input(16)==1:
while j&40:
while gpio.input(16)==0:
while gpio.input(16)==1:
if k&100:break
data.append(0)
data.append(1)
print “Sensor is working”
#get temperature
humidity_bit=data[0:8]
humidity_point_bit=data[8:16]
temperature_bit=data[16:24]
temperature_point_bit=data[24:32]
check_bit=data[32:40]
humidity=0
humidity_point=0
temperature=0
temperature_point=0
for i in range(8):
humidity+=humidity_bit[i]*2**(7-i)
humidity_point+=humidity_point_bit[i]*2**(7-i)
temperature+=temperature_bit[i]*2**(7-i)
temperature_point+=temperature_point_bit[i]*2**(7-i)
check+=check_bit[i]*2**(7-i)
tmp=humidity+humidity_point+temperature+temperature_point
if check==tmp:
print “temperature is “, temperature,”wet is “,humidity,”%”
output=open(‘/home/pi/wddatafile.txt’,’w’)
output.write(‘{“value”:%f}’%temperature)
output=open(‘/home/pi/sddatafile.txt’,’w’)
output.write(‘{“value”:%f}’%humidity)
output.close
print “something is worong the humidity,humidity_point,temperature,temperature_point,check is”,humidity,humidity_point,temperature,temperature_point,check
博客贴出代码,缩进会被打乱,贴出代码图片:
写好后执行以下sudo python temperature.py看是否输出温湿度(如果出错多执行几次,貌似失败率有点高)执行成功后会把温度写到一个新建的wddatafile.txt文本中。湿度写到一个新建的sddatafile.txt文本中。
既然成功获取了温湿度,那就把两个温湿度文本的数据上传yeelink吧
前面几篇的帖子在讲yeelink视频监控的时候已经说过了怎么添加设备,添加感应模块了,这里就不说了,不会的看看前几篇。
添加温湿度感应设备,类型是数值型的,并创建两个感应模块,
然后创建yeelink的上传脚本文件,新建一个temperature.sh脚本文件。写入下面代码
其中apikey是你的apikey,url一个是你温度的上传url,一个是湿度的上传url,然后保存退出。
然后添加定时执行任务
sudo crontab -e
添加temperature.sh的定时执行任务
我定时任务里已经有了一个yeelink.sh的定时任务,新加一条temperature.sh的,十分钟执行一次。
然后就可以在yeelink中查看自己树莓派地点的温湿度啦。
此条目发表在分类目录,贴了, , , 标签。将加入收藏夹。}

我要回帖

更多关于 求助大神这是什么歌6 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信