精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

VC下的PLC關于數據采集管理系統的設計與研究

電子設計 ? 作者:工程師之余 ? 2018-10-08 10:27 ? 次閱讀

引 言

PLC具有可靠性高,系統設計靈活,編程簡單,易于安裝,抗干擾能力強等優點,但單獨的PLC不能提供良好的人機界面和數據處理能力。在實際應用中,往往需要將一組PLC的數據存儲、顯示和打印出來并對PLC進行實時的監控,應用工業監控組態軟件可以解決此類問題。當系統不是很大時,也可以采用VC等工具自己開發出上位機監控通信軟件,相對于專業監控組態軟件,它具有靈活、小巧、成本低等優點。正是基于現場的應用實際,使用VC開發出了一套滿足現場需要的數據采集管理軟件系統。

1 現場需求描述

車間有10臺單獨的試驗臺(由OMRON CJlG-HPLC和觸摸屏組成),負責檢驗4種類型制動閥產品的性能參數,并存入各自的DM,EM存儲區中,現要求用一臺工控機將各臺PLC內的數據采集進去,實現產品信息的集中管理,可以靈活地查詢、修改、添加、導出所有的產品信息,并能打印出各種指定格式的產品記錄單和匯總單;同時需要對PLC工作狀態進行監視。

2 系統的硬件構成

該系統的硬件由1臺上位機(工控機),11個RS 232/RS 485轉換模塊(該系統選用1個FS-485G模塊(需外接電源)連接工控機,10個UT-201型連接PLC),10根CJIG-H自由口到RS 232的轉換電纜(該系統選用FS-CN26),10臺CJIG-H PL及若干雙絞線組成,其示意圖如圖1所示。

VC下的PLC關于數據采集管理系統的設計與研究

3 上位機軟件的實現

3.1 通信部分的實現

3.1.1 功能描述

自動將現場10臺試驗臺的緊急閥和主閥信息采集存人數據庫;較實時地監視工控機與各試驗臺的通信狀態和通信內容;并可設置COM口;配置待通信的試驗臺;編排試驗員姓名與其編號的對應序列。通信部分的運行界面如圖2所示。

VC下的PLC關于數據采集管理系統的設計與研究

3.1.2 上位機與PLC之間的通信協議

該系統采用Host Link通信協議,上位機與PLC組成1:N的Host Link通信系統。Host Link采用總線式通信方式,通信的主動權在上位機一方,上位機啟動通信;首先向PLC發出FINS命令,PLC收到后會自動識別并加以執行,然后將執行結果返回上位機,上位機以幀的形式發送命令(命令碼),PLC也以幀的形式回送執行結果(響應碼)。在通信時,PLC與上位機的通信參數(如節點地址、通信波特率、數據格式)應設為一致。上位機的通信設置在對應的VC編寫的程序中進行,PLC的通信設置在其對應的系統設定區進行。FINS命令具體格式可在OMRON CJCS通信手冊中查找。

3.1.3 上位機的通信編程

上位機通過串口與PLC相連,故使用VC的串口通信控件 MSComm,完成對串口的讀寫工作。在使用Mscomm控件進行讀寫前,必須先初始化該控件的一些屬性,串口初始化代碼如下:

VC下的PLC關于數據采集管理系統的設計與研究

該程序中使用事件驅動(Event-driven)的方法來接收數據,當串口接收緩沖區中有字符到達時,MsComm控件的Oncomm事件處理函數捕獲到相關的通信事件,并被自動調用,在OnComm函數中加入自己的處理代碼,即可把PLC中傳來的數據進行處理、存儲等;通過MSComm控件的SetRThreshold函數設置產生OnComm事件之前要接收的字符數,在OnComm函數中用Switch語句,即可實現對不同的響應碼的不同處理。

通過定時函數和循環控制函數,周期地依次向各個PLC發送讀寫PLC的FINs命令碼,再在OnComm函數中加入對不同PLC響應碼的處理函數,就可實時地完成對PLC數據的采集。同時根據響應碼的內容監視PLC的運行狀態。PLC自動將檢驗的產品性能數據連續存入D存儲區中,當存儲區滿時自動從頭循環覆蓋存放,上位機定時將PLC的D存儲區的產品數據讀入、處理并存人數據庫。該系統中上位機1 min內可依次讀完10臺PLC的各自1條產品性能信息,而PLC檢驗完1個產品需15 min左右,故可滿足相對的實時性。為保證上位機完整且不重復地讀取PLC的所有產品性能數據,在各臺PLC中對每種產品都定義了A,B兩個存儲單元,A單元存放上位機讀取過的最后一條信息地址,當上位機每讀完1條信息,就由上位機對此單元的內容更新;B單元存放最新的產品信息存放地址,當PLC每產生1條新信息時,就由PLC更改該單元內容;上位機在讀取產品信息前,先對比A,B單元的內容,決定是否進行數據讀取和讀取哪個地址的數據。這樣即使上位機與PLC斷開一定時間后,當重新連接上,也可將以前沒讀到的信息讀入。程序流程圖如圖3所示。

VC下的PLC關于數據采集管理系統的設計與研究

在上位機中向PLC發送命令碼時,必須加相應的FCS校驗碼。該校驗碼是8位的二進制數轉換成的2位ASCII字符。這8位數據是將1幀中校驗碼前所有字符的ASCII碼按位連續異或的結果,轉換為字符時,按照2位16進制數轉換成對應的數字字符。同時,當接收到PLC自動發回的響應碼時,為確保接收數據的正確性,也必須用響應碼中的FCS進行校驗。系統中的發送命令碼、接收響應碼、生成命令碼和檢驗響應碼的代碼如下:

(1)發送命令碼

VC下的PLC關于數據采集管理系統的設計與研究

VC下的PLC關于數據采集管理系統的設計與研究

VC下的PLC關于數據采集管理系統的設計與研究

3.1.4 設置COM口、配置試驗臺、編排試驗員的實現程序

設置COM口、配置試驗臺、編排試驗員的實現程序還需有以下功能:設置通信的COM口;配置實驗臺,根據PLC的工作狀態,選擇需進行通信的PLC;編排試驗員,由于PLC中存放的是試驗人員的工號,故需在程序中建立一張表將工號對應為姓名,再將該姓名存入數據庫。

以上功能的實現,是通過在程序中寫配置文件,將配置信息存入硬盤,程序啟動時再從硬盤讀取相應的配置信息。VC中用GetPrivateProfileInt和WritePri-vateProfileString函數實現配置文件的讀寫。

3.2 查詢打印部分的實現

用戶登陸后,可對從PLC中采集到數據庫中的數據進行查詢、打印、刪除、修改、備份,并將數據導出到EXCEL等,系統管理員可對一般用戶進行相應的管理。查詢部分的界面如圖4所示。

VC下的PLC關于數據采集管理系統的設計與研究

3.2.1 VC與SQL Server 2000的連接

該系統中VC通過ADO訪問數據庫,ADO是最新的數據庫訪問技術,由3個主要對象Connection,Command,Recordset和幾個輔助對象組成。Con-nection對象提供OLE/DB數據源和對話對象之間的關聯;Command對象封裝了數據源可以解釋的命令;Recordset用于表示從數據源中返回的表格數據;為了方便地在程序中訪問數據庫,需要進行適當的封裝,該系統中定義了一個類ADOConn封裝了對數據庫的基本操作,在此后的數據庫訪問中可以方便地用ADOConn類的對象進行操作。

利用SQL Servet 2000的企業管理器,在數據庫中為PLC上的各種產品的檢驗報告各建立一張表,以存儲PLC上傳來的各項信息,此外還需建立一張用戶表來管理用戶的帳號和密碼。然后在VC程序中對每張表定義一個類,類的成員變量對應表的列,類的成員函數是對成員變量和表的操作,以方便程序對這些表的操作。

3.2.2 各功能在VC中的實現

查詢、修改、添加功能是在連接上數據庫后通過執行相應的delete,insert,update語句來實現的;可在SQL Server2000的企業管理企中設置備份調度來實現備份,也可在程序中寫BACKUP DATABASE命令來實現備份;VC中實現數據庫數據與Excel表格數據的互導,可以充分利用Exeel處理數據的強大功能,增強程序的數據處理能力和與外部數據的交互性,程序中采用這種方式來導出產品數據匯總表,以便存檔、復制和打印,具體的實現代碼較長,讀者可參照相關VC資料來實現。

VC中實現打印功能的方法有:將數據導入到Excel,World中進行打印;安裝第三方的打印控件(如水晶報表)實現;若是基于單/多文檔的程序可通過其封裝的打印功能實現。該系統中,通過將數據導入到Excel中的方式來打印匯總表,而各個產品的報告單則通過編寫基于對話框的打印程序來打印,其方法是通過CPrintDialog類的GetPrinterDC函數得到打印機的設備環境,再通過CDC類的StartDoc,DrawText,Selec-tObject等函數繪制打印的圖表并打印輸出。系統中用CDC類的開始打印新頁函數StartPage和結束當前打印頁函數EndPage來實現連續打印多張報告單。

結 語

Windows環境下的應用程序編程是目前的主要趨勢,PLC與上位機的通信是目前工業自動化發展方向之一。利用Visual C++6.O和SQL Server 2000,在Windows XP環境下開發了OMRON PLC的數據采集、存儲和查詢軟件,其投資少,可靠性高,具有強大的數據庫功能,現已成功運用于某廠的產品檢驗車間。若需要控制各PLC的設備,只需修改相應的命令碼即可實現。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • plc
    plc
    +關注

    關注

    5008

    文章

    13156

    瀏覽量

    462090
  • VC
    VC
    +關注

    關注

    1

    文章

    114

    瀏覽量

    88939
  • 上位機軟件
    +關注

    關注

    0

    文章

    9

    瀏覽量

    3209
收藏 人收藏

    評論

    相關推薦

    基于USB數據采集系統研究與設計--ResearchandDesignofDataAequisitio

    基于USB數據采集系統研究與設計--ResearchandDesignofDataAequisitio信息技術與電子技術的迅猛發展,使得計算機和外圍設備也得到飛速發展和應用,在科學研究
    發表于 06-10 00:57

    關于模擬數據采集設計的研究

    關于模擬數據采集設計的研究
    發表于 05-10 06:33

    Matlab和VC混合編程的DSP數據采集系統

    設計了基于Matlab 和VC 混合編程的DSP 數據采集系統,實現了在Matlab 平臺上控制和操作DSP 目標板進行數據采集,并把采集
    發表于 01-25 14:43 ?50次下載

    基于VC++ 6.0的高速串口通信數據采集系統

    VC++6.0中利用MSComm控件實現串口通信時實時性較差,系統資源利用不足,無法滿足高速串口數據采集軟件的編程要求.針對高速串口數據采集軟件的設計要求,提出了基于多線程技術和自
    發表于 03-02 14:28 ?100次下載

    基于VC++的數據采集監控系統設計

    本內容介紹了基于VC++的數據采集監控系統設計
    發表于 06-09 17:53 ?56次下載
    基于<b class='flag-5'>VC</b>++的<b class='flag-5'>數據采集</b>監控<b class='flag-5'>系統</b>設計

    VC串口通信的數據采集系統設計

    VC++6.0中利用MSComm控件實現串口通信時實時性較差,系統資源利用不足,無法滿足高速串口數據采集軟件的編程要求.針對高速串口數據采集軟件的設計要求,提出了基于多線程技術和自定
    發表于 11-09 15:15 ?1878次閱讀
    <b class='flag-5'>VC</b>串口通信的<b class='flag-5'>數據采集</b><b class='flag-5'>系統</b>設計

    基于Matlab和VC混合編程的DSP數據采集系統

    基于Matlab和VC混合編程的DSP數據采集系統
    發表于 10-20 09:31 ?4次下載
    基于Matlab和<b class='flag-5'>VC</b>混合編程的DSP<b class='flag-5'>數據采集</b><b class='flag-5'>系統</b>

    Linux系統實現西門子PLC數據采集

    今天跟大家分享一,基于Linux系統實現西門子PLC數據采集
    的頭像 發表于 02-22 16:27 ?1869次閱讀
    Linux<b class='flag-5'>系統</b>實現西門子<b class='flag-5'>PLC</b>的<b class='flag-5'>數據采集</b>

    PLC數據采集如何實現?PLC數據采集網關怎么來選?

    工業4.0的大潮中,很多應用都是由上位機、云來實現,那么PLC數據采集是最基本的前提條件之一。PLC數據采集如何實現?目前主流的PLC
    的頭像 發表于 08-10 16:07 ?2173次閱讀
    <b class='flag-5'>PLC</b><b class='flag-5'>數據采集</b>如何實現?<b class='flag-5'>PLC</b><b class='flag-5'>數據采集</b>網關怎么來選?

    PLC遠程監控與數據采集系統的原理及組成

    PLC遠程監控與數據采集系統的原理及組成 PLC遠程監控與數據采集系統是一種可以遠程監控和
    的頭像 發表于 01-22 16:46 ?1605次閱讀
    <b class='flag-5'>PLC</b>遠程監控與<b class='flag-5'>數據采集</b><b class='flag-5'>系統</b>的原理及組成

    PLC工業網關實現設備聯網與數據采集

    在自動化、智能化的工業浪潮,設備遠程監控管理系統已經成為企業提升運營效率、降低運營成本、保障生產安全的重要工具。其中,數據采集是實現設備遠程監控
    的頭像 發表于 04-23 14:10 ?458次閱讀
    <b class='flag-5'>PLC</b>工業網關實現設備聯網與<b class='flag-5'>數據采集</b>

    plc物聯網數據采集平臺是什么

    PLC物聯網數據采集平臺是基于物聯網技術,將多個PLC設備連接到云端的數據采集管理系統。通過
    的頭像 發表于 06-24 15:18 ?705次閱讀

    PLC采集網關如何實現多品牌PLC數據采集

    。特別是當企業使用多個品牌的PLC設備時,如何實現多品牌PLC數據采集,更是一個亟待解決的問題。本文將詳細介紹PLC采集網關如何實現多品牌
    的頭像 發表于 07-11 17:08 ?413次閱讀

    PLC數據采集IoT平臺是什么

    設備與互聯網相連,實現了數據的遠程采集、分析和管理PLC作為數據采集和控制的核心,負責與現場的傳感器、執行器等設備進行交互,完成基本的監
    的頭像 發表于 10-28 14:44 ?180次閱讀

    PLC數據采集解決方案

    一、背景及需求分析 隨著工業自動化程度的不斷提升,PLC作為工業控制系統的核心部件,其數據采集與監控的準確性和實時性變得尤為重要。然而,傳統的PLC控制
    的頭像 發表于 10-31 15:58 ?157次閱讀
    <b class='flag-5'>PLC</b><b class='flag-5'>數據采集</b>解決方案