我自己的原文哦~       https://blog.51cto.com/whaosoft/14017854

===> PLC-- 欧姆龙 --专辑
一、欧姆龙PLC指令应用

欧姆龙PLC是一种功能完善的紧凑型PLC,能为业界领先的输送分散控制等提供高附加值机器控制;它还具有通过各种高级内装板进行升级的能力,大程序容量和存储器单元,以Windows环境下高效的软件开发能力。

条件:欧姆龙PLC变送器的输出信号为0-10V,对应温度为-100--200摄氏度;CP1H的模拟量输入量程设置为0-10V,分辨率选择6000
目的:使用SCL2指令将模拟量转换得到的数据0-6000(BIN)对应缩放到-100--200(BCD)摄氏度显示输出。

程序如下:

SCL2控制字解释:
200:CP1H的模拟量输入通道1
D100:偏移量(带符号BIN)详见下图
D101:ΔX(带符号BIN)详见下图
D102:ΔY(BCD)详见下图
D200:转换结果通道

结果:程序执行后就可以实现0-6000(BIN)转换到-100--200(BCD)摄氏度显示了。

注:因为BCD数是以十六进制来表示十进制数据的,因此对应的温度值应该用16进制方式去监视。例如:当200CH中的数据是&4000(即6.66V电压输入),那么用十六进制监控数据D200应该显示#100。
&符号表示十进制数;#表示十六进制数。

SCL指令应用案例

条件:欧姆龙PLC变送器的输出信号为0-10V,对应压力为0-400MPa;CP1H的模拟量输入量程设置为0-10V,分辨率选择6000。

目的:使用SCL指令将模拟量转换得到的数据0-6000(BIN)对应缩放到0-400MPa(BCD)显示输出。
程序如下:

结果:程序执行后就可以实现0-6000(BIN)转换到0-400(BCD)的压力值了。

注:因为BCD数是以十六进制来表示十进制数据的,因此对应的压力值应该用16进制方式去监视。例如:当200CH中的数据是&3000(即5V电压输入),那么用十六进制监控数据D200应该显示#200。

&符号表示十进制数;#表示十六进制数。

使用CPM1A-AD041的模块采集模拟量4-20ma的信号,该模拟量信号取自一位移传感器信号,代表一个0-100mm的距离,要怎么才能把输入通道里的数据转换成所对应的这个距离值呢?

可以使用SCL指令做此类的定标转换,该指令的作用是把一个16进制数据线性转换成一个BCD码的数据,这条指令有3个操作数见图1,S为源字,P1是参数首字,R是结果字,从P1到P1+3要设置4个值,P1是AY,P1+1是AX,P1+2是BY,P1+3是BX(见图2),在此例中因为输入的数据范围是0-1770 HEX,所以P1+1和P1+3分别是0和1770,而定标结果是0-100,所以P1和P1+2分别是0和100.具体可以这么做,例如AD041的输入通道是002,把DM0作为参数首字,D10作为结果字存放0-100的距离值。
SCL 2 DM0 DM10 
在执行SCL指令前先用MOV指令对DM0-DM3里分别赋值0,0,100,1770。之后SCL指令就能把输入的模拟量值定标成0-100的距离值了。

CPM1A-MAD02-CH使用了4路输入,但是它的输入数据是每两路放一个通道的,这样就无法进行监视或处理单独一路的输入数据了,有什么办法可以把两路数据分离开吗?

可以用MOVD指令,分别把两路数据传送到一个单独的通道。该指令有3个操作数,

操作数排列如图1,S是源字,也就是用模拟量输入的通道,DI是指定数位号,每个数字指定方式如上图2,也就是指定从源字中哪一个数字开始传送(一个通道是4个16进制数字,一路输入是半个通道,也就是2个16进制数字),传送几个数字,传送到目标通道的哪个数字,D就是指定目标通道。例如现在MAD02的第一第二路输入的通道是002通道,现在要把第一路数据传送到DM0,第二路数据传送到DM1,MOVD指令

CPM1A-AD041的外部输入电流和电压信号要如何接线?

电压输入:把外部的输入正信号接V IN,负信号接com端;

电流输入:把模块上V IN和I IN的端子短接后接输入正信号,负信号接com端。

CPM1A-MAD02-CH的参数应该怎么设置?

在n+1通道(n为分配给CPU单元或前一个扩展单元的最后一个输出通道)的每个位对应的作用按照如下表分配,在量程对应的位是设定输入输出的量程范围,在启动位和平均值对应的位是设定该功能使用与否,例如4路输入1路输出全用4-20ma,平均值功能不用,就在N+1通道设置C3FF HEX就可以了。

CP1H-X□40D□-□的型号是如何定义的? 

举例说明如下:

S:200CH为传送源地址,初始值为#ABCD(十六进制)。
D:300CH为传送目标地址,初始值为#0000(十六进制)。

例1:D300为#0211:
从左往右解释:
2表示传送到目标字以位2开始(即8-11位)。
1表示传送位数2位。
1表示传送源字以位1开始(即4-7位)。
程序执行后,300CH中的值为#BC00。
例2:D300为#0230:
从左往右解释:
2表示传送到目标字以位2开始(即8-11位)。
3表示传送位数4位。
0表示传送源字以位0开始(即0-3位)。
程序执行后,300CH中的值为#CDAB。

CPM2A-30CDR-A配CPM1A-AD041和CPM1A-20EDR1地址是如何分配的?

CX-Programmer下传程序的时提示UM区被保护,如何处理?

① 新建PLC程序时,在设备型号后的设定中选中了文件内存只读,只要把文件内存只读的钩去掉即可;

② 询问CPU型号:

a.CPM系列,DM 6602设为了×××1,可以在编程模式中将DM6602设为×××0后断电上电即可;

b.C200Ha或CQM1系列,CPU盖板下的开关中的DIP-1打在了On上,断电将DIP-1打为Off上电即可;

c.CP/CJ/CS系列,如果CPU被加过写保护密码,需要先释放密码,CPU盖板下的开关中的DIP-1打在了On上,断电将DIP-1打为Off上电即可。

在输入模拟量数据后,如果要把数据定标成带小数点的数据,可以怎么做?

两种办法,一是把定标的结果数据放大10的N次方来得出小数点,例如需要2位小数,例如把0-0FA0的输入定标成0-10.00V的BCD码,带两位小数,那就当成0-1000来定标。如果是CP1H或CQM1H那还有一种方法,就是如果把源数据转成浮点数来做浮点运算,也能做到,但因为CPM系列的PLC不支持浮点数,所以不能用这个方法。

4-20ma模拟量输入的时候,输入信号为4ma,但输入通道的数据在0,65535两个值跳,这是正常的吗?实际使用中如果不能有这样的数据怎么办?

65535的16进制其实是FFFF,因为PLC是用二进制补码表示负数的,其实这个数据是代表-1,也就是模拟量输入在0到-1之间跳动,是属于正常的。如果处理跳变的现象,不要直接用输入通道的数据,可以把这个数据传送到另一个中间通道后再使用,之前用一条CPS比较指令判断输入信号是否是负的,如果是负的,就不传送输入通道数据而传送0到这个中间通道,把信号作为0来处理

几根常用的RS-232C通讯电缆的接线?

①电缆XW2Z-200S-V连接图:

PLC(9孔)侧 PC(9针计算机)侧

2――――2

3――――3

9――――5

PLC的4与5短接

PC侧的4与6短接, 7与8短接

②电缆XW2Z-200S-CV连接图:

PLC(9孔)侧 PC(9针计算机)侧

2――――2

3――――3

4――――8

5――――7

9――――5

③电缆XW2Z-200P-V连接图:

PLC(25孔)侧 PC(9针计算机)侧

2――――2

3――――3

7――――5

PLC侧4,5短接,6,20短接。

计算机侧4,6短接,7,8短接。

④电缆XW2Z-200T连接图:

PLC(9孔)侧 触摸屏(9孔)侧

2――――3

3――――2

9――――9

PLC和触摸屏两侧的4,5都要短接。

CPM1A的外设口用CPM1-CIF11转成RS-422口后连计算机侧的RS-422电缆接线?

CIF11 计算机

SDA———RDA

SDB———RDB

RDA———SDA

RDB———SDB

NC模块的参数设置注意事项

a)当m+2控制字设置为0000,即x轴使用保存在PCU的FLASH中的轴参数时,NC模块控制电机正常;

b)当m+2控制字设置为0001,即x轴使用分配给特殊I/O单元的数据存储器区域字设置的轴参数时,NC模块控制电机不正常。

具体表现如下:

在a)状态时,开机搜索原点(n.06),然后手动控制电机进位,然后执行原点返回命令(n.07),电机返回原点;

在b)状态时,开机搜索原点,然后手动控制电机进位,然后执行原点返回命令(n.07),电机停止不动,检查n+2.05位,发现为ON,即表示定位结束。

根据现象,判断是NC模块没有完成正确的设置,以至于它没有能够正确判断相对和绝对移动。检查公共参数区域(m,m+1……),没有发现问题

。但是在检查到m+25~m+28参数区域时,这4个通道内值为0。

这4个通道分别是设置CCW/CW的软限位的。

在以前的试验中我们曾发现过当软限位未设置的情况下,NC模块不能执行正确的绝对和相对移动,现象是让电机按照绝对移动或者相对移动模式,运行结果是一样的,按照相对运行的模式运行。

所以估计是这个区域没有设置导致客户出现问题。将m+25~m+26设置为C0000001,m+27~m+28设置为3FFFFFFF。断电上电,按照b)模式运行,故障消除。

CJ1W-AD041的DM区设置?

对于DM字地址定义是m=20000+(单元号*100)D(m):输入使用设置D(m+1):输入信号范围设置D(m+2):输入1均值处理设置D(m+3):输入2均值处理设置D(m+4):输入3均值处理设置D(m+5):输入4均值处理设置D(m+6)~D(m+17):未使用忽略设置D(m+18):高8位是转换时间/分辨率设置,低8位是操作模式设置具体的参数设置请参照CJ1/CS1模拟量I/O单元中文操作手册P86

例:

我用压力传感器输入4-20mA,对应工作压力为0-70p,用SCL指令源通道我用200,参数字用D100(内存设置D100,D101,D102,D103怎么写),我要做4个报警,在用CMP指令做比较的时候,数据比较1写D100,数据比较2写4个报警的具体数值吗?

1:分辨率为6000的情况下,四个参数字如下:D100:#0 D101:#0 D102:#70 D103:#1770 ;2:分辨率为12000的情况下,四个参数字如下:D100:#0 D101:#0 D102:#70 D103:#2EE0 ;

比如SCL指令的结果通道用的是D300,那么D300里面看到的就是0-70P之间的值,CMP指令和D300里面的当前工程量作比较,满足一定条件输出报警

例2:

两个压力传感器是电流型4-20mA输出、其量程为0-25Mpa,我将其分别接入200CH、201CH,实际工作中的压力计算公式是:实际压力 X=20*25*D200/6000。(分辨率假定为6000);

我的程序是:--P_on-------Mov #0 D100

|-Mov #0 D101

|-Mov #25 D102

|-Mov #1770 D103

--P_on-------Scl 200 D100 D200

|-Cmp D200 D0(设定值)

|-P_on--1000

你的定标是正确的,不过D102设成#25太小,精度太低,建议设为#2500.比较程序的判别标记不能使用P_ON

.

二、欧姆龙PLC如何选择地址

欧姆龙PLC系统中的单元,根据前后位置或单元的特殊性,分别占用CIO区不同的地址,了解地址分配、知道输入、输出数据的具体存放位置,就能够利用编程对数据进行正确的处理。

第一讲欧姆龙PLC的地址分配

在I/O存储器中,CPU单元和CP1W扩展单元的输入地址占用000 ~ 016通道,输出地址占用100 ~ 116通道,而1个通道就是我们所说的1个字,它也等于16个位,本篇我们以CP1H为例,来说明PLC地址分配的规律。

1、CPU单元地址分配

X和XA型CPU

X和XA型CPU单元自带40点I/O,其中输入24点,输出16点,在CIO区输入部分占用0 ~ 1通道,总共分配24个输入位:

① 其中12个位为0通道的位00 ~ 位11

② 另12个位为1通道的位00 ~ 位11

③ 0通道和1通道中不使用的位12 ~ 位15,将始终被清除,且不可用作内部辅助工作位

X和XA型CPU单元的输出16点,在CIO区输出部分占用100 ~ 101通道,总共分配16个输出位:

① 其中8个位为100通道的位00 ~ 位07

② 另8个位为101通道的位00 ~ 位07

③ 100通道和101通道的位08 ~ 位15,可用作内部辅助工作位

CP1H-XA型CPU中自带了模拟量输入和输出,其中4路模拟量输入占用200 ~ 203通道,2路模拟量输出占用210 ~ 211通道。

Y型CPU

CP1H-Y型CPU中自带20点I/O,其中输入12点,输出8点,由于脉冲输入输出专用端子占用,输入输出被分配到不连续的地址:

① 所以Y型CPU单元的输入,占用CIO区0通道和1通道的共计12点

② 0通道和1通道中不使用的位12 ~ 位15,将始终被清除,且不可用作内部辅助工作位

Y型CPU单元的输出8点,也是由于脉冲输入输出专用端子占用:

① CPU单元的输出占用CIO区100通道和101通道的共计8点

② 100通道和101通道中不使用的位08 ~ 位15,可用作内部辅助工作位

2、扩展单元地址分配

扩展单元的作用是扩展输入、输出,扩展单元从CPU单元的分配通道之后的下一个通道开始,依次往后分配地址。

CP1W扩展单元

如CPU单元自带输入占用0通道和1通道,输出占用100通道和101通道,以后连接的CP1W的扩展单元:

① 其输入从2通道开始依次往后分配,最多分配到16通道

② 输出从102通道开始依次往后分配,最多分配到116通道

CP1W的基本I/O扩展单元,根据输入输出的点数不同,其所分配的输入输出通道数也不同,位分配原则与CPU单元输入输出的位分配原则相同,例如12点输入、8点输出的扩展单元,输入输出各占用1个通道:

① 其输入位占用所分配通道的位00 ~ 位11,不使用的位12 ~ 位15将始终被清除,且不可用作内部辅助工作位

② 输出位占用所分配通道的位00 ~ 位07,不使用的位08 ~ 位15可用作内部辅助工作位

对于模拟量及温度传感器等扩展单元,其输入输出通道的地址,根据其所占用的通道数来进行分配,例如CP1W-MAD11,分配了2个输入通道和1个输出通道。

CJ系列高功能扩展单元

CJ系列高功能扩展单元的地址分配和其单元号有关,单元号是在模块上的一个硬件开关,特殊I/O单元根据排列的先后,占用地址2000 ~ 2959通道,具体分配如下图:

 CPU总线单元根据排列的先后,占用地址1500 ~ 1899通道,具体分配如下图:

3、应用举例

如图,CP1H PLC配置了1个以太网模块、2个基本I/O扩展单元、2个模拟量扩展单元和1个温度传感器单元,那么各输入输出的地址是如何分配的呢?

正确答案如下: 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/88748.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/88748.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/88748.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器人 URDF学习笔记

目录 URDF(Unified Robot Description Format) ✅ URDF 描述的内容包括: URDF(Unified Robot Description Format) 意思是:统一机器人描述格式。 它是一种用 XML 编写的格式,专门用于描述机器…

MySQL-主从复制分库分表

5 MySQL-主从复制&分库分表 5.1mysql 主从复制 5.1.1. 概述 主从复制是将主数据库的DDL和DML操作通过二进制日志(binlog文件)传送到从库服务器,然后在从库上对这些日志重新执行,从而使得主库和从库的数据保持同步。 MySQL…

7.6.平衡二叉树(英文缩写为AVL树)

一.平衡二叉树的定义: 1.平衡二叉树简称平衡树(AVL树,该缩写来源于平衡二叉树的发明人的名字简称); 2.结点的平衡因子左子树高-右子树高; 3.以上述图片左下角的二叉树为例,结点50的左子树的高度为2,右子树…

OpenCV CUDA模块设备层-----将指向共享内存(shared memory)的指针封装成一个 tuple函数smem_tuple()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 OpenCV的cv::cudev模块中的一个用于 CUDA 编程的辅助函数,用于将指向共享内存(shared memory)的指针封装成一…

paddlepaddle在RTX40系安装注意事项

1 安装简介 1.1 安装注意事项 显卡型号:RTX4090 驱动版本:550.54.14 宿主机cuda版本:12.4 安装方式:conda 注意cuda和cudnn的搭配 最初安装是为了使用PaddleOCR,根据官网提示需要安装cuda和cudnn。这里最关键的就是针…

车载以太网-组播

目录 车载以太网中的组播:从原理到车载应用**一、组播的核心概念与车载网络价值****二、车载以太网组播的关键协议与机制**1. **组播IP地址管理(IGMP协议)**2. **组播数据链路层实现(MAC地址映射)****三、车载以太网组播的典型应用场景**1. **自动驾驶与传感器数据分发**2…

【雅思播客013】what do you do

【dialog】 A: Oh, look, there’s Veronica and her boyfriend.She’s always going on about him at the office. Oh, great, they saw us. They’re coming this way. B: Oh, man... C: Jessica! Arthur! Hi! I’d like you to meet my boyfriend Greg, he’s the VP. of q…

Freebsd 14.2系统下 wifi网卡硬件驱动软件配置调试大全

Freebsd 14.2系统下,网卡是AX200 先检查网卡sysctl net.wlan.devices sysctl net.wlan.devices 能识别出已经安装的 sysctl net.wlan.devices net.wlan.devices: iwlwifi0配置wlan0 # ifconfig wlan0 create wlandev iwlwifi0 # ifconfig wlan0 up # ifconfig …

Python打卡:Day39

知识点回顾 图像数据的格式:灰度和彩色数据模型的定义显存占用的4种地方 模型参数梯度参数优化器参数数据批量所占显存神经元输出中间状态 batchisize和训练的关系 浙大疏锦行

使用 GcExcel .NET 将 Excel 导出为 PDF

引言 在企业级应用开发中,经常需要将Excel数据导出为PDF格式以便于共享和打印。GrapeCity Documents for Excel(简称GcExcel)作为一款高性能的.NET Excel组件,提供了强大的PDF导出功能。本文将详细介绍如何使用GcExcel .NET实现E…

每日算法刷题Day39 6.26:leetcode前缀和2道题,用时1h20min

8. 2055.蜡烛之间的盘子(中等,学习替换查询区间) 2055. 蜡烛之间的盘子 - 力扣(LeetCode) 思想 1.给你一个长桌子,桌子上盘子和蜡烛排成一列。给你一个下标从 0 开始的字符串 s ,它只包含字符 * 和 | ,其中 * 表示一…

jrebel 下载,安装,激活步骤

参考地址: [笔记] 最新版 - JRebel 插件激活与配置教程 : 高效开发的必备指南_jrebel激活-CSDN博客https://blog.csdn.net/LuChangQiu/article/details/145547828 1、下载 2、激活地址: http://42.193.18.168:8088 ### 捡个便宜 - 交朋友吧 ###https://…

uniapp使用plus调取蓝牙/usb打印

安卓使用usb调取打印机 /*** 安卓usb调取打印机*param { string | bytes[] } html 传入的打印内容*传入一段文本或一个bytes数组* returns*/ export const printUsb (html) > {return new Promise((resolve, reject) > {if (!window.plus) return reject(new Error(&qu…

区块链数据结构:区块与链式结构编码

目录 区块链数据结构:区块与链式结构编码引言:区块链的骨架1. 区块链数据结构解析1.1 区块结构组成1.2 区块链可视化结构2. 区块核心组件详解2.1 区块头字段说明2.2 Merkle树结构2.3 工作量证明机制3. Python实现区块链数据结构3.1 区块类实现3.2 区块链类实现3.3 区块链演示…

阿里推出 R1-Omni:将强化学习与可验证奖励(RLVR)应用于全模态大语言模型

从视频中识别情感涉及许多细微的挑战。仅依赖视觉或音频信号的模型,往往无法准确捕捉这两种模态之间的复杂相互作用,从而导致对情感内容的误解。一个关键难题在于可靠地结合视觉线索(如面部表情或肢体语言)与听觉信号(…

【江科大】STM32F103C8T6 + TB6612 + N20编码器减速电机《03-增量式PID定速控制》(增量式PID,定时器输入捕获,定时器编码器)

STM32F103C8T6单片机+N20减速电机带霍尔编码器版PID闭环控制实验演示 STM32F103C8T6 实现的电机转速控制系统,基于 PWM 输出驱动、编码器采样反馈、以及增量式 PID 算法进行控制。 /*** @file Encoder.c* @brief 增量式编码器驱动程序* @details 使用TIM3定时器的编码器…

【论文阅读35】-PINN review(2021)

这篇综述全面回顾了物理信息机器学习 的原理、应用、软件实现、理论进展与未来发展趋势,这样即使数据稀疏、带噪,也能保证预测结果符合物理规律,适合解决偏微分方程正问题、反问题、非线性动力学和多物理耦合系统等科学计算场景。 作者信息&…

深度学习初探:聚焦 Transformer 与 LLM 的核心世界

文章目录 前言一、神经网络基础:智能的基石二、Transformer 架构:AI 新纪元的基石Transformer 的核心特性Transformer 的关键组件 三、 大语言模型概览总结 前言 人工智能的浪潮正以前所未有的力量重塑世界,而这场变革的核心引擎之一&#x…

【开发杂谈】Auto Caption:使用 Electron 和 Python 开发实时字幕显示软件

项目已开源到 GitHub,项目地址:HiMeditator/auto-captionhttps://github.com/HiMeditator/auto-caption 软件下载(Windows平台):Releases HiMeditator/auto-captionhttps://github.com/HiMeditator/auto-caption/releases 你是否遇到过看外…

临床项目范围管理:确保项目聚焦与成功交付

一、核心目标 1.1 清晰定义项目边界 1.1.1 明确项目目标 明确项目具体目标、可交付成果、研究活动、纳入/排除标准、数据收集范围等,为项目规划、执行、监控和控制奠定基础。 1.1.2 防止范围蔓延 严格控制未经批准的变更,避免项目目标、活动或可交付成果超出最初约定,导致…