安装python的一些库时发现了如下问题:
```bash
sudo pip3 install spidev
error: externally-managed-environment
× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.
If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.
For more information visit http://rptl.io/venv
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
```
可以安照提示做也可以:
```bash
在 pip3 install package 后面加上参数 “--break-system-packages”
```
## 树莓派接入阿里云
首先是申请一个阿里云的账号,买一个服务器,我看有免费3个月的就用这个了。
因为树莓派是在本地wifi下,没有公网ip,所以在外边无法访问,需要做内网穿透(Port Forwarding),利用阿里云进行访问,具体操作如下:
1. **在树莓派上设置SSH**:
- 确保树莓派已安装SSH服务并已启动。
- 如果未启动SSH服务,可以通过运行 `sudo systemctl enable ssh` 和 `sudo systemctl start ssh` 命令来启动和使其自动启动。
2. **在云服务器上设置SSH远程端口转发**:
- 在树莓派上执行SSH命令,创建到云服务器的反向隧道。这个命令会将云服务器上的一个端口转发到树莓派的SSH端口。例如:
> ssh -R [云服务器端口]:localhost:22 [云服务器用户名]@[云服务器IP地址]
3. **从外部网络访问树莓派**:
现在,您可以通过云服务器来访问树莓派。在任何地方使用以下命令:
> ssh [树莓派用户名]@localhost -p [云服务器端口]
这种方法通过SSH隧道保证了连接的安全性。
## 实现环境温度和土壤湿度检测
### 器材
1 x Moisture sensor
1 x LM35 Temperatures sensor
1 x ADS115 ADC
### 连线
因为ADS1154路16位ADC,I2C接口,所以温度和土壤湿度的检测都需要经过它才使被树莓派获得结果。