树莓派远程控制

树莓派远程控制

许多玩树莓派的小伙伴可能没有合适的显示器供树莓派使用,那么怎么不用显示器实现树莓派的远程控制就显得格外重要,经过我一番探索,终于找到了好用的方法

1.打开ssh服务

将sd卡插入读卡器中,接入电脑,在boot目录下创建一个文本文档,改名为ssh,不加任何后缀,这样将sd卡插入树莓派中就可以打开ssh服务。
在这里插入图片描述

2.使用PuTTY登录到树莓派

将sd卡插入树莓派中,用网线将树莓派与路由器连接,给树莓派接通电源,开机,打开路由器管理网页,不同的路由器管理页面不同,可以在路由器背面的说明中找到,打开管理页面,找到连接的设备,找到树莓派的IP地址,打开PuTTY,在Host Name出输入树莓派IP地址,点击OPEN。
在这里插入图片描述

在终端输入账号密码,便可以成功登陆树莓派,实现远程操作。

账号:pi
密码:raspberry(密码不显示,输入完了点击回车就可以)

3.VNC实现图形化界面连接

VNC官网下载VNC Viewer,安装后打开。
利用前面PuTTY的连接,在树莓派终端中输入

vncserver

在这里插入图片描述
获取无线连接的地址。
在VNC中输入地址,输入用户名和密码(同上),成功打开图形化界面!

tips:

在VNC中的分辨率较小,如果想要更大的分辨率可以PuTTY连接的树莓派终端中输入

vncserver -geometry 1920x1080

(分辨率可以改成任意你想要的)之后使用VNC连接新的地址就可以!

要实现通过阿里云物联网平台对树莓派进行连接,并且可以通过阿里云物联网平台对树莓派远程控制其GPIO17口高低电平的输出,需要满足以下条件: 1. 树莓派需要连接到互联网,并且可以访问阿里云物联网平台。 2. 需要在阿里云物联网平台上创建一个 IoT 设备,并且为该设备生成一个设备证书。 3. 需要在树莓派上安装阿里云物联网平台提供的 SDK。 4. 树莓派上需要安装 Python 3。 下面是详细的步骤和代码: 1. 在阿里云物联网平台上创建一个 IoT 设备,并为该设备生成一个设备证书。 2. 在树莓派上安装阿里云物联网平台提供的 Python SDK。 ``` pip3 install aliyun-python-sdk-core pip3 install aliyun-python-sdk-iot ``` 3. 在树莓派上创建一个 Python 脚本,用于连接到阿里云物联网平台,获取设备 Shadow,以及更新设备 Shadow。 ```python import time from aliyunsdkcore.client import AcsClient from aliyunsdkcore.request import CommonRequest from aliyunsdkiot.request.v20170420 import PubRequest from aliyunsdkiot.request.v20170420 import RRpcRequest # 阿里云物联网平台的配置 client = AcsClient( "<accessKeyId>", # 替换为你的 AccessKeyId "<accessSecret>", # 替换为你的 AccessSecret "cn-shanghai" ) # 获取设备 Shadow def get_device_shadow(): request = CommonRequest() request.set_domain("iot.cn-shanghai.aliyuncs.com") request.set_version("2018-01-20") request.set_product_key("<productKey>") # 替换为你的 ProductKey request.set_device_name("<deviceName>") # 替换为你的 DeviceName request.set_action_name("GetDeviceShadow") response = client.do_action_with_exception(request) return response # 更新设备 Shadow def update_device_shadow(payload): request = PubRequest.PubRequest() request.set_accept_format('json') request.set_ProductKey('<productKey>') # 替换为你的 ProductKey request.set_MessageContent(payload) request.set_TopicFullName('/sys/<productKey>/<deviceName>/thing/update') request.set_Qos(0) response = client.do_action_with_exception(request) return response # 监听云端的控制指令 def listen_control_command(): request = RRpcRequest.RRpcRequest() request.set_accept_format('json') request.set_ProductKey('<productKey>') # 替换为你的 ProductKey request.set_DeviceName('<deviceName>') # 替换为你的 DeviceName request.set_Topic('/sys/<productKey>/<deviceName>/thing/service/+/+') response = client.do_action_with_exception(request) response = str(response, encoding='utf-8') return response # 控制 GPIO17 的高低电平 def set_gpio17(value): # TODO: 在这里编写控制 GPIO17 的代码 pass # 主程序 while True: # 监听云端的控制指令 command = listen_control_command() # 解析控制指令 # TODO: 在这里编写解析控制指令的代码 # 更新设备 Shadow payload = '{"method":"update","state":{"reported":{"gpio17":' + str(value) + '}}}' update_device_shadow(payload) # 等待一段时间 time.sleep(1) ``` 4. 在控制台上创建一个 Topic Filter,用于监听控制指令。 5. 在控制台上创建一个 Rule,将 Topic Filter 和 Python 脚本关联起来。 6. 在控制台上创建一个 Websocket 连接,用于实时查看设备 Shadow 的变化。 以上就是实现通过阿里云物联网平台对树莓派进行连接,并且可以通过阿里云物联网平台对树莓派远程控制其 GPIO17 口高低电平的输出的详细步骤和代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值