|
|
<p> 系統的軟件設計本系統的軟件部分采用面向對象的可視化編程語言VC++6.0來實現數據的采集、工控機與PLC之間的串口通信以及數據的處理和顯示。<p> 數據采集的軟件實現對于使用PC-7422A/D和PC-7466D/A進行數據采集進行Windows應用程序開發,可以有兩種方法:(1)由用戶自行開發針對底層硬件的驅動程序,用戶可以直接對I/O端口進行操作,這種方法靈活性大,代碼執行效率高,可以充分發揮硬件的性能,但是要求開發者具有相當高的計算軟、硬件設計水平;(2)采用通用的開發環境(VisualC++、Delphi、C++Builder等),調用廠家提供的標準動態鏈接庫文件和第三方制作的ActiveX控件,采用這種方法可以在一定程度上降低程序開發的難度,在提供較好靈活性的同時,提供比第一種方法更好的移植性。動態鏈接庫DLL是一種基于Windows的程序模塊。之所以稱為動態,是因為它們在運行期間而不是編譯期間被裝入和鏈接到應用程序。PC-7422A/D和PC-7466D/A廠家提供DLL文件,DLL文件中的函數調用簡單,讀取信號非常方便。<p> PC-7422A/D卡提供了2個函數:out(por,tch,delay):該函數用來啟動A/D,ch值表示通道值,delay表示延時時間,Port表示端口地址,每次讀取數據前都要先打開通道。in(por,tdelay):該函數用來讀取現場采集的數據,每次讀取數據時都要用到。<p> PC-7466D/A卡同樣提供了2個函數:out(por,tsendva,ldelay):該函數用來發送數據,Port表示端口地址,sendval表示所要發送的數據的值,delay表示延時時間。in(port,delay):該函數用來啟動發送數據通道,port表示端口地址。在編程過程中,需要將pc7422.DLL和pc7466.DLL文件復制到該程序的根目錄下。<p> 工控機與PLC串口通信的實現串行通信是計算機與其他機器之間進行通信的一種常見方法,在Windows操作系統中提到了實現各種串行通信的API函數。通過SC-08編程<a >電纜</a>或FX232AW模塊,可將微型計算機的串行通信口RS-232和PLC的編程口連接起來,這樣微型計算機就可對PLC的RAM區數據進行讀、寫操作。根據PLC本身具有的特性,計算機可對PLC進行以下4種類型的操作:(1)位元件或字元件狀態讀操作(CMD0);(2)位元件或字元件狀態寫操作(CMD1);(3)位元件強制ON操作(CMD7);(4)位元件強制OFF操作(CMD8)。<p> 在Windows中為實現串口通信,SDK提供了完備的API函數,使編程變得容易。一般說來要完成串口通信,在32位模式下有以下3種常用的編程方法:(1)使用現有的ActiveX控件實現。現在一般使用微軟公司的MSComm控件,它是作為一個OCX提供的。(2)以文件方式操作串口。包括用CreateFiIe打開串口,串行口的初始化,利用ReadFiIe和WriteFile對串口進行讀寫操作,完成數據傳輸過程,關閉串口等操作步驟。(3)直接嵌入匯編法。這種方法可以在Windows98操作系統下使用,由于Windows98的非完全保護,可以在Windows98系統下使用這種操作方式。利用C/C++匯編嵌入功能,可以直接對串口進行操作。<p> 位元件或字元件狀態讀操作通信格式為:123456STXCMDADDRESSBYTESETXSUM1表示讀命令起始標志STX,代碼0X02;2表示位元件或字元件狀態讀命令CMD0,命令代碼為0X30,3表示讀位元件或字元件的4位起始地址,高位先發,低位后發,且以ASCII碼的形式發送,4表示一次讀取位元件或字元件的個數;5表示停止位標志ETX,代碼為0X03;6表示2位和校驗,和累計為2,3,4項代碼,取其和最低兩位轉化成ASCII碼,高位先發,低位后發。<p> 其他的操作格式都類似。按照流程編寫上位機通信程序。下位機在串口中斷程序里接收上位機的命令。接收數據后首先進行數據的校驗,如果檢測到數據有誤,則要求上位機重新發送數據,如果數據正確,則分析接收的是哪一類命令,并調用相應的子程序進行處理。<p> 結束語經過實踐證明,該系統對于節能燈生產效率與產品質量的提高起到了積極的作用,通過該系統監控主界面,我們可以非常直觀地觀察到排氣機中每個工位中燈管的狀態,對于設備當中的故障可以及時的發現。<p> <p>
|
|
狀 態:
離線
公司簡介
產品目錄
|
|
公司名稱:
|
淄博精工商貿供應站
|
聯 系 人: |
劉芳
|
電 話: |
0533-4160735
|
傳 真: |
|
地 址: |
張店區蘭雁大道19號 |
郵 編: |
255020 |
主 頁: |
|
|
|
|
|