韋興平,車 暢,宋春華
(西華大學機械工程與自動化學院,四川 成都 610039)
數顯轉矩扳手是各種加工組裝和設備維修中必不可少的工具。它以一定的轉矩擰緊各種螺栓螺釘,以保證機械設備的可靠聯接和正常使用[1-4]。數顯轉矩扳手通常具有預置報警、峰值保持和示值跟蹤3種工作模式。其中預置報警模式使用最為頻繁,即預先設定需要的緊固轉矩,在擰緊過程中,當緊固轉矩達到預定的轉矩值時,發出聲光報警,提示停止加力。在實際使用中,由于操作人員反應的滯后,緊固轉矩往往超過預定的轉矩值。為更加準確地控制緊固轉矩,需要把每次工作時超出預設值的最大轉矩值上傳到上位機進行統計分析,便于適當下調預設的轉矩值。作為一種便攜設備,數顯轉矩扳手的通信接口要求體積小、功耗低,因此,本文設計了一種基于CH341T芯片的USB通信接口,以實現數顯轉矩扳手與上位機的數據傳輸。文中介紹了數顯轉矩扳手測量系統的結構與工作原理,給出了通信接口的硬件電路和下位機及上位機的軟件的設計思路與實現方法。實驗結果表明,該通信接口電路硬件結構簡單、體積小、功耗低,尤其適合于便攜式設備,具有良好的應用前景。
系統結構如圖1所示,數顯轉矩扳手測量系統首先通過傳感器電橋把轉矩的變化轉化為電信號的變化,用信號調理電路對微弱的電信號進行放大、濾波,經A/D轉換后送到單片機進行處理,算出對應的轉矩值,并通過LCD顯示出來。當轉矩超過預定值時蜂鳴器和LED發出聲光報警。

圖1 系統結構圖
當數顯轉矩扳手工作在預置報警模式時,把每次工作中超出預設值的最大轉矩值存放在單片機的Flash存儲器中。當存儲器存滿后發出提示信息,然后通過USB接口把數據上傳到上位機,便于后續的分析處理。
下位機的硬件系統主要由轉矩測量模塊和通信模塊組成。轉矩測量模塊把轉矩值轉化為電信號,經過信號放大、濾波、A/D轉換后送到STC12LE5410AD單片機進行處理,得出對應的轉矩值。USB通信模塊的接口芯片采用CH341T實現USB口轉串口的功能,將超出預設值的最大轉矩值上傳到上位機,實現下位機與上位機的數據傳輸。
2.1.1 轉矩測量模塊
轉矩測量模塊主要電路如圖2所示。在設計中,傳感器電橋每個橋臂上的基本電阻值為1 kΩ,采用全橋方式連接,放大器選用美國BB公司生產的INA122精密儀表放大器。該放大器具有非常低的靜態電流和很寬的電壓范圍,在單電源供電時,電壓范圍為2.2~36 V,外圍電路簡單,只需加上1個電阻,可設定5~10 000倍的任意增益值。模/數轉換選用12位的AD轉換器ADS7822,其電源輸入電壓范圍為2.7~3.6 V,8腳MSOP封裝,采用串口方式與CPU相連。單片機選用STC12LE5410AD,工作電壓范圍為2.2~3.3 V,內部集成8路高速10位A/D轉換器,自帶10k的Flash存儲器。為此,電路中的元件只需3 V電壓即可正常工作。

圖2 扭矩測量電路圖
2.1.2 通信模塊
USB通信模塊的接口芯片選用的是CH341T[5-6]。CH341T是南京沁恒電子有限公司推出的USB轉串口轉接芯片,它能提供串口發送使能、串口接收就緒等交互式的速率控制信號及常用的MODEM聯絡信號,可為計算機擴展異步串口或者將普通的串口設備直接升級到USB總線,兼容USB V2.0,外圍電路簡單,只需晶振和電容,支持5 V電源電壓和3.3 V電源電壓,采用SSOP-20的無鉛封裝。
數顯轉矩扳手與PC機之間的USB接口電路如圖3所示,J1表示上位機的USB端口,CH341T的VD+引腳、VD-引腳分別與USB總線的數據線VD+、VD-直接相連。MCU_RXD和MCU_TXD分別表示數顯轉矩扳手中單片機的RXD、TXD引腳,分別與CH341T的TXD引腳和RXD引腳相連。TEN#為串口發送使能引腳,低電平有效,當其為高電平時,CH341T將暫停從串口發送數據,在設計中直接連到地。CH341T的電源引腳與數顯轉矩扳手電源端連在一起,均為3 V。

圖3 單片機與上位機的通信電路圖
CH341T通信操作采用虛擬串口方式,通過USB總線可以提供異步串口。在Windows操作系統下,可以利用CH341T的驅動程序來直接仿真標準串口。該仿真串口與大部分串口應用程序完全兼容,通常在使用時,不需要修改任何程序,便可利用RS232通信協議對USB總線進行操作[7]。在設計中,采用單片機定時器/計數器T1來產生下位機波特率。將T1設置為定時器,工作方式2,即把定時器T1設置為2個8位的自動重裝方式。波特率設置為9 600,單片機的晶振頻率為11.0592 M,則T1定時器對應的初值為十六進制數0xFD。對單片機定時器和串口初始化主要程序如下:
void Serial_Initialization(void)
{
TMOD=0x20; //T1定時器工作方式2
TH1=0xFD; //波特率為9600;
TL1=0xFD;
SCON=0x50; //串口為工作方式1;
ET1=0; //打開T1中斷
EA=1; //打開總中斷
ES=1; //允許串口中斷
TR1=1; //定時器T1開始定時
}
由于數顯轉矩扳手在工作時無須立刻將數據上傳,只在Flash存儲器滿的時候發出報警提示,因此,連上USB線后,系統通過按鍵切換進入通信模式,從上位機發送一個開始通信的信號,把最大轉矩值上傳到上位機。系統的通信子程序流程圖如圖4所示。
從南京沁恒電子有限公司的網站[5]下載CH341T接口驅動程序包CH341SER,并將下位機通過USB線與計算機相連,然后按照軟件提示步驟進行安裝。驅動程序安裝成功后,在上位機的“設備管理器”中除了正常的串口1和串口2外,增加了一個虛擬串口COM5,其顯示信息如圖5所示。
上位機軟件采用VB6.0進行開發,利用VB提供的MSComm串行通信控件來完成。MSComm控件具有完善的串口數據發送和接收功能。通過該控件,PC 機可以利用串行口與單片機實現輕松連接,簡單高效地實現設備之間的通信。MSComm不是內部控件,必須加載后才能使用[8-10]。該控件的事件響應有2種方式:事件驅動方式和查詢方式。在設計中,按照與下位機的約定,對VB中的MSComm控件的主要屬性設置如下:設置通信端口號為COM5(對應上位機的虛擬串口號) ;接收緩沖區的大小為512字節;波特率為9 600, 無校驗位, 8位數據位,1位停止位;利用MSComm控件的OnComm事件捕獲并處理通信事件。數據接收完畢后,算出轉矩的平均值、最小值和最大值,并把各個數據以文件的形式寫到計算機硬盤中,便于數據查詢和打印。上位機的界面如圖6所示。

圖4 通信子程序流程圖

圖5 CH341T虛擬串口(COM5)

圖6 上位機軟件界面
通信時,上位機將收到的每一個字節數據先保存到一個數組中,待接收數據完畢后,軟件自動對數據進行處理。實驗時把數顯轉矩扳手設置為預置報警模式,預設轉矩值為5 N·m ,利用數顯轉矩扳手對一螺栓進行30次緊固操作后,通過USB接口把每次緊固時超出預設值的最大轉矩值上傳到上位機,運行界面如圖6所示。圖6的上位機軟件顯示了轉矩設定值、數據個數,并自動計算出轉矩最小值、轉矩最大值和轉矩平均值。從圖中可看出,每次緊固的實際轉矩值均超出了設定轉矩值5 N·m ,最小轉矩值為5.11 N·m,最大轉矩值為5.87 N·m,平均轉矩值為5.51 N·m 。如果需要實際緊固的轉矩值為5 N·m ,則考慮適當下調數顯轉矩扳手的預設轉矩值。
為解決數顯轉矩扳手通信接口體積小、功耗低的問題,采用CH314T為接口轉換芯片,利用USB接口實現了數顯轉矩扳手與上位機的通信。采用VB6.0開發上位機軟件,對上傳的數據進行分析處理,自動找出最大轉矩值、最小轉矩值及轉矩平均值并顯示出來。經系統實際運行結果表明,該通信接口數據傳輸可靠、功耗低、體積小,尤其適合于便攜式設備,具有廣泛的應用前景。
[1]陳小艷. 基于微處理器的數顯扭矩扳手的研制[D]. 合肥:合肥工業大學, 2004.
[2]蘇濱生,劉春紅. 影響扭矩扳手準確性的因素分析[J]. 東方電機, 2007(3):51-55.
[3]文琪,韋興平,宋春華. 鋰電池在數顯扭矩扳手中的應用[J]. 工業控制計算機, 2012(25):116-117.
[4]宋春華,毛小飛. 數顯扭矩扳手的發展前景[J]. 裝備制造技術, 2011(2):97-99.
[5]南京沁恒電子有限公司.USB_SER.PDF[EB /OL].[2013-12-25].http: / /www.wch.cn /download /list.asp? id =63.2011.
[6]楊鳳彪,王超,張晨光. 基于CH341A的USB串口通信設計[J]. 電子設計工程, 2011,19 (3): 11-14.
[7]陳光建,何華平,賈金玲. 基于虛擬儀器的實時數據采集系統[J]. 儀表技術與傳感器,2011(4):49-50.
[8]楊明廣,王秀華. Visual Basic程序設計教程[M]. 北京:中國科學技術出版社,2006:25-56.
[9]劉鳳聲. 基于VB6.0的單片機與PC機通信的實現與應用[J]. 計算機技術與發展,2007(17):203-204.
[10]黃惟公,鄧成忠,王燕. 單片機原理與應用技術[M]. 西安:西安電子科技大學出版社, 2007:123-156.