非接触IC卡时间控制阀设计

2014-04-03 02:24
自动化仪表 2014年7期
关键词:IC卡扇区控制阀

(内蒙古科技大学信息工程学院,内蒙古 包头 014010)

0 引言

时间控制阀是按照未来具体时刻对安装在管道中阀门的开度进行控制的一种装置。通过对阀门开度的控制,可以直接控制管道中介质的流量。目前,工业和民用领域所使用的控制阀的控制方式大多采用人工手动操作或自动操作方式。自动操作方式为4~20 mA直流信号或按照某种通信协议采用RS- 485数字信号的远距离传输控制方式。这些控制方式适合工业生产中的控制系统实现自动化生产,其开度控制一般需要控制仪表或包含计算机板卡在内的工业计算机。

目前,我国在许多领域广泛存在着需要用具体时间进行控制的控制阀。在这些领域,采用工业4~20 mA或远程控制实现定时控制时,必须构建一个以计算机为中心的控制系统。这不仅提高了初期成本投入,还需要专业的工程技术人员进行定期维护,在一些使用场合用户往往是不能接受的。采用人工按照固定时间手动操作方式必然增加人力成本且工作效率低下,已不能满足时代的发展要求。非接触IC卡时间控制阀采用刷卡方式将阀门打开时间、关断时间及阀门开度写入控制器。当控制器上的时钟运行到设定好的时刻时,控制器发出指令驱动电机转动,将阀门打开(关闭)到某一开度,达到控制流量的目的。

1 时间控制阀及其系统结构

控制器采用TI公司的MSP430F4152低功耗单片机作为控制芯片,使用复旦微电子公司的FM1702作为非接触IC卡读写芯片、NXP的低功耗芯片PCF8563作为实时时钟,其结构如图1所示。

图1 时间控制阀控制器结构图

整个系统由一块1 000 mA的3.3 V锂电池供电。正常情况下,为节省功耗MSP430F4152处于掉电工作模式。用户刷卡操作时通过靠近壳体的震动开关可唤醒MSP430F4152,唤醒后转换为标准工作方式,完成对应IC卡读写后重新进入掉电工作模式。当PCF8563运行到设定好的阀门打开时间(关断时间)时,PCF8563将产生一个中断信号。该信号也可唤醒MSP430F4152为标准运行状态。控制直流电机运行一定的时间段,将阀门驱动到指定开度。电机的运行时间与阀门设定开度成正比。系统上电后将对电机的最长运行时间(对应最大开度)进行测试并记录。测试信号由阀门的最大行程限位开关与最小行程限位开关返回。这两个限位开关动作的时间差被控制器记忆作为开度控制的参考值。MSP430F4152检测到最大行程限位,开关闭合后使电机停止运行。在用户进行刷卡操作时,定制的LCD向操作人员提示阀门的打开时间、关闭时间及开度信息。如果低电压检测芯片检测到电源电压降到2.5 V,控制器会驱动蜂鸣器连续发出三声鸣叫,提示用户更换电池。

2 非接触IC卡的选择及数据存储结构

目前,市场上通用的非接触IC卡分为13.56 MHz的高频卡和125 kHz的低频卡。高频卡NXP全称为Mifare1系列,常用的有S50和S70两种型号,即智能卡行业所说的M1卡,目前都有国产芯片与其兼容[1]。低频卡采用了多功能的非接触式R/W辨识集成电路,该电路需要连接一个天线线圈作为卡上电路与读卡器直接耦合的接口,天线和芯片一起构成感应卡片或标签。由于M1卡与低频卡相比具有数据存储量大、读卡速度快、感应天线不需要单独制作等优点,目前逐渐占据了市场上的主要份额。

2.1 M1卡的数据存储结构

目前,市场上使用的Mifare1卡容量为8 kB EEPROM,卡上数据按照16个扇区组织,每个扇区划分为4个块,每块可存储16 B[2]。数据的读写操作以块(0~63)为单位进行。M1卡的组织结构如图2所示。

图2 Mifare1卡数据结构图

每个扇区可独立设置一组密码进行访问控制。每张卡出厂后具备了唯一的32位序列号,利用该序列号可区分多张不同的卡片。每个扇区的块0~块2用于存储用户数据,块3用于存储读写该扇区数据所用的密码。需要注意出厂时扇区0的块0用于存放厂商的代码,该代码已经固化,用户是不可更改的。

2.2 时间控制阀的工作方式及卡上数据定义

时间控制阀的工作方式是按照预先设定好的未来时间对其开度进行操作的,其工作方式分为5种,如表1所示。

表1 时间控制阀的工作方式

在非重复工作方式下,只有时钟运行到具体某年的某月某日某时某分时,控制阀才开始动作,属于非周期工作方式。其他4种工作方式为周期工作方式,工作周期根据应用场合的不同可设置为每年、每月、每日或每小时。如果设定每日的开阀时间为上午7:00到9:00,必须将该时间段的工作方式设置为日重复工作方式,这样可以保证阀每24 h动作一次。控制阀的动作时间与工作方式通过用户卡对阀进行设定。IC卡上的数据事先由设置软件通过读卡器将设置数据写入IC卡,控制阀完成IC卡数据读取后,其工作方式、阀打开(关闭)时间及开度也就随之确定。Mifare1卡上的1~15扇区用于定义控制阀不同时间段的打开时间、关断时间、对应开度及工作方式。扇区0的块1定义保证一卡一阀对应操作的阀序列号,块2定义设置时间。扇区1~15的块0定义阀打开时间,块1定义阀关闭时间,块2定义开度及工作方式及卡片类型。由于每个块的存储容量为16 B,开阀时间与关阀时间可按照时间格式的年、月、日、时、分、秒顺序进行存储。假如块0以ASCII码的格式存储了“20140323232323”字符串,该字符串则定义了阀的打开时间为2014年3月23日23时23分23秒。开度占用3个字符,其范围为“000”到“100”,分别代表开度为0%和100%,字符串“050”代表了开度为50%。工作方式代码用1个字符来描述,即字符“1”到“5”代表了5种不同的工作方式。卡类型也用1个字符来描述,1代表时间卡,2代表设置卡,3代表用户卡。假如某一扇区的块2存储了“0502300000000000”字符串,即该卡为一张控制开度为50%、工作方式为月重复工作方式的一张用户卡。控制阀刷完该卡后,时钟每月运行到设定的开阀(关阀)时刻(日、时、分、秒)时将按照相应开度进行操作。鉴于目前Mifare1卡可供使用的扇区为1~15,时间控制阀的开阀与关阀时间段最多可设置为15个。

3 时间控制阀的硬件设计

时间控制阀采用了TI的MSP430F4152单片机作为控制器,其供电范围为1.8~3.6 V,在正常模式下其功耗为220 μA,标准模式下功耗为0.9 μA,掉电模式下功耗为0.1 μA。该芯片采用16位RISC架构,内部具有1个16位定时器,(16 kB+256 B)的Flash存储器,7个数字I/O端口和一个能驱动144段的LCD驱动器[3-5]。MSP430F4152的外围电路包括IC卡读写电路、实时时钟电路、LCD及电机驱动电路。

3.1 非接触IC卡读写电路设计

IC卡读取芯片采用基于ISO 14443标准的非接触卡读卡机专用芯片FM1702SL。该芯片与MSP430F4152的接口采用SPI总线方式,通过其内部64 B的FIFO对IC卡上的数据进行读写操作。MSP430F4152通过FM1702SL提供的13条指令对IC卡上的数据进行读写操作[6]。FM1702SL对IC卡的读写过程包括寻卡、抗冲突、选卡、密码验证、读写操作几个步骤。M1卡的具体读写电路如图3所示。

图3 Mifare1卡读写电路

3.2 时钟电路设计

时钟电路采用NXP的PCF8563T作为计时单元。MSP430通过IIC总线设定PCF8563的初始时间和报警时间,并在任何时刻读取当前时间。当时钟运行到设定好的报警时间时会产生中断信号。MSP430在该中断信号的触发下驱动电机将阀打开到一定开度(或关闭)。MSP430每次打开或关闭阀门后需重新设定控制阀下一次动作的报警时间。实时时钟电路如图4所示。

图4 时间控制阀的实时时钟电路

3.3 电机驱动电路设计

控制阀的电机驱动电路如图5所示。

图5 电机正反转驱动电路

用单片机的两个I/O口作为正转和反转控制,通过三极管Q1~Q4可以驱动小功率直流电机的正反转。当正转引脚输出低电平、反转引脚输出高电平时,电机正转;反之如果正转引脚输出高电平、反转引脚输出低电平时,电机反转。一旦时钟运行到设置好的开阀(或关阀)时刻,控制器从休眠态转换到正常工作状态,驱动直流电机运行,带动减速器旋转,驱动球阀旋转一定角度[7]。控制阀开度可通过控制电机的运行时间来确定,具体计算方法可以按式(1)进行:

控制阀运行时间=全程运行时间×控制阀开度

(1)

控制阀的全程运行时间指的是电机从控制阀的开度为0运行到开度为100%的时间。系统上电后,处理机给电机一个全程运行命令,全程运行时间等于电机运行过程中由前后两个限位开关信号返回的时间差[8-9]。

4 时间控制阀软件设计

系统上电后处理器首先发出命令使控制阀全程运行一个周期,记录全程运行时间并使控制阀处于全关状态,然后进入掉电休眠状态以节省功耗。只有刷卡操作或PCF8563产生报警信号时系统才能被唤醒并进入标准工作模式,相应操作完成后处理机重新进入休眠状态[10]。处理器由IC卡唤醒后执行流程如图6所示。刷卡后处理器首先对卡的类型进行识别,如果是时间设置卡,则通过该卡对系统时间进行设置;如果是序列号,设置控制阀的唯一序列号;如果是用户卡,则将卡上存储的开阀时间、关阀时间、对应开度及工作方式写入自身Flash等待读取。PCF8563唤醒处理器时,处理器从Flash中读取该时刻的开度;然后驱动电机运行对应该开度所对应的运行时间;电机运行结束后重新设置PCF8563的下一个报警时间。时间控制阀流程如图6所示。

图6 时间控制阀软件流程

5 时间控制阀功能设置软件设计

时间控制阀功能设置软件主要通过计算机完成非接触IC卡的读写操作,采用VB 6.0+Access 2007来完成。读卡器选用明华公司的RF330,RF330通过USB接口与计算机连接。所有控制阀操作所需的IC卡初始设置由该软件完成。设置项目包括IC卡加密、时间卡初始时间的设置、序列号卡的序列号设置、用户卡工作方式及开(关)阀时刻、开度设置等。

6 结束语

时间控制阀采用以MSP430F415为核心,通过驱动FM1702SL读卡专用芯片,实现了所有功能,使整个系统达到了很高的性价比。从长时间运行来看,该控制阀能够满足一般工业条件下的使用要求,具备了一定的实用性和可靠性,达到了预计效果。

[1] 陆永宁.非接触IC卡原理与应用[M].北京:电子工业出版社,2006.

[2] 廖志鹏,黄俊,雷杏.基于RFID超低功耗射频标签的研究与实现[J].压电与声光,2012,34(6):951-954.

[3] 潘盛辉,郭毅锋.基于MSP430的手持式RFID读写器的设计[J].内蒙古大学学报,2010,41(3):346-350.

[4] 陈义平.基于MSP430单片机的智能IC卡水表控制器[J].现代电子技术,2012,35(6):123-125.

[5] 潘学海.基于MSP430单片机射频IC卡读写系统研究[J].煤炭技术,2012,31(1):217-218.

[6] 黎洪生,文浩,舒怀.基于FM1702的非接触式读写模块设计[J].电子元器件应用,2007,9(1):16-18.

[7] 李开元.基于STC单片机的温控热计费采暖阀门的设计[J].电子技术应用,2011,37(5):56-59.

[8] 李扬宏,李秉智.非接触IC卡读卡器的开发与研究[J].计算机工程与应用,2005(32):106-108.

[9] 赵灿,刘园胜,孙后中.基于MSP430F4152单片机的超声波热量表的设计[J].仪器仪表与分析测试,2013(1):1-3.

[10]佟云峰,李光辉.基于PCF8563时钟芯片的单片机控制声光提示器设计[J].昆明冶金高等专科学校学报,2012,28(9):26-31.

猜你喜欢
IC卡扇区控制阀
某柴油机控制阀泄漏故障仿真分析
分阶段调整增加扇区通行能力策略
工商业IC卡控制器改造为物联网控制器实践
氯碱化工生产中控制阀的选用策略
在用电梯加装外接式IC卡运行控制系统设计改进
空中交通管制扇区复杂网络建模与特性分析
空域扇区网络级联失效抗毁性及优化策略
U盘故障排除经验谈
长春开通公交IC卡充值平
湖北省高速公路IC卡管理系统浅谈