摘要: 通过微型互联网接口(MxTNI )平台,1-Wire 传感器和适当的Java 软件的组合,可以轻松创建基于ip的网络化传感器监视器。MxTNI平台提供TCP/IP网络堆栈和设计基于IP的网络传感器所需的本地控制功能。所包含的Java运行时环境和1-Wire外设接口库允许使用1-Wire设备轻松控制和通信。
通过微型互联网接口(MxTNI )平台,1-Wire 传感器和适当的Java 软件的组合,可以轻松创建基于ip的网络化传感器监视器。MxTNI平台提供TCP/IP网络堆栈和设计基于IP的网络传感器所需的本地控制功能。所包含的Java运行时环境和1-Wire外设接口库允许使用1-Wire设备轻松控制和通信。
这个应用程序说明演示了一个基于ip的网络温度监控器,它带有一个可下载的applet控制接口,可以在支持Java的浏览器中执行。它采用MxTNI验证模块和DS1920我按钮 或DS1820 1线温度传感器。小程序控制传感器并显示采集的时间和温度样本。该小程序通过浏览到MxTNI的IP地址自动下载,并使用MxTNI运行时环境提供服务。
设备微型网络接口(MxTNI)平台提供TCP/IP网络堆栈和设计基于IP的网络传感器所需的本地控制功能。所包含的Java运行时环境和1-Wire外设接口库允许使用1-Wire设备轻松控制和通信。这个应用程序说明演示了一个基于ip的网络温度监控器,它带有一个可下载的applet控制接口,可以在支持Java的浏览器中执行。它采用MxTNI验证模块和DS1920我按钮或DS1820 1-线温度传感器。小程序控制传感器并显示采集的时间和温度样本。该小程序通过浏览到MxTNI的IP地址自动下载,并使用MxTNI运行时环境提供服务。
此应用程序使用TINIm390或TINIm400验证模块。DS1920连接到MxTNI的外部1线总线。MxTNI提供以太网连接,并充当1-Wire主机。
MxTNI Runtime Environment的API支持带有适配器库的1-Wire设备,以及暴露其各自功能的1-Wire特定容器。该应用程序使用DSPortAdapter和OneWireContainer10,它们包含与DS1920通信所需的方法。要开始1-Wire通信,MxTNI请求默认适配器:
DSPortAdapter ourAccess = OneWireAccessProvider.getDefaultAdapter ;
接下来,MxTNI瞄准1-Wire设备所需的族代码(在本例中为0x10),并接收对其容器的引用。
ourAccess.targetFamily(0x10);ourAccess.findFirstDevice ;
有了引用的容器,MxTNI现在可以访问DS1920的所有功能。的特点我按钮使用下面的方法公开给应用程序。
getTemperature(byte[] state);setTemperatureAlarm(int alarmType, double alarmValue, byte[] state); isalarm ;(继承自OneWireContainer)
要感知温度,读取状态信息我按钮,然后使用它来执行温度测量,方法是调用doTemperatureConvert,然后调用getTemperature来读取转换后的温度。
DS1920具有内置的高温和低温报警,可以通过编程设置,当测量的温度值超出设定范围时通知主控。要使用温度告警,请使用传递给TemperatureContainer的setTemperatureAlarm方法进行设置。ALARM_HIGH或TemperatureContainer。参数“ALARM_LOW”,以及新的告警值和状态。在容器上调用isalarm方法允许您监视所设置的警报的状态。
在这个应用程序中,ButtonControl.java处理温度样本,而AlarmMonitor.java检查告警。
MxTNI为传入的HTTP请求实现了一个简单的web服务器。图1显示了客户机和服务器之间的交互。它被分成四个线程,显示MxTNI温度服务器的各个部分。它通过一个包含嵌入式applet的简单HTML索引页为连接提供服务。该小程序由客户端下载,用于控制温度采样和显示数据。web服务器由TempButtonHost.java实现。
MxTNI还维护一个等待入站连接的服务器套接字。当建立连接时,SockListen.java破译命令并调用TempCommand.java来执行它。TempCommand调用所需的方法来执行命令,并在必要时使用appltcomm .java将信息发送回客户端。
图1所示。Applet和MxTNI软件流程图。
图2。Applet和MxTNI流程图继续。
MxTNI使用SampleHold.java维护一个时间和温度缓冲区,该缓冲区在MxTNI的文件系统中存储多达300个样本,因此样本数据是持久的。SampleHold使用RandomAccessFile来保存检索时间和温度采样应用程序所需的所有信息。
显示的控件小程序如图3所示。该applet的主要目的是控制DS1920的采样,并以有意义的格式显示采样。根据当前的告警情况,图形显示了红色、蓝色和黑色之间的变化。MxTNI的当前温度显示在图表下方;华氏温标和摄氏温标都有。该图表沿温度和时间轴可伸缩,使采样数据更容易解释。当范围正确时,图表上显示了高跳闸点和低跳闸点,高跳闸点为红色,低跳闸点为蓝色。这些从控件调整到图形的右侧。applet还可以控制在给定时间段内采样的数量。它还提供了启动和停止采样、清除缓冲区和关闭温度服务器的控件。如果收到关闭命令,则保存所有applet配置数据,以便applet可以跨会话保持状态。
图3。温度控制小程序。
Applet由几个类组成:
java是实现AWT内容的主要类。
java实现了温度与时间的关系图。
tiniccomm .java, TiniListen.java用于MxTNI和applet之间的通信。
使用MxTNI Runtime Environment和1-Wire库,可以轻松创建复杂的温度采样设备。这个应用程序展示了MxTNI如何最好地用作远程接口设备,用于获取和存储样本,并将这些数据提供给客户机,以处理显示数据的计算密集型任务。
社群二维码
关注“华强商城“微信公众号
Copyright 2010-2023 hqbuy.com,Inc.All right reserved. 服务热线:400-830-6691 粤ICP备05106676号 经营许可证:粤B2-20210308