亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        自動化設(shè)備作業(yè)單掃描系統(tǒng)的原理與實(shí)現(xiàn)

        2019-07-12 08:28:40劉月紅
        電子技術(shù)與軟件工程 2019年9期
        關(guān)鍵詞:存儲器線程元件

        文/劉月紅

        為了實(shí)現(xiàn)作業(yè)單自動導(dǎo)入,筆者構(gòu)建了掃描系統(tǒng),系統(tǒng)由工控機(jī)、掃描槍、集線器和PLC(控制加工設(shè)備)組成,其中在工控機(jī)和掃描槍之間使用串行通信方式,工控機(jī)和PLC之間使用以太網(wǎng)連接方式。工控機(jī)(下面統(tǒng)稱主機(jī))中的軟件主要包括三個(gè)部分:主機(jī)讀取掃描槍串口數(shù)據(jù)程序、主機(jī)讀寫PLC的CPU模塊的軟元件存儲器程序、掃描系統(tǒng)狀態(tài)轉(zhuǎn)換程序。

        1 主機(jī)讀取掃描槍串口數(shù)據(jù)程序

        當(dāng)掃描槍掃描到作業(yè)單上二維碼得到其中包含的ASCII字符串后,掃描槍將數(shù)據(jù)經(jīng)USB口線傳送到主機(jī),主機(jī)安裝了USB轉(zhuǎn)換串口程序,從而主機(jī)可以使用串口讀取程序接收經(jīng)主機(jī)USB口的數(shù)據(jù)線上傳進(jìn)的數(shù)據(jù)。串口讀取程序使用SerialPort控件,在Mdi容器Form的定時(shí)器處理程序中不斷查詢、提示、連接掃描槍;并在SerialPort控件的數(shù)據(jù)接收事件處理器中讀取ASCII字符串,再根據(jù)事先制定的二維碼中數(shù)據(jù)格式解析掃描信息,得到各項(xiàng)加工參數(shù)(例如切割直徑、切割長度、切割類型、棒材形狀、棒材根數(shù)等信息),程序還將作業(yè)單參數(shù)放入用戶界面的加工作業(yè)表單中,使作業(yè)單直觀地呈現(xiàn);這樣就無差錯(cuò)、快捷地將作業(yè)單輸入到了主機(jī)。

        2 主機(jī)讀寫PLC的CPU模塊的軟元件存儲器程序

        2.1 讀寫軟元件存儲器分析

        當(dāng)主機(jī)使用串口讀取程序讀到一批待加工的作業(yè)單后,用戶需將其上傳寫入到加工設(shè)備的PLC的CPU模塊軟元件存儲器中;并且為了確認(rèn)上傳到PLC的CPU模塊軟元件存儲器中數(shù)據(jù)的正確性,需要隨即對剛上傳到PLC的CPU模塊軟元件存儲器中的數(shù)據(jù)進(jìn)行讀取并比對,以確認(rèn)上傳數(shù)據(jù)成功與否;除此之外,主機(jī)還需實(shí)時(shí)獲取與PLC的通信控制信號(如:“加工指令可接受”、“加工中”、“指令取消完成”、“外部指令取消完成”)和其它反饋信息(如:上傳到PLC的參數(shù)是否存在異常等),在主機(jī)端需將作業(yè)單“寫入完成”、“指令取消”等信號寫入PLC的CPU模塊軟元件存儲器中供PLC的程序查詢;所以主機(jī)中需要有PLC的CPU模塊軟元件讀寫程序。

        圖1

        2.2 通信方式及程序線程創(chuàng)建

        PLC的CPU模塊可以通過以太網(wǎng)接口模塊與主機(jī)進(jìn)行以太網(wǎng)連接,主機(jī)程序使用TCPClient提供的方法,在同步阻止模式下通過網(wǎng)絡(luò)來連接、發(fā)送和接收流數(shù)據(jù)。該部分程序,除了主線程,另外還創(chuàng)建了兩個(gè)子線程,一個(gè)是TCP連接子線程,另一個(gè)子線程則負(fù)責(zé)實(shí)時(shí)地讀取PLC數(shù)據(jù)。主線程在需要的時(shí)候?qū)LC執(zhí)行寫入。主機(jī)讀寫PLC數(shù)據(jù)利用SLMP(Seamless Message Protocol)的以太網(wǎng)通信用3Ε幀,通信數(shù)據(jù)使用二進(jìn)制代碼,與利用ASCII代碼的數(shù)據(jù)進(jìn)行的通信相比,利用二進(jìn)制代碼進(jìn)行的通信的通信數(shù)據(jù)量僅約為一半,因此能夠縮短通信時(shí)間。為了從主機(jī)側(cè)對PLC的CPU模塊軟元件存儲器進(jìn)行數(shù)據(jù)讀取/寫入請求,發(fā)送指令報(bào)文;PLC的CPU模塊根據(jù)在每個(gè)掃描周期結(jié)束的ΕND處理中主機(jī)請求的內(nèi)容,讀取/寫入數(shù)據(jù),將含有處理結(jié)果的響應(yīng)報(bào)文(響應(yīng))發(fā)送給提出請求的主機(jī)。采用半雙工通信,訪問PLC時(shí),在相對于前一個(gè)指令報(bào)文的發(fā)送,接收到來自PLC模塊側(cè)的響應(yīng)報(bào)文后,發(fā)送下一個(gè)指令報(bào)文(在完成響應(yīng)報(bào)文的接收前,不能發(fā)送下一個(gè)指令報(bào)文)。所以在軟件實(shí)現(xiàn)時(shí),為了避免主線程讀取PLC數(shù)據(jù)與子線程讀取PLC數(shù)據(jù)之間以及子線程PLC讀取和主線程PLC寫入之間的沖突,需對發(fā)送報(bào)文、接收響應(yīng)的函數(shù)實(shí)行線程阻止。

        2.3 通信等待時(shí)間計(jì)算

        在“發(fā)送指令”與“接收響應(yīng)”之間需要等待的時(shí)間,其應(yīng)大于SLMP進(jìn)行通信的最小處理時(shí)間(批量讀取、批量寫入的情況下)Tfs,Tfs的計(jì)算公式為:

        Tfs=Ke+ (Kdt*Df)+Scr*處理所需的掃描次數(shù)+主機(jī)的ACK處理時(shí)間

        Tfs:從接收主機(jī)的請求數(shù)據(jù)到PLC的CPU模塊完成處理的時(shí)間(單位:ms)

        Ke、 Kdt:常數(shù)(Ke=1,Kdt=0.001)

        Df:請求數(shù)據(jù)字?jǐn)?shù)+響應(yīng)數(shù)據(jù)字?jǐn)?shù)(應(yīng)用數(shù)據(jù)部)

        Scr:掃描時(shí)間

        PLC的CPU模塊掃描時(shí)間約40ms,指令處理所需的掃描次數(shù)為1,所以本系統(tǒng)選擇了此等待時(shí)間為50ms。

        2.4 多線程讀取后數(shù)據(jù)存儲技巧

        由于進(jìn)行對來自于外部設(shè)備的請求的處理,PLC的CPU模塊的掃描時(shí)間將會延長,因此應(yīng)加以注意。為了減少掃描時(shí)間的延長對控制的影響,應(yīng)以較少的點(diǎn)數(shù)分多次進(jìn)行訪問。在這種情況下,在接收完響應(yīng)解除線程阻止后,可以將讀到的數(shù)據(jù)塊直接放入用于放置所有讀到數(shù)據(jù)的全局二維數(shù)組中互不沖突的對應(yīng)的元素塊中。也可以將讀到的數(shù)據(jù)拷貝到局部數(shù)組變量(作為過渡)再將該數(shù)據(jù)放到用于放置所有讀到數(shù)據(jù)的全局二維數(shù)組中互不沖突的對應(yīng)的元素塊中;但需注意的是,不能使用相同的一維全局?jǐn)?shù)組變量作為過渡,否則會產(chǎn)生數(shù)據(jù)沖突而發(fā)生數(shù)據(jù)讀取錯(cuò)誤。

        3 掃描系統(tǒng)狀態(tài)轉(zhuǎn)換程序

        3.1 系統(tǒng)狀態(tài)劃分

        系統(tǒng)主機(jī)軟件含有三個(gè)狀態(tài):掃描、上傳和加工監(jiān)控;通過該部分程序在這三個(gè)狀態(tài)之間自動切換并循環(huán),從而實(shí)現(xiàn)自動化的生產(chǎn)監(jiān)控過程。狀態(tài)圖如圖1所示。

        3.2 系統(tǒng)狀態(tài)顯示

        系統(tǒng)初始狀態(tài)為“掃描”,系統(tǒng)通過用戶界面上的按鍵“掃描”、“上傳”以及讀取PLC發(fā)來的控制信號,在三個(gè)狀態(tài)之間自動切換。系統(tǒng)利用按鍵“掃描”、“上傳”背景顏色高亮或另一個(gè)標(biāo)簽“加工監(jiān)控”的背景顏色高亮呈現(xiàn)系統(tǒng)目前所處的狀態(tài),系統(tǒng)始終處于這三個(gè)狀態(tài)之一,所以任何時(shí)刻按鍵“掃描”、“上傳”和標(biāo)簽“加工監(jiān)控”只有一個(gè)是高亮的。

        3.3 系統(tǒng)狀態(tài)轉(zhuǎn)換的信號事件實(shí)現(xiàn)

        系統(tǒng)有時(shí)是通過PLC發(fā)來的信號事件來轉(zhuǎn)換狀態(tài)的。如前所述主機(jī)中的軟件創(chuàng)建了子線程用于實(shí)時(shí)讀取PLC的CPU的軟元件存儲器,而PLC的信號數(shù)據(jù)(通信控制信號)和切割參數(shù)數(shù)據(jù)一樣都存于PLC的CPU的軟元件存儲器中;在此基礎(chǔ)上,主機(jī)軟件創(chuàng)建定時(shí)器,在定時(shí)器事件處理程序中定時(shí)地檢測判斷子線程中實(shí)時(shí)讀到的PLC中信號數(shù)據(jù)(如:“加工指令可接受”、“加工中”、“指令取消完成”、“外部指令取消完成”等),這樣就可以實(shí)現(xiàn)狀態(tài)的及時(shí)轉(zhuǎn)換。

        3.4 系統(tǒng)狀態(tài)自動循環(huán)切換

        在掃描狀態(tài)下,主機(jī)軟件將掃描槍掃描到的作業(yè)單錄入,而在非掃描狀態(tài)下忽略掃描槍的輸入。當(dāng)系統(tǒng)處于上傳狀態(tài)時(shí)表明作業(yè)單參數(shù)已被正確設(shè)入PLC的CPU模塊的軟元件存儲器中,此時(shí)如果用戶還想繼續(xù)掃描或編輯作業(yè)參數(shù),可以按擊按鍵“掃描”回到掃描狀態(tài)。不管系統(tǒng)狀態(tài)處于掃描還是上傳狀態(tài),如果檢測到PLC的表示設(shè)備“加工中”的信號,系統(tǒng)的狀態(tài)都會自動轉(zhuǎn)入“加工監(jiān)控”狀態(tài),而后主機(jī)軟件顯示切割的進(jìn)度和完成情況。因?yàn)橹鳈C(jī)軟件從上傳狀態(tài)返回掃描狀態(tài)時(shí)對已上傳作業(yè)單表進(jìn)行了備份,所以如果在掃描狀態(tài)下PLC控制的設(shè)備開啟切割,主機(jī)軟件會直接轉(zhuǎn)入加工監(jiān)控狀態(tài),并將之前備份的已上傳作業(yè)單表恢復(fù)到當(dāng)前的作業(yè)單表中。

        3.5 狀態(tài)圖中兩種上傳失敗的區(qū)別

        設(shè)入錯(cuò)誤是指在試圖上傳參數(shù)到PLC時(shí),主機(jī)軟件將上傳參數(shù)與實(shí)時(shí)讀取的參數(shù)數(shù)據(jù)進(jìn)行比對發(fā)現(xiàn)讀寫不一致的情況,從而停留在掃描狀態(tài);而PLC發(fā)來作業(yè)單數(shù)據(jù)異常信號是指上傳參數(shù)已經(jīng)比對成功,但PLC程序發(fā)現(xiàn)所上傳的參數(shù)數(shù)據(jù)不在合理范圍之內(nèi)而在PLC的CPU模塊軟元件存儲器中設(shè)置異常標(biāo)志,系統(tǒng)主機(jī)軟件檢測到此異常后,會快速返回掃描狀態(tài),使用戶能夠編輯修改。

        4 結(jié)論

        該掃描系統(tǒng)主機(jī)軟件實(shí)現(xiàn)了作業(yè)單的自動錄入、自動上傳、加工監(jiān)控的主要功能,實(shí)現(xiàn)了掃描槍的掃描與加工設(shè)備的協(xié)同工作。

        猜你喜歡
        存儲器線程元件
        靜態(tài)隨機(jī)存儲器在軌自檢算法
        淺談linux多線程協(xié)作
        QFN元件的返工指南
        在新興產(chǎn)業(yè)看小元件如何發(fā)揮大作用
        寶馬i3高電壓元件介紹(上)
        存儲器——安格爾(墨西哥)▲
        Cu4簇合物“元件組裝”合成及其結(jié)構(gòu)與電催化作用
        基于Nand Flash的高速存儲器結(jié)構(gòu)設(shè)計(jì)
        Linux線程實(shí)現(xiàn)技術(shù)研究
        么移動中間件線程池并發(fā)機(jī)制優(yōu)化改進(jìn)
        亚洲国产精品久久久久婷婷软件| 校园春色日韩高清一区二区| 7194中文乱码一二三四芒果| 久久久久久久久蜜桃| 欧美粗大无套gay| 久久夜色精品国产亚洲噜噜| 白白在线免费观看视频| 日本免费视频| 国产福利一区二区三区在线观看| 国产亚洲精品A在线无码| 久久精品国产白丝爆白浆| 不卡的av网站在线观看| 热久久美女精品天天吊色| 亚洲综合一区无码精品| 亚洲人成在线播放a偷伦| 日韩亚洲在线一区二区| 一区二区三区四区国产99| 777午夜精品免费观看| 国产精品无码专区综合网| 亚洲另类国产精品中文字幕| 中文字幕亚洲无线码在线一区| 屁屁影院ccyy备用地址| 色婷婷七月| 国内精品久久久久国产盗摄| 蜜桃视频一区视频二区| 狠狠97人人婷婷五月| 亚洲中文字幕无码永久在线| 国产午夜精品福利久久| 在线亚洲精品国产成人二区| 日本免费一区二区三区影院| 中文字幕丰满乱子无码视频| 日韩在线不卡免费视频| 青青青草视频手机在线| 国产三级a三级三级| 国产肉体ⅹxxx137大胆| 又色又爽又黄的视频网站| 日本黑人亚洲一区二区| 777午夜精品免费观看| 北岛玲日韩精品一区二区三区| 日韩精品极视频在线观看免费| 久久久无码精品亚洲日韩蜜臀浪潮 |