2014年5月26日 星期一

電腦整合製造(Computer integrated manufacturing)簡稱CIM

CIM的架構

電腦整合製造(Computer integrated manufacturing)簡稱CIM,就是將生產所須的控制整合於電腦的系統中,電腦提供了設計、測試、製造、裝配、檢驗、物料控制、人事管理與市場資訊……等功能。


電腦連接各部門,提高了生產的效益,其明顯的效益如:
.工程設計成本減少
.交貨時間縮短
.產品品質提高
.生產力提升
.存貨減少
.人事成本減少
.工程師能力增加
.省略不必要的文書作業
=======================================
跟設備對應收集製程資料的稱為BC(廠務端)。

PLC就是需要跟BC來溝通。

BC廠務端,需要跟很多的設備(PLC)來連結,
所以會規定一個保持時間。

保持時間:
就是因為BC是以掃描的方法,
一台一台更新機況,所以從第一台到最後一台,需要最長的時間。

一般定義成4秒。
4秒,你只能回報給BC,每種類別各一筆的資料。

超過4秒,才能更新,或是上報下一筆資料。
===========================================
目前接觸過的CIM,又分為兩種信號。

一種,只有Word資料,
另一種,是有Bit & Word資料。

有用FL-NET,有用NET/H

有BIT的,可以觀察BIT的變化,就可以得知BC是否有命令。

如果只有Word的,就需要去記憶Word值是否有變化,來判斷是否BC是否有命令下給我們。
=======================================
BC跟設備之間都是透過網路的Word 或 Bit來溝通。

重點來了:
設備怎麼知道BC有連上線?現在抓的資料是否正確?
BC是否有開機?

所以有一個信號:
BC ALive ,EQ Alive 信號
設備端透過BC ALive 如果4秒有變化,就表示BC有在運轉。
設備端如果要連上BC前,也要EQ Alive4秒鐘變化一次,BC讀到就知道設備連上線了。


BC ALive                 <==BC發給設備(EQ)
EQ Alive                  <===設備(EQ)發給BC
=======================================
已經可以得知,
對方(BC、EQ)是否已經開機,
此時的資料,才是可以信任的。

當BC要給EQ(設備)資料時,會先給一個信號,再給資料。
當EQ(設備)要回傳資料給BC時,也要先發一個信號,再給資料。

因為是用網路(NET/H、FL-NET)的方式來傳遞,
考慮到網路更新&處理的方式,
所以我們在發送的順序會變成:
1.先搬資料(word)
2.加延遲(最少100ms)
3.再發送信號(bit)

因為BC或是設備端(EQ),都是看到信號(BIT)才會去抓資料,
所以我們先搬資料,並不會影響到BC。

PS:如果在抓取BC資料有錯時,也可以試著延遲再抓取資料(word)
==========================================
觸發信號,PLC寫法

像Alive 信號,

檢查BC端:
如果是Bit,只需檢查4秒鐘是否有ON/OFF變化即可。
如果只有Word信號呢,那就需要把上一值記錄,
再比較現在值,是否有變化,來決定是否有資料輸入。

EQ(設備)發送:
那我們發送出去的資料也是一樣。
如果是Bit,只需4秒鐘變化ON/OFF即可。
如果是Word,那我們每次發送後,要把值記錄起來,
等下一次要發送時,再直接+1送出即可。
===========================================
信號的種類區分:

1.狀態信號:
機台目前的狀態,警報....等等訊息。

2.產品的資料:
收(從上游)、送(給下游)、存(到buffer)、取(出buffer)都要上報資料。

3.製程資料:
產品在機台內的時製程條件,或是其他特別需要上報的資料。
===========================================
再前幾章也有提到,每4秒才能上報1次。

但機台的狀態,警報,有可能連續出現,等不到4秒才發。

所以就需要做buffer堆疊的方式,來上報資料。

Buffer的做法,可以FIFW、FIFR配合。

自已做Buffer也是一種方法。

PS:FIFW、FIFR需要特別注意使用方法,不然很容易就PLC當機。
============================================
PLC內部的資料,都是整數,沒有小數點的設計。
但很多錶頭,是需要小數點的。

這之間就需要先協調。
在規劃之初,就要先跟BC端定義。
定義:上下限,小數點位數,16/32位元,數字/字元,BCD/HEX。

所有機台同用的,
都是BC定義。

各別機台上報的資料,
都是屬於各別機台定義,再交給BC處理。
============================================
CIM是一個很好的掌控整廠生產的規劃,
但再好的工具也要有人去使用。

說實在目前不管是設備工程師、製程工程師,
會使用CIM的資料,來輔助機台、提升製程良率的人,是少之又少。

設備工程師
只著眼於設備的運轉率,不要停機、不要亂警報,他們就很高興了。

製程工程師
對整線的良率負責,大部份也只是用眼看、用猜,要求廠商提供解決方案。
(就像前幾篇的蒙古大夫)

CIM工程師
也只著眼於CIM系統是否正常,機台是否有照著原本規劃在上報資料。
實際機台是否有做原本規劃在運做?還是做假資料上報?
===============================================
前幾天才測完一次CIM的單機測試。

CIM除了前面提到,是沒有實體信號,所以比較難。

測完後,又有心得,
寫CIM的難點,就是測試的時間很短。

測試的時間分為以下幾段:
1.客戶端模擬測:
只用PLC測試信號,一切都是模擬。
主要是測試,寫CIM測試的人,對SPEC是否了解,還是有很大的誤解。

2.製造廠商端測試:
依製造進度,來增加可以實機測試的項目。

3.客戶端單機測試:
由於機台已經MOVE IN到客戶端,
所以這一次的測試,通常會要求,全部要實際上報資料。
主要項目:上下游交握連線&信號傳遞。
(上下游交握完成,全線流片,才可以做,所以這一次的重點是在上下游交握&信號)

4.客戶端全線連線測試:
全部要完成。

每次測試約兩天。
有BUG就是要現場修改。<<這就是另一個困難點。
==================================================
CIM 除了上報BC外,
還有跟上下游機台在交握,
上/下游機台也是一台設備,
也是一樣在寫CIM的程式,
所以有時候,傳遞的信號錯了,
不需要認定一定就是自已程式的問題,
也有可能是上游機台在傳遞時,
發生了問題。


我們寫CIM程式,會發生問題,
相對的,上下游機台,也是在寫CIM程式,
當然也會發生問題。
=========================================


沒有留言:

張貼留言