似水流年ol
级别: 论坛先锋
精华主题: 0
发帖数量: 88 个
工控威望: 1119 点
下载积分: 554 分
在线时间: 122(小时)
注册时间: 2017-07-22
最后登录: 2024-04-02
查看似水流年ol的 主题 / 回贴
楼主  发表于: 2021-02-20 13:11
请问欧姆龙怎么用几段程序大量处理模拟量数据或者伺服转换公式,之前用三菱都是用循环+变址,欧姆龙好像实现不了。如果哪位大神有方法可以实现还请指导一下,谢谢了
geezer
经济基础决定上层建筑
级别: 家园常客
精华主题: 0
发帖数量: 33 个
工控威望: 715 点
下载积分: 350 分
在线时间: 27(小时)
注册时间: 2020-11-05
最后登录: 2024-03-15
查看geezer的 主题 / 回贴
1楼  发表于: 2021-02-20 16:39
以CP1H-XA为例探索欧姆龙PLC模拟量采集及处
一、模拟量在PLC中数据转换

1)PLC信号分为模拟量和开关量:

开关量信号(数字量)只有两种状态,信号以数据位为单位;模拟量信号是指限制在一定范围的连续的电流/电压/电阻等信号。在PLC中读取值为二进制的数据字,它根据采集模块的范围不同而不同。

2)模拟量输入输出信号的连接要点:

1、用屏蔽线缆连接信号,屏蔽层线要接地;
2、在系统中布线,一定要与动力线和强电线分开布置。
3、对于有变送器为220VAC以上电源时,最好分线布线。
4、模拟量输入信号的电路是有源的,如果变送器为有源输出,可直接接入模块;如果是无源的,则要串入24VDC,独立的外部电源,模拟量输入输出单元中以太网单元,串口单元,总线单元等等在OMRON的PLC中都属于智能单元。智能单元本身是一个独立的系统。有自己的CPU、系统程序、存储器、与外界相连的接口。

二、模拟量采集处理

1)模拟量处理过程(以CP1H-XA内置模拟量为例)

1. 通过拨动开关模拟逐个设定输入使用时的输入切换 :电压/电流输入:是否需要使用逐个设定输入输出;输入输出的分辨率设定(全部输入输出共通)
2. 模拟输入量程设定(逐个): -10~+10V、0~10V、0~5V、1~5V、0~20mA、4~20mA
3. 模拟输出量程设定(逐个):-10~+10V、0~10V、0~5V、1~5V
4. 模拟输入输出设备的连接
5. 模拟输入:转换值的读取
6. 模拟输出:设定值的写入

2)模拟量处理过程:

对于模拟输入的信号,PLC连续接收后被其CPU转变成为相应的数字量的连续信号。同样模拟输出信号也是由PLC连续发出,由数据量转变为相关的电流或电压信号。
由于PLC类型的不同,模块采集信号的精度也不同。
小型的模拟量单元:如CPM1A系列,其精度为255;
组合式的模拟量单元:如C200HE,精度为4096;
内置的模拟量通道:CP1H-XA 精度为6000
模拟量处理单元的CPU将采集处理的模拟量数据置于PLC内部寄存器一定的区域里,由PLC的CPU访问。不同类型的PLC,设置这些区域也不尽相同。
整体式机型的PLC,模拟量单元的地址是固定的。如CP1H-XA内置的模拟量,CPU是规定200~203为其输入信号占用字,210~211为输出信号占用字;精度为6000或者12000。它的设置是在编程软件的[设置]菜单中进行设置;并在程序中激活后设置随PLC程序一起下装到PLC中,重新上电设置生效后,再在程序中根据代码用指令激活此单元。
组合式机型的PLC,模拟量单元的地址是要通过模块上开关选择设置,还要在编程软件的[IO表和单元设置]菜单中作相关设置;或者通过在线连接向PLC的内存写设置。对C系列组合式机型的PLC,模拟量单元的地址除了模块上开关选择设置,还要通过在线连接向PLC的内存写设置。
对于模拟量输出单元,除了设置数据,同程序一起下载到PLC之外,还要在程序中初始化,激活此模块;重新上电生效。和前面所述的设置模拟量参数类似。

3)采集到PLC的模拟量信号,一般是要进行滤波,平均或工程量转换处理的。

滤波的处理步骤如下:
1、有效性判断,对于采集信号作超出范围的判断,采样范围之外的舍去;
2、平均滤波,有多种方式,通过均值去掉非正常值;
3、PLC有AVG(平均指令) 进行多值的平均。
对需要显示的模拟量,一般要有工程量的转换,PLC有SCL指令作二-十进制线性转换;还有的仪表信号是要进行如方根转换,或者直接计算。
geezer
经济基础决定上层建筑
级别: 家园常客
精华主题: 0
发帖数量: 33 个
工控威望: 715 点
下载积分: 350 分
在线时间: 27(小时)
注册时间: 2020-11-05
最后登录: 2024-03-15
查看geezer的 主题 / 回贴
2楼  发表于: 2021-02-20 16:40
数据bai传送指令MOV(21)和数据求反du传送指令MOVN(22)
这两条zhi指令都是用于模dao数转换后的数据传zhuan送。
当MOV前面shu的状态为0N时,执行MOV指令,在每个扫描周期中把S中的源数据传送到目标D所指定的通道中去。当MOV前面的状态为0FF时,执行MOVN指令,在每个扫描周期中把S中的源数据求反后传送到目标D所指定的通道中去。执行传送指令后,如果目标通道D中的内容全为零时,则标志位25506为ON。
holdkcxyz
级别: 工控侠客
精华主题: 0
发帖数量: 125 个
工控威望: 4019 点
下载积分: 2357 分
在线时间: 282(小时)
注册时间: 2018-11-07
最后登录: 2024-04-26
查看holdkcxyz的 主题 / 回贴
3楼  发表于: 2021-02-20 16:41
欧姆龙的变址了解下。
似水流年ol
级别: 论坛先锋
精华主题: 0
发帖数量: 88 个
工控威望: 1119 点
下载积分: 554 分
在线时间: 122(小时)
注册时间: 2017-07-22
最后登录: 2024-04-02
查看似水流年ol的 主题 / 回贴
4楼  发表于: 2021-02-21 13:13
引用
引用楼主似水流年ol于2021-02-20 13:11发表的 请问欧姆龙怎么用几段程序大量处理模拟量数据或者伺服转换公式 :
请问欧姆龙怎么用几段程序大量处理模拟量数据或者伺服转换公式,之前用三菱都是用循环+变址,欧姆龙好像实现不了。如果哪位大神有方法可以实现还请指导一下,谢谢了

输入寄存器是D1500,输出寄存器是D500,中间有两段伺服转换公式,按理说有多少数据就得写多少段公式,这样程序占用就比较大,用循环加变址可以简化成一段,可是欧姆龙的循环加变址有没有哪位大神有案例分享一下吗。欧姆龙的变址太难懂了
宿迁电工
级别: 论坛先锋
精华主题: 0
发帖数量: 893 个
工控威望: 1033 点
下载积分: 2559 分
在线时间: 364(小时)
注册时间: 2018-11-30
最后登录: 2024-04-26
查看宿迁电工的 主题 / 回贴
5楼  发表于: 2021-03-06 21:25
欧姆龙CP1H是PLC支持ST语言编程,只限于模块内,可以把换算程序写成一个模块,主程序调用。
长三角地区,PLC编程,工业机器人编程
吸塑机,轴承合套仪程序开发
专业外协
 TEL:13815796487(微信同号)