串口控制数字量输出及多通道组合选通器设计*

2013-12-29 10:32龚莉莉葛武健
电子器件 2013年5期
关键词:控制指令串口继电器

张 凯,龚莉莉,葛武健

(南京信息工程大学信息与控制学院,南京210044)

在进行实际超声检测时,多通道超声检测相对单通道超声检测有更优良的性能,但多通道的探伤仪价格昂贵[1],为了提高性价比,本文设计了一种通道组合选通器,详细介绍了其控制电路和程序设计方法。

超声换能器阵列中各阵元时而作为发射阵元,时而作为接收阵元,需要不定时地进行通道组合选通,并且根据不同的检测算法,对阵列中各阵元的控制不是固定不变的。因此,建立一套能够以任意控制组合的形式对阵列中各个阵元进行灵活控制的系统显得十分有必要。

如图1所示,阵列中有N个阵元,所有阵元通过通道组合器,既与激励通道相连又与采集通道相连,每个阵元连接在通道组合器一个选通端的公共端,通过选通控制模块控制各个选通器的选通状态。通道控制模块的总控制状态由整个通道组合选通器中各个选通器不同的选通状态组合而已。例如,某个时刻,检测算法要求1号阵元作为激励阵元,3号阵元作为采集阵元,则1号阵元的选通状态为选通通道1,3号阵元的选通状态为选通通道2,其他阵元的选通状态都悬空。

图1 通道组合选通器功能示意图

1 通道组合选通器控制系统结构

通道组合选通器控制系统由MCU微处理器、串入并出译码器、功率放大器、固态继电器等模块组成,系统控制指令接口为串口,系统结构如图2所示。

图2 通道组合选通器结构图

为实现通道组合选通的动态调用,必须将计算机的控制指令实时发送至控制器,本文采用串口为通讯接口,下位机控制器以MCU微处理器为核心,负责上位机指令接收、指令解析以及译码器数据输入。译码器输出的直流信号经功率放大器放大输入至固态继电器的线圈输入控制端,控制固态继电器的执行吸合动作以选通通道。

2 系统硬件设计

2.1 选通器执行模块

简单地讲,通道选通动作实际上相当于开关动作,为了实现自动化的目的,需要这样一种可程控开关作为通道组合选通器的选通执行部件,继电器是一种典型的低功率信号控制高功率信号通断的器件,固态继电器由于体积小、无触点[2]等优点被更多地引用到集成电路等电路中,本文选择的固态继电器是天波HJR 4102 D 12VDC S Z继电器,其性能参数为:

线圈 额定电压12 V,额定电流30 mA,最大吸合电压9 V,最小释放电压1.2 V。

触点 最大转换电压240 V,最大转换电流5 A,最大转换功率360 W。

例如:教师可以直接就近在教学楼附近选择空地,将学生分成四个大组,让学生来进行跳绳运动,必要的时候还可以进行比赛,为学生的体育课间活动增添乐趣。教师还可以要求学生不断地创新,不断地探索新的跳法,以此来引发学生思考,锻炼学生的思考能力,让学生积极主动地参与进来,培养学生对体育大课间活动的兴趣,突出跳绳运动的多样性,让所有学生都参与进来,让每一个学生都健康地成长。

在输出选通端,由于本检测系统的功率主要分配在超声信号发射时,即激励通道上,激励脉冲电压达200 V,根据本固态继电器的参数,其触点最大转换电压为240 V,同时本检测系统的触点转换功率未超出本继电器的最大转换功率,选择本继电器能满足系统要求。

本超声检测系统要求各个阵元轮流作为发射端和接收端,即对每个阵元传感器,某个时刻只能有一个发射阵元和一个接收阵元。本文将发射通道和接收通道分开控制,发射控制时,当某个阵元被激活用于发射超声波时,其他阵元中仅有一个与发射阵元不同的阵元接收信号,剩余阵元全部要处于悬空状态。本通道组合选通器的继电器与阵元连接原理如图3所示。

图3 固态继电器集与阵元阵列连接原理图

若阵元N作为发射阵元,则继电器RN'执行吸合动作选通常开触点,同时继电器RN保持常闭状态,由此,阵元N一端接激励信号,另一端接地,构成回路。设此时的接收阵元为阵元M,则继电器RM执行吸合动作选通常开触点,同时继电器RM'保持常闭状态,阵元M的采集回路也被激活。而与剩余阵元相连的全部继电器(包括发射端和采集端)则全部保持常闭状态,此时这些阵元相当于两极都接地而被禁用,由此达到了选通的目的。

2.2 数字信号功率放大

在继电器线圈控制端,查表可知,由于继电器的线圈控制电流相对较大,一般TTL信号不能驱动继电器执行选通动作。本文是通过单片机加译码器的形式输出稳压控制信号,信号的电压范围在3.5 V至5 V之间,输出电流亦较小,不可能驱动本继电器执行选通动作,故本文增加了功率放大芯片电路解决这一问题。

本文选用芯片是 ULN2003,它的特点是高耐压,由大电流复合晶体管阵列即7个硅NPN复合晶体管组成。它的内部集成了一个消线圈反电动势的二极管,可用来驱动继电器。其引脚功能如下:

引脚1到引脚7为脉冲输入端,每个输入端口对应一个信号输出端。引脚8接地。引脚9是内部7个续流二极管负极的公共端,各二极管的正极分别接各达林顿管的集电极。引脚10到16为脉冲信号输出端,分别对应7脚到1脚的信号输入端。

如图4为本文使用ULN2003驱动继电器的示意图,输入端输入逻辑电平信号。由于ULN2003是反逻辑输出的,且ULN2003输出低电平时驱动能力比输出高电平的驱动能力更强,故采用如图4所示的连接方法,根据继电器控制线圈正向电流方向,将ULN2003的输出端连接至继电器的线圈受流端,施流端连接至电源正极。

图4 ULN2003驱动继电器示意图

当在ULN2003的输入端输入逻辑高电平时,对应的ULN2003输出端输出低电平,此时,继电器线圈两端有电势差,有电流流过,继电器工作,执行选通动作,闭合常开触点,反之继电器不吸合。

2.3 数字信号输出

由于需要控制的选通通道较多,需要大量的稳压输出信号作为控制信号,单纯通过单片机的数据I/O口来进行稳压输出的话,极大的浪费了宝贵的I/O口资源,本系统通过对串入并出译码芯片的运用,74HC595是带有锁存器功能及移位寄存器的串入并出译码芯片,74HC595具有8 bit移位寄存器和一个存储器,三态输出功能,每一片74HC595可以扩展8路稳压输出[3],利用单片机的单个数据输出端串行写入控制地址,通过译码器译码将串行数据转换成并行数据后输出,同时,由于74HC595芯片具有锁存功能,即上一次写入的数据在新数据没有写入前,将一直保持上一次的稳压输出,在这种方式下,单片机的3个数据口可以控制8路稳压输出。

在图5中,若要求output 0~output 7输出逻辑位为“11111111”的电平,则只需要控制单片机通过p0.0口向DS输入“ff”即可,而当有多个74HC595并联时,单片机只需要向各个数据口依次写入控制指令就能完成对多个74HC595芯片的输出控制,而单片机通过串口读取的控制指令是多个控制指令连接而成的字符串,需要经过解析并与各个芯片相对应后再写入芯片中。

图5 74HC595受控连接图

与下位机通信是利用串口[4],其中PC机与单片机串口通讯的硬件连接图如图6所示,在进行简单通讯时,不需要按照串口标准连接所有串口引脚,在没有复杂控制信号的情况下,一般只需要3个引脚即可,主要有接收引脚(RXD),发送引脚(TXD)和地引脚(GND),有这3个引脚即可实现全双工异步通信,而且通信双方连接时需要注意,RXD和TXD必须要交叉连接才能正确发送和接收串口数据。

图6 PC与单片机串口硬件连接图

3 系统软件的设计

3.1 软件系统的功能结构

为了在上位机实现对通道组合选通器的控制,需要在上位机上编写一套驱动软件,通过软件面板或者软件接口方便地对本系统进行控制。本文编写的控制软件整体功能结构如图7所示。

图7 通道组合选通器软件功能图

本软件上位机分为指令产生模块程序和串口传送模块程序,下位机则由串口接收程序和指令解析程序以及指令写入芯片程序组成。在软件顶层,程序控制接口用于接收系统控制参数。而由于本系统每次产生新指令时都会覆盖上一次指令的执行结果,故本系统不需要初始化以及反馈系统状态的操作。

3.2 控制指令的产生

本通道组合选通器系统上位机软件采用虚拟仪器语言LabVIEW[5]进行设计,通过预留控制编程接口,方便其他软件传递控制参数。如图8所示为根据收发通道产生选通控制命令的程序框图。本文设计的通道组合选通器可以选通16发射通道选1及16采集通道选1的操作,在用户或者程序指定好发射通道及采集通道后,程序将选通结果(二进制数组)通过转换成十六进制数,同时由于LabVIEW串口传数据只支持字符串,再将十六进制数转换为字符串之后输出目标控制指令。

图8 选通控制命令的产生框图

将该程序封装成子程序,并预留发射通道和采集通道号作为接口,可以方便地供其他程序调用,根据不同的通道选通要求产生不同的目标控制指令,实现程序的模块化动态调用。

3.3 控制指令输出至下位机

上位机软件是通过LabVIEW操作串口,主要通过NI提供的VISA驱动函数[6],VISA是NI公司开发的与各种仪器进行通讯的驱动程序,并提供应用编程接口,它不受系统平台,总线等环境限制,能够操纵的总线包括 RS232、RS485、GPIB、USB、WAN、PXI等常用标准的总线,由于VISA封装了大量自底向上的I/O接口控制函数为统一接口,在NI主推的虚拟仪器平台LabVIEW中调用VISA函数集显得比较简单,同时在创建复杂系统时功能非常强大。在LabVIEW中,通过VISA读取和写入串口时,由于LabVIEW编译系统环境只接受字符串格式的数据,所有控制指令必须都转换成字符串才能进行串口传输,如图9所示,为LabVIEW发送字符串至串口的程序框图。

3.4 单片机接收和处理指令数据

单片机通过串口中断接收上位机数据,单片机读取串口数据的流程图如图10所示。

通过该中断子程序,单片机将从串口缓冲区中,一个字节一个字节地读取其中的字符,每次中断子程序只读一个字符即结束本次中断,为保证一次指令的完整性,以字符“$”作为指令的起始标志符,字符“*”作为指令结束标志符。又由于单个74HC595的写入指令为两个十六进制字符组成,故多个芯片的总控制指令也为偶数,通过该方法进行简单的指令位数查错后,正确的指令经字符串至十六进制数的转换。

单片机通过各个数据口将以上处理好的十六进制数据写入到各个74HC595芯片的DS端口,即可以控制芯片的Q0~Q7输出端的电平状态。

图9 LabVIEW通过VISA向串口写数据框

图10 单片机中断接收上位机数据

至此,多通道组合选通器的通讯模块、控制处理模块、驱动和执行模块等软硬件已设计完成,并且预留了控制程序接口,用户或者程序可以通过程序接口输入发射通道(号)和采集通道(号)即可实现通道的切换操作。图11为多通道组合选通器用户控制界面。

图11 多通道选通选通器用户控制面板

4 结束语

本文通过串口通信、单片机及串入并出芯片的组合,设计了拥有大量端口的数字信号稳定输出的数字信号输出设备,并利用该设备的数字输出,控制设计的通道组合选通器进行通道选通,通过在上位机编写了驱动软件,使该选通系统的具有程控性。本选通系统可以兼顾发射和采集,同时,由于该系统较低的硬件成本,在多通道的超声检测采集系统中有较高的实用价值。

[1]宁彩林,张吉堂,王彪,等.超声检测中单通道变多通道信号切换控制[J].控制系统,2007,23(3):61-62

[2]杨龙,于滨红.固态继电器在89C51单片机控制系统中的应用[J].电测与仪表,1999,36(5):52-53

[3]铁勇,刘跃平,李树华.基于单片机控制的多功能LED显示系统的设计及实现[J].内蒙古大学学报,2005,36(6):686-687

[4]张来斌,杨晓伟,李树华.显示测试系统数字I/O口控制的设计与实现[J].电子器件,2004,27(4):741-742

[5]沈小燕,林玉池,付鲁华,等.LabVIEW实现光纤光栅传感解调[J].传感技术学报,2008,21(1):61-63

[6]陈诚,李言武,葛立峰.基于LabVIEW的单片机串口通信设计[J].现代计算机,2009(1).

[7]王月姣,朱家驹.固态继电器在单片机测控系统中的应用[J].中南民族大学学报,2005,24(1):52-53

[8]吕向锋,高洪林,马亮,等.基于 LabVIEW串口通信的研究[J].理论与方法,2009,28(12):28-29

猜你喜欢
控制指令串口继电器
城轨车辆控制指令试验装置研制
浅谈AB PLC串口跟RFID传感器的通讯应用
继电器控制及诊断在电动汽车动力电池包的应用
便携式继电器测试台的研制和应用
宏指令控制的多轴系统研究及实现
高速公路隧道通风、照明联动控制方案探讨
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
串口技术的实物调试和虚拟仿真联合教学模式
泓格科技继电器输出模块-87061PW