在PLC的扫描特性下,FOR循环里面套IF或者定时器会发生什么? 1. 为什么会提出这个题目 在PLC指令的执行过程中,FOR循环会在每个扫描周期执行完一个循环,然后程序才会接着往下扫描 在PLC指令的执行过程中,IF判断会在每次扫描中判断一次条件,满足则进入执行体,不满足则跳出IF 把IF放在FOR循环里面,会导致循环体执行时间过长,或者其他问题吗?(答案是不会)毕竟每个循环周期for循环的变量都要从起始值到最大值循环一遍。 在FOR循环里面嵌入定时器,会导致 2024-07-21 PLC related > 1200/1500PLC #PLC part #industrial control
返回txt文档编码格式 1. 安装chardet1pip install chardet 2. 获得文本文档编码类型123456789101112131415161718192021222324import chardetfrom chardet.universaldetector import UniversalDetectordef GetEncoding(file): """ 2024-07-21 Python > basic notes #py
Comfort屏数值上下限设定 1. 上下限在哪里设定 在HMI的变量表里面,右键需要设置的变量,在属性中找到上限和下限,设定为自己期待的值。 选择常量或者变量都行,变量更灵活 2. 上下限1和2的区别 HMI的限制设定有两个,上下限1相当于是超过正常值的限值,类似高报警 上下限2相当于是报警的限值,,类似高高报警。对于输入类型,不允许输入值超过上下限2范围 上下限1在视图中没有直接表现,应该可以用来做提示或者警告(而非报警) 2024-07-21 PLC related > HMI #industrial control #HMI
基于TIA WINCC的审计追踪功能 1. 哪些HMI可以用auditTrail TP277/OP277/MP277等等 精致面板系列 wincc runtime advanced wincc runtime advanced的面板PC 2. 设置步骤 进入”优良系统设置”,启动”组态与GMP相符”,启动GMP功能 进入”记录”-“审计追踪” HMI保存记录可以选SD卡,U盘等,PC可以选择保存的磁盘 历史记 2024-07-21 PLC related > HMI #industrial control #HMI
C sharp应用access和sql serve数据库 从一个开源程序,学习access和sql serve在C#中的应用 1. 背景近来想看看怎么实现数据库的连接,在github上找到一个开源的记账项目,仅供学习使用。 项目使用了一个access数据库,做用户登陆,保存登陆数据 .mdb:access数据库文件 登陆成功之后,项目新建了一个sql serve数据库文件, 保存用户数据。 .mdf:数据文件 .ldf:日志文件 2. 打开数 2024-07-21 C sharp > basic notes #c# #winform
把markdown文件转换为html文件 使用pip install markdown模块 只做到了分行; 表格,-,和空格还没能无缝转换 代码如下:123456789101112131415import osimport codecsimport markdowndef convert_markdown_to_html(markdown_file): with codecs.open(markdown_file,'r& 2024-07-21 Python > basic notes #py
关于西门子间接寻址的一些理解 今天不研究高大上的,研究一个接近底层的东西,叫间接寻址。它很基础,基础到我们无时无刻都在用,但是同时它也很难理解,因为其实寄存器的概念已经被渐渐隐藏了。 1. 地址的概念 我们通常提到的物理输入输出印象区P,印象输入区I,印象输出区Q,位存储区M,定时器T,计数器C,数据区DB,背景数据区DI,本地数据区L。 每个区域(除T/C)都可以用BIT,BYTE,WORD,DWORD来指定它们的 2024-07-21 PLC related > 1200/1500PLC #PLC part #industrial control
模拟值处理-base on simatic 1. 模拟量有哪些 温度 压力 速度 填充量 PH值 2. 变送器对于PLC而言,只能处理位模式格式的模拟值(-32767~32767)。所以变送器的目的是测量如压力流量温度等物理值,再转换成电流/电压/电阻等形式,方便模拟量输入模块采集,采集后再模块内部有一个AD(模数)转换器,可以把电流电压电阻值变成16位整数值。 电压变送器 电流变送器 2线制电流变送器(无源变送器,靠模拟量模块给电压) 2024-07-21 PLC related > 1200/1500PLC #PLC part #industrial control
C sharp中使用AutoResetEvent或者ManualResetEvent做线程管理 1. Task/thread/sync/async..await/WhenAll相关基础知识参见此处链接 2. 什么是AutoResetEvent和ManualResetEvent事件 他们都是C#中System.Threading下面的类。用于在多个线程之间进行事件通知和管理。 他们的管理方法主要是三个: Reset():关闭 WaitOne():阻挡 S 2024-07-21 C sharp > basic notes #c# #winform
利用西门子DQ模块控制移位寄存器,模拟串行通信 1. 背景 以前了解过串行通信的方法但是没有详细了解过具体实现。趁着手上有的一堆破铜烂铁尝试自己去实现一个最简单的串行控制。目的是通过移位寄存器的不同位的表达,达到2*2=4个的继电器管断组合,达到切换矩阵的目的。这里只记录一下程序实现,不记录硬件电路。 2. 材料 移位寄存器:SN74AHC594 固态继电器:4个 电源模块及外围器件,若干 CPU1500+DQ16 3. 原理 选 2024-07-21 PLC related > 1200/1500PLC #PLC part #industrial control