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

當前位置:首頁 > 消費電子 > 消費電子
[導讀]0 引言在工業(yè)電氣傳動裝置中,變頻器因應用方便,性能可靠,所以被作為首選的電機控制器得到廣泛應用[1]。計算機控制技術與現(xiàn)代變頻器技術相結合,采用變頻器的標準RS485通

0 引言

在工業(yè)電氣傳動裝置中,變頻器因應用方便,性能可靠,所以被作為首選的電機控制器得到廣泛應用[1]。計算機控制技術與現(xiàn)代變頻器技術相結合,采用變頻器的標準RS485通訊接口和內置協(xié)議,可以方便地實現(xiàn)微機對下位機的集中控制,并且易于軟件實現(xiàn),費用低廉,具有較高的可靠性和實用價值[2]。

為了便于操作和監(jiān)控電動機的運行工況,需要對其電壓、電流、頻率、轉速及工作狀態(tài)等關鍵信息進行監(jiān)測,并根據工作需要,修改相應的參數(shù),調整電動機的工作狀態(tài)。這些信息可通過變頻器(下位機)傳給微機(上位機),因此需要變頻器與微機進行通訊,通過微機監(jiān)控變頻器來控制、協(xié)調電動機的運行。本文基于Visual C++下的MSComm控件來實現(xiàn)微機與變頻器的串口通訊。

1 變頻器通訊機制

1.1 系統(tǒng)硬件總體結構簡圖

由于多數(shù)工業(yè)用變頻器提供的是符合RS485標準的串行通訊接口,而微機的通訊接口多為RS232C接口[3],因此在二者之間需要加接RS485-RS232C接口轉換器。這樣利用該接口通過軟件編寫的通訊驅動程序就可以實現(xiàn)微機與變頻器的信息交換。系統(tǒng)硬件總體方框圖如圖1所示。

 

 

1.2 串行通訊

串行通訊是指外設和計算機間使用一根數(shù)據信號線傳送數(shù)據,這些通訊數(shù)據在信號線上是按位進行傳輸?shù)模恳晃粩?shù)據都占據一個固定的時間長度。

這種通訊方式的優(yōu)點是使用的數(shù)據線少,在遠距離通訊中可以節(jié)約通訊成本。當然,其傳輸速度比并行通訊慢。對于RS485 串行接口其最大傳輸速率為10 Mbit/s,最長通訊距離為1 200 m。

1.3 通訊協(xié)議格式

串口通訊傳輸?shù)幕舅枷牖趲瑐鬏敺绞?,即在向串口發(fā)送數(shù)據時是逐幀發(fā)送。在每幀傳輸過程中采用應答方式[4]。具體為上位機發(fā)送命令參數(shù),變頻器首先通過校驗判斷是否為正常幀,若校驗為正常幀,可以接收并做出應答。否則丟棄不予應答。

本文所舉例的變頻器的通訊幀格式如圖2 所示,每一幀都由幀頭、幀格式數(shù)據塊、校驗和、幀尾四部分構成。

 

 

EOT:起始位,1個字節(jié);

DATA:數(shù)據塊,n 個字節(jié),包括命令字、參數(shù)、工作狀態(tài)等內容;

BCC:校驗和,2個字節(jié),為其前5 個字節(jié)數(shù)據之和,低位在前,高位在后;

ETX:結束,1個字節(jié)。

通訊協(xié)議的數(shù)據格式為:

1)串口幀采用10位幀,1位起始位,8位數(shù)據位,1位停止位,無奇偶校驗位,均為十六進制數(shù)據,字長為8 bit,采用COM1串口,波特率為9 600 bit/s;

2)變頻器根據上位機指令向上傳送相應數(shù)據;

3)應答發(fā)送,微機發(fā)出修改命令,變頻器接收命令后,修改參數(shù),并把參數(shù)修改情況傳給上位機;

4)上位機發(fā)送其他命令如啟動、停止等。

2 MSComm控件

Microsoft Communication Control(簡稱MSComm)是Microsoft 公司提供的在Windows下進行串行通訊編程的ActiveX控件,它為應用程序提供了通過串行端口接收和發(fā)送數(shù)據的簡便方法。

2.1 MSComm控件的引用

MSComm 控件的引用和其他ActiveX 控件的引用類似,一般都是在Visual C++6.0環(huán)境下,新建一個工程,在“工程”菜單下,選擇“增加到工程”的Components

and Controls Gallery 選項,在彈出的對話框中打開“Registered ActiveX Controls”,選擇“Microsoft Communications Control version 6.0”插入到工程中,這樣類似電話機模樣的MSComm控件就出現(xiàn)在工具框中,用戶可以像使用內部控件那樣把它添加到窗體。

值得一提的是,該控件可以放在窗體的任一位置,在運行的時候對外是不可見的。

2.2 MSComm控件兩種處理通訊的方式

MSComm控件有兩種處理通訊的方式,包括事件驅動方式和查詢方式[5,6]。在文獻[5,6]中對此做了詳細介紹。

2.3 MSComm控件的屬性

MSComm 控件中比較重要的幾個屬性如下:

CommPort 設置并返回通訊端口號,缺省值為COM1,可設置1~16個;

Settings 以字符串的形式設置并返回波特率、奇偶校驗、數(shù)據位、停止位;

PortOpen 設置并返回通訊端口的狀態(tài),也可打開和關閉端口;

Input 讀入并清除接收緩沖區(qū)的字符;

Output 將發(fā)送的字符串或數(shù)組寫到發(fā)送緩沖區(qū);

CommEvent 在通訊錯誤或事件發(fā)生時產生;

OnComm 事件,CommEvent 屬性存有該錯誤或事件的數(shù)值碼。

3 軟件實現(xiàn)

3.1 程序模塊

軟件實現(xiàn)主要包括上位機初始化程序模塊,串口事件處理模塊,數(shù)據校驗模塊,數(shù)據處理模塊等。

3.1.1 上位機初始化模塊

打開串口并設置串口參數(shù),同時,預讀緩沖區(qū)以清空殘留數(shù)據,對串口初始化。設置的串口參數(shù)包括:串口號、波特率、奇偶校驗位、數(shù)據位、停止位等。

主要代碼如下:

If(m_ctrlComm.GetPortOpen())

m_ctrlComm.SetPortOpen(FALSE);// 檢查串口,如果是打開的,則關閉

m_ctrlComm.SetCommPort(1); // 根據協(xié)議要求,選擇COM1端口

m_ctrlComm.SetSettings(“9 600,n,8,1”);// 設置波特率9 600,無校驗,8個數(shù)據位,1個停止位

m_ctrlComm.SetInputMode(1);//1:表示以二進制方式檢取數(shù)據

m_ctrlComm.SetRThreshold(1);// 參數(shù)1表示每當串口接收緩沖區(qū)中有多于或等于1 個字符時將引發(fā)一個接收數(shù)據的OnComm事件

m_ctrlComm.SetInputLen(0);//設置當前接收區(qū)數(shù)據長度為0,表示全部讀取

m_ctrlComm.GetInput ();// 先預讀緩沖區(qū)以清除殘留數(shù)據

3.1.2 串口事件處理模塊

該模塊主要是接收下位機發(fā)送來的數(shù)據包,并對數(shù)據包進行數(shù)據類型的轉換,以便于數(shù)據處理模塊和數(shù)據校驗模塊對其進行處理。主要代碼如下:

switch(m_ctrlComm.GetCommEvent ())// 代表控件引起的事件

{

case 2: //comEvReceiv 事件,事件值為2 表示接收緩沖區(qū)內有字符

{

VARIANT variant_inp;

COleSafeArray safearray_inp;

LONG len,k;

BYTE rxdata[2048];

CString strtemp,m_str;

variant_inp=m_ctrlComm.GetInput();//讀緩沖區(qū)

safearray_inp=variant_inp;//VARIANT 型變量轉換為ColeSafeArray型變量

len=safearray_inp.GetOneDimSize ();// 得到有效數(shù)據長度

for(k=0;k

safearray_inp.GetElement(&k,rxdata+k);//轉換為BYTE型數(shù)組

}

for(k=0;k

BYTE bt=*(char*)(rxdata+k);

strtemp.Format(“%02X”,bt);// 將字符以十六進制方式送入臨時變量strtemp存放,注意這里應加入一個空隔

m_str+=strtemp;

//加入接收編輯框對應字符串

}

// 微機控制變頻器的參數(shù)通過類似COIeVariant的構造函數(shù)來實現(xiàn),COIeVariant 可以接收各種類型的數(shù)據(如字符串、整數(shù)、浮點數(shù)等)并自動將其轉換為符合VARIANT要求的數(shù)據。然后就可以根據自己的通訊協(xié)議要求加入相應的處理代碼,實現(xiàn)數(shù)據的傳遞[6]。

…… //在此可以添加通訊協(xié)議代碼

}

}

3.1.3 數(shù)據校驗模塊

根據約定的通訊協(xié)議,對于上位機發(fā)送的命令,不符合協(xié)議格式(包括數(shù)據頭,尾,數(shù)據長度等)時,下位機將不予應答;對于下位機傳送給上位機的數(shù)據,處理方式相同。符合協(xié)議格式(包括數(shù)據頭,尾,數(shù)據長度等)時,計算校驗和,校驗和為其前5 個字節(jié)數(shù)據之和。校驗正確,則進入數(shù)據處理模塊,否則,丟棄不予處理。

3.1.4 數(shù)據處理模塊

此模塊包括數(shù)據解包,數(shù)據提取,數(shù)據轉換,如將得到的十六進制的頻率數(shù)據,以十進制數(shù)據方式上傳至上位機顯示。

此外還有等待超時處理模塊,數(shù)據傳輸錯誤處理模塊等。

3.2 通訊協(xié)議編程實現(xiàn)

變頻器與微機進行通訊時,首先,作為下位機的發(fā)送方先將要發(fā)送的數(shù)據按協(xié)議規(guī)定的格式組成數(shù)據包,并求出檢驗和,然后連同包頭和包尾一同發(fā)送出去。作為上位機的接收方收到數(shù)據后,通過軟件實現(xiàn)通訊協(xié)議,主要流程如圖3所示。

在軟件實現(xiàn)通訊協(xié)議的過程中,處理和校驗數(shù)據時,注意要將接收的數(shù)據格式轉換為合適的數(shù)據格式,否則在調試的時候就會出現(xiàn)錯誤,或者在上位機的控制界面上不能正確顯示。

3.3 界面實現(xiàn)

該軟件主要由靜態(tài)數(shù)據區(qū)和動態(tài)數(shù)據區(qū)兩部分組成。靜態(tài)數(shù)據區(qū)包括串口參數(shù)的選擇和參數(shù)數(shù)據的顯示,并可選擇和修改參數(shù)命令;由于該變頻器采用應答式通訊,所以在動態(tài)數(shù)據區(qū)中,顯示下位機傳送的數(shù)據,同時,在靜態(tài)工作區(qū)可以導入導出參數(shù);

在動態(tài)工作區(qū),可以根據需要,選擇是否進行定時發(fā)送測量命令,從而實時監(jiān)控下位機的工作狀況。靜態(tài)數(shù)據區(qū)和動態(tài)數(shù)據區(qū)兩部分相互配合,實現(xiàn)對下位機的完整控制。如圖4所示。

 

 

4 結語

采用Visual C++環(huán)境下的MSComm控件對變頻器進行軟件編程,通過變頻器的RS485串口通訊功能,可以實時監(jiān)控和調整下位機的工作狀態(tài),實現(xiàn)對下位機的集中控制。軟件界面友好,操作方便,具有較強的實用性。

 

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

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉