(已结束)工控PLC擂台第14期--用PLC设计一自动车库系统。 点击:4704 | 回复:83



云锋

    
  • 精华:1帖
  • 求助:4帖
  • 帖子:252帖 | 5541回
  • 年度积分:0
  • 历史总积分:30376
  • 注册:2005年6月24日
发表于:2010-12-03 13:03:47
楼主

系统要求:

1,车辆前进时,经过1# → 2#传感器后计数器加1,经过2# → 1#传感器后计数器减1,单经过一个传感器则计数器不动作。

2,用一个由两位数码管组成的显示装置,显示车库内车辆的实时数量。

3,当车库满时放下横杆禁止车辆再进入,但不能影响车辆自助出库。

写出PLC硬件配置,DI、DO各点定义,并贴出相关程序。PLC品牌不限。

工控PLC擂台每周一期,本期下周末结贴。奖项设置:一等奖1名:50MP,二等奖5名:10MP,三等奖10名:30积分。

MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。

MP有什么用?兑换服务:以1个MP=1元来置换中国工控网的相关服务。 兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)。

 

 




彩虹

  • 精华:2帖
  • 求助:4帖
  • 帖子:54帖 | 1626回
  • 年度积分:8
  • 历史总积分:7586
  • 注册:2006年9月21日
发表于:2010-12-09 22:02:48
41楼

 

                   看来还是要我出手才能解决问题,不然这次的擂台要黄了。我等下做一个此题主要是计算进出车辆难一点,数码管显示电路简单,因每一种PLC基本上都有专用的七段码解码功能块(当然也可自己写,用指针查表就可搞定),向西门子在库里就有七段码解码功能块FC93,我们只要调用一下在输入端付一个值,在输出到输出点就可以了。

朋友00

  • 精华:1帖
  • 求助:2帖
  • 帖子:9帖 | 181回
  • 年度积分:462
  • 历史总积分:1505
  • 注册:2006年2月07日
发表于:2010-12-09 22:04:30
42楼

这个横栏是只有在停车位满的情况下有输出,

如果IO 点够用,还可以把实际库内可停的数值也输出来,或者就直接在BCD 显示器上接上库内可停的数值即可.

朋友00

  • 精华:1帖
  • 求助:2帖
  • 帖子:9帖 | 181回
  • 年度积分:462
  • 历史总积分:1505
  • 注册:2006年2月07日
发表于:2010-12-09 22:07:36
43楼
希望大家能够拍砖,我觉得这样关键程序就这一块,其它的限位这些,都另外考虑

朋友00

  • 精华:1帖
  • 求助:2帖
  • 帖子:9帖 | 181回
  • 年度积分:462
  • 历史总积分:1505
  • 注册:2006年2月07日
发表于:2010-12-09 22:18:08
44楼
谁可以把我的梯形图转换出来贴上去,我现在还没弄明白,你们觉得难的地方在哪,两相输入计数器不是完全可以满足你们的要求吗?为何要弄得这么复杂呢?只是装传感器的时候,装好就行了呀,

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-09 23:05:41
45楼
               一、 硬件设计考虑:
       1、 PLC选定:横杆起落需1个输出点,数字显示,一位BCD码数字输出需4个输出口,地址输出2个,需2个输出口,共需7个输出口。1#、2# 传感器输入,需2个输入口,手动横杆抬起与手动横杆落下需2个输入口,共需4个输入口。由于输出口7个,故选PLC为 224。
       2、 显示板器件选择:选用4511七段译码器2个,输入数据为 一位BCD码,有锁存数据功能,输出为对应输入数的数码管七段输出。 共阴极数码管二个,可需用大尺寸数码管放在明显地方。
       3、 手动控制横杆起落的开关为为一刀三指开关,中间位空,左位(1)为手动抬起,右位(2)为手动落下。开机后应先将此开关指落下位后,再会中间空位。

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-09 23:07:14
46楼
     硬件电路图:

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-09 23:08:53
47楼
  二位数码管电路图:

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-09 23:17:51
48楼
现贴出“进出车控制及数字显示梯形图”请网友们先自己分析,一会我会贴出程序解析

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-10 00:01:20
49楼
                      二、 控制程序及解析:
       1、1#、2#传感器及横杆位置确定,横杆位于1#、2#传感器中间,与1#、2#传感器的距离各为 1 米。
       2、图中 M5.0=1 为进车横杆抬起时间间隔,M5.1=1 为出车横杆抬起时间间隔,
       3、进车动作解析:正常进入:当车头近入1#传感器感应距离时,1#传感器输出=1,(即I1.0=1)其前沿触发M5.0 触发器,使M5.0=1,横杆抬起,车继续前进,当车头近入2#传感器感应距离时,2#传感器输出=1(即I1.1=1),其前沿使计数器VW0 + 1,同时触发M5.3触发器,使M5.3=1,此时车身进入2米(一般车长>>2M),车尾还没有离开1#传感器,车继续前进,当车尾离开1#传感器时,I1.0=0,由于此时M5.3=1,其常闭点断开,故I1.0的后沿不会触发M5.0,当车尾离开2#传感器时,I1.1=0,其下跳后沿触发M5.0,使M5.0=0,横杆落下。

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-10 00:03:38
50楼
       4、出车动作解析:正常出车:当车头近入2#传感器感应距离时,2#传感器输出=1,(即I1.1=1)其前沿触发M5.1 SR触发器,使M5.1=1,横杆抬起,车继续前进,当车头近入1#传感器感应距离时,1#传感器输出=1(即I1.0=1),其前沿使计数器VW0 - 1,同时触发M5.4触发器,使M5.4=1,此时车身进入2米(一般车长>>2M),车尾还没有离开2#传感器,车继续前进,当车尾离开2#传感器时,I1.1=0,由于此时M5.4=1,其常闭点断开,故I1.1的后沿不会触发M5.1,当车尾离开1#传感器时,I1.0=0,其下跳后沿触发M5.1,使M5.1=0,横杆落下。

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-10 00:05:22
51楼
        5、非正常进车:当车进入1#传感器,横杆抬起,开车者不想进入车库,开始倒车,当车头离开1#传感器,I1.0由1下跳为0,由于此时M5.3=0,其后沿触发M5.0,使M5.0=0,横杆落下。
       6、非正常出车:当车进入2#传感器,横杆抬起,开车者不想出车库,开始倒车,当车头离开2#传感器,I1.1由1下跳为0,由于此时M5.4=0,其后沿触发M5.1,使M5.1=0,横杆落下。

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-10 00:08:19
52楼
三、显示电路程序说明:
       控制程序对进出车辆进行加减计数,计数值存在VW0中,程序在运行中,时时将VW0值进行I_B转换,将转换成BCD码的数送入VW2中,个、十 二位BCD码在VB3里,为节省输出口,数据输出只用4个口,故二位BCD码 分二次送数,先送个位数,再送十位数,程序简单,就不做详细说明。此电路及送数程序是都好用的,十年前我已设计成功并一直使用到现在,实际电路是二路4位数值显示且带有微型打印功能,共用13个I/O口,其数据线8条,其余为地址线和打印握手线,后来改为串口输出,完成同样功能只需几条I/O线。想了解这方内容请见“自制的PLC外围组件及应用”一文。

wyb2866255

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2010-12-10 00:12:44
53楼
       到此我的设计基本结束,对车辆进出控制还需网友帮助分析,有不妥之处望大家指正,谢谢大家。

彩虹

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

我还是用西门子PLC来做此程序。此程序里我就不写闸门程序了,也就两个点与一条比较指令就行,主要写车辆的记数控制,与指针查表取七段码程序,七段码程序也可直接用西门子库里的七段码处理子程序,与指针查表来处理,首先把七段码存放到了DB10数据块里,用查表的方法来存取对应的七段码送去输出显示。这两种方法都写出了程序。

彩虹

  • 精华:2帖
  • 求助:4帖
  • 帖子:54帖 | 1626回
  • 年度积分:8
  • 历史总积分:7586
  • 注册:2006年9月21日
发表于:2010-12-10 08:04:24
55楼
程序已做完通过验正很好。

ahljj

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 806回
  • 年度积分:0
  • 历史总积分:3791
  • 注册:2002年10月03日
发表于:2010-12-10 09:47:32
56楼
高手如云,学习了...........

朋友00

  • 精华:1帖
  • 求助:2帖
  • 帖子:9帖 | 181回
  • 年度积分:462
  • 历史总积分:1505
  • 注册:2006年2月07日
发表于:2010-12-10 11:21:41
57楼
我就是不明白,两相计数器,BCD输出显示,PLC都有自带的功能,为何要自己手工去编写呢?原来很简单的事情,为什么会变得这么复杂呢?

老菜鸟

  • 精华:22帖
  • 求助:0帖
  • 帖子:301帖 | 8609回
  • 年度积分:0
  • 历史总积分:24924
  • 注册:2003年6月15日
发表于:2010-12-10 11:47:51
58楼
学习了。。。。。。。

gsja

  • 精华:0帖
  • 求助:1帖
  • 帖子:5帖 | 175回
  • 年度积分:0
  • 历史总积分:730
  • 注册:2008年8月22日
发表于:2010-12-10 13:49:03
59楼

我用200做个程序,cpu226晶体管输出

gsja

  • 精华:0帖
  • 求助:1帖
  • 帖子:5帖 | 175回
  • 年度积分:0
  • 历史总积分:730
  • 注册:2008年8月22日
发表于:2010-12-10 13:56:47
60楼
有什么不妥当的地方,希望大家能够指正

热门招聘
相关主题

官方公众号

智造工程师