亚洲国产岛国毛片在线_美国十次了思思久久精品导航_亚洲人体影院_欧美精品亚洲精品

技術頻道

PLC串行通信在分布式監控系統中的應用

  1 引言

  目前,plc作為一種成熟穩定可靠的控制器,已經在工業控制中得到了廣泛的應用。在實際應用中通常采用以工業控制計算機和plc構成計算機監控系統。在這里,plc完成對系統的底層控制,即直接控制執行機構,實現數據采集,處理與控制;上位計算機則完成數據處理、信息管理等復雜的監控管理任務。通訊的實現就成為這種系統中的關鍵技術之一。本文以電廠輸煤監控系統為例,介紹了串行通信技術在分布式監控系統中的應用。

  2 監控系統硬件構成

  某電廠輸煤系統共有儲煤圓筒倉6個,每個倉下面各對應著環式給煤機,犁煤機,變頻器和皮帶等設備,每個倉距離幾十米。我們使用可編程控制器(omron c200h型plc)作為下位機負責對每臺圓筒倉下的設備信號采集和控制命令的發送。由程序實現對設備啟停的連鎖控制,出現異常情況,如設備電流越限,給煤車擋板卡死等情況,能快速作出反應并報警。

  采用工業控制計算機(ipc)作為操作員站,實現對整個的監控和管理功能。plc之間以rs422方式組成網絡,并和上位機之間采用hostlink方式連接。系統結構圖如圖1所示。

  每個圓筒倉下的設備使用一個c200h型plc對其進行控制,并配置一個com06通信模塊。它能夠為plc提供rs422/485方式的通訊。這樣可以方便的將其聯網。rs422采用平行發送接收方式,具有傳輸距離長,抗干擾能力強和多點通信能力,最多可以連接32臺plc。在plc和上位機之間使用一個rs422/232轉換模塊,將rs422信號轉換為rs232信號,這里使用的是研華adam4520。這種網絡通信方式經濟實用,完全能滿足生產運行的需要。

  3 系統軟件開發及串行通信的實現

  上位機監控系統開發c++ builder6.0編程軟件。c++builder是borland公司的產品,它采用面向對象的c++語言,實時性好,運算速度快,編程效率高,人機界面功能強大。近年來越來越多地應用于工業控制。

  plc與上位機的串行通信程序的編制是監控系統開發的關鍵部分。使用c++builder開發系統人機界面的部分較為容易,不是本文討論的主要內容,在此不作詳細敘述。

  3.1 plc的通信協議簡介

  上位計算機和plc通訊使用的是上位鏈接通訊方式,所以我們要開發c++ builder與omron plc的串行通信,必須使用omron plc的上位機鏈接通信協議。

  上位機鏈接通信是通過在上位機和plc之間交換命令(command)和應答(response)幀實現的。在一次交換中從上位機傳輸至plc的命令稱為命令幀,plc對命令幀的應答數據稱為應答幀。每個幀以設備號和標題開始,以檢驗碼fcs及結束符結束。一個命令幀最多可以包含131個數據字符,多于131個數據字符的數據要分成若干幀發送。

  從上位機發送一個命令幀時,命令格式如圖2所示。

  @符號必須置于每個命令的開頭。節點號用來辨識接收命令的plc,節點號在數據寄存區dm6558地址中設定。識別碼是2個字符的命令代碼,用來設置通信的功能。正文設置命令參數,包括要讀寫的plc寄存器單元的起始地址和字數。fcs是2個字符的幀檢查順序碼,是檢查前面數據的校驗碼,終止符以“*”和回車(chr$(13))兩字符,表示命令結束。一些常用命令代碼如rr表示讀ir/sr區的值,rd表示讀dm區的值,wd表示向dm區寫數據。具體情況可參照相關操作手冊。

  響應幀的格式與命令幀類似,在標志碼后多了兩位的結束代碼。不同結束代碼的值代表不同含義。查看結束碼可以得知是否有錯誤發生以及發生錯誤的類型。正常情況下的結束碼為00。表1為常見的結束代碼及其含義。

  幀順序檢查fcs在終止符之前,以檢查傳送時是否存在數據錯誤。fcs是一個轉換成2個ascⅱ字符的8位數據。這8位數據為從幀開始到幀正文結束所有字符ascⅱ碼執行“異或”操作的結果。每次接收到一幀,先要計算fcs,與幀中所包含的fcs作比較,就能檢查數據傳輸的正確與否。例如:要讀出01號plc的ir200里的數據,通過上位機可以發送格式為“@01rr0100000141*”的命令幀。其中“41”即為計算所得的fcs。每一幀的fcs的可由上位機程序計算得到。

  3.2 c++ builder中串行通信的實現

  使用c++ builder開發串行通信程序有兩種方法:一種是利用activex控件,c++builder本身并不提供單獨的串行通信控件,可以使用visual basic自帶的mscomm32控件,在c++builder中注冊它,c++ builder就可以調用了。另一種方法是利用windows api函數創建串行通信。

  利用activex控件開發串行通信程序較為容易,很多文章都進行論述過,但是這種方法實時性較差。使用windows api函數開發串行通信程序雖然比較復雜,但是采用多線程技術,其準確性高,實時性好,適用于連續生產過程中通訊要求嚴格,實時性強,數據量大的場合。在本次系統開發中,經過綜合考慮,我們選擇了使用windows api函數開發串行通信程序。

  在開發過程中,我們使用了多線程,事件驅動的方式。通信程序主要由兩個線程組成,主線程負責接收用戶輸入,相應鍵盤鼠標,接收windows消息,以及向串口發送數據。另一個監視線程監視串口接收消息,并向主線程發送windows消息。通信過程如圖3所示。

  使用過程中,首先使用一系列api函數初始化通信端口。這部分程序如下:

  char *comno;

  dcb dcb;

  string sendtemp;

  file://取得要打開的通信端口

  sendtemp=“com” + inttostr(radiogroup1-》itemindex +1);

  comno=sendtemp.c_str(); file://字符串轉換

  hcomm=createfile(comno,generic_read|generic_write,0,null,open_existing,0,0);

  file://使用createfile函數打開一個通信端口,打開的

  file://端口視窗體上選擇的而定。

  if (hcomm==invalid_handle_value)

  file://如果串口未打開,報警消息。

  {

  messagebox(0,“打開通信端口錯誤!!”,“comm error”,mb_ok);

  return;

  }

  getcommstate(hcomm,&dcb); file://取目前串口狀態

  file://設置通信端口的狀態

  dcb.baudrate =cbr_9600; file://波特率設為9600

  dcb.bytesize =7; file://數據位7位

  dcb.parity =evenparity;//奇偶校驗設為偶校驗

  dcb.stopbits =twostopbits;//停止位設為2位 if

  (!setcommstate(hcomm,&dcb))

  {

  messagebox(0,“通信端口設置錯誤!!

  ”,“set error”,mb_ok);

  return;

  }

  通信端口初始化成功后,主線程開始接收用戶消息,監測用戶輸入,然后開始發送命令幀,發送完畢后將發送事件標記設為false,接收事件標記設為true。接收標記為true時,監視線程啟動,使用readfile函數讀取從plc返回的應答幀。如果沒有錯誤而且校驗幀fcs正確,則使用一段翻譯程序將應答幀中的plc信息翻譯出來,例如某個dm區的值,存入內存變量中,即可以在監控畫面上作出顯示。然后主線程發送下一個命令幀,開始下一個循環。

  如果plc返回的應答幀錯誤,或者fcs不正確,那么監視線程將根據錯誤的類型,發送消息至主線程,通知主線程重發命令幀或者改變設置。主線程經過多次重發仍然出現錯誤,則發出相關報警信息,通知操作員進行處理。由于監視線程在接收消息狀態下立即啟動,且與主線程采用同步處理方式,只需要向主線程發送消息,因此循環時間短,提高了控制系統的實時性。

  在本系統中,例如要使用上位計算機控制plc關閉某個設備。主線程首先監測到鼠標點擊開關事件,然后將這個操作事件翻譯成相應的命令幀,通過串口發送此命令到對應的plc中,改變plc內存區的某個對應的值,進而改變plc的輸出,關閉這個設備。同時監控畫面可以顯示出改變后的設備狀態。

  4 結束語

  使用本文介紹的方法編制通信程序,在火電廠輸媒監控系統中得到了實際應用。目前這一方案已經應用到現場,一段時間的試運行表明此方案是可行的。通信穩定可靠,實時性強,完全滿足現場設備通信的需要。同時,由c++builder開發的監控畫面,采用了面向對象的編程技術,縮短了此系統的開發周期,在上位機上再現生產過程,人機界面友好。相信此方案對同類系統的設計與開發有一定借鑒作用。

文章版權歸西部工控xbgk所有,未經許可不得轉載。

PLC
亚洲国产岛国毛片在线_美国十次了思思久久精品导航_亚洲人体影院_欧美精品亚洲精品
欧美一区二区三区四区高清 | 久久久国产精品亚洲一区| 欧美日韩三区四区| 99热在这里有精品免费| 91久久精品美女| 欧美黄色免费| 午夜在线视频一区二区区别| 欧美一级免费视频| 精品不卡在线| 亚洲精品男同| 国产日韩精品在线播放| 美国十次了思思久久精品导航| 久久综合一区| 亚洲尤物在线视频观看| 久久精品国产综合精品| 一本一本久久| 午夜精品久久久久久99热软件 | 国产精品日韩一区二区三区| 久久99伊人| 欧美激情导航| 久久av老司机精品网站导航| 久久综合色一综合色88| 亚洲一区二三| 久热re这里精品视频在线6| 亚洲欧美另类在线| 久久久精品999| 亚洲欧美在线一区| 美女日韩在线中文字幕| 亚洲欧美日韩人成在线播放| 免费欧美视频| 欧美在线观看www| 欧美激情网站在线观看| 巨乳诱惑日韩免费av| 国产精品a久久久久| 亚洲第一福利社区| 国产欧美精品在线播放| 欧美日韩国产在线看| 麻豆av一区二区三区| 国产精品免费在线| 亚洲欧洲午夜| 在线观看成人av| 亚洲永久免费观看| 亚洲一区二区三区成人在线视频精品| 久久免费视频在线观看| 久久精品中文字幕一区二区三区| 欧美日韩国产限制| 亚洲高清视频在线观看| 精品成人国产| 久久国产精品免费一区| 午夜久久影院| 欧美午夜片欧美片在线观看| 亚洲精品乱码久久久久久蜜桃麻豆 | 国产精品久久二区| 最新中文字幕亚洲| 亚洲三级毛片| 欧美激情一区三区| 亚洲福利视频在线| 亚洲精品久久嫩草网站秘色| 老司机一区二区| 免费欧美在线视频| 亚洲第一狼人社区| 久久精品盗摄| 噜噜噜躁狠狠躁狠狠精品视频| 国产综合视频| 久久精品国产在热久久| 蜜臀99久久精品久久久久久软件| 永久久久久久| 免费成人黄色片| 亚洲人成人一区二区三区| 亚洲狼人精品一区二区三区| 欧美成人午夜影院| 亚洲理论在线| 小黄鸭精品aⅴ导航网站入口| 国产精品视频免费观看www| 亚洲欧美一区二区激情| 久久九九精品99国产精品| 韩国欧美一区| 男人的天堂亚洲| 亚洲精品一区二区三区樱花 | 99精品国产热久久91蜜凸| 欧美高清视频在线| 日韩亚洲不卡在线| 欧美在线国产精品| 在线免费观看欧美| 欧美日韩亚洲高清一区二区| 一区二区三区免费网站| 久久超碰97人人做人人爱| 黑人一区二区| 欧美日本成人| 香蕉久久夜色| 亚洲日本aⅴ片在线观看香蕉| 午夜在线观看欧美| 亚洲电影免费观看高清| 欧美日韩精品系列| 欧美在线资源| 一本大道久久精品懂色aⅴ| 久久久九九九九| 99精品国产在热久久下载| 国产手机视频精品| 欧美大学生性色视频| 亚洲欧美一区二区原创| 亚洲国产成人午夜在线一区 | 樱桃国产成人精品视频| 欧美日韩妖精视频| 久久久精品性| 亚洲性xxxx| 欧美成人精品福利| 先锋资源久久| 日韩视频在线一区二区| 美女久久一区| 小处雏高清一区二区三区| 日韩视频―中文字幕| 精品成人在线| 国产精品在线看| 欧美激情一区二区三区不卡| 久久激情视频| 午夜精品区一区二区三| 亚洲精品专区| 欧美激情五月| 老牛嫩草一区二区三区日本| 亚洲欧美日韩中文视频| 99视频在线观看一区三区| 在线观看日产精品| 国产日韩欧美一二三区| 国产精品高潮久久| 欧美日韩综合在线| 欧美日韩精品高清| 欧美承认网站| 免费在线播放第一区高清av| 久久久www成人免费无遮挡大片| 亚洲在线网站| 亚洲欧美日韩精品久久亚洲区 | 欧美日韩第一区| 欧美大色视频| 欧美大片第1页| 免费观看亚洲视频大全| 久久九九国产精品| 久久久99精品免费观看不卡| 欧美有码在线视频| 久久国产精品久久久| 欧美一区二区日韩一区二区| 午夜一区二区三区在线观看 | 亚洲一区二区网站| 亚洲在线视频| 午夜精品福利在线| 久久超碰97人人做人人爱| 久久久欧美精品| 久久亚洲综合网| 欧美电影资源| 欧美性猛交xxxx乱大交蜜桃| 国产精品嫩草久久久久| 国产色产综合产在线视频| 国产原创一区二区| 怡红院精品视频| 亚洲精品一区二区三区在线观看 | 亚洲伦理一区| 这里是久久伊人| 小处雏高清一区二区三区| 久久伊伊香蕉| 免费中文日韩| 欧美精品在线观看一区二区| 欧美日韩在线视频一区二区| 欧美午夜久久| 国产在线精品一区二区中文| 精品91久久久久| 9色国产精品| 久久xxxx精品视频| 亚洲国产精品福利| 亚洲视频碰碰| 久久日韩粉嫩一区二区三区 | 亚洲欧美色一区| 久久久国产精品一区| 欧美剧在线观看| 国产欧美日韩三级| 亚洲黄色av一区| 亚洲欧美中文另类| 欧美激情国产日韩精品一区18| 日韩视频一区| 久久婷婷av| 国产免费一区二区三区香蕉精| 尤物网精品视频| 性欧美1819性猛交| 欧美激情亚洲视频| 午夜欧美精品久久久久久久| 欧美高潮视频| 国产一区二区三区网站| 在线亚洲国产精品网站| 狂野欧美一区| 亚洲影院一区| 欧美日韩精品二区第二页| 激情欧美一区二区三区| 午夜欧美理论片| 亚洲人成免费| 久久综合狠狠综合久久综青草| 国产美女高潮久久白浆| 一区二区三区高清在线观看| 欧美二区视频| 久久久www成人免费毛片麻豆| 国产精品国产三级国产普通话蜜臀| 在线看国产日韩|