咨询电话:0755-88840386
工业自动化称重仪表 分类
首页 > 学习专题 > 专业技术专题 > 工业自动化称重仪表

博达数字传感器软件的开发接口

来源:网络转载更新时间:2020-01-03 10:19:24点击次数:3854次

在纯软件数字秤称重方案中,称重软件工作时,计算机需要和数字传感器通讯,获取传感器内码。因此,要用到数字传感器通讯协议。一般情况下,传感器厂家出于安全、防作弊考虑,不对外公开协议。为了方便用户开发称重软件(本文仅针对博达公司的数字传感器的称重软件),博达公司提供了专用的通讯函数库(ScalePort.dll)。用户在开发软件时,可以通过调用库中的函数,获取数字传感器的内码。使用此函数库时,不需要其他的通讯控件。

ScalePort.dll 有两种功能:

①从仪表串口读取重量

②从数字传感器读取内码

为了区分仪表和数字传感器,将RS485- 232转换器获取内码的方式命名为“boast”

在VB6 中调用和调用Win32 API 类似,源码如下:

①Private Declare Function OpenScalePort Lib“ScalePort.dll” (ByVal ComPort As String, ByValseting As String, ByVal fangshi As String) As Long

' 打开称重串口, 参数: 串口号, 通讯参数, “start”

②Private Declare Function CloseScalePort Lib“ScalePort.dll” () As Long' 关闭称重串口

③Private Declare Function LoadCellReadDataLib “ScalePort.dll” (ByVal LoadCellType AsString, ByVal LoadCellNumber As Long, ByValntime As Long) As String

' 数字传感器连续读内码指令( 参数1:“boast”;参数2:传感器数目;参数3:单只传感器读写周期(毫秒为单位))

Private Sub Command1_Click()'打开按钮

If OpenScalePort(Combo2.Text, Text1.Text, Combo3.Text)= 1 Then ' 打开串口,①

If Combo1.Text=“boast” Then

Timer1.Enabled=True' 读传感器

End If

Command1.Enabled=False

Else

MsgBox “串口打开不成功!”, vbInformation+vbOKOnly, “提示”

End If

End Sub

Private Sub Command2_Click()' 关闭按钮Timer1.Enabled=False

e=CloseScalePort' 关闭串口②

Command1.Enabled=True

End Sub

Private Sub Form_Unload(Cancel As Integer)e=CloseScalePort' 关闭串口②

End Sub

' 通过485~232 转换器,读数字传感器内码,用户不用担心效率问题,在调用OpenScalePort ' 函数时,ScalePort.dll 已经在后台创建了独立的串口采集线程,将传感内码存储到内存中

Private Sub Timer1_Timer()' 使用定时器,从内存中读内码。

DoEvents

Dim b As String ' 从串口返回的内码字符串

Dim LoadCellNumber As Integer ' 传感器数目

LoadCellNumber=8' 此处以8 个传感器为例

b=LoadCellReadData“( boast”,LoadCellNumber,25)' 从内存读取全部传感器内码,25 是单只传感器读写周期,与USB- RS232 转换器质量有关③

Text2.Text=b' 读取的结果显示到text2.text 中,字符串以S 开头E 结尾,每6 个字符是一个传感器内码,整个字符串长度= 传感器个数×6+2

If Left(b, 1)=“S” Then 判断起始符

For i = 0 To LoadCellNumber - 1 ' 分别获取每只传感器内码

Label1(i).Caption = Mid(b, 2 + i×6, 6)Next i

End If

End Sub

传感器异常时,内码显示:

①如果传感器内码返回+88888 表示校验错误,一般是由现场干扰引起。例如:大型感性负载起动,造成传感器供压不稳

②如果传感器内码返回+99999 表示传感器未通讯,请检查连线是否正确

ScalePort.dll 函数库只能获取数字传感器内码,如果要修改地址,请用《BOAST 串口调试工具v3.67》。

获取数字传感器内码是编写数字称重软件的第一步,要完成一个实用的称重软件,后续还有许多工作要做。如标定、调角差、零点跟踪、开机置零等。当然,也可以参考一些市场上的主流的称重仪表,如XK3180、XK3190A9、DS1 等,借鉴一下他们的设计思路,可以起到事半功倍的效果。笔者曾在衡器厂做过2- 3 年的售后服务,所以对这些表比较熟悉。

 

 

本文源于网络转载,如有侵权,请联系删除

(此文关键词:数字式称重显示控制器,数字传感器,数字称重仪表厂家,数字称重控制器,数字式重量变送器)
相关文章
More» 相关产品推荐

在浏览器打开×