回复:上位机控制机床面板

已锁定

西范斯

  • 帖子

    3614
  • 精华

    36
  • 被关注

    137

论坛等级:至圣

注册时间:2008-12-29

钻石 钻石 如何晋级?

发布于 2020-06-21 10:56:28

8楼

展开查看
以下是引用大树哈在2020-06-21 10:29:27的发言 >7楼

我们也用C#来开发,按键可以直接对MCP变量赋值,比如给I3.7置1,隔20ms置0,模拟点动操作。也是可以实现的。

直接置位有硬件组态的输入点需要连续多次置位,高级语言是事件触发,触发后执行一次,需要加其他逻辑(例如定时器)实现多次反复触发。
为何要多次触发:因为plc每个周期都会从硬件输入映像区读硬件输入状态,只有外部强制修改的逻辑时间戳在ob1起始扫描(ob1起始时i点输入始终和硬件状态一致)和mcp处理块fc19之间才能起作用,所以单次触发失效几率很大(相当于输入点是双线圈,外部强制的线圈和plc周期无关,是随机的,可能在fc19之前,也可能在其后)。
缺点:高级语言逻辑复杂点,可靠性差点,就算fc19放在ob1最后,但fc19自身循环也有时间,面板输入这么多信号必然有fc19开始后才被外部触发的可能。
这种方法好处:不修改plc,置位后不用复位输入信号(因为下一个ob1开始时i状态自然被硬件状态接管了),所以如果硬件输入状态是0,用外部置位信号后最长保持也就是plc的一个扫描周期。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25500条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。