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

基于PLC實現(xiàn)激光打標(biāo)時流水線的全自動控制

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

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

關(guān)鍵詞:激光打標(biāo) 動態(tài)庫 Excel 串口通訊 PLC

一、概述

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

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

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

二、上位PC機(jī)中打標(biāo)軟件對不同打標(biāo)數(shù)據(jù)的讀取

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

A和B值由客戶自己填寫,相對應(yīng)的打標(biāo)文件內(nèi)容由客戶自己定義。當(dāng)客戶要做1號產(chǎn)品時,點擊1號后,相對應(yīng)的A、B以及文件內(nèi)容都傳送給PLC和打標(biāo)機(jī),完成1號的產(chǎn)品。當(dāng)客戶要做3號產(chǎn)品時,點擊3號后,相對應(yīng)的A、B以及文件內(nèi)容都傳送給PLC和打標(biāo)機(jī),完成3號的產(chǎn)品。

為了實現(xiàn)這樣的要求,這個數(shù)據(jù)關(guān)系采用Excel格式來存放,并編寫一個動態(tài)鏈接庫,以插件的形式嵌入到打標(biāo)軟件中,實現(xiàn)對Excel文件的讀取。

動態(tài)庫采用VC6.0作為開發(fā)工具,Excel文件的讀取過程如下:

①利用VC6.0中類向?qū)е械淖詣踊ぞ撸ˋutomation)加載一個新類,指向Microsoft Office的安裝目錄中的excel.exe,然后從列表中選取_Application、_Workbook、_WorkSheet、Range、Workbooks、Worksheets 共6項。

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

ApplicationExcelApp; Workbooks wbsMybooks; _workbookwbMyBook;

Worksheets wssMySheets; Worksheet wsMySheet; Range MyRange

③實現(xiàn)對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列的數(shù)據(jù)到 sMsg中。

此時,sMsg中的數(shù)據(jù)即為指定行列中的數(shù)據(jù),可由打標(biāo)軟件使用,實現(xiàn)指定數(shù)據(jù)的讀取調(diào)用。

三、PC機(jī)與PLC之間的通訊實現(xiàn)

打標(biāo)軟件讀取Excel文件中指定數(shù)據(jù)后,要實現(xiàn)打標(biāo)機(jī)與PLC之間的聯(lián)動,就要實時進(jìn)行相互通訊。在本系統(tǒng)中,PLC采用FX2N-232-DB通訊模塊與PC機(jī)的串口通過RS232C協(xié)議進(jìn)行通訊。

PC機(jī)上的串口通訊采用調(diào)用Windows的API函數(shù)的方式通過四個步驟來實現(xiàn)通訊。

1.打開串口

用API函數(shù)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.配置串口

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

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

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

SetCommState(hCom,dcb);//設(shè)置BCD結(jié)構(gòu)

PurgeComm(hCom,PURGE_TXCLEAR|PURGE_RXCLEAR); //清空緩沖區(qū),準(zhǔn)備讀寫

3.讀寫串口

使用API函數(shù)ReadFile和WriteFile讀寫串口:

(1)串口讀函數(shù)主要實現(xiàn)如下所示。

char str[100];

DWORD wCount;//讀取的字節(jié)數(shù)

BOOL bReadStat;

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

if(!bReadStat)

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

(2)串口寫函數(shù)的主要實現(xiàn)如下所示。

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.關(guān)閉串口

當(dāng)整個程序退出使用時,要關(guān)閉打開的串口,串口關(guān)閉通過調(diào)用CloseHandle來實現(xiàn):

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

四、PLC串口的通訊命令及設(shè)置

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

1.4個通信命令

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

2.5個通信控制字符

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

3.地址初始值分配

PLC中各軟元件地址在讀寫狀態(tài)時地址初始值分配為:輸入繼電器X:0080H;輸出繼電器Y:00A0H;狀態(tài)寄存器S:0000H;輔助繼電器M:0100H;數(shù)據(jù)寄存器D:1000H。此地址就是PC機(jī)要通過串口進(jìn)行數(shù)據(jù)讀取或?qū)懭霑r的入口。

4.報文格式

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

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

如要讀取PLC數(shù)據(jù),則按通訊格式及讀命令調(diào)用串口寫命令,則會觸發(fā)PLC向PC發(fā)送數(shù),實現(xiàn)PC機(jī)對PLC數(shù)據(jù)的讀取。

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

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

六、結(jié)論

以上介紹的控制系統(tǒng),充分利用了PC機(jī)與PLC的串口通訊功能,實現(xiàn)了上位主控PC機(jī)打標(biāo)軟件與下位PLC之間的數(shù)據(jù)傳遞,達(dá)到了對工件的智能化、自動化的控制要求。兩個系統(tǒng)的完善融合,在實際生產(chǎn)過程中,極大提高了生產(chǎn)效率,產(chǎn)生了極好的經(jīng)濟(jì)效益。

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

主站蜘蛛池模板: 欧美翘臀一区二区三区| 国产AV毛片| 国产成人亚洲综合A∨在线播放| 免费一级毛片不卡在线播放 | 69av在线| 国产成人亚洲日韩欧美电影| 国产av一码二码三码无码| 黄色国产在线| 亚洲欧美一区二区三区麻豆| 十八禁美女裸体网站| 欧美久久网| 国产精品天干天干在线观看| 亚洲国产精品久久久久秋霞影院| 国产波多野结衣中文在线播放| 国产男人的天堂| 亚洲手机在线| 国产农村1级毛片| 九月婷婷亚洲综合在线| 国内毛片视频| 狠狠久久综合伊人不卡| 亚洲国产精品一区二区高清无码久久| 毛片大全免费观看| 毛片一级在线| 在线无码九区| 亚洲人成人无码www| 国产精品手机视频一区二区| 天天综合网亚洲网站| 99在线视频精品| 2020极品精品国产| 中文字幕不卡免费高清视频| 国产美女一级毛片| 亚洲国产综合自在线另类| 国产真实二区一区在线亚洲| 久夜色精品国产噜噜| 久久黄色一级视频| 亚洲视频欧美不卡| 无码免费试看| 日韩精品中文字幕一区三区| 亚洲精品卡2卡3卡4卡5卡区| 亚洲国产成人超福利久久精品| 激情网址在线观看| 免费无码AV片在线观看国产| 国产精欧美一区二区三区| 九九九精品视频| 成人无码一区二区三区视频在线观看 | 伊人国产无码高清视频| 香蕉99国内自产自拍视频| 99在线小视频| 国产精品无码作爱| 美女黄网十八禁免费看| 久热99这里只有精品视频6| 国产欧美日韩视频一区二区三区| 欧美亚洲香蕉| 青青极品在线| 国产成人精品一区二区| 国产青青草视频| 狠狠色综合网| 一本色道久久88| 国产精品专区第一页在线观看| 欧美精品一区二区三区中文字幕| 日韩精品无码免费一区二区三区| 呦视频在线一区二区三区| 国产麻豆精品久久一二三| 91精品情国产情侣高潮对白蜜| 黄色片中文字幕| 中国毛片网| 国产网站在线看| 久久亚洲高清国产| 在线免费无码视频| 亚洲国产欧美自拍| 天堂网亚洲系列亚洲系列| 色综合热无码热国产| 99在线小视频| 国产欧美视频综合二区| 成人一级黄色毛片| 国产欧美视频综合二区| 精品一区二区三区水蜜桃| 亚洲视频黄| 伊人激情综合| 国产好痛疼轻点好爽的视频| 国产区精品高清在线观看| 国产高清在线精品一区二区三区 |