资料介绍
描述
使用 PIR 传感器作为触发器拍摄照片并将其上传到 tumblr。
配置你的云盾
有两种配置 Yùn 的方法。
第一个是上传示例 YunFirstConfig并设置所需的参数。
打开您的 Arduino IDE 并转到example -> Bridge -> YunFirstConfig
如果您使用的是 YunShield,请务必选择它所连接的板的名称,而不是 Yun 板!
上传草图并打开串行监视器。您将在下面的屏幕截图中看到一条消息。

按照几个简单的步骤为您的开发板设置名称、密码和网络。现在您可以将 Yùn 连接到互联网了!
配置开发板的第二种方法是通过浏览器进行。
在开始之前确保你的 yun-shield 处于访问模式。在您的计算机上的可用 WiFi 网络中检查云的名称。它应该是这样的
Arduino Yun-90A2DAF200DI
连接到该网络并在浏览器中键入地址
192.168.240.1
现在你应该被重定向到 yun 的配置页面,你可以在这里设置名称、密码和你想要连接的 WiFi 网络。
注意默认密码是arduino

完毕!现在您的云盾有了名字和密码,并且可以上网了!
拍照
对于这个项目,我们使用了 quickcam communicate stx 。这是一个廉价且兼容 linux 的网络摄像头,我们可以通过 USB 连接到我们的 yun-shield。
在进行这项工作之前,我们需要下载一些驱动程序:
打开你的终端并通过 ssh 连接到 yun-shield(确保你的计算机连接到 yun-shield 的同一网络)并下载所需的包
ssh root@name_of_your_yun.local
opkg update
opkg install kmod-video-gspca-zc3xx
opkg install python-openssl
opkg install fswebcam
opkg install mjpg-streamer
请注意,许多网络摄像头都适用于 UVC 驱动程序。在这种情况下使用命令:
opkg install kmod-video-uvc libwebcam libuvc
现在我们可以使用此命令拍照并存储它们
fswebcam test.png
图片将保存为.png 并命名为test。
为了让事情更有条理,我们可以创建一个文件夹来保存照片,只需在终端(通过 ssh 连接到 yun-shield)输入命令:
mkdir photos
现在要将照片保存在该文件夹中,请使用命令
fswebcam -r 640x480 photos/my_photo.jpg
我们刚刚拍了一张 640x480 分辨率的照片,将其命名为 my_photo.jpg并将其保存在文件夹photos 中。
将照片上传到 tumblr
在上传任何照片之前,我们首先需要创建一个连接到我们博客的 tumblr 应用程序。为此,请访问 https://www.tumblr.com/oauth/apps 并注册一个新应用程序。我们需要此应用程序来获取向 tumblr 发出 http POST 请求所需的所有令牌。
在表格中填写应用程序名称、描述和电子邮件联系方式。您可以使用您想要的任何链接填充其余字段,例如默认回调 URL,我们不会将它们用于此项目。

现在您应该可以访问您的 OAuth Consumer Key和 OAuth Consumer Secret。将这些标记保存在文本文件中,我们将在接下来的步骤中需要它们。
现在我们还想获得OAuth Token和OAuth Token Secret
转到Tumblr API 控制台并使用您已有的令牌对您的应用程序进行身份验证,然后在右上角按显示密钥按钮。你应该看到类似的东西:

现在我们有了令牌,我们可以写下将完成所有工作的 python 代码。您可以复制并粘贴下面的代码或从本教程的软件部分下载它。
请记住用您的凭据填写空白字段。
import glob
import json
import os
import time
import urllib2
import urlparse
import oauth2
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers
class APIError(StandardError):
def __init__(self, msg, response=None):
StandardError.__init__(self, msg)
class TumblrAPIv2:
def __init__(self, consumer_key, consumer_secret, oauth_token, oauth_token_secret):
self.consumer = oauth2.Consumer(consumer_key, consumer_secret)
self.token = oauth2.Token(oauth_token, oauth_token_secret)
self.url = "http://api.tumblr.com"
def parse_response(self, result):
content = json.loads(result)
if 400 <= int(content["meta"]["status"]) <= 600:
raise APIError(content["meta"]["msg"], result)
return content["response"]
def createPhotoPost(self, id, post):
url = self.url + "/v2/blog/%s/post" %id
img_file = post['data']
del(post['data'])
req = oauth2.Request.from_consumer_and_token(self.consumer,
token=self.token,
http_method="POST",
http_url=url,
parameters=post)
req.sign_request(oauth2.SignatureMethod_HMAC_SHA1(), self.consumer, self.token)
compiled_postdata = req.to_postdata()
all_upload_params = urlparse.parse_qs(compiled_postdata, keep_blank_values=True)
for key, val in all_upload_params.iteritems():
all_upload_params[key] = val[0]
all_upload_params['data'] = open(img_file, 'rb')
datagen, headers = multipart_encode(all_upload_params)
request = urllib2.Request(url, datagen, headers)
try:
respdata = urllib2.urlopen(request).read()
except urllib2.HTTPError, ex:
return 'Received error code: ', ex.code
return self.parse_response(respdata)
register_openers()
#Insert here your tokens
CONSUMER_KEY = '****'
CONSUMER_SECRET = '****'
OAUTH_TOKEN = '****'
OAUTH_TOKEN_SECRET = '****'
DIR = 'photos/'
FILE_MASK = '*.jpg'
BLOG = '****' # put here the name of your blog i.e. arduino.tumblr.com
api = TumblrAPIv2(CONSUMER_KEY, CONSUMER_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
for img in glob.glob( os.path.join(DIR, FILE_MASK) ):
date = time.gmtime(os.path.getmtime(img))
post = {
'type' : 'photo',
'date' : time.strftime ("%Y-%m-%d %H:%M:%S", date),
'data' : img,
'tags' : "I am a tag",
'caption' : "I am a caption"
}
try:
response = api.createPhotoPost(BLOG,post)
if 'id' in response:
print response['id']
else:
print response
break
except APIError:
print "Error"
break
print "Done!"
为了在 Yun_Shield 上上传这个脚本,我们首先需要知道我们开发板的 IP 地址。通过 ssh 和数字连接:
ifconfig

现在我们有了 IP,我们可以继续上传脚本了。您可以使用此命令将your_path替换为文件夹的路径以访问 python 脚本。
scp /your_path/YunTumblr.py root@your_ip_address:
请记住还要上传您可以在软件部分找到的 auth.py 文件:
scp /your_path/auth.py root@your_ip_address:
最后一步是下载 python 库。通过 ssh 连接到 yun shield 并使用这些命令
ssh root@name_of_your_yun.local
opkg update
opkg install python-pip
pip install oauth2
pip install poster
我们完了!!!
要测试它,你可以数字:
fswebcam -r 640x480 photos/my_photo.jpg
python YunTumblr.py
将它们上传到 tumblr 可能需要几分钟时间,但如果一切正常,您应该会收到照片的 ID 号作为回复。

接线
通常所有 PIR 传感器都带有三根电线。黑色的用于接地,红色的用于 5V,彩色的用于数据。
请注意,有时电线颜色可能会因传感器而异!

上传云盾草图
Yun Shield 可以插入每个 Arduino/Genuino 开发板。
插入扩展板后,您必须从 Arduino IDE 中选择扩展板连接到的板,而不是 Arduino Yun 。例如,如果将 Yun Shield 插入 Arduino Leonardo,则必须在 IDE 中选择
工具/板/Arduino Leonardo
- 带霍尔效应传感器的游戏触发器
- 如何使用PIR传感器和蜂鸣器模块
- WIFI PIR传感器开源分享
- 如何将LM35温度传感器上传到云端
- 基于PIR传感器的运动检测报警系统 1次下载
- 运动传感器的详细介绍包括:加速度计PIR振动传感器等 47次下载
- 锁存器和触发器原理 0次下载
- 钟控同步RS触发器教材
- 触发器基础知识 0次下载
- 施密特触发器 (ppt教案) 0次下载
- 触发器逻辑功能测试实验
- D触发器/J-K触发器的功能测试及其应用 0次下载
- 触发器及其应用
- 触发器PPT 0次下载
- 基本RS触发器 0次下载
- 基于PIR传感器的电路图 带Arduino的PIR传感器设计 1836次阅读
- 如何判断需要几个触发器 如何判断触发器能否自启动 1886次阅读
- 触发器的触发顺序是什么 1200次阅读
- 触发器的原理:RS触发器和T触发器 2682次阅读
- rs触发器电路图与rs触发器内部电路图 3.1w次阅读
- RS触发器是什么?解读rs触发器的作用和数字电路中的rs触发器的作用 1.1w次阅读
- rs触发器的真值表、触发器以及功能表 11.1w次阅读
- 电子触发器的作用_电子触发器接线 1.1w次阅读
- JK触发器逻辑符号_jk触发器的特性方程 9.4w次阅读
- 触发器及触发器的作用 2.5w次阅读
- 单稳态触发器有哪些_单稳态触发器工作原理介绍 4.1w次阅读
- 触发器的作用_触发器的特点介绍 2.1w次阅读
- 什么是单稳态触发器_单稳态触发器特点以及构成 7.6w次阅读
- 什么是边沿触发器_边沿D触发器介绍 7.1w次阅读
- sql触发器的优缺点 5478次阅读
下载排行
本周
- 1NB-IoT芯片厂商的资料说明
- 0.31 MB | 22次下载 | 1 积分
- 2智慧监狱建设的核心终端—智慧监仓屏
- 0.25 MB | 2次下载 | 免费
- 3PC318C016M/D 200V半桥栅极驱动器技术手册
- 0.77 MB | 2次下载 | 免费
- 45.0SMDJ200A单向TVS瞬态抑制二极管规格书
- 0.88 MB | 1次下载 | 免费
- 5PC318C041EQ 200V半桥栅极驱动器技术手册
- 0.50 MB | 次下载 | 免费
- 6PC318C042NM 200V半桥栅极驱动器技术手册
- 0.55 MB | 次下载 | 免费
- 7技嘉H110主板IT8628E_BX IO电路图资料
- 2.61 MB | 次下载 | 1 积分
- 8H110主板CPU PWM芯片ISL95858HRZ-T核心供电电路图资料
- 0.63 MB | 次下载 | 1 积分
本月
- 1元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 241次下载 | 免费
- 2元宇宙底层硬件系列报告
- 13.42 MB | 184次下载 | 免费
- 32022 年展望報告 – 半導體產業
- 1.43 MB | 136次下载 | 免费
- 4晶振与滤波器应用电路《电子工程师必备:元器件应用宝典》
- 1.57 MB | 90次下载 | 免费
- 5汽车电子行业深度解析:智能化与电动化方兴未艾
- 6.47 MB | 71次下载 | 免费
- 6中国DPU行业白皮书
- 23.80 MB | 37次下载 | 免费
- 7晶科鑫代理线-微盟电子2021年度产品目录选型手册
- 14.75 MB | 27次下载 | 免费
- 8NB-IoT芯片厂商的资料说明
- 0.31 MB | 22次下载 | 1 积分
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233089次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191425次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183352次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81602次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73822次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App






创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论