台达PLC称重模块不知道怎么用,如何写一个当前重量显示和去皮的程序。

台达PLC称重模块不知道怎么用,如何写一个当前重量显示和去皮的程序。,第1张

称重仪一般有几种通讯协议,但是基本都支持通用的232协议,也就是串口通讯。你可能要在程序里用ASCLL码或BCD码来和承重模块通讯。台达应该和三菱差不多。不过你最好还是找台达官网下载点资料读一下,了解一些特殊通讯寄存器的用法。没有程序给你参照。我只能给你思路和方法。

如果是简单的承重模块,不考虑寄存器地址的那种就是模拟量控制。

看手册,确定支持哪种通讯协议

找到仪表的通讯参数,波特率/数据长度/停止位。。。

拿电脑串口调试工具,试下通讯功能。

写PLC程序,如果支持MODBUS直接套专用指令,不支持就用通用协议,一个字符一个字符来编写了

该电子秤为上海耀华称重系统有限公司的XK3190-A9型仪表,输出为RS-232C标准接口,波特率为600/1200/2400/4800/9600、传输的数据格式(10位:第一位起始位,第10位为停止位,中间8位为数据位(ASCII编码))。通讯方式为:1。连续方式2。指令方式。本人选:

1。连续方式:所传送的数据为仪表显示的当前称重(毛重或净重)。每帧数据由12组数据组成。格式如下:

第X字节 内容及注释

1 02(XON) 开始

2 +或- 符号位

3 称重数据 高位

4 称重数据

5 称重数据

6 称重数据

7 称重数据

8 称重数据 低位

9 小数点位数 从右到左(0—4)

10 异或校验 高四位

11 异或校验 低四位

12 03(XOFF) 结束

异或:2异或3异或8异或9

本程序是从网上下载的(稍作改动),调试环境为Windows Xp Professional SP2,VB60,在VB中与串口通讯需要引入控件MSComm串口通讯控件在Microsoft Comm Control 60中)。具体程序如下:控件简称:MSC

Dim Out(12) As Byte '接收var中的值

Dim var As Variant '接收MSCinput中的数值

Dim i As Integer, j As Integer '随即变量,计算循环

Private Sub cmdOk_Click()

With MSC

InputMode = comInputModeBinary '设置数据接收模式为二进制形式

InBufferCount = 0 '清除接收缓冲区

If Not PortOpen Then

PortOpen = True '打开通信端口

End If

End With

End Sub

Private Sub Form_Load()

With MSC

CommPort = 2 '设置Com1为通信端口

Settings = "9600,N,8,1" '设置通信端口参数 9600赫兹、无校验、8个数据位、1个停止位

InBufferSize = 40 '设置缓冲区接收数据为40字节

InputLen = 1 '设置Input一次从接收缓冲读取字节数为1

RThreshold = 1 '设置接收一个字节就产生OnComm事件

End With

End Sub

Private Sub SwichVar(ByVal nNum As Integer)

Text4Text = Text4Text & nNum

var = Null

var = MSCInput

Out(nNum) = var(0)

End Sub

Private Sub Form_Resize()

Text1Width = MeWidth

Text4Width = MeWidth

End Sub

Private Sub MSC_OnComm()

With MSC

Select Case CommEvent '判断通信事件

Case comEvReceive: '收到Rthreshold个字节产生的接收事件

SwichVar 1

Text1Text = Text1Text & Chr(Out(1))

If Out(1) = 2 Then '判断是否为数据的开始标志

RThreshold = 0 '关闭OnComm事件接收

End If

Do

DoEvents

Loop Until InBufferCount >= 3 '循环等待接收缓冲区>=3个字节

For i = 2 To UBound(Out)

SwichVar i

Text1Text = Text1Text & Chr(Out(i))

Next

Text1Text = LTrim(Text1Text)

RThreshold = 1 '打开MSComm事件接收

Case Else

'PortOpen = False

End Select

End With

End Sub

运行结果:

当仪表显示:0 时

一直重复显示

+00000001B+00000001B+00000001B+00000001B+00000001B+00000001B+00000001B+00000001B+00000001B+00000001B

或:出现下列错误:

实时错误:'9' 下标越界

由于本人没有接触过硬件通讯编程,加之时间紧,麻烦哪位高手帮助一下!!!!或者副少许费用也可!!!!!

怎样把显示正确的数据,而且显示格式为“-+999999”

485通讯也是可以的,有的仪表带模拟量输出的,比如4-20mA 0-10V这样的。如果不采用称重控制仪表的情况下,称重传感器也可以配上这种模块,其实主要看你实际使用情况,每一种通讯方式都可以,只不过价格不一样。

记得有一种称重PLC,可以直接和传感器连接,不需要变送器。可实现称重PLC集称重,计量,校准,归零,去皮等于一身,称重plc再结合PLC应有的可编程控制功能于一体非常方便用户来控制称重设备运行。 之前用过PLC主机为LS21-28MTH-2WT,PLC具有12入16出大电流晶体管,晶体管点最大电流可达3A,支持3路高速输出,2路高速输入。2路24位高精度称重通道,可将称重传感器直接接入PLC,无需外加放大器,具有称重速度快、精度高、使用方便、价格低廉等特点。

以上就是关于台达PLC称重模块不知道怎么用,如何写一个当前重量显示和去皮的程序。全部的内容,包括:台达PLC称重模块不知道怎么用,如何写一个当前重量显示和去皮的程序。、三菱PLC向称重仪表写入小数值如何编程、求能与PLC通信的电子秤 称重500g左右等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9401102.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存