,2 ,2 ,2
(東華大學信息科學與技術學院1,上海 201620;數字化紡織服裝技術教育部工程研究中心2,上海 201620)
碳纖維是一種以聚丙烯腈、瀝青、粘膠纖維等為原料,經預氧化、碳化、石墨化工藝而制得的含碳量大于90%的特種纖維。碳纖維具有高強度、高模量、低密度、耐高溫、耐摩擦、導電、導熱、膨脹系數小等優異性能,廣泛應用于軍事和民用領域[1]。
我國研制碳纖維已有40余年的歷史,但生產的碳纖維質量較發達國家而言,仍處于較低水平,關鍵問題是碳纖維原絲質量未過關。影響碳纖維原絲質量的工藝指標很多:①紡絲原液的濃度、溫度;②凝固浴液的濃度、溫度;③拉伸浴液的濃度、溫度;④熱定型溫度等。對這些工藝指標的監測和控制是制備高質量碳纖維原絲的關鍵[2-3]。
復雜工業過程工藝多、流程長,系統地域跨度性較大,傳統的現場總線及固定站點監測不能滿足工業的需求。隨著智能手機和無線通信技術的快速發展和普及,智能手機應用到工業監測中的條件已經成熟。而Android系統是基于Linux的開源操作系統平臺,其憑借開放性技術,大大降低了產品的開發成本,有助于在激烈的市場競爭中獲得用戶青睞[9]。
為了實現在移動終端上的遠程監測,本文設計并開發出一套基于Android平臺的碳纖維工業移動監測系統。該系統實現了監控人員對現場的實時監測,降低了監測人員的工作強度和監測成本,提高了監測水平。
碳纖維工業移動監測系統由工業現場傳感器、RS-232/485串口監視器、RS-232/485藍牙轉換器、藍牙模塊和Android手機構成。系統結構框圖如圖1所示。

圖1 系統結構框圖
① 工業現場傳感器是指碳纖維加工工藝流程中的濃度、溫度等傳感器。數據采集部分集成在C51系列單片機上,構成數據采集系統,實現對工業現場傳感器數據的轉換。
② 藍牙模塊選用主-從一體式藍牙串口模塊,配置為從設備被動連接Android手機。
③ Android手機上安裝碳纖維工業移動監測系統軟件,通過連接工業現場的藍牙模塊與現場進行數據交互;顯示實時采集到的傳感器數據;對實時數據進行判斷,越過數據安全范圍時實現報警提示;將采集到的數據存入數據庫。
系統主要實現基于Android平臺下的碳纖維工業移動監測功能,使現場監控人員可以用Android手機實時監測工藝指標的實時值及變化情況。系統基本功能框圖如圖2所示。

圖2 碳纖維工業監測系統功能框圖
在系統功能框圖中,軟件系統部分主要包括藍牙通信模塊、實時報警模塊、數據監測模塊、數據庫模塊和遠程交互模塊。
藍牙通信實際上是一種短距離無線數據與語音通信技術。在Android平臺上進行藍牙通信開發需要用到的類及相應的方法均位于android.bluetooth包中。
對于該碳纖維工業監測系統,Android端作為客戶端主動連接工業現場傳感器端的藍牙模塊并建立通信連接進行數據傳輸。具體步驟如下。
① 建立一個BluetoothAdapter對象,用于描述本地的藍牙適配器設備(如本地藍牙MAC地址、名稱、當前狀態等)。建立兩個BroadcastReceiver對象,一個用于完成藍牙設備搜索的接收器,一個用于發現藍牙后進行消息接收的接收器。
② 使用步驟①中實例化后的BluetoothAdapter對象中的startDiscovery()方法開始執行搜索,并用實例化后的BroadcastReceiver對象中的onReceive()方法獲取搜索到的藍牙設備信息。
③ 建立一個BluetoothDevice對象,用于描述步驟③搜索到的一個遠程藍牙設備,并用其創建一個帶有各自設備的連接。
④ 使用步驟③中BluetoothDevice創建的連接建立一個BluetoothSocket對象;使用BluetoothSocket對象中的connect()方法建立連接。
⑤ 連接建立之后,使用BluetoothSocket對象中的getInputStream()和getOutputStream()方法進行通信。
通過上述步驟,Android手機端可與工業現場傳感器端的藍牙模塊建立通信并進行數據傳輸。
在碳纖維工業生產中,由于傳感器損壞等因素導致的工業參數異常,可以由碳纖維工業移動監測系統對實時采集到的數據進行數值取值范圍的判斷,從而進行捕捉,再通過Android手機發出報警,提示現場監控人員。主要代碼如下。
public void alarm(String sensor){
int temp = TransferData.getnowx();
boolislarm = checkdata(temp);
if(islarm == true)
{
Looper.prepare();
New AlertDialog.Builder().setTitle("警告:").setMessage(sensor +"對應的傳感器工位出現數據異常!請速去現場檢查!").setPositiveButton("確定",null).show();
soundPol.play(soundMap.get(1),1,1,0,0,1);
Looper.loop();
}
}
以上代碼中,參數sensor為出現異常對應的藍牙模塊名稱,參數temp為實際溫度值或濃度值等。
對于大部分傳感器來說,一般采用數字方式顯示數據。而對于碳纖維凝固浴液溫度的傳感器,監控人員既需要了解工藝參數的具體數值,又需要觀察工藝參數的數據走勢,實現類似示波器的功能。因此,該碳纖維工業移動監測系統的數據顯示模塊分為數字顯示和波形顯示兩部分。
2.3.1 數字顯示
數字顯示的實現相對簡單,其主要通過一個Textview組件來顯示數據。通過setText()方法添加藍牙模塊接收到的數據,實時刷新Textview組件便可觀察工藝參數的實時數值。
2.3.2 波形顯示
波形顯示部分的實現分為兩步。第一步是在得到實時數據后,通過坐標變換將量程和實時數據進行相應的比例變換,以適應于Android系統的坐標系。實現代碼如下。
publicint transfer(int temp){
return(temp/range)*(height/2);
}
其中,參數temp為實際溫度值(或濃度),range為量程,height為繪圖部分的高度。
第二步是繪制波形。Android提供了兩個用于繪圖的類:View和SurfaceView。SurfaceView擁有雙緩沖機制,且避免了View在程序需要更新圖像時必須重繪整張圖像所帶來的效率低下問題。相比SurfaceView,View能夠更好地實現波形顯示的功能。程序每次繪制時只需要繪制(更新)當前點的波形,前面已經繪制的波形無須更新。核心代碼如下。
public void run(){
paint = new Paint();
int cx = TransferData.getnowx();
int cy = TransferData.getnowy();
Canvascanvas =holder.lockCanvas(
newRect(cx,cy-2,cx+2,cy+2));
canvas.drawpoint(cx,cy,paint);
cx++;
holder.unlockCanvasAndPost(canvas);}
從上面的程序可以看出,當程序每次繪制實時的數據點時,程序無須重繪整個畫面,Holder只要鎖定當前繪圖的小范圍即可。系統更新圖像時也只需要更新這個范圍即可,具有很好的畫面性能。
在碳纖維工業實際監測過程中,應用程序中的數據量較大,且需要進行大量插入、更新、查詢等操作,如果使用文件流的方式來保存數據,就會顯得效率低下。這里選用輕量級的關系型數據庫SQLite。
通過SQLiteDatabase.openOrCreateDatabase()方法打開或創建一個SQLite數據庫;通過一個定時器Timer每隔一段時間插入一個表。主要代碼如下。
public void createDatabase(){
SQLiteDatabase.openOrCreateDatabase("pancf_temp.db3",null);
}
public void createTable(){
sql = "create table datatable(data_id integer primary key,"
+ "tempvarchar(255), "
+ "con varchar(255)) "
Db.execSQL(sql);
}
相比遠程監控中心監控人員,工業現場監控人員能夠更好地了解和分析現場情況,并可以根據經驗做出相應的判斷和決策,如碳纖維工業PID參數設定、控制電機的啟停等。碳纖維工業移動監測系統通過交互模塊模擬現場控制,將模擬控制信息通過短信發至遠程監控終端,并由遠程監控終端短信反饋信息。部分代碼如下。
Public voidsendmessage(){
String num = RemoteControl.num;
String content =ControlPanel.getinform();
PendingIntent pi =PendingIntent.getActivity
(SendSms.this,0,new Intent(),0);
SmsManagersm = new SmsManager();
Sm.sendTextMessage(number,null, content,
pi,null);
Toast.makeText(SendSms.this, "短信已發送
成功",8000).show();
}
以上代碼中,參數num為遠程監控終端的短信中心號碼,參數content為通過getinform()方法獲取的模擬控制信息。
本文主要描述了3個模塊的測試效果,分別為數據報警模塊、數據監測模塊和遠程交互模塊。在實際界面中,右上角的綠色R和紅色T標記分別為藍牙通信的接收和發送的數據包大小,用于計算通信流量;左下角為模式切換按鈕,用于切換到其他模式;右下角為斷開連接按鈕,用于斷開藍牙連接。
數據監測模塊可以實現數字顯示刷新凝固浴溫度等變量。刷新時間由該藍牙模塊所在工位的凝固浴溫度等傳感器采集頻率決定。而數據監測模塊中波形顯示凝固浴溫度界面的波形是由數個坐標點構成,每一個坐標點都是一次實時采集的凝固浴溫度。在數據報警模塊中,當某一時刻采集的實時數據越界時,報警對話框彈出并進行報警,實際使用中Android手機會有報警語音提示。在遠程交互模塊中的現場控制模擬界面,點擊發送即可通過短信發至遠程監控終端,提交所選信息。
本文以碳纖維工業生產為背景,基于Android平臺設計并開發了碳纖維工業移動監測系統。系統實現了遠程實時監測的一系列功能,降低了監測人員的工作強度和監測復雜度,提高了監測水平。目前,Android等一系列移動終端在碳纖維工業上的應用很少,而利用移動終端便攜的優勢對碳纖維工業生產監測是其在工業領域應用的一大需求。若將本地存儲方式改為云存儲,移動終端加入4G網絡,并對軟件系統作進一步的優化與升級,那么工業監測領域將踏入云時代。
[1] 賀福.碳纖維及其應用技術[M].北京:化學工業出版社,2004.
[2] 陳佳佳,丁永生,郝礦榮,等.碳纖維拉伸工藝優化的多目標動態規劃方法[J].材料導報,2011,25(6).
[3] Canton G,Kulinsky L,Madou M J.Electro-mechanical spinning:a new manufacturing technique for micro/ nano-fabrication of carbon fibers[C]∥Advanced Packaging Materials(APM),2013 IEEE International Symposium,2013:230-239.
[4] 周強,丁永生,郝礦榮,等.碳纖維原絲紡絲過程的在線監控協同式專家系統[J].石油化工自動化,2012,48(1).
[5] 陸寧云,王福利,高福榮,等.間歇過程的統計建模與在線監測[J].自動化學報,2006,32(3).
[6] 宋欣,王翠榮.基于線性回歸的無線傳感器分布式數據采集優化策略[J].計算機學報,2012,35(3).
[7] 葛志強,劉毅,宋執環,等.一種基于局部模型的非線性多工況過程監測方法[J].自動化學報,2008,34(7).
[8] 許強,趙宏,江早.一種新穎的智能網絡圖像內容監測系統模型[J].軟件學報,2002,13(3).
[9] 吳晶.Android手機端遠程監控系統的設計與實現[D].上海:上海交通大學,2012.
[10]Moon S W,Kim Y J,Myeong H J,et al.Implementation of smartphone environment remote control and monitoring system for Android operating system-based robot platform[C]//8th International Conference on Ubiquitous Robots and Ambient Intelligence(URAI),Incheon,2011:211-214.