www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 測試測量 > 測試測量
[導(dǎo)讀]摘 要:介紹基于VC++的工控機(jī)與多臺OMRON CJIG-H PLC組成的數(shù)據(jù)采集管理系統(tǒng)的實(shí)現(xiàn)。用RS 485連接上位機(jī)與現(xiàn)場10臺PLC,在上位機(jī)中建立數(shù)據(jù)庫和安裝數(shù)據(jù)采集管理軟件,通過總線將各臺PLC的數(shù)據(jù)采集到上位機(jī)的數(shù)據(jù)庫中

摘 要:介紹基于VC++的工控機(jī)與多臺OMRON CJIG-H PLC組成的數(shù)據(jù)采集管理系統(tǒng)的實(shí)現(xiàn)。用RS 485連接上位機(jī)與現(xiàn)場10臺PLC,在上位機(jī)中建立數(shù)據(jù)庫和安裝數(shù)據(jù)采集管理軟件,通過總線將各臺PLC的數(shù)據(jù)采集到上位機(jī)的數(shù)據(jù)庫中統(tǒng)一管理。采用VC設(shè)計(jì)上位機(jī)界面、通信程序和作為數(shù)據(jù)庫管理的前臺開發(fā)語言;后臺數(shù)據(jù)庫軟件采用SQL Server2000;上位機(jī)與PLC之間采用OMRON的Host Link通信協(xié)議。將SQL Server 2000與PLC結(jié)合起來,彌補(bǔ)了PLC存儲、管理大量數(shù)據(jù)能力不足的缺陷。通過此系統(tǒng),用戶可方便地在上位機(jī)中存儲、查看和打印下位機(jī)(PLC)中的信息,監(jiān)視PLC的工作狀態(tài)?,F(xiàn)場的運(yùn)行結(jié)果顯示該系統(tǒng)使用方便,性能可靠。
關(guān)鍵詞:上位機(jī);OMRON PLC;VC6.O;數(shù)據(jù)采集;通信


0 引 言
    PLC具有可靠性高,系統(tǒng)設(shè)計(jì)靈活,編程簡單,易于安裝,抗干擾能力強(qiáng)等優(yōu)點(diǎn),但單獨(dú)的PLC不能提供良好的人機(jī)界面和數(shù)據(jù)處理能力。在實(shí)際應(yīng)用中,往往需要將一組PLC的數(shù)據(jù)存儲、顯示和打印出來并對PLC進(jìn)行實(shí)時的監(jiān)控,應(yīng)用工業(yè)監(jiān)控組態(tài)軟件可以解決此類問題。當(dāng)系統(tǒng)不是很大時,也可以采用VC等工具自己開發(fā)出上位機(jī)監(jiān)控通信軟件,相對于專業(yè)監(jiān)控組態(tài)軟件,它具有靈活、小巧、成本低等優(yōu)點(diǎn)。正是基于現(xiàn)場的應(yīng)用實(shí)際,使用VC開發(fā)出了一套滿足現(xiàn)場需要的數(shù)據(jù)采集管理軟件系統(tǒng)。


l 現(xiàn)場需求描述
    車間有10臺單獨(dú)的試驗(yàn)臺(由OMRON CJlG-HPLC和觸摸屏組成),負(fù)責(zé)檢驗(yàn)4種類型制動閥產(chǎn)品的性能參數(shù),并存入各自的DM,EM存儲區(qū)中,現(xiàn)要求用一臺工控機(jī)將各臺PLC內(nèi)的數(shù)據(jù)采集進(jìn)去,實(shí)現(xiàn)產(chǎn)品信息的集中管理,可以靈活地查詢、修改、添加、導(dǎo)出所有的產(chǎn)品信息,并能打印出各種指定格式的產(chǎn)品記錄單和匯總單;同時需要對PLC工作狀態(tài)進(jìn)行監(jiān)視。


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

3 上位機(jī)軟件的實(shí)現(xiàn)
3.1 通信部分的實(shí)現(xiàn)
3.1.1 功能描述
    自動將現(xiàn)場10臺試驗(yàn)臺的緊急閥和主閥信息采集存人數(shù)據(jù)庫;較實(shí)時地監(jiān)視工控機(jī)與各試驗(yàn)臺的通信狀態(tài)和通信內(nèi)容;并可設(shè)置COM口;配置待通信的試驗(yàn)臺;編排試驗(yàn)員姓名與其編號的對應(yīng)序列。通信部分的運(yùn)行界面如圖2所示。
3.1.2 上位機(jī)與PLC之間的通信協(xié)議
    該系統(tǒng)采用Host Link通信協(xié)議,上位機(jī)與PLC組成1:N的Host Link通信系統(tǒng)。Host Link采用總線式通信方式,通信的主動權(quán)在上位機(jī)一方,上位機(jī)啟動通信;首先向PLC發(fā)出FINS命令,PLC收到后會自動識別并加以執(zhí)行,然后將執(zhí)行結(jié)果返回上位機(jī),上位機(jī)以幀的形式發(fā)送命令(命令碼),PLC也以幀的形式回送執(zhí)行結(jié)果(響應(yīng)碼)。在通信時,PLC與上位機(jī)的通信參數(shù)(如節(jié)點(diǎn)地址、通信波特率、數(shù)據(jù)格式)應(yīng)設(shè)為一致。上位機(jī)的通信設(shè)置在對應(yīng)的VC編寫的程序中進(jìn)行,PLC的通信設(shè)置在其對應(yīng)的系統(tǒng)設(shè)定區(qū)進(jìn)行。FINS命令具體格式可在OMRON CJCS通信手冊中查找。
3.1.3 上位機(jī)的通信編程
    上位機(jī)通過串口與PLC相連,故使用VC的串口通信控件 MSComm,完成對串口的讀寫工作。在使用Mscomm控件進(jìn)行讀寫前,必須先初始化該控件的一些屬性,串口初始化代碼如下:
    //選擇串口,參數(shù)為整型變量m_nserialport的值,m_Com為CMSComm類的一個對象
    m Com.SetCommPort(m_nserialport);

    if(m_Com.GetPortOpen()) //打開串口
    m_LCom.SetPortOpen(FALSE);
    m_Com.SetPortOpen(TRUE);
    m_Com.SetSettings(''9600,E,7,2'');
    //設(shè)置通信參數(shù),必須與PLC設(shè)置一致
    m_com.SetInputMode(O); //輸入方式為文本傳輸方式
    m_Com.SetRThreshold(78);
    //接收緩沖區(qū)有78個字符時觸發(fā)OnComm事件
    m_Com.SetInputLen(O);//參數(shù)為O表示讀取接收緩沖區(qū)中全部內(nèi)容
    m_com.GetInput(); //先預(yù)讀緩沖區(qū),以清除殘留數(shù)據(jù)
    該程序中使用事件驅(qū)動(Event-driven)的方法來接收數(shù)據(jù),當(dāng)串口接收緩沖區(qū)中有字符到達(dá)時,MsComm控件的Oncomm事件處理函數(shù)捕獲到相關(guān)的通信事件,并被自動調(diào)用,在OnComm函數(shù)中加入自己的處理代碼,即可把PLC中傳來的數(shù)據(jù)進(jìn)行處理、存儲等;通過MSComm控件的SetRThreshold函數(shù)設(shè)置產(chǎn)生OnComm事件之前要接收的字符數(shù),在OnComm函數(shù)中用Switch語句,即可實(shí)現(xiàn)對不同的響應(yīng)碼的不同處理。
    通過定時函數(shù)和循環(huán)控制函數(shù),周期地依次向各個PLC發(fā)送讀寫PLC的FINs命令碼,再在OnComm函數(shù)中加入對不同PLC響應(yīng)碼的處理函數(shù),就可實(shí)時地完成對PLC數(shù)據(jù)的采集。同時根據(jù)響應(yīng)碼的內(nèi)容監(jiān)視PLC的運(yùn)行狀態(tài)。PLC自動將檢驗(yàn)的產(chǎn)品性能數(shù)據(jù)連續(xù)存入D存儲區(qū)中,當(dāng)存儲區(qū)滿時自動從頭循環(huán)覆蓋存放,上位機(jī)定時將PLC的D存儲區(qū)的產(chǎn)品數(shù)據(jù)讀入、處理并存人數(shù)據(jù)庫。該系統(tǒng)中上位機(jī)1 min內(nèi)可依次讀完10臺PLC的各自1條產(chǎn)品性能信息,而PLC檢驗(yàn)完1個產(chǎn)品需15 min左右,故可滿足相對的實(shí)時性。為保證上位機(jī)完整且不重復(fù)地讀取PLC的所有產(chǎn)品性能數(shù)據(jù),在各臺PLC中對每種產(chǎn)品都定義了A,B兩個存儲單元,A單元存放上位機(jī)讀取過的最后一條信息地址,當(dāng)上位機(jī)每讀完1條信息,就由上位機(jī)對此單元的內(nèi)容更新;B單元存放最新的產(chǎn)品信息存放地址,當(dāng)PLC每產(chǎn)生1條新信息時,就由PLC更改該單元內(nèi)容;上位機(jī)在讀取產(chǎn)品信息前,先對比A,B單元的內(nèi)容,決定是否進(jìn)行數(shù)據(jù)讀取和讀取哪個地址的數(shù)據(jù)。這樣即使上位機(jī)與PLC斷開一定時間后,當(dāng)重新連接上,也可將以前沒讀到的信息讀入。程序流程圖如圖3所示。

    在上位機(jī)中向PLC發(fā)送命令碼時,必須加相應(yīng)的FCS校驗(yàn)碼。該校驗(yàn)碼是8位的二進(jìn)制數(shù)轉(zhuǎn)換成的2位ASCII字符。這8位數(shù)據(jù)是將1幀中校驗(yàn)碼前所有字符的ASCII碼按位連續(xù)異或的結(jié)果,轉(zhuǎn)換為字符時,按照2位16進(jìn)制數(shù)轉(zhuǎn)換成對應(yīng)的數(shù)字字符。同時,當(dāng)接收到PLC自動發(fā)回的響應(yīng)碼時,為確保接收數(shù)據(jù)的正確性,也必須用響應(yīng)碼中的FCS進(jìn)行校驗(yàn)。系統(tǒng)中的發(fā)送命令碼、接收響應(yīng)碼、生成命令碼和檢驗(yàn)響應(yīng)碼的代碼如下:
    (1)發(fā)送命令碼


3.1.4 設(shè)置COM口、配置試驗(yàn)臺、編排試驗(yàn)員的實(shí)現(xiàn)程序
    設(shè)置COM口、配置試驗(yàn)臺、編排試驗(yàn)員的實(shí)現(xiàn)程序還需有以下功能:設(shè)置通信的COM口;配置實(shí)驗(yàn)臺,根據(jù)PLC的工作狀態(tài),選擇需進(jìn)行通信的PLC;編排試驗(yàn)員,由于PLC中存放的是試驗(yàn)人員的工號,故需在程序中建立一張表將工號對應(yīng)為姓名,再將該姓名存入數(shù)據(jù)庫。
    以上功能的實(shí)現(xiàn),是通過在程序中寫配置文件,將配置信息存入硬盤,程序啟動時再從硬盤讀取相應(yīng)的配置信息。VC中用GetPrivateProfileInt和WritePri-vateProfileString函數(shù)實(shí)現(xiàn)配置文件的讀寫。
3.2 查詢打印部分的實(shí)現(xiàn)
    用戶登陸后,可對從PLC中采集到數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行查詢、打印、刪除、修改、備份,并將數(shù)據(jù)導(dǎo)出到EXCEL等,系統(tǒng)管理員可對一般用戶進(jìn)行相應(yīng)的管理。查詢部分的界面如圖4所示。

3.2.1 VC與SQL Server 2000的連接
    該系統(tǒng)中VC通過ADO訪問數(shù)據(jù)庫,ADO是最新的數(shù)據(jù)庫訪問技術(shù),由3個主要對象Connection,Command,Recordset和幾個輔助對象組成。Con-nection對象提供OLE/DB數(shù)據(jù)源和對話對象之間的關(guān)聯(lián);Command對象封裝了數(shù)據(jù)源可以解釋的命令;Recordset用于表示從數(shù)據(jù)源中返回的表格數(shù)據(jù);為了方便地在程序中訪問數(shù)據(jù)庫,需要進(jìn)行適當(dāng)?shù)姆庋b,該系統(tǒng)中定義了一個類ADOConn封裝了對數(shù)據(jù)庫的基本操作,在此后的數(shù)據(jù)庫訪問中可以方便地用ADOConn類的對象進(jìn)行操作。
    利用SQL Servet 2000的企業(yè)管理器,在數(shù)據(jù)庫中為PLC上的各種產(chǎn)品的檢驗(yàn)報(bào)告各建立一張表,以存儲PLC上傳來的各項(xiàng)信息,此外還需建立一張用戶表來管理用戶的帳號和密碼。然后在VC程序中對每張表定義一個類,類的成員變量對應(yīng)表的列,類的成員函數(shù)是對成員變量和表的操作,以方便程序?qū)@些表的操作。
3.2.2 各功能在VC中的實(shí)現(xiàn)
    查詢、修改、添加功能是在連接上數(shù)據(jù)庫后通過執(zhí)行相應(yīng)的delete,insert,update語句來實(shí)現(xiàn)的;可在SQL Server2000的企業(yè)管理企中設(shè)置備份調(diào)度來實(shí)現(xiàn)備份,也可在程序中寫B(tài)ACKUP DATABASE命令來實(shí)現(xiàn)備份;VC中實(shí)現(xiàn)數(shù)據(jù)庫數(shù)據(jù)與Excel表格數(shù)據(jù)的互導(dǎo),可以充分利用Exeel處理數(shù)據(jù)的強(qiáng)大功能,增強(qiáng)程序的數(shù)據(jù)處理能力和與外部數(shù)據(jù)的交互性,程序中采用這種方式來導(dǎo)出產(chǎn)品數(shù)據(jù)匯總表,以便存檔、復(fù)制和打印,具體的實(shí)現(xiàn)代碼較長,讀者可參照相關(guān)VC資料來實(shí)現(xiàn)。
    VC中實(shí)現(xiàn)打印功能的方法有:將數(shù)據(jù)導(dǎo)入到Excel,World中進(jìn)行打?。话惭b第三方的打印控件(如水晶報(bào)表)實(shí)現(xiàn);若是基于單/多文檔的程序可通過其封裝的打印功能實(shí)現(xiàn)。該系統(tǒng)中,通過將數(shù)據(jù)導(dǎo)入到Excel中的方式來打印匯總表,而各個產(chǎn)品的報(bào)告單則通過編寫基于對話框的打印程序來打印,其方法是通過CPrintDialog類的GetPrinterDC函數(shù)得到打印機(jī)的設(shè)備環(huán)境,再通過CDC類的StartDoc,DrawText,Selec-tObject等函數(shù)繪制打印的圖表并打印輸出。系統(tǒng)中用CDC類的開始打印新頁函數(shù)StartPage和結(jié)束當(dāng)前打印頁函數(shù)EndPage來實(shí)現(xiàn)連續(xù)打印多張報(bào)告單。


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

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險積極籌備個人養(yǎng)老金的產(chǎn)品設(shè)計(jì)和系統(tǒng)開發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產(chǎn)品,推動商業(yè)養(yǎng)老保險、個人養(yǎng)老金、專屬商業(yè)養(yǎng)老保險等產(chǎn)品供給。 搭養(yǎng)老政策東風(fēng) ...

關(guān)鍵字: 溫度 BSP 東風(fēng) 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎(chǔ)單元,承載著生存與活動的最基本功能。而對于理想空間的解構(gòu)意義卻在物理性容器之外,體現(xiàn)出人們對于空間和生活深層關(guān)系的思考,同時也塑造著人與空間的新型連接...

關(guān)鍵字: 溫度 BSP 智能化 進(jìn)程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績預(yù)告。今年前三季度,公司預(yù)計(jì)實(shí)現(xiàn)營業(yè)收入7.54億元至8.33億元,同比增長60.24%至77.03%;歸母凈利潤預(yù)計(jì)為1.73億...

關(guān)鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經(jīng)濟(jì)和信息化局發(fā)布2022年度第一批北京市市級企業(yè)技術(shù)中心創(chuàng)建名單的通知,諾誠健華正式獲得"北京市企業(yè)技術(shù)中心"認(rèn)定。 北京市企業(yè)技...

關(guān)鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...

關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團(tuán)成立60周年的紀(jì)念日。趁著首都銀行集團(tuán)成立60周年與首都銀行(中國)在華深耕經(jīng)營12年的“大日子”,圍繞作為外資金融機(jī)構(gòu)對在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國際物流有限公司(Nipp...

關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國進(jìn)出口商品交易會("廣交會")于"云端"開幕。本屆廣交會上高新技術(shù)企業(yè)云集,展出的智能產(chǎn)品超過140,...

關(guān)鍵字: 中國智造 BSP 手機(jī) CAN

要問機(jī)器人公司哪家強(qiáng),波士頓動力絕對是其中的佼佼者。近來年該公司在機(jī)器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機(jī)器人會后空翻,自主爬樓梯等。這不,波士頓動力又發(fā)布了其機(jī)器人組團(tuán)跳男團(tuán)舞的新視頻,表演的機(jī)器人包括...

關(guān)鍵字: 機(jī)器人 BSP 工業(yè)機(jī)器人 現(xiàn)代汽車

南京2022年10月17日 /美通社/ -- 日前《2022第三屆中國高端家電品牌G50峰會》于浙江寧波落幕,來自兩百余名行業(yè)大咖、專家學(xué)者共同探討了在形勢依然嚴(yán)峻的當(dāng)下,如何以科技創(chuàng)新、高端化轉(zhuǎn)型等手段,幫助...

關(guān)鍵字: LINK AI BSP 智能家電

測試測量

28618 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉