粉丝2250获赞1744


基因是 plc 姐妹的几种需求,一、自己的西门子触摸屏密码忘记,短时间内无法重写。二、工程师撂挑子不干了,公司没有备份。三、设备过了保修期,厂家不再提供服务。 四、设备有缺陷,需要改进,厂家不提供服务。五、设备厂家倒闭,后续没有保障。六、买的二手设备找不到厂家,或者厂家不提供服务。七、学习别人的程序,增加自己的编程水平。继续关注我们,精彩不断呈现!

这条视频给大家讲解一下我们这个金士的 p r c 的 编程软件简单的使用方法,通过 usb 口连接到了我的电脑,第一步打开我们的这个金士编程软件,进来以后点文件新建一下我们, 然后这里是他要所有的信号,这个是 k v 高 x 三幺零,我们可以通过这里能看到,然后他的项目名称我写一个九九九点, ok, 然后我们进来以后呢,他是有有一个让我们输入密码的这个界面,这个界面主要针对于我们这一块程序,这是一个租钛的一个界面,然后这边是我们常用的一些指令,嗯,先点一个常开点, 然后我刚很纳闷,他写编程的时候,他的输入和输出都是 r r 零零一是我们的一个开点,他输出的线圈也是 r, 然后这里有一个 启动模拟器编辑,我们打开它,然后它就给我们弹出来一个 p r c, 换成一个 run 的 状态,是我们这个界面。这里编成这个层次的话,就是说明我们已经进来了,我们这个 p r c 就 已经是有一个运行的一个状态了,然后也可以看到我们这个 p r c 上面也是 run 的 一个状态。

今天收到一个真实 k v 五零的 p l c, 这个 p l c 里面程序有 bug, 需要再重新上传出来,点软件和 p l c 连接上,然后点上传,上传提示要密码,我们通过技术手段找回密码。 ok, 密码已找回,程序上传,然后点保存。


好,我们继续讲解 kv 大队 plc 它的通信功能,那比如说我现在呢要几台 kv 大队的 plc 相通信,比如说我现场用了三台这个 plc, 那我们这里呢就需要用一台作为主机作为主站来通信另外两台,那么这样呢,就可以通过他的四八五或者说四二二这种方式呢来进行这个连接。那我们首先要知道这个 plc 他怎么才能把它硬件搭建起来, 然后才涉及到比如说地址的这个,找取他的相关通信设定程序的编写。那么你首先要知道他能实现这个功能,以及怎么来把它搭建起来。来看一下这个呢?作为一个,比如说 kimidano 十四点或者二十四点,那么它作为一个主机,作为一个主战,那我要用它,我们加一个什么呢?看一下这里啊,因为是 多台啊,一比一 vn 呐,那么多台这个设备,我们加一个四二四八五的这个扩展 这个功能扩展盒,用这个功能扩展盒扩出一个四八五的通讯口,或者说四二二的通讯口,用这个通讯口呢来连接。看一下用这个通讯口来连接什么呢?比如说 kv nado 的 n c 三二 t, 或者说 kv nad 的二十四点、四十点、六十点,这个都可以啊, 那我这两台或者说甚至是三台、四台都可以啊,那么你在他的最大通信能力之间都可以这样的通信,这就是硬件,硬件这个组态实线。那比如说我这里除了通信 这两个 p l c 以外,实际上呢,那么它本身的 p l c 呢?我们还要做什么呢?还要 做通信,比如说触摸屏,那通信触摸屏呢?这里可以通过,同样也可以通过他这个通信口啊,那我们也可以通过这里的 potling 看一下,这个 potling 呢是阿桑啊,可以通过,他也是可以通音一个设备的, 当然这里还可以再扩展一个,那么实际上我们就没有必要再扩展了,用它的 potling 可以来连电脑或者说通信触摸屏, 那么这里看一下,他这里用这个二三二转四八五或者二三二转四二二也是可以转换的,转换以后接谁呢?接 pc, pc 就是电脑啊,那么可以接 pc 来监控 程序的运行,也可以,比如我们修改程序啊,就实际上我用他的四八五或者四二这个端口呢,是可以 实现 plc 之间的数据发送与接收,实际上就是相互控制,同时呢与电脑进行相连。当然呢我们也可以用它这个 usb 口,这里主机啊,主机这里还带 usb, 这个通讯端口也是可以与电脑相连的,包括它的 potling 都是可以的。 好,这样我们就是不是实现了这个 plc 啊,它一台与多台的设备相连, 那么这样的硬件就搭建起来了,那要具体怎么实现,那我们还要知道它里边哪些的对应的特殊的计存器,或者说他的通信相关的一些指令都是要去应用的,然后呢实现编程。

这一节带大家一起来看一下 g n s 最新款的 plc kv 杠 x 三幺零与会穿的 ez 五二幺之间的网口以太网 e z n t i p e i p 通信是怎么做的? 大家跟着我的私信一起来看一下,这是它的一个软件,这是会穿软件,这是 g n s 的 软件,然后我带大家一起快速的一起操作一下,大家一起学习一下。 好,废话不多说,马上上实操,大家一起来看一下快速浏览一下怎么做的。这个是汇川的 plc, 我 们首先点开这个汇川的 autshop, 左边的有一个 ethernet ip 的 设置,双击一下, 然后就出来这个画面,这个画面里面我们主要点到这个这边的 i o 映色, 以及这个一人一台 ip, 这边如果没有的话,你就添加一个添加连接,点一下添添加它就会出来这个画面,然后你可以再导出,导出 e s d 文件, 导到桌面,你自己取一个名字, easy 啊,什么其他的名字好记一点就行了。接下来我们看一下这边那个 i o 映色,它有五十个字,是输入五十个字输出 input, output, 分 别是五十个整形, 当然你要大一点也行,搞多一点也没问题。 然后这个是从赞,我们做好了以后,就直接点这个下载,下载到我们的 cpu 里面去。接下来我们看一下主赞主赞的这个到底是怎么做的,这个是监视的 plc 它的画面, 同样的这个程序里面也不用写任何东西,左边有一个 easy net ip, 我 这边已经刚添加好了 easy, 如果没有的话,你就双击一下这个, 它会出来这样一个画面,任意他 ip 设定的一个画面,然后你就这边,因为它原来没有 easy 的 这个 plc, 我是 添加上去的,你就导入登录一下刚才这个文件,登录,你找到 你刚刚导出来的这个文件, easy 的 这个文件导进去以后,然后你双击一下跳到这边来,哪怕输一下 easy 这个会穿重赞的 ip 地址,这样就可以了,这样就把 会穿的 easy。 五二幺的它的一些输入输出的一些状态啊,和西门子的 gsd 文件很类似, 两百 smart 跟幺二零零通讯的这些 p n 通讯的方式差不多一样,然后你就点 ok, 点了 ok 以后,然后你就点这个下载传输,传输到 plc 以后,然后两台 plc 就 多重启一下, 然后我们看一下它的一个监视画面变量里面, 这个是我们刚做的 ethernet 输入的五十个字,然后这个是输出的 out 的 五十个字,分别跟 会传的进行通信,我们来看一下它通信的这个数据能不能传输过去, 然后我们打开会穿的在线一下, 这是输入的,我这边主站输出就是它的输入,我这边第三个,我随便输一个九九九, 你看右边重赞就收到了,发过去一二三四 这边也就收到了。然后从站这边你发过来的东西可以看一下,从站这边发到主站,主站是 in, 我 发了一二三就收到了,这边发三个八, 主站这边也能收到,说明两台已经直接能够通讯上了。 ethernet ip eip 通讯,大家可以顺着这个视频一起学习一下。 纪念式和会川现在用的非常多,还有个欧姆龙,所以大家这个很有学习的必要。 ok, 谢谢。

写 plc 程序总在反复复制重复逻辑,别人做项目却不用来回抄写,核心差距就在于会不会封装功能块。 最近新来的技术员总追着我问,标准通用 plc 功能块到底该怎么写?调试气缸延时随机失灵,查几天找不到故障根源,百分之九十都是随手脱 t n 不 会封装 f b 踩的坑。 今天我完整带大家拆解一套我项目正在落地使用的 g n 式 plc 通用气缸延时 f b 功能块,从创建功能块变量定义,再到内部整套逻辑,全部讲透,看完你完全可以复刻到自己项目里。首先第一步,创建功能块, 我们在 g n 式软件里面新建 f b 功能块,编程语言选择 st 语言。这里大家要分清 f b 和 fc, 像定时器这种带有记忆状态的逻辑一定要选用 f b, 不 能用 fc。 建好之后,我们先来梳理所有变量, 整体分成两大类,外部接口变量,还有功能块内部使用的局部变量。先讲局部变量,全部是块,内部自用。 for 下划线, total 代表循环终点,用来控制我们要处理多少组气缸信号。 delay underscore pt bypass underscore delay underscore pt 两个时间变量分别存放正常延时,开启屏蔽之后的加长延时。 i 和 a 是 for 循环用到的临时缩引。 i delay underscore time, t o n 定时器数组最多支持十六路气缸独立延时。 pass underscore delay underscore time 属于中转变量,把外部传入的毫秒数字预处理之后转换成 plc 识别的标准时间格式。 再说说外部接口变量,也就是梯形图调用的时候需要对接的信号 in 感应器输入信号数组 bypass 旁路屏蔽信号数组 sv 气缸电磁阀输出信号 delay underscore point 延时完成之后的输出点位 l underscore total 当前起用气缸的总数量 delay underscore time, 即 single underscore or underscore double 气缸。模式选择一代表单线圈气缸,二代表双线圈气缸。 变量定义完成,我们来看内部第一段逻辑,这一段主要做时间格式转换,外部传进来的延时是纯数字毫秒,但是监视的定时器需要 time 类型的数据,我们调用转换函数完成格式转换。 同时屏蔽模式下我设置延时自动多加两百毫秒,这是现场调试总结出来的缓冲时间,后续大家也可以根据自身需求自行修改。 下一段程序作用是修正循环次数,数组下标都是从零开始计算。举个例子,起用一路气缸缩影编号就是零,所以总数量需要减 一下方增加一层保护判断,防止外部参数误填零或者负数,避免循环异常影响整套程序运行。紧接着这一段负二循环用来批量对电磁阀信号取反, 这个取反信号主要服务单线圈气缸,双线圈气缸伸出缩回信号相互独立。单线圈气缸依靠通断控制动作。开启屏蔽模式的时候,我们就需要用到电磁阀的反向信号。 接下来是模式二双线圈气缸的整套控制逻辑程序循环,便利每一路气缸信号。 当 bypass 屏蔽信号关闭,定时器由感应器信号触发,使用标准延时。一旦开启旁路屏蔽,定时器不再等待感应器信号切换成电磁阀 s v 信号启动计时,同时启动加长延时, 定时器计时到达直接输出延时,完成信号 delay underscore point。 然后是模式一,单线圈气缸控制逻辑,单线圈气缸伸出缩回,共用一路阀,两组动作需要配对处理,所以 for 循环不长,设置 b y 二 单次循环同时处理 i 和 i 加一两路气缸屏蔽开启状态下,正向和反向两路定时器分别使用,取反信号原始电磁阀信号触发适配单线圈阀的动作特性。整套内部逻辑写完,调用方式很简单, 主程序梯形图直接调用这个 f b 块, e n 端接入长 o 信号,持续执行。外部把感应器、电磁阀、延时参数、气缸模式一一对接,就可以直接投入使用。讲到这里,两个新手最容易踩的致命大坑,我着重强调一遍, 第一个, t o n 定时器上升延这类具备记忆属性的指令一定要放在 f b 局部变量如果定义到外部接口,多次调用功能块,定时器状态互相干扰,出现随机延时失效,这种偶发故障很多人排查几天都找不到根源。第二个, 同一个项目多次调用 f b, 每一处功能块实体名称必须不一样。举个例子,第一个工位命名 delete 井号,零下一个工位就要命名 delete 井号。一,如果全部重名,会导致内部变量相互覆盖,设备现场莫名其妙出问题。 最后说下我坚持封装 f b 的 心得,第一,通用逻辑封装一次,不用反复复制 t o n 定时器。 第二,主程序整洁清晰,方便后续维护和交接。第三,后期优化逻辑只需要修改 f b 内部所有调用点同步更新。还有一个很大优势,我们全程只用自定义变量,不绑定固定 plc 地址。 这套 st 逻辑简单适配之后跨品牌 plc 都能移植附用,长期下来能省下巨量工作量。 我不建议大家盲目去写超大的万能功能块,优先把气缸延时、信号滤波这类高频逻辑沉淀下来, 慢慢搭建属于自己的程序工具库。你们平时写程序更喜欢梯形图还是 st 封装? f b 有 没有踩过功能块调用冲突定时器错乱的坑?评论区可以一起交流。