您现在的位置是:首页 > 变频技术 > 变频技术

台达变频器与计算机串口的通信

来源:艾特贸易2017-06-04

简介变频器自身带有控制面板,具有简单、高效的特点,但由于现场操作不够方便、直观性差以及仅能实现单机控制等缺点,实际应用中多采用 E 模式运行,即信号完全取自变频器外部。通

    变频器自身带有控制面板,具有简单、高效的特点,但由于现场操作不够方便、直观性差以及仅能实现单机控制等缺点,实际应用中多采用E模式运行,即信号完全取自变频器外部。通过VB6.0的人机界面实现对变频器控制,应用RS-485总线结构可以同时实现对32台变频器的控制。    1.接口转换    现在一般的PC都有RS-232串口,但除工控机外少有RS-485接口,而为了与变频器通信,采用ADAM-4520转换模块。将该模块的一端直接插在计算机的串口上,另一端提供一个半双工的RS-485接口,而不需要握手信号。其内置的特殊的I/O电路可以自动控制信号的传输方向。这种RS-485控制对用户是完全透明的,为RS-232编写的软件可以不加修改地用在这里。该模块需要外加一个+10+30V直流电源,可以隔离3000V的高电压,传输速率达到115.2kbit/s。图6-23为系统的总体设计方框图。
系统的总体设计方框图
    6-23    系统的总体设计方框图    2.台达变频器的通信协议    VFD-A系列变频器具有内建RS-485串联通信界面,串联通信埠(SG+SG-)位于控制回路端子处,各端子的定义如下:SG+为信号正端,SG-为信号负端。    使用RS-485串联通信界面时,每一台VFD-A变频器必须预先在Pr.-78(参数78)中指定其通信位址,计算机便根据其个别的位址实施控制。另外,计算机可控制将命令码中的参数“A”设定为02H,可同时对所有连线的变频器进行控制。    协议格式:传输速率设定范围为1200bit/s2400bit/s4800bit/s (Pr.-77),每一个字段以11个位表示,采用奇校验。协议字节格式见表6-3    6-3    协议字节格式
协议字节格式
    通信格式:包括控制指令、参数设定指令、参数读取指令以及变频器状态读取指令。这里以控制指令为例说明如下。    控制指令的格式为:CSA.UU.MM.FFFF    其中:C为控制命令字串“CONTROL”的字头;S为和检查(03H);A为命令认可,01H表示单一台,02H表示所有连线变频器;UU为通信位址(0031)MM为运转命令(X=无定义)X0表示停止;X1表示正转运行,X2表示停止,X3表示反转运行,X4X5表示寸动正转,X6X7表示寸动反转,X8表示异常发生后重置变频器;FFFF为频率指令,设定范围为00004000,代表的设定频率值Hz=0.0400.OHz,例如“1234”表示123.4Hz    在图6-23PCI控机通过ADAM4520 (RS-232RS-485)与多台变频器相连接,所连接的变频器最多可达到32台(可通过中断器扩展到254台)。每台变频器被赋予各自的地址码用以识别身份,这样上位机便能通过RS-485通信线对挂在上面的所有变频器进行控制操作。    台达VFD-B系列变频器的通信协议遵守MODBUSASCII模式,通信方式为RS-485,传输速率最高可达38400bit/s,通信资料格式可自设定。变频器发送、接收控制的通信协议见6-4    6-4    变频器发送、接收控制的通信协议
变频器发送、接收控制的通信协议
变频器发送、接收控制的通信协议
    功能码为03H时表示读出寄存器内容,比如询问信息字串的格式如下:
    回应信息字串的格式为:
    这里表示变频器位址为01H,读出两个连续寄存器内的资料内容,起始寄存器的位址为2102H,结果为1770H (60.00Hz)    若功能码为06H,表示写入一个word至寄存器,比如对于变频器位址01H,写入6000(1770H)至变频器内部设定参数0100H,其询问信息字串格式与回应信息字串格式相同。
    因此,对于变频器通过面板按键设置的功能,通过以上的通信协议也一样能实现。通过ADAM4520RS-485通信线能同时控制多台变频器,同时各变频器的运行状态和内部设定参数也能实时地回送给上位机或者通过上位机进行修改,这就大大方便了使用,增加了控制系统的灵活性。    3.在Visual C++ 6.0下对变频器进行串行通信控制    (1)串口初始化    Windows 98环境提供了完备的API应用程序接口函数,通信函数是由中断驱动的:发送数据时,先将其放入缓存区,串口准备好后就将其发送出去;传来的数据迅速申请中断,使Windows接收它并将存入缓冲区,以供读取。串口通信程序的编写步骤如图6-24所示。初始化程序代码如下:
串行通信程序的编写步骤
    6-24    串行通信程序的编写步骤
    (2)串行通信程序    读取变频器各个参数的数值并作相应处理,用以在显示屏上监视变频器的状态(如频率指令(F)、输出频率、输出电流、DC-BUS电压等),还可以读取变频器的内部设定参数00-0011-04等。