您现在所在的是:

欧姆龙OMRON

回帖:65个,阅读:31408 [上一页] [1] [2] [3] [4] [5] [6] [7] [下一页]
1791
陳逸倫
文章数:333
年度积分:50
历史总积分:1791
注册时间:2003/12/4
发站内信
发表于:2003/12/8 10:59:00
#20楼
RKC CD401 網路上看不到PDF,請MAIL:ct.et@msa.hinet.net
1791
陳逸倫
文章数:333
年度积分:50
历史总积分:1791
注册时间:2003/12/4
发站内信
发表于:2003/12/8 11:20:00
#21楼
我有收到你的e-mail,內容有些無法顯示,但是看起來都一樣.
1219
zjh2004
文章数:96
年度积分:50
历史总积分:1219
注册时间:2003/12/5
发站内信
发表于:2003/12/8 11:39:00
#22楼
那你收到了吗?如果在邮箱里没有收到的话那你在网上也可以看?

http://www.rkcinst.co.jp/english/pdf_manual/imcb03_e4.pdf
1791
陳逸倫
文章数:333
年度积分:50
历史总积分:1791
注册时间:2003/12/4
发站内信
发表于:2003/12/8 12:59:00
#23楼
第16樓設定要兩邊相同,連線+對+,-對-若以上無問題待商請八百壯士借一只RKC CB系列溫控器測試.
1791
陳逸倫
文章数:333
年度积分:50
历史总积分:1791
注册时间:2003/12/4
发站内信
发表于:2003/12/8 13:11:00
#24楼
CHECK程式發覺BCC轉換少一步驟,請注意新加入C$

A$ = "S1" + "100.0" + Chr(3)  ‘100.0是設定值(SV)
GoSub FCS
C$=Chr(R$)
B$ = Chr(4)+ "00"+Chr(2)+A$ +C$   ‘00是Unit No,R$是BCC
Label1.Caption = B$
MSComm1.Output = Trim(B$ + Chr(13))  ‘Chr(13)代表按鍵Enter輸入
MSComm1.InputLen = 0
If MSComm1.InBufferCount Then
  INSTRING = MSComm1.Input
End If
Label2.Caption = INSTRING
Exit Sub
FCS:
Q = 0
L = Len(A$)
For I = 1 To L
Q = Asc(Mid(A$, I, 1)) Xor Q
Next I
R$ =Q
If Len(R$) = 1 Then
R$ = "0" + R$
End If
Return
ACK 是06H,NAK是15H於VB看不到,可以檢查是否收到Chr(06),Chr(15)



[此贴子已经被作者于2003-12-8 13:26:40编辑过]
1219
zjh2004
文章数:96
年度积分:50
历史总积分:1219
注册时间:2003/12/5
发站内信
发表于:2003/12/8 14:47:00
#25楼
Label2.Caption = INSTRING返回的是什么??
我按照你的意思修改了,但是依然没有反应!!温控仪没有反应,程序窗体上也没有返回值。
我相信我接的线一定是按照你说的接的,如果你没有错的话,我这里一定没有问题了。是不是温控仪有RS485根本就没有通上信号???还是什么愿因????请指点啊,陈老师???
1124
flydragon
文章数:77
年度积分:50
历史总积分:1124
注册时间:2001/4/14
发站内信
发表于:2003/12/8 16:14:00
#26楼
今天看了一遍手册,好累呀!!!!
要解决通讯问题,需要注意以下几个方面
1。确认接线是否正确。这需要查PCL-740的手册。我印象中试1脚接DATA-,2脚接DATA+,和上面的一位朋友给出的是相反的。
2。设置温控器的通讯模式。可参考手册的第5到15页,有图,应该容易看懂。注意,设置完后要重新加电。
3。软件编程。在这里我假设温控器的设置是地址:00,波特率 9600 ,8位数据位,1位停止位。



Const SETTINGS = "9600,n,8,1" '定义串口的状态
Const COMPORT = 4 '定义串口号
Const ADDRESS1 = "00" '定义地址号
Const EOT=CHR$(04)
Const ENQ=CHR$(05)
Const STX=CHR$(02)
Const ETX=CHR$(03)
Const ACK=CHR$(06)
Const NAK=CHR$(21)

Const MSCOMM_EV_RECEIVE = 2 '收到了MSComm1.RThreshold个字符
Const MSCOMM_ER_RXOVER = 1008 '接收缓冲区溢出
Const MSCOMM_ER_TXFULL = 1010 '传输缓冲区溢出
Const TIME = 0 '设定扫描时间
Dim Volume, Flow, Temperature, Pressure As Double '定义双精度变量
Dim i As Single '定义循环变量
Dim InData, OutData As String '定义字符串变量


Private Sub Form_Load() '窗体初始化
 
   Call InitPort '初始化端口
   Timer1.Interval = TIME '设定定时器时间
   Timer1.Enabled = True '启动定时器
 
End Sub

Private Sub InitPort() '端口初始化
   MSComm1.SETTINGS = SETTINGS
   MSComm1.CommPort = COMPORT
   MSComm1.InputLen = 32
   MSComm1.InBufferSize = 512
   MSComm1.InBufferCount = 0
   MSComm1.OutBufferSize = 512
   MSComm1.OutBufferCount = 0
   MSComm1.PortOpen = True
End Sub

Private Sub SendAddress() '发送流量计地址
   MSComm1.Output = OutData
   Do '等待发送完成
   Loop Until MSComm1.OutBufferCount = 0
   MSComm1.InBufferCount = 0 '清空接收缓冲区
   MSComm1.RThreshold = 32 '设定接收字符数
End Sub

Private Sub MSComm1_OnComm() '等待完成接受
   
   
              这里我省略了错误判断的内容

       
       InData = MSComm1.Input
       If Left(InData, 1) = STX And Left(Right(InData, 2),1) = ETX Then '判断接收数据的头和尾,如果想进一步判断,还可以计算BBC ,并和得到的BBC进行比较,这里我没做。
           Volume = Val(Mid(InData, 3, 8)) 数值转换,Volume为读到的数据
           OutData=ACK,确认收到
           Call SendAddress
       Else
           OutData=NAK,确认未收到,重发
   Call SendAddress
       End If
           
   
           
End Sub

Private Sub Timer1_Timer() '定时器到设定时间后,开始发送启动和地址码
 
       OutData = EOT + ADDRESS1 + "M1" +ENQ , 读取M1所定义的数据,M1的定义在手册28页
       Call SendAddress
   
     
End Sub

匆忙之中,如果有不对的地方,还请海涵,这里我只实现了polliing 的一个功能,其余的就举一反三吧
由于手头没有设备,没有调试!!
2492
老獅子 版主
文章数:604
年度积分:50
历史总积分:2492
注册时间:2003/12/7
发站内信
发表于:2003/12/8 16:25:00
#27楼
高手出現啦!呵呵!..........臥虎藏龍
龇牙裂嘴  予取予求
尔当思量  贡献多少
--------------------------要软体找你的代理商!
                         要资料找你的供货商!
1219
zjh2004
文章数:96
年度积分:50
历史总积分:1219
注册时间:2003/12/5
发站内信
发表于:2003/12/8 16:39:00
#28楼
TO:flydragon
1)1 pin 是接DATA-;2 pin 是接DATA+ 说明书上是这样说的。你说是对的。
2)这个我以都设置好了。
3)正在调、、、、、、、、、、、、
谢谢高手这么的关心。真的太谢谢你了。
就等结果了。。。。。
1219
zjh2004
文章数:96
年度积分:50
历史总积分:1219
注册时间:2003/12/5
发站内信
发表于:2003/12/8 16:42:00
#29楼
对了还有一个问题是:温控仪上的A和B还SG哪个是DATA-哪个是DATA+呢?

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004