您现在所在的是:

电脑编程

回帖:86个,阅读:68207 [上一页] [1] [2] [3] [4] [5] [6] [7] [8] [9] [下一页]
* 帖子主题:

Modbus 通讯协议编程

1289
kuailin
文章数:91
年度积分:50
历史总积分:1289
注册时间:2003/6/21
发站内信
发表于:2004/1/10 21:49:00
#10楼
台达变频器(一台)与电脑如何通信?
你好:
 在网上拜读了你的文章( Modbus 通讯协议编程),本人正需要有此方面的帮助,不知
能否指点一二。谢谢。如果按你说的Modbus通讯,如何设置变频器各项参数??

台达变频器(一台)与电脑如何通信?

硬件:
台达变频器是:VFD015M21A系列
通信模块:UOTEK 公司的UT-201型号 RS2323/RS485转换器

RS232/RS485 转换器与VFD015M21A变频器的接线如下:
 RS232/RS485               变频器
T/R-   ----------------->  SG-
T/R+   ----------------->  SG+

变频器的参数设置如下:
 参数      设置值   (备注)
 P00       d03      (主频率输入通信输入RS485)  
      注:   端子插梢跳线 :J5,J6,J7皆为1脚与2脚连接
 P01       d03      (运转指令由通信输入控制,键盘STOP有效)
 P66       d60.0    (通讯主频设定)
 P88       d01      (RS485通讯地址)
 P89       d01      (资料传输速度,9600位元/秒)
 P92       d00      (通讯资料格式,)
 P113      d00      (通讯BUS选择,ASCII BUS模式)
(上面参数设置是否有误?还须设置其他的参数吗?)



软件:
上位机用VB6.0编程语言.
引入MSCOMM控件,其属性设置如下:
.Comport =1
.HandShaking=0
.InputMode =0
.InBufferSize=1024
.OutBufferSize =512
.Setting="9600,n,7,2"
其他值默认


本人依据VFD015M21A变频器的通信资料格式,用VB设计一个窗体,然后在其上
放置一个命令按钮,整个程序的代码如下:


Private Sub Command1_Click()
    '读取驱动器01位置的P04参数
  MSComm1.Output = Chr(2) + "010804" + Chr(3) + "30"
TimeDelay 100   '为一个时间延时函数
Text1.Text = MSComm1.Input
End Sub

Private Sub Command2_Click()
    '让驱动器启动反转
 MSComm1.Output = Chr(2) + "0102" + Chr(3) + SumChk("0102" + Chr(3))
End Sub

Private Sub Command3_Click()
    '让驱动器停止运转
 MSComm1.Output = Chr(2) + "0100" + Chr(3) + SumChk("0100" + Chr(3))
End Sub

Private Sub Form_Load()
MSComm1.PortOpen = True
End Sub

Private Function SumChk(Dats$) As String  '和检验函数
   Dim i&
   Dim CHK&
   For i = 1 To Len(Dats)
       CHK = CHK + Asc(Mid(Dats, i, 1))
   Next i
   SumChk = Right(Hex$(CHK), 2)
End Function
       
结果上面的程序并不能与变频器通信,发送的命令变频器并不响应,并且MSCOMM
控件也没有返回值.

请问发生错误的原因是在哪一部分?是变频器参数设置部分或是VB程序中发送
给变频器的命令不正确??请问如何修正?

如果有简单的示例寄我,不胜感谢.lj-000@163.net


改用台达变频器是:VFD015M23A系列变频器试验,变频器设置同上(没有端子插
梢跳线,没有P113设置),VB程序同上,发送三个不同命令时,结果时有同一个p字
符返回, 但发送命令还是起不了作用.这又是什么原因 ?


1289
kuailin
文章数:91
年度积分:50
历史总积分:1289
注册时间:2003/6/21
发站内信
发表于:2004/1/10 21:52:00
#11楼
台达变频器(一台)与电脑如何通信?
你好:
 在网上拜读了你的文章( Modbus 通讯协议编程),本人正需要有此方面的帮助,不知
能否指点一二。谢谢。如果按你说的Modbus通讯,如何设置变频器各项参数??

台达变频器(一台)与电脑如何通信?

硬件:
台达变频器是:VFD015M21A系列
通信模块:UOTEK 公司的UT-201型号 RS2323/RS485转换器

RS232/RS485 转换器与VFD015M21A变频器的接线如下:
 RS232/RS485               变频器
T/R-   ----------------->  SG-
T/R+   ----------------->  SG+

变频器的参数设置如下:
 参数      设置值   (备注)
 P00       d03      (主频率输入通信输入RS485)  
      注:   端子插梢跳线 :J5,J6,J7皆为1脚与2脚连接
 P01       d03      (运转指令由通信输入控制,键盘STOP有效)
 P66       d60.0    (通讯主频设定)
 P88       d01      (RS485通讯地址)
 P89       d01      (资料传输速度,9600位元/秒)
 P92       d00      (通讯资料格式,)
 P113      d00      (通讯BUS选择,ASCII BUS模式)
(上面参数设置是否有误?还须设置其他的参数吗?)



软件:
上位机用VB6.0编程语言.
引入MSCOMM控件,其属性设置如下:
.Comport =1
.HandShaking=0
.InputMode =0
.InBufferSize=1024
.OutBufferSize =512
.Setting="9600,n,7,2"
其他值默认


本人依据VFD015M21A变频器的通信资料格式,用VB设计一个窗体,然后在其上
放置一个命令按钮,整个程序的代码如下:


Private Sub Command1_Click()
    '读取驱动器01位置的P04参数
  MSComm1.Output = Chr(2) + "010804" + Chr(3) + "30"
TimeDelay 100   '为一个时间延时函数
Text1.Text = MSComm1.Input
End Sub

Private Sub Command2_Click()
    '让驱动器启动反转
 MSComm1.Output = Chr(2) + "0102" + Chr(3) + SumChk("0102" + Chr(3))
End Sub

Private Sub Command3_Click()
    '让驱动器停止运转
 MSComm1.Output = Chr(2) + "0100" + Chr(3) + SumChk("0100" + Chr(3))
End Sub

Private Sub Form_Load()
MSComm1.PortOpen = True
End Sub

Private Function SumChk(Dats$) As String  '和检验函数
   Dim i&
   Dim CHK&
   For i = 1 To Len(Dats)
       CHK = CHK + Asc(Mid(Dats, i, 1))
   Next i
   SumChk = Right(Hex$(CHK), 2)
End Function
       
结果上面的程序并不能与变频器通信,发送的命令变频器并不响应,并且MSCOMM
控件也没有返回值.

请问发生错误的原因是在哪一部分?是变频器参数设置部分或是VB程序中发送
给变频器的命令不正确??请问如何修正?

如果有简单的示例寄我,不胜感谢.lj-000@163.net


改用台达变频器是:VFD015M23A系列变频器试验,变频器设置同上(没有端子插
梢跳线,没有P113设置),VB程序同上,发送三个不同命令时,结果时有同一个p字
符返回, 但发送命令还是起不了作用.这又是什么原因 ?

1069
APPAL
文章数:70
年度积分:50
历史总积分:1069
注册时间:2004/1/4
发站内信
发表于:2004/1/13 10:40:00
#12楼
如获至宝哇!
谢谢!
我现研究一下,有不懂的地方还要向您请教,恳请您不要拒绝。
在家靠父母,出外靠朋友,网上就靠各位大虾啦!
903
ncdwr
文章数:1
年度积分:50
历史总积分:903
注册时间:2004/3/1
发站内信
发表于:2004/3/1 20:10:00
#13楼
你好:
      在网上拜读了你的文章( Modbus 通讯协议编程),本人正需要有此方面的帮助,不知能否指点一二。请问下位机与上位机该如何通信,我用的是汇编语言,
我的信箱是:ncdwr123@yahoo.com.cn.
1024
mimi
文章数:46
年度积分:50
历史总积分:1024
注册时间:2003/12/23
发站内信
发表于:2004/3/10 11:18:00
#14楼
本人水平很低,先在此注册,以后有问题时再向各位高手请教!!!
gk_mimi@tom.com
919
wjf1010
文章数:6
年度积分:50
历史总积分:919
注册时间:2004/4/1
发站内信
发表于:2004/4/6 13:00:00
#15楼
我也正在做这方面的,你可以帮我吗?
我是想通过pc机控制moden来拨打和接受电话,通过vb编的你能给我帮助吗?
wjf1010@sohu.com
906
to_gter
文章数:1
年度积分:50
历史总积分:906
注册时间:2004/4/7
发站内信
发表于:2004/4/7 12:56:00
#16楼
嘎,感谢上传资料,我们都是用VB编的
1037
yhlcon
文章数:28
年度积分:50
历史总积分:1037
注册时间:2004/1/8
发站内信
发表于:2004/4/8 14:14:00
#17楼
thanks  good friends
       座右铭:努力诚信,团结合作!
18266
ZHTOK
文章数:11585
年度积分:-16
历史总积分:18266
注册时间:2004/3/11
发站内信
2014相约国庆
发表于:2004/4/25 21:28:00
#18楼
谢谢。
830
winfeng
文章数:13
年度积分:50
历史总积分:830
注册时间:2001/12/12
发站内信
发表于:2004/4/26 17:31:00
#19楼
樓主可以

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

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

156.001