用途
该技能使 AI 能够与树莓派(Raspberry Pi)设备进行交互,面向物联网(IoT)任务,包括远程管理、硬件原型开发和边缘计算操作。
适用场景
适用于涉及硬件搭建的场景,例如在智能家居中部署传感器、运行用于数据处理的轻量级服务器,或在紧凑的 Linux 板卡上测试嵌入式应用。
主要能力
- 建立 SSH 连接,在树莓派上执行命令。
- 配置硬件设置(如 GPIO 引脚),实现物理交互。
- 通过 apt 管理软件安装与更新。
- 监控系统资源与日志,服务边缘计算任务。
- 集成 Python 库实现自动化,例如使用 RPi.GPIO 控制引脚。
使用方式
执行任务时,先通过 SSH 认证,使用环境变量如 $RASPI_HOST 和 $RASPI_SSH_KEY。随后可直接运行命令或调用脚本。对于重复性任务,可将命令封装为 Python 函数。操作前始终检查设备连通性。进行 GPIO 操作时,需导入相关库并显式设置引脚模式。
常用命令 / API
- 通过 SSH 连接:
ssh pi@$RASPI_HOST -i $RASPI_SSH_KEY - 访问配置工具:
sudo raspi-config(可使用 "Boot Options" 等选项,并以--expand-rootfs标志扩展存储) - 在 Python 中控制 GPIO 引脚:
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
GPIO.output(17, GPIO.HIGH)
- 更新与安装软件包:
sudo apt update && sudo apt install -y package-name(例如用apache2搭建 Web 服务器) - 检查系统状态:
vcgencmd measure_temp获取 CPU 温度,或用top查看资源占用。 /boot/config.txt配置格式:添加类似dtparam=i2c_arm=on的行以启用 I2C,然后重启。
集成说明
与其他系统集成时,在环境中设置认证变量,例如 export RASPI_HOST=raspberrypi.local 和 export RASPI_SSH_KEY=/path/to/private.key。对于类 API 交互,可在脚本中使用 SSH 封装。需确保网络兼容;若位于防火墙后,需转发如 22 端口用于 SSH。对于物联网生态,可安装 mosquitto 并与 MQTT broker 配合,通过 /etc/mosquitto/mosquitto.conf 配置,例如添加 listener 1883。
错误处理
若 SSH 失败,用 ping $RASPI_HOST 验证连通性并检查密钥权限(如 chmod 600 $RASPI_SSH_KEY)。若出现 GPIO 错误,确认已通过 pip install RPi.GPIO 安装 RPi.GPIO,并在代码中处理如 GPIO.error 的异常:
try:
GPIO.setup(17, GPIO.OUT)
except RuntimeError as e:
print("Error: " + str(e) + " - Check user permissions")
若 apt 出现问题,可使用 apt --fix-broken install 解决依赖。始终记录带时间戳的错误,例如通过 echo "$(date): Error message" >> error.log。
使用示例
在 GPIO 引脚 17 上设置并闪烁 LED: 先用 ssh pi@$RASPI_HOST -i $RASPI_SSH_KEY 登录,再用 nano blink.py 创建脚本并添加:
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
for _ in range(5):
GPIO.output(17, True)
time.sleep(1)
GPIO.output(17, False)
time.sleep(1)
用 python blink.py 运行以切换 LED。
部署用于物联网监控的基础 Web 服务器: SSH 登录设备,用 sudo apt update 更新软件包,用 sudo apt install -y apache2 安装 Apache,然后编辑 /var/www/html/index.html 默认页面,添加如 <h1>IoT Status: OK</h1> 的内容。通过浏览器访问 http://$RASPI_HOST,并用 tail -f /var/log/apache2/access.log 监控日志。
图谱关系
- 关联集群:iot
- 连接的技能:sensors(用于 GPIO 集成)、actuators(用于硬件控制)、edge-computing(用于资源监控)