该项目的诞生是因为观察到在大多数汽车共享服务中,人们即使喝醉了也可以开车,因为没有检查他们的状况。事实上,要驾驶汽车,您只需使用移动应用程序打开它并拿到里面的钥匙。为了解决这个问题,我创建了一个基于云的物联网呼气测醉器,连接到一个包含汽车钥匙的盒子;如果测试返回负值,则该框将打开,否则将保持关闭状态。以下是更详细的分析:IoT设备架构、云层和 IoT 设备的RIOT-OS代码。
使用的传感器是传感器和MQ-3酒精传感器;使用的执行器是伺服电机、三个LED(迷你交通灯)、一个按钮和一个蜂鸣器。
它用于允许酒精传感器计算正确的测量值。事实上,它位于 MQ 3 传感器附近,只有当传感器与人的距离小于 5 厘米时,MQ 3 模块才会在人呼气时开始测量人的血液酒精水平。通过发送触发信号和接收回波信号来估计距离;计算出的时间(以我们为单位)除以 58 是传感器前方物体的距离(以厘米为单位)。可测量2-400厘米范围内的距离,测距精度可达3毫米。一旦通过移动应用程序打开汽车(通过为系统供电),传感器就会进行定期感应(每 5 秒执行一次新的测量)。当装有钥匙的盒子被打开时,传感器停止采取措施。
它测量空气中酒精的浓度。其检测范围从 0.04 到 4 mg/l 酒精。它是一种金属氧化物半导体,通过改变电阻来检测周围是否存在酒精蒸汽。事实上,当酒精浓度变高时,传感器的电导率也会上升。电导率的这种变化被转换为指示酒精含量的输出值。特别是,当返回的值减去 100 大于 450 时,酒精含量被认为太高,并且框键将保持关闭状态。该传感器具有模拟输出和数字输出,但对于本项目,使用的是模拟输出。MQ 3 传感器仅在传感器计算的距离小于 5 cm 时进行测量,因此可以计算出正确的测量值。
伺服电机用于打开或关闭装有汽车钥匙的盒子。如果酒精传感器返回的值小于或等于 450,则该框将打开,以便取走钥匙。如果测量值大于 450,框键将保持关闭状态。
它具有三个 LED:红色、和绿色。它们用于为传感器测量的距离提供反馈。距离大于 15 厘米时红色 LED 亮;距离在5厘米至15厘米之间时灯亮;当距离小于 5 厘米时,绿色会亮起。当绿色 LED 亮起时,表示该人距离传感器足够近,可以进行酒精测试,因此 MQ 3 传感器被激活并可以测量酒精水平。
它用于关闭框键。按下时,伺服电机被激活,框键将关闭。为了将按钮连接到电路板,它使用了一个 10K 欧姆的电阻器。
它用于在呼气测醉器返回的值超出限制时提供反馈。当 MQ 3 传感器测量的值大于 450 时,蜂鸣器开启 1 秒。为了将蜂鸣器连接到电路板上,它使用了一个 1 欧姆的电阻器。
云级别完全使用 AWS 生态系统开发。在下图中,有一个架构说明了所使用的 AWS 服务如何在整个系统中连接。
物联网设备层和云端通过基于发布/订阅机制的通信协议交换消息。董事会使用 MQTT-SN 协议将酒精传感器采取的措施发送到 Mosquitto 代理。这些消息在“alcool_level”主题下发布。此外,该板订阅了主题“topic_in”以接收从外部发送的消息,这些消息用于关闭或打开包含密钥的框。Mosquitto 使用 MQTT 通过透明桥与 AWS 生态系统交换消息,这是一个Python脚本,用作 Mosquitto 和 AWS IoT Core 之间的桥梁。实际上,它将“alcool_level”的消息从板发布到 IoT Core,并将 IoT Core 在主题“topic_in”下发布的输入消息作为输入消息,这些消息被定向到板。然后,通过设置适当的规则,从板传到 IoT Core 的消息直接存储到 DynamoDB。然后通过调用 REST API 将它们显示在 Web 仪表板上,这会触发从数据库中获取数据的 lambda 函数(“get_data_from_db.py”)。从 Web 仪表板,可以通过在主题“topic_in”下发布消息“关闭”或消息“打开”来关闭或打开框键。消息通过调用使用另一个 lambda 函数(“publish_to_iotcore.py”)执行此操作的 REST API 发布到 IoT Core。
两个图表用于显示:过去 7 天内一天内打开盒子钥匙的次数(MQ-3 传感器测量的值小于或等于 450)和酒精测试返回阳性的次数过去 7 天内一天的价值;
关于过去 7 天计算的测试的一些统计数据:测试结果为阳性的最大时间段(8-12、12-17、17-20、20-24 和 00-8 之间的值);装有钥匙的盒子被打开的次数;呼气测醉器检测到超过限值的次数;阳性测试占总测试的百分比。
如果全局变量box_keys等于 0,则意味着包含键的框已关闭,因此我们可以继续进行测量。函数distance_ultrasonic返回从传感器计算的距离(以厘米为单位)。
如果距离小于 5 厘米:通过set_led(verde)函数打开迷你交通灯的绿色 LED ,用户可以继续进行酒精测试。函数check_alcool管理与测试相关的所有部分(更多细节在下面解释)。
如果距离在 5 厘米到 15 厘米之间, LED 灯亮,表示计算测试的距离差不多,但用户必须更靠近
如果距离大于 15 厘米,红色 LED 会亮起,表示距离太远,用户必须更靠近传感器才能进行酒精测试。
如果全局变量box_keys不等于 0,则表示包含键的框已打开,因此我们进入“else”块。在其值等于 1 之前,每 0.5 秒读取一次连接到按钮的引脚。如果它返回一个大于零的值(当它被按下时它返回值 256),通过用伺服电机锁定它来关闭盒子,并且变量box_keys设置为 0 以允许进入前面的“if”块下一轮 while 循环。
如果box_keys等于 0,则传感器将每 5 秒感应一次,这是由于在 main while 中的“if-else”块之外设置的计时器。
sensor_init函数:在 main 函数开始时使用,用于初始化传感器和执行器的所有 GPIO 引脚,以及伺服电机。
用于引脚和伺服变量的所有变量都是全局的,因此它们是在函数之外定义的(您可以在项目的 GitHub 存储库中的代码中找到有关它们的更多信息)。对于 MQ 3 传感器,它被初始化为板接收值的模拟线路。用于初始化伺服电机的常量DEV、CHANNEL、SERVO_MIN、SERVO_MAX在函数外部定义。
函数read_mq3返回 MQ 3 传感器计算的值,如果大于 450 表示超过法定限制,因此无法驾驶汽车。包含按键的盒子将保持关闭状态,并激活蜂鸣器 1 秒钟(蜂鸣器用于向用户提供酒精测试阳性结果的反馈)。如果传感器返回的值小于或等于 450,则打开盒子(通过伺服电机解锁盒子)并将全局变量box_keys设置为 1。在这两种情况下,由Breathalyzer 与主题“alcool_level”下的函数pub一起发布(这是常量TOPIC_OUT1的值)。
它向传感器发送一个脉冲并等待 100 毫秒以读取全局变量echo_time 的值。如果该值大于 0,则将其除以 58 以计算传感器前方物体的距离(以厘米为单位)。
当检测到回显引脚上的变化时,该功能被激活。它测量从发送脉冲到接收回脉冲的时间差。它将值存储在全局变量echo_time中, distance_ultrasonic函数使用该变量来计算传感器前方物体的距离(以厘米为单位)。echo_time_stop也是一个全局变量。
如果str为“verde”,则绿色 LED 亮起,其他 LED 熄灭。如果str为“giallo”,则的打开,其他的关闭。如果str是“rosso”,则红色的打开,其他的关闭。
当在订阅的主题(在本例中为主题“topic_in”)下接收到消息时,函数on_pub对其进行管理:
如果收到的消息是“打开”,则通过伺服电机解锁包含钥匙的盒子,并将全局变量box_keys设置为 1。如果消息是“关闭”,则使用伺服电机锁定盒子,并且全局变量box_keys设置为 0。函数的第一部分用于通过在终端上打印收到的消息及其相关主题来获取反馈。
printf(Published %i bytes to topic %s [%i]n, (int)strlen(msg), t.name, t.id);
密码学原理的典型应用:TLS TLS:即传输层安全 基于密码学原理的通信协议 实现服务器和设备之间的认证通信和数据加密 TLS握手协议 通信双方的相互确认 协商会线) CA证书:包含的是CA的公钥,用来核实该CA颁发给别人的证书的真实性 服务器/IoT设备的证书:包含了自己的公钥 通过公钥加密的消息,只能私钥拥有者可以解密 可以签证由对应私钥签名的消息的完整可靠性 服务器/IoT设备的私钥:用来为自己发送的消息签名 至此,通过“挑战-应答”机制,IoT设备端已经确认是和真正的目标服务器在通信 服务器的证书是有效的(CA保证,通过CA公钥验证成功) 对
生态系统 密码学原理的应用-TLS /
如果从广义的建筑来看,智能家居设备主要应用在智能建筑之中。智能建筑行业发展潜力极大,被认为是我国经济发展中一个非常重要的产业,其产业带动作用更是不容小觑。据统计,美国智能建筑占新建建筑的比例为70%,日本为60%。2015年,我国智能建筑占新建建筑的比例在30%左右。 我国智能建筑起步于1990年,比美国晚了6年,比日本晚4年,通过对比美国和日本智能建筑的发展历程,预计未来我国智能建筑在新建建筑中的比例仍将保持每年3个百分点左右的提升速度,到2021年,我国智能建筑在新建建筑中的比列有望达到57%左右。 智能家居和智能建筑细分市场即将迎来腾飞。“我们目前正处于智能家居和智能建筑应用曲线即将腾飞的起点上,”Yole高
近阵子由于iPhone 4走红,许多媒体纷纷宣扬iPhone将引爆传感器题材商机,在报导描述中也用上了热门的技术名词:微机电系统(MEMS),期望使题材能更热。 文章用上MEMS传感器的称呼,使许多人以为iPhone 4内所用的传感器全是用MEMS技术实现的,特别是许多苹果粉丝,阅读这类文章后也跟着在自己的部落格上宣扬这类题材,反而使歪述更为扩张。因此笔者期望藉此文说明一些传感器技术,期望能让已扩散的歪述有点约束。 微机电系统(MEMS)概述 在正式说明前,先让我们了解何谓MEMS?关于此还必须先说明何谓IC?IC(Integrated Circuit)译为集成电路,就是把电子组件(如电阻、电容、
现在只是简单的预研知道有这个功能,怎么实现我真的没做过。。。 先照着手册熟悉一。
18新利官网