采用RS422A現(xiàn)場總線溫控網(wǎng)絡(luò)控制系統(tǒng)的結(jié)構(gòu)及分析
dcb.fBinary=TRUE;
dcb.BaudRate=m_nBaud;
dcb.ByteSize=m_nDataBits;
dcb.fParity=TRUE;
dcb.Parity=EVENPARITY;
dcb.StopBits=ONESTOPBIT;
return SetCommState(m_hCom, dcb);
……//以上為打開并配置串口代碼
SetTimer(1,5000,NULL); //啟動定時器,定時間隔為5妙
CwinThread*m_pThreadd=AfxBeginThread(CommProc,this->GetDocument(), THREAD_PRIORITY_NORMAL, 0, CREATE_SUSPENDED, NULL); // 創(chuàng)建并掛起線程
if(m_pThreadd==NULL)
{
CloseHandle(m_hCom);
return FALSE;
?。?p> else
{
m_bConnected=TRUE;
m_pThreadd->ResumeThread(); // 恢復(fù)線程運行
?。?p> ……
}
UINT CommProc(LPVOID pParam)為輔助通信線程,該線程完成設(shè)定值以及動態(tài)數(shù)據(jù)的讀取,其程序流程圖如下所示:
void CRS422AnetView::OnTimer(UINT nIDEvent)為響應(yīng)計時器消息的函數(shù),定時被觸發(fā),本程序中定時間隔為5秒。在該函數(shù)里,主要是恢復(fù)輔助通信線程以及調(diào)用數(shù)據(jù)顯示程序p定時刷新數(shù)據(jù)等。
(2) 歷史紀錄瀏覽進程設(shè)計
歷史紀錄的瀏覽是為了對過去生產(chǎn)過程的回顧,可將產(chǎn)品的質(zhì)量和過程的設(shè)定結(jié)合起來進行分析,對以后的生產(chǎn)提供參考,以便能提高產(chǎn)品的生產(chǎn)質(zhì)量。這個進程提供了一定的查詢功能,能將歷史紀錄用曲線的方式回放出來,能將重要的過程鎖定下來,也能刪除過程紀錄。
本文介紹的基于RS422A現(xiàn)場總線的溫控網(wǎng)絡(luò)系統(tǒng)已經(jīng)在現(xiàn)場運行了較長時間,系統(tǒng)運行穩(wěn)定可靠,充分發(fā)揮了網(wǎng)絡(luò)管理的便捷優(yōu)點,提高了生產(chǎn)效率。顯然,對于一些中、小規(guī)模的測控系統(tǒng),采用RS422A是一個很好的選擇。
評論