汇川PLC编程转换指令 #plc编程
汇川PLC编程基础指令之转换指令。
大家好,这节课讲一下数据的转换指令,主要是常用的int、dint和real之间的转换。
首先说一下之前讲的计算,绝大多数是以小数的计算法。如果有整数想跟小数一起去计算该怎么办?需要用到整数转浮点数的指令。整数转浮点数的指令叫什么?叫flt。
flt打了之后可以看到这边是16位的数据转换成浮点数,还看到dfLT,这跟之前用法是一样的,加一个d代表是32位的数据转成浮点数。这里比如flt,然后D0,这时候就是把D0里面的数据转成浮点数之后放到D2、D3里面。因为前面是16位的,后面是32位的数据。
这时候在里面可以写0,结果是0.0,写个100,结果是100.0。这时候虽然值都是100,但是数据已经变成小数了。变成小数之后就可以用之前学过的小数的加减乘除去进行运算。比如DO本来是要跟小数据进行计算的,现在没有办法计算,先把它转成小数。
用比如D1开头的ADDSUB MULdiv加减乘除上节课学的指令就可以进行操作了。如果是32位就是dflt,比如D10、D12,就是把32位的数据。32位数据跟16位数据就不多说了,区别就是它的范围更大一点。比如在这里面可以写到10万,但是上面是写不了这么大的数据了。有小的转大的,就是整数、浮点数转。浮点数转整数。
有没有浮点数转整数?也有。浮点数转整数用什么指令?叫PNTint,把16位的浮点数转成16位的转换。还有个DNT,把浮点数转成32位的整数,比如写个D20,然后D22。
这里面转换,比如写一个浮点数,比如3.2,结果可以看到3。如果写个比如3.5,结果是不是还是3?然后3.8,结果是不是还是3?所以这里注意下,这里的转换并不是四舍五入,因为浮点数转成整数,小数点在后面的数据肯定就没有办法给整数处理,因为整数是不带小数点,所以这里计算会直接把小数部分给去掉,得到整数的结果。
如果想把整数浮点数去进行比如四舍五入转换用什么?还有一个指令,手上还有一个指令叫做RUN,搜索一下这个指令,有一个叫RUN的指令,run的指令是将整数浮点数转为整数,并将小数点后面一位去进行四舍五入,32位的就叫dRUN。
可以来试一下,在这边写一个run,ound,叫浮点数的四舍五入的取整。刚才是什么直接取整?写个D30D32,比如这时候写个3.2,结果是3,但是写一个比如3.5,结果就是4,这时候就是四舍五入,跟刚才上面的就不一样了。
这个就是常见的转换指令,用的更多的应该就是上面这种整数转浮点数,最后就计算结果了。因为浮点数转整数,不管是去尾还是四舍五入,整体的精度都是发生变化的,所以用的相对来比较少一点,可能有些模拟量那些转换会用的比较多一点。
这节内容就到这里了。
汇川技术PLC应用逻辑编程技巧(7)小型PLC编程经验
哈喽,你好啊,我是雷工!
前面学习记录按状态转移编程法、按功能分块编程法、按设备结构功能分块法、按工位分块法等编程思路,
接下来继续学习小型PLC编程经验的总结,
以下为学习笔记。
01 梯形图经验
小型PLC基本上都是用梯形图进行编程,以下经验是否正确:
①:LD梯形图语言编程,常用的指令在30个以内,可轻松上手,初学者不建议首选SFC编程语言;
②:编程时要多用子程序,这样可以便于编写结构化的程序,提高程序的可读性,提高执行效率,也更易于调试;
③:要尽可能多用状态划分的编程风格,尽量采用典型的状态排序;
④:编程时要先定义程序框架,把状态分块,界定每个程序块的功能、算法、接口变量,并用程序注释的方式进行记录;
02 开发经验
有人说PLC编程相比程序员的高级语言编程并不需要深度的学习。(你认可吗?)
小型PLC编程要灵活使用Autoshop编程工具,可以减轻记忆负担(有更好的经验,欢迎分享)
03 如何让程序更易于阅读和理解
在C#编程时,合理的注释能够让人更清晰的读懂理解程序;
那么PLC编程,哪些习惯能够便于他人和自己更容易的阅读理解程序呢?
①:工序图
在规划设备状态、设计好程序框架后,可以先拟定设备主要工艺的子程序,并以工序图的形式注释每个子程序的功能;
像入口变量属性、主要算法、输出变量等做好记录;
②:Excel表格
用好Excel表格,规划记录设备系统的程序变量;可以按变量属性进行区域的划分,特别注意与上位机交互的变量,各种操作命令、设定参数等分为不同的区域,不仅可以提高上位机读取效率,还能够防止上位机误该参数,导致难以查明的运行故障;
把设备运行状态参数放在低地址段,把需要保存的记录参数放高地址段;
把多个工位子程序使用的变量尽可能规划各自独立的区域,并且区域间预留适当的间隔;
③:给常用变量别名
对于重要的已经定义的常用变量,批量标注有意义的别名,可以避免编程过程中反复核对变量定义,可以有效提高效率;
04 编写注释的好处
①:开发时可以先一次性写出主要子程序的功能注释,这样比直接写程序思路更清晰连贯,考虑也更周全;
②:写注释的过程可以核对逻辑处理是否严谨;若发现问题可以及时完善注释,再开始写程序,可以避免写程序过程中发现问题,再修改程序,会更加费时费力;
③:注释梳理完成后,再按照注释编程,思路清晰,逻辑明确,可以更快的编程;
④:可以方便多人协作同时编程调试;
⑤:注释清晰有助于个人快速读程序,能够更快的进入编程状态,避免没有注释,自己之前写的程序自己还得捋半天才理清思路;
⑥:方便调试排查问题,便于后期维护;
05 调试技巧
当写完一个状态的子程序以后,就可以在PLC上验证该子程序的逻辑处理是否正确:
可以强制该子程序的触发条件,让PLC反复执行该子程序,给该子程序入口变量设置不同的数值,观察输出口变量的结果值,这样就能够判断该子程序的逻辑是否正确,以便及时修正;
06 编程细节
编写一个能用的程序很简单,但是实际项目中只是简单的能用还不够,还得要求程序安全、稳定、健壮;
这时候就需要完善程序的保护机制,让保护更全面,使其操作起来更流畅;
①:状态指针式程序控制的关键变量,要避免赋值不存在的状态值,导致死机;
②:变量定义时,允许上位机访问的区域要独立划分,上位机可读写的变量,要检查其合法性后使用;
③:采用bit类型的变量编程,容易出现意外的组合,应当尽可能采用D寄存器变量,会更加的安全;
④:要考虑乘除运算需要的最大单元占用,避免溢出;避免出现除0的操作;
⑤:编程时先实现设备工艺控制功能,再进行设备异常状况、设备保护功能的添加;
一套成熟稳定的PLC控制程序,其中超过40%的代码都是用于设备安全保护功能的。
毕竟很多厂的口号也都是安全第一,生产第二;
07 整体思路
①:要有自顶向下的编程思想,即先整体再局部,化繁为简,拆大为小,然后逐步编程,让编程简化;
②:PLC编程更加注重实操上手,单纯的看书看视频100遍,不如上手操作一遍,要多动手;
08 后记
以上是关于小型PLC的编程经验,有不妥之处或有更加牛掰的思路,欢迎在留言区留言评论。
更多的技术问题欢迎在交流群相互交流。
相关问答
汇川plc怎么上载程序?
汇川PLC的程序上载可以通过以下步骤进行:首先,将PLC与电脑连接,并使用相关软件(如MitsubishiGXWorks2)打开程序编辑器。接着,在程序编辑器中,选择“上载...
mcgstpc7062kx如何与汇川plc通讯?
Mcgstpc7062kx是一款触摸屏,可以与PLC(可编程逻辑控制器)进行通讯,以下是与汇川PLC通讯的基本步骤:1.确认PLC型号和通讯协议在开始通讯之前,需要确认您...
汇川plc模拟量编程实例?
以下是一个汇川PLC模拟量编程的示例:假设我们要实现一个简单的温度控制系统,通过模拟量输入读取温度信号,并通过模拟量输出控制加热器的工作。1.配置硬件:...
汇川plcmodebus通信怎么弄?
首先你需要先确定变频器能走什么协议,看了一下汇川是有走modbusRTU的,如果想跟西门子连的话需要采购响应的通讯模块,然后,,,调用标准库去处理就好了这样可...
汇川plc用网线怎么上载程序?
要上载程序到汇川PLC,首先需要通过编程软件连接PLC和计算机,然后打开软件,在软件中选择要上传程序的PLC型号和端口号,并确保连接方式正确。接下来,在软件中...
汇川plc功能块的用法?
汇川PLC功能块的用法非常灵活,可以根据不同的控制需求进行组合和配置。以下是一些常见的功能块及其用法:输入功能块:用于接收外部输入信号,并将其转换为PLC内...
汇川plc计数器怎么用?
汇川plc计数器用起来非常方便,首先需要将plc的输入端与传感器的输出端连接起来,然后在plc的程序中创建一个计数器,并将其与输入端关联,最后在程序中使用这个...
汇川plc如何导入eds文件?
在汇川PLC的软件平台MCWorks64中,导入EDS文件的方法如下:首先在MCWorks64软件的主界面中选择“软件交互”选项卡,然后选择“配置工具”,在弹出的对话框中选择...
plc程序一行写完怎么切换到下一行?
安回车键或者空格键可以换行,在工具设置中也可以定义安回车键或者空格键可以换行,在工具设置中也可以定义
汇川plc跟三菱plc编程一样吗?
汇川PLC和三菱PLC在编程语言、指令集和硬件结构等方面存在一些差异,因此它们的编程方式也有所不同。汇川PLC通常使用LadderDiagram(梯形图)、InstructionLi...