电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>将以太坊与Bolt物联网集成

将以太坊与Bolt物联网集成

2022-12-16 | zip | 0.02 MB | 次下载 | 免费

资料介绍

描述

介绍

Smart Tea Machine 简单演示了如何将以太坊集成到设备中,尤其是 Bolt IoT 等设备中。它显示了可用于在没有显示的标准机器中具有基本功能的相对容易和简单的代码。

这个项目的主要思想是制造一台可以与以太坊一起使用的机器。

现有的旧茶机用于证明这一概念。***

这个怎么运作

标准的旧茶机已被修改为由带有 5v 继电器的 Bolt IoT WiFi 模块控制。Bolt IoT WiFi 模块可以直接在茶机内部的分配 5V DC 泵上进行茶水。Bolt IoT WiFi 模块通过 WiFi 连接到 Bolt Cloud 和带有以太坊节点的 python 程序,并定期检查地址是否出现了新交易。当它找到一个时,它会唤醒茶机并分配茶。

流程图

poYBAGOYqDGATXNKAAFJgTe5-iY857.png
 

硬件设置

在utsource.net上购买免费送货的电子元件

打开旧茶机

 
poYBAGOYqBGAeGrzAAAgm9kTLf0249.jpg
 
pYYBAGOYqDaAaCqWAAAiV5Iu3Jw270.jpg
 
poYBAGOYqDmAYZ6AAAAmTOL62Ag096.jpg
 
pYYBAGOYqD2AVfz9AABS9E9OK_g566.jpg
 

焊接

现在机器已经打开,我们将把 2 根电线焊接到 DV 泵上。如上图所示。

螺栓物联网连接

pYYBAGOYqECAfQJRAABEtET-YHE056.jpg
 
pYYBAGOYqEmAbcx8AAA1KpMTT_M637.jpg
 

Relay 和 BoltIoT之间的连接是:

  • 螺栓物联网 PIN0:继电器输入
  • 螺栓物联网 5v:继电器 Vcc
  • 螺栓物联网接地:继电器接地
  • Bolt IoT 5v:中继通信
  • 继电器编号:直流泵(+)
  • 螺栓物联网接地:直流泵(-)

该项目的最终布线看起来有点混乱,但工作得很好。

poYBAGOYqEuADI6NAABfZxtFfMA33.jpeg
 

全部接线后,我们只需使用基本的开关程序对其进行测试,然后继续检查继电器是否正在启动。

 

 

什么是以太坊?

以太坊是一个开源、公共、基于区块链的分布式计算平台和操作系统,具有智能合约功能。它通过基于事务的状态转换支持中本聪共识的修改版本。

什么是以太坊钱包?

钱包是可以轻松持有和发送ETH以及与基于以太坊构建的应用程序交互的应用程序。

我正在为这个项目使用 MetaMask 钱包

要查看如何在 MetaMask 钱包中创建帐户,请访问https://metamask.io/

为了测试这台机器,您还需要一个个人钱包。我曾使用 Ropsten 测试网络进行测试。要为您的个人钱包收集免费的 ETH,我建议您查看以下链接:

注册到 RPC 节点 (Infura)

为了与以太坊区块链交互,需要一个暴露 API 的 RPC 节点。在此示例中,我们将使用免费提供此服务的https://infura.io 。注册到他们的网站并记下您的 API 密钥。

Web3.py

Web3.py 是一个用于与以太坊交互的 python 库。它的 API 源自 Web3.js Javascript API,任何使用过web3.js.

1. 使用 pip 安装 Web3.py:

pip install web3

2. 使用 pip 安装 Bolt Python 库:

pip install boltiot

3.运行这个python代码。

import time
import decimal
from web3 import Web3
from boltiot import Bolt
api_key = "xxx15dxxx-xxxx-xxxx-xxxx-xxx1f7dfxxxx" # Your Bolt Cloud API key
device_id  = "BOLTxxxxxx" # Bolt device id that you want to control
# Fill in your infura API key here
infura_url = "https://ropsten.infura.io/v3/xxx642xxx2exxxxxx571xxxf47ff0xxx"
web3 = Web3(Web3.HTTPProvider(infura_url))
print(web3.isConnected())
#print(web3.eth.blockNumber)
# Fill in your account here
success = False
preBal = 0
# Script actually runs continuously with 5 sec intervel
while True:
# API method to check balance
balance_m = web3.eth.getBalance("0xbD4B0a62a4Ab49D442A7fF6aD9DAE924569AD695")
balance = (web3.fromWei(balance_m, "ether"))
# response['balances'] is a list!
if web3.isConnected():
#print('Found the following information for address ' + str(my_address) + ':')
#print('Balance: ' + str(response['balances'][0]) + 'i')
current_balance = balance
print('Balance: ' + str(balance) + 'eth')
add_amt = decimal.Decimal('0.1')
if current_balance == preBal+add_amt:
print("Recived 0.1eth, processing in 1 seconds...")
preBal = current_balance
#mybolt = Bolt(api_key, device_id)
#response = mybolt.digitalWrite('1', 'HIGH')
#print(response)
#response = mybolt.digitalWrite('1', 'LOW')
#print(response)
mybolt = Bolt(api_key, device_id)
response = mybolt.digitalWrite('0', 'HIGH')
print(response)
time.sleep(15)  # Wait for 15 seconds
response = mybolt.digitalWrite('0', 'LOW')
print(response)
success = True
else:
preBal = current_balance
else:
print('Not online checking after 30 sec')
time.sleep(30)   # Pause for 30 sec.
time.sleep(5)

在用户转移了 ETH 之后,如果它得到了网络的确认。它会自动检查收到的金额,并在直流泵上按固定时间分配茶水。

(不幸的是,它不适用于 google colab)

把它们放在一起

最后,是时候启动 Bolt IoT WiFi 模块并检查所有例程是否按计划运行。

**验证 ETH 可能需要几秒钟时间**。

 
 
 
 
 

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费