基于嵌入式的远程测试控制技术

发布者:shiwanyongbing最新更新时间:2007-03-14 来源: 现代电子技术关键字:网络  接口  通信  协议 手机看文章 扫描二维码
随时随地手机看文章
以往采用邮寄或本地维修为主的通信设备测试、维修方式,因为在业务力量、时间、经费、效率等方面存在诸多弊端,已逐渐不能满足实际要求。随着通信测试及网络技术的迅猛发展,通过互联网络,将本地故障设备的测试结果传送到远端,由远端的专家进行诊断,充分发挥二者的优势,能极大地提高维修效率、缩短维修周期、节约维修成本,是对常规维修模式的一种挑战。该方案原理比较清晰、易懂,实现起来较容易。本文所讨论的远程控制就是为解决这个问题而提出的。

1 总体方案

本应用是在测试终仪中增加网络接口模块,以互联网为传输平台,在远端接入诊断PC而实现远程控制及诊断功能的,其框图如图1所示。

诊断专家人员可在诊断PC上通过Internet向异地测试仪发送指令,测试仪接收并按照指令要求完成对故障设备的自动测试,将测试数据通过网络传回诊断PC,建立数据实时交互的传输平台[1]

2 基本原理

2.1 互联网的基本结构和特征

设备的远程监测诊断是计算机科学、通讯技术与故障诊断技术相结合的一种新的设备故障诊断模式。TCP/IP是发展至今最成功的通信协议。该协议分为4层,由上到下依次为应用层、传输层、网络层和链路层。

本应用使用的是EM2000网络模块,底下3层的较复杂的协议已经固化在他的ASIC中,能够实现透明的数据通信。这样,研究工作主要集中在应用层的设计和功能实现上。这包括建立在传输层上的数据帧定义、交换数据的定义、应用功能的设计和人机交互界面的设计等。

本应用中使用的是EM2000网关,他是用来在嵌入式系统与互联网建立数据连接和协议转换的设备。一方面PC端的网络应用程序将应用层数据打包成为IP包在网络上传送,EM2000将辨识和解析这些数据包,把应用层的原始数据转发至RS 232接口。另一方面EM2000也将RS 232接口的数据封装成为IP包,传送至PC端的网络应用程序。支持透明传输和简单协议两种工作方式;EM2002网关在网络接口部分具有WWW接口,用户可以通过浏览器在网络上实现对EM2002及串行设备的配置和管理。在网络中的具体位置如图2所示。

2.2 传输帧的定义

下面主要考虑第4层应用层的具体使用,即数据传输的帧格式、具体的定义等。根据本测试设备的状态和显示的功能,其格式可设计成2大类,即测试数据帧和命令控制帧。格式的设计应能实现系统对端间信息的无障碍交流、易于识别和判断,同时,还应保证传输的可靠性,兼顾信息利用率。对该系统,经过实际信息交互统计,确定使用一个字节的长度,即256种状态。

(1)帧类型定义

传输帧格式的定义如表1所示。第7位为类型定义位,“1”表示为数据帧;“0”为命令控制帧。

(2)数据帧

数据帧格式的定义如表2所示,主要用来传送检测的数据结果。根据需检测信道数量和检测项目来设置数据帧的字节。本系统设置8个数据信道,8个测试项目和“正常”/“故障”2个参数。

对于数据帧,考虑到本设备测试信道的数量和测试项目的多少,兼顾处理速度的快慢和复杂程度,最后确定信道号范围为0~7,占用数据帧的第6位至第4位,以二进制表示,高位在前,低位在后;测试项目范围为0~7,占用数据帧的第3位到第1位,表示方式同上(根据需要,以后扩容时,适当增加字节即可)。数据帧的最后一位定义为测试结果,“0”表示正确无误,“1”表示故障。这里没有采用通常的校验位,主要是因为该通信速率较低,目前网络传输的可靠性非常高,这方面可以忽略,以提高处理效率,简化程序编写难度。

(3)命令控制帧

命令控制帧的格式定义如表3所示。字节的最高位固定为“0”,主要用来传输测试终端和远端诊断终端的控制命令和设备状态信息。

命令控制帧按传送方向不同,可分为命令控制字和状态表示字2种。对于命令控制字,第6位到第4位为“101”,是命令识别位;后4位为命令代码,表示不同种类的测试进程。测试平台将自动返回相应的信息,其帧格式为第6至4位为“001”,这是信息数据的识别位,其余位为不同类型的定义。对于硬件复位命令,测试端返回1EH;链路检测为1FH。

3 具体实现

3.1 网络接口设计

嵌入式系统和微型计算机系统一样,必须通过TCP/IP协议转换才能接入Internet。在这里数据通信的设计主要体现在串口的设计[2],将MCU的数据按照预先定义的格式通过与转换芯片连接的串行接口发送或接收即可。设计中只要MCU的串口和EM2000网关的交换速率匹配即可,按照字节方式逐字发送和接收。另外,EM2000网关的接口电平与TTL兼容,这就省略了电平变换电路,使得设计实现起来更简便。

3.2 MCU的软件设计

嵌入式MCU系统软件主要由MCS-51汇编程序编写。为了实现本地键盘控制与异地远端控制同步工作,需要对部分软件进行重新编写。主要包括初始化程序、扫描程序、执行程序、串口中断调用程序、协议翻译程序等。

(1)存储单元初始化的特殊要求

众所周知,测试主程序首先对系统所用变量进行初始化,包含堆栈栈底的指针设定、寄存器、状态字的初始值设定、串口模式/状态字的初始设置等,但在这里由于远程通信的特殊情况,具有特殊要求。虽然部分存储单元在从加电到复位完成时,单元值已经被置位,但是仍需再置位。这主要考虑当在平台运行期间,各个寄存器和存储单元都会有不断变化的新值存入,这样,当进行远端复位操作时,有些存储单元的值不会自动复位,如果按原程序执行就会发生不确定的问题。为保证存储单元内容的一致性和可控性,对寄存器空间进行初始化是必不可少的。

(2)子程序间的通信机制

在处理键盘控制和远端控制同步运行时,嵌入式实时操作系统常采用邮箱查询方式。首先扫描及防抖程序[3]负责对键盘的操作进行扫描,经消除抖动和干扰影响后,将键盘值放入35H,并向邮箱发送“键盘动作事件”的信件;同时,串口通信程序不间断扫描端口数据,如果判断有命令数据注入,则将命令值放入36H内,同时向邮箱发送。串口命令发生事件”的信件。这样通过对主程序信箱的查询,如果发现有信件存在,则对信件进行相应翻译,变成机器可以执行的代码,对设备进行动作调度和相关信息处理。

3.3 TCP/IP端口配置

TCP/IP端口相当于挂在Internet网上的一块标准网络设备,具有惟一的全球识别MAC地址,可以接入任意的网段而不受限制。在配置网络参数时,只要知道通信双方的网络IP和路由,即可以轻松实现网络连接。该模块设置了1 B的缓冲区,通信速率为2 400 b/s,提高了IP包传输效率。

3.4 远端诊断终端的设计

远程诊断终端主要为软件程序设计,该部分采用Visual Basic,HTML等语言进行编写,主要分为2个部分。

(1)通信模块配置网页的设计及上传

在远程测试之前,需要对通信模块相关参数进行网络配置,使远程软件能够对测试终端进行访问和控制操作。本设计采用HTML语言编写了Web网页风格的界面,上载至模块FLASH存储器,用户可通过浏览器对硬件访问和网络配置。为加强保密安全,还增添了Password入口参数的设置。

(2)远端终端主程序的设计

主程序采用Microsoft Visual Basic语言编写,主要功能包括控制和测试2部分。测试前,先输入分配到的IP地址与要侦听的端口号,然后根据网络状况,利用VB语言中WinSock插件的Connect方法在本地计算机与测试平台之间建立一个Socket,以便完成控制等数据的传送和接收。各项操作的运行状态和操作结果都将由当前状态框实时显示。当本地计算机与远程测试平台连接正常之后,便可以开始测试。

4 应用验证

首先测试通信模块,在单台计算机上建立2个超级终端,一个与串口建立连接,另一个与Socket建立连接。在超级终端的一窗口内输入数据,另一窗口即时响应,说明网络接口模块功能正常。其次测试MCU串行通信性能,通过电平转换电路建立与计算机的串口连接,用超级终端进行数据传输验证。完成后,对全系统进行联调,先进行直连试验,即将测试终端与诊断终端通过交叉网线直连,验证功能的正确性;然后将测试平台接入Internet网,通过异地连接,验证功能的正确性。目前,经过多项调试验证,能够建立诊断终端与测试终端的连接,并可进行异地的各项状态显示、控制测试、复位等功能,实现了原设计目标。

5 结 论

本文介绍的方法,能够非常容易地实现将嵌入式系统与互联网相连。研发人员不用精通TCP/IP协议和具体的网络知识,即可以设计出具有网络功能的电子产品,大大缩短开发周期。该方法在远程监测、网络监控、远程诊断等方面具有很大的应用空间。目前,该项技术正在向单位相关领域推广。

关键字:网络  接口  通信  协议 引用地址:基于嵌入式的远程测试控制技术

上一篇:实时操作系统μC/OS-II在MCF5272上的移植
下一篇:基于DSP的PCI总线数据采集系统的研究

推荐阅读最新更新时间:2024-03-30 21:23

基于CAN总线的电梯群控系统的通讯接口设计与实现
一、引言 在许多高层建筑中,通常都安装了多部电梯,为了提高这些电梯的运行效率和服务质量,需要用电梯群控管理系统来对其进行合理的调度和管理。电梯群控的主要功能是调度和管理各部电梯,指定电梯服务楼层,改变原先由于电梯的单独控制而造成的楼层分布不均,资源浪费,电梯损耗不均匀等状况,电梯群控对于改善电梯的运行效果,具有十分重要的作用。一个电梯群控系统需要进行大量的数据交换, 如各电梯轿厢内的选层信号、应答选层的指示灯信号、显示电梯当前位置的指示灯信号和厅外召唤信号等,这些信号随着电梯的数量和楼层的增多而迅速增加。电梯群控系统通讯的主要特点是节点多、距离长、信号变化慢以及对抗干扰能力的要求高等。 目前对于电梯群控系统通讯方式而言,占主导地
[嵌入式]
带有以太网接口的蓄电池化成监控系统的设计
  1引言   蓄电池极板的化成丁艺是蓄电池生产过程中的重要一环。所谓化成是指过对极板充放电过程,即利用电化学反应使电能转化成化学能储存起来。蓄电池的化成充放电过程是一个在外加电压下复杂的化学反应过程,需要监控系统对极板电流电压值进行监视并对充放电参数不断调整。一般一个蓄电池生产厂有上十台甚至上百台化成充电机在各自控制系统的控制下同时运行,而这些控制系统通常以RS485/CAN总线连接,通过串口与上位机实现主从式通信。随着网络化日益普及,出现了底层依然采用RS485总线连接,而留出以太网接口直接用于与企业内部网连接。这里重点讲述以太网连接的实现过程。   2监控系统的组成及原理   该系统以AVR为主控制核心,由CS5
[单片机]
带有以太网<font color='red'>接口</font>的蓄电池化成监控系统的设计
Qualcomm与三星修订长期交叉许可协议
集微网消息,高通今日宣布,已扩大其与三星签订的全球专利交叉许可协议,覆盖移动终端和基础设施设备。修订后的协议与Qualcomm在全球的基于整机的专利许可模式相一致。作为协议的一部分,三星将停止其对于Qualcomm在首尔高等法院对韩国公平贸易委员(KFTC)决定进行上诉一案的干预。 Qualcomm Incorporated首席执行官史蒂夫·莫伦科夫表示:“多年来,Qualcomm与三星拥有牢固的合作伙伴关系,除延续我们作为三星关键产品供应商的合作关系外,我们很高兴通过修订交叉许可协议进一步增强并拓展双方关系。” Qualcomm执行副总裁兼技术许可业务(QTL)总裁亚力克斯·罗杰斯表示:“经历韩国公平贸易委员调查后,我们相信此次
[手机便携]
串行AD转换器TLC2543与51单片机的接口设计
  TLC2543是11个输入端的12位模数转换器,具有转换快、稳定性好、与微处理器接口简单、价格低等优点,应用前景好。由于它带有串行外设接口(SPI,Seri-al PeripheralInterface),而51系列单片机没有SPI,因此研究它与51单片机的接口就非常有意义。 1 TLC2543的引脚及功能   TLC2543是12位开关电容逐次逼近模数转换器,有多种封装形式,其中DB、DW或N封装的管脚图见图1。引脚的功能简要分类说明如下。 I/OCLOCK:控制输入输出的时钟,由外部输入。   DATAINPUT:控制字输入端,用于选择转换及输出数据格式。   DATAOUT:A/
[单片机]
串行AD转换器TLC2543与51单片机的<font color='red'>接口</font>设计
泰克推出TTR500系列USB VNA,强势进入矢量网络分析仪市场
中国北京2016年4月26日讯 – 全球领先的测试、测量和监测仪器提供商——泰克科技公司日前推出TTR500系列USB矢量网络分析仪,这是泰克不断发展壮大的基于USB的颠覆性RF测试仪器产品组合中的又一最新力作。与泰克倍受瞩目的基于USB的频谱分析仪一样,最新推出的TTR500系列提供了无可比拟的低价位、高性能组合,其价格比同等产品低40%,提供了122 dB的动态范围和6 GHz的频率范围。它还拥有多种高级功能,如最新VectorVu-PC分析软件及同类产品中唯一为测试有源器件提供有内置T型偏置。 对经济型VNA有着迫切需求的市场之一是物联网(IoT)设计和教育市场。VNA可以协助IoT设计人员更好的符合蓝牙、WLAN、RF
[测试测量]
芯原的神经网络处理器IP获百余款人工智能芯片采用
客户数量突破50家,用于其100余款人工智能芯片,应用在10个主要市场领域 2021年11月12日,中国上海- 领先的芯片设计平台即服务(Silicon Platform as a Service,SiPaaS®)企业芯原股份 今日宣布其面向人工智能应用的神经网络处理器(Vivante NPU)IP取得了里程碑式的市场成绩:已被50家客户用于其100余款人工智能芯片中。这些内置芯原Vivante NPU的芯片主要应用于物联网、可穿戴设备、智慧电视、智慧家居、安防监控、服务器、汽车电子、智能手机、平板电脑、智慧医疗这10个市场领域。 芯原的Vivante NPU是性能优异的计算机视觉和人工智能处理器,采用了可编程、可扩展、低
[嵌入式]
STM32串口通信中使用printf发送数据配置方法
在STM32串口通信程序中使用printf发送数据,非常的方便。可在刚开始使用的时候总是遇到问题,常见的是硬件访真时无法进入main主函数,其实只要简单的配置一下就可以了。 下面就说一下使用printf需要做哪些配置。 有两种配置方法: 一、对工程属性进行配置,详细步骤如下 1、首先要在你的main 文件中 包含 stdio.h (标准输入输出头文件)。 2、在main文件中重定义 fputc 函数 如下: // 发送数据 int fputc(int ch, FILE *f) { USART_SendData(USART1, (unsigned char) ch);// USART1 可以换成
[单片机]
Ceva 加入 Arm Total Design 加速开发面向基础设施和非地面网络卫星的端到端 5G SoC
Ceva PentaG-RAN与Arm Neoverse计算子系统相结合,降低5G SoC开发成本并缩短上市时间,从而使双方客户受益 帮助智能边缘设备更可靠、更高效地连接、感知和推断数据的全球领先硅产品和软件IP授权许可厂商 Ceva公司宣布加入Arm Total Design ,旨在加速开发基于Arm® Neoverse™计算子系统(CSS)和Ceva PentaG-RAN 5G平台的端到端5G定制SoC,用于包括5G基站、Open RAN设备和5G非地面网络(NTN)卫星在内的无线基础设施。 Neoverse CSS 是经过优化、集成和验证的平台,能够以更低成本和更快上市时间实现定制硅片设计。 它与Ceva
[网络通信]
Ceva 加入 Arm Total Design  加速开发面向基础设施和非地面<font color='red'>网络</font>卫星的端到端 5G SoC
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
最新工业控制文章
更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved