本站小编为你精心准备了LabVIEW的SVG远程监控探析参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
《电气时代杂志》2014年第五期
一、硬件设计与实现
通信硬件电路的合理设计是提高RS485通信可靠性的基础,如果硬件电路存在不足,则RS485通信的可靠性很难得到保证。图1中,DSP控制电路选用TI公司的32位定点处理器TMS320F2812,工作主频最高可达150MHz,片上集成两路SCI接口,64K种可编程通信速率,支持16级接收和发送FIFO;RS485收发电路选用多点RS485收发器DS75176,小型封装,有利于节省空间;22ns驱动传送延时;单5V供电;总线上允许-7~+12V电压出现,热保护;允许高达32个收发器挂在总线上。RS485通信的硬件电路如图2所示,主要包括信号隔离电路和RS485总线输出电路。
1.信号隔离电路
RS485收发器DS75176通过RXD、TXD及RDE引脚与DSP接口。为避免DSP与DS75176间的相互损伤,这些引脚不能与DSP直接连接。通过DC/DC变换将DSP电源和DS75176的电源隔离,通过光耦6N135将引脚信号隔离,彻底消除共模干扰电压的影响。
2.RS485总线输出电路
RS485总线输出电路要充分考虑线路上各种干扰及线路特性阻抗的匹配。为降低输出浮动特性,采用抗浪涌的瞬态抑制二极管D1。输出端A、B分别串接一个保护电阻R49和R44,减少器件损坏对通信总线的影响;A、B间跨接电阻R42,减少线路上因传输电阻的不匹配造成的传输反射。同时A、B输出端分别接上拉、下拉电阻R41、R40,使A端电位高于B端电位,RXD的电平在RS485总线不发送期间呈现高电平,DSP不会被误中断而收到乱码。
二、软件设计与实现
1.DSP部分
DSP和上位机间的数据发送和接收采用Modbus通信协议,协议格式包括地址码、功能码、数据信息码和校验码等十六进制信息。主要用到的Modbus功能码是03H、04H和10H,其格式大致相同。例如功能码03H的格式如表1、表2所示。DSP作为从机,主要任务是接收上位机发送的数据报文,完成数据发送,程序流程如图3所示。DSP接收到数据报文后首先校验从机地址是否一致,若相同,则将接收到的数据进行CRC计算并与接收到的数据报文中CRC校验码比较,如果CRC相同,表明接收到的数据正确,并继续查看数据报文中的功能码,按照功能码调用相应的子程序。如果CRC值不同,表明接收到的数据错误,给出出错应答并退出中断。调用相应功能码的子程序后,要判断数据报文中的数据地址、数据长度是否正确,如果正确就给主机按照通信协议格式发送数据;如果错误则出错应答并退出中断。
2.上位机监控labview部分
上位机采用LabVIEW进行上位机监控。传统的串口通信软件使用VC++或VB编写,这些高级语言程序代码冗长复杂,不便进行功能拓展;如果要进行串口数据分析则需推翻原有程序结构,重新编制代码。而LabVIEW提供了各种图形化程序,用户不必熟悉串口总线,利用提供的图形化驱动程序就可以驱动串口通信。考虑到软件的实用性和开放性采用VISA接口模块进行编程。VISA是应用于仪器编程的标准I/O应用程序接口,是工业界通用的仪器驱动器标准应用程序接口,采用面向对象编程,具有很好的兼容性、扩展性和独立性。当外部设备变更时,只需要更换几个程序模块即可,很方便而且开发效率高。(1)串口初始化LabVIEW可以通过软件前面板方便地完成串口初始化设置,如波特率、数据位、奇偶位和停止位的设置,如图4所示。图4(a)为串口设置的前面板部分,图4(b)为串口设置的程序框图部分。(2)数据发送和接收LabVIEW根据Modbus通信协议格式发送和接收数据报文,为VISA写入和读取函数,为内部编写的CRC校验函数和数据校验函数。首先将数据报文按通信协议格式打包进行CRC校验,校验完成后连同校验码一起生成发送报文,利用VISA写入函数将数据发送,经过一段时间延时,利用VISA读取函数接收数据报文。对接收到的数据报文首先要进行校验分析,判断这部分数据是否正确,如果正确则进行数据提取和处理。在数据发送和接收过程中,由于VISA写入/读取的是字符串类型的数据,所以要用将字节数组转换至字符串才能发送,同时接收到的字符串通过转换至字节数组再进行数据分析和处理。LabVIEW数据发送和接收如图5所示。(3)数据存储LabVIEW可以将接收到的数据存储为.xls或.txt文件,方便用户调用这些数据。如图6所示,数据存储为.txt文件,根据用户需要利用创建路径函数灵活设置文件保存路径,利用写入文本文件函数将数据写入.txt文件,能随时查看历史数据。
作者:段海雁单位:天津市先导倍尔电气有限公司