找回密码
 注册

QQ登录

只需一步,快速开始

搜索

NI工控机与台达变频器通讯的实现

[复制链接]
山海致远 发表于 2013-1-18 16:47:56 | 显示全部楼层 |阅读模式
  • 1 引言
      风力发电机组中的齿轮箱是一个重要的机械部件,而其中轴承性能的好坏对齿轮箱的性能起着至关重要的作用。根据用户要求,齿轮箱轴承出厂前要在模拟实际工况的试验机上进行测试。即齿轮箱轴承需在不同转速、载荷下进行性能试验和寿命试验。齿轮箱轴承转速的改变是由变频器驱动变频电机实现的。变频器运行频率的设定有三种方法:一是通过面板手工调节,这种方式已经不能满足频率频繁变化时使用需要。二是通过变频器的外部接口,外接模拟信号来控制设定频率。这种方式虽然简单,但存在设定频率不准确的问题,当外接模拟信号波动时,变频器的设定频率也随之变化。三是通过变频器的通讯口,利用参数设定指令来进行频率参数设定。这种方法能准确地控制变频器的频率。下面以台达vfd-b系列变频器为例,介绍一种基于labview软件利用串口实现工控机与变频器间通讯,进行频率参数设定、监视输出电流的方法。
    2 通讯系统总体设计
      本系统所采用的通讯方式是利用美国ni公司的工控机与台达vfd-b系列变频器的rs-485串口通讯。工控机的控制器为 ni pxi-8106,自带1个rs-232通讯串口。由于系统还需要与仪表和plc通讯,而且变频器、仪表和plc三者之间的通讯协议不同,工控机另配有1块串行通讯模块ni pxi-8431(含有两个rs-485串口)。使用工控机rs-232串口和台达变频器的rs-485串口通讯,中间需加rs-232/rs-485转换器,如图1所示。如果使用串行通讯模块ni pxi-8431的rs-485串口,须用db-9连接器连接工控机的rs-485串口与变频器的rs-485串口,如图2所示
    w1.jpg
    3 系统硬件接口
      台达vfd-b系列变频器的通讯口引脚定义、db-9连接器引脚定义、rs-232/rs-485转换器的接线端子排列见表1。
    w2.jpg

      台达vfd-b
      系列变频器通讯口使用的是水晶头,只需压两根线,为了减少干扰,通讯线最好使用双绞屏蔽线。使用工控机的rs-485通讯口时,须把db-9的4脚与8脚短接,然后连接变频器的4:sg+,把db-9的5脚与9脚短接,然后连接变频器的3:sg-,见图3。使用工控机的rs-232通讯口时,接线方法是把rs-232/rs-485转换器的d+/a连变频器的4:sg+,d-/b连变频器的3:sg-,见图4。
    w3.jpg
      3.1 通讯格式说明
      在本系统中,工控机与变频器通讯,工控机一侧不仅要设置相应的通讯参数,如通讯地址,波特率,数据位,停止位,变频器一侧也有一些参数需要设置。两者之间的通讯参数设置应一致。
      3.2 台达变频器的参数设置
      台达变频器的参数设置如表2所示。
    w4.jpg
      参数设置完以后,变频器需要重新上电,新的参数才会被应用。
      3.3 工控机与变频器通讯协议
      台达vfd-b系列变频器使用modbus networks 通讯协议。而 modbus可使用ascⅱ或 rtu两种资料编码。ascⅱ编码是将所要传送的资料先转换成相对的ascⅱ码后再传送,而rtu则是把资料直接传送,不再经过转换。下面以ascⅱ模式为例,说明工控机和变频器的主要通信协议如下。
      通讯功能码有:
      03h:读出寄存器内容
      06h:写入一笔资料至寄存器
      08h:回路侦测
      10h:写入多笔资料至寄存器
    •  由于台达变频器运行频率的单位是0.01hz,当需要的运行频率是20hz时,应写入数值2000,转换为十六进制是7d0h。频率命令写到内部设定参数2001h寄存器。  例如:对通讯地址01h,写入2000(7d0h)至变频器内部设定参数2001h寄存器,格式见表3。  在测试现场需要时刻观察变频器的输出电流,判断试验机有无异常状况。监视变频器内部参数2104h寄存器可观察变频器的输出电流。  例如:对通讯地址01h,读出2104h寄存器的资料内容,格式见表4。  ascⅱ模式的检查码由通讯地址开始到数据内容结束加起来的值,然后取2的补码。  以表3询问讯息为例检查码为:  01h+06h+20h+01h+07h+d0h=ffh,然后取2的补码=01h。 w5.jpg w6.jpg
    • 4 通讯系统软件设计
    •  labview语言是美国ni公司为适应计算机和软件技术的发展、加快仪器的开发和完善其功能而推出的。它使用图形化编程语言编程,执行程序的顺序是由数据流决定的,而不是传统文本语言的按命令行顺序连续执行。labview语言具有界面友好、易学易懂、开发周期短等优点,广泛应用于仪器控制、数据采集、数据分析和数据显示等领域。  在labview中进行串口通讯主要利用visa函数。 包括visa configure serial port 、visa write、 visa read 、 visa close等 vi。 利用串口发送数据,读取数据的程序如下:  第一步:初始化端口,设定端口号、波特率、数据位、停止位、奇偶校验等。  第二步:利用visa write.vi 发送数据。  第三步:如需从串口读取数据,可利用visa read.vi 读取数据。  第四步:如串口不再使用,可利用visa close .vi关闭串口。  在labview 2009基本串行写入和读取程序框图如图5。 w7.jpg
    • 5 结束语
    • 本文的创新点在于利用labview实现工控机与变频器通讯,通过工控机的串行端口来控制变频器,可以方便、直观地控制变频器的运行,监视变频器的运行状态,设置变频器的参数,实现变频器的联网及远程控制。

yamqq 发表于 2014-6-14 00:14:20 | 显示全部楼层
不一定要visa这个函数的,可以用modbus这个vi也可实现,还快一些
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|ELEOK |网站地图

GMT+8, 2024-12-22 16:22

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表