文摘
感觉网络是解决方案的一部分监控所需的物理变量在感兴趣的领域。他们的类型,使用的通信协议,在参数中扮演一个重要的角色的复杂性。经济的解决方案之一是使用一个机的通信网络,只需要2物理连接。单个传感器或通信网络的节点并行连接。我们的目标是设计和实现一个通用的低功耗实现一个完全的一线总线模块机的标准。作为开发平台的模块,STM32-based单片机被选中。这个解决方案的主要优势是能够利用传感器从可用传感器的多种标准化的通信接口。我们的解决方案的通用一线模块为传感器提供了一个单一接口不同的通信接口,而它仍然与标准的一线总线控制器。
1。介绍
利用各种传感器对数据收集直接或晚评价是当前的趋势在该地区的工业技术。每个传感器都必须属于一个特定的感知网络和使用特定的通信协议进行通信。一种特殊情况是智能传感器感知网络(1,2)这是在几个不同的通信技术实现的,如wi - fi、蓝牙、无线个域网。不是不寻常的感知节点与多个通信接口,例如,电脑有线接口连接为智能手机和无线接口连接(3]。当前使用的通信协议包括M-Bus、现场总线网络通讯协议,旁路母线,一线。根据ISO / OSI模型,这些都是应用程序层协议。这些协议的物理层不同类型的通信电缆,电压水平,使用连接器的机械设计。他们也是杰出的链路层采用不同的处理方法。最明显的差异是在应用程序层,通信协议的应用。感觉网络类型选择的一个重要因素是支持的传感器,最大通信速度,解决单个传感器的方法,成本,和安装整个传感网络的复杂性。
下面的文本处理感觉网络基于一线标准。此总线上的通信原理是基于时间间隔,在此期间公共汽车处于活跃状态。有两种基本模式:标准模式和超速模式(4]。超速模式定义了更短的时间间隔,从而导致更高的传输速度。机的通信协议的总线传输速率是16.3 kbps的标准模式和114 kbps超速模式。每个传感器包含一个独特的64位标识符,也作为其地址。整个总线使用只有2电线。通信线路也可以作为单个传感器的电源。总线长度可以达到超过500 (5]。主要缺点的感觉支持的传感器网络是一组小。有一个大组标识符的节点和不同类型的内存芯片的一线总线。只有温度传感器DS18B20 [6)是可以从一组物理量传感器。缺乏各种物理量传感器带来的主要限制部署这种类型的传感网络。的事实,没有其他一线总线式传感器比温度传感器被用来设计普遍感觉模块解决方案。以下假设,局限性,普遍感觉模块的设计、实现,和测试为一线总线将描述。
总体设计(图的一部分1)是一个一线主总线模块,完全实现了机的标准(4]。支持总线通信超过500是通过实施应用注释5]。一线总线主是由一个主机使用uBUS [7- - - - - -9)基于MODBUS协议的通信协议。uBUS协议的独特功能之一是计算机之间的通信和一线总线主人可以使用RSA加密算法(10]。上述主模块用于测试在执行测试。本文的重点是设计和实现一个通用的奴隶模块支持机的协议。
2。相关的工作
很少有相关出版物的问题创造一个奴隶的一线总线模块。在奴隶的实际应用模块中,有几个出版物,作者利用FPGA技术。佩雷拉et al。(11展示他们的“基于FPGA的单芯片解决方案智能传感器节点机的协议设计,“他们关注使用FPGA技术实现智能传感器。在实现一个一线协议,指的是状态图描述方法在一线总线进行通信。在文献[12),作者创造了使用FPGA技术的模拟温度传感器DS18B20。这个传感器模型然后使用在“硬件在回路”的测试中,使用了模拟传感器的多个实例。使用FPGA技术也讨论了毛孢子菌病的出版13),描述了不同的FPGA平台的参数和他们的能力来实现特定的传感器根据它们的参数,如RAM和功耗。智能传感器通信网络问题解决Moreno-Tapia等人在文献[1],他们建议可重构通信的智能传感器在数控机床工业networks-specifically监视应用程序。在[14),处理感觉网络通信层使用无线电信号,个人感觉节点(传感节点)上实现微处理器STM32L1。传感器物理连接的问题讨论了单片机在15),归复描述期间可能发生的生理效应测量本身。作者还建议连接,消除不受欢迎的过渡效果。sensor-microcontroller沟通的问题也被涂在16),从阅读的角度和处理数据在单片机方面根据IEEE 1451.2规范(17]。
在一些作品,作者处理的实际使用机的传感器。在论文[18,19独立),他们提出一个简单的基于一线技术的无线温度测量系统。Peiffer和克鲁格正在[20.]在一个高效的嵌入式解决方案基于一线协议的通信方法。他们建议使用CMDA解决方法和定义理论协议描述和误差估计和现在这种解决方法的测试结果。
提出了一个有趣的贡献Magre科罗拉多州和Martiinez-Santos (21),建议添加一个加密机的通信协议增加安全层的智能家居的应用程序。
一线协议是详细描述文档(5,6,22]。这些文件是所有进一步的工作用机的基础技术。文献[22)定义了一个方法解决奴隶在公共汽车上。因为每个机的奴隶都包含一个惟一的标识符,该标识符用作节点地址。文献[6)是一种描述一个特定的一线总线slave-DS18B20数字温度计包括时间、沟通方法,支持功能,及其使用方法。每个一线惟一标识符由传感器类型代码(家庭),标识符本身,以及校验和。
根据一条线总线架构23)旗下的格言集成,是不允许创建新的代码传感器类型和传感器标识符。同样,现有标识符是不允许被修改。由于一线标准专利保护的条件创造新的奴隶中定义的文档(23),只有少数出版物处理这个问题最近被出版。然而,大多数的作者处理一线(11,18- - - - - -20.主设备或从模拟/仿真[]12]。
尽管严格限制在一线标准专利保护,没有违反这项工作的一线标准专利。该模块包含一个标准DS2401标识符和一个独特的64位身份证号码提供基本功能相关的解决。这个标识符也是整个通用模块的地址。
我们的建议的基本特征是,我们不定义任何新型通用机的奴隶,将违反法律格言集成的要求。根据(23),是不允许创建一个新的家庭代码或标识符。机的奴隶标识符必须由制造商定义的。拟议的一线总线奴隶模块完全实现了基本的一线(表1)协议命令,足以实现基本功能如触发连接传感器的测量或读取测量值。
3所示。机的协议实现
设计一个通用机的模块解决方案的主要依据是设计一个通用模块(以下OWS-one-wire奴隶)允许使用几种类型的传感器,不再需要外部电源模块,减少能耗,充分遵守机的协议规范和专利保护要求。从的角度实现机的协议,有利于使用一个合适和足够的计算能力和低功耗单片机。
每个一线总线设备必须实现基本命令地址和读/写数据。这些命令由一个字节的值,用一个象征性的条目。为了解决,这些都是READ_ROM (0 x33), SEARCH_ROM (0 x55), MATCH_ROM (0 xf0),和SKIP_ROM (0 xcc)命令。对数据处理来说,这些是COPY_SCRATCHPAD (0 x48), READ_SCRATCHPAD (0 xbe), READ_MEMORY (0 xf0)和(0 x44)转换命令。这些命令的功能是解释部分3所示。1。
在图2OWS的主要设计功能。OWS包含DS2401-a格言集成64位的标识符。OWS作为标准DS2401标识符与基础的命令集。先进OWS属性与连接的传感器和阅读和交流传输测量值是通过扩展实现的支持功能等标准特性READ_SCRATCHPAD或转换6不承认,原DS2401标识符。
3.1。机的
机的技术是基于串行协议,它使用一个数据线,一个零电位线来传输数据。沟通与一个或多个奴隶总是由主。公共汽车是不活跃的状态逻辑1,这是由负载电阻。所有奴隶都有一个开路集电极驱动程序可以改变总线状态逻辑0。沟通分为时段标准长度为60μ年代,在此期间,1位是转移。车上有四个基本操作定义:写逻辑0,写逻辑1,读1位和复位。沟通总是首先启动复位操作(参见主人5复位脉冲细节),后跟一个一线总线命令。每个机的奴隶都有一个不同的64位地址,由三部分组成:8位FC(家庭代码),指定奴隶类型,48比特位标识符和8位校验和CRC8。这个地址记录到奴隶在生产过程中,不能修改。根据文献[22),这个地址是独一无二的。
一线总线通信原理是主/从。总有一个主人和一个或几个奴隶在公共汽车上。沟通首先主启动复位脉冲。连接奴隶报告他们的存在在公车上,公车水平积极value-logical 0。主人就用搜索算法(一线搜索算法)22)确定奴隶的地址连接到总线。进一步沟通收益直接解决一个特定的奴隶或广播方式(24]。
一线搜索算法原理如下(22]:设备接收到搜索命令会发送第一个(最低)的64位代码。如果有多个设备在公共汽车上,他们都立即回应。如上所述的一线总线规范(设备连接平行于常见的集电极开路输出),结果是所有的逻辑产品(和)位。发送之后,主发送另一个请求。设备响应这个请求,否定第一发送。来自这两个比特,车上的情况可以派生。有四个不同的选项中所描述的表2。
主人现在发送一个应答。接下来,只有设备的第一个值发送的一样掌握将参与搜索。
如果所有设备具有相同的比特值在给定的位置,主发送这个值。如果他们有不同的值(即。,the first option—the two read bits were zero), the master must note the position at which the mismatch occurred and send either 1 or 0. Whether the master sends 0 or 1 is determined based on previous searches, mainly by the position of the last mismatch. The algorithm described below transmits zero at the first pass and transmits one at the second pass. This procedure repeats until all 64 bits of identification are read.
OWS的功能函数的代码是每个请求的一部分。这些代码是分为2类根据奴隶的状态。这些函数分布函数命令(CMD)函数和控制命令(控制CMD)表1。CMD命令的功能类别提供解决一个特定的奴隶。在控制CMD命令实现所需的奴隶功能类别。
3.2。普遍的一线总线模块:占领华尔街
OWS包含基本的命令集(表21)。一组CMDSET 1副本一套DS2401命令。自从DS2401只是一个标识符,它不包含任何comxmands控制CMD类别。CMDSET 2命令与连接传感器,读取测量值和传输测量值在一线总线。
机的奴隶可能在三州(图之一3):(我)闲置(2)函数CMD(3)控制CMD
OWS不执行任何活动在空闲状态和正在等待传入的沟通。在函数CMD状态,命令相关的解决是processed-searching算法(SEARCH_ROM),地址检查(MATCH_ROM),或过渡到广播方式(SKIP_ROM)。在控制CMD,奴隶执行所请求的命令。根据约定,将命令发给开始测量,READ_SCRATCHPAD命令读取便条簿区域存储测量值,和READ_MEMORY命令读取额外的内存的内容。
奴隶在空闲状态循环等待复位脉冲。如果一个活跃值出现在公共汽车上,奴隶将开始检测复位脉冲。如果复位脉冲太短或太长,奴隶仍然处于闲置状态。如果复位脉冲被评估为正确的,奴隶开关函数CMD(图3)。复位脉冲长度是480μ在标准模式(4]。复位脉冲后,公共汽车回到了70年的非活动状态μ年代。这一次后,所有连接奴隶信号总线上公共汽车通过改变它们的存在状态逻辑0。如果主检测逻辑0,这意味着至少有1奴隶连接在总线上连接的操作是紧随其后的是一个枚举奴隶使用“一线搜索算法。“在完成这个算法,主已收到所有从一线总线上的标识符。使用这些信息,主人可以解决一个特定的奴隶和传感器测量数据的请求。
OWS,流程图定义(图4(6),图5描述管理的请求)。这些图定义OWS的行为。下面的文本将被处理一线命令占领华尔街。
在图4,流程图显示了处理CMD命令的功能状态。READ_ROM命令将请求奴隶地址。随后,奴隶将其地址发送给一线总线。这个命令用于验证奴隶在公共汽车上仍然存在。MATCH_ROM命令处理如下:发出的命令后,主发送个人的从节点地址需要解决。如果所有发送位匹配的奴隶地址,奴隶改变其状态函数命令;否则,其状态返回到默认的空闲状态。SEARCH_ROM命令触发总线搜索算法。最后一个命令是SKIP_ROM奴隶转移到函数CMD状态没有检查地址。这个结果在这种情况下,发送命令将执行所有从节点连接。 It is possible to switch the bus into a broadcast state when all connected 1-wire slaves are active.
在图5命令处理算法在函数CMD状态显示。第一个命令转换,开始测量连接的奴隶。在使用更多power-demanding传感器,有必要提供OWS电源电路有足够的权力,以确保成功完成操作。
OWS处于寄生功率模式,也就是说,它是直接从一线总线。OWS是在通信和测量使用电源管理驱动电路包括一个超级电容器。为了确保一个足够大的功率储备,700毫秒时间用于超级电容器作为临时电源充电。
沟通是不可能的一线总线在超级电容器充电期间,作为总线是用于超级电容器。DS18B20模块(6)定义了温度转换所需的时间取决于分辨率:94 ms的9-bit决议在12位分辨率750 ms。因此这一次是变量。OWS模块,700毫秒的时间包括超级电容器充电时间和所需的物理量转换本身。充电完成后700毫秒,启动转换。转换的结果存储在剪贴板的记忆。转换本身的长度各不相同,取决于连接传感器的类型和它的规格。通常,在几十毫秒。获取测量值,READ_SCRATCHPAD命令是用于读取测量值的9个字节从剪贴板区域并将其发送到一线总线。OWS的帧格式表中描述的解决方案3。选择9字节数据帧的长度是基于标准温度传感器DS18B20数据帧(6]。
数据帧格式为各种物理量测量显示在表中3:相对空气湿度、气压、太阳辐射强度、电电压,电流,电阻,和二进制输入。相对湿度测量数据帧包含的价值衡量湿度在第一个2字节,和其他2字节表示温度。
数据帧的测量大气压力和太阳辐射强度,第一个4字节表示测量值。当使用一个传感器测量电电压,电流,电阻,可以实现两个24位converters-the框架包含2值,每个3 b。二进制值允许读6字节的数据帧和48比特位信息,分别。每一帧的6字节序列决定了数据帧的类型。V_bus项代表OWS电源电压的值。在特定情况下,触发测量可能是能源密集型的,因此有必要检查了电源电压水平的整个占领华尔街。最后一项是CRC8校验和。
最后READ_MEMORY OWS命令。OWS的ROM存储器(图实现2CFG_ROM),额外的信息的类型被测量,测量的物理单位数量、传感器名称和存储测量物理量的极限。这个内存的大小是24字节,其内容中定义固件和以后不能改变。这额外的信息是很重要的角度实现IEEE 1451.0 [25)和IEEE Std 1451.2 (17一线总线主)标准。一线总线主人自动检测到总线上的奴隶的存在,并提供信息的传感器的数量,类型,测量的物理量,总线状态状态信息(活动/活动),和其他主机。OWS包含这些信息在一个专用的内存的一部分,可以提供给主人。
4所示。通用机的模块设计
在设计占领华尔街时,以下解决方案需求定义:(1)完全实现机的标准(2)权力独立解决方案(3)最小的能耗(4)解决方案universality-capability连接设备的通信通过已知的标准如UART、I2C、SPI的奴隶(5)的可能性实现先进的处理方法在数据从一个传感器获得的(过滤、转换等)。
要求1更详细地描述部分3这篇论文。
4.1。权力独立解决方案(24]
所有现有一线奴隶能够寄生功率模式,在总线空闲状态使用,他们可能向超级电容器,然后作为电源在通信。超级电容器是指电容器有足够的能力,可以提供电力足够长的时间的奴隶。当奴隶与沟通或测量所得。在图6,它是贴上SuperCap。同样的原理用于OWS的设计。从权力的角度来看,OWS必须符合下列条件:(我)如果电容器放电OWS是连接到一个一线总线,它必须是带电的干预控制逻辑和控制单片机,分别。(2)一旦运行所需的最小电源电压控制单片机,充电的过程是由微控制器逻辑。(3)如果一个活跃的水平(逻辑0)检测到总线,电容器的充电立即终止,OWS的主动模式切换到它与一线总线主人。(iv)交流结束后,OWS减少权力模式转换和激活电容器的充电。
4.2。最小功耗(24]
提出OWS由传感器提供测量所需的数量(湿度、压力、光强度、等等),控制单片机,一线总线控制器,电源管理整个OWS,电容在电源的作用。确保最大可能的可靠性,有必要对整个设备的功耗最小化。这是通过使用控制单片机的节电模式。
占领华尔街可能会发现在两种模式:主动模式和待机模式。在主动模式下,可以减少当前消费减少控制单片机的时钟频率。在被动模式下,消费是最小化通过关闭不必要的外围设备和开关单片机进入待机模式。
4.3。解决普遍性(24]
下一个需求是设计标准化的OWS允许连接传感器。在“标准化”,传感器通信接口是可理解的。它可以连接OWS以下:(我)传感器使用I2C接口通信、传感器等可见光和紫外线传感器BMP180 Si1145和大气压力(2)传感器使用SPI接口通信,比如24位a / D转换器AD7195(3)传感器通信使用的I / O接口单片机端口,如AM2302湿度传感器,使用自己的串行通信协议
设计多功能性是确保已经在固件设计。当添加一个新的传感器,有必要定义以下功能:Interface_Init()初始化通信接口和固定针的使用单片机和Sensor_Init()初始化过程为一个特定的传感器。测量过程本身可能更加复杂,因为在一些情况下,它包括几个读数传感器值其中必须有一定的延迟。以确保最低功耗,LP_Delay()(低功率延迟)函数用于创建这些等待延迟。Sensor_Measure()函数必须实现的水平OWS应用程序本身。这个函数是用来阻止超级电容器充电和测量传感器在正确的时间点。最后一个特点是传感器读(),它确保正确的响应数据下表的格式3。
4.4。实现先进的数据处理方法
一线总线传输速率(16.3 kbps)明显低于传感器传输速度(从100 kbps到10 Mbps)。这使得测量数据处理之前将它们发送给一线总线。数据处理的基本操作包括移动平均和低通和高通滤波器。由于OWS的方式操作,这些操作将一批在定义的时间间隔或在指定的大小的一组数据,随着活跃传感器增加整个OWS的当前消费。
4.5。硬件设计
在图6OWS的原则图所示。图的第一部分包括一个数据和电力分销商。确保连续供电,控制电源开关(PS-power开关),大容量电解电容(超级电容器)和线性稳压器(LDO-low辍学)驱动单片机和传感器连接。单片机控制超级电容器充电时没有交流是进步。
根据规范,OWS后开始充电电容器连接到一线总线没有任何干预控制的电子产品。这种情况发生在电容完全放电。单片机是不活跃的连接OWS模块和超级电容器放电后公共汽车。在达到最低电压所需的超级电容器控制单片机,控制充电激活。PS开关(图6)打开,允许充电速度最大。
为了降低整个装置的总能耗,单片机的内部A / D转换器将用于监测超级电容器电压水平。时对超级电容器的电压是没有高到足以启动单片机,超级电容器充电由模拟控制电路基于分压器的原理。
5。通用模块STM32平台上实现
OWS期间实现中,我们使用了ARM微控制器的皮层M0和皮层M0 +家庭,分别。这种选择的原因如下:足够的性能,广泛的单片机时钟设置,多个单片机节电模式,小型设计和低成本。第一个解决方案是OWS STM32F030单片机上实现。它是一个32位单片机基于皮层M0架构。最大的时钟频率是48 MHz, 4 kB RAM和16 kB闪光。微控制器支持睡眠、停止和待机模式。第二个解决方案是实现与大脑皮层M0 STM32L031单片机+架构。单片机属于超低能耗的类别,这减少了能源消耗的整体解决方案。类似的参数,与额外的权力模式:低功率运行和低功耗睡眠。
能耗参数最影响OWS是单片机的时钟频率的选择。这样做的目的是减少微控制器的时钟频率最低的频率适合OWS运行可靠。有两个限制搜索的最低极限时的时钟频率:(1)一线总线时间(2)的速度从节能模式
通信时,奴隶必须测量的时间间隔在1μ年代范围。由于使用的架构(皮层M0, M0 +)和库用于OWS固件编程,时钟频率设置为16兆赫。没有行动在备用模式下进行的,因此,单片机可以放到最低功率模式。当发起通信,当检测复位脉冲持续480年μ年代,有必要尽快唤醒单片机这正确的复位脉冲长度可以检测到。
从备用的时间标准运行模式由t_WUSTOP起床时间和t_CLOCKCFG,这是重新配置碾压混凝土所需的时间(重置和时钟控制),确保正确地设置频率对微控制器的所有部分,初始化选择的外围设备,检查电压水平的一线总线。根据(26]t_WUSTOP是5μt_CLOCKCFG是200年代,测量时间μ年代在16 MHz时钟频率。时间t_CLOCKCFG总是在给定的单片机频率相同。为了正确检测复位脉冲,因此有必要测量剩余时间t_RESET ' = 480μs - (t_WUSTOP + t_CLOCKCFG) = 275μ年代。由于额外的处理开销(系统中断的单片机核心,调用函数在处理本身),它实现了一个70年μ年代时间t_RESET宽容。当使用一个时钟频率小于16兆赫,它是不可能检测到正确的复位脉冲长度,因为时间t_CLOCKCFG将接近480μ时间,即复位脉冲持续时间。
5.1。使用低功耗模式
OWS与一线总线主人时,所使用的运行模式。单片机的时钟在16兆赫和所有必要的外围设备连接的操作。沟通终止时,微控制器切换到待机模式。STM32F0xx单片机有3节电模式:睡眠,停止,和备用。这些模式的能耗是7.3 mA, 19μ一个,2μ分别一个。只有核心的单片机停止在睡眠模式下,在停止模式,核心驱动,外围时钟停止,RAM仍然活跃。在待机模式下,只有模块负责觉醒的单片机仍然活跃。睡眠模式的消费太高了,所以这种模式将不会被使用。消费在待机模式中是最低的,但这需要很长时间才能唤醒单片机从这个模式。合适的节电模式是停止模式。
5.2。通信的实现
一线总线通信原理是主/从。总有一个主人和一个或几个奴隶在公共汽车上。沟通首先发出复位脉冲的主人。在交流中有4个基本操作:编写逻辑0,写逻辑1,读一点,复位(复位detectionfor奴隶)。在图7,这些操作的角度显示主人和奴隶。时间参数的典型值在图7如表所示4(4]。
一线的标准文档(4)指定总线时间写作和阅读从一个主视图1位。实现一个机的奴隶,必须定义为逆操作时机。写1位在公共汽车上为奴隶主人表示一个比特的阅读。
机的奴隶节点,我们定义以下时间常数:OWS_READ_WAIT和OWS_WRITE_DELAY(图7)。
1比特阅读和写作的算法是在图8。噢缩写代表的逻辑水平一线总线。一比特的阅读开始通过检测逻辑0水平一线总线。如果这个级别不是在400年发现的μ年代,错误标志设置和阅读是终止。否则,继续检测:公共汽车仍在逻辑0状态时间W_ONE或W_ZERO(图7),这取决于主发送1或0。检测逻辑0水平后,OWS是等待时间与条件:OWS_READ_WAIT W_ONE < OSW_READ_WAIT < W_ZERO。最后,等待一线总线的逻辑电平改变活动水平逻辑1。如果该值不改变逻辑1 160年μ年代,生成错误国旗和阅读是无效的。
位写算法并不复杂:在编写逻辑0时,奴隶节点把总线级别在日志中。0 (DRIVE_OW_LOW)时间OWS_WRITE_DELAY;当编写逻辑1,逻辑0-Figure水平增加的价值7。OWS_WRITE_DELAY时间必须符合以下条件: 其中MASTER_SAMPLE是时期,当主从总线上读取的值。OW_BOOSTER大师是一个特殊的时间间隔激活一线总线控制器,这立即引发了逻辑1水平。在OW_BOOSTER时期,奴隶是不允许改变一线总线级别。
下面的文本是主要的源代码片段STM32F030x单片机的C语言源代码里1)。微控制器被设置在检测逻辑0级后在一线总线从站模式切换到运行模式。随后,超级电容器充电(CAPACITOR_CHARGE_STOP)作用时,紧随其后的是一线总线(OW_slave)上的沟通。沟通操作完成时,OWS (OWS_Stop)返回停止模式。
|
||||||||||||||||||||||||||||||
5.3。权力和OWS启动
OWS不需要任何外部电源为其操作。电源在空闲模式下,它在寄生功率模式下使用通信总线电压(寄生虫的权力)。OWS的硬件解决方案的一个重要组成部分是设计一种方法来控制超级电容器充电。完全放电的超级电容器,OWS自动开始充电,直到电压达到单片机将开始的水平。电压达到这一水平后,单片机将充电过程。在图9充电电流是12马第大约17。如果超级电容器电压超过阈值水平的单片机开始操作,超级电容器充电控制开启。在这一点上,充电电流达到80 mA,打开PS开关本身造成的。当前指数依赖和呆在330年下降μ一,单片机的消费和额外的电路在停止模式。超级电容器的值是330 mF。图(图9)与STM32F030 OWS模块的单片机。使用低功耗单片机时,图形通过显著缩短不同的第一阶段超级电容器充电(与恒流部分消费)大约1 s。
完整的超级电容器的充电时间大约是3分钟。这个时间取决于超级电容器的容量。定义的充电电流
在实现中,2微控制器选择:STM32F030属于通用的微控制器和STM32L031属于低功耗的类别。单片机的充电过程是相似的,除了STM32L031可以比STM32F030引导在一个较低的电源电压。在图10,比较选定的微控制器的电力消耗。作为一个测试,命令使用CONVERT命令,启动传感器测量和READ_SCRATCHPAD命令,它读取测量值。开始时,单片机在停止模式和沟通始于0.5年代。OWS开关运行模式。处理转换命令如下:因为这个命令也可以在超级电容器没有足够的能量来提供可靠的电源一段600 ms,单片机开关LP_RUN和激活超级电容器充电。这一次后,切换到运行模式,通过阅读后传感器的值。这是由第一个峰值在图表示10。第二个峰值是READ_SCRATCHPAD命令的处理,当测量值发送到总线。这是紧随其后的是过渡到停止模式。
使用微控制器的电力消耗是在空闲状态(图3,闲置)停止模式在同一水平上。差异是在运行模式STM32L031单片机低功耗约500μ一到800μ一个。
使用能源的量可以表示为一个积分:
对电源电压不变,能源需求可以表示为能耗随着时间的推移,也就是说,作为一个电荷:
应用的关系(4)的测量值图在图10,我们得到马斯Q_F = 2.733, Q_L = 1.81马斯。Q_F或Q_L值STM32F0电荷和STM32L0微控制器,分别。因此,STM32L031单片机的功耗是66.38%的消费与使用STM32F030微控制器的解决方案。
6。执行测试
OWS的解决方案已经在实际测试机的感官micronetwork。以下参数被设置为条件测试的成功的评价:(我)沟通没有错误(2)兼容标准机的奴隶(3)即使使用长总线正确的功能
6.1。测试一个
测试使用不同的一线总线长度:150米,300米,450米和500米。40 DS18B20传感器和7 ows被连接到总线。DS18B20传感器部署在公共汽车上的10块,20和40单位直接在公共汽车上或使用3 m分支。ows被放置在3块4或7单元。
在图11,一线总线通信课程使用总线长度150米(图(11日)(图)和500米11 (b)显示)。进行了测量的一线总线主人。由于一线总线上的信号是扭曲的取决于它的长度,增加了逻辑电平比较器在主模块正确的信号处理。绿色代表信号从一线掌握比较器。这个信号直接测量印刷电路板的主人。蓝色显示信号电平在一线总线。这个值在一线总线数据的测量机的主人。第一个脉冲图如图所示11的最后一点SEARCH_ROM主节点发送的命令,要求读一点,大约在150年结束μ年代(图11)。随后,奴隶节点1位到总线上写道。在这种情况下,它是日志。1。写一些1实现这OWS释放一线总线,总线电压增加到5 V的最大价值,代表日志。1。在很长一段总线测试(图11 (b)),信号的反射(蓝色波形)的开放、电无与伦比的巴士是清楚地看到。
(一)
(b)
6.2。测试B
占领华尔街运动在空闲状态的功耗是330μ一个(图10)。当前提供的一线总线在常规操作。在交流期间,这个电流上升到1 mA STM32L0 1.5 mA STM32F0单片机。超级电容器的容量330 mF用作电源。以下测试旨在衡量消费OWS的闲置和活跃的状态。
可以使用的最大电流是来源于一线总线控制器在主端。机的主总线可以提供短期200毫安电流。主模块周期性措施一线总线电流,和沟通是不允许超过25马。人们猜测的一个连接超级电容器充电。
电容值来源于以下假设。OWS模块还可以使用当前消费较高的传感器(例如,应变仪和外部A / D转换器)。当多个OWS模块是连接到一个一线总线,所有模块都活跃在沟通和超级电容器充电很大程度是有限的。从能耗的角度,它是最难申请一线搜索算法。超级电容器充电触发为700 ms在耗能很高的传感器测量之前,这是不可能的一线搜索算法。
一线搜索算法本身以及读数的测量值需要几秒钟。超级电容器的充电10年代是不可能的。OWS负载估计为100美元Ω。增压器的额定电压为4.8 V。所需的最低电压为3.6 V。超级电容器的值计算,我们使用
从这个公式,我们将输出能力 :
后设置值(6),我们得到C= 347 mF。的特定价值330 mF容量被选为最接近的可用价值。
6.3。测试的责任
测试都是基于一个假设,即超级电容器充满电。测试开始后断开OWS的一线总线。图12显示了占领华尔街超级电容器的电压状态(Vcap)时停止模式,是在公共汽车上没有沟通。最初的电压值是Vcap = 4.8 V。测试进行了45分钟。
使用STM32F0单片机,Vcap电压40分钟之后迅速下降。根据(26),最小单片机的电源电压是Vdd = 2.4 V,低于这个水平,单片机进入一个永久的复位状态。STM32L0单片机属于“超低功率”的类别。这种单片机的最小电源电压是Vdd = 1.8 V (27),这使得它即使在低电压操作可靠。这个测试关注的能力保持在超级电容器所需电压,即使脱离一线总线。OWS的总线断开后,该模块处于停止状态。如果OWS重新连接一线总线与非零电压水平,其充电的速度也会更快。
6.4。测试B.2
另一个OWS测试旨在能耗监测的电压水平Vcap期间沟通没有超级电容器的充电控制的可能性。初始测试条件设置如下:完全充电超级电容器,测试时间10分钟。
在测试期间保持OWS在运行模式下,一个复位脉冲发送到一线总线每10毫秒,其次是SEARCH_ROM命令来确保停止待机模式没有激活。当使用STM32F0单片机,Vcap电压低于2.4 V,的极限值的正确功能单片机核心4分钟后(240秒)。5分钟后(300秒),Vcap降至2 V的电压水平,单片机复位状态,占领华尔街失去了功能。因为STM32L0单片机属于超低能耗的类别,从一线总线电源提供足够的操作。测试的结果是在图13。
大约7分钟后(420年代),超级电容器的电压保持在Vcap = 3.7 V。此外,Vcap值不会减少了。这是由于房地产的超级电容器的充电电路。在情况下,控制充电不激活,超级电容器是控电流成正比的电压差一线总线和超级电容器上的电压。占领华尔街运动开始时使用这个属性。由于低功耗,这个充电电流足以保持OWS的功能。
7所示。讨论
从能效测试,我们可以清楚地表述STM32L031单片机的使用消除了条件,在占领华尔街不会函数由于耗时的沟通(存在几十个传感器)一线总线和低电压水平在超级电容器。作为最后一个测试证明,OWS可以部分甚至在通信失效控制充电时充电。这是通过设计一个充电电路,控制充电时释放,提供超级电容器电流正比于超级电容器上的电压差和一线总线。
测试B.2条件只能很少发生在实时操作,因为只有重置和SEARCH_ROM命令被用于这个测试。在实践中,SEARCH_ROM命令之后的命令控制CMD(表2),例如,转换。这个定义之前测量传感器,控制增压器收费为700 ms(图被激活5),这是足以完全电荷超级电容器。与修改测试B.2重复运行条件:重置,SEARCH_ROM,转换,READ_SCRATCHPAD周期性发送到一线总线。转换命令的一部分是700 ms超级电容器充电时暂停。在这个修改测试,超级电容器上的电压降是ΔV= 0.05 V电压并没有任何进一步的下降。
8。结论
本文提出了一个通用机的模块的设计和实现。这个模块是特殊的,因为它在寄生功率模式下工作,因此不需要外部电源。建议的解决方案包括控制单片机STM32F030F4或STM32L031F6,超级电容器作为一个电源、一线总线控制器和传感器测量所需的物理量。在设计和实现阶段,一个伟大的重点是放在整个模块的低功耗。低功耗的需要将模块的方式:使用数十个传感器可以连接到一线总线。更节能的解决方案是使用STM32L031单片机,因为在运行模式有33.62%(基于(4),部分5)与STM32F030单片机低功耗比。
这个解决方案的独特性在于一线总线的通用机的模块的实现。使用不同的传感器类型,除了一个温度传感器,没有解像机的奴隶,可用。没有一线协议修改的实现也没有任何新的家庭代码或添加新的机的函数代码。解决方案是与一线标准完全兼容。拟议的占领华尔街运动包含标准DS2401标识符是一个独特的标识符与一组READ_ROM SEARCH_ROM, MATCH_ROM命令。OWS实现扩展了这组SKIP_ROM, COPY_SCRATCHPAD, READ_SCRATCHPAD READ_MEMORY和转换命令。OWS标准接口连接外部传感器。测量在这些传感器触发使用标准的转换命令。OWS包含一个只读存储器,存储关于类型的附加信息的测量,测量的物理单位,名称的传感器和测量的物理量的极限。使用这些信息一线主提供一线总线传感器的详细概述。 The OWS was tested in real-time operation along with other sensors on a 500-meter 1-wire bus. After successful tests, OWSs were permanently put into operation. There are 15 OWSs with relative air humidity sensors with another 100 DS18B20 sensors installed in the monitoring system of temperature and relative air humidity of production halls and office spaces. This solution works flawlessly in continuous operation, where data are read every 10 minutes for more than 1 year.
的利益冲突
作者宣称没有利益冲突有关的出版。
确认
这份出版物是项目实施的结果:“大学科学园区:校园MTF STU -柬埔寨人”(itm: 26220220179)支持的研发运营EFRR资助的项目。这份出版物是项目实施的结果:“Priemyselne vyskumno-vyvojove中枢”TRENZA”“(itm: 313011 b622)支持的研究与创新运营ERDF资助的项目。这份出版物是项目实施的结果:“Vyskum vyvoj novej generacie ekologickych veľkokapacitnych systemov vyroby一skladovania obnoviteľnej科特布斯”(itm: 313011 b778)支持的研究与创新运营ERDF资助的项目。