5v继电器:控制有三线的(电源、地、信号)
TendaW311MI小型无线路由
接线若干
方法/步骤
树莓派接线图:sd卡、手机电源线、网线、hdmi转dvi接线连接显示器、键盘
如何用树莓派Raspberry Pi做一个简单的控制系统
安装树莓派的linux系统:系统到官网下,用工具写到sd卡里面(比较简单网上很多教程)
树莓派通过有线上网:开始时没显示器,买了一条HDMI的转DVI接口的线,调试了一下,可以上网后,就不用接显示器了,在家用有线连接路由器,用secureCRT连接局域网ip,就可以登入树莓派,ping一下外网,基本就通了
树莓派无线网卡上网:把无线网卡插入usb接口,TendaW311MI免驱动即可识别,修改/etc/network/interfaces信息,把路由器的wpa-ssid和wpa-psk加上,重启一下系统,基本上无线就能上网了
继电器:所谓继电器,就是一种控制开关,用小电压、小电流设备控制大电压、大电流的东西。控制端的电源、GND地、信号分别接树莓派的GPIO的2、6、7接口(控制端最好三线,本来买了一个两线输入的听说可以用,最后还是不敢接。。。),另一端接外接设备,接常开和公共端
编程:下载安装了python的GPIO库,然后给出如下控制代码:
文件runpy
#!/usr/bin/python
#coding: utf8
import sys
import RPiGPIO as GPIO
PORT=7
GPIOsetwarnings(False)
GPIOsetmode(GPIOBOARD)
GPIOsetup(PORT,GPIOOUT)
if sysargv[1]=="open":
GPIOsetup(PORT,GPIOLOW)
elif sysargv[1]=="close":
GPIOsetup(PORT,GPIOHIGH)
好了,上面搞定之后,随便找个东西接一下,然后secureCRT登入树莓派,
sudo /runpy open //打开控制设备
sudo /runpy close //关闭控制设备
如何用树莓派Raspberry Pi做一个简单的控制系统
8
使用webpy在树莓派上面搭一个简单的web服务器,把上面的runpy脚本改改,就可以通过手机访问控制开关,实现家庭内的远程控制了。实际上每个派都要装系统,但是装的不是完整系统而是核心,和必要软件,某个pi要被设置为中心机,上面带完整系统和 相关软件安装文件。
理想情况是,一个pi接入网络,中心机配置后就在该pi上部署相关软件,然后接入集群开始工作。但是要想完成这个集群需要做很多工作,比如部署,接入,运行,监控,分离,分类(存储类型pi,业务派)。刚好我写了一篇关于个人服务器的经验,还在提交中,预览版链接:>博主在寝室是使用树莓派来开热点的,但是晚上断电后仍然可以用充电宝进行供电上网,这种丧(xi)心(da)病(pu)狂(ben)的优势让博主失去了心爱的睡眠时间。因此机智的博主想了一个办法,写了一个早睡脚本,只要检测到时间大于11点20就强制关机,并且把脚本设置为开机自启。但是第二天博主就发现树莓派因为没有CMOS时钟,因此之后多长时间,时间都是大于11点20!也就是说我再也打不开树莓派了!
为了应对这种蛋疼的问题,博主只好花了十几块钱从某宝买了个DS3231模块
DS3231模块是一款适用于多种单片机的RTC模块,通过DS3231,你可以为没有内置时钟模块的单片机提供精准授时。
在树莓派model 3B上,我们可以利用该模块为树莓派授时,使树莓派无需连接网络就能够保证时钟的同步。
在树莓派命令行下,输入
进入树莓派配置界面,
选择5 Interfacing Options进入
选择I2C
确认即可。完成后保存退出树莓派配置页面。
对源进行更新:
编辑/etc/modules
此处采用vim编辑器,按下 i 键后进入编辑模式,加入i2c-bcm2835、i2c-dev、rtc-ds1307, 编辑后类似于:
按下esc退出编辑模式,输入英文冒号+wq退出。
现在能用到的接口是SCL、SDA、VCC、和GND,
按照上图,注意我们使用“Physical”这栏接口编号。
接线如下:
VCC接1,即33v,电源正极
SDA接3,即SDA1
SCL接5,即SCL1
GND接9,即0v,也就是电源负极
4命令行连接
输入以下命令检测树莓派i2c总线的情况:
不出意外的话,会出现以下所示,不过其中的UU是68。(本人已配置成功,因此显示UU)
编辑启动文件:
按i键编辑,在exit 0前面添加:
最后文件类似于:
按下esc键,输入英文冒号,再输入wq,回车即可保存。
配置完成后重启设备:
重启后输入之前的命令:
这次会出现类似如下所示:
这下68已经变成UU,说明安装成功。
5最后的收尾
刚才我们在rclocal文件中加了一句
这句话的意思是将设备时间同步为系统时间。因此如果rtc模块没有使用过的话,输入
查看时间,你会发现时间严重与现在时间不符合。
如果你现在连接到互联网的话,稍等一会,树莓派会自动与授时服务器进行同步时间。但是如果没有连接到网络的话可以输入以下命令设置时间:
其中的时间按需修改。
时间设置完毕或者互联网授时完毕后,输入
来将系统时间写入rtc模块。
你也可以输入
来查看是否写入成功。
总而言之,之后 *** 作的命令主要也就三个了:首先执行更新,我之前就是没执行更新,导致后续 *** 作错误,下载安装时会提示404 找不到文件
sudo apt-get update
更新一番之后继续执行,安装Cups
sudo apt-get install cups
配置用户
sudo usermod -a -G lpadmin pi
下面替换CUPS的配置文件,首先停止服务
sudo service cups stop
备份原有文件
sudo mv /etc/cups/cupsdconf /etc/cups/cupsdconfbak
从服务器上下载新的配置文件
cd /etc/cups/
sudo wget >树莓派可以安装这个LAMP系列,但Apache 和 MySql对于树莓派这个小小的机器,太重了,主要是消耗内存多\速度慢\占用磁盘大(约200M吧),所可以选择安装一个轻量级的Web服务器:
nginx + php + sqlite
nginx:是个轻量级的Web服务器,是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,上nginx的并发能力确实在同类型的网页服务器中表现较好。
SQLite:是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
很简单直接安装即可,如果卡住追问我就好了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)