999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于PLC實現激光打標時流水線的全自動控制

2013-01-01 00:00:00李永剛
職業·中旬 2013年1期

摘 要:本文介紹了一種將激光打標機與工業現場的流水線設備PLC進行互聯互通,實現自動控制的一種方法。這種方法充分利用了打標軟件對外部動態庫插件的支持功能,通過動態庫實現打標軟件對Excel文件的讀取與RS232串口通訊功能的實現,PLC通過串口通訊功能,實現了對PC機數據的實時讀取,實現了對流水線移動距離的實時控制,很好地滿足了工業生產現場的自動化控制要求,達到了增產增效,降低成本的目的。

關鍵詞:激光打標 動態庫 Excel 串口通訊 PLC

一、概述

激光打標是一種利用激光的高能量在物體上進行燒蝕,從而在物體表面上刻畫出各種文字、符號及各種各樣的圖案。它的特點是:字跡清晰、不易擦除,標刻時工作速度快,一致性好,而且是非接觸的工作方式,可保證工件不會被損壞。振鏡式激光打標的基本工作原理是,激光通過X、Y振鏡鏡片的反射,經平場透鏡聚焦后在工件表面形成高能量激光點,通過控制X、Y振鏡的不同位置及激光的開關,實現激光點在工件表面上的移動,從而形成圖案。X、Y振鏡的運動及激光的開關,都是通過計算機上的激光打標控制軟件進行控制的。

本次流水線的控制采用三菱FX2N系列PLC,流水線上的控制功能包括:①一個伺服電動機及伺服電動機驅動器,用于控制流水線的運動。②三個電磁閥,其中兩個電磁閥用于控制兩個汽缸,一個電磁閥用于控制切割吹氣。③兩個汽缸,每個汽缸上各有2個位置傳感器,用于檢測汽缸抻出到位與縮回到位信號。④流水線位置傳感器有位置傳感器1,用于檢測流水線上是否有工件(紙帶),若是從無到有,則說明有工件上了流水線,若是從有到無,則說明流水線上沒有工件,當最后一個工件完成后,需要發出警示。

本次系統要將兩個設備聯動起來,控制過程為:當用戶選用不同打標數據后,打標機開始打標,完成后流水線自動移動與打標數據相對應的距離,到位后,自動切斷工件(紙帶),開始下次打標數據選擇。要實現打標工件與流水線的全自動控制,關鍵要解決的問題包括:①打標軟件對不同打標數據的動態讀取,②打標軟件與PLC之間的數據通信。

二、上位PC機中打標軟件對不同打標數據的讀取

根據打標要求,要實現的打標數據與流水線移動距離的關系可用表1所示的方式來建立數據關系,打標圖形的中心距離前端指定的距離為B,總字帶的長度為A。

A和B值由客戶自己填寫,相對應的打標文件內容由客戶自己定義。當客戶要做1號產品時,點擊1號后,相對應的A、B以及文件內容都傳送給PLC和打標機,完成1號的產品。當客戶要做3號產品時,點擊3號后,相對應的A、B以及文件內容都傳送給PLC和打標機,完成3號的產品。

為了實現這樣的要求,這個數據關系采用Excel格式來存放,并編寫一個動態鏈接庫,以插件的形式嵌入到打標軟件中,實現對Excel文件的讀取。

動態庫采用VC6.0作為開發工具,Excel文件的讀取過程如下:

①利用VC6.0中類向導中的自動化工具(Automation)加載一個新類,指向Microsoft Office的安裝目錄中的excel.exe,然后從列表中選取_Application、_Workbook、_WorkSheet、Range、Workbooks、Worksheets 共6項。

②直接在類函數里定義Excel表格操作所需要的上步加載的六個函數變量:

ApplicationExcelApp; Workbooks wbsMybooks; _workbookwbMyBook;

Worksheets wssMySheets; Worksheet wsMySheet; Range MyRange

③實現對Excel文件讀取的主要操作:

CoUninitialize();//初始化COM支持庫

ExcelApp.CreateDispatch(\"Excel.Applic-ation\",NULL)///啟動EXCELL

ExcelApp.SetVisible(FALSE);

///利用模板文件建立新文檔

strPath1.Format(\"%s\\11.xls\",strPath);///要操作的EXCEL文件名11.xls

wbsMybooks.AttachDispatch(ExcelApp.GetWork-books(),TRUE);

wbMyBook.AttachDispatch(wbsMybooks.Add(_variant_t(strPath1)));

wssMySheets.AttachDispatch(wbMyBook.GetWorksheets(),true);

wsMySheet.AttachDispatch(wssMySheets.GetItem(_variant_t(\"sheet1\")),true);

MyRange.AttachDispatch(wsMySheet.GetCel-ls(),true);

CString sMsg;

ExcelToString(row,1,sMsg);///讀取Row行Column列的數據到 sMsg中。

此時,sMsg中的數據即為指定行列中的數據,可由打標軟件使用,實現指定數據的讀取調用。

三、PC機與PLC之間的通訊實現

打標軟件讀取Excel文件中指定數據后,要實現打標機與PLC之間的聯動,就要實時進行相互通訊。在本系統中,PLC采用FX2N-232-DB通訊模塊與PC機的串口通過RS232C協議進行通訊。

PC機上的串口通訊采用調用Windows的API函數的方式通過四個步驟來實現通訊。

1.打開串口

用API函數CreateFile來打開串口COM1;

mCOM1=CreateFile (\"COM1,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);

if(hCom== INVALID_HANDLE_VALUE)

{AfxMessageBox(\"打開COM失?。"); return FALSE; }

2.配置串口

在打開通訊設備句柄后,需要通過一個DCB結構對串口進行一些初始化配置工作。DCB結構包含了諸如波特率、數據位數、奇偶校驗和停止位數等信息。同時還需設置I/O緩沖區的大小和超時。Windows用I/O緩沖區來暫存串口輸入和輸出的數據。主要實現函數如下:

SetupComm(hCom,1024,1024); //輸入輸出緩沖區大小都是1024

SetCommTimeouts(hCom,TimeOuts); //設置超時

SetCommState(hCom,dcb);//設置BCD結構

PurgeComm(hCom,PURGE_TXCLEAR|PURGE_RXCLEAR); //清空緩沖區,準備讀寫

3.讀寫串口

使用API函數ReadFile和WriteFile讀寫串口:

(1)串口讀函數主要實現如下所示。

char str[100];

DWORD wCount;//讀取的字節數

BOOL bReadStat;

bReadStat=ReadFile(hCom,str,100,wCount,NULL);

if(!bReadStat)

{AfxMessageBox(\"讀串口失敗!\");return FALSE;}

(2)串口寫函數的主要實現如下所示。

char lpBuffer[100];

DWORD dwBytesWrite=100;

COMSTAT ComStat;

DWORD dwErrorFlags;

BOOL bWriteStat;

ClearCommError(hCom,dwErrorFlags,ComStat);

bWriteStat=WriteFile(hCom,lpOutBuffer,dwBytesWrite, dwBytesWrite,NULL);

if(!bWriteStat)

{ AfxMessageBox(\"寫串口失??!\"); }

PurgeComm(hCom, PURGE_TXABORT|PURGE_RXABORT |PURGE_TXCLEAR|PURGE_RXCLEAR);

4.關閉串口

當整個程序退出使用時,要關閉打開的串口,串口關閉通過調用CloseHandle來實現:

if(mCOM1) CloseHandle(mCOM1); //如串口COM1打開,則關閉。

四、PLC串口的通訊命令及設置

FX2N系列PLC中,對于串口通訊的設定有專門的數據寄存器D8120—D8129,其中需要用戶設定的寄存器有:D8120用于設定通信形式,D8121用于設定局號,D8129用于設定超時時間。PLC對于通訊的數據格式也有嚴格的要求,PC向PLC進行數據的讀寫要嚴格按照其要求進行。

1.4個通信命令

FX系列PLC有4個通信命令,它們是讀命令(30H)、寫命令(31H)、強制通命令(37H)、強制斷命令(38H)。

2.5個通信控制字符

FX系列PLC采用面向字符的傳輸規程,常用的5個通信控制字符為:STX(02H)為數據塊的起始標志,ETX(03H)為數據塊的結束標志,ENQ(05H)為計算機的查詢信號,ACK(06H)為無校驗錯誤時的應答信號,NAK(15H)為有校驗錯誤時的應答信號。

3.地址初始值分配

PLC中各軟元件地址在讀寫狀態時地址初始值分配為:輸入繼電器X:0080H;輸出繼電器Y:00A0H;狀態寄存器S:0000H;輔助繼電器M:0100H;數據寄存器D:1000H。此地址就是PC機要通過串口進行數據讀取或寫入時的入口。

4.報文格式

PC機向PLC發送信息必須按照PLC所規定的格式發送,PLC才可以接收,PC機發送信息的報文格式為:STX+CMD+數據+ETX+SUMH+SUML,其中數據段的格式為:字節1~4表示軟繼電器首地址,字節5~6表示讀寫的字節數,后面接要收發的數據位,高位在前,低位在后。當寫命令時數據段中的數據位有數據,當讀命令時數據段的數據位則無數據;讀寫字節數最大為40H(64)個。

根據如上所述FX2N的命令格式,PC機要寫數據給PLC,則按通訊格式及寫命令格式調用串口寫函數,即可將數據放入指定PLC地址。

如要讀取PLC數據,則按通訊格式及讀命令調用串口寫命令,則會觸發PLC向PC發送數,實現PC機對PLC數據的讀取。

五、PLC對流水線的控制編程

PLC對流水線的控制有嚴格的順序要求,所以在編程方面采用步進順序控制指令STL來實現編程,由于篇幅所限,在此僅列出主要PLC控制程序的狀態流程圖,如圖1所示。

六、結論

以上介紹的控制系統,充分利用了PC機與PLC的串口通訊功能,實現了上位主控PC機打標軟件與下位PLC之間的數據傳遞,達到了對工件的智能化、自動化的控制要求。兩個系統的完善融合,在實際生產過程中,極大提高了生產效率,產生了極好的經濟效益。

(作者單位:廣東省機械技師學院)

主站蜘蛛池模板: 国产精品林美惠子在线播放| 夜夜拍夜夜爽| 91麻豆精品视频| 毛片免费视频| 国产超薄肉色丝袜网站| 国产激爽爽爽大片在线观看| 亚洲欧洲日韩久久狠狠爱| 狼友视频国产精品首页| 国产导航在线| 日韩精品免费一线在线观看| 女人18毛片水真多国产| 亚洲精品老司机| 久久香蕉国产线看观看精品蕉| www.youjizz.com久久| 波多野结衣AV无码久久一区| 日韩黄色大片免费看| 久久精品视频亚洲| 欧美.成人.综合在线| 国产爽歪歪免费视频在线观看 | 国产成人精品男人的天堂下载 | 又爽又大又光又色的午夜视频| 久久精品丝袜高跟鞋| 国产小视频在线高清播放| 最近最新中文字幕在线第一页| 国产波多野结衣中文在线播放 | 欧美成人综合在线| 亚洲中文制服丝袜欧美精品| 在线国产毛片| 一级爱做片免费观看久久| 久久特级毛片| 天天摸天天操免费播放小视频| 亚洲人成网7777777国产| 亚洲欧洲日产国产无码AV| 成人午夜在线播放| 亚洲天堂首页| 国产青青草视频| 欧美亚洲香蕉| 久久五月视频| 大香伊人久久| 91久久国产综合精品女同我| 午夜小视频在线| 国产香蕉在线视频| 国产亚洲精品在天天在线麻豆 | 91小视频版在线观看www| 亚洲国产成熟视频在线多多| 国产91视频观看| 亚洲成人动漫在线观看| 熟女视频91| 国产成人乱码一区二区三区在线| 亚洲AⅤ无码日韩AV无码网站| 久久国产精品夜色| 久久综合九九亚洲一区| 日韩高清欧美| 亚洲伦理一区二区| 久久99久久无码毛片一区二区| 欧美国产日本高清不卡| 国产在线精彩视频二区| 久久久久青草大香线综合精品 | 91精品最新国内在线播放| 国产黑人在线| 欧美成人精品高清在线下载| 色天天综合| 2020精品极品国产色在线观看| 日韩欧美国产中文| 久热这里只有精品6| 国产精品亚洲综合久久小说| 超碰91免费人妻| 91精品情国产情侣高潮对白蜜| 婷婷午夜天| 久久综合干| 国产精品亚洲片在线va| 国产综合另类小说色区色噜噜| 久久女人网| 国产毛片高清一级国语 | 欧美劲爆第一页| 国产综合另类小说色区色噜噜 | 成人年鲁鲁在线观看视频| 欧美福利在线播放| 亚洲天堂免费观看| 一本大道在线一本久道| 日韩精品无码免费专网站| 日韩无码视频播放|