PORTAL编程题,可能与指针和间接寻址有关

已锁定

万泉河

  • 帖子

    10817
  • 精华

    132
  • 被关注

    901

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

PORTAL编程题,可能与指针和间接寻址有关

6795

39

2018-07-02 08:47:59

portal V15里面编程, 被一个逻辑难倒了。 

我尽量简化, 抽象了一下,简化为一道题目:

假设有10个按钮,(DI地址不连续), 8个指示灯(DO地址也不连续)

现在有逻辑功能,简化为按下1个按钮时, 1个指示灯延时2秒l亮起。 (这是一个封装好的FB块,将来还可以无穷变化, 无穷复杂, 所以不要打改造它的主意)

同时运行的逻辑功能有2套。 所以很容易为其编织一个FB块,系统中调用2次。 


但问题是, 按下哪个按钮,不是确定的, 对应到哪个灯亮, 也不是确定的。 

而是需要在程序的运行中, 比如给两次调用实例, 分别输入参数8:5和4:3.

则当DI8按下时,DO5延时2S亮起。.

DI4按下时, DO3延时2S亮起。 

同一时刻, 另外的其它的DI/DO待命,空闲不用。 


我想象的是,分别建立数组A[10]和B[8], 程序中根据指令的i数值, 把对应的元素A[i]放入到FB的实参, 但高级语言很容易实现的事情, 在PLC里面怎么感觉困难重重, 没有头绪呢?


当然, 我要做的逻辑比这还复杂n倍, 这里只是抽象化表述。 即便实现后, 也还有更复杂的需求冒出。 

*******************************************

看来, 我不做个引子, 只讲题目不行, 都不愿意动手, 只乐意爱那儿夸夸其谈讲愿理去了。

来吧,我打了个程序底子:

8543_V15_1.zip


V13SP1:

8543v13.zip

 

PORTAL编程题,可能与指针和间接寻址有关 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有8671条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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