安畅网络获得十亿元D1轮融资,腾讯领投
06-18
1简介 在钢丝绳探伤中,必须实现检测传感器到存储器的数据交换。
USB移动存储器具有方便携带、运行速度快、成本低等优点。
随着其技术的发展和广泛应用,如何利用单片机控制来完成移动存储的过程已成为工业控制领域的热门话题。
2 USB 功能模块介绍 2.1 模块概述 USB[1]是轮询总线,主控制器发起所有数据传输。
连接到 USB 的外设通过主机调度和基于令牌的协议共享 USB 带宽。
目前,大多数Host功能角色都集成在各种类型的PC(或上层机器)上。
各种基于USB的移动设备,包括USB移动存储器、带有USB接口的数码相机等,都集成了USB Slave功能的角色。
这样一来,这些作为USB Slave的USB接口的数字设备就无法在嵌入式系统中使用了。
解决这一问题的根本途径是在需要使用USB设备的嵌入式系统中集成USB Host功能模块,使其具备与USB Slave设备传输数据的能力。
MemMaster[2]模块具有此功能。
MemMaster 作为 USB 系统中的 Host 设备,拥有一个 Root HUB,允许用户作为 Slave 访问 USB 移动存储。
MemMaster模块符合USB 1.1协议规范,支持所有基于USB的可移动存储器,并支持FAT12和FAT16文件系统。
MemMaster模块可以以模块的形式通过总线集成到用户的数据采集和其他系统中,这样用户就可以通过模块将获取的数据以文件的形式保存在移动存储器中,以便需要时可以在PC上进行处理。
MemMaster 集成到用户系统后,表现为用户系统的外置双口 RAM。
用户系统通过向外部RAM的指定区域写入命令和相应数据来控制MemMaster模块的操作,并从指定区域读取响应和相应数据以获得MemMaster模块提供的服务。
这样双方就实现了协议交互。
2.2 硬件配置 MemMaster支持USB 1.1标准,最大写入速率为KB/s(与测试环境有关),输入电压为5V,工作电流为mA(不包括USB移动存储器)。
INTR引脚作为RAM到单片机的中断信号,BUSYR作为RAM的工作信号,SEMR作为同步信号,CER作为片选信号。
其他引脚这里不再详细描述。
2.3 接口使用 MemMaster 采用双口 RAM,通过总线直接连接到用户的微控制器系统。
因此,对于用户的单片机系统而言,MemMaster表现为一个外部RAM,RAM中有些区域不能使用,有些区域用于协议命令和数据交互,其余部分可以由用户控制。
在双口RAM中,区域分配如下: 0x0xF8F区域已被系统占用; 0x5F80-0x5FBF,共64个字节用于存储系统命令; 0x5FC0-0x5FFF,共64个字节,用于存储系统Response; 0x0xDFFF共8个字节用于存储数据部分; 0xE0xFFFD是用户系统可用的区域; 0xFFFE-0xFFFF 两个字节作为系统协议交互指令,不能供用户用于数据存储。
用户系统与MemMaster系统之间的协议交互命令包括两种类型:命令和响应。
命令从用户系统发送到MemMaster系统,而响应则以相反的方向从MemMaster发送到用户系统。
具体实现详见第四节。
3 系统设计 3.1 系统工作原理 如今,钢丝绳的应用越来越广泛。
为了保护人身和财产安全,还开发了钢丝绳探伤仪器。
目前钢丝绳探伤大多采用PC机作为检测数据的接收和存储设备,但成本较高且携带不方便。
这里,利用MemMaster模块将现场巡检数据存储到移动存储器中克服了这些缺点,提高了系统的成本效益。
系统工作原理描述如下:当检测传感器开始工作时,输出脉冲信号作为控制电路的同步信号,同时检测钢丝绳的三路参数数据(模拟信号)。
当控制电路获得同步信号时,开始A/D转换并获得转换结果。
系统处理数据后判断是否存在断线,如有则发出报警。
同时,将数据写入移动存储器中控制电路上电时创建的文件中,以供将来分析处理。
3.2 系统配置 这里,A/D转换器件使用MAX[3]。
MAXl86将8通道模拟开关、大带宽跟踪/保持电路、12位A/D转换器和移位寄存器集成到一个20引脚双列直插式芯片上,消除了传输误差,并提高了采样精度和转换精度得到改善。
其体积小、转换速度快、转换精度高、功耗低,采用5V单电源或V双电源供电。
模拟输入可通过软件设置为单极或双极以及单端或差分输入转换模式。
其SCLK引脚作为时钟信号输入,作为片选信号输入,DIN??作为串行信号输入,DOUT作为串行信号输出。
系统上电后,需要创建接收文件。
文件的创建时间由 DS[4] 提供。
DS是美国DALLAS公司推出的一种高性能、低功耗带RAM实时时钟电路。
它可以计时年、月、日、星期日、时、分、秒。
具有闰年补偿功能,工作电压为2.5V~5.5V。
它采用三线接口与CPU同步通信,具有主电源/备用电源双电源引脚,还提供对备用电源进行涓流充电的能力。
其I/O引脚作为数据输入输出,作为复位信号输入,SCLK作为时钟信号输入。
微控制器采用Winbond的W78E58B[5],这是一款包含32KB Flash/EEPROM的8位微控制器。
其引脚功能与该系列单片机完全兼容。
系统连接图如图1所示。
4 软件设计 为了使各部分硬件电路按一定的顺序工作,用C51编写的应用程序固化在单片机的程序存储器中,包括系统初始化程序、时间参数采集程序、文件创建程序、A/D转换程序、报警分析程序、数据写入程序。
软件采用模块化设计,将各个功能划分为独立的模块。
其中,A/D转换程序放在中断程序中。
程序流程图如图2所示。
4.1报警算法分析 钢丝绳断丝检测信号是叠加在噪声背景上的局部区域异常信号。

为了对断线进行报警,首先应将其与检测信号分离。
根据报警的实时处理要求,断丝检测信号的提取方法应简单、计算时间短、占用内存空间小。
下面给出了超出极限方法的峰峰值。
峰峰超限法利用局部异常信号波形的峰谷差特征来提取断线检测信号。
从信号波形来看,检测信号是由大量的局部峰谷组成的,检测信号的每一个微小部分都会有一个完整的峰谷波形信号。
峰峰值定义为某个局部峰谷波形信号的峰值与谷值之差的绝对值。
当某个局部峰谷波形信号的峰峰值超过阈值时,则认为是局部异常波形信号。
基于磁学的钢丝绳断丝检测中,检测信号波形是完整的局部峰谷波形,这是由断丝断口处漏磁场的分布以及充磁体的结构和结构决定的。
当检测元件的放置位置选定时,断线检测信号将是单个正峰值信号,并且该信号的峰峰值远大于相邻信号波形,因此很容易提取采用峰峰值超限法。
假设vn,n=0,1,2,3,4,是5个连续的局部极值点。
程序中,我们判断:when ( (v[1]-v[2])>3* (v[1]-v[0]))&&((v[3]-v[2])>3 *(v[3]-v[4])&&(v[0]-v[2]>26)&&(v[4]-v[2]>26),报警。
4.2 USB数据存储编程 在接口使用中,介绍了用户系统与MemMaster系统之间的协议交互命令,包括命令和响应两种类型。
让我们详细解释一下命令/响应消息。
Command/Response消息用于发送一条消息,在用户系统或MemMaster系统要发出的Command或Response以及相应的数据准备好后,对方(MemMaster或用户系统)发出的Command或Response已准备就绪,可以开始执行。
该消息通过向双端口 RAM 的 0xFFFE 或 0xFFFF 地址写入/读取数据来完成。
该消息是通过中断来实现的,即:对于用户系统来说,当数据写入0xFFFE时,通知MemMaster有命令需要执行。
当系统进入中断程序并确定后,表示MemMaster已经完成命令并准备好响应,可以进行下一步。
此时中断从0xFFFF被清除。
目前,系统定义写入0xFFFE和从0xFFFF读取的值都是0x01。
参考代码如下[6]: #define DPRAMRInt ((char*)0xFFFF) #define DPRAMLInt ((char*)0xFFFE) #define SEND_SYSCMD *DPRAMLInt = 0x01 void service_int1() Interrupt 0 /*外部中断0*/ { bRecvResp = *DPRAMRInt; } 文件创建函数如下说明用户系统和MemMaster系统如何实现Command消息传输(Response消息类似)。
void CreateFile(unsigned char nm) /*nm用于判断文件是否存在*/ { CreateFileCmdPkg* crCmdPkg; /* CreateFileCmdPkg是一个创建命令包,包括创建命令* / crCmdPkg=(CreateFileCmdPkg*)Command; MemSet((char*)crCmdPkg,0,64); MemSet(crCmdPkg->FileName,0x20,8); crCmdPkg->CommandCode =SYS_CREATE_FILE; /* SYS_CREATE_FILE 为创建命令码*/ crCmdPkg->FileName[0]='T'; crCmdPkg->FileName[1]='A'+ nm; /* FileName 为文件名*/ crCmdPkg->ExtensionName[0]='S'; crCmdPkg->ExtensionName[1]='H'; crCmdPkg-> ExtensionName[2]='J'; /* ExtensionName为后缀名*/ crCmdPkg->FileAttr=0x20; crCmdPkg->CreateTime[0]=min; crCmdPkg-> CreateTime[1]=小时; /* CreateTime 为创建时间*/ crCmdPkg->CreateDate[0]=日期; crCmdPkg->CreateDate[1]=年份; /* CreateDate 为创建日期*/ /* 分钟、小时、日期、年份根据 DS 提供的数据计算得出*/ crCmdPkg->选项=0x00; bRecvResp = 0; SEND_SYSCMD; /*发送命令消息*/ cs_ram=1; /*取消双口RAM芯片选择*/ Delayms(10) /检测系统对被测钢丝绳进行磁化,利用敏感元件检测钢丝绳断丝处的漏磁场,从而确定是否有断线。
然后利用计算机和相应的软件分析漏磁场的波形以进一步判断。
通过光电编码器确定断丝数量,以及对应的断丝位置。
实验中选取24(6×7)根钢丝绳样品,在指定位置制作断丝。
实验分为两组,每组50次。
该系统用于测量。
实验分析结果如表1所示。
(误检断丝数为0时)断丝定量准确率为95%;当允许误判一根线时(误检断线数为-1、0、1),断线定量判断准确率为95%。
%,因此满足工况要求。
同时报警系统还提供断丝实时报警 6结论 钢丝绳检测系统要求的检测速度为每秒0~数据,本装置完全有能力。
胜任,同时保证测量的准确性。
设备可以按照指定格式存储数据,并动态检测移动存储器中是否存在同名文件,并自动添加文件,无需人工干预即可实现多次检测。
,使用极其方便。
同时报警系统可以对断线进行实时报警,便于实时处理。
本装置将USB标准应用于钢丝绳检测系统,适应计算机的发展趋势,携带方便。
具有运行速度快、成本低、存储容量大、效果好、应用前景广阔等优点。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签:
相关文章
06-18
06-08
最新文章
PCBA质检员的日常工作内容
美国法院裁定VoIP不属于电信服务,需征税
雷达嵌入式工控主板如何使用?工控主板故障分析
摩托罗拉在西班牙促销Z8手机
中宇买下了一台三星机型,品牌和规模是合作的主要原因
舰载军用加固计算机热设计
谷歌开始对仍由HTC生产的谷歌手机进行内部测试
英国EE分享LTE发展经验教训,面临终端-语音-回传三大挑战