前期准备
需要的硬件:三菱fx3g型plc,485通讯模块(fx3g-485bd), 变频器一台英威腾,触摸屏(mt6071ip)。
需要了解内容:plc通信协议,发送指令,变频器通信参数设置。
接线
接线较为简单,将fx3g-485-bd模块插在plc上,将sdb和rdb短接,sda和rda短接,在变频器上485+端子引出导线接到模块的sda和rda上,在变频器上485-端子引出导线接到模块的sdb和rdb上,采用rs485接口工作半双工,它的意思就是信号的读取和写入不能同时发送,发送的时候不能读取。
变频器参数设置
将变频器的运行指令和频率指令都改成modbus通信设定,在p00组上p00.01运行指令通道改为2:通讯运行指令通道(缺省值0),p00.07b频率指令选择8:modbus通讯设定(缺省2),p00.09设定源组合方式1:b,当前频率设定为b频率指令。
通讯参数的设置,在p14组,p14.00将变频器的站号设为1,p14.01波特率设为9600,p14.02数据位校验设为无校验(n, 7, 2)for ascii。
plc通讯参数的设定
plc参数的设定有两种方法
1.在软件(gx-works2)里设置:点击导航中的参数→plc参数→plc的系统设置
plc系统参数设置
2.采用程序设定
梯形图参数设置
m8161=1,为8位运算,意思就是忽略高8位只传送数据的低8位,为什么这么做后面会说到。mov hoc88 d8210是指定通讯格式,它是怎么算出来的,我们看下d8120内容:
d8120内容
d8210是一个16位的数据,根据设定的参数来算计算,比如上述程序的h0c88是怎么来的,看下通讯方式是,波特率9600,7位数据长度,无奇偶校验,停止位是2,控制线是无协议的调制解调器模式(rs485接口):
通讯参数计算
相关指令
串行数据发送rs,16进制转换为ascii码asci,ascii码转换为16进制数hex。
rs:该指令是用于通过安装在基本单元上的rs-232c或rs-485串行通信口进行无协议通信,从而执行数据的发送和接收的指令。
rs举例
rs指令用于指定从fx可编程控制器发出的发送数据的起始软元件和数据点数, 以及保存接收数据的起始软元件, 和可以接收的最大点数,编程按照下列要领:
发送指令
接受指令
ascii 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符,modbus协议有两种传输模式,ascii和rtu模式, 本次变频器采用ascii模式传输信号, 上一章的hmi控制变频器采用的就是rtu模式。因此采用ascii模式, 所以数据格式m8161选择8位数据模式。
plc程序
程序大致分为4部分:
5.1 变频器功能说明
采用ascii模式传输数据,在 ascii 模式中,帧头为“:”(“0x3a”),帧尾缺省为“crlf”(“0x0d”“0x0a”)。在 ascii 方式下,除了帧头和帧尾之外,其余的数据字节全部以 ascii 码方式发送,先发送高 4 位位元组,然后发送低 4位位元组。ascii 方式下数据为 8 位长度。对于‘a’~‘f’,采用其大写字母的 ascii 码。此时数据采用 lrc校验,校验涵盖从从机地址到数据的信息部分。校验和等于所有参与校验数据的字符和(舍弃进位位)的补码。
modbus报文
ascii 帧的标准结构
modbus对变频器功能说明:
功能说明
程序 程序可以分5部分:
6.1通讯设定
就是第3plc通讯参数的设定的梯形图
6.2 ascii码转换
ascii码转换
根据ascii 帧的标准结构将数据转换为ascii码,起始符start:3ah
地址address:就是站号, 两个ascii码组成, 例如站号1, 地址就是01h, 转成ascii码就是30,31, plc监控:
程序中显示的是10进制
功能码function:就是要写入数据还是读取数据,由两个ascii码组成,写入是06h, 读取是03h。
功能码地址:就是写入或读取的地址,由两个ascii码组成。
数据内容data:就是要写入或读取的数据内容, 由2n个ascii码组成。
lrc校验值:lrc检查码,由两个ascii码组成
结束符end:end hi=0dh, end lo=0ah。
rs d0 k17 d50 d15 这条指令就是发送以上内容的,d0起始符, d1d2地址,d3d4功能码,d5d6命令码高位地址,d7d8命令码低位地址,d9d10数据内容高位地址,d11d12数据内容低位地址,d13d14lrc检查码,d15d16结束符。
6.3 写入数据
写入数据
m8122是送信指令, 表示在发送信息,asci d200 d500 k4.d200为频率数据, 将d200数据转换成ascii,例如d200=0abch,k4就表示d500=0,d501=a,d502=b,d503=c,只转换4位。
d101站号,d102功能码,d103d104功能码高低位地址,d105d106数据内容。
根据变频器的modbus功能,我们知道写入频率的地址是2001h, 因此高位20h传到d103,低位01h传到d104,然后将频率值传送到d105d106, 传送完毕lrc值复位。
这样就完成了写的功能,变频器的正反停功能根据上表依次编程。
6.4 读取数据
由于采用半双工工作,写入和读取不能同时进行,
数据读取
意思就是读取数据时,必须在送信、回信、写入指令意外完成。查看变频器功能表,读取频率的地址是3000h。
hmi界面:
hmi界面
关于FRAM技术的设备配置介绍
移动照明的A面与B面
大联大诠鼎集团力推TOSHIBA全面MID移动上网之完整解决方案
LSI推出采用ARM领先技术的全新通信处理器Axxia 5500
在没有散热器的情况下,SA310 3相SiC模块能做什么?
三菱PLC采用RS485控制变频器实例
iPhone11成上半年最畅销手机,iPhone手机无线充电宝推荐
振动和冲击试验
诺基亚3310无愧于一代神机_全球首款4G功能机芯片
一种基于FPGA的税控算法加密卡各模块设计
基于无桥Boost的单级PFC半桥DC/DC变换器
Firefly-RK3399开发板
可燃气体报警器的检定
盈鹏飞科技EP9315嵌入式主板介绍
手持机充电底座的设计特点是什么
泰克P6139A和P6139B示波器无源探头有什么区别?
Beeline和华为联手在俄罗斯展示了5G全息通话
摩雷三分频汽车音响改造案例(18款霸道/福特锐界/大众帕萨特改装)
智慧公安人脸识别平台开发重点人员管控系统搭建
中国移动将与百度联合推出“百度圣卡”,“5元30M”流量将不存在?