• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于VC的工控機通信系統(tǒng)開發(fā)*

    2011-09-27 03:27:06陳遠方張洛平孟文寶周金朋
    制造技術(shù)與機床 2011年6期
    關(guān)鍵詞:單臺驅(qū)動器控件

    陳遠方 張洛平 孟文寶 周金朋

    (河南科技大學(xué)機電工程學(xué)院,河南洛陽 471003)

    隨著變頻調(diào)速技術(shù)的深入發(fā)展,基于變頻器調(diào)速的控制系統(tǒng)在大中型自動化生產(chǎn)中取得了廣泛的應(yīng)用。在實際的工業(yè)控制領(lǐng)域,一條生產(chǎn)流水線通常由多臺電動機驅(qū)動,能否實現(xiàn)多臺電動機的協(xié)調(diào)工作,直接關(guān)系到生產(chǎn)的可靠性和產(chǎn)品的質(zhì)量[1]。人工操作變頻器的控制面板,可以完成參數(shù)設(shè)定、發(fā)送運行指令、讀各類運行數(shù)據(jù)等。但過程復(fù)雜、專業(yè)化要求較強,并且在數(shù)據(jù)處理、計算、保存等諸多方面存在弱點,無法實現(xiàn)實時控制。目前,國內(nèi)外大多數(shù)變頻器公司(如臺灣臺達、日本東芝等)推出了帶有RS-485串行通訊接口的變頻器,為用戶通過計算機控制變頻器提供了條件[2]。本文研究了上位機控制多電動機協(xié)同轉(zhuǎn)動的方法。

    1 通信方案

    在通信領(lǐng)域內(nèi),有兩種數(shù)據(jù)通信方式:并行通信和串行通信。串行通信只使用一條數(shù)據(jù)線,節(jié)省傳輸線。尤其是在遠程通信時,此特點尤為重要。本文選擇串行通信作為通信工程開發(fā)的通訊方式。

    1.1 串行通信的實現(xiàn)機制

    串行口在Win 32中是作為文件來進行處理的,而不是直接對端口進行操作。對于串行通信,Win 32提供了相應(yīng)的文件I/O函數(shù)與通信函數(shù),通過使用這些函數(shù),可以編制出符合不同需要的通信程序。下面只介紹我們熟知的windows下串行通信的兩種方法。

    1.1.1 利用MSComm控件

    MicrosoftCommunicationsControl(以下簡稱MSComm)是Microsoft公司提供的簡化Windows下串行通信編程的ActiveX控件,它為應(yīng)用程序提供了通過串行接口收發(fā)數(shù)據(jù)的簡便方法。

    1.1.2 采用MFC串口通信編程

    Win32系統(tǒng)對文件的概念進行了擴展,無論是文件、通信設(shè)備、命名管道、郵件槽、磁盤還是控制臺都被看作是文件。因此,可以用MFC中的CFile類來實現(xiàn)對串口的操作。

    相對于后種方式,調(diào)用MSCOMM串口編程控件顯得更加簡便,不需要清楚知道各種API的用法,另外由于它在多種語言中的通用性,文中選擇通過MSCOMM串口控件實現(xiàn)串行通信。

    2 變頻器

    2.1 臺達VFD-B系列

    本系統(tǒng)選用臺達公司的高機能·向量型交流電動機驅(qū)動器VFD-B系列變頻器。VFD-B是采用高品質(zhì)之元件、材料及融合最新的微計算機控制技術(shù)制造而成。這款變頻器是以RS-485作為串行通信協(xié)議并且具有網(wǎng)絡(luò)功能,RS-485采用平衡發(fā)送接收方式,它具有傳輸距離長(最大可達1 200 m)、抗干擾能力強和多站能力的優(yōu)點。

    2.2 變頻器串行通信協(xié)議

    VFD-B系列交流電動機驅(qū)動器使用Modbus networks通訊協(xié)議。而Modbus可使用ASCII(American Standard Code for Information Interchange)或RTU(Remote Terminal Unit)兩種資料編碼。ASCII編碼是將所要傳送的資料先轉(zhuǎn)換成相對的ASCII碼后再傳送,而RTU則是資料直接傳送,不再經(jīng)過轉(zhuǎn)換[3]。

    以ASCII資料編碼為例,簡述如下:

    10-bit字符框(for ASCII),如圖1所示。ASCII資料格式的通訊協(xié)議見表1。

    表1 ASCII模式通訊協(xié)議

    (1)ASCII模式:變頻器向上位機回應(yīng)訊息的控制字與發(fā)送的控制字格式基本相同,只是在功能碼為03H(讀出寄存器內(nèi)容)時,在DATA資料內(nèi)容中增加資料數(shù)(以byte計算),但最多可同時讀取連續(xù)的20筆數(shù)據(jù)。

    (2)偵誤值:ASCII模式的檢查碼(LRC Check)由Address到Data Content結(jié)束加起來的值。

    當(dāng)驅(qū)動器做通信連接時,如果產(chǎn)生錯誤,此時驅(qū)動器會回應(yīng)錯誤碼且將命令碼的最高位(bit7)設(shè)為1(即Function code AND 80H)回應(yīng)給主控系統(tǒng),讓主控系統(tǒng)知道有錯誤產(chǎn)生。并且于驅(qū)動器的鍵盤顯示器上顯示CE-XX,作為警告信息,XX為當(dāng)時的錯誤碼。錯誤碼的意義見表2說明。

    表2 錯誤碼的意義

    3 程序?qū)崿F(xiàn)

    3.1MSCOMM控件串行通信處理方式

    MSCOMM控件提供了兩種處理通信問題的方法:一是事件驅(qū)動(Event-Driven)方式,二是查詢方式。

    3.1.1 事件驅(qū)動方式

    本文采用事件驅(qū)動方式處理通信問題。首先設(shè)置事件通知,當(dāng)所希望的事件發(fā)生時,Windows發(fā)出該事件已發(fā)生的通知。這種方法的優(yōu)點是程序響應(yīng)及時、可靠性高,特別是對于擴展了多個串口的情況,能避免數(shù)據(jù)丟失[4]。

    3.2 MSComm控件串口通信編程實例

    3.2.1 創(chuàng)建通信工程ModeProject

    打開Visual C++6.0,創(chuàng)建一個基于對話框的MFC AppWizard(exe)項目,命名為 ModeProject,插入MSComm控件。

    3.2.2 串口初始化

    在Class Wizard中為CModeProjectDlg類添加變量和響應(yīng)函數(shù)。

    以單臺為例,程序主要部分如下:

    3.2.2.1 串口事件處理函數(shù) OnCommMscomm1

    MsComm控件一般用事件驅(qū)動方式從串口接收數(shù)據(jù),事件驅(qū)動法完成對數(shù)據(jù)的監(jiān)視,并在程序中捕捉和處理這些事件。為串口事件添加OnComm()消息處理函數(shù)。消息處理函數(shù)是對串口事件的處理,根據(jù)自身需要編寫[5]。

    3.2.2.2 串口初始化

    4 實驗驗證

    4.1 閉環(huán)調(diào)速軟件流程圖

    如圖2所示,通訊程序包括:單臺、多臺選擇模式,閉環(huán)調(diào)節(jié)程序,正轉(zhuǎn)、反轉(zhuǎn)、點動、停止、故障復(fù)位切換程序,手動、自動調(diào)頻模塊。檔位切換、正反停切換由相應(yīng)按鍵處理程序完成。閉環(huán)調(diào)節(jié)程序、電動機實際轉(zhuǎn)速的測量、模糊控制算法的實現(xiàn)由速度模塊服務(wù)程序處理。整個程序由工控機調(diào)動,程序初始化完成之后,可以根據(jù)需要手動選擇單、多臺控制模式。以單臺為例,可在對話框界面選擇變頻器,運動開始之后如果速度達不到設(shè)定目標,則進行手動或自動調(diào)節(jié),如果達到設(shè)定速度,則自動等待下一個周期速度比較,不作處理。通過改變變頻器的頻率值改變電動機轉(zhuǎn)速,電動機轉(zhuǎn)速由編碼器反饋到程序的速度處理模塊中,從而周而復(fù)始運轉(zhuǎn)下去。多臺電動機控制原理與單臺類似。

    4.2 VC++6.0編寫的程序?qū)υ捒蚪缑?/h3>

    程序編寫過程中,單臺、多臺組成 group,電動機停止、正傳、反轉(zhuǎn)、點動正傳、點動反轉(zhuǎn)、故障復(fù)位組成 group,手動、自動校正組成group,這樣形成類似互鎖模式,當(dāng)選擇時,只能選擇同一group中的一個單選框。如圖3所示。

    在現(xiàn)場實際調(diào)試本程序過程中,數(shù)據(jù)滿足實驗要求,采用閉環(huán)調(diào)速,變頻器以0.01 Hz為調(diào)速單位,調(diào)速精度高,精度范圍限制在±1 r/min,運行良好。

    5 結(jié)語

    本文詳細介紹了VC++下變頻器與工控機的通訊工程開發(fā)方法,編寫程序并通過現(xiàn)場調(diào)試,用戶可以十分便捷地寫出靈活性高,移植性強的串口通信程序,避免了去掌握復(fù)雜windows API函數(shù)的弊端。這種開發(fā)方法具有很強的實用性,系統(tǒng)能夠做到無級調(diào)速,并廣泛地用于工業(yè)數(shù)據(jù)采集等領(lǐng)域。

    [1]張丹紅,劉波.基于RS-485總線的多電動機同步控制系統(tǒng)研究[J].計算機技術(shù)與發(fā)展,2009,19(9):228 -231.

    [2]楊玲.利用Visual C++6.0的MSComm控件實現(xiàn)計算機與變頻器的串行通訊[J].長春師范學(xué)院學(xué)報,2004,23(1):23 -25.

    [3]VFD-B使用手冊[Z].中達電通股份有限公司,2008.

    [4]高遠.通過MSComm控件實現(xiàn)串口的設(shè)備間數(shù)據(jù)傳輸[J].鐵道通信信號,2009,45(1):56 -57.

    [5]吉翔,李永全.VC++下MSComm控件的串口通信方法[J].電腦開發(fā)與應(yīng)用,2009,22(12):34 -38.

    猜你喜歡
    單臺驅(qū)動器控件
    累計2 100秒!我國百噸級火箭發(fā)動機單臺試車創(chuàng)下新紀錄
    藏起驅(qū)動器號確保數(shù)據(jù)安全
    電腦愛好者(2020年6期)2020-05-26 09:27:33
    關(guān)于.net控件數(shù)組的探討
    軟件(2018年7期)2018-08-13 09:44:42
    東風(fēng)汽車將獲控股股東2.2億元新能源補貼
    水電工程施工應(yīng)急調(diào)度模型單臺機組算法探究
    壓電陶瓷驅(qū)動器的遲滯特性
    單臺多震和達法研究山西地區(qū)的波速比變化特征
    中國地震(2015年1期)2015-11-08 11:11:30
    SiC基和Si基永磁同步電動機驅(qū)動器的比較
    新型低電壓大變形微驅(qū)動器數(shù)值求解及仿真
    計算物理(2014年2期)2014-03-11 17:01:41
    就這樣玩會VBA中常見的自定義控件
    電腦迷(2012年24期)2012-04-29 00:44:03
    碌曲县| 汉中市| 美姑县| 宜兴市| 嵊泗县| 石林| 顺昌县| 荔波县| 大理市| 云南省| 伊川县| 潍坊市| 湖州市| 海林市| 南靖县| 屯昌县| 普兰店市| 乌恰县| 商南县| 临邑县| 金山区| 渑池县| 同仁县| 祁连县| 浦东新区| 方城县| 洞头县| 察雅县| 延庆县| 白河县| 贵州省| 南昌县| 谢通门县| 天津市| 交口县| 石城县| 康保县| 龙南县| 滦南县| 乾安县| 崇文区|