「PLC」PLC基本编程
PLC中无非就是三大量:开关量(数字量)、模拟量、脉冲量。只在搞清楚三者之间的关系,你就能熟练的掌握PLC了。
PLC编程算法(一)
1、 开关量也称逻辑量,指仅有两个取值,0或1、ON或OFF。它是最常用的控制,对它进行控制是PLC的优势,也是PLC最基本的应用。
开关量控制的目的是,根据开关量的当前输入组合与历史的输入顺序,使PLC产生相应的开关量输出,以使系统能按一定的顺序工作。所以,有时也称其为顺序控制。
而顺序控制又分为手动、半自动或自动。而采用的控制原则有分散、集中与混合控制三种。
2、 模拟量是指一些连续变化的物理量,如电压、电流、压力、速度、流量等。(在我的文章视频中我有专门讲解模拟量的案例与使用方法,感兴趣的可以去看看)
PLC是由继电控制引入微处理技术后发展而来的,可方便及可靠地用于开关量控制。由于模拟量可转换成数字量,数字量只是多位的开关量,故经转换后的模拟量,PLC也完全可以可靠的进行处理控制。
由于连续的生产过程常有模拟量,所以模拟量控制有时也称过程控制。
模拟量多是非电量,而PLC只能处理数字量、电量。所有要实现它们之间的转换要有传感器,把模拟量转换成数电量。如果这一电量不是标准的,还要经过变送器,把非标准的电量变成标准的电信号,如4—20mA、1—5V、0—10V等等。
同时还要有模拟量输入单元(A/D),把这些标准的电信号变换成数字信号;模拟量输出单元(D/A),以把PLC处理后的数字量变换成模拟量——标准的电信号。
所以标准电信号、数字量之间的转换就要用到各种运算。这就需要搞清楚模拟量单元的分辨率以及标准的电信号。例如:
PLC模拟单元的分辨率是1/32767,对应的标准电量是0—10V,所要检测的是温度值0—100℃。那么0—32767对应0—100℃的温度值。然后计算出1℃所对应的数字量是327.67。如果想把温度值精确到0.1℃,把327.67/10即可。
模拟量控制包括:反馈控制、前馈控制、比例控制、模糊控制等。这些都是PLC内部数字量的计算过程。
3、 脉冲量是其取值总是不断的在0(低电平)和1(高电平)之间交替变化的数字量。每秒钟脉冲交替变化的次数称为频率。
PLC脉冲量的控制目的主要是位置控制、运动控制、轨迹控制等。例如:脉冲数在角度控制中的应用。步进电机驱动器的细分是每圈10000,要求步进电机旋转90度。那么所要动作的脉冲数值=10000/(360/90)=2500。
PLC编程算法(二)——模拟量的计算
1、 -10—10V。-10V—10V的电压时,在6000分辨率时被转换为F448—0BB8Hex(-3000—3000);12000分辨率时被转换为E890—1770Hex(-6000—6000)。
2、 0—10V。0—10V的电压时,在12000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
3、 0—20mA。0—20mA的电流时,在6000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0-2EE0Hex(0—12000)。
4、 4—20mA。4—20mA的电流时,在6000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
以上仅做简单的介绍,不同的PLC有不同的分辨率,并且您所测量物理量实现的量程不一样。计算结果可能有一定的差异。
注:模拟输入的配线的要求
1、使用屏蔽双绞线,但不连接屏蔽层。
2、当一个输入不使用的时候,将V IN 和COM端子短接。
3、模拟信号线与电源线隔离 (AC 电源线,高压线等)。
4、当电源线上有干扰时,在输入部分和电源单元之间安装一个虑波器。
5、确认正确的接线后,首先给CPU单元上电,然后再给负载上电。
6、断电时先切断负载的电源,然后再切断CPU的电源。
PLC编程算法(三)——脉冲量的计算
脉冲量的控制多用于步进电机、伺服电机的角度控制、距离控制、位置控制等。以下是以步进电机为例来说明各控制方式。
1、 步进电机的角度控制。首先要明确步进电机的细分数,然后确定步进电机转一圈所需要的总脉冲数。计算“角度百分比=设定角度/360°(即一圈)”“角度动作脉冲数=一圈总脉冲数*角度百分比。”
公式为:角度动作脉冲数=一圈总脉冲数*(设定角度/360°)。
2、 步进电机的距离控制。首先明确步进电机转一圈所需要的总脉冲数。然后确定步进电机滚轮直径,计算滚轮周长。计算每一脉冲运行距离。最后计算设定距离所要运行的脉冲数。
公式为:设定距离脉冲数=设定距离/[(滚轮直径*3.14)/一圈总脉冲数]
3、 步进电机的位置控制就是角度控制与距离控制的综合。
以上只是简单的分析步进电机的控制方式,可能与实际有出入,仅供各位同仁参考。
伺服电机的动作与步进电机的一样,但要考虑伺服电机的内部电子齿轮比与伺服电机的减速比。
「PLC」PLC基本编程的更多相关文章
- 「PLC」PLC的硬件与工作原理
- JavaScript OOP 之「创建对象」
工厂模式 工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程.工厂模式虽然解决了创建多个相似对象的问题,但却没有解决对象识别的问题. function createPers ...
- 一个「学渣」从零开始的Web前端自学之路
从 13 年专科毕业开始,一路跌跌撞撞走了很多弯路,做过餐厅服务员,进过工厂干过流水线,做过客服,干过电话销售可以说经历相当的“丰富”. 最后的机缘巧合下,走上了前端开发之路,作为一个非计算机专业且低 ...
- 「Python」socket指南
开始 网络中的 Socket 和 Socket API 是用来跨网络的消息传送的,它提供了 进程间通信(IPC) 的一种形式.网络可以是逻辑的.本地的电脑网络,或者是可以物理连接到外网的网络,并且可以 ...
- 所有 Python 程序员必须要学会的「日志」记录。
本文字数:3840 字 阅读本文大概需要:10 分钟 写在之前 在我们的现实生活中,「日志记录」其实是一件非常重要的事情,比如银行的转账记录,汽车的行车记录仪记录行驶过程中的一切,如果出现了什么问题, ...
- 每个程序员都可以「懂」一点 Linux
提到 Linux,作为程序员来说一定都不陌生.但如果说到「懂」Linux,可能就没有那么多人有把握了.到底用 Linux 离懂 Linux 有多远?如果决定学习 Linux,应该怎么开始?要学到什么程 ...
- Python文字转换语音,让你的文字会「说话」,抠脚大汉秒变撒娇萌妹
作者 | pk 哥 来源公众号 | Python知识圈(ID:PythonCircle) APP 也有文字转换为语音的功能,虽然听起来很别扭,但是基本能解决长辈们看不清文字或者眼睛疲劳,通过文字转换为 ...
- React造轮子:拖拽排序组件「Dragact」
先来一张图看看: 项目地址:Github地址 (无耻求星!) 在线观看(第一次加载需要等几秒):预览地址 说起来不容易,人在国外没有过年一说,但是毕竟也是中国年,虽然不放假,但是家里总会主内一顿丰盛的 ...
- 「NOIP2009」Hankson 的趣味题
Hankson 的趣味题 [内存限制:$128 MiB$][时间限制:$1000 ms$] [标准输入输出][题目类型:传统][评测方式:文本比较] 题目描述 Hanks 博士是 BT(Bio-Tec ...
随机推荐
- Swing State: Consistent Updates for Stateful and Programmable Data Planes
Swing State: Consistent Updates for Stateful and Programmable Data Planes 年份:2017 来源:ACM 本篇论文解决的问题 B ...
- 第二次作业——个人项目实战(sudoku)
第二次作业--个人项目实战(sudoku) 一.作业要求地址 第二次作业--个人项目实战 二.Github项目地址 softengineering1--sudoku 三.PSP表格估计耗时 PSP2. ...
- 第6题 ZigZag转换
题目描述如下: The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of ro ...
- erlang调优方法
1. 来自Scaling Erlang的方法 内核调优: # Increase the ipv4 port range: sysctl -w net.ipv4.ip_local_port_range= ...
- bond下改变网卡
浪潮服务器打开控制台 用ip addr查看哪个网卡是绑定的,eth2和eth4是绑定状态 用mv命令,更改网卡名称 并将每个网卡里的信息更改 reboot,重启 ip addr查看,eth6和eth8 ...
- QTemporaryDir及QTemporaryFile建立临时目录及文件夹
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QTemporaryDir及QTemporaryFile建立临时目录及文件夹 本文地址 ...
- Java实现的词频统计——单元测试
前言:本次测试过程中发现了几个未知字符,这里将其转化为十六进制码对其加以区分. 1)保存统计结果的Result文件中显示如图: 2)将其复制到eclipse环境下的切分方法StringTokenize ...
- JarvisOJ平台Web题部分writeup
PORT51 题目链接:http://web.jarvisoj.com:32770/ 这道题本来以为是访问服务器的51号端口,但是想想又不太对,应该是本地的51号端口访问服务器 想着用linux下的c ...
- vbs习题
练习题: 1.输入3个数,输出其中最大的那个值. Option Explicit Dim intA,intB,intC intA=CInt(InputBox("请输入a:")) i ...
- 'phantomjs.exe' executable needs to be in PATH. (selenium PhantomJS python)
今天selenium PhantomJS python用了下,发现报错,提示我:'phantomjs.exe' executable needs to be in PATH. from seleniu ...