求购程序 点击:2876 | 回复:108



芳季

    
  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-11 13:06:08
楼主
抽象描述: 
   一个平皮带输送机,前进方向前端主动轮有动力令皮带转动。方向不变,速度不定,不能自主控制。皮带输送机被动轮侧称为入口,主动轮侧称为出口。
   有物件从入口进入被送往出口。物件的形状是一致的。进入的方向也是一致的。就是进入的时间不确定,也跟皮带的速度无关。
物件在传送的过程中到达皮带某个指定的位置时,有一个电眼A去检测。当A检测到物件的时候,当然可以输出一个信号马上控制其他东西。使用过程中按需要,用手可以随便移前移后这个电眼。这样的电眼在皮带机上有几个。实际数量看机型配置具体的数量。
   现在问题是这些应该安装电眼的地方是不可能安装到电眼的。只能在入口的附近才具备安装条件。入口端的皮带轮同轴安装旋转编码器。
   问:这样的一个程序用S7-200编成库要多少两银子。



彩虹

  • 精华:2帖
  • 求助:4帖
  • 帖子:54帖 | 1626回
  • 年度积分:8
  • 历史总积分:7586
  • 注册:2006年9月21日
发表于:2010-01-19 09:18:23
41楼
我的想法是在入口装一电眼检测物体的进入,通过旋转编码器的脉冲,再在程序里比较,并要用到移位处理才行,其实你的程序的工作原理与击打器原理一样的。不管你有多少物件进入都可以,你说清楚你的要求发到xuezhaocaihong@163.com  那天我等你回信你没回,我在同事这上一网就回去了,我分钱不要!!!

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-19 11:42:12
42楼

感谢彩虹。

其实我的要求这一路的对话当中我都表明了。

一个概念上的模型就是:皮带上方有分布电眼若干个,从入口进入的物体随皮带的运动一个一个地经过上方的电眼。电眼看见有物体就发信。一直有物体就一直发信。这个信号就是我的要的信号。完了。说完了。概念上的东西就是这么多了。这个模型够简单了吧。首先这个明白不?又打个比喻。地砖磨边机,当砖经过一对磨头时,磨头要干活过后就空载了。我上面的电眼一样。有就输出1,没有就输出0。

至于信号什么用,无关,尽管输出就可以了。

现在问题是这上面的电眼都没有实物存在的,全部要在程序上凭记忆实现。在皮带上加个编码器,入口处装仅一个电眼。程序要实现在对应位置上仿真输出电眼的信号。

要求程序的功能与真实电眼的作用效果一致。位置可调,数量可增可减,皮带长度不限。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-19 11:54:42
43楼

M:

如果一般简单的话尽管开个价钱,方便的话在这里开价。不方便的话发我油箱HDIHHT@TOM.COM。价格绝对保密。

如果觉得是太简单的话,也可以帖出来,当岁晚派大礼。我的一句“谢谢”一定会奉上。

接上帖:

真实的电眼可以移动,松个螺丝就行了;可以拆除,在PLC上卸下接线就可以了;可以增加,再拉一条线可以了;在移动到新位置上可以马上投入工作;移动可以移到两个电眼重叠(移出皮带是没有意义的)。这一切一切都跟皮带长度速度无关。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-19 12:24:02
44楼

在电脑界。网上的共享软件免费软件,一搜。一筐一筐的多。我也不知道编这程序的人怎么会有这么多。为什么在工控这边却很难找到这样的组织专门提供程序呢?至少在我身边,我已经找找等等个一个月了没有一个说不收钱的。而且还有,有的一开口就是先推销自己的产品。引导我去用他的产品可以解决问题。有的只买产品没有技术支持。有的没有买他的产品,理都不理你。

没钱是万万不能啊?

彩虹

  • 精华:2帖
  • 求助:4帖
  • 帖子:54帖 | 1626回
  • 年度积分:8
  • 历史总积分:7586
  • 注册:2006年9月21日
发表于:2010-01-19 14:02:31
45楼
我在公司上班不是做生意,下班就休息学学英语,玩玩程序练练也没事干。其实你表达的不好有点模糊,从你说的就不是很专业,我的电话号上午就发你邮箱里了。

彩虹

  • 精华:2帖
  • 求助:4帖
  • 帖子:54帖 | 1626回
  • 年度积分:8
  • 历史总积分:7586
  • 注册:2006年9月21日
发表于:2010-01-19 15:07:33
46楼

1:在入口必需装一电眼,检测物件的进入。

2:测量 你的传送带总长度是多少米 ,转一圈的脉冲总共是多少(可以在机器上实际测得),算出每个脉冲的距离 ( 编码器一般有转一圈  5000/500/100/50/10/1的很多种)                                                                                                                          

3:把你的传送带分为你需要虚的若干点输出信号(也就是比较不同的脉冲个数,改变不同的脉冲个数来达到你要求的位置输出信号)以电眼检测信号为基点。

4:在程序里当每检测到以个物件进入信号,用高速记数器记数(可做一子程序调用最好用中断处理),然后用一个数据区域来做缓冲区(会用到指针寻址或用位移来处理),来存放当前每一物件当前所在的位置。

5:后面就是到相应的位置输出信号。(难在第四步)

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2010-01-19 20:49:20
47楼

我到担心一个问题,, 用告诉计数器有一个问题, 即高速计数器值是很有限, 如果编码器分辨率高的话, 皮带运行 不到一分钟计数值就溢出, 也就是说运行若干分钟, 高速计数器必须被复位,这样连续计数判断偏移位置就要做相应处理,而且可能结果不稳定?

示意图如下:

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-19 21:04:30
48楼

引用<呵呵,楼主还想的真多呀! 我不知道你说的时间继电器拔下来是什么意思? >

拔下来的意思是,把继电器从插座上拆下来。

我说说我设想的整个过程:

第一次下再程序的时候,把理论的计时值做为数据块下再到PLC。所有时间继电器采用常闭触点接入PLC输入点。通电运行,当PLC没有搜索到有继电器插入的时候。自动使用内置计时器和内置预置值。一直维持运行。

当,任何PLC运行时间(不管镜像时间继电器是否正在工作)把时间继电器插到插座上。常闭触点被PLC检测到,马上触发程序供电过来。继电器开始计时。随后触点断开,PLC知道了。把刚才的那段时间默记下来。这过程不可影响镜像计时器。

当登记结束。并且再次轮到此镜像计时器工作的时候,计时器仍然在线。那么,切换到外部计时器计时。并且每次计时同样记录时间并保存。因为随时会有人修改计时器设定值,一定要每次更新,放弃上一次的记录。

当某个时间,继电器没有工作了(正常情况)。拔出继电器,造成触点线路断路。由于常闭触点在线圈没有通电的情况下变成开路,PLC知道这是人为的拆卸(不排除是故障)造成。所以,当需要通电工作的时候,自动切换到内部镜像计时器工作。

届时机器上所有的计时器都可以只剩下空插座。管理人员需要修改时间的话,用一个拨码的数显计时器插上,OK。

省电,省维修时间,减少备件库存,降低设备发热,降低能耗,减少废气排放,绿色环保,低碳。ye。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-19 21:15:06
49楼

你的这个担心我已经担心过了。较小的正数减去很大的正数结果仍然可以是正数。

例如0-65535=1

1-65535=2

2-65535=3

这个特点三菱是没有的。

你的图很好,谢谢你的支持。

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2010-01-20 21:02:50
50楼

你你说的时间继电器干什么用我愣没看清楚!, 呵呵也许我水平有限啊!

噢, 你说的这点我倒是没注意,我用仿真软件测试了一下,是这样的!

我仔细分析了一下,你要的程序用PLC做出来可不小啊!

1.要设置1个输入队列,

2. 由于物体进入是随机的,当有输入时,设置队列第一项有输入,当检测到物体走到最后一个检测点时,要释放队列第一项为空!

    当队列满时, 下一次还要用到队列第一项,类似打印机任务队列一样的,还要作出队列结构!

用C语言做都得一会啊!

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2010-01-20 21:16:07
51楼
我试了一下,子程序数据区最多用60(BYTE) ,数据不够用!  呵呵, 看看谁还有更好的办法!

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-20 21:41:37
52楼

( ⊙o⊙ )哇M:我的时间继电器的事情还没有明白啊。已经说的很透了。也是仿真的事情呗。

这是属于一个过程控制。而非逻辑控制,不单是程序长而且还要一直扫描。任务是挺艰巨的。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-20 21:55:18
53楼
60是 什么用的?不够就增加 一点啦。

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2010-01-21 10:59:14
54楼

60(字节) 零时数据存储区,你程序要求不占用公共资源,用子程序内部的临时变量, 所以不够用! 你试试看子程序能否增加,我没试过!  呵呵!

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-21 12:17:51
55楼
哦。不好意思。我说得有点绝了。工作工程必须记忆的数据和工作过程的过程量是必须要全局空间的。只要定义到库内存上。还是可以的。除了库内存外就不要占用了。否则的话也编译不了。

kenzhuo

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 9回
  • 年度积分:5
  • 历史总积分:64
  • 注册:2010年1月20日
发表于:2010-01-21 13:07:34
56楼
你的物体是什么材质,可以的话用磁性开关解决问题!装在皮带下面!

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-21 23:04:59
57楼

那个地方是 不可能安装任何 高端传感器的。请不要再这方面考虑。

那里是喷丸的,是火烧的,是水淹的,是油浸的,是真空的,是高压的,是有毒的,是有微波的等等情况还没有出现。这可能仅仅是想省几个电眼和少拉几条线少几个输入点罢了。

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2010-01-23 16:29:24
58楼

占用公共资源的话,就没必要做成库了,因为调用不方便!

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2010-01-24 13:00:48
59楼

哪里!不就一个库内存。符号表看得到的。显示出每一个的用法。重复使用了会知道的。不会错。

用起来就1.调用库。2.填写库内存起始地址。OK。后面编其他程序的事情了。

彩虹

  • 精华:2帖
  • 求助:4帖
  • 帖子:54帖 | 1626回
  • 年度积分:8
  • 历史总积分:7586
  • 注册:2006年9月21日
发表于:2010-01-25 16:05:36
60楼
后来我想了一下你的那样设计,用S7-200在程序上是没发达到你所要的结果。

热门招聘
相关主题

官方公众号

智造工程师