leslie1994
菜鸟努力中
级别: 家园常客
精华主题: 0
发帖数量: 138 个
工控威望: 856 点
下载积分: 2304 分
在线时间: 142(小时)
注册时间: 2014-11-06
最后登录: 2022-05-09
查看leslie1994的 主题 / 回贴
楼主  发表于: 2015-12-25 20:38
公司是做注射机机械手的。  机械手的系统是单片机控制的。   还有一个控制面板。
控制面板可以编制 动作的顺序。   比如:  主臂下降》延时2秒》主臂前进》主臂上升》侧姿水平。。。。。。

我在想 如果用PLC控制的话,  要做才能做到的HMI上选择动作的顺序 然后依次动作呢?

以前编的程序都是顺序控制的,    但是这种顺序自由的没想过,    哪位大神能给我解答一下呢?
菜鸟努力中
lvpretend
级别: 论坛先锋
精华主题: 0
发帖数量: 1258 个
工控威望: 1428 点
下载积分: 3680 分
在线时间: 322(小时)
注册时间: 2015-07-20
最后登录: 2024-11-16
查看lvpretend的 主题 / 回贴
1楼  发表于: 2015-12-25 21:39
这个与MCC中的自由编辑各电机启动顺序差不多。
你就取PLC中若干个连续的存储区,每个可能的动作分别做一个唯一的编号,运行的时候去依次解析这些存储区就行了。就像PLC系统的工作原理一样,一步步去解析你的程序代码。
不难。
本帖最近评分记录:
  • 下载积分:+5(leslie1994) 真诚感谢!
    lvpretend
    级别: 论坛先锋
    精华主题: 0
    发帖数量: 1258 个
    工控威望: 1428 点
    下载积分: 3680 分
    在线时间: 322(小时)
    注册时间: 2015-07-20
    最后登录: 2024-11-16
    查看lvpretend的 主题 / 回贴
    2楼  发表于: 2015-12-28 19:18
    比如,取D1000开始的停电保持位为动作存储区,主臂上升定义为1,下降定义为2,前进定义为3,后退定义为4,旋转45度定义为5,旋转90度定义为6,旋转--45度定义为7,旋转--90度定义为8,,,,,延迟时间定义为1***,1***中***为可设置的时间,比如单位为0.1秒,那么最大就可以定义99.9秒,如果需要更大时间就定义为1****。
    在HMI上分步设置,就像G代码编程一样,第一步对应D1000,第二步对应D1001,,,,,第十步对应D1009,,,,,
    这样需要在第一步主臂上升,就把“1”存入D1000;第二步延迟5秒,就把1050(50就是5秒)存入D1001,,,,,,,,,
    然后开始运行,就从D1000开始,D1000是“1”就让主臂上升,上升完成后给出一个步执行完成信号,移动到D10001,然后是延迟时间5秒,延迟5秒就是,,,,,,
    直到执行到D***为0时表示整个流程执行完,看需要跳转回D1000不。
    原理就是这样,你可以定义得更多。说白了,就是要你使用PLC来定义一个自己的专用 的简单的“软PLC"。