打造无线便捷的计算环境:从零开始的技术实践
1. 初步实践与准备
在开始一些技术项目时,首先可以对提交元素进行一些调整。比如更改每个提交元素的
value
选项,让它们明确显示其用途,如“插入”或“删除”。还可以围绕插入表单元素创建一个表格,为每个标签和插入字段分配独立的行和单元格,这样能让显示更加整齐。同时,CSS 对界面外观有很大影响,Twitter 的“bootstrap”是一个很好的入门选择。
前期我们已经完成了不少工作,安装并配置了 Apache、MySQL 和 PHP,学会了创建简单的 SQL 语句来创建和删除数据库与表格,还掌握了向这些表格插入和删除数据的方法,以及了解了 Apache 网络服务器如何显示网页内容。最后通过结合 PHP 和 HTML 生成了一个可访问数据库待办事项列表表格的应用程序。这是一项重大的任务,我们不仅安装了三个不同的应用程序并创建了相互关联的应用栈,还运用了三种语言在应用栈之上开发了应用。
2. 树莓派的优势与局限
树莓派体积小巧,几乎可以放置在任何狭小的角落,搭配合适的外设就能完成各种任务,而且功耗低,无需大量电力供应就能正常工作,性价比极高。然而,它也存在一些限制。树莓派需要外部电源供电,仅靠 5 伏电源,它本身的作用有限,若要作为家用电脑使用,至少需要以下设备:
- HDMI 或复合视频电缆
- 以太网电缆,用于互联网和网络访问
- 键盘,用于输入数据
- SD 卡,用于提供存储
这些需求使得树莓派实际上受到诸多线缆的束缚,为了获得基本功能,需要连接大量线缆。不过,我们可以采取一些方法让树莓派更加移动和灵活。
3. 为无线计算做准备
若要实现树莓派的无线计算(WiPi),除了在 SD 卡上安装 Raspbian 系统,还需要确保系统已升级,因为 9 月发布的版本在 WiFi 访问管理方面有显著改进。需运行以下命令:
$ sudo apt-get update
$ sudo apt-get upgrade
第一个命令会让
apt-get
更新软件版本信息,第二个命令会比较并安装系统中所有软件的升级版本。定期运行这些命令有助于保持系统使用最新版本的软件。
4. 移除部分约束
在随意切断线缆之前,需要明确使用树莓派的目标,这会对后续操作产生一定限制。以下是一些让树莓派摆脱线缆束缚的方法:
-
移除人类输入设备
:先从移除显示器、键盘和音频电缆开始。虽然同时移除三个外设听起来有些困难,但实际上是将人为因素从操作中移除。通过 SSH 可以远程连接到树莓派,获得完整的命令行访问权限来执行所需任务。还可以使用
sudo raspi-config
更改树莓派的内存分配,将
memory_split
值设置为 240/16,把大部分内存分配给系统使用,减少图形显示的内存占用。不过,在移除这些设备之前,应在有键盘、显示器、鼠标等设备的环境中测试和配置树莓派的各项功能,确保系统能在无人干预的情况下正常运行后,再移除所有人类接口设备。这样不仅可以通过网络远程管理树莓派,还能通过手机或工作场所的系统跨互联网进行管理。
-
添加远程 GUI
:对于不习惯仅在控制台远程环境中工作的人,可以使用虚拟网络计算(VNC)工具从另一台机器与树莓派的桌面进行交互。具体操作步骤如下:
1. 在树莓派上安装 VNC 服务器,使用以下命令:
$ sudo apt-get install tightvncserver
安装过程中会显示相关信息,如额外安装的包、建议的包等。
2. 启动 VNC 服务器:
$ tightvncserver
启动时会提示输入一对密码,一个是用于操作屏幕的 VNC 密码,另一个是可选的“仅查看”密码。
3. 使用 tightvnc 客户端进行连接。在客户端输入树莓派的 IP 地址和屏幕编号(如
:1
),然后点击连接即可进入树莓派环境。
4. 若要重启 VNC 服务器,可使用以下命令:
$ vncserver :1 -geometry 1920x1080 -depth 24
该命令指定在屏幕
:1
上以 1920x1080 的分辨率和 24 位色深运行 VNC 服务器。为了让 VNC 服务器在开机时自动启动,可以将
vncserver
命令添加到
/etc/rc.local
文件中,在
exit 0
之前添加以下行:
vncserver :1 -geometry 1920x1080 -depth 24
也可以使用以下脚本作为
/etc/init.d/tightvnc
文件来实现更规范的启动过程:
### BEGIN INIT INFO
# Provides: tightvnc
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start Tight VNC Server at boot time
# Description: Start Tight VNC Server at boot time.
### END INIT INFO
#! /bin/sh
# /etc/init.d/tightvnc
USER=pi
HOME=/home/pi
export USER HOME
case "$1" in
start)
echo "Starting Tight VNC Server"
/usr/bin/vncserver :1 -geometry 1920x1080 -depth 24
;;
stop)
echo "Stopping Tight VNC Server"
/usr/bin/vncserver -kill :1
;;
*)
echo "Usage: /etc/init.d/tightvnc {start|stop}"
exit 1
;;
esac
exit 0
创建该文件后,需要执行以下命令使其可执行:
$ sudo chmod +x /etc/init.d/tightvnc
然后可以使用
/etc/init.d/tightvnc
来启动和停止脚本。首次运行该脚本时,需要再次输入 VNC 密码,因为脚本是以 root 用户身份运行的。最后,使用以下命令让脚本自动开机启动:
$ sudo update-rc.d tightvnc defaults
4. 实现真正的无线计算
在使用 VNC 和 SSH 移除人类输入设备后,树莓派对网络连接的依赖增加,而以太网连接仍然是有线的。为了解决这个问题,可以使用 WiFi。但树莓派本身没有内置 WiFi,需要购买无线适配器。在选择无线适配器时,需要考虑以下因素:
-
功耗
:所有 USB 设备都需要电源,树莓派仅靠 5 伏电源供电,因此需要选择功耗较低的无线设备,否则可能会导致树莓派崩溃。或者可以选择连接外部电源的有源 USB 设备,但这可能不符合我们的需求。
-
兼容性
:一些特殊的无线适配器可能在 Linux 系统中没有支持,需要确保所选适配器与树莓派兼容。
以 D - Link DWA - 131 无线适配器为例,配置树莓派与本地无线网络通信的步骤如下:
1. 插入无线适配器,注意树莓派可能会重启,所以在插入前保存好工作。
2. 打开 shell 并运行
lsusb
命令,查看系统是否识别无线适配器:
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 07d1:3303 D-Link System DWA-131 802.11n Wireless N Nano Adapter(rev.A1) [Realtek RTL8192SU]
如果系统未识别适配器,需要安装相应的驱动程序。可以通过谷歌搜索找到 WiFi 卡的芯片组,进而确定需要安装的驱动包。
3. 运行
ifconfig
命令,检查无线设备是否正确注册为网络设备:
$ ifconfig
eth0 Link encap:Ethernet HWaddr b8:27:eb:8a:46:ba
inet addr:10.0.0.20 Bcast:10.0.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6558 errors:0 dropped:0 overruns:0 frame:0
TX packets:268 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:374403 (365.6 KiB) TX bytes:28129 (27.4 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
wlan0 Link encap:Ethernet HWaddr 90:94:e4:51:81:7a
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
该命令会显示三个设备的信息:
|设备名称|说明|
| ---- | ---- |
|eth0|物理以太网设备|
|lo|系统的内部自引用设备,用于在树莓派内处理流量|
|wlan0|无线设备,需要配置 IP 地址、掩码、SSID 和安全设置才能与无线网络通信|
如果适配器在
lsusb
中显示但在
ifconfig
中未显示,可以尝试重启并重复上述步骤,安装驱动包可能是解决问题的方法。
4. 为了简化无线设备的安装和配置,可以通过命令行安装
wpa - gui
:
$ sudo apt-get install wpagui
如果已经安装了最新版本的 Raspbian 且包含
wpagui
,会显示该包已安装的信息;如果未安装,会显示需要安装的额外包和新包信息。
5. 安装完成后,重启树莓派,确保系统稳定。
6. 可以先通过 GUI 配置无线适配器,之后也可以学习通过命令行进行配置。如果发现树莓派变慢或无法连接到 WiFi,可能是键盘功耗过大,尝试移除键盘并使用 VNC 或 SSH 配置无线连接。
通过以上步骤,我们可以逐步让树莓派摆脱线缆的束缚,实现更加便捷的无线计算。
打造无线便捷的计算环境:从零开始的技术实践
5. 无线适配器配置的深入解析
在配置无线适配器时,除了前面提到的基本步骤,还需要更深入地理解一些关键概念和操作。
5.1 无线适配器的驱动安装
当
lsusb
能识别无线适配器,但
ifconfig
中未显示时,说明系统虽然能检测到设备,但无法正确与之交互,此时需要安装驱动包。以下是具体的操作流程:
1.
确定芯片组
:通过 Google 搜索无线适配器的型号,找到其芯片组信息。例如,D - Link DWA - 131 的芯片组是 Realtek RTL8192SU。
2.
查找驱动包
:在芯片组信息的基础上,在搜索引擎中输入芯片组型号和“Linux 驱动”,找到适合树莓派系统的驱动包。
3.
安装驱动包
:将下载的驱动包通过
dpkg -i
命令进行安装,或者使用
apt - get
从软件源中安装。例如:
$ sudo apt-get install <驱动包名称>
5.2 无线配置文件的手动编辑
除了使用
wpa - gui
进行图形化配置,还可以手动编辑无线配置文件
/etc/wpa_supplicant/wpa_supplicant.conf
。以下是一个示例配置:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=CN
network={
ssid="Your_WiFi_SSID"
psk="Your_WiFi_Password"
key_mgmt=WPA-PSK
}
在这个配置中:
-
ssid
是无线网络的名称。
-
psk
是无线网络的密码。
-
key_mgmt
是密钥管理方式,常见的有 WPA - PSK。
配置完成后,使用以下命令重启网络服务:
$ sudo systemctl restart networking
6. 树莓派无线计算的应用场景
树莓派实现无线计算后,可以应用于多个场景,以下是一些常见的应用:
| 应用场景 | 说明 |
|---|---|
| 智能家居控制中心 | 树莓派可以连接各种智能设备,如智能灯泡、智能插座等,通过手机或电脑远程控制这些设备,实现智能家居的自动化控制。 |
| 无线监控系统 | 搭配摄像头,树莓派可以作为无线监控设备,将监控画面实时传输到手机或电脑上,实现远程监控。 |
| 移动数据采集站 | 在野外或移动环境中,树莓派可以通过无线连接收集传感器数据,如温度、湿度、光照等,并将数据传输到服务器进行分析。 |
7. 总结与回顾
整个实现树莓派无线计算的过程可以用以下 mermaid 流程图表示:
graph LR
A[准备工作] --> B[移除人类输入设备]
B --> C[添加远程 GUI]
C --> D[选择无线适配器]
D --> E[配置无线适配器]
E --> F[实现无线计算应用]
通过以上步骤,我们从最初的环境搭建,到移除有线设备的束缚,再到配置无线适配器,最终实现了树莓派的无线计算。在这个过程中,我们学习了多个关键技术,包括 SSH、VNC 的使用,无线适配器的选择和配置,以及无线配置文件的编辑等。
在实际应用中,我们可以根据自己的需求和场景,灵活运用这些技术,让树莓派发挥更大的作用。同时,不断学习和探索新的技术,进一步优化树莓派的性能和功能,为我们的生活和工作带来更多的便利。
希望通过这篇文章,能帮助大家更好地理解和掌握树莓派无线计算的技术,开启无线便捷计算的新篇章。
超级会员免费看
38

被折叠的 条评论
为什么被折叠?



