电子天平通讯接口程序设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Sartorius电子天平通讯接口程序设计

引言

随着传感器技术和微处理器技术的发展,高性能的电子天平相继产品化。例如:Sartorius AG 公司生产的BS210S型的称量为210g,读数精度为0.1mg,BS21S型的称量为21g,读数精度为0.01mg,属标准型精密天平;超微量天平的读数精度最高可达一亿分之一克(0.0lμg),比最佳的机械式微量分析天平高出3个数量级。

电子天平最大特点是操作简单;测量快捷,数秒钟便可显示称量结果。它还具有多种功能,例如:自动故障检查、全自动校准功能、超载自动保护、RS-232通讯接口等。

本设计在分析Sartorius电子天平RS-232通讯接口的条件下,给出了电子天平和计算机通讯线缆连接方法,利用可视化编程语言Delphi 7.0设计了电子天平和计算机通讯接口程序,实现了电子天平与计算机之间的双向数据传输,把称量信息输入计算机、进行数据处理和远程显示等,构成了植物营养液成份测定、水培花卉等园艺工程中的自动定量测试、存储系统,为实验室研究和科学研究提供方便可靠的自动采集数据功能,测量结果能够更好地融入相关的测量系统。

通讯接口连线设计

artorius电子天平的数据接口采用RS-232C串行接口,通讯握手方式可设为硬件方式或软件方式,数据接口使用25引脚的D-Sub Female连接器;而计算机上一般有RS-232串行接口,采用9引脚的D-Sub Male连接器。根据电子天平和计算机通讯握手方式的要求,硬件方式需要有TxD(发送数据)、Rxd(接收数据)和GND(接地线),还要辅助数据线CTS(清除发送)、DTR(数据终端准备)才能实现;软件方式仅需要TxD、RxD和GND就可以通讯,所以选购25引脚的D-Sub Male连接器和9引脚的D-Sub Female连接器,各引脚之间按照图1所示接线方法连接,就可以满足上述两种握手方式的要求,数据电缆的屏蔽线和两端连接器的金属外壳相连(电缆长度一般不能超过15m),就可以构成用于Sartorius电子天平和计算机通讯的连接电缆,其中电子天平数据接口的8和15引脚可以连接一个远程按钮,用于远程控制电子天平的数据输出、校正等。

通讯控制命令

Sartorius电子天平的通讯控制命令基本相同,但不同型号的电子天平还是有些差异,应根据电子天平的型号有所选择。电子天平的控制命令格式:Esc!CR LF,其Hex代码

为:1B*0D0A,其中,!为控制字符,*为控制字符!所对应的Hex代码,控制字符及其功能如表1所示,例如:计算机请求电子天平发送(打印)数据,只要从计算机串口输出打印控制命令

Esc'P'CR LF的Hex代码1B 50 0D 0A即可。

Sartorius电子天平的功能命令格式:Esc%X_CR LF,其中,%X为命令参数,功能命令及其Hex代码如表2所示,例如:计算机发送Hex代码1B 66 31 5F 0D 0A,就可以相当于使用电子天平上的CAL功能键。

若采用软件握手方式,必须采用Xon/Xoff协议[4],而Sarto-rius电子天平在采用Xon/Xoff协议上没有特殊的要求,只要在发送命令前发送Xoff(Hex代码0x13),而在传送命令结束之后发送Xon(Hex代码0x11),这样才能准确的传输命令和数据,所以在计算机中发送打印控制命令变为Xoff Esc'P'CR LF Xon,其Hex代码变为13 1B 50 0D 0A 11即可,其他命令也可以类似的传输,以实现相应的功能。

安装SPComm通讯控件到Delphi系统

不论采用何种编程语言,实现串口通讯通常有几种方式:(a)利用Windows API通讯函数,该方法使用面广,但编程专业化程度高而且比较复杂;(b)利用标准通讯函数,直接对串口进行操作,

需要了解通讯接口硬件电路结构原理;(c)使用Mi-crosoft通讯控件MSComm,或使用第三方通讯控件SPComm、Cserial等,该方法通用性强,开发难度较低。

本设计中使用SPComm通讯控件,先在Delphi系统中安装SPComm控件。在Delphi 7.0环境中,选择Component->InstallComponent菜单,在Install Component对话框中,Browse到

SP-Comm.pas文件,确定即可进行Package编译安装,SPComm控件被安装到Delphi的System 选项卡中。

建立Delphi工程文件,并申明全局变量用于接收数据、发送指令、显示结果:(a)接收数据数组,RecBuf:array[1..22]ofbyte;(b)发送数据数组,SendBuf:array[1..6]of byte;(c)接收数据的字符串,DataString:string。

初始化并启动串口

选择通信使用的串口,确定通信协议,即设置波特率、校验方式、数据位、停止位等属性,分别设置电子天平通讯接口和计算机串口的参数,确保它们的参数一致。设置计算机SPComm串口控件参数的Delphi代码如下:

发送电子天平的控制指令

在编写基于串口的计算机通讯软件时,通常需要由计算机向电子天平(下位机)发送命令和有关数据,以控制电子天平的操作,具体的操作指令应根据不同型号电子天平的相关指令。利用SPComm串口控件向电子天平发送数据13 1B 50 0D 0A 11,电子天平执行打印命令,输出电子天平的测量结果,Delphi示例

代码如下:

接收电子天平串口数据及结语

接收电子天平串口数据

在编写基于串口的计算机通讯软件时,常需要由电子天平(下位机)向计算机发送数据,以使计算机了解系统的测试数据或下位机的运行状态,并进而控制下位机的行为。利用SPComm串口控件接收的数据信息,示例代码如下:

关闭串口

在系统开发中,在不使用串口时,应及时关闭串口、释放系统资源,否则可能会影响系统的其它应用。关闭串口只要调用代码:

Comm1.StopComm;

3.结语

利用Delphi编程实现了Sartorius电子天平和计算机通讯,实现了植物营养液成分测定、水培花卉等园艺工程中的自动定量测试、存储系统;通讯线缆设计和软件编程等方法也适用于基于串口通讯相关的领域,可以方便地开发功能强大、实时性强的串口通信程序

相关文档
最新文档