燃料吊车称重系统的设计

2020-08-31 05:41李广强焦建耀唐显聪
机电信息 2020年18期
关键词:数据库

李广强 焦建耀 唐显聪

摘要:燃料吊车作为垃圾发电厂的重要燃料搬运设备,具备自动循环投料、翻料及自动计重统计功能。燃料吊车PLC通过以太网向上位机发送数据指令,通过VS2010平台开发燃料吊车称重上位机软件,连接PLC称重系统的数据库,实现数据显示与共享。

关键词:垃圾发电厂;燃料吊车;PLC;VS2010;称重系统;数据库

0    引言

随着城市的发展,垃圾处理问题日益突出,直接掩埋或焚烧处理垃圾的方式严重污染环境,而垃圾焚烧电厂既解决了垃圾处理问题,又利用了垃圾燃烧的能量进行发电。近年来,越来越多的垃圾发电厂新建并投入使用。燃料吊车作为垃圾发电厂的燃料搬运设备,作用相当重要,其能实现自动投料、翻料并对投料进行自动计重统计。为便于燃料与产能的数据分析和吊车操作员工作量的考核,燃料吊车除电控系统外,均需配置一套称重系统,完成燃料和工作台班的统计工作,并将数据存储在对应开发的数据库里。

1    系统简介

称重系统功能包括垃圾投料量数据采集、数据存储/查询/打印等功能。通过VS2010平台编写数据采集程序,连接用于数据存储的数据库,并完成数据统计分析,实时显示吊车的抓料量和投料量。

2    设计要点

燃料吊车称重系统要实现投料垃圾的计重统计及历史查询功能,设计要点包括实现重量数据采集、称重系统与吊车电控系统的数据连接、操作界面及称重系统与数据库的连接。

3    称重系统软件

3.1    开发平台及工具

该称重系统适合使用Windows操作系统,开发工具为VS2010,采用C/S架构,即Client/Server(客户机/服务器)结构,通过将任务合理分配到Client端和Server端,優化系统的通信效率;且需要安装客户端,才可进行管理操作,这就使得系统操作更加安全可靠。

采用MySQL作为数据库。作为最流行的关系型数据库管理系统,MySQL软件采用了双授权政策,分为社区版和商业版,具有体积小、速度快、成本低等特点。

3.2    称重系统功能

称重系统的数据框架如图1所示。

3.2.1    称重系统的数据源及采集

数据源为吊车电控系统PLC通过CPU X1以太网口发出,称重上位机软件通过通信模块读取以太网上的实时数据。上位机软件通信模块通过Socket与PLC进行通信,通信协议采用UDP保证系统数据采集的实时性。对每台设备建立一个通信线程,同步采集每台设备的实时数据。

以下为部分源码:

//初始化线程

int OnCreate(LPCREATESTRUCT lpCreateStruct)

{

if (CBCGPFrameWnd::OnCreate(lpCreateStruct) == -1)

return -1;

CBCGPToolBar::EnableQuickCustomization ();

// Menu will not take the focus on activation:

CBCGPPopupMenu::SetForceMenuFocus (FALSE);

if (!m_wndMenuBar.Create (this))

{

TRACE0("Failed to create menubar\n");

return -1;      // fail to create

}

m_wndMenuBar.SetBarStyle(m_wndMenuBar.GetBarStyle() | CBRS_SIZE_DYNAMIC);

// Detect color depth. 256 color toolbars can be used in the

// high or true color modes only (bits per pixel is > 8):

CClientDC dc (this);

BOOL bIsHighColor = dc.GetDeviceCaps (BITSPIXEL) > 8;

UINT uiToolbarHotID = bIsHighColor ? IDB_TOOLBAR-

256 : 0;

if (!m_wndStatusBar.Create(this) ||

!m_wndStatusBar.SetIndicators(indicators,

sizeof(indicators)/sizeof(UINT)))

{

TRACE0("Failed to create status bar\n");

return -1;      // fail to create

}

// Load control bar icons:

CBCGPToolBarImages imagesWorkspace;

imagesWorkspace.SetImageSize (CSize (16, 16));

imagesWorkspace.SetTransparentColor (RGB (255, 0, 255));

猜你喜欢
数据库
数据库
数据库
数据库
数据库
数据库
数据库