基于MSP430单片机和MZ28的闸门开度仪

   2023-08-21 互联网2400
核心提示:  笔者所开发的闸门开度仪采用低功耗、高性能的单片混合信号处理器MSP430F133为核心控制元件。MSP430F133自带看门狗,采用光电

  笔者所开发的闸门开度仪采用低功耗、高性能的单片混合信号处理器MSP430F133为核心控制元件。MSP430F133自带看门狗,采用光电隔离技术,因此系统具有极强的抗干扰能力和极高稳定性。它的最大特点是利用GSM通讯,将闸门开度信息通过短消息发管理人员手机中,无需布线,较低的运营费用,就可达到对闸门开度远程无线监测的目的。

  1 技术指标

  (1)闸门开度量程: 10.00m; (2)分辨力: 1cm; (3)测量精度: 1cm; (4)显示范围: 0000.00~9999.99m。

  2 硬件的基本构成及工作原理

  如图1所示,闸门开度仪主要由闸门开度传感器,键盘显示,单片机,D/A,继电器以及无线GSM模块组成。键盘可设定或修改海拔基准高度、量程、报警值、短消息接收号码等参数。闸门开度传感器把测得的开度值传送到单片机,单片机将开度值与设定的海拔基准高度相加后送六位液晶显示器显示, 4个继电器按照各个报警设定值输出不同触点状态,提供控制信号,开度值通过D/A转换成4mA~20mA电流环,可远程连接到计算机工业控制网络,用以对闸门开度进行监测。此外,开度值还能按照设定时间间隔周期性地通过GSM短消息发送到设定的手机号码中,实现对闸门开度的无线监测。

  2.1 闸门开度传感器

  采用光电式绝对编码传感器,传感器的伸出轴通过测绳挂轮重锤的方式与闸门的有关部件连接,从而测量闸门的位置。绝对编码器并行输出10位格雷码,格雷码每变化一位,则闸门位置移动1cm。格雷码从MSP430F133的P4、P5口输入,系统预留16位I/O口作为输入口,当配合不同的编码器可以改变测量量程。

  2.2 无线GSM模块

  采用中兴通讯推出的GSM无线双频调制解调器MZ28,MZ28主要为语音传输、短消息发送和数据业务提供无线接口。MZ28集成了完整的射频电路和GSM的基带处理器,特别适合于迅速开发基于GSM无线网络的无线应用产品。单片机与MZ28可通过标准的串行通信(UART)进行通讯,使用相应的AT命令,可达到对模块的控制。

  表1中定义了接口引线的物理意义。

 

  电源+为MZ28模块提供3.6V~4.2V的直流电平,且应有2A的峰值电流输出能力。第7, 8, 9, 11引脚提供与外部串口的接口,工作电平为TTL电平。第10, 13, 14引脚提供外部音频接口。第15, 16, 17引脚提供外置SIM卡接口,用户如在使用内部SIM卡接口时感觉不方便,则可使用该接口,把SIM卡座放在模块外的合适位置。第12引脚VR2B_EXT输出2.8V电压。第4引脚RESET用于给模块复位。第6引脚为来电或短信息到达时的硬件指示信号。第5引脚为模块工作状态指示灯的控制信号。

  在本系统中只需将测量数据以短消息的形式发送到管理员的手机中,因此只需使用系统中7、8、9脚。电路如图2所示, 7脚为请求发送端,与单片机的P3.3连接。8、9脚分别为数据的接收和发送端,分别与单片机UART0的发送和接收端相连。5脚接LED指示灯电路,通过5脚的控制信号来控制LED灯的闪烁状态,不同闪烁状态指示模块不同的工作状态。

  2.3 D/A模块

  采用ADI公司生产的高精度、低功耗全数字16位电流环输出转换器AD420。AD420具有灵活的串行数字接口,MSP430F133的P2.0~P2.2脚通过光隔后与AD420的CLOCK、LATCH、DATAI直接相连,电路如图3所示。AD420的输出信号可以是电流信号,也可以是电压信号,可通过引脚RANGE1,RANGE2进行配置。只需外接少量的外部器件,就能达到较高的精度。

  2.4 键盘与显示

  MSP430F133具有丰富的I/O接口(6×8bit),因此无需外接芯片来扩展I/O接口即可完成键盘与显示器的设计。其中P1、P2口具有中断能力,每一引脚都可以单独选择中断触发沿、单独允许中断。由于键盘数量少(只有6个),每一个键可直接与P1口的任一引脚相连接构成。

  显示采用北京青云公司的LCM061A液晶显示模块,该液晶能在2.7V~5.2V内工作,且工作电流小,能显示6位8段数码,还具有9个标志。在参数设置时,通过这9个标志符来标识不同的参数。LCM061A可通过3线串行接口与MSP430F133的P2.5~P2.7脚直接相连。

  3 软件设计

  该闸门开度仪的软件分模块设计,包括主程序、键盘扫描处理程序、D/A转换、显示、短消息发送、数据采集处理、数据存储等模块组成。

  3.1 主程序设计

  主程序的流程图如图4所示:系统初始化后,读取单片机中信息存储器中存储的参数(包括海拔基准高度、量程、4个报警值、4个报警点的回差值、短消息接收号码、短消息发送间隔时间),接着采集编码器的输入信号并将其转换为二进制数后送D/A转换,如果系统当前处于参数设定状态则显示设定的参数值,否则将测量值与海拔基准高度相加后送显示。测量值与设定的4个报警值分别比较,如果超限则继电器动作,否则继电器复位。最后程序返回到采集编码器的输入,如此循环。

  3.2 显示与键盘处理程序设计

  从显示角度来说,系统有两种状态,一种是显示测量值,另一种是通过键盘设置参数时显示当前设置的参数值。系统中有12个参数需要手动设置或修改,参数的区分通过显示器中的9个提示符组合来指示。当有键按下时,触发P1口的中断,单片机根据P1口的状态来确定是哪一个键按下。本系统中使用了6个按键。功能分别为:设置、增一键、减一键、快增键、快减键、确认键。其中快增键每按键一次增1m,快减键每按键一次减1m,每按一次增键增加1cm,每按一次减键减小1厘米。系统中有12个参数需设定,分别为海拔基准高度、量程、4个报警值、4个报警点的回差值、短消息接收号码、短消息发送间隔时间,参数的设定与修改通过键盘来完成。

  在任何时候按“设定键”显示器进入设定状态,六位液晶以米为单位显示第一个参数值,按“快增键”、“快减键”、“增键”、“减键”可以修改参数值;再按一次“设定键”,仪表进入下一个参数设定状态,用“快增键”、“快减键”、“增键”、“减键”可以修改相应参数值,如此重复可将所有参数设置完;最后按“确认键”,将参数保存到仪表内,掉电后也不丢失,显示器则进入测量状态,六位液晶显示闸门开度值。

  3.3 短消息发送程序设计

  因只需要将测量的数据发送出去,所以在本系统中设计了短消息的发送功能,短消息是周期性发送,发送间隔时间和短消息接收手机号码可通过键盘设置。单片机与MZ28模块间主要通过串口0进行通信,以AT命令来实现发送的功能。发送短消息的流程图如图5所示。

  MZ28模块的短消息提供了2种格式, TEXT和PDU。文本模式相对来说比较简单,比较适合传输数字和字符,在本系统中只需发送测量的数据,因此采用TEXT模式。一般模块默认的都是PDU模式,要切换到TEXT模式可通过串口发送AT+CMGF=1命令,也就是将命令中的每一个字符相应的ASCII码发送出去,接着发送回车符(即ASCII码为13)以确认。

  TEXT模式设置完后发送AT+CMGS=“11位手机号码”命令设置接收短消息的手机号码,再发送回车(即ASCII码为13)以确认。完成接收手机号码设置后将6位测量数据中的每一位数字转换成相应的ASCII码后通过串口发送,最后发送CTRL+Z命令(即ASCII码为26)确认数据发送完毕。

  4 结论

  本文在提出总体设计方案的基础上,完成了系统的硬件和软件设计、应用程序的编写及调试,经实际运行验证,取得了满意的效果。就目前的测试结果而言,结合远程监测的优势,具有较强的实用性。已经有200多台在全国各地使用。

  参考文献:

  [1] MZ28硬件接口说明书[Z].中兴通讯, 2002.

  [2]胡大可.MSP430系列FLASH型超低功耗16位单片机[M].北京:北京航空航天大学出版社, 2001.

  [3] ZXGM18AT命令说明书[Z].中兴通讯, 2002.

  作者简介:廖任秀(1978—),女,讲师,主要从事单片机应用系统的研究。

  收稿日期:2008-07


 
举报收藏 0打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  隐私政策  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅