分享好友 方案首页 频道列表

台达PLC配合组态王实现工厂产量监控查询系统

2012-04-15DELTA—中达电通股份有限公司

摘 要:某塑胶有限公司是专业生产手术等专用手套的亿元年产值企业。整个工厂多达26条生产线。由于生产产量都是依靠人工进行统计,所以在实际操作过程中,出现产品缺失导致投入的原料量和产出的成品量严重失衡,急需对整个工厂的产量进行准确的计量,因此项目基于性价比极高的台达PLC和组态王界面软件成功的开发出产量监控查询系统,得到了客户的赞扬。
关 键 字:台达PLC 组态王 数据库 数据的查询打印 报表组态
1引言
产量监控查询系统系统对整个工厂所有生产线进行实时监控,对每一条生产线的产量进行实时的存储,存储的数据通过组态王连接PLC,将PLC中掉电保持区的数据读到组态王自定义的相应变量当中,每分钟通过标准的SQL语言对数据进行存储(每分钟向SQLSERVER数据库中存储26条数据,即26条生产线的当前产量)。用户可以通过:日期、时间、时间段、车间、生产线对任何车间、任何生产线进行产量的查询;能够对任何车间、任何生产线进行月产量的统计。同时在查询出满足条件的记录后,将结果通过报表的组态显示在相应的表格当中,可以对该结果进行存储和打印。
2系统设计
2.1系统框图(图2)



图1 产量监控查询系统画面
2.2设备选型设计


3 系统分析
3.1功能要求
可以任意查询一车间、二车间任何生产线(共26条生产线)任何时段的产量。具体明
细如下:
(1)每条生产线产量的数据至少能够保存四个月的储存期,以便对历史数据进行查询。
(2)要求能够查询每条生产线任意每月、任意每天、任意每小时、任意每分钟的产量。
(3)要求能够对任意每条生产线在任意时段的产量进行查询。
(4)查询出来的任何结果要以特定的格式在报表中进行组态,同时将结果打印。
(5)各生产线任意每月产量、任意每天产量、任意每小时产量、任意每分钟产量可以在电脑上用柱状图、实时趋势曲线的形式表现出来
3.2查询方式
(1)能够按照日期进行查询(格式:Year/Month/Day)
(2)能够按照时间进行查询(格式:Hour/Minute/Second)
(3)能够按照生产线进行查询(一车间:1-1、1-2;2-1,2-2;3-1,3-2;4-1,4-2;
5-1,5-2;6-1,6-2;7-1,7-2;8-1,8-2 二车间:1-1,1-2;2-1,2-2;3-1,3-2;4-1,4-2,4-3,4-4)
(4)能够按照任意时间段进行查询(格式:Year/Month/Day Hour/Minute/Second To Year/Month/Day/ Hour/Minute/Second)
(5)能够按照班次进行查询(格式:早班,中班,晚班)早班:7:30—15:30
中班:15:30—23:30 晚班:23:30—7:30
(6)能够查询任意每月任意车间、任意生产线的产量
(7)能够运用<1>——<5>的各种不同的排列组合进行复杂的查询
4难点及实现方法
4.1 海量数据管理
两个车间共26条生产线,每分钟要有26条记录生成,每分钟向数据库插入26条记录。
该系统全天24小时工作,不允许停。所以一天的数据量为37440条记录。每月的数据量为1160640条记录。如果要存储四个月,则数据量为4642260条记录。数据量是相当庞大的。硬盘的数据存储接近2-3G,不仅会造成在查询时,系统资源严重被占用,同时普通的数据库如ACCESS的表格没有能力管理如此庞大的数据系统。ACCESS在管理如此庞大的数据时,不仅系统会造成不稳定,同时会出现不可预料的情形。所以只能寻找能够管理大型数据系统的数据库,因此可以选择SQLSERVER或Oracle。
4.2 基于WindowsXP创建SQL服务器的新数据源
组态王支持对标准的数据库进行数据的插入、选择、删除等基本的操作。同时支持标准的SQL语言。灵活的运用组态王提供的SQL函数使组态王通过ODBC(开放性的数据源)配合标准的SQL语言对数据库进行各种简单和复杂的操作。
在Win2000/Winnt/Winxp等操作系统下,必须正确的进行设置:从控制面板中
双击性能和维护,如图3所示。以WindowsXP为例说明。
第一步:在控制面板下选择 管理工具->ODBC数据源,双击图标 出现图2界面。


图2 ODBC数据源管理器界面
第二步:在用户DSN 选项卡片上,单击添加按钮,出现 创建新数据源 对话框,选择SQL Server(图3)。


图3 创建新数据源
第三步:单击第二步的完成按钮,出现创建到SQL Server的新数据源。如图4所示。


图4 创建SQL服务器的新数据源(1)
输入数据源名称、数据源描述和SQL Server 所在的服务器名称或者IP地址。服务器名称可以是SQL Server所在的机器名称,也可以是IP地址。单击下一步按钮。
第四步:选择登录SQL Server时的身份验证方式。并输入登录SQL Server时所用到的用户名和密码。如图5所示。


图5创建SQL服务器的新数据源(2)
这里的用户名和密码是在SQL Server中建立的。在SQL Server数据库中选择 安全性->登录,新建用户,如图6所示。


图6创建SQL服务器的新数据源(3)
第五步
一定要选择 选项,否则默认数据库是master。然后选择您想要连接的数据库。其余的按
默认设置,如图7所示。然后单击下一步按钮。


图7创建SQL服务器的新数据源(4)
第六步:按默认设置,单击完成按钮(图8)。


图8创建SQL服务器的新数据源(5)
第七步:图9给出了数据库连接的摘要信息,如果想测试一下是否能够连接到数据库,可以单击“测试数据源”按钮,会出现测试结果。


图9创建SQL服务器的新数据源(6)
单击确定完成连接。接下来的工作就是在组态王王建立记录体、表格模板。其中连接数据库的时候,一定要输入和刚才数据源名称一致的DSN。如 dsn = wuhandsn.
4.3 表格名称创新
即使使用大型的数据库,SQL Server或Oracle,由于每天的数据量多达37440条记录,
如果将一个月,甚至是四个月的记录全部写入同一个数据库的同一个表格,则所有的数据量大的将使表格崩溃,即使数据库能够管理,查询的速度也是可想而知的。将会非常的慢。经过作者反复的思索,想出了一个巧妙的办法,就是以系统的日期作为当天的表格名称。当系统时间为00:00:00时刻时,新建一个表格,通过SQLCreateTable( DeviceID, "TableName", "TemplateName" )函数建立不同的表格。因为组态王支持字符串函数,如下所示:
StrASCII( Char );// 此函数返回某一指定的文字变量首字符的ASCII值
StrChar( ASCII );// 此函数返回某一指定ASCII码所对应的字符
StrFromInt( Integer, Base );// 此函数将一整数值转换为另一进制下的字符串表示
StrFromReal( Real, Precision, Type );// 此函数将一实数值转换成字符串形式
StrFromTime( SecsSince1-1-70, StringType );// 此函数将一个时间值转换为字符串
StrInStr( Text, SearchFor, StartPos, CaseSens );// 此函数用于查找文本
StrLeft( Text, Chars );// 此函数返回指定文字变量的开始(或最左的)若干个字符
StrLen( Text );// 此函数返回某一指定的文字变量的长度
StrLower( Text );// 此函数将指定文字中的所有大写字母转换为小写字母
StrMid( Text, StartChar, Chars );// 此函数从指定的位置开始,从一个文字变量中返回指定个数的字符
StrReplace( Text, SearchFor, ReplaceWith, CaseSens, NumToReplace, MatchWholeWords );
//此函数替换或改变所提供字符串的指定部分
StrRight( Text, Chars );// 此函数返回指定文字变量的最末端(或最右)若干个字符
StrSpace( NumSpaces );// 此函数在文字变量中或表达式中产生一个空格串
StrToInt( Text );// 此函数在文字变量中或表达式中产生一个空格串
StrToReal( Text );// 此函数将一个由数字组成的字符串转换成一个能用于数字计算的实数值
StrTrim( Text, TrimType );// 此函数删除文字变量中无用的空格
StrType( Text, TestType );// 此函数检测文字变量的首字符以确定其是否为某一类型
StrUpper( Text );// 此函数将一指定文字变量中所有的小写字符转换成大写字符
在组态王中建立内存型字符变量NameTable="A"+StrFromInt( \\本站点\$年, 10)+StrFromInt( \\本站点\$月, 10)+StrFromInt( \\本站点\$日, 10);NameTable的构成为字母A+系统日期。将系统提供的整型变量转换成字符型变量。这样可以在数据库中建立每天的表格。每当系统日期由23:59:59跳变到00:00:00时,执行SQLCreateTable()函数,建立当天的表格,如图10所示,在SQL Server中组态王建立了A2006619日的表格。


图10建立当天的表格
4.4 基于Active控件的组态王条件查询
为了完成如此复杂的查询,使用了Active控件,因为组态王支持第三方控件,将所有<

收藏
神州普惠试验检验管理解决方案
试验检验管理系统TCM紧紧围绕产品生产试验检验的全过程进行系统规范的监控和管理,有力的监管了整个试验检验过程、协调组织了试验检验工作的开展、规范了试验检验过程的管理,同时还以方便高效的手段,整理和收集了全部试验检验过程的信息数据。

0评论2014-03-24

宏电工业级TD无线路由器应用于交警局电子警察项目
“电子警察”是高科技的交通管理手段,也是道路交通技术监控系统的重要环节,是智能交通系统建设的重要组成部分。它以其无人值守、自动记录、容量大、无需当场处罚、便于管理等优点成为交通管理工作中必不可少的装备。

0评论2013-02-27

领邦公布新型全自动检测方案:弹丸尺寸的快速检测
近日,北京领邦仪器技术有限公司(后文简称“领邦”)公布了一套新型的全自动检测方案——弹丸尺寸检测系统。该系统是一套在线全自动终检设备,采用激光扫描的方式,在计算机中还原炮弹外形,能够实现炮弹外形尺寸和形位公差的快速检测,满足大批量产品的在线自动化检测,避免人为检测造成的误差,同时保证数据的可靠性以及提高数据管理方便性。

0评论2012-08-31

仪器总线技术的回顾与展望
在测试测量领域,仪器总线技术的发展历来是工程师和科学家们最为关心的部分。从上世纪60年代推出的专用于仪器控制的GPIB总线,到现在被广泛使用的 USB、VXI、PXI和最新推出的LXI、PXI Express,不断涌现的新型总线技术在帮助我们的工程师更快捷高效的完成测量任务的同时,也引起了行业内专家们的广泛争论,究竟哪一种总线将会主宰未 来的测试测量领域呢?

0评论2012-05-28

加固电源典型应用方案
美国北大西洋(NAII)公司为军工和航空领域的嵌入式市场所提供的加固电源,类型齐全,无论是标准型产品还是定制型产品,都应有尽有。在国内外航空、航海、舰船等应用中占有及其重要的地位。

0评论2012-05-03

倾角传感器在无人机上的应用
无人驾驶飞机简称无人机,是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机。机上无驾驶舱,但安装有自动驾驶仪、程

0评论2012-04-13

倾角传感器在移动通讯车平衡系统上的应用
移动通信基站车是移动通信领域中用于应急通信信道建立的系统集成车辆。主要的功能一般包括GSM、CDMA、3G基站信道的建立、无线计

0评论2012-04-13

倾角传感器在水平平台测量上的应用
在仪器仪表、精密工具、机械制件的检验等行业经常会使用到水平平台,而大理石平台可以作为一个理想的选择,因为大理石的平台是一

0评论2012-04-13

SST倾角传感器在阳光追踪系统上的应用
随着能源的匮乏,人类越来越注重利用新型能源来代替现有的煤、石油原料,利用太阳能获得能源就是一个非常好的办法。阳光追踪器

0评论2012-04-13