登录
首页 PLC论坛 欧姆龙OMRON
回帖 发帖
正文

主题:请OMRON高手、版主帮我看看,谢谢了!

点击:1606 回复:5

我用VB6.0做的简单的监控程序,使用OMRON   HOSTLINK上位连接线系统。使用CPM1-CIF01适配器与一台CPM1A-20CDR PLC连接,通讯不上。我的PLC外设口设置为HOSTLINK,通讯设置为标准。后来写了个最简单的测试连接情况的小程序,还是通讯不上,请OMRON技术帮我看看,谢谢了!
我的RS232C使用的是9PIN,接线图如下:
   PLC      电脑
2……………………2
3……………………3
4,5短接         4,6短接
               7,8短接
9……………………5
VB6.0写的测试程序如下:
Private Sub cmds_Click()
   Timer1.Enabled = True          ’按下开始按钮,使定时器1使能
End Sub
Private Sub Command1_Click()
   MSComm1.PortOpen = False             ‘按下停止按钮,关闭串行口
End Sub
Private Sub Form_Load()
   Label1.Caption = ""         ’用于显示PLC返回帧数据
End Sub
Private Sub Timer1_Timer()
   MSComm1.CommPort = 1                  ‘HOSTLINK通讯参数设置
   MSComm1.Settings = "9600,e,7,2"
   MSComm1.InBufferSize = 1024
   MSComm1.OutBufferSize = 1024
   MSComm1.InputLen = 0
   MSComm1.InputMode = comInputModeBinary
   MSComm1.PortOpen = True                 ’打开串行口
   Data = "@00ts8899"                     ’待发送测试数据
   a = 0                                  ‘求FCS
   For i = 1 To Len(Data)
       d = Mid(Data, i, 1)
       a = Asc(d) Xor a
   Next i
   fcs = Hex(a)
   If Len(fcs) = 1 Then                       ’如果FCS为1位则补足2位
       fcs = "0" + fcs
   End If
   senddata = Data + fcs + "*" + Chr(13)      ‘从串行口发送数据帧
   MSComm1.Output = senddata
                                                '读取应答帧
   Do
       DoEvents
   Loop Until MSComm1.InBufferCount >= 13
   Do
       tag1 = MSComm1.Input
   Loop Until MSComm1.InBufferCount = 0
   Label1.Caption = tag1                ’ 在屏幕上显示PLC返回的测试数据
End Sub
07-01-14 13:53
经过一天的努力修改,终于搞定了,能进行简单的监控,设置参数和发送设备启动,停止命令等。虽然没有人顶,但我还是要感谢工控网,为我们 提高很好的一个交流的平台。
07-01-15 05:25
在这里我要感谢利昌机电,谢谢!
07-01-15 05:25
沒幫上!你自己的努力成果,與我無干^^
07-01-15 12:06
如果想用一个按钮00000控制一个指示灯01000,用vb做一个上位鸡控制,命令字怎么写啊?@+WR+0000+0001+*+char$(13)这样对不对?
07-06-01 14:49

工控新闻

更多新闻资讯