目前的物联网追踪了比以往任何时候都更多的真实世界对象和流程,也产生了大量的且不断增长的数据。
Chainlink外部适配
器非常适合将物联网数据通过安全、可靠的预言机网络传送到各种物联网智能合约用例中,例如链上供应链业务逻辑或追踪温度数据用于智能合约保险理赔。将
RFID扫描器
数据整合到区块链中就是这样一个例子。
在
Chainlink黑客马拉松
中获得最佳开放项目奖的开发者AramMoghaddassi和AaronWasserman使用Chainlink外部适配器将ArduinoRFID连接到Chainlink预言机,用于一个去中心化的图书借阅和跟踪系统,称为
开放图书馆项目
。
在这篇教程文章中,AramMoghaddassi解释了他们如何实现这个项目。
Facebook前游戏负责人:苹果目前正在阻止加密游戏:金色财经报道,Facebook前游戏总监正在推出一款新的Web3游戏,并表示苹果的AppStore政策阻碍了区块链游戏的采用。许多行业领导者将占据1530亿美元的移动游戏市场视为释放web3潜力的关键一步。(TheBlock)[2022/12/22 22:00:12]
*作者:
AramMoghaddassi
在区块链上启用的硬件系统是智能合约开发者的新领域。本篇文章将介绍构建此类系统的灵感、应用和技术设计,并作为教程,介绍如何将
Chainlink节点上的RFID传感器
的模拟硬件后端集成到智能合约中。
物联网硬件和智能合约的发展潜力
区块链和智能合约有能力确保目前部署的数百亿物联网设备的安全,并每年产生的数十亿字节的数据。从智能家居、城市、工厂、供应链,物联网设备正在彻底改变传统的基础设施,自动化系统有可能在这个领域创造强大的效率和商业逻辑。为此,我们开发了自定义的外部适配器,使智能合约能够与实时硬件系统对接。目前我们正在运营一个带有虚拟硬件后端的RFID外部适配器,您可以跟随本教程亲手实践一下。
Chainlink去中心化的预言机网络如何将物联网数据安全地反馈给智能合约
我们的目标是:在10分钟内,您将部署一个可以从我们的RFID适配器查询数据的智能合约。我们希望让现有的Web3开发人员尽可能直观地开始在您的dApps中构建硬件集成。
您需要具备的知识
熟悉使用Chainlink进行Solidity开发很重要。我们将在Kovantestnet上使用
RemixEthereumIDE
不需要任何硬件!我们现在已经
上线了一个RFID传感器的集成
]很快会有更多设备出现)。它发送样本数据,您可以使用这些数据来快速启动和运行一个dApp。
本教程将是我们
GitHub代码
上的演示的书面版本,你可以在开始之前熟悉一下。
\n
构建RFID数据提供商智能合约
Job\u002FOracleSpec
我们将使用这个在Kovantestnet上运行的
Job
。
RFID扫描仪适配器将以字节格式返回一个示例卡UID。
合约概要
这里是一个基本的合约,它调用节点的RFID作业,并将响应存储在一个变量中。
在Remix中部署这个合约
:
署合约并与交互
按照
Chainlink文档
,如何部署合约并获取testnetLINK。我们建议用至少10个LINK来存到合约中。
合约中的requestData方法会对RFID作业进行Chainlink请求,完成后会把最后一次扫描的UID放到last_uid变量中。
应用及后期集成
我们的RFID集成目前还处在概念证明阶段,目前可以在智能合约上运行一个实时硬件设备。我们希望不断地建立硬件集成案例,最终在Chainlink社区内引导一个硬件生态系统。不过,最终还是要靠开发者找到使用这项技术的杀手级应用。
以下是我们对RFID适配器的一些想法,你现在就可以进行研究。
实物的保管管理
--贴有RFID芯片的物品可以在不同的航点进行扫描,安全地追踪位置。这个系统可以帮助到基于区块链的供应链管理应用。
酒店入住\u002F退房系统
--Airbnb\u002F酒店可以在用户入住某地时自动初始化租赁合约。智能合约可以自动实时收取任何逾期费用。
签署数字协议的物理验证系统
--使用RFID扫描来验证用户的真实存在。
发挥创意吧
!RFID接口的通用性很强,你能想象到的任何东西都有可能构建。
最好的链上硬件应用将利用智能合约的独特属性,获得比传统软件更多的优势。智能合约是确定性的、去中心化的、数字化的协议。在硬件方面,区块链实现的最有价值的好处是:(1)强大的机器对机器通信协议和(2)来自传感器的不可篡改的数据馈送。
构建自己的硬件外部适配器
在构建开放图书馆项目时,我们的团队学到了一些经验。如果你正在考虑自己构建硬件外部适配器,这些原则是我们认为有用的。虽然我们这些经验是在构建RFID扫描仪的硬件适配器时做出的,但这些原则应该适用于任何实时硬件传感器集成
原则0
:适配器服务器结构与其他所有的适配器服务器结构是一样的。你可以使用任何现有的外部适配器模板作为起点。主要的区别在于以下原则。
原则1
:硬件必须有一些外部适配器可以调用的软件接口\u002FAPI。
对于RFID扫描器,我们使用
pyserial
,创建了一个简单的接口来从每次扫描中获取UID代码。然后我们可以写一个简单的
flask服务器
,接受POST请求来读取UID。
对于不太能自定义的硬件,这个软件接口可能由一个开箱即用的API提供。在这种情况下,你只需要关心编写外部适配器接口的问题。
原则2:
外部适配器必须在本地运行。
对于那些熟悉在云服务器上部署适配器的人来说,这可能看起来很奇怪。然而,考虑到我们正在将数据从本地硬件传感器转移到远程Chainlink节点,向节点提供数据的适配器服务器必须在本地运行。我们想象的最佳设置是使用一个专用的树莓派来运行硬件和服务器。
今天就开始使用外部适配器进行构建
如果你是一名开发者,想要将你的智能合约连接到底层区块链之外的现有硬件或数据,请在这里联系或访问
开发者文档
。
如果你在这里学到了一些新的东西,想要展示你所构建的东西,或者为一些演示仓库开发了一个前端,请确保你在
,
Discord
或
上分享它,并且用#Chainlink来标记你的仓库。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。