戴杉虎
機械制造工業的信息化、自動化應運而生,使得單片機技術在我國得到了廣泛應用。把單片機技術融入到內衣機械行業的產品制造中,不僅能降低機械產品生產的成本,而且能實現產品的自動化,提高產品的市場占有率。
文胸模杯指的是夾層文胸中維持罩杯形態的部分,或者指整個模杯文胸。文胸模杯的一般加工過程主要由來料檢驗、貼布、裁剪、定型、修邊和產品檢驗等幾部分組成,其中定型是模杯生產過程中最重要的環節[1-2]。內衣模杯企業一般是用定型機來定型,使用繼電器控制線路設計的定型機系統存在維護麻煩、電路復雜、功能少等缺點。為了解決以上問題,本文使用單片機、液晶顯示器及相應的外圍電路設計了一種罩杯定型機系統,鋁模加熱和控溫由其他的電路單獨控制。該定型機能實現文胸模杯的定型功能,其執行機構主要是氣動控制,控制裝置是按照定型工藝要求輸出控制信號,使電磁閥和繼電器動作,從而驅動相應的執行機構動作。
根據產品定型的實際情況,對該系統的控制要求如下。
(1)控制系統能按照定型工藝的流程運行。
(2)液晶顯示器能顯示當前的工作狀態(運行、停止或手動)、計數值、輸入密碼、管理員密碼、中停時間和定型時間的設定值、當前值。液晶顯示器需要有相應的中文顯示。
(3)中停和定型時間的設定值在000~999秒范圍內可調,設定完成后保存。計數值最高可以顯示9999,并能對計數值進行清零操作。
(4)為了避免工作人員在工作的過程中,隨意更改設定的時間,需要設定管理員密碼,4位密碼值可以在0000~9999范圍內設置。只有當輸入密碼值等于管理員密碼值或者等于萬能密碼的時候,管理員密碼值才能顯示,且才可以修改中停和定型的設定時間。
系統主要由單片機模塊,液晶顯示模塊,按鍵輸入模塊,輸出接口電路模塊和輸入接口電路模塊等幾大模塊組成,系統方框圖如圖1所示。
系統的工作原理:通過按鍵設定管理員密碼、中停和定型時間的設定值,設定完成后保存。按下啟動按鈕,系統以定型工藝的要求運行,在運行的過程中按下停止按鈕或一個工作流程結束,系統恢復到初始狀態。液晶顯示器在系統運行的過程中,實時顯示當前的工作狀態、計數值、當前的中停時間和定型時間等功能。

圖1 系統方框圖
根據系統的控制要求,用最常用又滿足需求的STC89C52RC單片機作為控制器的核心。STC89C52RC是宏晶公司生產的一種低功耗、高性能CMOS 8位微控制器,具有8 k在系統可編程Flash存儲器,性價比高。
LCD12864是一種圖形點陣液晶顯示器,它主要由行驅動器/列驅動器及128×64全點陣液晶顯示器組成,可完成圖形顯示,也可以顯示8×4個(16×16點陣)漢字和16×4個(16×8點陣)ASCII字符集。
LCD12864與STC89C52RC接口電路如圖2所示[3],采用直接訪問方式,單片機P0口直接與液晶顯示器的數據口相連。P2.2和P2.3分別控制左右半屏選擇,P2.4控制復位信號,P2.5控制讀/寫使能E信號,P2.6用于控制R/W的讀寫選擇,P2.7控制RS寄存器選擇。VO是控制液晶顯示器的亮度調節輸入端,調節該端的輸入電壓,可改變顯示屏字符、圖形的顏色深淺。
為了避免干擾,電路使用光電耦合器TLP521-1等器件起電路隔離的作用。啟動按鈕、停止按鈕、手自動開關和磁性開關通過輸入接口電路接到單片機的輸入端,圖3是其中一路的輸入接口電路。電磁閥和繼電器的額定電壓是直流24V,單片機的輸出電壓只有5V,故無法直接驅動電磁閥和繼電器。輸出接口電路主要以大功率MOSFET管IRF9530和TLP521-1等器件作為驅動電路來控制電磁閥和繼電器的接通或斷開,圖4是其中一路的輸出接口電路。

圖2 LCD12864與STC89C52RC接口電路

圖3 輸入接口電路

圖4 輸出接口電路
按鍵電路由3個按鍵組成,分別是設置鍵,移位鍵和上升鍵。按鍵電路采用查詢的方式來完成信號的采集,按鍵電路的去抖動由軟件延時的方法完成。按鍵電路圖如圖5所示。

圖5 按鍵電路圖
程序主要由初始化子程序、顯示子程序、數據設定子程序、輸出控制子程序和復位看門狗程序組成,主程序流程圖如圖6所示。初始化子程序主要是對液晶顯示器進行初始化,讀取保存的數據,看門狗設置等操作。顯示子程序主要實現文字和數據在液晶顯示器顯示,并對選中的數據進行反白顯示。數據設定子程序主要實現時間和密碼的數值設定。輸出控制子程序主要實現定型工藝的流程控制。

圖6 主程序流程圖

圖7 液晶顯示器畫面
因液晶顯示器顯示的文字和數字數量有限,所以本次設計分成三個畫面來顯示,液晶顯示器畫面如圖7所示。系統通電后,液晶顯示器以1 s為周期閃爍顯示首頁畫面,8 s后直接進入時間數據顯示畫面,首頁畫面不再顯示。未按下設置鍵時,按下上升鍵可以在密碼顯示畫面和時間數據顯示畫面進行切換顯示;在密碼顯示畫面,未按下設置鍵時,按下移位鍵可以對計數值進行清零。在系統正常工作的時候,液晶顯示器能實時的顯示各種參數值。
以下程序是判斷輸入密碼值等于管理員密碼值,或等于萬能密碼的程序。其中t11[4]存放4位輸入密碼值,t12[4]存放4位管理員密碼值。
SRmima=t11[3]*1000+t11[2]*100+t11[1]*10+t11[0];
GLYmima=t12[3]*1000+t12[2]*100+t12[1]*10+t12[0];
if(GLYmima==SRmima)
ppp=0;
else ppp=1;
if((6==t11[3])&&(8==t11[2])&&(6==t11[1])&&(8==t11[0]))
ppp1=0;
elseppp1=1;
在密碼顯示頁,若輸入密碼值不等于管理員密碼值,或是等于萬能密碼,管理員密碼值不能修改且也不顯示。若相等,按下設置鍵選中管理員密碼值,set_left等于0,整個密碼值反白顯示。每按一次左移鍵,set_left進行+1運算,每次選中管理員密碼值中的一位,按個位、十位、百位和千位的順序循環反白顯示,此時可以通過上升鍵對反白顯示位的密碼值在0至9之間進行修改。部分程序如下所示。
if((ppp==0)||(ppp1==0))
{set_left++;
if(set_left==5){set_left=1;}
}
gotoxy(0,4); //液晶顯示屏第三行。
display_GLCD_string_16x16(GLYmima, 6, 0); //顯示中文“管理員密碼:”
if((ppp==0)||(ppp1==0))
{
if(2==set_number) //選中管理員密碼值
{if(1==set_left)
{display_GLCD_number_8x16(t12,4,1);}//選中個位并反白顯示
elseif(2==set_left)
{display_GLCD_number_8x16(t12,4,2);}//選中十位并反白顯示

圖8 輸出控制子程序流程圖
else if(3==set_left)
{display_GLCD_number_8x16(t12,4,3);}//選中百位并反白顯示
elseif(4==set_left)
{display_GLCD_number_8x16(t12, 4, 4);
}//選中千位并反白顯示
else display_GLCD_number_8x16(t12, 4,255);//選中4位密碼值進行反白顯示
}
else display_GLCD_number_8x16(t12,4,0);//正常顯示管理員密碼值
}
else
{clear_GLCD_string_8x16(4);} //不顯示管理員密碼值
輸出控制子程序主要由兩部分的程序組成,一部分由磁性開關和時間控制系統的下一步動作,另一部分輸出控制電磁閥和繼電器的接通或斷開,從而控制定型機的執行機構動作。輸出控制子程序流程圖如圖8所示。中停限位由磁性開關檢測;tm10、tm0分別存放中停時間的設定值和當前值;tm11、tm1分別存放定型時間的設定值和當前值。
實踐證明,本系統能滿足該定型機的控制要求,運行穩定可靠,抗干擾能力強,性價比高。為企業節省了成本,提高了產品的競爭力,產生了很大的經濟效益。根據不同功能的同類型定型機,只需修改一下輸入輸出點的連接和程序,就可以實現所需要的控制功能。